From mboxrd@z Thu Jan 1 00:00:00 1970 From: saeed.bishara@gmail.com (saeed bishara) Date: Sun, 8 May 2011 19:03:00 +0300 Subject: [PATCH 14/14] [orion5x] Refactor mpp code to use common orion platform mpp. In-Reply-To: <1304864141-1121-15-git-send-email-andrew@lunn.ch> References: <1304864141-1121-1-git-send-email-andrew@lunn.ch> <1304864141-1121-15-git-send-email-andrew@lunn.ch> Message-ID: To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Sun, May 8, 2011 at 5:15 PM, Andrew Lunn wrote: > Signed-off-by: Andrew Lunn > --- > ?arch/arm/mach-orion5x/d2net-setup.c ? ? ? ? ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/db88f5281-setup.c ? ? ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/dns323-setup.c ? ? ? ? ? | ?132 ++++++++-------- > ?arch/arm/mach-orion5x/edmini_v2-setup.c ? ? ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/kurobox_pro-setup.c ? ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/ls-chl-setup.c ? ? ? ? ? | ? 44 +++--- > ?arch/arm/mach-orion5x/ls_hgl-setup.c ? ? ? ? ? | ? 44 +++--- > ?arch/arm/mach-orion5x/lsmini-setup.c ? ? ? ? ? | ? 44 +++--- > ?arch/arm/mach-orion5x/mpp.c ? ? ? ? ? ? ? ? ? ?| ?150 ++----------------- > ?arch/arm/mach-orion5x/mpp.h ? ? ? ? ? ? ? ? ? ?| ?191 +++++++++++++++--------- > ?arch/arm/mach-orion5x/mss2-setup.c ? ? ? ? ? ? | ? 44 +++--- > ?arch/arm/mach-orion5x/mv2120-setup.c ? ? ? ? ? | ? 44 +++--- > ?arch/arm/mach-orion5x/net2big-setup.c ? ? ? ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c ? | ? 44 +++--- > ?arch/arm/mach-orion5x/rd88f5181l-ge-setup.c ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/rd88f5182-setup.c ? ? ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c ? | ? ?1 - > ?arch/arm/mach-orion5x/terastation_pro2-setup.c | ? 44 +++--- > ?arch/arm/mach-orion5x/ts209-setup.c ? ? ? ? ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/ts409-setup.c ? ? ? ? ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/ts78xx-setup.c ? ? ? ? ? | ? 44 +++--- > ?arch/arm/mach-orion5x/wnr854t-setup.c ? ? ? ? ?| ? 44 +++--- > ?arch/arm/mach-orion5x/wrt350n-v2-setup.c ? ? ? | ? 44 +++--- > ?23 files changed, 622 insertions(+), 688 deletions(-) > > diff --git a/arch/arm/mach-orion5x/d2net-setup.c b/arch/arm/mach-orion5x/d2net-setup.c > index 4258075..19cf5bf 100644 > --- a/arch/arm/mach-orion5x/d2net-setup.c > +++ b/arch/arm/mach-orion5x/d2net-setup.c > @@ -267,28 +267,28 @@ static struct platform_device d2net_gpio_buttons = { > ?* General Setup > ?****************************************************************************/ > > -static struct orion5x_mpp_mode d2net_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? /* Board ID (bit 0) */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? /* Board ID (bit 1) */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? /* Board ID (bit 2) */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? /* SATA 0 power */ > - ? ? ? { ?4, MPP_UNUSED }, > - ? ? ? { ?5, MPP_GPIO }, ? ? ? /* Fan fail detection */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? /* Red front LED */ > - ? ? ? { ?7, MPP_UNUSED }, > - ? ? ? { ?8, MPP_GPIO }, ? ? ? /* Rear power switch (on|auto) */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? /* Rear power switch (auto|off) */ > - ? ? ? { 10, MPP_UNUSED }, > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_GPIO }, ? ? ? /* SATA 1 power */ > - ? ? ? { 13, MPP_UNUSED }, > - ? ? ? { 14, MPP_SATA_LED }, ? /* SATA 0 active */ > - ? ? ? { 15, MPP_SATA_LED }, ? /* SATA 1 active */ > - ? ? ? { 16, MPP_GPIO }, ? ? ? /* Blue front LED blink control */ > - ? ? ? { 17, MPP_UNUSED }, > - ? ? ? { 18, MPP_GPIO }, ? ? ? /* Front button (0 = Released, 1 = Pushed ) */ > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 } > +static unsigned int d2net_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ?/* Board ID (bit 0) */ > + ? ? ? MPP1_GPIO, ? ? ?/* Board ID (bit 1) */ > + ? ? ? MPP2_GPIO, ? ? ?/* Board ID (bit 2) */ > + ? ? ? MPP3_GPIO, ? ? ?/* SATA 0 power */ > + ? ? ? MPP4_UNUSED, > + ? ? ? MPP5_GPIO, ? ? ?/* Fan fail detection */ > + ? ? ? MPP6_GPIO, ? ? ?/* Red front LED */ > + ? ? ? MPP7_UNUSED, > + ? ? ? MPP8_GPIO, ? ? ?/* Rear power switch (on|auto) */ > + ? ? ? MPP9_GPIO, ? ? ?/* Rear power switch (auto|off) */ > + ? ? ? MPP10_UNUSED, > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_GPIO, ? ? /* SATA 1 power */ > + ? ? ? MPP13_UNUSED, > + ? ? ? MPP14_SATA_LED, /* SATA 0 active */ > + ? ? ? MPP15_SATA_LED, /* SATA 1 active */ > + ? ? ? MPP16_GPIO, ? ? /* Blue front LED blink control */ > + ? ? ? MPP17_UNUSED, > + ? ? ? MPP18_GPIO, ? ? /* Front button (0 = Released, 1 = Pushed ) */ > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ? ? ? ?/* 22: USB port 1 fuse (0 = Fail, 1 = Ok) */ > ? ? ? ?/* 23: Blue front LED off */ > ? ? ? ?/* 24: Inhibit board power off (0 = Disabled, 1 = Enabled) */ > diff --git a/arch/arm/mach-orion5x/db88f5281-setup.c b/arch/arm/mach-orion5x/db88f5281-setup.c > index c10a117..24587b7 100644 > --- a/arch/arm/mach-orion5x/db88f5281-setup.c > +++ b/arch/arm/mach-orion5x/db88f5281-setup.c > @@ -298,28 +298,28 @@ static struct i2c_board_info __initdata db88f5281_i2c_rtc = { > ?/***************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode db88f5281_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? ? ? ? ? /* USB Over Current */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* USB Vbat input */ > - ? ? ? { ?2, MPP_PCI_ARB }, ? ? ? ? ? ?/* PCI_REQn[2] */ > - ? ? ? { ?3, MPP_PCI_ARB }, ? ? ? ? ? ?/* PCI_GNTn[2] */ > - ? ? ? { ?4, MPP_PCI_ARB }, ? ? ? ? ? ?/* PCI_REQn[3] */ > - ? ? ? { ?5, MPP_PCI_ARB }, ? ? ? ? ? ?/* PCI_GNTn[3] */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* JP0, CON17.2 */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* JP1, CON17.1 */ > - ? ? ? { ?8, MPP_GPIO }, ? ? ? ? ? ? ? /* JP2, CON11.2 */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? ? ? ? ? /* JP3, CON11.3 */ > - ? ? ? { 10, MPP_GPIO }, ? ? ? ? ? ? ? /* RTC int */ > - ? ? ? { 11, MPP_GPIO }, ? ? ? ? ? ? ? /* Baud Rate Generator */ > - ? ? ? { 12, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI int 1 */ > - ? ? ? { 13, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI int 2 */ > - ? ? ? { 14, MPP_NAND }, ? ? ? ? ? ? ? /* NAND_REn[2] */ > - ? ? ? { 15, MPP_NAND }, ? ? ? ? ? ? ? /* NAND_WEn[2] */ > - ? ? ? { 16, MPP_UART }, ? ? ? ? ? ? ? /* UART1_RX */ > - ? ? ? { 17, MPP_UART }, ? ? ? ? ? ? ? /* UART1_TX */ > - ? ? ? { 18, MPP_UART }, ? ? ? ? ? ? ? /* UART1_CTSn */ > - ? ? ? { 19, MPP_UART }, ? ? ? ? ? ? ? /* UART1_RTSn */ > - ? ? ? { -1 }, > +static unsigned int db88f5281_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ? ? ? ? ?/* USB Over Current */ > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* USB Vbat input */ > + ? ? ? MPP2_PCI_ARB, ? ? ? ? ? /* PCI_REQn[2] */ > + ? ? ? MPP3_PCI_ARB, ? ? ? ? ? /* PCI_GNTn[2] */ > + ? ? ? MPP4_PCI_ARB, ? ? ? ? ? /* PCI_REQn[3] */ > + ? ? ? MPP5_PCI_ARB, ? ? ? ? ? /* PCI_GNTn[3] */ > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* JP0, CON17.2 */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* JP1, CON17.1 */ > + ? ? ? MPP8_GPIO, ? ? ? ? ? ? ?/* JP2, CON11.2 */ > + ? ? ? MPP9_GPIO, ? ? ? ? ? ? ?/* JP3, CON11.3 */ > + ? ? ? MPP10_GPIO, ? ? ? ? ? ? /* RTC int */ > + ? ? ? MPP11_GPIO, ? ? ? ? ? ? /* Baud Rate Generator */ > + ? ? ? MPP12_GPIO, ? ? ? ? ? ? /* PCI int 1 */ > + ? ? ? MPP13_GPIO, ? ? ? ? ? ? /* PCI int 2 */ > + ? ? ? MPP14_NAND, ? ? ? ? ? ? /* NAND_REn[2] */ > + ? ? ? MPP15_NAND, ? ? ? ? ? ? /* NAND_WEn[2] */ > + ? ? ? MPP16_UART, ? ? ? ? ? ? /* UART1_RX */ > + ? ? ? MPP17_UART, ? ? ? ? ? ? /* UART1_TX */ > + ? ? ? MPP18_UART, ? ? ? ? ? ? /* UART1_CTSn */ > + ? ? ? MPP19_UART, ? ? ? ? ? ? /* UART1_RTSn */ > + ? ? ? 0, > ?}; > > ?static void __init db88f5281_init(void) > diff --git a/arch/arm/mach-orion5x/dns323-setup.c b/arch/arm/mach-orion5x/dns323-setup.c > index 90ab022..855e0e7 100644 > --- a/arch/arm/mach-orion5x/dns323-setup.c > +++ b/arch/arm/mach-orion5x/dns323-setup.c > @@ -385,76 +385,76 @@ static struct mv_sata_platform_data dns323_sata_data = { > ?/**************************************************************************** > ?* General Setup > ?*/ > -static struct orion5x_mpp_mode dns323a_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_PCIE_RST_OUTn }, > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* right amber LED (sata ch0) */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* left amber LED (sata ch1) */ > - ? ? ? { ?3, MPP_UNUSED }, > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* power button LED */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* power button LED */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* GMT G751-2f overtemp */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* M41T80 nIRQ/OUT/SQW */ > - ? ? ? { ?8, MPP_GPIO }, ? ? ? ? ? ? ? /* triggers power off */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? ? ? ? ? /* power button switch */ > - ? ? ? { 10, MPP_GPIO }, ? ? ? ? ? ? ? /* reset button switch */ > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_UNUSED }, > - ? ? ? { 13, MPP_UNUSED }, > - ? ? ? { 14, MPP_UNUSED }, > - ? ? ? { 15, MPP_UNUSED }, > - ? ? ? { 16, MPP_UNUSED }, > - ? ? ? { 17, MPP_UNUSED }, > - ? ? ? { 18, MPP_UNUSED }, > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 }, > +static unsigned int dns323a_mpp_modes[] __initdata = { > + ? ? ? MPP0_PCIE_RST_OUTn, > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* right amber LED (sata ch0) */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* left amber LED (sata ch1) */ > + ? ? ? MPP3_UNUSED, > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* power button LED */ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* power button LED */ > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* GMT G751-2f overtemp */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* M41T80 nIRQ/OUT/SQW */ > + ? ? ? MPP8_GPIO, ? ? ? ? ? ? ?/* triggers power off */ > + ? ? ? MPP9_GPIO, ? ? ? ? ? ? ?/* power button switch */ > + ? ? ? MPP10_GPIO, ? ? ? ? ? ? /* reset button switch */ > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_UNUSED, > + ? ? ? MPP13_UNUSED, > + ? ? ? MPP14_UNUSED, > + ? ? ? MPP15_UNUSED, > + ? ? ? MPP16_UNUSED, > + ? ? ? MPP17_UNUSED, > + ? ? ? MPP18_UNUSED, > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ?}; > > -static struct orion5x_mpp_mode dns323b_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_UNUSED }, > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* right amber LED (sata ch0) */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* left amber LED (sata ch1) */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* system up flag */ > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* power button LED */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* power button LED */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* GMT G751-2f overtemp */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* M41T80 nIRQ/OUT/SQW */ > - ? ? ? { ?8, MPP_GPIO }, ? ? ? ? ? ? ? /* triggers power off */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? ? ? ? ? /* power button switch */ > - ? ? ? { 10, MPP_GPIO }, ? ? ? ? ? ? ? /* reset button switch */ > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_SATA_LED }, > - ? ? ? { 13, MPP_SATA_LED }, > - ? ? ? { 14, MPP_SATA_LED }, > - ? ? ? { 15, MPP_SATA_LED }, > - ? ? ? { 16, MPP_UNUSED }, > - ? ? ? { 17, MPP_UNUSED }, > - ? ? ? { 18, MPP_UNUSED }, > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 }, > +static unsigned int dns323b_mpp_modes[] __initdata = { > + ? ? ? MPP0_UNUSED, > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* right amber LED (sata ch0) */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* left amber LED (sata ch1) */ > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* system up flag */ > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* power button LED */ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* power button LED */ > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* GMT G751-2f overtemp */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* M41T80 nIRQ/OUT/SQW */ > + ? ? ? MPP8_GPIO, ? ? ? ? ? ? ?/* triggers power off */ > + ? ? ? MPP9_GPIO, ? ? ? ? ? ? ?/* power button switch */ > + ? ? ? MPP10_GPIO, ? ? ? ? ? ? /* reset button switch */ > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_SATA_LED, > + ? ? ? MPP13_SATA_LED, > + ? ? ? MPP14_SATA_LED, > + ? ? ? MPP15_SATA_LED, > + ? ? ? MPP16_UNUSED, > + ? ? ? MPP17_UNUSED, > + ? ? ? MPP18_UNUSED, > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ?}; > > -static struct orion5x_mpp_mode dns323c_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? ? ? ? ? /* ? input */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* input power switch (0 = pressed) */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* output power off */ > - ? ? ? { ?3, MPP_UNUSED }, ? ? ? ? ? ? /* ? output */ > - ? ? ? { ?4, MPP_UNUSED }, ? ? ? ? ? ? /* ? output */ > - ? ? ? { ?5, MPP_UNUSED }, ? ? ? ? ? ? /* ? output */ > - ? ? ? { ?6, MPP_UNUSED }, ? ? ? ? ? ? /* ? output */ > - ? ? ? { ?7, MPP_UNUSED }, ? ? ? ? ? ? /* ? output */ > - ? ? ? { ?8, MPP_GPIO }, ? ? ? ? ? ? ? /* i/o right amber LED */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? ? ? ? ? /* i/o left amber LED */ > - ? ? ? { 10, MPP_GPIO }, ? ? ? ? ? ? ? /* input */ > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_SATA_LED }, > - ? ? ? { 13, MPP_SATA_LED }, > - ? ? ? { 14, MPP_SATA_LED }, > - ? ? ? { 15, MPP_SATA_LED }, > - ? ? ? { 16, MPP_UNUSED }, > - ? ? ? { 17, MPP_GPIO }, ? ? ? ? ? ? ? /* power button LED */ > - ? ? ? { 18, MPP_GPIO }, ? ? ? ? ? ? ? /* fan speed bit 0 */ > - ? ? ? { 19, MPP_GPIO }, ? ? ? ? ? ? ? /* fan speed bit 1 */ > - ? ? ? { -1 }, > +static unsigned int dns323c_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ? ? ? ? ?/* ? input */ > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* input power switch (0 = pressed) */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* output power off */ > + ? ? ? MPP3_UNUSED, ? ? ? ? ? ?/* ? output */ > + ? ? ? MPP4_UNUSED, ? ? ? ? ? ?/* ? output */ > + ? ? ? MPP5_UNUSED, ? ? ? ? ? ?/* ? output */ > + ? ? ? MPP6_UNUSED, ? ? ? ? ? ?/* ? output */ > + ? ? ? MPP7_UNUSED, ? ? ? ? ? ?/* ? output */ > + ? ? ? MPP8_GPIO, ? ? ? ? ? ? ?/* i/o right amber LED */ > + ? ? ? MPP9_GPIO, ? ? ? ? ? ? ?/* i/o left amber LED */ > + ? ? ? MPP10_GPIO, ? ? ? ? ? ? /* input */ > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_SATA_LED, > + ? ? ? MPP13_SATA_LED, > + ? ? ? MPP14_SATA_LED, > + ? ? ? MPP15_SATA_LED, > + ? ? ? MPP16_UNUSED, > + ? ? ? MPP17_GPIO, ? ? ? ? ? ? /* power button LED */ > + ? ? ? MPP18_GPIO, ? ? ? ? ? ? /* fan speed bit 0 */ > + ? ? ? MPP19_GPIO, ? ? ? ? ? ? /* fan speed bit 1 */ > + ? ? ? 0, > ?}; > > ?/* Rev C1 Fan speed notes: > diff --git a/arch/arm/mach-orion5x/edmini_v2-setup.c b/arch/arm/mach-orion5x/edmini_v2-setup.c > index d037a90..b67cff0 100644 > --- a/arch/arm/mach-orion5x/edmini_v2-setup.c > +++ b/arch/arm/mach-orion5x/edmini_v2-setup.c > @@ -180,31 +180,31 @@ static struct platform_device edmini_v2_gpio_buttons = { > ?/***************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode edminiv2_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_UNUSED }, > - ? ? ? { ?1, MPP_UNUSED }, > - ? ? ? { ?2, MPP_UNUSED }, > - ? ? ? { ?3, MPP_GPIO }, ? ? ? /* RTC interrupt */ > - ? ? ? { ?4, MPP_UNUSED }, > - ? ? ? { ?5, MPP_UNUSED }, > - ? ? ? { ?6, MPP_UNUSED }, > - ? ? ? { ?7, MPP_UNUSED }, > - ? ? ? { ?8, MPP_UNUSED }, > - ? ? ? { ?9, MPP_UNUSED }, > - ? ? ? { 10, MPP_UNUSED }, > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_SATA_LED }, ? /* SATA 0 presence */ > - ? ? ? { 13, MPP_SATA_LED }, ? /* SATA 1 presence */ > - ? ? ? { 14, MPP_SATA_LED }, ? /* SATA 0 active */ > - ? ? ? { 15, MPP_SATA_LED }, ? /* SATA 1 active */ > +static unsigned int edminiv2_mpp_modes[] __initdata = { > + ? ? ? MPP0_UNUSED, > + ? ? ? MPP1_UNUSED, > + ? ? ? MPP2_UNUSED, > + ? ? ? MPP3_GPIO, ? ? ?/* RTC interrupt */ > + ? ? ? MPP4_UNUSED, > + ? ? ? MPP5_UNUSED, > + ? ? ? MPP6_UNUSED, > + ? ? ? MPP7_UNUSED, > + ? ? ? MPP8_UNUSED, > + ? ? ? MPP9_UNUSED, > + ? ? ? MPP10_UNUSED, > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_SATA_LED, /* SATA 0 presence */ > + ? ? ? MPP13_SATA_LED, /* SATA 1 presence */ > + ? ? ? MPP14_SATA_LED, /* SATA 0 active */ > + ? ? ? MPP15_SATA_LED, /* SATA 1 active */ > ? ? ? ?/* 16: Power LED control (0 = On, 1 = Off) */ > - ? ? ? { 16, MPP_GPIO }, > + ? ? ? MPP16_GPIO, > ? ? ? ?/* 17: Power LED control select (0 = CPLD, 1 = GPIO16) */ > - ? ? ? { 17, MPP_GPIO }, > + ? ? ? MPP17_GPIO, > ? ? ? ?/* 18: Power button status (0 = Released, 1 = Pressed) */ > - ? ? ? { 18, MPP_GPIO }, > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 } > + ? ? ? MPP18_GPIO, > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ?}; > > ?static void __init edmini_v2_init(void) > diff --git a/arch/arm/mach-orion5x/kurobox_pro-setup.c b/arch/arm/mach-orion5x/kurobox_pro-setup.c > index 47497c7..c0eb646 100644 > --- a/arch/arm/mach-orion5x/kurobox_pro-setup.c > +++ b/arch/arm/mach-orion5x/kurobox_pro-setup.c > @@ -315,28 +315,28 @@ static void kurobox_pro_power_off(void) > ?/***************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode kurobox_pro_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_UNUSED }, > - ? ? ? { ?1, MPP_UNUSED }, > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* GPIO Micon */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* GPIO Rtc */ > - ? ? ? { ?4, MPP_UNUSED }, > - ? ? ? { ?5, MPP_UNUSED }, > - ? ? ? { ?6, MPP_NAND }, ? ? ? ? ? ? ? /* NAND Flash REn */ > - ? ? ? { ?7, MPP_NAND }, ? ? ? ? ? ? ? /* NAND Flash WEn */ > - ? ? ? { ?8, MPP_UNUSED }, > - ? ? ? { ?9, MPP_UNUSED }, > - ? ? ? { 10, MPP_UNUSED }, > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_SATA_LED }, ? ? ? ? ? /* SATA 0 presence */ > - ? ? ? { 13, MPP_SATA_LED }, ? ? ? ? ? /* SATA 1 presence */ > - ? ? ? { 14, MPP_SATA_LED }, ? ? ? ? ? /* SATA 0 active */ > - ? ? ? { 15, MPP_SATA_LED }, ? ? ? ? ? /* SATA 1 active */ > - ? ? ? { 16, MPP_UART }, ? ? ? ? ? ? ? /* UART1 RXD */ > - ? ? ? { 17, MPP_UART }, ? ? ? ? ? ? ? /* UART1 TXD */ > - ? ? ? { 18, MPP_UART }, ? ? ? ? ? ? ? /* UART1 CTSn */ > - ? ? ? { 19, MPP_UART }, ? ? ? ? ? ? ? /* UART1 RTSn */ > - ? ? ? { -1 }, > +static unsigned int kurobox_pro_mpp_modes[] __initdata = { > + ? ? ? MPP0_UNUSED, > + ? ? ? MPP1_UNUSED, > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* GPIO Micon */ > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* GPIO Rtc */ > + ? ? ? MPP4_UNUSED, > + ? ? ? MPP5_UNUSED, > + ? ? ? MPP6_NAND, ? ? ? ? ? ? ?/* NAND Flash REn */ > + ? ? ? MPP7_NAND, ? ? ? ? ? ? ?/* NAND Flash WEn */ > + ? ? ? MPP8_UNUSED, > + ? ? ? MPP9_UNUSED, > + ? ? ? MPP10_UNUSED, > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_SATA_LED, ? ? ? ? /* SATA 0 presence */ > + ? ? ? MPP13_SATA_LED, ? ? ? ? /* SATA 1 presence */ > + ? ? ? MPP14_SATA_LED, ? ? ? ? /* SATA 0 active */ > + ? ? ? MPP15_SATA_LED, ? ? ? ? /* SATA 1 active */ > + ? ? ? MPP16_UART, ? ? ? ? ? ? /* UART1 RXD */ > + ? ? ? MPP17_UART, ? ? ? ? ? ? /* UART1 TXD */ > + ? ? ? MPP18_UART, ? ? ? ? ? ? /* UART1 CTSn */ > + ? ? ? MPP19_UART, ? ? ? ? ? ? /* UART1 RTSn */ > + ? ? ? 0, > ?}; > > ?static void __init kurobox_pro_init(void) > diff --git a/arch/arm/mach-orion5x/ls-chl-setup.c b/arch/arm/mach-orion5x/ls-chl-setup.c > index 6ae12aa..5065803 100644 > --- a/arch/arm/mach-orion5x/ls-chl-setup.c > +++ b/arch/arm/mach-orion5x/ls-chl-setup.c > @@ -251,28 +251,28 @@ static struct platform_device lschl_fan_device = { > ?* GPIO Data > ?****************************************************************************/ > > -static struct orion5x_mpp_mode lschl_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, /* LED POWER */ > - ? ? ? { ?1, MPP_GPIO }, /* HDD POWER */ > - ? ? ? { ?2, MPP_GPIO }, /* LED ALARM */ > - ? ? ? { ?3, MPP_GPIO }, /* LED INFO */ > - ? ? ? { ?4, MPP_UNUSED }, > - ? ? ? { ?5, MPP_UNUSED }, > - ? ? ? { ?6, MPP_GPIO }, /* FAN LOCK */ > - ? ? ? { ?7, MPP_GPIO }, /* SW INIT */ > - ? ? ? { ?8, MPP_GPIO }, /* SW POWER */ > - ? ? ? { ?9, MPP_GPIO }, /* USB POWER */ > - ? ? ? { 10, MPP_GPIO }, /* SW AUTO POWER */ > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_UNUSED }, > - ? ? ? { 13, MPP_UNUSED }, > - ? ? ? { 14, MPP_GPIO }, /* FAN HIGH */ > - ? ? ? { 15, MPP_GPIO }, /* SW FUNC */ > - ? ? ? { 16, MPP_GPIO }, /* FAN LOW */ > - ? ? ? { 17, MPP_GPIO }, /* LED FUNC */ > - ? ? ? { 18, MPP_UNUSED }, > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 }, > +static unsigned int lschl_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, /* LED POWER */ > + ? ? ? MPP1_GPIO, /* HDD POWER */ > + ? ? ? MPP2_GPIO, /* LED ALARM */ > + ? ? ? MPP3_GPIO, /* LED INFO */ > + ? ? ? MPP4_UNUSED, > + ? ? ? MPP5_UNUSED, > + ? ? ? MPP6_GPIO, /* FAN LOCK */ > + ? ? ? MPP7_GPIO, /* SW INIT */ > + ? ? ? MPP8_GPIO, /* SW POWER */ > + ? ? ? MPP9_GPIO, /* USB POWER */ > + ? ? ? MPP10_GPIO, /* SW AUTO POWER */ > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_UNUSED, > + ? ? ? MPP13_UNUSED, > + ? ? ? MPP14_GPIO, /* FAN HIGH */ > + ? ? ? MPP15_GPIO, /* SW FUNC */ > + ? ? ? MPP16_GPIO, /* FAN LOW */ > + ? ? ? MPP17_GPIO, /* LED FUNC */ > + ? ? ? MPP18_UNUSED, > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ?}; > > ?static void __init lschl_init(void) > diff --git a/arch/arm/mach-orion5x/ls_hgl-setup.c b/arch/arm/mach-orion5x/ls_hgl-setup.c > index 7adafd7..8503d0a 100644 > --- a/arch/arm/mach-orion5x/ls_hgl-setup.c > +++ b/arch/arm/mach-orion5x/ls_hgl-setup.c > @@ -200,28 +200,28 @@ static void ls_hgl_power_off(void) > > ?#define LS_HGL_GPIO_HDD_POWER ?1 > > -static struct orion5x_mpp_mode ls_hgl_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, /* LED_PWR */ > - ? ? ? { ?1, MPP_GPIO }, /* HDD_PWR */ > - ? ? ? { ?2, MPP_GPIO }, /* LED_ALARM */ > - ? ? ? { ?3, MPP_GPIO }, /* LED_INFO */ > - ? ? ? { ?4, MPP_UNUSED }, > - ? ? ? { ?5, MPP_UNUSED }, > - ? ? ? { ?6, MPP_GPIO }, /* FAN_LCK */ > - ? ? ? { ?7, MPP_GPIO }, /* INIT */ > - ? ? ? { ?8, MPP_GPIO }, /* POWER */ > - ? ? ? { ?9, MPP_GPIO }, /* USB_PWR */ > - ? ? ? { 10, MPP_GPIO }, /* AUTO_POWER */ > - ? ? ? { 11, MPP_UNUSED }, /* LED_ETH (dummy) */ > - ? ? ? { 12, MPP_UNUSED }, > - ? ? ? { 13, MPP_UNUSED }, > - ? ? ? { 14, MPP_UNUSED }, > - ? ? ? { 15, MPP_GPIO }, /* FUNC */ > - ? ? ? { 16, MPP_UNUSED }, > - ? ? ? { 17, MPP_GPIO }, /* LED_FUNC */ > - ? ? ? { 18, MPP_UNUSED }, > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 }, > +static unsigned int ls_hgl_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, /* LED_PWR */ > + ? ? ? MPP1_GPIO, /* HDD_PWR */ > + ? ? ? MPP2_GPIO, /* LED_ALARM */ > + ? ? ? MPP3_GPIO, /* LED_INFO */ > + ? ? ? MPP4_UNUSED, > + ? ? ? MPP5_UNUSED, > + ? ? ? MPP6_GPIO, /* FAN_LCK */ > + ? ? ? MPP7_GPIO, /* INIT */ > + ? ? ? MPP8_GPIO, /* POWER */ > + ? ? ? MPP9_GPIO, /* USB_PWR */ > + ? ? ? MPP10_GPIO, /* AUTO_POWER */ > + ? ? ? MPP11_UNUSED, /* LED_ETH (dummy) */ > + ? ? ? MPP12_UNUSED, > + ? ? ? MPP13_UNUSED, > + ? ? ? MPP14_UNUSED, > + ? ? ? MPP15_GPIO, /* FUNC */ > + ? ? ? MPP16_UNUSED, > + ? ? ? MPP17_GPIO, /* LED_FUNC */ > + ? ? ? MPP18_UNUSED, > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ?}; > > ?static void __init ls_hgl_init(void) > diff --git a/arch/arm/mach-orion5x/lsmini-setup.c b/arch/arm/mach-orion5x/lsmini-setup.c > index 869958f..9c82723 100644 > --- a/arch/arm/mach-orion5x/lsmini-setup.c > +++ b/arch/arm/mach-orion5x/lsmini-setup.c > @@ -201,28 +201,28 @@ static void lsmini_power_off(void) > ?#define LSMINI_GPIO_HDD_POWER0 1 > ?#define LSMINI_GPIO_HDD_POWER1 19 > > -static struct orion5x_mpp_mode lsmini_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_UNUSED }, /* LED_RESERVE1 (unused) */ > - ? ? ? { ?1, MPP_GPIO }, /* HDD_PWR */ > - ? ? ? { ?2, MPP_GPIO }, /* LED_ALARM */ > - ? ? ? { ?3, MPP_GPIO }, /* LED_INFO */ > - ? ? ? { ?4, MPP_UNUSED }, > - ? ? ? { ?5, MPP_UNUSED }, > - ? ? ? { ?6, MPP_UNUSED }, > - ? ? ? { ?7, MPP_UNUSED }, > - ? ? ? { ?8, MPP_UNUSED }, > - ? ? ? { ?9, MPP_GPIO }, /* LED_FUNC */ > - ? ? ? { 10, MPP_UNUSED }, > - ? ? ? { 11, MPP_UNUSED }, /* LED_ETH (dummy) */ > - ? ? ? { 12, MPP_UNUSED }, > - ? ? ? { 13, MPP_UNUSED }, > - ? ? ? { 14, MPP_GPIO }, /* LED_PWR */ > - ? ? ? { 15, MPP_GPIO }, /* FUNC */ > - ? ? ? { 16, MPP_GPIO }, /* USB_PWR */ > - ? ? ? { 17, MPP_GPIO }, /* AUTO_POWER */ > - ? ? ? { 18, MPP_GPIO }, /* POWER */ > - ? ? ? { 19, MPP_GPIO }, /* HDD_PWR1 */ > - ? ? ? { -1 }, > +static unsigned int lsmini_mpp_modes[] __initdata = { > + ? ? ? MPP0_UNUSED, /* LED_RESERVE1 (unused) */ > + ? ? ? MPP1_GPIO, /* HDD_PWR */ > + ? ? ? MPP2_GPIO, /* LED_ALARM */ > + ? ? ? MPP3_GPIO, /* LED_INFO */ > + ? ? ? MPP4_UNUSED, > + ? ? ? MPP5_UNUSED, > + ? ? ? MPP6_UNUSED, > + ? ? ? MPP7_UNUSED, > + ? ? ? MPP8_UNUSED, > + ? ? ? MPP9_GPIO, /* LED_FUNC */ > + ? ? ? MPP10_UNUSED, > + ? ? ? MPP11_UNUSED, /* LED_ETH (dummy) */ > + ? ? ? MPP12_UNUSED, > + ? ? ? MPP13_UNUSED, > + ? ? ? MPP14_GPIO, /* LED_PWR */ > + ? ? ? MPP15_GPIO, /* FUNC */ > + ? ? ? MPP16_GPIO, /* USB_PWR */ > + ? ? ? MPP17_GPIO, /* AUTO_POWER */ > + ? ? ? MPP18_GPIO, /* POWER */ > + ? ? ? MPP19_GPIO, /* HDD_PWR1 */ > + ? ? ? 0, > ?}; > > ?static void __init lsmini_init(void) > diff --git a/arch/arm/mach-orion5x/mpp.c b/arch/arm/mach-orion5x/mpp.c > index 2288207..f12c41b 100644 > --- a/arch/arm/mach-orion5x/mpp.c > +++ b/arch/arm/mach-orion5x/mpp.c > @@ -12,154 +12,34 @@ > ?#include > ?#include > ?#include > -#include > ?#include > -#include "common.h" > +#include > ?#include "mpp.h" > +#include "common.h" > > -static int is_5181l(void) > -{ > - ? ? ? u32 dev; > - ? ? ? u32 rev; > - > - ? ? ? orion5x_pcie_id(&dev, &rev); > - > - ? ? ? return !!(dev == MV88F5181_DEV_ID && rev >= MV88F5181L_REV_A0); > -} > - > -static int is_5182(void) > +static unsigned int __init orion5x_variant(void) > ?{ > ? ? ? ?u32 dev; > ? ? ? ?u32 rev; > > ? ? ? ?orion5x_pcie_id(&dev, &rev); > > - ? ? ? return !!(dev == MV88F5182_DEV_ID); > -} > + ? ? ? if (dev == MV88F5181_DEV_ID && rev >= MV88F5181L_REV_A0) > + ? ? ? ? ? ? ? return MPP_F5181_MASK; > > -static int is_5281(void) > -{ > - ? ? ? u32 dev; > - ? ? ? u32 rev; > + ? ? ? if (dev == MV88F5182_DEV_ID) > + ? ? ? ? ? ? ? return MPP_F5182_MASK; > > - ? ? ? orion5x_pcie_id(&dev, &rev); > + ? ? ? if (dev == MV88F5281_DEV_ID) > + ? ? ? ? ? ? ? return MPP_F5281_MASK; > > - ? ? ? return !!(dev == MV88F5281_DEV_ID); > + ? ? ? printk(KERN_ERR "MPP setup: unknown orion5x variant " > + ? ? ? ? ? ? ?"(dev %#x rev %#x)\n", dev, rev); > + ? ? ? return 0; > ?} > > -static int __init determine_type_encoding(int mpp, enum orion5x_mpp_type type) > +void __init orion5x_mpp_conf(unsigned int *mpp_list) > ?{ > - ? ? ? switch (type) { > - ? ? ? case MPP_UNUSED: > - ? ? ? case MPP_GPIO: > - ? ? ? ? ? ? ? if (mpp == 0) > - ? ? ? ? ? ? ? ? ? ? ? return 3; > - ? ? ? ? ? ? ? if (mpp >= 1 && mpp <= 15) > - ? ? ? ? ? ? ? ? ? ? ? return 0; > - ? ? ? ? ? ? ? if (mpp >= 16 && mpp <= 19) { > - ? ? ? ? ? ? ? ? ? ? ? if (is_5182()) > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? return 5; > - ? ? ? ? ? ? ? ? ? ? ? if (type == MPP_UNUSED) > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? return 0; > - ? ? ? ? ? ? ? } > - ? ? ? ? ? ? ? return -1; > - > - ? ? ? case MPP_PCIE_RST_OUTn: > - ? ? ? ? ? ? ? if (mpp == 0) > - ? ? ? ? ? ? ? ? ? ? ? return 0; > - ? ? ? ? ? ? ? return -1; > - > - ? ? ? case MPP_PCI_ARB: > - ? ? ? ? ? ? ? if (mpp >= 0 && mpp <= 7) > - ? ? ? ? ? ? ? ? ? ? ? return 2; > - ? ? ? ? ? ? ? return -1; > - > - ? ? ? case MPP_PCI_PMEn: > - ? ? ? ? ? ? ? if (mpp == 2) > - ? ? ? ? ? ? ? ? ? ? ? return 3; > - ? ? ? ? ? ? ? return -1; > - > - ? ? ? case MPP_GIGE: > - ? ? ? ? ? ? ? if (mpp >= 8 && mpp <= 19) > - ? ? ? ? ? ? ? ? ? ? ? return 1; > - ? ? ? ? ? ? ? return -1; > - > - ? ? ? case MPP_NAND: > - ? ? ? ? ? ? ? if (is_5182() || is_5281()) { > - ? ? ? ? ? ? ? ? ? ? ? if (mpp >= 4 && mpp <= 7) > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? return 4; > - ? ? ? ? ? ? ? ? ? ? ? if (mpp >= 12 && mpp <= 17) > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? return 4; > - ? ? ? ? ? ? ? } > - ? ? ? ? ? ? ? return -1; > - > - ? ? ? case MPP_PCI_CLK: > - ? ? ? ? ? ? ? if (is_5181l() && mpp >= 6 && mpp <= 7) > - ? ? ? ? ? ? ? ? ? ? ? return 5; > - ? ? ? ? ? ? ? return -1; > - > - ? ? ? case MPP_SATA_LED: > - ? ? ? ? ? ? ? if (is_5182()) { > - ? ? ? ? ? ? ? ? ? ? ? if (mpp >= 4 && mpp <= 7) > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? return 5; > - ? ? ? ? ? ? ? ? ? ? ? if (mpp >= 12 && mpp <= 15) > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? return 5; > - ? ? ? ? ? ? ? } > - ? ? ? ? ? ? ? return -1; > - > - ? ? ? case MPP_UART: > - ? ? ? ? ? ? ? if (mpp >= 16 && mpp <= 19) > - ? ? ? ? ? ? ? ? ? ? ? return 0; > - ? ? ? ? ? ? ? return -1; > - ? ? ? } > - > - ? ? ? printk(KERN_INFO "unknown MPP type %d\n", type); > - > - ? ? ? return -1; > -} > - > -void __init orion5x_mpp_conf(struct orion5x_mpp_mode *mode) > -{ > - ? ? ? u32 mpp_0_7_ctrl = readl(MPP_0_7_CTRL); > - ? ? ? u32 mpp_8_15_ctrl = readl(MPP_8_15_CTRL); > - ? ? ? u32 mpp_16_19_ctrl = readl(MPP_16_19_CTRL); > - > - ? ? ? for ( ; mode->mpp >= 0; mode++) { > - ? ? ? ? ? ? ? u32 *reg; > - ? ? ? ? ? ? ? int num_type; > - ? ? ? ? ? ? ? int shift; > - > - ? ? ? ? ? ? ? if (mode->mpp >= 0 && mode->mpp <= 7) > - ? ? ? ? ? ? ? ? ? ? ? reg = &mpp_0_7_ctrl; > - ? ? ? ? ? ? ? else if (mode->mpp >= 8 && mode->mpp <= 15) > - ? ? ? ? ? ? ? ? ? ? ? reg = &mpp_8_15_ctrl; > - ? ? ? ? ? ? ? else if (mode->mpp >= 16 && mode->mpp <= 19) > - ? ? ? ? ? ? ? ? ? ? ? reg = &mpp_16_19_ctrl; > - ? ? ? ? ? ? ? else { > - ? ? ? ? ? ? ? ? ? ? ? printk(KERN_ERR "orion5x_mpp_conf: invalid MPP " > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "(%d)\n", mode->mpp); > - ? ? ? ? ? ? ? ? ? ? ? continue; > - ? ? ? ? ? ? ? } > - > - ? ? ? ? ? ? ? num_type = determine_type_encoding(mode->mpp, mode->type); > - ? ? ? ? ? ? ? if (num_type < 0) { > - ? ? ? ? ? ? ? ? ? ? ? printk(KERN_ERR "orion5x_mpp_conf: invalid MPP " > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "combination (%d, %d)\n", mode->mpp, > - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? mode->type); > - ? ? ? ? ? ? ? ? ? ? ? continue; > - ? ? ? ? ? ? ? } > - > - ? ? ? ? ? ? ? shift = (mode->mpp & 7) << 2; > - ? ? ? ? ? ? ? *reg &= ~(0xf << shift); > - ? ? ? ? ? ? ? *reg |= (num_type & 0xf) << shift; > - > - ? ? ? ? ? ? ? if (mode->type == MPP_UNUSED && (mode->mpp < 16 || is_5182())) > - ? ? ? ? ? ? ? ? ? ? ? orion_gpio_set_unused(mode->mpp); > - > - ? ? ? ? ? ? ? orion_gpio_set_valid(mode->mpp, !!(mode->type == MPP_GPIO)); > - ? ? ? } > - > - ? ? ? writel(mpp_0_7_ctrl, MPP_0_7_CTRL); > - ? ? ? writel(mpp_8_15_ctrl, MPP_8_15_CTRL); > - ? ? ? writel(mpp_16_19_ctrl, MPP_16_19_CTRL); > + ? ? ? orion_mpp_conf(mpp_list, orion5x_variant(), > + ? ? ? ? ? ? ? ? ? ? ?MPP_MAX, ORION5X_DEV_BUS_VIRT_BASE); > ?} > diff --git a/arch/arm/mach-orion5x/mpp.h b/arch/arm/mach-orion5x/mpp.h > index 290e610..e1ad611 100644 > --- a/arch/arm/mach-orion5x/mpp.h > +++ b/arch/arm/mach-orion5x/mpp.h > @@ -1,74 +1,129 @@ > ?#ifndef __ARCH_ORION5X_MPP_H > ?#define __ARCH_ORION5X_MPP_H > > -enum orion5x_mpp_type { > - ? ? ? /* > - ? ? ? ?* This MPP is unused. > - ? ? ? ?*/ > - ? ? ? MPP_UNUSED, > - > - ? ? ? /* > - ? ? ? ?* This MPP pin is used as a generic GPIO pin. ?Valid for > - ? ? ? ?* MPPs 0-15 and device bus data pins 16-31. ?On 5182, also > - ? ? ? ?* valid for MPPs 16-19. > - ? ? ? ?*/ > - ? ? ? MPP_GPIO, > - > - ? ? ? /* > - ? ? ? ?* This MPP is used as PCIe_RST_OUTn pin. ?Valid for > - ? ? ? ?* MPP 0 only. > - ? ? ? ?*/ > - ? ? ? MPP_PCIE_RST_OUTn, > - > - ? ? ? /* > - ? ? ? ?* This MPP is used as PCI arbiter pin (REQn/GNTn). > - ? ? ? ?* Valid for MPPs 0-7 only. > - ? ? ? ?*/ > - ? ? ? MPP_PCI_ARB, > - > - ? ? ? /* > - ? ? ? ?* This MPP is used as PCI_PMEn pin. ?Valid for MPP 2 only. > - ? ? ? ?*/ > - ? ? ? MPP_PCI_PMEn, > - > - ? ? ? /* > - ? ? ? ?* This MPP is used as GigE half-duplex (COL, CRS) or GMII > - ? ? ? ?* (RXERR, CRS, TXERR, TXD[7:4], RXD[7:4]) pin. ?Valid for > - ? ? ? ?* MPPs 8-19 only. > - ? ? ? ?*/ > - ? ? ? MPP_GIGE, > - > - ? ? ? /* > - ? ? ? ?* This MPP is used as NAND REn/WEn pin. ?Valid for MPPs > - ? ? ? ?* 4-7 and 12-17 only, and only on the 5181l/5182/5281. > - ? ? ? ?*/ > - ? ? ? MPP_NAND, > - > - ? ? ? /* > - ? ? ? ?* This MPP is used as a PCI clock output pin. ?Valid for > - ? ? ? ?* MPPs 6-7 only, and only on the 5181l. > - ? ? ? ?*/ > - ? ? ? MPP_PCI_CLK, > - > - ? ? ? /* > - ? ? ? ?* This MPP is used as a SATA presence/activity LED. > - ? ? ? ?* Valid for MPPs 4-7 and 12-15 only, and only on the 5182. > - ? ? ? ?*/ > - ? ? ? MPP_SATA_LED, > - > - ? ? ? /* > - ? ? ? ?* This MPP is used as UART1 RXD/TXD/CTSn/RTSn pin. > - ? ? ? ?* Valid for MPPs 16-19 only. > - ? ? ? ?*/ > - ? ? ? MPP_UART, > -}; > - > -struct orion5x_mpp_mode { > - ? ? ? int ? ? ? ? ? ? ? ? ? ? mpp; > - ? ? ? enum orion5x_mpp_type ? type; > -}; > - > -void orion5x_mpp_conf(struct orion5x_mpp_mode *mode); > +#define MPP(_num, _sel, _in, _out, _F5181l, _F5182, _F5281) ( \ > + ? ? ? /* MPP number */ ? ? ? ? ? ? ? ?((_num) & 0xff) | \ > + ? ? ? /* MPP select value */ ? ? ? ? ?(((_sel) & 0xf) << 8) | \ > + ? ? ? /* may be input signal */ ? ? ? ((!!(_in)) << 12) | \ > + ? ? ? /* may be output signal */ ? ? ?((!!(_out)) << 13) | \ > + ? ? ? /* available on F5181l */ ? ? ? ((!!(_F5181l)) << 14) | \ > + ? ? ? /* available on F5182 */ ? ? ? ?((!!(_F5182)) << 15) | \ > + ? ? ? /* available on F5281 */ ? ? ? ?((!!(_F5281)) << 16)) > > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? /* num sel ?i ?o ?5181 5182 5281 */ > + > +#define MPP_F5181_MASK ? ? ? ? MPP(0, ?0x0, 0, 0, 1, ? 0, ? 0) > +#define MPP_F5182_MASK ? ? ? ? MPP(0, ?0x0, 0, 0, 0, ? 1, ? 0) > +#define MPP_F5281_MASK ? ? ? ? MPP(0, ?0x0, 0, 0, 0, ? 0, ? 1) > + > +#define MPP0_UNUSED ? ? ? ? ? ?MPP(0, ?0x3, 1, 1, 1, ? 1, ? 1) > +#define MPP0_GPIO ? ? ? ? ? ? ?MPP(0, ?0x3, 1, 1, 1, ? 1, ? 1) > +#define MPP0_PCIE_RST_OUTn ? ? MPP(0, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP0_PCI_ARB ? ? ? ? ? ?MPP(0, ?0x2, 1, 1, 1, ? 1, ? 1) > + > +#define MPP1_UNUSED ? ? ? ? ? ?MPP(1, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP1_GPIO ? ? ? ? ? ? ?MPP(1, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP1_PCI_ARB ? ? ? ? ? ?MPP(1, ?0x2, 1, 1, 1, ? 1, ? 1) > + > +#define MPP2_UNUSED ? ? ? ? ? ?MPP(2, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP2_GPIO ? ? ? ? ? ? ?MPP(2, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP2_PCI_ARB ? ? ? ? ? ?MPP(2, ?0x2, 1, 1, 1, ? 1, ? 1) > +#define MPP2_PCI_PMEn ? ? ? ? ? MPP(2, ?0x3, 1, 1, 1, ? 1, ? 1) > + > +#define MPP3_UNUSED ? ? ? ? ? ?MPP(3, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP3_GPIO ? ? ? ? ? ? ?MPP(3, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP3_PCI_ARB ? ? ? ? ? ?MPP(3, ?0x2, 1, 1, 1, ? 1, ? 1) > + > +#define MPP4_UNUSED ? ? ? ? ? ?MPP(4, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP4_GPIO ? ? ? ? ? ? ?MPP(4, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP4_PCI_ARB ? ? ? ? ? ?MPP(4, ?0x2, 1, 1, 1, ? 1, ? 1) > +#define MPP4_NAND ? ? ? ? ? ? ? MPP(4, ?0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP4_SATA_LED ? ? ? ? ? MPP(4, ?0x5, 1, 1, 0, ? 1, ? 0) > + > +#define MPP5_UNUSED ? ? ? ? ? ?MPP(5, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP5_GPIO ? ? ? ? ? ? ?MPP(5, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP5_PCI_ARB ? ? ? ? ? ?MPP(5, ?0x2, 1, 1, 1, ? 1, ? 1) > +#define MPP5_NAND ? ? ? ? ? ? ? MPP(5, ?0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP5_SATA_LED ? ? ? ? ? MPP(5, ?0x5, 1, 1, 0, ? 1, ? 0) > + > +#define MPP6_UNUSED ? ? ? ? ? ?MPP(6, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP6_GPIO ? ? ? ? ? ? ?MPP(6, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP6_PCI_ARB ? ? ? ? ? ?MPP(6, ?0x2, 1, 1, 1, ? 1, ? 1) > +#define MPP6_NAND ? ? ? ? ? ? ? MPP(6, ?0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP6_PCI_CLK ? ? ? ? ? ?MPP(6, ?0x5, 1, 1, 1, ? 0, ? 0) > +#define MPP6_SATA_LED ? ? ? ? ? MPP(6, ?0x5, 1, 1, 0, ? 1, ? 0) > + > +#define MPP7_UNUSED ? ? ? ? ? ?MPP(7, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP7_GPIO ? ? ? ? ? ? ?MPP(7, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP7_PCI_ARB ? ? ? ? ? ?MPP(7, ?0x2, 1, 1, 1, ? 1, ? 1) > +#define MPP7_NAND ? ? ? ? ? ? ? MPP(7, ?0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP7_PCI_CLK ? ? ? ? ? ?MPP(7, ?0x5, 1, 1, 1, ? 0, ? 0) > +#define MPP7_SATA_LED ? ? ? ? ? MPP(7, ?0x5, 1, 1, 0, ? 1, ? 0) > + > +#define MPP8_UNUSED ? ? ? ? ? ?MPP(8, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP8_GPIO ? ? ? ? ? ? ?MPP(8, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP8_GIGE ? ? ? ? ? ? ? MPP(8, ?0x1, 1, 1, 1, ? 1, ? 1) > + > +#define MPP9_UNUSED ? ? ? ? ? ?MPP(9, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP9_GPIO ? ? ? ? ? ? ?MPP(9, ?0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP9_GIGE ? ? ? ? ? ? ? MPP(9, ?0x1, 1, 1, 1, ? 1, ? 1) > + > +#define MPP10_UNUSED ? ? ? ? ? MPP(10, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP10_GPIO ? ? ? ? ? ? MPP(10, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP10_GIGE ? ? ? ? ? ? ?MPP(10, 0x1, 1, 1, 1, ? 1, ? 1) > + > +#define MPP11_UNUSED ? ? ? ? ? MPP(11, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP11_GPIO ? ? ? ? ? ? MPP(11, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP11_GIGE ? ? ? ? ? ? ?MPP(11, 0x1, 1, 1, 1, ? 1, ? 1) > + > +#define MPP12_UNUSED ? ? ? ? ? MPP(12, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP12_GPIO ? ? ? ? ? ? MPP(12, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP12_GIGE ? ? ? ? ? ? ?MPP(12, 0x1, 1, 1, 1, ? 1, ? 1) > +#define MPP12_NAND ? ? ? ? ? ? ?MPP(12, 0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP12_SATA_LED ? ? ? ? ?MPP(12, 0x5, 1, 1, 0, ? 1, ? 0) > + > +#define MPP13_UNUSED ? ? ? ? ? MPP(13, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP13_GPIO ? ? ? ? ? ? MPP(13, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP13_GIGE ? ? ? ? ? ? ?MPP(13, 0x1, 1, 1, 1, ? 1, ? 1) > +#define MPP13_NAND ? ? ? ? ? ? ?MPP(13, 0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP13_SATA_LED ? ? ? ? ?MPP(13, 0x5, 1, 1, 0, ? 1, ? 0) > + > +#define MPP14_UNUSED ? ? ? ? ? MPP(14, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP14_GPIO ? ? ? ? ? ? MPP(14, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP14_GIGE ? ? ? ? ? ? ?MPP(14, 0x1, 1, 1, 1, ? 1, ? 1) > +#define MPP14_NAND ? ? ? ? ? ? ?MPP(14, 0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP14_SATA_LED ? ? ? ? ?MPP(14, 0x5, 1, 1, 0, ? 1, ? 0) > + > +#define MPP15_UNUSED ? ? ? ? ? MPP(15, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP15_GPIO ? ? ? ? ? ? MPP(15, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP15_GIGE ? ? ? ? ? ? ?MPP(15, 0x1, 1, 1, 1, ? 1, ? 1) > +#define MPP15_NAND ? ? ? ? ? ? ?MPP(15, 0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP15_SATA_LED ? ? ? ? ?MPP(15, 0x5, 1, 1, 0, ? 1, ? 0) > + > +#define MPP16_UNUSED ? ? ? ? ? MPP(16, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP16_GPIO ? ? ? ? ? ? MPP(16, 0x5, 1, 1, 0, ? 1, ? 0) > +#define MPP16_GIGE ? ? ? ? ? ? ?MPP(16, 0x1, 1, 1, 1, ? 1, ? 1) > +#define MPP16_NAND ? ? ? ? ? ? ?MPP(16, 0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP16_UART ? ? ? ? ? ? ?MPP(16, 0x0, 1, 1, 0, ? 1, ? 1) > + > +#define MPP17_UNUSED ? ? ? ? ? MPP(17, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP17_GPIO ? ? ? ? ? ? MPP(17, 0x5, 1, 1, 0, ? 1, ? 0) > +#define MPP17_GIGE ? ? ? ? ? ? ?MPP(17, 0x1, 1, 1, 1, ? 1, ? 1) > +#define MPP17_NAND ? ? ? ? ? ? ?MPP(17, 0x4, 1, 1, 0, ? 1, ? 1) > +#define MPP17_UART ? ? ? ? ? ? ?MPP(17, 0x0, 1, 1, 0, ? 1, ? 1) > + > +#define MPP18_UNUSED ? ? ? ? ? MPP(18, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP18_GPIO ? ? ? ? ? ? MPP(18, 0x5, 1, 1, 0, ? 1, ? 0) > +#define MPP18_GIGE ? ? ? ? ? ? ?MPP(18, 0x1, 1, 1, 1, ? 1, ? 1) > +#define MPP18_UART ? ? ? ? ? ? ?MPP(18, 0x0, 1, 1, 0, ? 1, ? 1) > + > +#define MPP19_UNUSED ? ? ? ? ? MPP(19, 0x0, 1, 1, 1, ? 1, ? 1) > +#define MPP19_GPIO ? ? ? ? ? ? MPP(19, 0x5, 1, 1, 0, ? 1, ? 0) > +#define MPP19_GIGE ? ? ? ? ? ? ?MPP(19, 0x1, 1, 1, 1, ? 1, ? 1) > +#define MPP19_UART ? ? ? ? ? ? ?MPP(19, 0x0, 1, 1, 0, ? 1, ? 1) there have been some effort to enable building single image for orion5x/kw/dove etc, and I think the defines here collides with those defined by kw. saeed > + > +#define MPP_MAX ? ? ? ? ? ? ? ? ? ? ? ?19 > + > +void orion5x_mpp_conf(unsigned int *mpp_list); > > ?#endif > diff --git a/arch/arm/mach-orion5x/mss2-setup.c b/arch/arm/mach-orion5x/mss2-setup.c > index b43b208..59263b7 100644 > --- a/arch/arm/mach-orion5x/mss2-setup.c > +++ b/arch/arm/mach-orion5x/mss2-setup.c > @@ -193,28 +193,28 @@ static void mss2_power_off(void) > ?/**************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode mss2_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? ? ? ? ? /* Power LED */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* Error LED */ > - ? ? ? { ?2, MPP_UNUSED }, > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* RTC interrupt */ > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* HDD ind. (Single/Dual)*/ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* HD0 5V control */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* HD0 12V control */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* HD1 5V control */ > - ? ? ? { ?8, MPP_GPIO }, ? ? ? ? ? ? ? /* HD1 12V control */ > - ? ? ? { ?9, MPP_UNUSED }, > - ? ? ? { 10, MPP_GPIO }, ? ? ? ? ? ? ? /* Fan control */ > - ? ? ? { 11, MPP_GPIO }, ? ? ? ? ? ? ? /* Power button */ > - ? ? ? { 12, MPP_GPIO }, ? ? ? ? ? ? ? /* Reset button */ > - ? ? ? { 13, MPP_UNUSED }, > - ? ? ? { 14, MPP_SATA_LED }, ? ? ? ? ? /* SATA 0 active */ > - ? ? ? { 15, MPP_SATA_LED }, ? ? ? ? ? /* SATA 1 active */ > - ? ? ? { 16, MPP_UNUSED }, > - ? ? ? { 17, MPP_UNUSED }, > - ? ? ? { 18, MPP_UNUSED }, > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 }, > +static unsigned int mss2_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ? ? ? ? ?/* Power LED */ > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* Error LED */ > + ? ? ? MPP2_UNUSED, > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* RTC interrupt */ > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* HDD ind. (Single/Dual)*/ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* HD0 5V control */ > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* HD0 12V control */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* HD1 5V control */ > + ? ? ? MPP8_GPIO, ? ? ? ? ? ? ?/* HD1 12V control */ > + ? ? ? MPP9_UNUSED, > + ? ? ? MPP10_GPIO, ? ? ? ? ? ? /* Fan control */ > + ? ? ? MPP11_GPIO, ? ? ? ? ? ? /* Power button */ > + ? ? ? MPP12_GPIO, ? ? ? ? ? ? /* Reset button */ > + ? ? ? MPP13_UNUSED, > + ? ? ? MPP14_SATA_LED, ? ? ? ? /* SATA 0 active */ > + ? ? ? MPP15_SATA_LED, ? ? ? ? /* SATA 1 active */ > + ? ? ? MPP16_UNUSED, > + ? ? ? MPP17_UNUSED, > + ? ? ? MPP18_UNUSED, > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ?}; > > ?static void __init mss2_init(void) > diff --git a/arch/arm/mach-orion5x/mv2120-setup.c b/arch/arm/mach-orion5x/mv2120-setup.c > index c55d071..63ff10c 100644 > --- a/arch/arm/mach-orion5x/mv2120-setup.c > +++ b/arch/arm/mach-orion5x/mv2120-setup.c > @@ -108,28 +108,28 @@ static struct platform_device mv2120_button_device = { > ?/**************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode mv2120_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? ? ? ? ? /* Sys status LED */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* Sys error LED */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* OverTemp interrupt */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* RTC interrupt */ > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* V_LED 5V */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* V_LED 3.3V */ > - ? ? ? { ?6, MPP_UNUSED }, > - ? ? ? { ?7, MPP_UNUSED }, > - ? ? ? { ?8, MPP_GPIO }, ? ? ? ? ? ? ? /* SATA 0 fail LED */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? ? ? ? ? /* SATA 1 fail LED */ > - ? ? ? { 10, MPP_UNUSED }, > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_SATA_LED }, ? ? ? ? ? /* SATA 0 presence */ > - ? ? ? { 13, MPP_SATA_LED }, ? ? ? ? ? /* SATA 1 presence */ > - ? ? ? { 14, MPP_SATA_LED }, ? ? ? ? ? /* SATA 0 active */ > - ? ? ? { 15, MPP_SATA_LED }, ? ? ? ? ? /* SATA 1 active */ > - ? ? ? { 16, MPP_UNUSED }, > - ? ? ? { 17, MPP_GPIO }, ? ? ? ? ? ? ? /* Reset button */ > - ? ? ? { 18, MPP_GPIO }, ? ? ? ? ? ? ? /* Power button */ > - ? ? ? { 19, MPP_GPIO }, ? ? ? ? ? ? ? /* Power off */ > - ? ? ? { -1 }, > +static unsigned int mv2120_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ? ? ? ? ?/* Sys status LED */ > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* Sys error LED */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* OverTemp interrupt */ > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* RTC interrupt */ > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* V_LED 5V */ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* V_LED 3.3V */ > + ? ? ? MPP6_UNUSED, > + ? ? ? MPP7_UNUSED, > + ? ? ? MPP8_GPIO, ? ? ? ? ? ? ?/* SATA 0 fail LED */ > + ? ? ? MPP9_GPIO, ? ? ? ? ? ? ?/* SATA 1 fail LED */ > + ? ? ? MPP10_UNUSED, > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_SATA_LED, ? ? ? ? /* SATA 0 presence */ > + ? ? ? MPP13_SATA_LED, ? ? ? ? /* SATA 1 presence */ > + ? ? ? MPP14_SATA_LED, ? ? ? ? /* SATA 0 active */ > + ? ? ? MPP15_SATA_LED, ? ? ? ? /* SATA 1 active */ > + ? ? ? MPP16_UNUSED, > + ? ? ? MPP17_GPIO, ? ? ? ? ? ? /* Reset button */ > + ? ? ? MPP18_GPIO, ? ? ? ? ? ? /* Power button */ > + ? ? ? MPP19_GPIO, ? ? ? ? ? ? /* Power off */ > + ? ? ? 0, > ?}; > > ?static struct i2c_board_info __initdata mv2120_i2c_rtc = { > diff --git a/arch/arm/mach-orion5x/net2big-setup.c b/arch/arm/mach-orion5x/net2big-setup.c > index 429ecaf..a9609b0 100644 > --- a/arch/arm/mach-orion5x/net2big-setup.c > +++ b/arch/arm/mach-orion5x/net2big-setup.c > @@ -339,28 +339,28 @@ static struct platform_device net2big_gpio_buttons = { > ?* General Setup > ?****************************************************************************/ > > -static struct orion5x_mpp_mode net2big_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? /* Raid mode (bit 0) */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? /* USB port 2 fuse (0 = Fail, 1 = Ok) */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? /* Raid mode (bit 1) */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? /* Board ID (bit 0) */ > - ? ? ? { ?4, MPP_GPIO }, ? ? ? /* Fan activity (0 = Off, 1 = On) */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? /* Fan fail detection */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? /* Red front LED (0 = Off, 1 = On) */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? /* Disable initial blinking on front LED */ > - ? ? ? { ?8, MPP_GPIO }, ? ? ? /* Rear power switch (on|auto) */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? /* Rear power switch (auto|off) */ > - ? ? ? { 10, MPP_GPIO }, ? ? ? /* SATA 1 red LED (0 = Off, 1 = On) */ > - ? ? ? { 11, MPP_GPIO }, ? ? ? /* SATA 0 red LED (0 = Off, 1 = On) */ > - ? ? ? { 12, MPP_GPIO }, ? ? ? /* Board ID (bit 1) */ > - ? ? ? { 13, MPP_GPIO }, ? ? ? /* SATA 1 blue LED blink control */ > - ? ? ? { 14, MPP_SATA_LED }, > - ? ? ? { 15, MPP_SATA_LED }, > - ? ? ? { 16, MPP_GPIO }, ? ? ? /* Blue front LED control */ > - ? ? ? { 17, MPP_GPIO }, ? ? ? /* SATA 0 blue LED blink control */ > - ? ? ? { 18, MPP_GPIO }, ? ? ? /* Front button (0 = Released, 1 = Pushed ) */ > - ? ? ? { 19, MPP_GPIO }, ? ? ? /* SATA{0,1} power On/Off request */ > - ? ? ? { -1 } > +static unsigned int net2big_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ?/* Raid mode (bit 0) */ > + ? ? ? MPP1_GPIO, ? ? ?/* USB port 2 fuse (0 = Fail, 1 = Ok) */ > + ? ? ? MPP2_GPIO, ? ? ?/* Raid mode (bit 1) */ > + ? ? ? MPP3_GPIO, ? ? ?/* Board ID (bit 0) */ > + ? ? ? MPP4_GPIO, ? ? ?/* Fan activity (0 = Off, 1 = On) */ > + ? ? ? MPP5_GPIO, ? ? ?/* Fan fail detection */ > + ? ? ? MPP6_GPIO, ? ? ?/* Red front LED (0 = Off, 1 = On) */ > + ? ? ? MPP7_GPIO, ? ? ?/* Disable initial blinking on front LED */ > + ? ? ? MPP8_GPIO, ? ? ?/* Rear power switch (on|auto) */ > + ? ? ? MPP9_GPIO, ? ? ?/* Rear power switch (auto|off) */ > + ? ? ? MPP10_GPIO, ? ? /* SATA 1 red LED (0 = Off, 1 = On) */ > + ? ? ? MPP11_GPIO, ? ? /* SATA 0 red LED (0 = Off, 1 = On) */ > + ? ? ? MPP12_GPIO, ? ? /* Board ID (bit 1) */ > + ? ? ? MPP13_GPIO, ? ? /* SATA 1 blue LED blink control */ > + ? ? ? MPP14_SATA_LED, > + ? ? ? MPP15_SATA_LED, > + ? ? ? MPP16_GPIO, ? ? /* Blue front LED control */ > + ? ? ? MPP17_GPIO, ? ? /* SATA 0 blue LED blink control */ > + ? ? ? MPP18_GPIO, ? ? /* Front button (0 = Released, 1 = Pushed ) */ > + ? ? ? MPP19_GPIO, ? ? /* SATA{0,1} power On/Off request */ > + ? ? ? 0, > ? ? ? ?/* 22: USB port 1 fuse (0 = Fail, 1 = Ok) */ > ? ? ? ?/* 23: SATA 0 power status */ > ? ? ? ?/* 24: Board power off */ > diff --git a/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c b/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c > index 34310ab..9eec7c2 100644 > --- a/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c > +++ b/arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c > @@ -64,28 +64,28 @@ static struct platform_device rd88f5181l_fxo_nor_boot_flash = { > ?/***************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode rd88f5181l_fxo_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? ? ? ? ? /* LED1 CardBus LED (front panel) */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI_intA */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* Hard Reset / Factory Init*/ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* FXS or DAA select */ > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* LED6 - phone LED (front panel) */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* LED5 - phone LED (front panel) */ > - ? ? ? { ?6, MPP_PCI_CLK }, ? ? ? ? ? ?/* CPU PCI refclk */ > - ? ? ? { ?7, MPP_PCI_CLK }, ? ? ? ? ? ?/* PCI/PCIe refclk */ > - ? ? ? { ?8, MPP_GPIO }, ? ? ? ? ? ? ? /* CardBus reset */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? ? ? ? ? /* GE_RXERR */ > - ? ? ? { 10, MPP_GPIO }, ? ? ? ? ? ? ? /* LED2 MiniPCI LED (front panel) */ > - ? ? ? { 11, MPP_GPIO }, ? ? ? ? ? ? ? /* Lifeline control */ > - ? ? ? { 12, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[4] */ > - ? ? ? { 13, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[5] */ > - ? ? ? { 14, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[6] */ > - ? ? ? { 15, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[7] */ > - ? ? ? { 16, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[4] */ > - ? ? ? { 17, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[5] */ > - ? ? ? { 18, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[6] */ > - ? ? ? { 19, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[7] */ > - ? ? ? { -1 }, > +static unsigned int rd88f5181l_fxo_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ? ? ? ? ?/* LED1 CardBus LED (front panel) */ > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* PCI_intA */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* Hard Reset / Factory Init*/ > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* FXS or DAA select */ > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* LED6 - phone LED (front panel) */ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* LED5 - phone LED (front panel) */ > + ? ? ? MPP6_PCI_CLK, ? ? ? ? ? /* CPU PCI refclk */ > + ? ? ? MPP7_PCI_CLK, ? ? ? ? ? /* PCI/PCIe refclk */ > + ? ? ? MPP8_GPIO, ? ? ? ? ? ? ?/* CardBus reset */ > + ? ? ? MPP9_GPIO, ? ? ? ? ? ? ?/* GE_RXERR */ > + ? ? ? MPP10_GPIO, ? ? ? ? ? ? /* LED2 MiniPCI LED (front panel) */ > + ? ? ? MPP11_GPIO, ? ? ? ? ? ? /* Lifeline control */ > + ? ? ? MPP12_GIGE, ? ? ? ? ? ? /* GE_TXD[4] */ > + ? ? ? MPP13_GIGE, ? ? ? ? ? ? /* GE_TXD[5] */ > + ? ? ? MPP14_GIGE, ? ? ? ? ? ? /* GE_TXD[6] */ > + ? ? ? MPP15_GIGE, ? ? ? ? ? ? /* GE_TXD[7] */ > + ? ? ? MPP16_GIGE, ? ? ? ? ? ? /* GE_RXD[4] */ > + ? ? ? MPP17_GIGE, ? ? ? ? ? ? /* GE_RXD[5] */ > + ? ? ? MPP18_GIGE, ? ? ? ? ? ? /* GE_RXD[6] */ > + ? ? ? MPP19_GIGE, ? ? ? ? ? ? /* GE_RXD[7] */ > + ? ? ? 0, > ?}; > > ?static struct mv643xx_eth_platform_data rd88f5181l_fxo_eth_data = { > diff --git a/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c b/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c > index c1f79fa..0cc90bb 100644 > --- a/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c > +++ b/arch/arm/mach-orion5x/rd88f5181l-ge-setup.c > @@ -65,28 +65,28 @@ static struct platform_device rd88f5181l_ge_nor_boot_flash = { > ?/***************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode rd88f5181l_ge_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? ? ? ? ? /* LED1 */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* LED5 */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* LED4 */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* LED3 */ > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI_intA */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* RTC interrupt */ > - ? ? ? { ?6, MPP_PCI_CLK }, ? ? ? ? ? ?/* CPU PCI refclk */ > - ? ? ? { ?7, MPP_PCI_CLK }, ? ? ? ? ? ?/* PCI/PCIe refclk */ > - ? ? ? { ?8, MPP_GPIO }, ? ? ? ? ? ? ? /* 88e6131 interrupt */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? ? ? ? ? /* GE_RXERR */ > - ? ? ? { 10, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI_intB */ > - ? ? ? { 11, MPP_GPIO }, ? ? ? ? ? ? ? /* LED2 */ > - ? ? ? { 12, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[4] */ > - ? ? ? { 13, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[5] */ > - ? ? ? { 14, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[6] */ > - ? ? ? { 15, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[7] */ > - ? ? ? { 16, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[4] */ > - ? ? ? { 17, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[5] */ > - ? ? ? { 18, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[6] */ > - ? ? ? { 19, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[7] */ > - ? ? ? { -1 }, > +static unsigned int rd88f5181l_ge_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ? ? ? ? ?/* LED1 */ > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* LED5 */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* LED4 */ > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* LED3 */ > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* PCI_intA */ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* RTC interrupt */ > + ? ? ? MPP6_PCI_CLK, ? ? ? ? ? /* CPU PCI refclk */ > + ? ? ? MPP7_PCI_CLK, ? ? ? ? ? /* PCI/PCIe refclk */ > + ? ? ? MPP8_GPIO, ? ? ? ? ? ? ?/* 88e6131 interrupt */ > + ? ? ? MPP9_GPIO, ? ? ? ? ? ? ?/* GE_RXERR */ > + ? ? ? MPP10_GPIO, ? ? ? ? ? ? /* PCI_intB */ > + ? ? ? MPP11_GPIO, ? ? ? ? ? ? /* LED2 */ > + ? ? ? MPP12_GIGE, ? ? ? ? ? ? /* GE_TXD[4] */ > + ? ? ? MPP13_GIGE, ? ? ? ? ? ? /* GE_TXD[5] */ > + ? ? ? MPP14_GIGE, ? ? ? ? ? ? /* GE_TXD[6] */ > + ? ? ? MPP15_GIGE, ? ? ? ? ? ? /* GE_TXD[7] */ > + ? ? ? MPP16_GIGE, ? ? ? ? ? ? /* GE_RXD[4] */ > + ? ? ? MPP17_GIGE, ? ? ? ? ? ? /* GE_RXD[5] */ > + ? ? ? MPP18_GIGE, ? ? ? ? ? ? /* GE_RXD[6] */ > + ? ? ? MPP19_GIGE, ? ? ? ? ? ? /* GE_RXD[7] */ > + ? ? ? 0, > ?}; > > ?static struct mv643xx_eth_platform_data rd88f5181l_ge_eth_data = { > diff --git a/arch/arm/mach-orion5x/rd88f5182-setup.c b/arch/arm/mach-orion5x/rd88f5182-setup.c > index 67ec695..e29852a 100644 > --- a/arch/arm/mach-orion5x/rd88f5182-setup.c > +++ b/arch/arm/mach-orion5x/rd88f5182-setup.c > @@ -241,28 +241,28 @@ static struct mv_sata_platform_data rd88f5182_sata_data = { > ?/***************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode rd88f5182_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? ? ? ? ? /* Debug Led */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* Reset Switch */ > - ? ? ? { ?2, MPP_UNUSED }, > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* RTC Int */ > - ? ? ? { ?4, MPP_GPIO }, > - ? ? ? { ?5, MPP_GPIO }, > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI_intA */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI_intB */ > - ? ? ? { ?8, MPP_UNUSED }, > - ? ? ? { ?9, MPP_UNUSED }, > - ? ? ? { 10, MPP_UNUSED }, > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_SATA_LED }, ? ? ? ? ? /* SATA 0 presence */ > - ? ? ? { 13, MPP_SATA_LED }, ? ? ? ? ? /* SATA 1 presence */ > - ? ? ? { 14, MPP_SATA_LED }, ? ? ? ? ? /* SATA 0 active */ > - ? ? ? { 15, MPP_SATA_LED }, ? ? ? ? ? /* SATA 1 active */ > - ? ? ? { 16, MPP_UNUSED }, > - ? ? ? { 17, MPP_UNUSED }, > - ? ? ? { 18, MPP_UNUSED }, > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 }, > +static unsigned int rd88f5182_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ? ? ? ? ?/* Debug Led */ > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* Reset Switch */ > + ? ? ? MPP2_UNUSED, > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* RTC Int */ > + ? ? ? MPP4_GPIO, > + ? ? ? MPP5_GPIO, > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* PCI_intA */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* PCI_intB */ > + ? ? ? MPP8_UNUSED, > + ? ? ? MPP9_UNUSED, > + ? ? ? MPP10_UNUSED, > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_SATA_LED, ? ? ? ? /* SATA 0 presence */ > + ? ? ? MPP13_SATA_LED, ? ? ? ? /* SATA 1 presence */ > + ? ? ? MPP14_SATA_LED, ? ? ? ? /* SATA 0 active */ > + ? ? ? MPP15_SATA_LED, ? ? ? ? /* SATA 1 active */ > + ? ? ? MPP16_UNUSED, > + ? ? ? MPP17_UNUSED, > + ? ? ? MPP18_UNUSED, > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ?}; > > ?static void __init rd88f5182_init(void) > diff --git a/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c b/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c > index b080c69..ad2eba9 100644 > --- a/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c > +++ b/arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c > @@ -27,7 +27,6 @@ > ?#include > ?#include > ?#include "common.h" > -#include "mpp.h" > > ?static struct mv643xx_eth_platform_data rd88f6183ap_ge_eth_data = { > ? ? ? ?.phy_addr ? ? ? = -1, > diff --git a/arch/arm/mach-orion5x/terastation_pro2-setup.c b/arch/arm/mach-orion5x/terastation_pro2-setup.c > index 5653ee6..de8db88 100644 > --- a/arch/arm/mach-orion5x/terastation_pro2-setup.c > +++ b/arch/arm/mach-orion5x/terastation_pro2-setup.c > @@ -295,28 +295,28 @@ static void tsp2_power_off(void) > ?/***************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode tsp2_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_PCIE_RST_OUTn }, > - ? ? ? { ?1, MPP_UNUSED }, > - ? ? ? { ?2, MPP_UNUSED }, > - ? ? ? { ?3, MPP_UNUSED }, > - ? ? ? { ?4, MPP_NAND }, ? ? ? ? ? ? ? /* BOOT NAND Flash REn */ > - ? ? ? { ?5, MPP_NAND }, ? ? ? ? ? ? ? /* BOOT NAND Flash WEn */ > - ? ? ? { ?6, MPP_NAND }, ? ? ? ? ? ? ? /* BOOT NAND Flash HREn[0] */ > - ? ? ? { ?7, MPP_NAND }, ? ? ? ? ? ? ? /* BOOT NAND Flash WEn[0] */ > - ? ? ? { ?8, MPP_GPIO }, ? ? ? ? ? ? ? /* MICON int */ > - ? ? ? { ?9, MPP_GPIO }, ? ? ? ? ? ? ? /* RTC int */ > - ? ? ? { 10, MPP_UNUSED }, > - ? ? ? { 11, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI Int A */ > - ? ? ? { 12, MPP_UNUSED }, > - ? ? ? { 13, MPP_GPIO }, ? ? ? ? ? ? ? /* UPS on UART0 enable */ > - ? ? ? { 14, MPP_GPIO }, ? ? ? ? ? ? ? /* UPS low battery detection */ > - ? ? ? { 15, MPP_UNUSED }, > - ? ? ? { 16, MPP_UART }, ? ? ? ? ? ? ? /* UART1 RXD */ > - ? ? ? { 17, MPP_UART }, ? ? ? ? ? ? ? /* UART1 TXD */ > - ? ? ? { 18, MPP_UART }, ? ? ? ? ? ? ? /* UART1 CTSn */ > - ? ? ? { 19, MPP_UART }, ? ? ? ? ? ? ? /* UART1 RTSn */ > - ? ? ? { -1 }, > +static unsigned int tsp2_mpp_modes[] __initdata = { > + ? ? ? MPP0_PCIE_RST_OUTn, > + ? ? ? MPP1_UNUSED, > + ? ? ? MPP2_UNUSED, > + ? ? ? MPP3_UNUSED, > + ? ? ? MPP4_NAND, ? ? ? ? ? ? ?/* BOOT NAND Flash REn */ > + ? ? ? MPP5_NAND, ? ? ? ? ? ? ?/* BOOT NAND Flash WEn */ > + ? ? ? MPP6_NAND, ? ? ? ? ? ? ?/* BOOT NAND Flash HREn[0] */ > + ? ? ? MPP7_NAND, ? ? ? ? ? ? ?/* BOOT NAND Flash WEn[0] */ > + ? ? ? MPP8_GPIO, ? ? ? ? ? ? ?/* MICON int */ > + ? ? ? MPP9_GPIO, ? ? ? ? ? ? ?/* RTC int */ > + ? ? ? MPP10_UNUSED, > + ? ? ? MPP11_GPIO, ? ? ? ? ? ? /* PCI Int A */ > + ? ? ? MPP12_UNUSED, > + ? ? ? MPP13_GPIO, ? ? ? ? ? ? /* UPS on UART0 enable */ > + ? ? ? MPP14_GPIO, ? ? ? ? ? ? /* UPS low battery detection */ > + ? ? ? MPP15_UNUSED, > + ? ? ? MPP16_UART, ? ? ? ? ? ? /* UART1 RXD */ > + ? ? ? MPP17_UART, ? ? ? ? ? ? /* UART1 TXD */ > + ? ? ? MPP18_UART, ? ? ? ? ? ? /* UART1 CTSn */ > + ? ? ? MPP19_UART, ? ? ? ? ? ? /* UART1 RTSn */ > + ? ? ? 0, > ?}; > > ?static void __init tsp2_init(void) > diff --git a/arch/arm/mach-orion5x/ts209-setup.c b/arch/arm/mach-orion5x/ts209-setup.c > index 8bbd27e..a53c8b3 100644 > --- a/arch/arm/mach-orion5x/ts209-setup.c > +++ b/arch/arm/mach-orion5x/ts209-setup.c > @@ -244,28 +244,28 @@ static struct mv_sata_platform_data qnap_ts209_sata_data = { > > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode ts209_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_UNUSED }, > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* USB copy button */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* Load defaults button */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* GPIO RTC */ > - ? ? ? { ?4, MPP_UNUSED }, > - ? ? ? { ?5, MPP_UNUSED }, > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI Int A */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI Int B */ > - ? ? ? { ?8, MPP_UNUSED }, > - ? ? ? { ?9, MPP_UNUSED }, > - ? ? ? { 10, MPP_UNUSED }, > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_SATA_LED }, ? ? ? ? ? /* SATA 0 presence */ > - ? ? ? { 13, MPP_SATA_LED }, ? ? ? ? ? /* SATA 1 presence */ > - ? ? ? { 14, MPP_SATA_LED }, ? ? ? ? ? /* SATA 0 active */ > - ? ? ? { 15, MPP_SATA_LED }, ? ? ? ? ? /* SATA 1 active */ > - ? ? ? { 16, MPP_UART }, ? ? ? ? ? ? ? /* UART1 RXD */ > - ? ? ? { 17, MPP_UART }, ? ? ? ? ? ? ? /* UART1 TXD */ > - ? ? ? { 18, MPP_GPIO }, ? ? ? ? ? ? ? /* SW_RST */ > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 }, > +static unsigned int ts209_mpp_modes[] __initdata = { > + ? ? ? MPP0_UNUSED, > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* USB copy button */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* Load defaults button */ > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* GPIO RTC */ > + ? ? ? MPP4_UNUSED, > + ? ? ? MPP5_UNUSED, > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* PCI Int A */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* PCI Int B */ > + ? ? ? MPP8_UNUSED, > + ? ? ? MPP9_UNUSED, > + ? ? ? MPP10_UNUSED, > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_SATA_LED, ? ? ? ? /* SATA 0 presence */ > + ? ? ? MPP13_SATA_LED, ? ? ? ? /* SATA 1 presence */ > + ? ? ? MPP14_SATA_LED, ? ? ? ? /* SATA 0 active */ > + ? ? ? MPP15_SATA_LED, ? ? ? ? /* SATA 1 active */ > + ? ? ? MPP16_UART, ? ? ? ? ? ? /* UART1 RXD */ > + ? ? ? MPP17_UART, ? ? ? ? ? ? /* UART1 TXD */ > + ? ? ? MPP18_GPIO, ? ? ? ? ? ? /* SW_RST */ > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ?}; > > ?static void __init qnap_ts209_init(void) > diff --git a/arch/arm/mach-orion5x/ts409-setup.c b/arch/arm/mach-orion5x/ts409-setup.c > index 92f393f..366247f 100644 > --- a/arch/arm/mach-orion5x/ts409-setup.c > +++ b/arch/arm/mach-orion5x/ts409-setup.c > @@ -242,28 +242,28 @@ static struct platform_device qnap_ts409_button_device = { > ?/***************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode ts409_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_UNUSED }, > - ? ? ? { ?1, MPP_UNUSED }, > - ? ? ? { ?2, MPP_UNUSED }, > - ? ? ? { ?3, MPP_UNUSED }, > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* HDD 1 status */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* HDD 2 status */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* HDD 3 status */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* HDD 4 status */ > - ? ? ? { ?8, MPP_UNUSED }, > - ? ? ? { ?9, MPP_UNUSED }, > - ? ? ? { 10, MPP_GPIO }, ? ? ? ? ? ? ? /* RTC int */ > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_UNUSED }, > - ? ? ? { 13, MPP_UNUSED }, > - ? ? ? { 14, MPP_GPIO }, ? ? ? ? ? ? ? /* SW_RST */ > - ? ? ? { 15, MPP_GPIO }, ? ? ? ? ? ? ? /* USB copy button */ > - ? ? ? { 16, MPP_UART }, ? ? ? ? ? ? ? /* UART1 RXD */ > - ? ? ? { 17, MPP_UART }, ? ? ? ? ? ? ? /* UART1 TXD */ > - ? ? ? { 18, MPP_UNUSED }, > - ? ? ? { 19, MPP_UNUSED }, > - ? ? ? { -1 }, > +static unsigned int ts409_mpp_modes[] __initdata = { > + ? ? ? MPP0_UNUSED, > + ? ? ? MPP1_UNUSED, > + ? ? ? MPP2_UNUSED, > + ? ? ? MPP3_UNUSED, > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* HDD 1 status */ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* HDD 2 status */ > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* HDD 3 status */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* HDD 4 status */ > + ? ? ? MPP8_UNUSED, > + ? ? ? MPP9_UNUSED, > + ? ? ? MPP10_GPIO, ? ? ? ? ? ? /* RTC int */ > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_UNUSED, > + ? ? ? MPP13_UNUSED, > + ? ? ? MPP14_GPIO, ? ? ? ? ? ? /* SW_RST */ > + ? ? ? MPP15_GPIO, ? ? ? ? ? ? /* USB copy button */ > + ? ? ? MPP16_UART, ? ? ? ? ? ? /* UART1 RXD */ > + ? ? ? MPP17_UART, ? ? ? ? ? ? /* UART1 TXD */ > + ? ? ? MPP18_UNUSED, > + ? ? ? MPP19_UNUSED, > + ? ? ? 0, > ?}; > > ?static void __init qnap_ts409_init(void) > diff --git a/arch/arm/mach-orion5x/ts78xx-setup.c b/arch/arm/mach-orion5x/ts78xx-setup.c > index 8554707..8211fa6 100644 > --- a/arch/arm/mach-orion5x/ts78xx-setup.c > +++ b/arch/arm/mach-orion5x/ts78xx-setup.c > @@ -557,27 +557,27 @@ static struct kobj_attribute ts78xx_fpga_attr = > ?/***************************************************************************** > ?* General Setup > ?****************************************************************************/ > -static struct orion5x_mpp_mode ts78xx_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_UNUSED }, > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* JTAG Clock */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* JTAG Data In */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* Lat ECP2 256 FPGA - PB2B */ > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* JTAG Data Out */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* JTAG TMS */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* Lat ECP2 256 FPGA - PB31A_CLK4+ */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* Lat ECP2 256 FPGA - PB22B */ > - ? ? ? { ?8, MPP_UNUSED }, > - ? ? ? { ?9, MPP_UNUSED }, > - ? ? ? { 10, MPP_UNUSED }, > - ? ? ? { 11, MPP_UNUSED }, > - ? ? ? { 12, MPP_UNUSED }, > - ? ? ? { 13, MPP_UNUSED }, > - ? ? ? { 14, MPP_UNUSED }, > - ? ? ? { 15, MPP_UNUSED }, > - ? ? ? { 16, MPP_UART }, > - ? ? ? { 17, MPP_UART }, > - ? ? ? { 18, MPP_UART }, > - ? ? ? { 19, MPP_UART }, > +static unsigned int ts78xx_mpp_modes[] __initdata = { > + ? ? ? MPP0_UNUSED, > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* JTAG Clock */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* JTAG Data In */ > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* Lat ECP2 256 FPGA - PB2B */ > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* JTAG Data Out */ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* JTAG TMS */ > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* Lat ECP2 256 FPGA - PB31A_CLK4+ */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* Lat ECP2 256 FPGA - PB22B */ > + ? ? ? MPP8_UNUSED, > + ? ? ? MPP9_UNUSED, > + ? ? ? MPP10_UNUSED, > + ? ? ? MPP11_UNUSED, > + ? ? ? MPP12_UNUSED, > + ? ? ? MPP13_UNUSED, > + ? ? ? MPP14_UNUSED, > + ? ? ? MPP15_UNUSED, > + ? ? ? MPP16_UART, > + ? ? ? MPP17_UART, > + ? ? ? MPP18_UART, > + ? ? ? MPP19_UART, > ? ? ? ?/* > ? ? ? ? * MPP[20] PCI Clock Out 1 > ? ? ? ? * MPP[21] PCI Clock Out 0 > @@ -586,7 +586,7 @@ static struct orion5x_mpp_mode ts78xx_mpp_modes[] __initdata = { > ? ? ? ? * MPP[24] Unused > ? ? ? ? * MPP[25] Unused > ? ? ? ? */ > - ? ? ? { -1 }, > + ? ? ? 0, > ?}; > > ?static void __init ts78xx_init(void) > diff --git a/arch/arm/mach-orion5x/wnr854t-setup.c b/arch/arm/mach-orion5x/wnr854t-setup.c > index 4e5216b..444a1c7 100644 > --- a/arch/arm/mach-orion5x/wnr854t-setup.c > +++ b/arch/arm/mach-orion5x/wnr854t-setup.c > @@ -24,28 +24,28 @@ > ?#include "common.h" > ?#include "mpp.h" > > -static struct orion5x_mpp_mode wnr854t_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? ? ? ? ? /* Power LED green (0=on) */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* Reset Button (0=off) */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* Power LED blink (0=off) */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* WAN Status LED amber (0=off) */ > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI int */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* ??? */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* ??? */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* ??? */ > - ? ? ? { ?8, MPP_UNUSED }, ? ? ? ? ? ? /* ??? */ > - ? ? ? { ?9, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXERR */ > - ? ? ? { 10, MPP_UNUSED }, ? ? ? ? ? ? /* ??? */ > - ? ? ? { 11, MPP_UNUSED }, ? ? ? ? ? ? /* ??? */ > - ? ? ? { 12, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[4] */ > - ? ? ? { 13, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[5] */ > - ? ? ? { 14, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[6] */ > - ? ? ? { 15, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[7] */ > - ? ? ? { 16, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[4] */ > - ? ? ? { 17, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[5] */ > - ? ? ? { 18, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[6] */ > - ? ? ? { 19, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[7] */ > - ? ? ? { -1 }, > +static unsigned int wnr854t_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ? ? ? ? ?/* Power LED green (0=on) */ > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* Reset Button (0=off) */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* Power LED blink (0=off) */ > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* WAN Status LED amber (0=off) */ > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* PCI int */ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* ??? */ > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* ??? */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* ??? */ > + ? ? ? MPP8_UNUSED, ? ? ? ? ? ?/* ??? */ > + ? ? ? MPP9_GIGE, ? ? ? ? ? ? ?/* GE_RXERR */ > + ? ? ? MPP10_UNUSED, ? ? ? ? ? /* ??? */ > + ? ? ? MPP11_UNUSED, ? ? ? ? ? /* ??? */ > + ? ? ? MPP12_GIGE, ? ? ? ? ? ? /* GE_TXD[4] */ > + ? ? ? MPP13_GIGE, ? ? ? ? ? ? /* GE_TXD[5] */ > + ? ? ? MPP14_GIGE, ? ? ? ? ? ? /* GE_TXD[6] */ > + ? ? ? MPP15_GIGE, ? ? ? ? ? ? /* GE_TXD[7] */ > + ? ? ? MPP16_GIGE, ? ? ? ? ? ? /* GE_RXD[4] */ > + ? ? ? MPP17_GIGE, ? ? ? ? ? ? /* GE_RXD[5] */ > + ? ? ? MPP18_GIGE, ? ? ? ? ? ? /* GE_RXD[6] */ > + ? ? ? MPP19_GIGE, ? ? ? ? ? ? /* GE_RXD[7] */ > + ? ? ? 0, > ?}; > > ?/* > diff --git a/arch/arm/mach-orion5x/wrt350n-v2-setup.c b/arch/arm/mach-orion5x/wrt350n-v2-setup.c > index fab79d0..d1952be 100644 > --- a/arch/arm/mach-orion5x/wrt350n-v2-setup.c > +++ b/arch/arm/mach-orion5x/wrt350n-v2-setup.c > @@ -101,28 +101,28 @@ static struct platform_device wrt350n_v2_button_device = { > ?/* > ?* General setup > ?*/ > -static struct orion5x_mpp_mode wrt350n_v2_mpp_modes[] __initdata = { > - ? ? ? { ?0, MPP_GPIO }, ? ? ? ? ? ? ? /* Power LED green (0=on) */ > - ? ? ? { ?1, MPP_GPIO }, ? ? ? ? ? ? ? /* Security LED (0=on) */ > - ? ? ? { ?2, MPP_GPIO }, ? ? ? ? ? ? ? /* Internal Button (0=on) */ > - ? ? ? { ?3, MPP_GPIO }, ? ? ? ? ? ? ? /* Reset Button (0=on) */ > - ? ? ? { ?4, MPP_GPIO }, ? ? ? ? ? ? ? /* PCI int */ > - ? ? ? { ?5, MPP_GPIO }, ? ? ? ? ? ? ? /* Power LED orange (0=on) */ > - ? ? ? { ?6, MPP_GPIO }, ? ? ? ? ? ? ? /* USB LED (0=on) */ > - ? ? ? { ?7, MPP_GPIO }, ? ? ? ? ? ? ? /* Wireless LED (0=on) */ > - ? ? ? { ?8, MPP_UNUSED }, ? ? ? ? ? ? /* ??? */ > - ? ? ? { ?9, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXERR */ > - ? ? ? { 10, MPP_UNUSED }, ? ? ? ? ? ? /* ??? */ > - ? ? ? { 11, MPP_UNUSED }, ? ? ? ? ? ? /* ??? */ > - ? ? ? { 12, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[4] */ > - ? ? ? { 13, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[5] */ > - ? ? ? { 14, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[6] */ > - ? ? ? { 15, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_TXD[7] */ > - ? ? ? { 16, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[4] */ > - ? ? ? { 17, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[5] */ > - ? ? ? { 18, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[6] */ > - ? ? ? { 19, MPP_GIGE }, ? ? ? ? ? ? ? /* GE_RXD[7] */ > - ? ? ? { -1 }, > +static unsigned int wrt350n_v2_mpp_modes[] __initdata = { > + ? ? ? MPP0_GPIO, ? ? ? ? ? ? ?/* Power LED green (0=on) */ > + ? ? ? MPP1_GPIO, ? ? ? ? ? ? ?/* Security LED (0=on) */ > + ? ? ? MPP2_GPIO, ? ? ? ? ? ? ?/* Internal Button (0=on) */ > + ? ? ? MPP3_GPIO, ? ? ? ? ? ? ?/* Reset Button (0=on) */ > + ? ? ? MPP4_GPIO, ? ? ? ? ? ? ?/* PCI int */ > + ? ? ? MPP5_GPIO, ? ? ? ? ? ? ?/* Power LED orange (0=on) */ > + ? ? ? MPP6_GPIO, ? ? ? ? ? ? ?/* USB LED (0=on) */ > + ? ? ? MPP7_GPIO, ? ? ? ? ? ? ?/* Wireless LED (0=on) */ > + ? ? ? MPP8_UNUSED, ? ? ? ? ? ?/* ??? */ > + ? ? ? MPP9_GIGE, ? ? ? ? ? ? ?/* GE_RXERR */ > + ? ? ? MPP10_UNUSED, ? ? ? ? ? /* ??? */ > + ? ? ? MPP11_UNUSED, ? ? ? ? ? /* ??? */ > + ? ? ? MPP12_GIGE, ? ? ? ? ? ? /* GE_TXD[4] */ > + ? ? ? MPP13_GIGE, ? ? ? ? ? ? /* GE_TXD[5] */ > + ? ? ? MPP14_GIGE, ? ? ? ? ? ? /* GE_TXD[6] */ > + ? ? ? MPP15_GIGE, ? ? ? ? ? ? /* GE_TXD[7] */ > + ? ? ? MPP16_GIGE, ? ? ? ? ? ? /* GE_RXD[4] */ > + ? ? ? MPP17_GIGE, ? ? ? ? ? ? /* GE_RXD[5] */ > + ? ? ? MPP18_GIGE, ? ? ? ? ? ? /* GE_RXD[6] */ > + ? ? ? MPP19_GIGE, ? ? ? ? ? ? /* GE_RXD[7] */ > + ? ? ? 0, > ?}; > > ?/* > -- > 1.7.4.4 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel at lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel >