omap cleanup part1 for v3.2 merge window
Subsystems (3)
Tony Lindgren
maintainerHi Arnd,
Please pull the first part of omap cleanup from:
git://github.com/tmlind/linux.git cleanup
This series cleans up early_init functions and removes CHIP_IS macro usage. This makes it easier to have SoC specific init functions so adding support for new omap variants does not require patching all over the place.
Regards,
Tony
The following changes since commit b6fd41e29dea9c6753b1843a77e50433e6123bcb:
Linus Torvalds (1):
Linux 3.1-rc6
are available in the git repository at:
git://github.com/tmlind/linux.git cleanup
Paul Walmsley (12):
OMAP3: id: remove identification codes that only correspond to marketing names
OMAP3: id: remove useless strcpy()s
OMAP3: id: use explicit omap_revision codes for 3505/3517 ES levels
OMAP3: id: add fallthrough warning; fix some CodingStyle issues
OMAP3: id: remove duplicate code for testing SoC ES level OMAP2+: id: remove OMAP_REVBITS_* macros
OMAP: clockdomain: split clkdm_init()
OMAP: clockdomain code/data: remove omap_chip bitmask from struct clockdomain
OMAP: powerdomain: split pwrdm_init() into two functions
OMAP: powerdomain: remove omap_chip bitmasks
OMAP2+: hwmod: remove OMAP_CHIP*
OMAP: id: remove OMAP_CHIP declarations, code
Tony Lindgren (4):
omap2+: Use Kconfig symbol in Makefile instead of obj-y
ARM: OMAP: Move omap2_init_common_devices out of init_early
ARM: OMAP: Introduce SoC specific early_init
Merge branch 'omap_chip_remove_cleanup_3.2' of git://git.pwsan.com/linux-2.6 into cleanup
arch/arm/mach-omap2/Makefile | 81 +-- arch/arm/mach-omap2/board-2430sdp.c | 9 +- arch/arm/mach-omap2/board-3430sdp.c | 9 +- arch/arm/mach-omap2/board-3630sdp.c | 11 +- arch/arm/mach-omap2/board-4430sdp.c | 9 +- arch/arm/mach-omap2/board-am3517crane.c | 9 +- arch/arm/mach-omap2/board-am3517evm.c | 8 +- arch/arm/mach-omap2/board-apollon.c | 9 +- arch/arm/mach-omap2/board-cm-t35.c | 13 +- arch/arm/mach-omap2/board-cm-t3517.c | 9 +- arch/arm/mach-omap2/board-devkit8000.c | 12 +- arch/arm/mach-omap2/board-generic.c | 2 +- arch/arm/mach-omap2/board-h4.c | 9 +- arch/arm/mach-omap2/board-igep0020.c | 13 +- arch/arm/mach-omap2/board-ldp.c | 9 +- arch/arm/mach-omap2/board-n8x0.c | 13 +- arch/arm/mach-omap2/board-omap3beagle.c | 4 +- arch/arm/mach-omap2/board-omap3evm.c | 9 +- arch/arm/mach-omap2/board-omap3logic.c | 11 +- arch/arm/mach-omap2/board-omap3pandora.c | 11 +- arch/arm/mach-omap2/board-omap3stalker.c | 9 +- arch/arm/mach-omap2/board-omap3touchbook.c | 11 +- arch/arm/mach-omap2/board-omap4panda.c | 9 +- arch/arm/mach-omap2/board-overo.c | 11 +- arch/arm/mach-omap2/board-rm680.c | 17 +- arch/arm/mach-omap2/board-rx51.c | 17 +- arch/arm/mach-omap2/board-ti8168evm.c | 9 +- arch/arm/mach-omap2/board-zoom.c | 23 +- arch/arm/mach-omap2/clock3xxx_data.c | 11 +- arch/arm/mach-omap2/clockdomain.c | 147 +++-- arch/arm/mach-omap2/clockdomain.h | 22 +- arch/arm/mach-omap2/clockdomain2xxx_3xxx.c | 4 - arch/arm/mach-omap2/clockdomain44xx.c | 2 - arch/arm/mach-omap2/clockdomains2420_data.c | 154 +++++ arch/arm/mach-omap2/clockdomains2430_data.c | 181 +++++ arch/arm/mach-omap2/clockdomains2xxx_3xxx_data.c | 803 +--------------------- arch/arm/mach-omap2/clockdomains3xxx_data.c | 398 +++++++++++ arch/arm/mach-omap2/clockdomains44xx_data.c | 409 +++--------- arch/arm/mach-omap2/id.c | 191 ++---- arch/arm/mach-omap2/io.c | 52 ++- arch/arm/mach-omap2/omap_hwmod.c | 3 - arch/arm/mach-omap2/omap_hwmod_2420_data.c | 37 - arch/arm/mach-omap2/omap_hwmod_2430_data.c | 45 -- arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 169 +++--- arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 82 --- arch/arm/mach-omap2/powerdomain-common.c | 7 +- arch/arm/mach-omap2/powerdomain.c | 87 ++- arch/arm/mach-omap2/powerdomain.h | 9 +- arch/arm/mach-omap2/powerdomains2xxx_3xxx_data.c | 19 +- arch/arm/mach-omap2/powerdomains2xxx_data.c | 44 +- arch/arm/mach-omap2/powerdomains3xxx_data.c | 81 ++- arch/arm/mach-omap2/powerdomains44xx_data.c | 20 +- arch/arm/plat-omap/include/plat/clock.h | 2 - arch/arm/plat-omap/include/plat/common.h | 9 + arch/arm/plat-omap/include/plat/cpu.h | 108 +--- arch/arm/plat-omap/include/plat/io.h | 2 +- arch/arm/plat-omap/include/plat/omap_hwmod.h | 2 - 57 files changed, 1430 insertions(+), 2036 deletions(-) create mode 100644 arch/arm/mach-omap2/clockdomains2420_data.c create mode 100644 arch/arm/mach-omap2/clockdomains2430_data.c create mode 100644 arch/arm/mach-omap2/clockdomains3xxx_data.c
Quoted 8 lines · Tony Lindgren
Please pull the first part of omap cleanup from:
git://github.com/tmlind/linux.gitcleanupThis series cleans up
early_initfunctions and removesCHIP_ISmacro usage. This makes it easier to have SoC specific init functions so adding support for new omap variants does not require patching all over the place.
Thanks, pulled.
Note that we are trying to get everyone to use the similar prefixes for patch summaries, so it would be nice if you could change 'OMAP: powerdomain:' to 'ARM: OMAP: powerdomain' or 'ARM: omap/powerdowmain:' in the future.
Arnd
Tony Lindgren
maintainerQuoted 10 lines · Arnd Bergmann
Quoted 8 lines · Tony Lindgren
Please pull the first part of omap cleanup from:
git://github.com/tmlind/linux.gitcleanupThis series cleans up
early_initfunctions and removesCHIP_ISmacro usage. This makes it easier to have SoC specific init functions so adding support for new omap variants does not require patching all over the place.
Quoted 6 lines
Thanks, pulled.
Note that we are trying to get everyone to use the similar prefixes for patch summaries, so it would be nice if you could change 'OMAP: powerdomain:' to 'ARM: OMAP: powerdomain' or 'ARM: omap/powerdowmain:' in the future.
Already did that for my patches.. Paul and Kevin, can you please also start following that standard too?
Thanks,
Tony
Quoted 10 lines · Tony Lindgren
Hi Arnd,
Please pull the first part of omap cleanup from:
git://github.com/tmlind/linux.gitcleanupThis series cleans up
early_initfunctions and removesCHIP_ISmacro usage. This makes it easier to have SoC specific init functions so adding support for new omap variants does not require patching all over the place.
One more thing: my randconfig tests are running now and have spit out a new error after merging lost of stuff today:
arch/arm/mach-omap2/built-in.o: In function `omap_zoom_init':/home/arnd/linux-arm/arch/arm/mach-omap2/board-zoom.c:117: undefined reference to `board_nand_init' make[1]: *** [.tmp_vmlinux1] Error 1
make[1]: Target `_all' not remade because of errors.
make: *** [sub-make] Error 2
make: Target `_all' not remade because of errors.
It's not clear to me if this is actually caused by one of your changes, or just a mismerge of some sort. I've attached the defconfig that was used for your reference.
Also, I've got a branch with lots of omap specific randconfig patches at
git://git.linaro.org/people/arnd/linux.git randconfig/omap
Probably not all of them are correct, but it would be nice if you could take a look and cherry-pick the ones you like.
Arnd
-------------- next part --------------
A non-text attachment was scrubbed...
Name: defconfig.gz
Type: application/x-gzip
Size: 2750 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20110920/28f35e27/attachment.gz>
Quoted 16 lines · Arnd Bergmann
Quoted 10 lines · Tony Lindgren
Hi Arnd,
Please pull the first part of omap cleanup from:
git://github.com/tmlind/linux.gitcleanupThis series cleans up
early_initfunctions and removesCHIP_ISmacro usage. This makes it easier to have SoC specific init functions so adding support for new omap variants does not require patching all over the place.One more thing: my randconfig tests are running now and have spit out a new error after merging lost of stuff today:
Quoted 6 lines
arch/arm/mach-omap2/built-in.o: In function `omap_zoom_init':/home/arnd/linux-arm/arch/arm/mach-omap2/board-zoom.c:117: undefined reference to `board_nand_init' make[1]: *** [.tmp_vmlinux1] Error 1
make[1]: Target `_all' not remade because of errors.
make: *** [sub-make] Error 2
make: Target `_all' not remade because of errors.
Found it: the offending patch is:
omap2+: Use Kconfig symbol in Makefile instead of obj-y
It seems that you replace the #ifdef in the board-flash.c file with a similar #ifdef in the header that replaces this with an empty inline function when the object is not built.
Arnd
Tony Lindgren
maintainerQuoted 5 lines · Arnd Bergmann
Quoted 4 lines · Arnd Bergmann
One more thing: my randconfig tests are running now and have spit out a new error after merging lost of stuff today:
Good to hear you got "arndconfig" running :)
Do you think we could also add support for something like this:
$ echo CONFIG_ARCH_OMAP=y > .config $ make randconfig
or
$ make --force=CONFIG_ARCH_OMAP randconfig
Where randconfig would keep the forced CONFIG_ARCH_OMAP static while randomly selecting the others?
This would allow targeted randconfig for each patch more or less..
Quoted 7 lines
Quoted 6 lines
arch/arm/mach-omap2/built-in.o: In function `omap_zoom_init':/home/arnd/linux-arm/arch/arm/mach-omap2/board-zoom.c:117: undefined reference to `board_nand_init' make[1]: *** [.tmp_vmlinux1] Error 1
make[1]: Target `_all' not remade because of errors.
make: *** [sub-make] Error 2
make: Target `_all' not remade because of errors.
Quoted 8 lines
Found it: the offending patch is:
omap2+: Use
Kconfigsymbol inMakefileinstead of obj-yIt seems that you replace the #ifdef in the
board-flash.cfile with a similar #ifdef in the header that replaces this with an empty inline function when the object is not built.
Oops. I'll do a fix for that. Those should be now inline functions in the header.
As various other omap branches are based on the cleanup I'd rather not go mess with the original patch unless you insist.
Regards,
Tony
Quoted 17 lines · On Tuesday 20 September 2011 15:33:12 Tony Lindgren wrote:
Quoted 5 lines · Arnd Bergmann
Quoted 4 lines · Arnd Bergmann
One more thing: my randconfig tests are running now and have spit out a new error after merging lost of stuff today:
Good to hear you got "arndconfig" running :)
Do you think we could also add support for something like this:
$ echo CONFIG_ARCH_OMAP=y > .config $ make randconfigor
Quoted 7 lines
$ make --force=CONFIG_ARCH_OMAP randconfigWhere randconfig would keep the forced
CONFIG_ARCH_OMAPstatic while randomly selecting the others?This would allow targeted randconfig for each patch more or less..
The mechanism I use is setting KCONFIG_ALLCONFIG= to a file that has the options I want to have set to a specific value.
If you don't do that, randconfig will take the default option for each 'choice' statement, which means we build for the ARCH_VERSATILE platform.
See the script I'm using at the end of this mail. It should be easy for you to pick out the parts you need.
Quoted 9 lines
Quoted 3 lines
It seems that you replace the #ifdef in the
board-flash.cfile with a similar #ifdef in the header that replaces this with an empty inline function when the object is not built.Oops. I'll do a fix for that. Those should be now inline functions in the header.
As various other omap branches are based on the cleanup I'd rather not go mess with the original patch unless you insist.
Totally fine with me. This is just a corner case anyway, since most configurations will have flash enabled I guess.
Arnd
8<---
#!/bin/bash
export ARCH=arm
export PATH=/usr/bin:/bin
export CROSS_COMPILE=arm-linux-gnueabihf-
export PARALLEL=-j6
export CCACHE_DISABLE=1
export O=$PWD/obj-tmp
gen_allconfig()
{
declare -a MACH
MACH[1]=OMAP
MACH[2]=EXYNOS4
MACH[3]=U8500
MACH[4]=VEXPRESS
MACH[5]=MXC
MACH[6]=MSM
MACH[7]=PXA
MACH[8]=MMP
MACH[9]=DOVE
MACH[10]=KIRKWOOD
MACH[11]=ZYNQ
MACH[12]=PRIMA2
MACH[13]=TEGRA
MACH[14]=SHMOBILE
declare -a MXC
MXC[1]=MX3
MXC[2]=MX503
MXC[3]=MX51
declare -a AT91
AT91[1]=ARCH_AT91RM9200
AT91[2]=ARCH_AT91SAM9260
AT91[3]=ARCH_AT91SAM9261
AT91[4]=ARCH_AT91SAM9G10
AT91[5]=ARCH_AT91SAM9263
AT91[6]=ARCH_AT91SAM9RL
AT91[7]=ARCH_AT91SAM9G20
AT91[8]=ARCH_AT91SAM9G45
AT91[9]=ARCH_AT91CAP9
AT91[10]=ARCH_AT91X40
# pick one ARCH_* option from the main choice statement
echo "CONFIG_ARCH_${MACH[$[ $RANDOM % ${#MACH[@]} +1 ]]}=y"
# IMX and AT91 have another choice statement
echo "CONFIG_ARCH_${MXC[$[ $RANDOM % ${#MXC[@]} +1 ]]}=y"
echo "CONFIG_${MXC[$[ $RANDOM % ${#AT91[@]} +1 ]]}=y"
# These have to be fixed in order to avoid huge build breakage.
echo "# CONFIG_XIP_KERNEL is not set"
echo "# CONFIG_STAGING is not set"
echo "CONFIG_MMU=y"
echo "CONFIG_PREVENT_FIRMWARE_BUILD=y"
# add a few choice options that don't normally get selected
[ $[RANDOM % 2 ] == 1 ] || echo "CONFIG_PROFILE_ALL_BRANCHES=y"
[ $[RANDOM % 2 ] == 1 ] || echo "CONFIG_SLAB=y"
[ $[RANDOM % 2 ] == 1 ] || echo "CONFIG_PREEMPT=y"
}prepare()
{
mkdir -p ${O}
make O=${O} clean
gen_allconfig > ${O}/allconfig
make O=${O} KCONFIG_ALLCONFIG=${O}/allconfig randconfig
}mkdir -p out
prepare
for i in seq -w 9999 ; do
if ! make O=${O} -k -s ${PARALLEL} CFLAGS_KERNEL+=-Wno-uninitialized KALLSYMS_EXTRA_PASS=1 2> out/warnings-$i ; then
make O=${O} -k -s CFLAGS_KERNEL+=-Wno-uninitialized KALLSYMS_EXTRA_PASS=1 2> out/errors-$i
cp ${O}/.config out/config-broken-$i
else
cp ${O}/.config out/config-ok-$i
fi
preparedone
Tony Lindgren
maintainerQuoted 29 lines · Arnd Bergmann
Quoted 17 lines · On Tuesday 20 September 2011 15:33:12 Tony Lindgren wrote:
Quoted 5 lines · Arnd Bergmann
Quoted 4 lines · Arnd Bergmann
One more thing: my randconfig tests are running now and have spit out a new error after merging lost of stuff today:
Good to hear you got "arndconfig" running :)
Do you think we could also add support for something like this:
$ echo CONFIG_ARCH_OMAP=y > .config $ make randconfigor
Quoted 7 lines
$ make --force=CONFIG_ARCH_OMAP randconfigWhere randconfig would keep the forced
CONFIG_ARCH_OMAPstatic while randomly selecting the others?This would allow targeted randconfig for each patch more or less..
The mechanism I use is setting KCONFIG_ALLCONFIG= to a file that has the options I want to have set to a specific value.
Quoted 6 lines
If you don't do that, randconfig will take the default option for each 'choice' statement, which means we build for the
ARCH_VERSATILEplatform.See the script I'm using at the end of this mail. It should be easy for you to pick out the parts you need.
Thanks will take a look at that for sure.
Tony
Quoted 3 lines · On Tuesday 20 September 2011 23:46:11 Arnd Bergmann wrote:
It seems that you replace the #ifdef in the
board-flash.cfile with a similar #ifdef in the header that replaces this with an empty inline function when the object is not built.
Found another similar problem over night, presumably in the voltage series:
arch/arm/mach-omap2/built-in.o: In function `pwrdm_register_pwrdms':
twl-common.c:(.text+0x5e20): undefined reference to voltdm_lookup' twl-common.c:(.text+0x5e40): undefined reference to voltdm_add_pwrdm' arch/arm/mach-omap2/built-in.o: In function `omap2_init_common_infrastructure':
twl-common.c:(.init.text+0x3a4): undefined reference to omap2xxx_voltagedomains_init' twl-common.c:(.init.text+0x3c8): undefined reference to omap3xxx_voltagedomains_init' arch/arm/mach-omap2/built-in.o: In function `omap2_set_init_voltage':
twl-common.c:(.init.text+0x13c8): undefined reference to voltdm_lookup' arch/arm/mach-omap2/built-in.o: In function omap3_twl_init':
twl-common.c:(.init.text+0x1f44): undefined reference to voltdm_lookup' twl-common.c:(.init.text+0x1f4c): undefined reference to voltdm_lookup'
Arnd
Tony Lindgren
maintainerKevin,
Quoted 8 lines · Arnd Bergmann
Quoted 3 lines · On Tuesday 20 September 2011 23:46:11 Arnd Bergmann wrote:
It seems that you replace the #ifdef in the
board-flash.cfile with a similar #ifdef in the header that replaces this with an empty inline function when the object is not built.Found another similar problem over night, presumably in the voltage series:
Quoted 11 lines
arch/arm/mach-omap2/built-in.o: In function `pwrdm_register_pwrdms':
twl-common.c:(.text+0x5e20): undefined reference tovoltdm_lookup' twl-common.c:(.text+0x5e40): undefined reference tovoltdm_add_pwrdm'arch/arm/mach-omap2/built-in.o: In function `omap2_init_common_infrastructure':
twl-common.c:(.init.text+0x3a4): undefined reference toomap2xxx_voltagedomains_init' twl-common.c:(.init.text+0x3c8): undefined reference toomap3xxx_voltagedomains_init'arch/arm/mach-omap2/built-in.o: In function `omap2_set_init_voltage':
twl-common.c:(.init.text+0x13c8): undefined reference tovoltdm_lookup' arch/arm/mach-omap2/built-in.o: In functionomap3_twl_init':
twl-common.c:(.init.text+0x1f44): undefined reference tovoltdm_lookup' twl-common.c:(.init.text+0x1f4c): undefined reference tovoltdm_lookup'
Can you take a look at this one?
Tony
Hi Arnd,
Quoted 8 lines · Arnd Bergmann
Quoted 3 lines · On Tuesday 20 September 2011 23:46:11 Arnd Bergmann wrote:
It seems that you replace the #ifdef in the
board-flash.cfile with a similar #ifdef in the header that replaces this with an empty inline function when the object is not built.Found another similar problem over night, presumably in the voltage series:
Found. Patch below.
If this one is OK, I'll push to my for_3.2/voltage-cleanup branch (which is already pulled into arm-soc/next/voltage) so just re-pulling will pick up the fix.
Kevin
Quoted 5 lines · Kevin Hilman
Found. Patch below.
If this one is OK, I'll push to my for_3.2/voltage-cleanup branch (which is already pulled into arm-soc/next/voltage) so just re-pulling will pick up the fix.
Looks good to me, it's always nice when a bug fix is also a cleanup ;-)
Arnd
Quoted 9 lines · Arnd Bergmann
Quoted 5 lines · Kevin Hilman
Found. Patch below.
If this one is OK, I'll push to my for_3.2/voltage-cleanup branch (which is already pulled into arm-soc/next/voltage) so just re-pulling will pick up the fix.
Looks good to me, it's always nice when a bug fix is also a cleanup ;-)
OK, added it to the branch you've already pulled[1], if you (re)pull, you'll get the fix too.
Thanks,
Kevin
[1] git://gitorious.org/khilman/linux-omap-pm.git for_3.2/voltage_cleanup
Tony Lindgren
maintainerArnd,
Quoted 10 lines · Kevin Hilman
Hi Arnd,
Quoted 6 lines · Arnd Bergmann
Quoted 3 lines · On Tuesday 20 September 2011 23:46:11 Arnd Bergmann wrote:
It seems that you replace the #ifdef in the
board-flash.cfile with a similar #ifdef in the header that replaces this with an empty inline function when the object is not built.
Quoted 8 lines
Quoted 2 lines
Found another similar problem over night, presumably in the voltage series:
Found. Patch below.
If this one is OK, I'll push to my for_3.2/voltage-cleanup branch (which is already pulled into arm-soc/next/voltage) so just re-pulling will pick up the fix.
Arnd, care to pull this in directly from Kevin into voltage branch? It's available at:
git://gitorious.org/khilman/linux-omap-pm for_3.2/voltage-cleanup
Regards,
Tony
Quoted 77 lines
From
473dc975c3ea468049732155467ff08fe3701f98Mon Sep 17 00:00:00 2001
From: Kevin Hilman <[email protected]>
Date: Wed, 21 Sep 2011 09:24:53 -0700
Subject: [PATCH] ARM: OMAP: voltage layer present, even whenCONFIG_PM=nEven when
CONFIG_PM=n, we try to scale the boot voltage to a sane, known value using OPP table to find matching voltage based on boot frequency. This should be done, even whenCONFIG_PM=nto avoid mis-configured bootloaders and/or boot voltage assumptions made by boot loaders.Also fixes various compile problems due to depenencies between voltage domain and powerdomain code (also present when
CONFIG_PM=n).Reported-by Arnd Bergmann <[email protected]>Signed-off-by Kevin Hilman <[email protected]>---
Compile tested withCONFIG_PM=n
Applies to arm-soc/next/voltagearch/arm/mach-omap2/Makefile | 2 -- arch/arm/mach-omap2/voltage.h | 14 -------------- 2 files changed, 0 insertions(+), 16 deletions(-)arch/arm/mach-omap2/Makefile +0
-2@@ -89,7 +89,6 @@ obj-$(CONFIG_ARCH_OMAP4) += prcm.o cm2xxx_3xxx.o cminst44xx.o \ vp44xx_data.o # OMAP voltage domains -ifeq ($(CONFIG_PM),y) voltagedomain-common := voltage.o vc.o vp.o obj-$(CONFIG_ARCH_OMAP2) += $(voltagedomain-common) \ voltagedomains2xxx_data.o@@ -97,7 +96,6 @@ obj-$(CONFIG_ARCH_OMAP3) += $(voltagedomain-common) \ voltagedomains3xxx_data.o obj-$(CONFIG_ARCH_OMAP4) += $(voltagedomain-common) \ voltagedomains44xx_data.o -endif # OMAP powerdomain framework powerdomain-common += powerdomain.o powerdomain-common.oarch/arm/mach-omap2/voltage.h +0
-14@@ -148,25 +148,11 @@ void omap_voltage_get_volttable(struct voltagedomain *voltdm, struct omap_volt_data **volt_data);struct omap_volt_data *omap_voltage_get_voltdata (struct voltagedomain *voltdm,unsigned long volt); -#ifdef CONFIG_PM int omap_voltage_register_pmic (struct voltagedomain *voltdm,struct omap_voltdm_pmic *pmic);void omap_change_voltscale_method (struct voltagedomain *voltdm,int voltscale_method);int omap_voltage_late_init (void ); -#else -static inline int omap_voltage_register_pmic (struct voltagedomain *voltdm, -struct omap_voltdm_pmic *pmic) -{ -return -EINVAL ; -} -static inline void omap_change_voltscale_method (struct voltagedomain *voltdm, -int voltscale_method) {} -static inline int omap_voltage_late_init (void ) -{ -return -EINVAL ; -} -#endif extern void omap2xxx_voltagedomains_init (void );extern void omap3xxx_voltagedomains_init (void );Signature · 1 line
1.7.6
Arnd Bergmann
AppliedQuoted 9 lines · Tony Lindgren
Quoted 4 lines
If this one is OK, I'll push to my for_3.2/voltage-cleanup branch (which is already pulled into arm-soc/next/voltage) so just re-pulling will pick up the fix.
Arnd, care to pull this in directly from Kevin into voltage branch? It's available at:
git://gitorious.org/khilman/linux-omap-pmfor_3.2/voltage-cleanup
Applied, thanks for taking care of this!
Arnd
Tony Lindgren
maintainerPATCH 1/1 ARM: OMAP2+: Fix missing inline functions for Makefile cleanup (Re: [GIT PULL] omap cleanup part1 for v3.2 merge window)
In reply to Arnd BergmannCommit f41caddbe73f52a42f529d668ce47b4d693fd2c0 (omap2+: Use Kconfig symbol in Makefile instead of obj-y) cleaned up the omap2+ Makefile. However this did not account for the inline functions that are now needed for board_flash_init and board_nand_init.
---
Will have this in the next pull request for cleanup
arch/arm/mach-omap2/board-flash.c +0 -5
@@ -148,11 +148,6 @@ __init board_nand_init(struct mtd_partition *nand_parts, board_nand_data.gpmc_irq =OMAP_GPMC_IRQ_BASE + cs; gpmc_nand_init(&board_nand_data); } -#else -void -__init board_nand_init (struct mtd_partition *nand_parts,u8 nr_parts,u8 cs,int nand_type) -{ -}#endif /* CONFIG_MTD_NAND_OMAP2 || CONFIG_MTD_NAND_OMAP2_MODULE */ /**
arch/arm/mach-omap2/board-flash.h +19 -0
@@ -24,7 +24,26 @@ struct flash_partitions {int nr_parts; }; +#if defined(CONFIG_MTD_NAND_OMAP2 ) || \ + defined(CONFIG_MTD_NAND_OMAP2_MODULE ) || \ + defined(CONFIG_MTD_ONENAND_OMAP2 ) || \ + defined(CONFIG_MTD_ONENAND_OMAP2_MODULE )extern void board_flash_init (struct flash_partitions [],char chip_sel[][GPMC_CS_NUM ],int nand_type); +#else +static inline void board_flash_init (struct flash_partitions part[], +char chip_sel[][GPMC_CS_NUM ],int nand_type) +{ +} +#endif + +#if defined(CONFIG_MTD_NAND_OMAP2 ) || \ + defined(CONFIG_MTD_NAND_OMAP2_MODULE )extern void board_nand_init (struct mtd_partition *nand_parts,u8 nr_parts,u8 cs,int nand_type); +#else +static inline void board_nand_init (struct mtd_partition *nand_parts, +u8 nr_parts,u8 cs,int nand_type) +{ +} +#endif