534
575
.valid_ops_mask = REGULATOR_CHANGE_MODE
535
576
| REGULATOR_CHANGE_STATUS,
537
.num_consumer_supplies = 1,
538
.consumer_supplies = &omap3_evm_vpll2_supply,
578
.num_consumer_supplies = ARRAY_SIZE(omap3_evm_vpll2_supplies),
579
.consumer_supplies = omap3_evm_vpll2_supplies,
583
static struct regulator_consumer_supply omap3evm_vio_supply =
584
REGULATOR_SUPPLY("vcc", "spi1.0");
586
/* VIO for ads7846 */
587
static struct regulator_init_data omap3evm_vio = {
592
.valid_modes_mask = REGULATOR_MODE_NORMAL
593
| REGULATOR_MODE_STANDBY,
594
.valid_ops_mask = REGULATOR_CHANGE_MODE
595
| REGULATOR_CHANGE_STATUS,
597
.num_consumer_supplies = 1,
598
.consumer_supplies = &omap3evm_vio_supply,
601
#ifdef CONFIG_WL12XX_PLATFORM_DATA
603
#define OMAP3EVM_WLAN_PMENA_GPIO (150)
604
#define OMAP3EVM_WLAN_IRQ_GPIO (149)
606
static struct regulator_consumer_supply omap3evm_vmmc2_supply =
607
REGULATOR_SUPPLY("vmmc", "omap_hsmmc.1");
609
/* VMMC2 for driving the WL12xx module */
610
static struct regulator_init_data omap3evm_vmmc2 = {
612
.valid_ops_mask = REGULATOR_CHANGE_STATUS,
614
.num_consumer_supplies = 1,
615
.consumer_supplies = &omap3evm_vmmc2_supply,
618
static struct fixed_voltage_config omap3evm_vwlan = {
619
.supply_name = "vwl1271",
620
.microvolts = 1800000, /* 1.80V */
621
.gpio = OMAP3EVM_WLAN_PMENA_GPIO,
622
.startup_delay = 70000, /* 70ms */
624
.enabled_at_boot = 0,
625
.init_data = &omap3evm_vmmc2,
628
static struct platform_device omap3evm_wlan_regulator = {
629
.name = "reg-fixed-voltage",
632
.platform_data = &omap3evm_vwlan,
636
struct wl12xx_platform_data omap3evm_wlan_data __initdata = {
637
.irq = OMAP_GPIO_IRQ(OMAP3EVM_WLAN_IRQ_GPIO),
638
.board_ref_clock = WL12XX_REFCLOCK_38, /* 38.4 MHz */
541
642
static struct twl4030_platform_data omap3evm_twldata = {
542
643
.irq_base = TWL4030_IRQ_BASE,
625
727
static struct omap_board_config_kernel omap3_evm_config[] __initdata = {
628
static void __init omap3_evm_init_irq(void)
730
static void __init omap3_evm_init_early(void)
630
omap_board_config = omap3_evm_config;
631
omap_board_config_size = ARRAY_SIZE(omap3_evm_config);
632
732
omap2_init_common_infrastructure();
633
733
omap2_init_common_devices(mt46h32m32lf6_sdrc_params, NULL);
637
static struct platform_device *omap3_evm_devices[] __initdata = {
638
&omap3_evm_dss_device,
641
static struct ehci_hcd_omap_platform_data ehci_pdata __initdata = {
643
.port_mode[0] = EHCI_HCD_OMAP_MODE_UNKNOWN,
644
.port_mode[1] = EHCI_HCD_OMAP_MODE_PHY,
645
.port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN,
736
static struct usbhs_omap_board_data usbhs_bdata __initdata = {
738
.port_mode[0] = OMAP_USBHS_PORT_MODE_UNUSED,
739
.port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
740
.port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
647
742
.phy_reset = true,
648
743
/* PHY reset GPIO will be runtime programmed based on EVM version */
654
749
#ifdef CONFIG_OMAP_MUX
655
static struct omap_board_mux board_mux[] __initdata = {
656
OMAP3_MUX(SYS_NIRQ, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP |
657
OMAP_PIN_OFF_INPUT_PULLUP | OMAP_PIN_OFF_OUTPUT_LOW |
658
OMAP_PIN_OFF_WAKEUPENABLE),
659
OMAP3_MUX(MCSPI1_CS1, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP |
660
OMAP_PIN_OFF_INPUT_PULLUP | OMAP_PIN_OFF_OUTPUT_LOW),
661
{ .reg_offset = OMAP_MUX_TERMINATOR },
750
static struct omap_board_mux omap35x_board_mux[] __initdata = {
751
OMAP3_MUX(SYS_NIRQ, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP |
752
OMAP_PIN_OFF_INPUT_PULLUP | OMAP_PIN_OFF_OUTPUT_LOW |
753
OMAP_PIN_OFF_WAKEUPENABLE),
754
OMAP3_MUX(MCSPI1_CS1, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP |
755
OMAP_PIN_OFF_INPUT_PULLUP | OMAP_PIN_OFF_OUTPUT_LOW |
756
OMAP_PIN_OFF_WAKEUPENABLE),
757
OMAP3_MUX(SYS_BOOT5, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP |
759
OMAP3_MUX(GPMC_WAIT2, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP |
761
#ifdef CONFIG_WL12XX_PLATFORM_DATA
762
/* WLAN IRQ - GPIO 149 */
763
OMAP3_MUX(UART1_RTS, OMAP_MUX_MODE4 | OMAP_PIN_INPUT),
765
/* WLAN POWER ENABLE - GPIO 150 */
766
OMAP3_MUX(UART1_CTS, OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT),
768
/* MMC2 SDIO pin muxes for WL12xx */
769
OMAP3_MUX(SDMMC2_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
770
OMAP3_MUX(SDMMC2_CMD, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
771
OMAP3_MUX(SDMMC2_DAT0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
772
OMAP3_MUX(SDMMC2_DAT1, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
773
OMAP3_MUX(SDMMC2_DAT2, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
774
OMAP3_MUX(SDMMC2_DAT3, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
776
{ .reg_offset = OMAP_MUX_TERMINATOR },
779
static struct omap_board_mux omap36x_board_mux[] __initdata = {
780
OMAP3_MUX(SYS_NIRQ, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP |
781
OMAP_PIN_OFF_INPUT_PULLUP | OMAP_PIN_OFF_OUTPUT_LOW |
782
OMAP_PIN_OFF_WAKEUPENABLE),
783
OMAP3_MUX(MCSPI1_CS1, OMAP_MUX_MODE4 | OMAP_PIN_INPUT_PULLUP |
784
OMAP_PIN_OFF_INPUT_PULLUP | OMAP_PIN_OFF_OUTPUT_LOW |
785
OMAP_PIN_OFF_WAKEUPENABLE),
786
/* AM/DM37x EVM: DSS data bus muxed with sys_boot */
787
OMAP3_MUX(DSS_DATA18, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
788
OMAP3_MUX(DSS_DATA19, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
789
OMAP3_MUX(DSS_DATA22, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
790
OMAP3_MUX(DSS_DATA21, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
791
OMAP3_MUX(DSS_DATA22, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
792
OMAP3_MUX(DSS_DATA23, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
793
OMAP3_MUX(SYS_BOOT0, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
794
OMAP3_MUX(SYS_BOOT1, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
795
OMAP3_MUX(SYS_BOOT3, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
796
OMAP3_MUX(SYS_BOOT4, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
797
OMAP3_MUX(SYS_BOOT5, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
798
OMAP3_MUX(SYS_BOOT6, OMAP_MUX_MODE3 | OMAP_PIN_OFF_NONE),
799
#ifdef CONFIG_WL12XX_PLATFORM_DATA
800
/* WLAN IRQ - GPIO 149 */
801
OMAP3_MUX(UART1_RTS, OMAP_MUX_MODE4 | OMAP_PIN_INPUT),
803
/* WLAN POWER ENABLE - GPIO 150 */
804
OMAP3_MUX(UART1_CTS, OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT),
806
/* MMC2 SDIO pin muxes for WL12xx */
807
OMAP3_MUX(SDMMC2_CLK, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
808
OMAP3_MUX(SDMMC2_CMD, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
809
OMAP3_MUX(SDMMC2_DAT0, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
810
OMAP3_MUX(SDMMC2_DAT1, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
811
OMAP3_MUX(SDMMC2_DAT2, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
812
OMAP3_MUX(SDMMC2_DAT3, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
815
{ .reg_offset = OMAP_MUX_TERMINATOR },
818
#define omap35x_board_mux NULL
819
#define omap36x_board_mux NULL
665
822
static struct omap_musb_board_data musb_board_data = {
709
873
/* setup EHCI phy reset on MDC */
710
874
omap_mux_init_gpio(135, OMAP_PIN_OUTPUT);
711
ehci_pdata.reset_gpio_port[1] = 135;
875
usbhs_bdata.reset_gpio_port[1] = 135;
713
877
usb_musb_init(&musb_board_data);
714
usb_ehci_init(&ehci_pdata);
878
usbhs_init(&usbhs_bdata);
715
879
ads7846_dev_init();
716
880
omap3evm_init_smsc911x();
717
881
omap3_evm_display_init();
883
#ifdef CONFIG_WL12XX_PLATFORM_DATA
884
/* WL12xx WLAN Init */
885
if (wl12xx_set_platform_data(&omap3evm_wlan_data))
886
pr_err("error setting wl12xx data\n");
887
platform_device_register(&omap3evm_wlan_regulator);
720
891
MACHINE_START(OMAP3EVM, "OMAP3 EVM")
721
892
/* Maintainer: Syed Mohammed Khasim - Texas Instruments */
722
893
.boot_params = 0x80000100,
894
.reserve = omap_reserve,
723
895
.map_io = omap3_map_io,
724
.reserve = omap_reserve,
725
.init_irq = omap3_evm_init_irq,
896
.init_early = omap3_evm_init_early,
897
.init_irq = omap_init_irq,
726
898
.init_machine = omap3_evm_init,
727
899
.timer = &omap_timer,