Skip to content

Commit

Permalink
Blackfin: net2272: move pin setup to boards files
Browse files Browse the repository at this point in the history
Signed-off-by: Mike Frysinger <[email protected]>
  • Loading branch information
vapier committed Jul 23, 2011
1 parent c6cb13f commit 9be8631
Show file tree
Hide file tree
Showing 8 changed files with 192 additions and 0 deletions.
3 changes: 3 additions & 0 deletions arch/blackfin/mach-bf527/boards/ezkit.c
Original file line number Diff line number Diff line change
Expand Up @@ -408,6 +408,9 @@ static struct resource net2272_bfin_resources[] = {
.start = 0x20300000,
.end = 0x20300000 + 0x100,
.flags = IORESOURCE_MEM,
}, {
.start = 1,
.flags = IORESOURCE_BUS,
}, {
.start = IRQ_PF7,
.end = IRQ_PF7,
Expand Down
41 changes: 41 additions & 0 deletions arch/blackfin/mach-bf533/boards/stamp.c
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,9 @@ static struct resource net2272_bfin_resources[] = {
.start = 0x20300000,
.end = 0x20300000 + 0x100,
.flags = IORESOURCE_MEM,
}, {
.start = 1,
.flags = IORESOURCE_BUS,
}, {
.start = IRQ_PF10,
.end = IRQ_PF10,
Expand Down Expand Up @@ -659,6 +662,41 @@ static struct platform_device *stamp_devices[] __initdata = {
#endif
};

static int __init net2272_init(void)
{
#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE)
int ret;

/* Set PF0 to 0, PF1 to 1 make /AMS3 work properly */
ret = gpio_request(GPIO_PF0, "net2272");
if (ret)
return ret;

ret = gpio_request(GPIO_PF1, "net2272");
if (ret) {
gpio_free(GPIO_PF0);
return ret;
}

ret = gpio_request(GPIO_PF11, "net2272");
if (ret) {
gpio_free(GPIO_PF0);
gpio_free(GPIO_PF1);
return ret;
}

gpio_direction_output(GPIO_PF0, 0);
gpio_direction_output(GPIO_PF1, 1);

/* Reset the USB chip */
gpio_direction_output(GPIO_PF11, 0);
mdelay(2);
gpio_set_value(GPIO_PF11, 1);
#endif

return 0;
}

static int __init stamp_init(void)
{
int ret;
Expand All @@ -685,6 +723,9 @@ static int __init stamp_init(void)
}
#endif

if (net2272_init())
pr_warning("unable to configure net2272; it probably won't work\n");

spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));
return 0;
}
Expand Down
22 changes: 22 additions & 0 deletions arch/blackfin/mach-bf537/boards/cm_bf537e.c
Original file line number Diff line number Diff line change
Expand Up @@ -766,6 +766,24 @@ static struct platform_device *cm_bf537e_devices[] __initdata = {
#endif
};

static int __init net2272_init(void)
{
#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE)
int ret;

ret = gpio_request(GPIO_PG14, "net2272");
if (ret)
return ret;

/* Reset USB Chip, PG14 */
gpio_direction_output(GPIO_PG14, 0);
mdelay(2);
gpio_set_value(GPIO_PG14, 1);
#endif

return 0;
}

static int __init cm_bf537e_init(void)
{
printk(KERN_INFO "%s(): registering device resources\n", __func__);
Expand All @@ -777,6 +795,10 @@ static int __init cm_bf537e_init(void)
#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
irq_set_status_flags(PATA_INT, IRQ_NOAUTOEN);
#endif

if (net2272_init())
pr_warning("unable to configure net2272; it probably won't work\n");

return 0;
}

Expand Down
34 changes: 34 additions & 0 deletions arch/blackfin/mach-bf537/boards/cm_bf537u.c
Original file line number Diff line number Diff line change
Expand Up @@ -731,6 +731,36 @@ static struct platform_device *cm_bf537u_devices[] __initdata = {
#endif
};

static int __init net2272_init(void)
{
#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE)
int ret;

ret = gpio_request(GPIO_PH15, driver_name);
if (ret)
return ret;

ret = gpio_request(GPIO_PH13, "net2272");
if (ret) {
gpio_free(GPIO_PH15);
return ret;
}

/* Set PH15 Low make /AMS2 work properly */
gpio_direction_output(GPIO_PH15, 0);

/* enable CLKBUF output */
bfin_write_VR_CTL(bfin_read_VR_CTL() | CLKBUFOE);

/* Reset the USB chip */
gpio_direction_output(GPIO_PH13, 0);
mdelay(2);
gpio_set_value(GPIO_PH13, 1);
#endif

return 0;
}

static int __init cm_bf537u_init(void)
{
printk(KERN_INFO "%s(): registering device resources\n", __func__);
Expand All @@ -742,6 +772,10 @@ static int __init cm_bf537u_init(void)
#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
irq_set_status_flags(PATA_INT, IRQ_NOAUTOEN);
#endif

if (net2272_init())
pr_warning("unable to configure net2272; it probably won't work\n");

return 0;
}

Expand Down
24 changes: 24 additions & 0 deletions arch/blackfin/mach-bf537/boards/stamp.c
Original file line number Diff line number Diff line change
Expand Up @@ -366,6 +366,9 @@ static struct resource net2272_bfin_resources[] = {
.start = 0x20300000,
.end = 0x20300000 + 0x100,
.flags = IORESOURCE_MEM,
}, {
.start = 1,
.flags = IORESOURCE_BUS,
}, {
.start = IRQ_PF7,
.end = IRQ_PF7,
Expand Down Expand Up @@ -2916,6 +2919,24 @@ static struct platform_device *stamp_devices[] __initdata = {
#endif
};

static int __init net2272_init(void)
{
#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE)
int ret;

ret = gpio_request(GPIO_PF6, "net2272");
if (ret)
return ret;

/* Reset the USB chip */
gpio_direction_output(GPIO_PF6, 0);
mdelay(2);
gpio_set_value(GPIO_PF6, 1);
#endif

return 0;
}

static int __init stamp_init(void)
{
printk(KERN_INFO "%s(): registering device resources\n", __func__);
Expand All @@ -2926,6 +2947,9 @@ static int __init stamp_init(void)
ARRAY_SIZE(bfin_i2c_board_info));
spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));

if (net2272_init())
pr_warning("unable to configure net2272; it probably won't work\n");

return 0;
}

Expand Down
22 changes: 22 additions & 0 deletions arch/blackfin/mach-bf537/boards/tcm_bf537.c
Original file line number Diff line number Diff line change
Expand Up @@ -733,6 +733,24 @@ static struct platform_device *cm_bf537_devices[] __initdata = {
#endif
};

static int __init net2272_init(void)
{
#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE)
int ret;

ret = gpio_request(GPIO_PG14, "net2272");
if (ret)
return ret;

/* Reset USB Chip, PG14 */
gpio_direction_output(GPIO_PG14, 0);
mdelay(2);
gpio_set_value(GPIO_PG14, 1);
#endif

return 0;
}

static int __init tcm_bf537_init(void)
{
printk(KERN_INFO "%s(): registering device resources\n", __func__);
Expand All @@ -744,6 +762,10 @@ static int __init tcm_bf537_init(void)
#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
irq_set_status_flags(PATA_INT, IRQ_NOAUTOEN);
#endif

if (net2272_init())
pr_warning("unable to configure net2272; it probably won't work\n");

return 0;
}

Expand Down
22 changes: 22 additions & 0 deletions arch/blackfin/mach-bf561/boards/cm_bf561.c
Original file line number Diff line number Diff line change
Expand Up @@ -532,6 +532,24 @@ static struct platform_device *cm_bf561_devices[] __initdata = {
#endif
};

static int __init net2272_init(void)
{
#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE)
int ret;

ret = gpio_request(GPIO_PF46, "net2272");
if (ret)
return ret;

/* Reset USB Chip, PF46 */
gpio_direction_output(GPIO_PF46, 0);
mdelay(2);
gpio_set_value(GPIO_PF46, 1);
#endif

return 0;
}

static int __init cm_bf561_init(void)
{
printk(KERN_INFO "%s(): registering device resources\n", __func__);
Expand All @@ -543,6 +561,10 @@ static int __init cm_bf561_init(void)
#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
irq_set_status_flags(PATA_INT, IRQ_NOAUTOEN);
#endif

if (net2272_init())
pr_warning("unable to configure net2272; it probably won't work\n");

return 0;
}

Expand Down
24 changes: 24 additions & 0 deletions arch/blackfin/mach-bf561/boards/ezkit.c
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,9 @@ static struct resource net2272_bfin_resources[] = {
.start = 0x2C000000,
.end = 0x2C000000 + 0x7F,
.flags = IORESOURCE_MEM,
}, {
.start = 1,
.flags = IORESOURCE_BUS,
}, {
.start = IRQ_PF10,
.end = IRQ_PF10,
Expand Down Expand Up @@ -516,6 +519,24 @@ static struct platform_device *ezkit_devices[] __initdata = {
#endif
};

static int __init net2272_init(void)
{
#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE)
int ret;

ret = gpio_request(GPIO_PF11, "net2272");
if (ret)
return ret;

/* Reset the USB chip */
gpio_direction_output(GPIO_PF11, 0);
mdelay(2);
gpio_set_value(GPIO_PF11, 1);
#endif

return 0;
}

static int __init ezkit_init(void)
{
int ret;
Expand All @@ -542,6 +563,9 @@ static int __init ezkit_init(void)
udelay(400);
#endif

if (net2272_init())
pr_warning("unable to configure net2272; it probably won't work\n");

spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));
return 0;
}
Expand Down

0 comments on commit 9be8631

Please sign in to comment.