linux/arch/arm/mach-ux500
Linus Walleij 05ec260ede mfd: db8500-prcmu: update resource passing
When trying to get rid of the cross-includes of <mach/id.h>
from different drivers, so we can localize ASIC/CPU detection
to the mach-ux500 folder, we run into the way the PRCMU
handles base addresses and firmware detection.

This patch updates the firmware version detection to pass
the required information as platform data instead of
relying on cpu_is_* macros.

Now the PRCMU base address, the secondary TCDM area, the
TCPM area and the IRQ are passed as resources instead of
being grabbed from <mach/*> files. Incidentally this also
removes part of the reliance on <mach/irqs.h>.

Further it updates the firmware version detection, since the
location of the firmware ID bytes in the designated memory
are is now passed from the platform data instead. There is
no reason not to include the nice split-off of a struct to
hold the firmware information and a separate function to
populate it.

The patch actually rids the need to use the external
db8500_prcmu_early_init call at all, but I'm keepin back
that removal as I don't want the patch to be too big.

Cc: arm@kernel.org
Cc: Michel Jaoen <michel.jaouen@stericsson.com>
Cc: Lee Jones <lee.jones@linaro.org>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Acked-by: Loic Pallardy <loic.pallardy@stericsson.com>
Acked-by: Fabio Baltieri <fabio.baltieri@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-02-12 12:44:27 +01:00
..
include/mach ARM: ux500: de-globalize <mach/id.h> 2013-01-29 18:47:37 +01:00
board-mop500-audio.c ARM: arm-soc: multiplatform conversion patches 2012-12-13 10:57:16 -08:00
board-mop500-pins.c ARM: arm-soc: driver specific changes 2012-12-13 10:59:11 -08:00
board-mop500-regulators.c ARM: ux500: Provide SMSC911x fixed-regulator when not booting DT 2012-09-04 10:14:31 +02:00
board-mop500-regulators.h ARM: ux500: Provide SMSC911x fixed-regulator when not booting DT 2012-09-04 10:14:31 +02:00
board-mop500-sdi.c ARM: plat-nomadik: move DMA40 header to <linux/platform_data> 2012-11-05 09:55:32 +01:00
board-mop500-stuib.c Input: bu21013_ts - move GPIO init and exit functions into the driver 2012-11-27 23:05:11 -08:00
board-mop500-u8500uib.c ARM: ux500: included linux/gpio.h twice 2012-02-29 16:32:38 +01:00
board-mop500-uib.c ARM: ux500: de-globalize <mach/id.h> 2013-01-29 18:47:37 +01:00
board-mop500.c mfd: db8500-prcmu: update resource passing 2013-02-12 12:44:27 +01:00
board-mop500.h ARM: ux500: Stop registering the PCM driver from platform code 2012-11-27 10:58:38 +00:00
cache-l2x0.c ARM: ux500: de-globalize <mach/id.h> 2013-01-29 18:47:37 +01:00
cpu-db8500.c mfd: db8500-prcmu: update resource passing 2013-02-12 12:44:27 +01:00
cpu.c ARM: ux500: de-globalize <mach/id.h> 2013-01-29 18:47:37 +01:00
cpuidle.c ARM: ux500: add the cpuidle driver for WFI and ARM retention 2012-05-02 00:44:38 +02:00
devices-common.c ARM: plat-nomadik: convert platforms to SPARSE_IRQ 2012-11-05 09:55:34 +01:00
devices-common.h ARM: ux500: add PRCM register base for pinctrl 2012-11-08 13:44:41 +01:00
devices-db8500.c mfd: db8500-prcmu: update resource passing 2013-02-12 12:44:27 +01:00
devices-db8500.h mfd: db8500-prcmu: update resource passing 2013-02-12 12:44:27 +01:00
devices.c ux500: rework device registration 2010-12-08 13:14:06 +01:00
headsmp.S ARM: ux500: add missing ENDPROC to headsmp.S 2012-01-16 08:36:03 -06:00
hotplug.c ARM: consolidate pen_release instead of having per platform definitions 2012-09-14 11:15:01 +02:00
id.c ARM: ux500: de-globalize <mach/id.h> 2013-01-29 18:47:37 +01:00
id.h ARM: ux500: de-globalize <mach/id.h> 2013-01-29 18:47:37 +01:00
Kconfig ARM: plat-nomadik: move MTU, kill plat-nomadik 2012-11-05 09:55:33 +01:00
Makefile Merge branch 'for-arm-soc-next' of git://git.linaro.org/people/ljones/linux-3.0-ux500 into next/dt 2012-09-22 22:20:37 -07:00
Makefile.boot ARM: move all dtb targets out of Makefile.boot 2012-09-14 09:22:04 -05:00
pins-db8500.h ARM: ux500: remove a bunch of internal pull-ups 2012-04-24 09:36:05 +02:00
platsmp.c ARM: ux500: de-globalize <mach/id.h> 2013-01-29 18:47:37 +01:00
ste-dma40-db8500.h ARM: 6418/1: ux500: rename DB8500 DMA event line macros 2010-10-04 19:46:07 +01:00
timer.c ARM: ux500: de-globalize <mach/id.h> 2013-01-29 18:47:37 +01:00
usb.c ARM: plat-nomadik: move DMA40 header to <linux/platform_data> 2012-11-05 09:55:32 +01:00