mirror of
https://github.com/torvalds/linux.git
synced 2024-11-07 04:32:03 +00:00
m68knommu: switch to GPIO init macros in ColdFire 527x init code
Modify the GPIO setup table to use the mcfgpio.h macros for table init. Simplifies code and reduces line count significantly. Signed-off-by: Greg Ungerer <gerg@uclinux.org> Acked-by: Steven King <sfking@fdwdc.com>
This commit is contained in:
parent
26b7c8270b
commit
174d2ca390
@ -22,579 +22,39 @@
|
||||
|
||||
static struct mcf_gpio_chip mcf_gpio_chips[] = {
|
||||
#if defined(CONFIG_M5271)
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "PIRQ",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value,
|
||||
.base = 1,
|
||||
.ngpio = 7,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFEPORT_EPDDR,
|
||||
.podr = (void __iomem *) MCFEPORT_EPDR,
|
||||
.ppdr = (void __iomem *) MCFEPORT_EPPDR,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "ADDR",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 13,
|
||||
.ngpio = 3,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_ADDR,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_ADDR,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_ADDR,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_ADDR,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_ADDR,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "DATAH",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 16,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_DATAH,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_DATAH,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_DATAH,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_DATAH,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_DATAH,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "DATAL",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 24,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_DATAL,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_DATAL,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_DATAL,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_DATAL,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_DATAL,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "BUSCTL",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 32,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_BUSCTL,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_BUSCTL,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_BUSCTL,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_BUSCTL,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_BUSCTL,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "BS",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 40,
|
||||
.ngpio = 4,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_BS,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_BS,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_BS,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_BS,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_BS,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "CS",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 49,
|
||||
.ngpio = 7,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_CS,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_CS,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_CS,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_CS,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_CS,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "SDRAM",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 56,
|
||||
.ngpio = 6,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_SDRAM,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_SDRAM,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_SDRAM,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_SDRAM,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_SDRAM,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "FECI2C",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 64,
|
||||
.ngpio = 4,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_FECI2C,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_FECI2C,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_FECI2C,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_FECI2C,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_FECI2C,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "UARTH",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 72,
|
||||
.ngpio = 2,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_UARTH,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_UARTH,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_UARTH,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_UARTH,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_UARTH,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "UARTL",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 80,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_UARTL,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_UARTL,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_UARTL,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_UARTL,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_UARTL,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "QSPI",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 88,
|
||||
.ngpio = 5,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_QSPI,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_QSPI,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_QSPI,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_QSPI,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_QSPI,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "TIMER",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 96,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_TIMER,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_TIMER,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_TIMER,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_TIMER,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_TIMER,
|
||||
},
|
||||
MCFGPS(PIRQ, 1, 7, MCFEPORT_EPDDR, MCFEPORT_EPDR, MCFEPORT_EPPDR),
|
||||
MCFGPF(ADDR, 13, 3),
|
||||
MCFGPF(DATAH, 16, 8),
|
||||
MCFGPF(DATAL, 24, 8),
|
||||
MCFGPF(BUSCTL, 32, 8),
|
||||
MCFGPF(BS, 40, 4),
|
||||
MCFGPF(CS, 49, 7),
|
||||
MCFGPF(SDRAM, 56, 6),
|
||||
MCFGPF(FECI2C, 64, 4),
|
||||
MCFGPF(UARTH, 72, 2),
|
||||
MCFGPF(UARTL, 80, 8),
|
||||
MCFGPF(QSPI, 88, 5),
|
||||
MCFGPF(TIMER, 96, 8),
|
||||
#elif defined(CONFIG_M5275)
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "PIRQ",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value,
|
||||
.base = 1,
|
||||
.ngpio = 7,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFEPORT_EPDDR,
|
||||
.podr = (void __iomem *) MCFEPORT_EPDR,
|
||||
.ppdr = (void __iomem *) MCFEPORT_EPPDR,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "BUSCTL",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 8,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_BUSCTL,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_BUSCTL,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_BUSCTL,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_BUSCTL,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_BUSCTL,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "ADDR",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 21,
|
||||
.ngpio = 3,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_ADDR,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_ADDR,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_ADDR,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_ADDR,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_ADDR,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "CS",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 25,
|
||||
.ngpio = 7,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_CS,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_CS,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_CS,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_CS,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_CS,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "FEC0H",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 32,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_FEC0H,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_FEC0H,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_FEC0H,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_FEC0H,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_FEC0H,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "FEC0L",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 40,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_FEC0L,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_FEC0L,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_FEC0L,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_FEC0L,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_FEC0L,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "FECI2C",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 48,
|
||||
.ngpio = 6,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_FECI2C,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_FECI2C,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_FECI2C,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_FECI2C,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_FECI2C,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "QSPI",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 56,
|
||||
.ngpio = 7,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_QSPI,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_QSPI,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_QSPI,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_QSPI,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_QSPI,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "SDRAM",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 64,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_SDRAM,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_SDRAM,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_SDRAM,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_SDRAM,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_SDRAM,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "TIMERH",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 72,
|
||||
.ngpio = 4,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_TIMERH,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_TIMERH,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_TIMERH,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_TIMERH,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_TIMERH,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "TIMERL",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 80,
|
||||
.ngpio = 4,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_TIMERL,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_TIMERL,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_TIMERL,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_TIMERL,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_TIMERL,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "UARTL",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 88,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_UARTL,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_UARTL,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_UARTL,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_UARTL,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_UARTL,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "FEC1H",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 96,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_FEC1H,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_FEC1H,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_FEC1H,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_FEC1H,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_FEC1H,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "FEC1L",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 104,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_FEC1L,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_FEC1L,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_FEC1L,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_FEC1L,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_FEC1L,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "BS",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 114,
|
||||
.ngpio = 2,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_BS,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_BS,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_BS,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_BS,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_BS,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "IRQ",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 121,
|
||||
.ngpio = 7,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_IRQ,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_IRQ,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_IRQ,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_IRQ,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_IRQ,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "USBH",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 128,
|
||||
.ngpio = 1,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_USBH,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_USBH,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_USBH,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_USBH,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_USBH,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "USBL",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 136,
|
||||
.ngpio = 8,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_USBL,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_USBL,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_USBL,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_USBL,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_USBL,
|
||||
},
|
||||
{
|
||||
.gpio_chip = {
|
||||
.label = "UARTH",
|
||||
.request = mcf_gpio_request,
|
||||
.free = mcf_gpio_free,
|
||||
.direction_input = mcf_gpio_direction_input,
|
||||
.direction_output = mcf_gpio_direction_output,
|
||||
.get = mcf_gpio_get_value,
|
||||
.set = mcf_gpio_set_value_fast,
|
||||
.base = 144,
|
||||
.ngpio = 4,
|
||||
},
|
||||
.pddr = (void __iomem *) MCFGPIO_PDDR_UARTH,
|
||||
.podr = (void __iomem *) MCFGPIO_PODR_UARTH,
|
||||
.ppdr = (void __iomem *) MCFGPIO_PPDSDR_UARTH,
|
||||
.setr = (void __iomem *) MCFGPIO_PPDSDR_UARTH,
|
||||
.clrr = (void __iomem *) MCFGPIO_PCLRR_UARTH,
|
||||
},
|
||||
MCFGPS(PIRQ, 1, 7, MCFEPORT_EPDDR, MCFEPORT_EPDR, MCFEPORT_EPPDR),
|
||||
MCFGPF(BUSCTL, 8, 8),
|
||||
MCFGPF(ADDR, 21, 3),
|
||||
MCFGPF(CS, 25, 7),
|
||||
MCFGPF(FEC0H, 32, 8),
|
||||
MCFGPF(FEC0L, 40, 8),
|
||||
MCFGPF(FECI2C, 48, 6),
|
||||
MCFGPF(QSPI, 56, 7),
|
||||
MCFGPF(SDRAM, 64, 8),
|
||||
MCFGPF(TIMERH, 72, 4),
|
||||
MCFGPF(TIMERL, 80, 4),
|
||||
MCFGPF(UARTL, 88, 8),
|
||||
MCFGPF(FEC1H, 96, 8),
|
||||
MCFGPF(FEC1L, 104, 8),
|
||||
MCFGPF(BS, 114, 2),
|
||||
MCFGPF(IRQ, 121, 7),
|
||||
MCFGPF(USBH, 128, 1),
|
||||
MCFGPF(USBL, 136, 8),
|
||||
MCFGPF(UARTH, 144, 4),
|
||||
#endif
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user