1. 31 8月, 2017 1 次提交
  2. 14 8月, 2017 3 次提交
  3. 29 6月, 2017 1 次提交
    • B
      Revert "pinctrl: rockchip: avoid hardirq-unsafe functions in irq_chip" · 1d80df93
      Brian Norris 提交于
      This reverts commit 88bb9421.
      
      It introduced a new CONFIG_DEBUG_ATOMIC_SLEEP warning in v4.12-rc1:
      
      [ 7226.716713] BUG: sleeping function called from invalid context at kernel/locking/mutex.c:238
      [ 7226.716716] in_atomic(): 0, irqs_disabled(): 0, pid: 1708, name: bash
      [ 7226.716722] CPU: 1 PID: 1708 Comm: bash Not tainted 4.12.0-rc6+ #1213
      [ 7226.716724] Hardware name: Google Kevin (DT)
      [ 7226.716726] Call trace:
      [ 7226.716738] [<ffffff8008089928>] dump_backtrace+0x0/0x24c
      [ 7226.716743] [<ffffff8008089b94>] show_stack+0x20/0x28
      [ 7226.716749] [<ffffff8008371370>] dump_stack+0x90/0xb0
      [ 7226.716755] [<ffffff80080cd2a0>] ___might_sleep+0x10c/0x124
      [ 7226.716760] [<ffffff80080cd330>] __might_sleep+0x78/0x88
      [ 7226.716765] [<ffffff800879e210>] mutex_lock+0x2c/0x64
      [ 7226.716771] [<ffffff80083ad678>] rockchip_irq_bus_lock+0x30/0x3c
      [ 7226.716777] [<ffffff80080f6d40>] __irq_get_desc_lock+0x78/0x98
      [ 7226.716782] [<ffffff80080f7e6c>] irq_set_irq_wake+0x44/0x12c
      [ 7226.716787] [<ffffff8008486e18>] dev_pm_arm_wake_irq+0x4c/0x58
      [ 7226.716792] [<ffffff800848b80c>] device_wakeup_arm_wake_irqs+0x3c/0x58
      [ 7226.716796] [<ffffff80084896fc>] dpm_suspend_noirq+0xf8/0x3a0
      [ 7226.716800] [<ffffff80080f1384>] suspend_devices_and_enter+0x1a4/0x9a8
      [ 7226.716803] [<ffffff80080f21ec>] pm_suspend+0x664/0x6a4
      [ 7226.716807] [<ffffff80080f04d8>] state_store+0xd4/0xf8
      ...
      
      It was reported on -rc1, and it's still not fixed in -rc6, so it should
      just be reverted.
      
      Cc: John Keeping <john@metanate.com>
      Signed-off-by: NBrian Norris <briannorris@chromium.org>
      Reviewed-by: NHeiko Stuebner <heiko@sntech.de>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      1d80df93
  4. 29 5月, 2017 4 次提交
  5. 22 5月, 2017 1 次提交
  6. 28 3月, 2017 4 次提交
  7. 23 3月, 2017 2 次提交
  8. 14 3月, 2017 5 次提交
  9. 26 1月, 2017 1 次提交
  10. 17 11月, 2016 1 次提交
  11. 27 8月, 2016 1 次提交
    • P
      pinctrl: rockchip: make it explicitly non-modular · 2f436204
      Paul Gortmaker 提交于
      The Kconfig currently controlling compilation of this code is:
      
      drivers/pinctrl/Kconfig:config PINCTRL_ROCKCHIP
      drivers/pinctrl/Kconfig:        bool
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the couple traces of modular infrastructure use, so that
      when reading the driver there is no doubt it is builtin-only.
      
      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: Linus Walleij <linus.walleij@linaro.org>
      Cc: Heiko Stuebner <heiko@sntech.de>
      Cc: linux-gpio@vger.kernel.org
      Cc: linux-rockchip@lists.infradead.org
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      2f436204
  12. 23 6月, 2016 1 次提交
  13. 15 6月, 2016 1 次提交
  14. 11 5月, 2016 1 次提交
    • D
      pinctrl: rockchip: fix pull setting error for rk3399 · 3ba6767a
      David Wu 提交于
      This patch fixes the pinctrl pull bias setting, since the pull up/down
      setting is the contrary for gpio0(just the gpio0a and gpio0b) and
      gpio2(just the gpio2c and gpio2d).
      
      From the TRM said, the gpio0a pull polarity setting:
      gpio0a_p
      GPIO0A PE/PS programmation section, every
      GPIO bit corresponding to 2bits[PS:PE]
      2'b00: Z(Normal operation);
      2'b11: weak 1(pull-up);
      2'b01: weak 0(pull-down);
      2'b10: Z(Normal operation);
      
      Then, the other gpios setting as the following:
      gpio1a_p (e.g.: gpio1, gpio2a, gpio2b, gpio3...)
      GPIO1A PU/PD programmation section, every
      GPIO bit corresponding to 2bits
      2'b00: Z(Normal operation);
      2'b01: weak 1(pull-up);
      2'b10: weak 0(pull-down);
      2'b11: Z(Normal operation);
      
      For example,(rk3399evb board)
      sdmmc_cd --->gpio0_a7
      localhost / # io -r -4 0xff320040
      ff320040: 00004d5f
      In general,the value should be 0x0000cd5f since the pin has been set
      in the dts.
      Signed-off-by: NDavid Wu <david.wu@rock-chips.com>
      Signed-off-by: NCaesar Wang <wxt@rock-chips.com>
      Cc: linux-gpio@vger.kernel.org
      Reviewed-by: NDouglas Anderson <dianders@chromium.org>
      Reviewed-by: NHeiko Stuebner <heiko@sntech.de>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      3ba6767a
  15. 21 4月, 2016 1 次提交
  16. 13 4月, 2016 1 次提交
  17. 10 2月, 2016 1 次提交
  18. 05 1月, 2016 1 次提交
  19. 22 12月, 2015 1 次提交
  20. 12 12月, 2015 1 次提交
  21. 19 11月, 2015 1 次提交
    • L
      gpio: change member .dev to .parent · 58383c78
      Linus Walleij 提交于
      The name .dev in a struct is normally reserved for a struct device
      that is let us say a superclass to the thing described by the struct.
      struct gpio_chip stands out by confusingly using a struct device *dev
      to point to the parent device (such as a platform_device) that
      represents the hardware. As we want to give gpio_chip:s real devices,
      this is not working. We need to rename this member to parent.
      
      This was done by two coccinelle scripts, I guess it is possible to
      combine them into one, but I don't know such stuff. They look like
      this:
      
      @@
      struct gpio_chip *var;
      @@
      -var->dev
      +var->parent
      
      and:
      
      @@
      struct gpio_chip var;
      @@
      -var.dev
      +var.parent
      
      and:
      
      @@
      struct bgpio_chip *var;
      @@
      -var->gc.dev
      +var->gc.parent
      
      Plus a few instances of bgpio that I couldn't figure out how
      to teach Coccinelle to rewrite.
      
      This patch hits all over the place, but I *strongly* prefer this
      solution to any piecemal approaches that just exercise patch
      mechanics all over the place. It mainly hits drivers/gpio and
      drivers/pinctrl which is my own backyard anyway.
      
      Cc: Haavard Skinnemoen <hskinnemoen@gmail.com>
      Cc: Rafał Miłecki <zajec5@gmail.com>
      Cc: Richard Purdie <rpurdie@rpsys.net>
      Cc: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
      Cc: Alek Du <alek.du@intel.com>
      Cc: Jaroslav Kysela <perex@perex.cz>
      Cc: Takashi Iwai <tiwai@suse.com>
      Acked-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      Acked-by: NJiri Kosina <jkosina@suse.cz>
      Acked-by: NHans-Christian Egtvedt <egtvedt@samfundet.no>
      Acked-by: NJacek Anaszewski <j.anaszewski@samsung.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      58383c78
  22. 17 10月, 2015 1 次提交
  23. 26 9月, 2015 1 次提交
  24. 16 9月, 2015 1 次提交
    • T
      genirq: Remove irq argument from irq flow handlers · bd0b9ac4
      Thomas Gleixner 提交于
      Most interrupt flow handlers do not use the irq argument. Those few
      which use it can retrieve the irq number from the irq descriptor.
      
      Remove the argument.
      
      Search and replace was done with coccinelle and some extra helper
      scripts around it. Thanks to Julia for her help!
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: Jiang Liu <jiang.liu@linux.intel.com>
      bd0b9ac4
  25. 13 8月, 2015 1 次提交
  26. 18 7月, 2015 2 次提交