1. 24 10月, 2016 3 次提交
    • P
      reset: sunxi: make it explicitly non-modular · c4742ed3
      Paul Gortmaker 提交于
      The Kconfig currently controlling compilation of this code is:
      
      drivers/reset/Kconfig:config RESET_SUNXI
      drivers/reset/Kconfig:  bool "Allwinner SoCs Reset Driver" if COMPILE_TEST && !ARCH_SUNXI
      drivers/reset/Kconfig:  default ARCH_SUNXI
      
      or
      
      arch/arm/mach-sunxi/Kconfig:menuconfig ARCH_SUNXI
      arch/arm/mach-sunxi/Kconfig:    bool "Allwinner SoCs" if ARCH_MULTI_V7
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the few remaining traces of modular macro usage, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      c4742ed3
    • P
      reset: socfpga: make it explicitly non-modular · 02163199
      Paul Gortmaker 提交于
      The Kconfig currently controlling compilation of this code is:
      
      drivers/reset/Kconfig:config RESET_SOCFPGA
      drivers/reset/Kconfig:  bool "SoCFPGA Reset Driver" if COMPILE_TEST
      drivers/reset/Kconfig:  default ARCH_SOCFPGA
      
      or
      
      arch/arm/mach-socfpga/Kconfig:menuconfig ARCH_SOCFPGA
      arch/arm/mach-socfpga/Kconfig:  bool "Altera SOCFPGA family" if ARCH_MULTI_V7
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the small amount of modular evidence that remains, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      was (or is now) contained at the top of the file in the comments.
      
      Cc: Steffen Trumtrar <s.trumtrar@pengutronix.de>
      Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      02163199
    • P
      reset: berlin: make it explicitly non-modular · ed4dba99
      Paul Gortmaker 提交于
      The Kconfig currently controlling compilation of this code is:
      
      drivers/reset/Kconfig:config RESET_BERLIN
      drivers/reset/Kconfig:  bool "Berlin Reset Driver" if COMPILE_TEST
      drivers/reset/Kconfig:  default ARCH_BERLIN
      
      or
      
      arch/arm/mach-berlin/Kconfig:menuconfig ARCH_BERLIN
      arch/arm/mach-berlin/Kconfig:   bool "Marvell Berlin SoCs" if ARCH_MULTI_V7
      
      or
      
      arch/arm64/Kconfig.platforms:config ARCH_BERLIN
      arch/arm64/Kconfig.platforms:   bool "Marvell Berlin SoC Family"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      was (or is now) contained at the top of the file in the comments.
      
      Cc: Antoine Tenart <antoine.tenart@free-electrons.com>
      Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      ed4dba99
  2. 20 10月, 2016 2 次提交
  3. 30 8月, 2016 6 次提交
  4. 25 8月, 2016 5 次提交
  5. 24 8月, 2016 3 次提交
  6. 09 8月, 2016 1 次提交
  7. 30 6月, 2016 3 次提交
  8. 01 6月, 2016 1 次提交
  9. 30 5月, 2016 8 次提交
  10. 01 4月, 2016 1 次提交
  11. 30 3月, 2016 4 次提交
    • J
      reset: lpc18xx: get rid of global variables for restart notifier · 773fe726
      Joachim Eastwood 提交于
      Moving the notifier_block into the drivers priv struct allows us
      to retrive the priv struct with container_of and remove the
      global variables.
      Signed-off-by: NJoachim Eastwood <manabian@gmail.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      773fe726
    • H
      reset: Add support for shared reset controls · 0b52297f
      Hans de Goede 提交于
      In some SoCs some hw-blocks share a reset control. Add support for this
      setup by adding new:
      
      reset_control_get_shared()
      devm_reset_control_get_shared()
      devm_reset_control_get_shared_by_index()
      
      methods to get a reset_control. Note that this patch omits adding of_
      variants, if these are needed later they can be easily added.
      
      This patch also changes the behavior of the existing exclusive
      reset_control_get() variants, if these are now called more then once
      for the same reset_control they will return -EBUSY. To catch existing
      drivers triggering this error (there should not be any) a WARN_ON(1)
      is added in this path.
      
      When a reset_control is shared, the behavior of reset_control_assert /
      deassert is changed, for shared reset_controls these will work like the
      clock-enable/disable and regulator-on/off functions. They will keep a
      deassert_count, and only (re-)assert the reset after reset_control_assert
      has been called as many times as reset_control_deassert was called.
      
      Calling reset_control_assert without first calling reset_control_deassert
      is not allowed on a shared reset control. Calling reset_control_reset is
      also not allowed on a shared reset control.
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      0b52297f
    • H
      reset: Share struct reset_control between reset_control_get calls · c15ddec2
      Hans de Goede 提交于
      Now that struct reset_control no longer stores the device pointer for
      the device calling reset_control_get we can share a single struct
      reset_control when multiple calls to reset_control_get are made for
      the same reset line (same id / index).
      
      This is a preparation patch for adding support for shared reset lines.
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      c15ddec2
    • H
      reset: Make [of_]reset_control_get[_foo] functions wrappers · 6c96f05c
      Hans de Goede 提交于
      With both the regular, _by_index and _optional variants we already have
      quite a few variants of [of_]reset_control_get[_foo], the upcoming
      addition of shared reset lines support makes this worse.
      
      This commit changes all the variants into wrappers around common core
      functions. For completeness sake this commit also adds a new
      devm_get_reset_control_by_index wrapper.
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      6c96f05c
  12. 10 2月, 2016 3 次提交