Kirkwood: declare mpp config static and const
PATCH 1/1 Kirkwood: declare mpp config static and const
Change the prototype of kirkwood_mpp_conf() from
void kirkwood_mpp_conf(u32 *mpp_list)
to
void kirkwood_mpp_conf(const u32 *mpp_list)
Now we can declare the kwmpp_config static and const where possible.
---
This was spotted by Mike in an earlier patch series (Kirkwood: add lschlv2 and lsxhl board support). Declaring the mpp_config static avoids generating the array on the stack.
This was compile tested on all kirkwood boards and tested on the lschlv2.
arch/arm/cpu/arm926ejs/kirkwood/mpp.c | 2 +- arch/arm/include/asm/arch-kirkwood/mpp.h | 2 +- board/LaCie/net2big_v2/net2big_v2.c | 2 +- board/LaCie/netspace_v2/netspace_v2.c | 2 +- board/Marvell/dreamplug/dreamplug.c | 2 +- board/Marvell/guruplug/guruplug.c | 2 +- board/Marvell/mv88f6281gtw_ge/mv88f6281gtw_ge.c | 2 +- board/Marvell/openrd/openrd.c | 2 +- board/Marvell/rd6281a/rd6281a.c | 2 +- board/Marvell/sheevaplug/sheevaplug.c | 2 +- board/Seagate/dockstar/dockstar.c | 2 +- board/buffalo/lsxl/lsxl.c | 2 +- board/d-link/dns325/dns325.c | 2 +- board/keymile/km_arm/km_arm.c | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-)
arch/arm/cpu/arm926ejs/kirkwood/mpp.c +1 -1
@@ -31,7 +31,7 @@ static u32 kirkwood_variant(void)#define MPP_CTRL (i) (KW_MPP_BASE + (i* 4))#define MPP_NR_REGS (1 + MPP_MAX/8) -void kirkwood_mpp_conf (u32 *mpp_list) +void kirkwood_mpp_conf (const u32 *mpp_list) {u32 mpp_ctrl[MPP_NR_REGS ];unsigned int variant_mask;
arch/arm/include/asm/arch-kirkwood/mpp.h +1 -1
@@ -312,6 +312,6 @@#define MPP_MAX 49 -void kirkwood_mpp_conf (unsigned int *mpp_list); +void kirkwood_mpp_conf (const unsigned int *mpp_list);#endif
board/LaCie/net2big_v2/net2big_v2.c +1 -1
@@ -39,7 +39,7 @@ int board_early_init_f(void) NET2BIG_V2_OE_LOW, NET2BIG_V2_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = { MPP0_SPI_SCn,MPP1_SPI_MOSI ,MPP2_SPI_SCK ,
board/LaCie/netspace_v2/netspace_v2.c +1 -1
@@ -39,7 +39,7 @@ int board_early_init_f(void) NETSPACE_V2_OE_LOW, NETSPACE_V2_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = { MPP0_SPI_SCn,MPP1_SPI_MOSI ,MPP2_SPI_SCK ,
board/Marvell/dreamplug/dreamplug.c +1 -1
@@ -46,7 +46,7 @@ int board_early_init_f(void) DREAMPLUG_OE_LOW, DREAMPLUG_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = { MPP0_SPI_SCn,/* SPI Flash */ MPP1_SPI_MOSI ,MPP2_SPI_SCK ,
board/Marvell/guruplug/guruplug.c +1 -1
@@ -43,7 +43,7 @@ int board_early_init_f(void) GURUPLUG_OE_LOW, GURUPLUG_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = {MPP0_NF_IO2 ,MPP1_NF_IO3 ,MPP2_NF_IO4 ,
board/Marvell/mv88f6281gtw_ge/mv88f6281gtw_ge.c +1 -1
@@ -45,7 +45,7 @@ int board_early_init_f(void) MV88F6281GTW_GE_OE_LOW, MV88F6281GTW_GE_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = { MPP0_SPI_SCn,MPP1_SPI_MOSI ,MPP2_SPI_SCK ,
board/Marvell/openrd/openrd.c +1 -1
@@ -48,7 +48,7 @@ int board_early_init_f(void) OPENRD_OE_LOW, OPENRD_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = {MPP0_NF_IO2 ,MPP1_NF_IO3 ,MPP2_NF_IO4 ,
board/Marvell/rd6281a/rd6281a.c +1 -1
@@ -44,7 +44,7 @@ int board_early_init_f(void) RD6281A_OE_LOW, RD6281A_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = {MPP0_NF_IO2 ,MPP1_NF_IO3 ,MPP2_NF_IO4 ,
board/Marvell/sheevaplug/sheevaplug.c +1 -1
@@ -43,7 +43,7 @@ int board_early_init_f(void) SHEEVAPLUG_OE_LOW, SHEEVAPLUG_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = {MPP0_NF_IO2 ,MPP1_NF_IO3 ,MPP2_NF_IO4 ,
board/Seagate/dockstar/dockstar.c +1 -1
@@ -47,7 +47,7 @@ int board_early_init_f(void) DOCKSTAR_OE_LOW, DOCKSTAR_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = {MPP0_NF_IO2 ,MPP1_NF_IO3 ,MPP2_NF_IO4 ,
board/buffalo/lsxl/lsxl.c +1 -1
@@ -76,7 +76,7 @@ int board_early_init_f(void)* Multi-Purpose Pins Functionality configuration * These strappings are taken from the original vendor uboot port. */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = { MPP0_SPI_SCn,MPP1_SPI_MOSI ,MPP2_SPI_SCK ,
board/d-link/dns325/dns325.c +1 -1
@@ -44,7 +44,7 @@ int board_early_init_f(void) DNS325_OE_LOW, DNS325_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static const u32 kwmpp_config[] = {MPP0_NF_IO2 ,MPP1_NF_IO3 ,MPP2_NF_IO4 ,
board/keymile/km_arm/km_arm.c +1 -1
@@ -53,7 +53,7 @@ DECLARE_GLOBAL_DATA_PTR;#define MASK_RBI_DEFECT_16 0x01/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { +static u32 kwmpp_config[] = {MPP0_NF_IO2 ,MPP1_NF_IO3 ,MPP2_NF_IO4 ,
Signature · 1 line
1.7.2.5
PATCH 1/1 Kirkwood: declare mpp config static and const
Hi Michael,
Quoted 23 lines · Michael Walle
Change the prototype of
kirkwood_mpp_conf()from
voidkirkwood_mpp_conf(u32 *mpp_list)
to
voidkirkwood_mpp_conf(const u32 *mpp_list)Now we can declare the
kwmpp_configstatic and const where possible.Signed-off-by Michael Walle <[email protected]>Cc Prafulla Wadaskar <[email protected]>Cc Simon Guinot <[email protected]>Cc Jason Cooper <[email protected]>Cc Siddarth Gore <[email protected]>Cc Eric Cooper <[email protected]>Cc Stefan Herbrechtsmeier <[email protected]>Cc Valentin Longchamp <[email protected]>---
This was spotted by Mike in an earlier patch series (Kirkwood: add lschlv2 and lsxhl board support). Declaring the
mpp_configstatic avoids generating the array on the stack.
This was compile tested on all kirkwood boards and tested on the lschlv2.
Quoted 15 lines
arch/arm/cpu/arm926ejs/kirkwood/mpp.c | 2 +- arch/arm/include/asm/arch-kirkwood/mpp.h | 2 +- board/LaCie/net2big_v2/net2big_v2.c | 2 +- board/LaCie/netspace_v2/netspace_v2.c | 2 +- board/Marvell/dreamplug/dreamplug.c | 2 +- board/Marvell/guruplug/guruplug.c | 2 +- board/Marvell/mv88f6281gtw_ge/mv88f6281gtw_ge.c | 2 +- board/Marvell/openrd/openrd.c | 2 +- board/Marvell/rd6281a/rd6281a.c | 2 +- board/Marvell/sheevaplug/sheevaplug.c | 2 +- board/Seagate/dockstar/dockstar.c | 2 +- board/buffalo/lsxl/lsxl.c | 2 +- board/d-link/dns325/dns325.c | 2 +- board/keymile/km_arm/km_arm.c | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-)
NACK. At least in this version. Please double check all the kirkwood boards (taken from boards.cfg):
pogo_e02 arm arm926ejs - cloudengines kirkwood dns325 arm arm926ejs - d-link kirkwood km_kirkwood arm arm926ejs km_arm keymile kirkwood km_kirkwood:KM_DISABLE_PCI km_kirkwood_pci arm arm926ejs km_arm keymile kirkwood km_kirkwood:KM_RECONFIG_XLX mgcoge3un arm arm926ejs km_arm keymile kirkwood portl2 arm arm926ejs km_arm keymile kirkwood inetspace_v2 arm arm926ejs netspace_v2 LaCie kirkwood lacie_kw:INETSPACE_V2 net2big_v2 arm arm926ejs net2big_v2 LaCie kirkwood lacie_kw:NET2BIG_V2 netspace_max_v2 arm arm926ejs netspace_v2 LaCie kirkwood lacie_kw:NETSPACE_MAX_V2 netspace_v2 arm arm926ejs netspace_v2 LaCie kirkwood lacie_kw:NETSPACE_V2 dreamplug arm arm926ejs - Marvell kirkwood guruplug arm arm926ejs - Marvell kirkwood mv88f6281gtw_ge arm arm926ejs - Marvell kirkwood openrd_base arm arm926ejs openrd Marvell kirkwood openrd:BOARD_IS_OPENRD_BASE openrd_client arm arm926ejs openrd Marvell kirkwood openrd:BOARD_IS_OPENRD_CLIENT openrd_ultimate arm arm926ejs openrd Marvell kirkwood openrd:BOARD_IS_OPENRD_ULTIMATE rd6281a arm arm926ejs - Marvell kirkwood sheevaplug arm arm926ejs - Marvell kirkwood ib62x0 arm arm926ejs ib62x0 raidsonic kirkwood dockstar arm arm926ejs - Seagate kirkwood
I have noticed that board ib62x0 is not in this patch. I have tested this patch with my ib62x0 board and it works. This is the patch I have added:
board/raidsonic/ib62x0/ib62x0.c +1 -1
@@ -42,7 +42,7 @@ int board_early_init_f(void) IB62x0_OE_LOW, IB62x0_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { + static const kwmpp_config[] = {MPP0_NF_IO2 ,MPP1_NF_IO3 ,MPP2_NF_IO4 ,
Also you should note that this patch should be applied after your patches for lsxl board.
Regards,
Luka
PATCH 1/1 Kirkwood: declare mpp config static and const
Hi Luka,
Am Sonntag 27 Mai 2012, 23:20:29 schrieb Luka Perkov:
Quoted 2 lines
NACK. At least in this version. Please double check all the kirkwood boards (taken from boards.cfg):
ups sorry, actually my tree wasn't up to date :( pogo_e02 is missing, too.
board/raidsonic/ib62x0/ib62x0.c int board_early_init_f(void) · line 45
Quoted 10 lines
(quoted diff) +0
-0
b/board/raidsonic/ib62x0/ib62x0.cindex 65f2c2e..f888901 100644board/raidsonic/ib62x0/ib62x0.c +1
-1@@ -42,7 +42,7 @@ int board_early_init_f(void) IB62x0_OE_LOW, IB62x0_OE_HIGH);/* Multi-Purpose Pins Functionality configuration */ -u32 kwmpp_config[] = { + static const kwmpp_config[] = {
this should be static const u32 kwmpp_config[] = {
Quoted 2 lines
Also you should note that this patch should be applied after your patches for lsxl board.
ah yes, thanks.
Signature · 1 line
Michael
PATCH 1/1 Kirkwood: declare mpp config static and const
In reply to Michael WalleQuoted 11 lines
-----Original Message-----
From: Michael Walle [mailto:michael at walle.cc]
Sent: 26 May 2012 05:57
To: u-boot at lists.denx.de
Cc: Mike Frysinger; Michael Walle; Prafulla Wadaskar; Simon Guinot; Jason Cooper; Siddarth Gore; Eric Cooper; Stefan Herbrechtsmeier; Valentin Longchamp
Subject: [PATCH] Kirkwood: declare mpp config static and const
Quoted 4 lines
Change the prototype of
kirkwood_mpp_conf()from
voidkirkwood_mpp_conf(u32 *mpp_list)
to
voidkirkwood_mpp_conf(const u32 *mpp_list)
There are few patches being discussed that may affect if the const is declared for this function.
Ref:
http://lists.denx.de/pipermail/u-boot/2012-May/124516.html
http://patchwork.ozlabs.org/patch/159582/
Regards..
Prafulla . . .