|
|
|
@ -74,6 +74,8 @@ static struct led_desc led_table[15] = { |
|
|
|
|
|
|
|
|
|
static struct adm5120_gpio_line adm5120_gpio_map[ADM5120_GPIO_COUNT]; |
|
|
|
|
|
|
|
|
|
static u32 gpio_conf2; |
|
|
|
|
|
|
|
|
|
/*-------------------------------------------------------------------------*/ |
|
|
|
|
|
|
|
|
|
static inline int gpio_is_invalid(unsigned gpio) |
|
|
|
@ -340,11 +342,8 @@ EXPORT_SYMBOL(adm5120_irq_to_gpio); |
|
|
|
|
|
|
|
|
|
void __init adm5120_gpio_csx0_enable(void) |
|
|
|
|
{ |
|
|
|
|
u32 t; |
|
|
|
|
|
|
|
|
|
t = SW_READ_REG(GPIO_CONF2); |
|
|
|
|
t |= GPIO_CONF2_CSX0; |
|
|
|
|
SW_WRITE_REG(GPIO_CONF2, t); |
|
|
|
|
gpio_conf2 |= GPIO_CONF2_CSX0; |
|
|
|
|
SW_WRITE_REG(GPIO_CONF2, gpio_conf2); |
|
|
|
|
|
|
|
|
|
adm5120_gpio_map[ADM5120_GPIO_PIN1].flags &= ~GPIO_FLAG_VALID; |
|
|
|
|
adm5120_gpio_map[ADM5120_GPIO_PIN2].irq = ADM5120_IRQ_GPIO2; |
|
|
|
@ -352,11 +351,8 @@ void __init adm5120_gpio_csx0_enable(void) |
|
|
|
|
|
|
|
|
|
void __init adm5120_gpio_csx1_enable(void) |
|
|
|
|
{ |
|
|
|
|
u32 t; |
|
|
|
|
|
|
|
|
|
t = SW_READ_REG(GPIO_CONF2); |
|
|
|
|
t |= GPIO_CONF2_CSX1; |
|
|
|
|
SW_WRITE_REG(GPIO_CONF2, t); |
|
|
|
|
gpio_conf2 |= GPIO_CONF2_CSX1; |
|
|
|
|
SW_WRITE_REG(GPIO_CONF2, gpio_conf2); |
|
|
|
|
|
|
|
|
|
adm5120_gpio_map[ADM5120_GPIO_PIN3].flags &= ~GPIO_FLAG_VALID; |
|
|
|
|
if (adm5120_package_bga()) |
|
|
|
@ -365,11 +361,8 @@ void __init adm5120_gpio_csx1_enable(void) |
|
|
|
|
|
|
|
|
|
void __init adm5120_gpio_ew_enable(void) |
|
|
|
|
{ |
|
|
|
|
u32 t; |
|
|
|
|
|
|
|
|
|
t = SW_READ_REG(GPIO_CONF2); |
|
|
|
|
t |= GPIO_CONF2_EW; |
|
|
|
|
SW_WRITE_REG(GPIO_CONF2, t); |
|
|
|
|
gpio_conf2 |= GPIO_CONF2_EW; |
|
|
|
|
SW_WRITE_REG(GPIO_CONF2, gpio_conf2); |
|
|
|
|
|
|
|
|
|
adm5120_gpio_map[ADM5120_GPIO_PIN0].flags &= ~GPIO_FLAG_VALID; |
|
|
|
|
} |
|
|
|
@ -378,7 +371,8 @@ void __init adm5120_gpio_init(void) |
|
|
|
|
{ |
|
|
|
|
int i; |
|
|
|
|
|
|
|
|
|
SW_WRITE_REG(GPIO_CONF2, 0); |
|
|
|
|
gpio_conf2 = 0; |
|
|
|
|
SW_WRITE_REG(GPIO_CONF2, gpio_conf2); |
|
|
|
|
|
|
|
|
|
for (i = 0; i < ADM5120_GPIO_COUNT; i++) |
|
|
|
|
adm5120_gpio_map[i].flags = GPIO_FLAG_VALID; |
|
|
|
|