static void __init ek_add_device_spi(void) { if (machine_is_usb_a9263()) at91_add_device_spi(usb_a9263_spi_devices, ARRAY_SIZE(usb_a9263_spi_devices)); else if (machine_is_usb_a9g20()) at91_add_device_spi(usb_a9g20_spi_devices, ARRAY_SIZE(usb_a9g20_spi_devices)); }
static void usb_a9260_add_spi(void) { if (machine_is_usb_a9263()) { spi_register_board_info(usb_a9263_spi_devices, ARRAY_SIZE(usb_a9263_spi_devices)); at91_add_device_spi(0, &spi_a9263_pdata); } else if (machine_is_usb_a9g20() && at91sam9260_is_low_power_sdram()) { spi_register_board_info(usb_a9g20_spi_devices, ARRAY_SIZE(usb_a9g20_spi_devices)); at91_add_device_spi(1, &spi_a9g20_pdata); } }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB HS Host */ at91_add_device_usbh_ohci(&ek_usbh_hs_data); at91_add_device_usbh_ehci(&ek_usbh_hs_data); /* USB HS Device */ at91_add_device_usba(&ek_usba_udc_data); /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* Ethernet */ at91_add_device_eth(&ek_macb_data); /* NAND */ ek_add_device_nand(); /* I2C */ at91_add_device_i2c(0, NULL, 0); /* LCD Controller */ at91_add_device_lcdc(&ek_lcdc_data); /* Touch Screen */ at91_add_device_tsadcc(&ek_tsadcc_data); /* Push Buttons */ ek_add_device_buttons(); /* AC97 */ at91_add_device_ac97(&ek_ac97_data); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); at91_pwm_leds(ek_pwm_led, ARRAY_SIZE(ek_pwm_led)); }
static void __init dk_board_init(void) { /* Serial */ at91_add_device_serial(); /* Ethernet */ at91_add_device_eth(&dk_eth_data); /* USB Host */ at91_add_device_usbh(&dk_usbh_data); /* USB Device */ at91_add_device_udc(&dk_udc_data); at91_set_multi_drive(dk_udc_data.pullup_pin, 1); /* pullup_pin is connected to reset */ /* Compact Flash */ at91_add_device_cf(&dk_cf_data); /* I2C */ at91_add_device_i2c(dk_i2c_devices, ARRAY_SIZE(dk_i2c_devices)); /* SPI */ at91_add_device_spi(dk_spi_devices, ARRAY_SIZE(dk_spi_devices)); #ifdef CONFIG_MTD_AT91_DATAFLASH_CARD /* DataFlash card */ at91_set_gpio_output(AT91_PIN_PB7, 0); #else /* MMC */ at91_set_gpio_output(AT91_PIN_PB7, 1); /* this MMC card slot can optionally use SPI signaling (CS3). */ at91_add_device_mmc(0, &dk_mmc_data); #endif /* NAND */ at91_add_device_nand(&dk_nand_data); /* NOR Flash */ platform_device_register(&dk_flash); /* LEDs */ at91_gpio_leds(dk_leds, ARRAY_SIZE(dk_leds)); /* VGA */ // dk_add_device_video(); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&ek_usbh_data); /* USB Device */ at91_add_device_udc(&ek_udc_data); /* I2C */ at91_add_device_i2c(NULL, 0); /* NAND */ ek_add_device_nand(); /* DM9000 ethernet */ ek_add_device_dm9000(); /* spi0 and mmc/sd share the same PIO pins */ #if defined(CONFIG_SPI_ATMEL) || defined(CONFIG_SPI_ATMEL_MODULE) /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* Touchscreen */ ek_add_device_ts(); /* SSC (to AT73C213) */ at73c213_set_clk(&at73c213_data); at91_add_device_ssc(AT91SAM9261_ID_SSC1, ATMEL_SSC_TX); #else /* MMC */ at91_add_device_mmc(0, &ek_mmc_data); #endif /* LCD Controller */ at91_add_device_lcdc(&ek_lcdc_data); /* Push Buttons */ ek_add_device_buttons(); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); }
static void __init ek_board_init(void) { at91_add_device_serial(); at91_add_device_usbh(&ek_usbh_data); at91_add_device_udc(&ek_udc_data); at91_set_gpio_output(AT91_PIN_PE20, 1); at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); ek_add_device_ts(); at91_add_device_mmc(1, &ek_mmc_data); at91_add_device_eth(&ek_macb_data); ek_add_device_nand(); at91_add_device_i2c(ek_i2c_devices, ARRAY_SIZE(ek_i2c_devices)); at91_add_device_lcdc(&ek_lcdc_data); ek_add_device_buttons(); at91_add_device_ac97(&ek_ac97_data); at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); at91_pwm_leds(ek_pwm_led, ARRAY_SIZE(ek_pwm_led)); at91_add_device_can(&ek_can_data); }
static void __init csb337_board_init(void) { /* Serial */ at91_add_device_serial(); /* Ethernet */ at91_add_device_eth(&csb337_eth_data); /* USB Host */ at91_add_device_usbh(&csb337_usbh_data); /* USB Device */ at91_add_device_udc(&csb337_udc_data); /* I2C */ at91_add_device_i2c(csb337_i2c_devices, ARRAY_SIZE(csb337_i2c_devices)); /* Compact Flash */ at91_set_gpio_input(AT91_PIN_PB22, 1); /* IOIS16 */ at91_add_device_cf(&csb337_cf_data); /* SPI */ at91_add_device_spi(csb337_spi_devices, ARRAY_SIZE(csb337_spi_devices)); /* MMC */ at91_add_device_mmc(0, &csb337_mmc_data); /* NOR flash */ platform_device_register(&csb_flash); /* LEDs */ at91_gpio_leds(csb_leds, ARRAY_SIZE(csb_leds)); /* Switches on CSB300 */ csb300_add_device_buttons(); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* Ethernet */ at91_add_device_eth(&ek_eth_data); /* USB Host */ at91_add_device_usbh(&ek_usbh_data); /* USB Device */ at91_add_device_udc(&ek_udc_data); at91_set_multi_drive(ek_udc_data.pullup_pin, 1); /* pullup_pin is connected to reset */ /* I2C */ at91_add_device_i2c(); /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); #ifdef CONFIG_MTD_AT91_DATAFLASH_CARD /* DataFlash card */ at91_set_gpio_output(AT91_PIN_PB22, 0); #else /* MMC */ at91_set_gpio_output(AT91_PIN_PB22, 1); /* this MMC card slot can optionally use SPI signaling (CS3). */ at91_add_device_mmc(&ek_mmc_data); #endif /* VGA */ // ek_add_device_video(); }
static void __init yl9200_board_init(void) { /* Serial */ at91_add_device_serial(); /* Ethernet */ at91_add_device_eth(&yl9200_eth_data); /* USB Host */ at91_add_device_usbh(&yl9200_usbh_data); /* USB Device */ at91_add_device_udc(&yl9200_udc_data); /* I2C */ at91_add_device_i2c(yl9200_i2c_devices, ARRAY_SIZE(yl9200_i2c_devices)); /* MMC */ at91_add_device_mmc(0, &yl9200_mmc_data); /* NAND */ at91_add_device_nand(&yl9200_nand_data); /* NOR Flash */ platform_device_register(&yl9200_flash); #if defined(CONFIG_SPI_ATMEL) || defined(CONFIG_SPI_ATMEL_MODULE) /* SPI */ at91_add_device_spi(yl9200_spi_devices, ARRAY_SIZE(yl9200_spi_devices)); /* Touchscreen */ yl9200_add_device_ts(); #endif /* LEDs. */ at91_gpio_leds(yl9200_leds, ARRAY_SIZE(yl9200_leds)); /* Push Buttons */ yl9200_add_device_buttons(); /* VGA */ yl9200_add_device_video(); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB HS */ at91_add_device_usba(&ek_usba_udc_data); /* I2C */ at91_add_device_i2c(NULL, 0); /* NAND */ ek_add_device_nand(); /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* MMC */ at91_add_device_mmc(0, &ek_mmc_data); /* LCD Controller */ at91_add_device_lcdc(&ek_lcdc_data); /* AC97 */ at91_add_device_ac97(&ek_ac97_data); /* Touch Screen Controller */ at91_add_device_tsadcc(&ek_tsadcc_data); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); /* Push Buttons */ ek_add_device_buttons(); }
static void __init homematic_board_init(void) { /* Serial */ at91_add_device_serial(); /* Ethernet */ at91_add_device_eth(&homematic_eth_data); /* USB Host */ at91_add_device_usbh(&homematic_usbh_data); /* USB Device */ at91_add_device_udc(&homematic_udc_data); at91_set_multi_drive(homematic_udc_data.pullup_pin, 1); /* pullup_pin is connected to reset */ /* I2C */ at91_add_device_i2c(NULL, 0); /* SPI */ at91_add_device_spi(homematic_spi_devices, ARRAY_SIZE(homematic_spi_devices)); #ifdef CONFIG_MTD_AT91_DATAFLASH_CARD /* DataFlash card */ at91_set_gpio_output(AT91_PIN_PB7, 0); #else /* MMC */ at91_set_gpio_output(AT91_PIN_PB7, 1); /* this MMC card slot can optionally use SPI signaling (CS3). */ at91_add_device_mmc(0, &homematic_mmc_data); #endif /* NAND */ at91_add_device_nand(&homematic_nand_data); }
static void __init afeb9260_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&afeb9260_usbh_data); /* USB Device */ at91_add_device_udc(&afeb9260_udc_data); /* SPI */ at91_add_device_spi(afeb9260_spi_devices, ARRAY_SIZE(afeb9260_spi_devices)); /* NAND */ at91_add_device_nand(&afeb9260_nand_data); /* Ethernet */ at91_add_device_eth(&afeb9260_macb_data); /* Standard function's pin assignments are not * appropriate for us and generic code provide * no API to configure these pins any other way */ at91_set_B_periph(AT91_PIN_PA10, 0); /* ETX2 */ at91_set_B_periph(AT91_PIN_PA11, 0); /* ETX3 */ /* MMC */ at91_add_device_mmc(0, &afeb9260_mmc_data); /* I2C */ at91_add_device_i2c(afeb9260_i2c_devices, ARRAY_SIZE(afeb9260_i2c_devices)); /* Audio */ at91_add_device_ssc(AT91SAM9260_ID_SSC, ATMEL_SSC_TX); }
static void __init ecb_at91board_init(void) { /* Serial */ /* DBGU on ttyS0. (Rx & Tx only) */ at91_register_uart(0, 0, 0); /* USART0 on ttyS1. (Rx & Tx only) */ at91_register_uart(AT91RM9200_ID_US0, 1, 0); at91_add_device_serial(); /* Ethernet */ at91_add_device_eth(&ecb_at91eth_data); /* USB Host */ at91_add_device_usbh(&ecb_at91usbh_data); /* I2C */ at91_add_device_i2c(NULL, 0); /* MMC */ at91_add_device_mci(0, &ecbat91_mci0_data); /* SPI */ at91_add_device_spi(ecb_at91spi_devices, ARRAY_SIZE(ecb_at91spi_devices)); /* LEDs */ at91_gpio_leds(ecb_leds, ARRAY_SIZE(ecb_leds)); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&ek_usbh_data); /* USB Device */ at91_add_device_udc(&ek_udc_data); /* SPI */ at91_set_gpio_output(AT91_PIN_PE20, 1); /* select spi0 clock */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* Touchscreen */ ek_add_device_ts(); /* MMC */ at91_add_device_mmc(1, &ek_mmc_data); /* Ethernet */ at91_add_device_eth(&ek_macb_data); /* NAND */ at91_add_device_nand(&ek_nand_data); /* I2C */ at91_add_device_i2c(NULL, 0); /* LCD Controller */ at91_add_device_lcdc(&ek_lcdc_data); /* Push Buttons */ ek_add_device_buttons(); /* AC97 */ at91_add_device_ac97(&ek_ac97_data); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); /* shutdown controller, wakeup button (5 msec low) */ at91_sys_write(AT91_SHDW_MR, AT91_SHDW_CPTWK0_(10) | AT91_SHDW_WKMODE0_LOW | AT91_SHDW_RTTWKEN); }
static void __init kb9202_board_init(void) { /* Serial */ /* DBGU on ttyS0. (Rx & Tx only) */ at91_register_uart(0, 0, 0); /* USART0 on ttyS1 (Rx & Tx only) */ at91_register_uart(AT91RM9200_ID_US0, 1, 0); /* USART1 on ttyS2 (Rx & Tx only) - IRDA (optional) */ at91_register_uart(AT91RM9200_ID_US1, 2, 0); /* USART3 on ttyS3 (Rx, Tx, CTS, RTS) - RS485 (optional) */ at91_register_uart(AT91RM9200_ID_US3, 3, ATMEL_UART_CTS | ATMEL_UART_RTS); at91_add_device_serial(); /* Ethernet */ at91_add_device_eth(&kb9202_eth_data); /* USB Host */ at91_add_device_usbh(&kb9202_usbh_data); /* USB Device */ at91_add_device_udc(&kb9202_udc_data); /* MMC */ at91_add_device_mci(0, &kb9202_mci0_data); /* I2C */ at91_add_device_i2c(NULL, 0); /* SPI */ at91_add_device_spi(NULL, 0); /* NAND */ at91_add_device_nand(&kb9202_nand_data); /* LEDs */ at91_gpio_leds(kb9202_leds, ARRAY_SIZE(kb9202_leds)); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&ek_usbh_data); /* USB Device */ at91_add_device_udc(&ek_udc_data); /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* NAND */ ek_add_device_nand(); /* Ethernet */ at91_add_device_eth(&ek_macb_data); /* MMC */ at91_add_device_mmc(0, &ek_mmc_data); /* I2C */ at91_add_device_i2c(ek_i2c_devices, ARRAY_SIZE(ek_i2c_devices)); /* Compact Flash */ at91_add_device_cf(&ek_cf_data); /* SSC (to AT73C213) */ at73c213_set_clk(&at73c213_data); at91_add_device_ssc(AT91SAM9260_ID_SSC, ATMEL_SSC_TX); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); /* Push Buttons */ ek_add_device_buttons(); /* shutdown controller, wakeup button (5 msec low) */ at91_sys_write(AT91_SHDW_MR, AT91_SHDW_CPTWK0_(10) | AT91_SHDW_WKMODE0_LOW | AT91_SHDW_RTTWKEN); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&ek_usbh_data); /* USB Device */ at91_add_device_udc(&ek_udc_data); /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* NAND */ ek_add_device_nand(); /* Ethernet */ at91_add_device_eth(&ek_macb_data); /* MMC */ at91_add_device_mmc(0, &ek_mmc_data); /* I2C */ at91_add_device_i2c(ek_i2c_devices, ARRAY_SIZE(ek_i2c_devices)); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); /* Push Buttons */ ek_add_device_buttons(); /* PCK0 provides MCLK to the WM8731 */ at91_set_B_periph(AT91_PIN_PC1, 0); /* SSC (for WM8731) */ at91_add_device_ssc(AT91SAM9260_ID_SSC, ATMEL_SSC_TX); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&ek_usbh_data); /* USB Device */ at91_add_device_udc(&ek_udc_data); /* SPI */ at91_set_gpio_output(AT91_PIN_PE20, 1); /* select spi0 clock */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* Touchscreen */ ek_add_device_ts(); /* MMC */ at91_add_device_mmc(1, &ek_mmc_data); /* Ethernet */ at91_add_device_eth(&ek_macb_data); /* NAND */ ek_add_device_nand(); /* I2C */ at91_add_device_i2c(ek_i2c_devices, ARRAY_SIZE(ek_i2c_devices)); /* LCD Controller */ at91_add_device_lcdc(&ek_lcdc_data); /* Push Buttons */ ek_add_device_buttons(); /* AC97 */ at91_add_device_ac97(&ek_ac97_data); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); at91_pwm_leds(ek_pwm_led, ARRAY_SIZE(ek_pwm_led)); /* CAN */ at91_add_device_can(&ek_can_data); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&ek_usbh_data); /* USB Device */ at91_add_device_udc(&ek_udc_data); /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* NAND */ ek_add_device_nand(); /* Ethernet */ at91_add_device_eth(&ek_macb_data); /* MMC */ at91_add_device_mmc(0, &ek_mmc_data); /* I2C */ at91_add_device_i2c(ek_i2c_devices, ARRAY_SIZE(ek_i2c_devices)); /* SSC (to AT73C213) */ at73c213_set_clk(&at73c213_data); at91_add_device_ssc(AT91SAM9260_ID_SSC, ATMEL_SSC_TX); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); /* Push Buttons */ ek_add_device_buttons(); }
static void __init ek_board_init(void) { at91_add_device_serial(); at91_add_device_usbh(&ek_usbh_data); at91_add_device_udc(&ek_udc_data); at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); ek_add_device_nand(); ek_add_device_macb(); ek_add_regulators(); ek_add_device_mmc(); at91_add_device_i2c(ek_i2c_devices, ARRAY_SIZE(ek_i2c_devices)); ek_add_device_gpio_leds(); ek_add_device_buttons(); at91_set_B_periph(AT91_PIN_PC1, 0); at91_add_device_ssc(AT91SAM9260_ID_SSC, ATMEL_SSC_TX); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&ek_usbh_data); /* USB Device */ at91_add_device_udc(&ek_udc_data); /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* NAND */ ek_add_device_nand(); /* I2C */ at91_add_device_i2c(NULL, 0); /* Ethernet */ at91_add_device_eth(&ek_macb_data); /* MMC */ at91_add_device_mmc(0, &ek_mmc_data); /* Push Buttons */ ek_add_device_buttons(); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); /* shutdown controller, wakeup button (5 msec low) */ at91_sys_write(AT91_SHDW_MR, AT91_SHDW_CPTWK0_(10) | AT91_SHDW_WKMODE0_LOW | AT91_SHDW_RTTWKEN); }
void __init cm_board_init(u32 *cm_config) { int i; *cm_config = 0; /* SPI */ at91_add_device_spi(cm_spi_devices, ARRAY_SIZE(cm_spi_devices)); /* Check SPI0 usage to take decision in mother board */ for (i = 0; i < ARRAY_SIZE(cm_spi_devices); i++) { if (cm_spi_devices[i].bus_num == 0) { *cm_config |= CM_CONFIG_SPI0_ENABLE; break; } } /* NAND */ cm_add_device_nand(); /* I2C */ at91_add_device_i2c(0, cm_i2c_devices, ARRAY_SIZE(cm_i2c_devices)); *cm_config |= CM_CONFIG_I2C0_ENABLE; /* LEDs */ at91_gpio_leds(cm_leds, ARRAY_SIZE(cm_leds)); if (cm_is_revA()) printk(KERN_CRIT "AT91: CM rev A\n"); else printk(KERN_CRIT "AT91: CM rev B and higher\n"); }
static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&ek_usbh_data); /* USB Device */ at91_add_device_udc(&ek_udc_data); /* I2C */ at91_add_device_i2c(); /* NAND */ at91_add_device_nand(&ek_nand_data); /* DM9000 ethernet */ ek_add_device_dm9000(); /* spi0 and mmc/sd share the same PIO pins */ #if defined(CONFIG_SPI_ATMEL) || defined(CONFIG_SPI_ATMEL_MODULE) /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* Touchscreen */ ek_add_device_ts(); #else /* MMC */ at91_add_device_mmc(0, &ek_mmc_data); #endif /* LCD Controller */ at91_add_device_lcdc(&ek_lcdc_data); }
static void __init ek_board_init(void) { at91_add_device_serial(); at91_add_device_usbh(&ek_usbh_data); at91_add_device_udc(&ek_udc_data); at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); ek_add_device_nand(); at91_add_device_eth(&ek_macb_data); #if defined(CONFIG_MMC_ATMELMCI) || defined(CONFIG_MMC_ATMELMCI_MODULE) at91_add_device_mci(0, &ek_mmc_data); #else at91_add_device_mmc(0, &ek_mmc_data); #endif at91_add_device_i2c(ek_i2c_devices, ARRAY_SIZE(ek_i2c_devices)); at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); at91_set_B_periph(AT91_PIN_PC1, 0); at91_add_device_ssc(AT91SAM9260_ID_SSC, ATMEL_SSC_TX); }
static void __init ek_board_init(void) { /* Serial */ /* DBGU on ttyS0. (Rx & Tx only) */ at91_register_uart(0, 0, 0); /* USART0 on ttyS1. (Rx, Tx, CTS, RTS) */ at91_register_uart(AT91SAM9RL_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS); at91_add_device_serial(); /* USB HS */ at91_add_device_usba(&ek_usba_udc_data); /* I2C */ at91_add_device_i2c(NULL, 0); /* NAND */ ek_add_device_nand(); /* SPI */ at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* MMC (AT91_MCI Legacy Driver */ at91_add_device_mmc(0, &at91_mci0_data); /* MMC */ at91_add_device_mci(0, &mci0_data); /* LCD Controller */ at91_add_device_lcdc(&ek_lcdc_data); /* AC97 */ at91_add_device_ac97(&ek_ac97_data); /* Touch Screen Controller */ at91_add_device_tsadcc(&ek_tsadcc_data); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); /* Push Buttons */ ek_add_device_buttons(); }
static int tny_a9260_devices_init(void) { tny_a9260_add_device_nand(); ek_add_device_macb(); ek_add_device_udc(); armlinux_set_bootparams((void *)(AT91_CHIPSELECT_1 + 0x100)); tny_a9260_set_board_type(); if (machine_is_tny_a9260() || machine_is_tny_a9g20()) { spi_register_board_info(tny_a9g20_spi_devices, ARRAY_SIZE(tny_a9g20_spi_devices)); at91_add_device_spi(0, &spi_pdata); } devfs_add_partition("nand0", 0x00000, SZ_128K, DEVFS_PARTITION_FIXED, "at91bootstrap_raw"); dev_add_bb_dev("at91bootstrap_raw", "at91bootstrap"); devfs_add_partition("nand0", SZ_128K, SZ_256K, DEVFS_PARTITION_FIXED, "self_raw"); dev_add_bb_dev("self_raw", "self0"); devfs_add_partition("nand0", SZ_256K + SZ_128K, SZ_128K, DEVFS_PARTITION_FIXED, "env_raw"); dev_add_bb_dev("env_raw", "env0"); devfs_add_partition("nand0", SZ_512K, SZ_128K, DEVFS_PARTITION_FIXED, "env_raw1"); dev_add_bb_dev("env_raw1", "env1"); return 0; }
static void __init csb337_board_init(void) { /* */ at91_add_device_serial(); /* */ at91_add_device_eth(&csb337_eth_data); /* */ at91_add_device_usbh(&csb337_usbh_data); /* */ at91_add_device_udc(&csb337_udc_data); /* */ at91_add_device_i2c(csb337_i2c_devices, ARRAY_SIZE(csb337_i2c_devices)); /* */ at91_set_gpio_input(AT91_PIN_PB22, 1); /* */ at91_add_device_cf(&csb337_cf_data); /* */ at91_add_device_spi(csb337_spi_devices, ARRAY_SIZE(csb337_spi_devices)); /* */ at91_add_device_mmc(0, &csb337_mmc_data); /* */ platform_device_register(&csb_flash); /* */ at91_gpio_leds(csb_leds, ARRAY_SIZE(csb_leds)); /* */ csb300_add_device_buttons(); }
static void __init cap9adk_board_init(void) { /* Serial */ at91_add_device_serial(); /* USB Host */ at91_add_device_usbh(&cap9adk_usbh_data); /* USB HS */ at91_add_device_usba(&cap9adk_usba_udc_data); /* SPI */ at91_add_device_spi(cap9adk_spi_devices, ARRAY_SIZE(cap9adk_spi_devices)); /* Touchscreen */ cap9adk_add_device_ts(); /* MMC */ at91_add_device_mmc(1, &cap9adk_mmc_data); /* Ethernet */ at91_add_device_eth(&cap9adk_macb_data); /* NAND */ cap9adk_add_device_nand(); /* NOR Flash */ cap9adk_add_device_nor(); /* I2C */ at91_add_device_i2c(NULL, 0); /* LCD Controller */ at91_add_device_lcdc(&cap9adk_lcdc_data); /* AC97 */ at91_add_device_ac97(&cap9adk_ac97_data); }
static void __init pcontrol_g20_board_init(void) { /* USART0 on ttyS1. (Rx, Tx, CTS, RTS) piggyback A2 */ at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS); /* USART1 on ttyS2. (Rx, Tx, CTS, RTS) isolated RS485 X5 */ at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS); /* USART2 on ttyS3. (Rx, Tx) 9bit-Bus Multidrop-mode X4 */ at91_register_uart(AT91SAM9260_ID_US4, 3, 0); stamp9g20_board_init(); at91_add_device_usbh(&usbh_data); at91_add_device_eth(&macb_data); at91_add_device_i2c(pcontrol_g20_i2c_devices, ARRAY_SIZE(pcontrol_g20_i2c_devices)); add_device_pcontrol(); at91_add_device_spi(pcontrol_g20_spi_devices, ARRAY_SIZE(pcontrol_g20_spi_devices)); at91_add_device_udc(&pcontrol_g20_udc_data); at91_gpio_leds(pcontrol_g20_leds, ARRAY_SIZE(pcontrol_g20_leds)); /* piggyback A2 */ at91_set_gpio_output(AT91_PIN_PB31, 1); }
static void __init ek_board_init(void) { at91_add_device_serial(); at91_add_device_usba(&ek_usba_udc_data); at91_add_device_i2c(NULL, 0); ek_add_device_nand(); at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); at91_add_device_mmc(0, &ek_mmc_data); at91_add_device_lcdc(&ek_lcdc_data); at91_add_device_ac97(&ek_ac97_data); at91_add_device_tsadcc(&ek_tsadcc_data); at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); ek_add_device_buttons(); }