linux/arch/arm/mach-pxa
Linus Torvalds 2ad7b44f5d Merge branch 'for-linus-clk' of git://ftp.arm.linux.org.uk/~rmk/linux-arm
Pull clkdev updates from Russell King:
 "This series addresses some breakage in clkdev caused by a previous
  patch set from the clk tree which introduced per-user clk structures.
  This basically renamed the existing 'struct clk' to 'struct clk_hw',
  and introduced a new 'struct clk'.

  This change will break anyone using clk_add_alias() with the common
  clk code enabled.  Thankfully, the intersection of users of
  clk_add_alias() and those using the common clk code is practically
  zero, but this is something which should be fixed to keep the code
  sane.

  The problem is that clk_add_alias() does this:

        r = clk_get(...);
        l = clkdev_alloc(r, ...);
        clk_put(...);

  which causes the alias to store a pointer to 'r', which has been
  freed.

  The original patch set tried to work around this problem incorrectly -
  at clk_get() time, it tried to convert the struct clk to a struct
  clk_hw, and then creating a new struct clk from that.  Clearly, if the
  original struct clk has been freed, then we have a use-after-free bug.

  We have other places in the tree which do something similar, so this
  series also addresses those locations too.

  This series addresses this problem by converting clkdev to store and
  use the clk_hw pointer.  This allows clk_get() to only have to create
  it's per-user struct clk from the clk_hw.  We can also get to the
  desired clk_hw at clk_add_alias() or clk lookup creation time, when
  the struct clk is "alive".

  We also perform some cleanups of the code:

   - replacing looped calls to clkdev_add() with clkdev_add_table()

   - replacing open-coded lookup allocation (which should have been
     using clkdev_alloc()) and subsequent clkdev_add() with
     clkdev_create()

   - replacing open-coded clk_add_alias() with clk_add_alias()"

* 'for-linus-clk' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
  clk: s2mps11: use clkdev_create()
  ASoC: migor: use clkdev_create()
  ARM: omap2: use clkdev_add_alias()
  ARM: omap2: use clkdev_create()
  ARM: orion: use clkdev_create()
  ARM: lpc32xx: convert to use clkdev_add_table()
  SH: use clkdev_add_table()
  clkdev: add clkdev_create() helper
  clkdev: const-ify connection id to clk_add_alias()
  clkdev: get rid of redundant clk_add_alias() prototype in linux/clk.h
  clkdev: drop __init from clkdev_add_table()
  clk: update clk API documentation to clarify clk_round_rate()
  clkdev: use clk_hw internally
2015-06-23 15:50:46 -07:00
..
include/mach ARM: pxa: lubbock: use new pxa_cplds driver 2015-04-30 22:52:51 +02:00
am200epd.c ARM: pxa: remove IRQF_DISABLED 2013-12-11 17:32:41 -08:00
am300epd.c ARM: pxa: fix compilation problem on AM300EPD board 2014-02-10 10:32:08 -08:00
balloon3.c arch/arm/mach-pxa: replace strict_strto call with kstrto 2014-08-08 15:57:27 -07:00
capc7117.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
clock-pxa2xx.c ARM: pxa: use common IOMEM definition 2012-03-25 14:36:31 -05:00
clock-pxa3xx.c ARM: pxa: support CKENC in clk_enable 2012-08-16 16:15:44 +08:00
clock.c ARM: pxa: add clk_set_rate() 2011-07-12 19:45:19 +08:00
clock.h ARM: pxa: remove pxa95x support 2012-11-15 13:50:13 +01:00
cm-x2xx-pci.c ARM: PCI: provide a default bus scan implementation 2012-05-13 17:12:17 +01:00
cm-x2xx-pci.h
cm-x2xx.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
cm-x255.c ARM: 7104/1: plat-pxa: break out GPIO driver specifics 2011-10-01 23:45:34 +01:00
cm-x270.c ARM: pxa: move platform_data definitions 2012-09-14 11:18:10 +02:00
cm-x300.c ARM: 8025/1: Get rid of meminfo 2014-06-01 01:17:12 +01:00
colibri-evalboard.c ARM: pxa: fix colibri build 2014-03-21 18:26:02 +01:00
colibri-pxa3xx.c ARM: pxa: move platform_data definitions 2012-09-14 11:18:10 +02:00
colibri-pxa270-income.c ARM: pxa: Initialize PWM backlight enable_gpio field 2013-10-16 09:05:57 +02:00
colibri-pxa270.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
colibri-pxa300.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
colibri-pxa320.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
corgi_pm.c ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
corgi.c ARM: pxa: add regulator_has_full_constraints to corgi board file 2014-12-26 18:03:20 +01:00
csb701.c
csb726.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
devices.c arm: pxa: specify PMUs are for XScale CPUs 2015-02-06 00:12:57 -08:00
devices.h ARM: pxa3xx: provide specific platform_devices for all ssp ports 2014-09-19 01:58:43 +08:00
em-x270.c arm: mach-pxa: Convert pr_warning to pr_warn 2014-11-19 23:53:13 +01:00
eseries.c clkdev: get rid of redundant clk_add_alias() prototype in linux/clk.h 2015-05-06 11:58:51 +01:00
ezx.c ARM: pxa: Initialize PWM backlight enable_gpio field 2013-10-16 09:05:57 +02:00
generic.c ARM: pxa: fix section mismatch warning for pxa_timer_nodt_init 2014-09-09 16:42:25 +02:00
generic.h arm: pxa: move init functions into generic.h 2014-11-19 23:53:14 +01:00
gumstix.c arm: mach-pxa: Convert pr_warning to pr_warn 2014-11-19 23:53:13 +01:00
h5000.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
himalaya.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
hx4700.c hx4700: regulator: declare full constraints 2014-12-26 18:05:32 +01:00
icontrol.c can: mcp251x: Replace power callbacks with regulator API 2013-08-21 09:28:29 +02:00
idp.c ARM: fix typos in smc91x platform data 2015-03-04 23:32:26 -05:00
irq.c ARM: pxa: fix pxa interrupts handling in DT 2015-02-23 22:40:48 +01:00
Kconfig ARM: pxa: pxa_cplds: add lubbock and mainstone IO 2015-04-30 22:52:12 +02:00
littleton.c Input: pxa27x-keypad - use matrix_keymap for matrix keys 2013-06-18 22:56:51 -07:00
lpd270.c ARM: fix typos in smc91x platform data 2015-03-04 23:32:26 -05:00
lubbock.c Merge branch 'for-linus-clk' of git://ftp.arm.linux.org.uk/~rmk/linux-arm 2015-06-23 15:50:46 -07:00
magician.c ARM: pxa: remove IRQF_DISABLED 2013-12-11 17:32:41 -08:00
mainstone.c ARM: pxa: mainstone: use new pxa_cplds driver 2015-04-30 22:52:31 +02:00
Makefile ARM: pxa: pxa_cplds: add lubbock and mainstone IO 2015-04-30 22:52:12 +02:00
Makefile.boot ARM: 7022/1: allow to detect conflicting zreladdrs 2011-10-17 09:12:40 +01:00
mfp-pxa2xx.c arm: mach-pxa: Convert pr_warning to pr_warn 2014-11-19 23:53:13 +01:00
mfp-pxa3xx.c
mioa701_bootresume.S ARM: convert all "mov.* pc, reg" to "bx reg" for ARMv6+ 2014-07-18 12:29:04 +01:00
mioa701.c ARM: pxa: Add dummy backlight power supply on Mitac Mio A701 2014-02-11 11:33:09 +08:00
mp900.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
mxm8x10.c ARM: pxa: move platform_data definitions 2012-09-14 11:18:10 +02:00
palm27x.c ARM: pxa: Initialize PWM backlight enable_gpio field 2013-10-16 09:05:57 +02:00
palmld.c Input: pxa27x-keypad - use matrix_keymap for matrix keys 2013-06-18 22:56:51 -07:00
palmt5.c Input: pxa27x-keypad - use matrix_keymap for matrix keys 2013-06-18 22:56:51 -07:00
palmtc.c ARM: pxa: Initialize PWM backlight enable_gpio field 2013-10-16 09:05:57 +02:00
palmte2.c ARM: pxa: Initialize PWM backlight enable_gpio field 2013-10-16 09:05:57 +02:00
palmtreo.c Input: pxa27x-keypad - use matrix_keymap for matrix keys 2013-06-18 22:56:51 -07:00
palmtx.c Input: pxa27x-keypad - use matrix_keymap for matrix keys 2013-06-18 22:56:51 -07:00
palmz72.c Input: pxa27x-keypad - use matrix_keymap for matrix keys 2013-06-18 22:56:51 -07:00
pcm027.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
pcm990-baseboard.c ARM: pxa: remove IRQF_DISABLED 2013-12-11 17:32:41 -08:00
pm.c ARM: pm: move cpu_init() call into core code 2011-06-24 08:48:43 +01:00
poodle.c ARM: pxa: add regulator_has_full_constraints to poodle board file 2014-12-26 18:03:20 +01:00
pxa2xx.c ARM: pxa: move platform_data definitions 2012-09-14 11:18:10 +02:00
pxa3xx-ulpi.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
pxa3xx.c ARM: pxa3xx: provide specific platform_devices for all ssp ports 2014-09-19 01:58:43 +08:00
pxa25x.c ARM: pxa: Move UNCACHED_PHYS_0 mapping from generic.c to pxa2[57]x.c 2014-07-12 09:51:40 -07:00
pxa27x.c arm: pxa: add device-tree irq init for pxa27x 2014-11-19 23:53:14 +01:00
pxa300.c ARM: pxa: use common IOMEM definition 2012-03-25 14:36:31 -05:00
pxa320.c ARM: pxa: use common IOMEM definition 2012-03-25 14:36:31 -05:00
pxa930.c ARM: pxa: move PXA_GPIO_TO_IRQ macro 2013-04-11 10:00:05 +08:00
pxa_cplds_irqs.c ARM: pxa: pxa_cplds: signedness bug in probe 2015-05-22 16:41:20 +02:00
pxa-dt.c arm: pxa: add pxa27x device-tree support 2014-11-19 23:53:14 +01:00
raumfeld.c arm: mach-pxa: Decrement the power supply's device reference counter 2015-03-13 23:15:55 +01:00
reset.c ARM: pxa: prevent PXA270 occasional reboot freezes 2013-12-11 16:35:16 -08:00
saar.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
sharpsl_pm.c ARM: pxa: remove IRQF_DISABLED 2013-12-11 17:32:41 -08:00
sleep.S ARM: pxa: correct errata number for PXA270 2014-07-04 20:30:42 +08:00
smemc.c ARM: PXA3xx: program the CSMSADRCFG register 2013-01-23 16:56:32 +08:00
spitz_pm.c ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
spitz.c ARM: pxa: add regulator_has_full_constraints to spitz board file 2014-12-26 18:04:26 +01:00
standby.S ARM: convert all "mov.* pc, reg" to "bx reg" for ARMv6+ 2014-07-18 12:29:04 +01:00
stargate2.c misc: (at24) move header to linux/platform_data/ 2013-09-30 06:02:34 +02:00
tavorevb.c ARM: pxa: Initialize PWM backlight enable_gpio field 2013-10-16 09:05:57 +02:00
tosa-bt.c ARM: mach-pxa: drop owner assignment from platform_drivers 2014-10-20 16:20:05 +02:00
tosa.c clkdev: get rid of redundant clk_add_alias() prototype in linux/clk.h 2015-05-06 11:58:51 +01:00
trizeps4.c ARM: pxa: remove IRQF_DISABLED 2013-12-11 17:32:41 -08:00
viper.c arch/arm/mach-pxa: replace strict_strto call with kstrto 2014-08-08 15:57:27 -07:00
vpac270.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
xcep.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
z2.c ARM: pxa: Initialize PWM backlight enable_gpio field 2013-10-16 09:05:57 +02:00
zeus.c ARM: pxa: Fix typo in zeus.c 2015-02-23 22:40:09 +01:00
zylonite_pxa300.c gpio: (gpio-pca953x) move header to linux/platform_data/ 2013-08-29 12:33:52 -07:00
zylonite_pxa320.c
zylonite.c ARM: pxa: Initialize PWM backlight enable_gpio field 2013-10-16 09:05:57 +02:00