1. 29 11月, 2016 1 次提交
  2. 11 8月, 2015 2 次提交
  3. 22 6月, 2015 1 次提交
  4. 04 4月, 2015 1 次提交
  5. 26 3月, 2015 1 次提交
  6. 26 11月, 2014 1 次提交
  7. 09 7月, 2014 1 次提交
    • L
      mfd: tc3589x: Translate onecell, not twocell · 627918ed
      Linus Walleij 提交于
      Something changed in the OF parser in the v3.16 merge window
      making it be strict about passing the number of IRQ cells
      correctly and disturbing the irqdomain xlate function guard
      to crash when subdevices try to obtain IRQs like this:
      
      ------------[ cut here ]------------
      WARNING: CPU: 0 PID: 1 at
      /home/linus/linux-stericsson/kernel/irq/irqdomain.c:676
      irq_domain_xlate_twocell+0x40/0x48()
      Modules linked in:
      CPU: 0 PID: 1 Comm: swapper/0 Not tainted
       3.15.0-07915-gf6d059821ce9-dirty #46
      [<c0014660>] (unwind_backtrace)
       from [<c0011424>] (show_stack+0x10/0x14)
      [<c0011424>] (show_stack)
       from [<c0432630>] (dump_stack+0x9c/0xd4)
      [<c0432630>] (dump_stack)
       from [<c001d5c0>] (warn_slowpath_common+0x6c/0x88)
      [<c001d5c0>] (warn_slowpath_common)
       from [<c001d678>] (warn_slowpath_null+0x1c/0x24)
      [<c001d678>] (warn_slowpath_null)
       from [<c005acd0>] (irq_domain_xlate_twocell+0x40/0x48)
      [<c005acd0>] (irq_domain_xlate_twocell)
       from [<c005b658>] (irq_create_of_mapping+0x64/0x110)
      [<c005b658>] (irq_create_of_mapping)
       from [<c02e147c>] (of_irq_get+0x38/0x48)
      [<c02e147c>] (of_irq_get)
       from [<c01f8910>] (tc3589x_gpio_probe+0x38/0x1e4)
      [<c01f8910>] (tc3589x_gpio_probe)
       from [<c022eedc>] (platform_drv_probe+0x18/0x48)
      [<c022eedc>] (platform_drv_probe)
       from [<c022d80c>] (driver_probe_device+0x118/0x24c)
      [<c022d80c>] (driver_probe_device)
       from [<c022bf20>] (bus_for_each_drv+0x58/0x8c)
      [<c022bf20>] (bus_for_each_drv)
       from [<c022d6c4>] (device_attach+0x74/0x88)
      [<c022d6c4>] (device_attach)
       from [<c022cdac>] (bus_probe_device+0x84/0xa8)
      [<c022cdac>] (bus_probe_device)
       from [<c022b35c>] (device_add+0x440/0x520)
      [<c022b35c>] (device_add)
       from [<c022ec50>] (platform_device_add+0xb4/0x218)
      [<c022ec50>] (platform_device_add)
       from [<c0243508>] (mfd_add_device+0x220/0x31c)
      [<c0243508>] (mfd_add_device)
       from [<c02436a8>] (mfd_add_devices+0xa4/0x100)
      [<c02436a8>] (mfd_add_devices)
       from [<c024312c>] (tc3589x_probe+0x334/0x3c0)
      [<c024312c>] (tc3589x_probe)
       from [<c022d80c>] (driver_probe_device+0x118/0x24c)
      
      The TC3589x device trees specify the MFD core device
      as having one interrupt cell (cannot specify flags) so the
      twocell translation function is clearly wrong, changing it to
      onecell, as it should be, fixes the regression.
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      627918ed
  8. 19 3月, 2014 1 次提交
    • L
      mfd: tc3589x: Reform device tree probing · a381b13e
      Linus Walleij 提交于
      This changes the following mechanisms in the TC3589x device tree
      probing path:
      
      - Use the .of_match_table in struct device_driver to match the
        device in the device tree.
      - Add matches for the proper compatible strings "toshiba,..."
        and all sub-variants, just as is done for the .id matches.
      - Move over all the allocation of platform data etc to the
        tc3589x_of_probe() function and follow the pattern of passing
        a platform data pointer back, or an error pointer on error,
        as found in the STMPE driver.
      - Match the new (proper) compatible strings for the GPIO and
        keypad MFD cells.
      - Use of_device_is_compatible() rather than just !strcmp()
        to discover which cells to instantiate.
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      a381b13e
  9. 06 1月, 2014 1 次提交
  10. 23 10月, 2013 1 次提交
  11. 31 7月, 2013 1 次提交
  12. 08 4月, 2013 1 次提交
  13. 22 1月, 2013 1 次提交
    • L
      mfd: tc3589x: Use simple irqdomain · 1f0529b4
      Linus Walleij 提交于
      This fixes a regression in the TC3589x driver introduced in
      commit 15e27b10
      "mfd: Provide the tc3589x with its own IRQ domain"
      
      If a system with a TC3589x expander is booted and a base
      IRQ is passed from platform data, a legacy domain will
      be used. However, since the Ux500 is now switched to use
      SPARSE_IRQ, no descriptors get allocated on-the-fly,
      and we get a crash.
      
      Fix this by switching to using the simple irqdomain that
      will handle this uniformly and also allocates descriptors
      explicitly.
      
      Also fix two small whitespace errors in the vicinity while
      we're at it.
      
      Cc: stable@kernel.org
      Acked-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      1f0529b4
  14. 29 11月, 2012 3 次提交
  15. 17 9月, 2012 2 次提交
  16. 16 9月, 2012 1 次提交
    • M
      mfd: core: Push irqdomain mapping out into devices · 0848c94f
      Mark Brown 提交于
      Currently the MFD core supports remapping MFD cell interrupts using an
      irqdomain but only if the MFD is being instantiated using device tree
      and only if the device tree bindings use the pattern of registering IPs
      in the device tree with compatible properties.  This will be actively
      harmful for drivers which support non-DT platforms and use this pattern
      for their DT bindings as it will mean that the core will silently change
      remapping behaviour and it is also limiting for drivers which don't do
      DT with this particular pattern.  There is also a potential fragility if
      there are interrupts not associated with MFD cells and all the cells are
      omitted from the device tree for some reason.
      
      Instead change the code to take an IRQ domain as an optional argument,
      allowing drivers to take the decision about the parent domain for their
      interrupts.  The one current user of this feature is ab8500-core, it has
      the domain lookup pushed out into the driver.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      0848c94f
  17. 14 9月, 2012 1 次提交
    • M
      mfd: core: Push irqdomain mapping out into devices · 55692af5
      Mark Brown 提交于
      Currently the MFD core supports remapping MFD cell interrupts using an
      irqdomain but only if the MFD is being instantiated using device tree
      and only if the device tree bindings use the pattern of registering IPs
      in the device tree with compatible properties.  This will be actively
      harmful for drivers which support non-DT platforms and use this pattern
      for their DT bindings as it will mean that the core will silently change
      remapping behaviour and it is also limiting for drivers which don't do
      DT with this particular pattern.  There is also a potential fragility if
      there are interrupts not associated with MFD cells and all the cells are
      omitted from the device tree for some reason.
      
      Instead change the code to take an IRQ domain as an optional argument,
      allowing drivers to take the decision about the parent domain for their
      interrupts.  The one current user of this feature is ab8500-core, it has
      the domain lookup pushed out into the driver.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      55692af5
  18. 09 7月, 2012 1 次提交
    • A
      mfd: Guard tc3589x PM methods with CONFIG_PM_SLEEP · 930bf022
      Axel Lin 提交于
      Guard PM methods with CONFIG_PM_SLEEP and get rid of some unneeded #ifdefs.
      This fixes below build warnings:
      
        CC      drivers/mfd/tc3589x.o
      drivers/mfd/tc3589x.c:361:12: warning: 'tc3589x_suspend' defined but not used [-Wunused-function]
      drivers/mfd/tc3589x.c:375:12: warning: 'tc3589x_resume' defined but not used [-Wunused-function]
      
      SIMPLE_DEV_PM_OPS already defines constant dev_pm_ops, thus also fix
      'duplicate const' sparse warning.
      Signed-off-by: NAxel Lin <axel.lin@gmail.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      930bf022
  19. 24 10月, 2011 1 次提交
  20. 27 3月, 2011 1 次提交
  21. 30 12月, 2010 1 次提交
  22. 20 12月, 2010 8 次提交
  23. 03 6月, 2010 1 次提交
  24. 28 5月, 2010 1 次提交