diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 14:32:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 14:32:30 -0400 |
commit | 682b7c1c8ea8885aa681ddf530d6cf2ad4f2dc15 (patch) | |
tree | 882003bb4fc56af816246168f8c85d6dde8c6ed9 /lib | |
parent | 16b9057804c02e2d351e9c8f606e909b43cbd9e7 (diff) | |
parent | bc1dfff04a5d4064ba0db1fab13f84ab4f333d2b (diff) |
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
Pull drm updates from Dave Airlie:
"This is the main drm merge window pull request, changes all over the
place, mostly normal levels of churn.
Highlights:
Core drm:
More cleanups, fix race on connector/encoder naming, docs updates,
object locking rework in prep for atomic modeset
i915:
mipi DSI support, valleyview power fixes, cursor size fixes,
execlist refactoring, vblank improvements, userptr support, OOM
handling improvements
radeon:
GPUVM tuning and large page size support, gart fixes, deep color
HDMI support, HDMI audio cleanups
nouveau:
- displayport rework should fix lots of issues
- initial gk20a support
- gk110b support
- gk208 fixes
exynos:
probe order fixes, HDMI changes, IPP consolidation
msm:
debugfs updates, misc fixes
ast:
ast2400 support, sync with UMS driver
tegra:
cleanups, hdmi + hw cursor for Tegra 124.
panel:
fixes existing panels add some new ones.
ipuv3:
moved from staging to drivers/gpu"
* 'drm-next' of git://people.freedesktop.org/~airlied/linux: (761 commits)
drm/nouveau/disp/dp: fix tmds passthrough on dp connector
drm/nouveau/dp: probe dpcd to determine connectedness
drm/nv50-: trigger update after all connectors disabled
drm/nv50-: prepare for attaching a SOR to multiple heads
drm/gf119-/disp: fix debug output on update failure
drm/nouveau/disp/dp: make use of postcursor when its available
drm/g94-/disp/dp: take max pullup value across all lanes
drm/nouveau/bios/dp: parse lane postcursor data
drm/nouveau/dp: fix support for dpms
drm/nouveau: register a drm_dp_aux channel for each dp connector
drm/g94-/disp: add method to power-off dp lanes
drm/nouveau/disp/dp: maintain link in response to hpd signal
drm/g94-/disp: bash and wait for something after changing lane power regs
drm/nouveau/disp/dp: split link config/power into two steps
drm/nv50/disp: train PIOR-attached DP from second supervisor
drm/nouveau/disp/dp: make use of existing output data for link training
drm/gf119/disp: start removing direct vbios parsing from supervisor
drm/nv50/disp: start removing direct vbios parsing from supervisor
drm/nouveau/disp/dp: maintain receiver caps in response to hpd signal
drm/nouveau/disp/dp: create subclass for dp outputs
...
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Kconfig | 14 | ||||
-rw-r--r-- | lib/Kconfig.debug | 1 | ||||
-rw-r--r-- | lib/Makefile | 3 | ||||
-rw-r--r-- | lib/interval_tree.c | 6 | ||||
-rw-r--r-- | lib/interval_tree_test.c (renamed from lib/interval_tree_test_main.c) | 0 |
5 files changed, 22 insertions, 2 deletions
diff --git a/lib/Kconfig b/lib/Kconfig index 4771fb3f4da4..334f7722a999 100644 --- a/lib/Kconfig +++ b/lib/Kconfig | |||
@@ -331,6 +331,20 @@ config TEXTSEARCH_FSM | |||
331 | config BTREE | 331 | config BTREE |
332 | boolean | 332 | boolean |
333 | 333 | ||
334 | config INTERVAL_TREE | ||
335 | boolean | ||
336 | help | ||
337 | Simple, embeddable, interval-tree. Can find the start of an | ||
338 | overlapping range in log(n) time and then iterate over all | ||
339 | overlapping nodes. The algorithm is implemented as an | ||
340 | augmented rbtree. | ||
341 | |||
342 | See: | ||
343 | |||
344 | Documentation/rbtree.txt | ||
345 | |||
346 | for more information. | ||
347 | |||
334 | config ASSOCIATIVE_ARRAY | 348 | config ASSOCIATIVE_ARRAY |
335 | bool | 349 | bool |
336 | help | 350 | help |
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index ccca32264748..e34d11d70bbf 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug | |||
@@ -1511,6 +1511,7 @@ config RBTREE_TEST | |||
1511 | config INTERVAL_TREE_TEST | 1511 | config INTERVAL_TREE_TEST |
1512 | tristate "Interval tree test" | 1512 | tristate "Interval tree test" |
1513 | depends on m && DEBUG_KERNEL | 1513 | depends on m && DEBUG_KERNEL |
1514 | select INTERVAL_TREE | ||
1514 | help | 1515 | help |
1515 | A benchmark measuring the performance of the interval tree library | 1516 | A benchmark measuring the performance of the interval tree library |
1516 | 1517 | ||
diff --git a/lib/Makefile b/lib/Makefile index 74a32dc49a93..4a4078987a4c 100644 --- a/lib/Makefile +++ b/lib/Makefile | |||
@@ -50,6 +50,7 @@ CFLAGS_hweight.o = $(subst $(quote),,$(CONFIG_ARCH_HWEIGHT_CFLAGS)) | |||
50 | obj-$(CONFIG_GENERIC_HWEIGHT) += hweight.o | 50 | obj-$(CONFIG_GENERIC_HWEIGHT) += hweight.o |
51 | 51 | ||
52 | obj-$(CONFIG_BTREE) += btree.o | 52 | obj-$(CONFIG_BTREE) += btree.o |
53 | obj-$(CONFIG_INTERVAL_TREE) += interval_tree.o | ||
53 | obj-$(CONFIG_ASSOCIATIVE_ARRAY) += assoc_array.o | 54 | obj-$(CONFIG_ASSOCIATIVE_ARRAY) += assoc_array.o |
54 | obj-$(CONFIG_DEBUG_PREEMPT) += smp_processor_id.o | 55 | obj-$(CONFIG_DEBUG_PREEMPT) += smp_processor_id.o |
55 | obj-$(CONFIG_DEBUG_LIST) += list_debug.o | 56 | obj-$(CONFIG_DEBUG_LIST) += list_debug.o |
@@ -157,8 +158,6 @@ lib-$(CONFIG_LIBFDT) += $(libfdt_files) | |||
157 | obj-$(CONFIG_RBTREE_TEST) += rbtree_test.o | 158 | obj-$(CONFIG_RBTREE_TEST) += rbtree_test.o |
158 | obj-$(CONFIG_INTERVAL_TREE_TEST) += interval_tree_test.o | 159 | obj-$(CONFIG_INTERVAL_TREE_TEST) += interval_tree_test.o |
159 | 160 | ||
160 | interval_tree_test-objs := interval_tree_test_main.o interval_tree.o | ||
161 | |||
162 | obj-$(CONFIG_PERCPU_TEST) += percpu_test.o | 161 | obj-$(CONFIG_PERCPU_TEST) += percpu_test.o |
163 | 162 | ||
164 | obj-$(CONFIG_ASN1) += asn1_decoder.o | 163 | obj-$(CONFIG_ASN1) += asn1_decoder.o |
diff --git a/lib/interval_tree.c b/lib/interval_tree.c index e6eb406f2d65..f367f9ad544c 100644 --- a/lib/interval_tree.c +++ b/lib/interval_tree.c | |||
@@ -1,6 +1,7 @@ | |||
1 | #include <linux/init.h> | 1 | #include <linux/init.h> |
2 | #include <linux/interval_tree.h> | 2 | #include <linux/interval_tree.h> |
3 | #include <linux/interval_tree_generic.h> | 3 | #include <linux/interval_tree_generic.h> |
4 | #include <linux/module.h> | ||
4 | 5 | ||
5 | #define START(node) ((node)->start) | 6 | #define START(node) ((node)->start) |
6 | #define LAST(node) ((node)->last) | 7 | #define LAST(node) ((node)->last) |
@@ -8,3 +9,8 @@ | |||
8 | INTERVAL_TREE_DEFINE(struct interval_tree_node, rb, | 9 | INTERVAL_TREE_DEFINE(struct interval_tree_node, rb, |
9 | unsigned long, __subtree_last, | 10 | unsigned long, __subtree_last, |
10 | START, LAST,, interval_tree) | 11 | START, LAST,, interval_tree) |
12 | |||
13 | EXPORT_SYMBOL_GPL(interval_tree_insert); | ||
14 | EXPORT_SYMBOL_GPL(interval_tree_remove); | ||
15 | EXPORT_SYMBOL_GPL(interval_tree_iter_first); | ||
16 | EXPORT_SYMBOL_GPL(interval_tree_iter_next); | ||
diff --git a/lib/interval_tree_test_main.c b/lib/interval_tree_test.c index 245900b98c8e..245900b98c8e 100644 --- a/lib/interval_tree_test_main.c +++ b/lib/interval_tree_test.c | |||