- 04 12月, 2014 1 次提交
-
-
由 Leif Lindholm 提交于
Update of_find_node_by_path(): 1) Rename function to of_find_node_opts_by_path(), adding an optional pointer argument. Provide a static inline wrapper version of of_find_node_by_path() which calls the new function with NULL as the optional argument. 2) Ignore any part of the path beyond and including the ':' separator. 3) Set the new provided pointer argument to the beginning of the string following the ':' separator. 4: Add tests. Signed-off-by: NLeif Lindholm <leif.lindholm@linaro.org> Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 28 11月, 2014 1 次提交
-
-
由 Grant Likely 提交于
The unittest code has a MODULE_DEVICE_TABLE that isn't needed by any of the unittests, and isn't even correct. Remove it. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Cc: Pantelis Antoniou <pantelis.antoniou@konsulko.com>
-
- 25 11月, 2014 3 次提交
-
-
由 Pantelis Antoniou 提交于
Add unittests for OF overlays. It tests overlay device addition/removal and whether the apply revert sequence is correct. Changes since V1: * Added local fixups entries. Signed-off-by: NPantelis Antoniou <pantelis.antoniou@konsulko.com> Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
由 Grant Likely 提交于
Add a node argument to __of_node_alloc() and rename it to __of_node_dup() so that it can also be used to duplicate a node with its properties. This is important for the overlay code so that it can create new nodes without using separate changeset items for every single property. At the same time rework the overlay code to use the new function and drop the extra changeset items. Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
由 Grant Likely 提交于
The overlay code needs to construct a new full_name from the parent name and the node name, but the current method has to allocate and then free an temporary string which is wasteful. Fix this problem by using vargs to pass in a format and arguments into __of_node_alloc(). At the same time remove the allocflags argument to __of_node_alloc(). The only users all use GFP_KERNEL, so there is no need to provide it as an option. If there is ever a need later it can be added back. Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 05 11月, 2014 2 次提交
-
-
由 Grant Likely 提交于
This is unit testing code. It should use that name because it makes more sense than 'selftest'. Rename the files to match and rename the config variable. Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
由 Grant Likely 提交于
The of_platform_populate() test cases don't remove the test devices after they are added. Fix this by adding tests for of_platform_depopulate(). At the same time rework the selftest() macro to return the test result value. This makes it easy to use the macro inside an if() condition. Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 04 11月, 2014 2 次提交
-
-
由 Grant Likely 提交于
The device tree structure is composed of two lists; the 'allnodes' list which is a singly linked list containing every node in the tree, and the child->parent structure where each parent node has a singly linked list of children. All of the data in the allnodes list can be easily reproduced with the parent-child lists, so of_allnodes is actually unnecessary. Remove it entirely which saves a bit of memory and simplifies the data structure quite a lot. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Cc: Rob Herring <robh@kernel.org> Cc: Gaurav Minocha <gaurav.minocha.os@gmail.com> Cc: Pantelis Antoniou <pantelis@pantelis.antoniou@konsulko.com>
-
由 Grant Likely 提交于
The string property read helpers will run off the end of the buffer if it is handed a malformed string property. Rework the parsers to make sure that doesn't happen. At the same time add new test cases to make sure the functions behave themselves. The original implementations of of_property_read_string_index() and of_property_count_strings() both open-coded the same block of parsing code, each with it's own subtly different bugs. The fix here merges functions into a single helper and makes the original functions static inline wrappers around the helper. One non-bugfix aspect of this patch is the addition of a new wrapper, of_property_read_string_array(). The new wrapper is needed by the device_properties feature that Rafael is working on and planning to merge for v3.19. The implementation is identical both with and without the new static inline wrapper, so it just got left in to reduce the churn on the header file. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Cc: Mika Westerberg <mika.westerberg@linux.intel.com> Cc: Rob Herring <robh+dt@kernel.org> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Darren Hart <darren.hart@intel.com> Cc: <stable@vger.kernel.org> # v3.3+: Drop selftest hunks that don't apply
-
- 07 10月, 2014 1 次提交
-
-
由 Grant Likely 提交于
The new testcase that checks phandle consistency was using a hash table on the stack which made the frame size much large than it should be. Fix the problem by moving the hash table into the file scope. Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 05 10月, 2014 3 次提交
-
-
由 Grant Likely 提交于
The selftest data ends up causing duplicate phandles in the live tree for the time that the testcase data is inserted into the live tree. This is obviously a bad situation because anything attempting to read the tree while the selftests are running make resolve phandles to one of the testcase data nodes. Fix the problem by using the of_resolve_phandles() function to eliminate duplicates. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Cc: Pantelis Antoniou <pantelis.antoniou@konsulko.com> Cc: Gaurav Minocha <gaurav.minocha.os@gmail.com>
-
由 Grant Likely 提交于
All phandles in the tree should be unique. Add a testcase to make sure that this is so. Note: this testcase fails on the current kernel because the selftest code itself ends up adding duplicate phandles. Before this testcase is merged the selftest code needs to be modified to resolve phandles before adding them. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Cc: Pantelis Antoniou <pantelis.antoniou@konsulko.com>
-
由 Grant Likely 提交于
Add a testcase to verify that the device tree is properly constructed and the lists are in a correct order. The new testcase gets run twice; once after adding the testcase data, and once after removing it again. It is run twice to make sure adding and removing the testcase data doesn't corrupt the data structure. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Cc: Gaurav Minocha <gaurav.minocha.os@gmail.com>
-
- 02 10月, 2014 1 次提交
-
-
由 Grant Likely 提交于
The selftest code removes its testcase data from the live tree when exiting, but if the testcases data tree contains an empty child of the root, then it causes an oops due to a NULL dereference. The reason is that the code tries to directly dereference the child pointer without checking first if a child is actually there. The solution is to pass the parent node into detach_node_and_children() instead of trying to pass the child. This required removing the code that attempts to remove all of the sibling nodes in detach_node_and_children(), which was never sensible in the first place. At the same time add a check to make sure the bounds of the nodes list are not exceeded by the testdata tree. If they are then abort. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Cc: Gaurav Minocha <gaurav.minocha.os@gmail.com>
-
- 16 8月, 2014 1 次提交
-
-
由 Gaurav Minocha 提交于
If there is no devicetree present, this patch adds the selftest data as a live devicetree. It also removes the same after the testcase execution is complete. Tested with and without machine's devicetree. Signed-off-by: NGaurav Minocha <gaurav.minocha.os@gmail.com> Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 25 7月, 2014 1 次提交
-
-
由 Gaurav Minocha 提交于
This patch attaches selftest's device tree data (required by /drivers/of/selftest.c) dynamically into live device tree. First, it links selftest device tree data into the kernel image and then iterates over all the nodes and attaches them into the live tree. Once the testcases are complete, it removes the data attached. This patch will remove the manual process of addition and removal of selftest device tree data into the machine's dts file. Tested successfully with current selftest's testcases. Signed-off-by: NGaurav Minocha <gaurav.minocha.os@gmail.com> [glikely: Removed ability to build as a module and fixed no-devicetree bug] Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 24 7月, 2014 1 次提交
-
-
由 Pantelis Antoniou 提交于
Introducing DT transactional support. A DT transaction is a method which allows one to apply changes in the live tree, in such a way that either the full set of changes take effect, or the state of the tree can be rolled-back to the state it was before it was attempted. An applied transaction can be rolled-back at any time. Documentation is in Documentation/devicetree/changesets.txt Signed-off-by: NPantelis Antoniou <pantelis.antoniou@konsulko.com> [glikely: Removed device notifiers and reworked to be more consistent] Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 16 7月, 2014 1 次提交
-
-
由 Pantelis Antoniou 提交于
Introduce helper functions for working with the live DT tree, all of them related to dynamically adding/removing nodes and properties. __of_prop_dup() copies a property dynamically __of_node_alloc() creates an empty node Bug fix about prop->len == 0 by Ionut Nicu <ioan.nicu.ext@nsn.com> Signed-off-by: NPantelis Antoniou <pantelis.antoniou@konsulko.com> [glikely: Added unittest for of_copy_property and dropped fine-grained allocations] [glikely: removed name, type and phandle arguments from __of_node_alloc] Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 23 5月, 2014 1 次提交
-
-
由 Grant Likely 提交于
Add a testcase for the find_node_by_path() function to make sure it handles all the valid scenarios. Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 14 5月, 2014 2 次提交
-
-
由 Rob Herring 提交于
Add a test case for nodes which have the same name and same non-translatable unit address. Signed-off-by: NRob Herring <robh@kernel.org> Reviewed-by: NGrant Likely <grant.likely@linaro.org> Reviewed-by: NFrank Rowand <frank.rowand@sonymobile.com>
-
由 Rob Herring 提交于
Move the pass/fail checks into selftest() calls instead of a separate if condition. Unconditionally calling pass was wrong. Signed-off-by: NRob Herring <robh@kernel.org> Cc: Grant Likely <grant.likely@linaro.org>
-
- 24 4月, 2014 1 次提交
-
-
由 Rob Herring 提交于
Signed-off-by: NRob Herring <robh@kernel.org> [grant.likely: fixed failure when root node specifies the interrupt parent] Signed-off-by: NGrant Likely <grant.likely@linaro.org>
-
- 12 3月, 2014 1 次提交
-
-
由 Grant Likely 提交于
Adds a few simple test cases to ensure that addition, update and removal of device tree node properties works correctly. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Cc: Rob Herring <rob.herring@calxeda.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: David S. Miller <davem@davemloft.net> Cc: Nathan Fontenot <nfont@linux.vnet.ibm.com> Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
-
- 20 2月, 2014 1 次提交
-
-
由 Grant Likely 提交于
Adds a selftest function for the of_match_node function. of_match_node is supposed to handle precedence for the compatible property as well as the name and device_type values. This patch adds some test case data and a function that makes sure each test node matches against the correct entry of an of_device_id table. This code was written to verify the new of_match_node() implementation that is an earlier part of this series. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Cc: Kevin Hao <haokexin@gmail.com>
-
- 29 10月, 2013 1 次提交
-
-
由 Grant Likely 提交于
The standard interrupts property in device tree can only handle interrupts coming from a single interrupt parent. If a device is wired to multiple interrupt controllers, then it needs to be attached to a node with an interrupt-map property to demux the interrupt specifiers which is confusing. It would be a lot easier if there was a form of the interrupts property that allows for a separate interrupt phandle for each interrupt specifier. This patch does exactly that by creating a new interrupts-extended property which reuses the phandle+arguments pattern used by GPIOs and other core bindings. Signed-off-by: NGrant Likely <grant.likely@linaro.org> Acked-by: NTony Lindgren <tony@atomide.com> Acked-by: NKumar Gala <galak@codeaurora.org> [grant.likely: removed versatile platform hunks into separate patch] Cc: Rob Herring <rob.herring@calxeda.com>
-
- 24 10月, 2013 1 次提交
-
-
由 Grant Likely 提交于
This patch extends the DT selftest code with some test cases for the interrupt parsing functions. Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
-
- 13 2月, 2013 3 次提交
-
-
由 Grant Likely 提交于
This patch creates of_count_phandle_with_args(), a new function for counting the number of phandle+argument tuples in a given property. This is better than the existing method of parsing each phandle individually until parsing fails which is a horribly slow way to do the count. Tested on ARM using the selftest code. v3: - Rebased on top of selftest code cleanup patch v2: - fix bug where of_parse_phandle_with_args() could behave like _count_. - made of_gpio_named_count() into a static inline regardless of CONFIG_OF_GPIO Tested-by: NAndreas Larsson <andreas@gaisler.com> Signed-off-by: NGrant Likely <grant.likely@secretlab.ca> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Rob Herring <rob.herring@calxeda.com>
-
由 Grant Likely 提交于
Some of the selftests are open-coded. Others use the selftest() macro defined in drivers/of/selftest.c. The macro makes for cleaner selftest code, so refactor the of_parse_phandle_with_args() tests to use it. Cc: Rob Herring <rob.herring@calxeda.com> Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
-
由 Grant Likely 提交于
The of_gpio_named_count() self test doesn't hit the out-of-range condition even though it is coded. Fix the bug by increasing the for loop range by one. Reported-by: NAndreas Larsson <andreas@gaisler.com> Cc: Rob Herring <rob.herring@calxeda.com> Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
-
- 29 1月, 2012 1 次提交
-
-
由 Grant Likely 提交于
Add a helper function for finding the index of a string in a string list property. This helper is useful for bindings that use a separate *-name property for attaching names to tuples in another property such as 'reg' or 'gpios'. Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
-
- 13 12月, 2011 1 次提交
-
-
由 Grant Likely 提交于
Add some runtime test cases for the library of device tree parsing functions. v2: - Add testcase for phandle with 0 args - Don't run testcases if testcase data isn't present in device tree Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
-