1. 04 12月, 2014 1 次提交
  2. 28 11月, 2014 2 次提交
  3. 26 11月, 2014 1 次提交
  4. 25 11月, 2014 9 次提交
  5. 20 11月, 2014 3 次提交
    • G
      of/selftest: Fix testing when /aliases is missing · 788ec2fc
      Grant Likely 提交于
      The /aliases node isn't always present in the device tree, but the
      unittest code assumes that /aliases is there. Add a check when inserting
      the testcase data to see if of_aliases needs to be updated, and undo the
      settings when the nodes are removed.
      Signed-off-by: NGrant Likely <grant.likely@linaro.org>
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: Gaurav Minocha <gaurav.minocha.os@gmail.com>
      Cc: <stable@vger.kernel.org>
      788ec2fc
    • G
      of: Properly set the OF_POPULATED_BUS flag on root node · 2d0747c4
      Grant Likely 提交于
      of_platform_populate() takes a subset of the device tree and turns it
      into a set of platform_devices. At the same time it sets the
      OF_POPULATED_BUS flag in each bus nodes so that of_platform_depopulate()
      can undo the operation at a later time. However, it doesn't set the flag
      on the root of the population tree which means that dynamic modifications
      of the device tree at runtime will not create/destroy devices correctly.
      
      Fix of_platform_populate() to set the OF_POPULATED_BUS flag on the node
      it is called with.
      Signed-off-by: NGrant Likely <grant.likely@linaro.org>
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: Pantelis Antoniou <pantelis.antoniou@konsulko.com>
      Cc: Pawel Moll <pawel.moll@arm.com>
      2d0747c4
    • G
      of/selftest: Fix off-by-one error in removal path · c1a2086e
      Grant Likely 提交于
      The removal path for selftest data has an off by one error that causes
      the code to dereference beyond the end of the nodes[] array on the first
      pass through. The old code only worked by chance on a lot of platforms,
      but the bug was recently exposed on aarch64.
      
      The fix is simple. Decrement the node count before dereferencing, not
      after.
      Reported-by: NKevin Hilman <khilman@linaro.org>
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: Gaurav Minocha <gaurav.minocha.os@gmail.com>
      Cc: <stable@vger.kernel.org> # v3.17+
      c1a2086e
  6. 19 11月, 2014 7 次提交
  7. 05 11月, 2014 10 次提交
  8. 04 11月, 2014 2 次提交
    • G
      of: Eliminate of_allnodes list · 5063e25a
      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>
      5063e25a
    • G
      of: Fix overflow bug in string property parsing functions · a87fa1d8
      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
      a87fa1d8
  9. 30 10月, 2014 1 次提交
  10. 08 10月, 2014 1 次提交
    • P
      net: phy: adjust fixed_phy_register() return value · fd2ef0ba
      Petri Gynther 提交于
      Adjust fixed_phy_register() to return struct phy_device *, so that
      it becomes easy to use fixed PHYs without device tree support:
      
        phydev = fixed_phy_register(PHY_POLL, &fixed_phy_status, NULL);
        fixed_phy_set_link_update(phydev, fixed_phy_link_update);
        phy_connect_direct(netdev, phydev, handler_fn, phy_interface);
      
      This change is a prerequisite for modifying bcmgenet driver to work
      without a device tree on Broadcom's MIPS-based 7xxx platforms.
      Signed-off-by: NPetri Gynther <pgynther@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fd2ef0ba
  11. 07 10月, 2014 1 次提交
  12. 05 10月, 2014 2 次提交
    • G
      of/selftest: Use the resolver to fixup phandles · 2eb46da2
      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>
      2eb46da2
    • P
      of: Introduce Device Tree resolve support. · 7941b27b
      Pantelis Antoniou 提交于
      Introduce support for dynamic device tree resolution.
      Using it, it is possible to prepare a device tree that's
      been loaded on runtime to be modified and inserted at the kernel
      live tree.
      
      Export of of_resolve and bug fix of double free by
      	Guenter Roeck <groeck@juniper.net>
      Signed-off-by: NPantelis Antoniou <pantelis.antoniou@konsulko.com>
      [grant.likely: Don't need to select CONFIG_OF_DYNAMIC and CONFIG_OF_DEVICE]
      [grant.likely: Don't need to depend on OF or !SPARC]
      [grant.likely: Factor out duplicate code blocks into single function]
      Signed-off-by: NGrant Likely <grant.likely@linaro.org>
      7941b27b