diff options
Diffstat (limited to 'arch/arm/mach-omap2/devices.c')
-rw-r--r-- | arch/arm/mach-omap2/devices.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c index 12154d10e536..705a7a30a87f 100644 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c | |||
@@ -624,6 +624,15 @@ static inline void omap_hsmmc_reset(void) {} | |||
624 | static inline void omap2_mmc_mux(struct omap_mmc_platform_data *mmc_controller, | 624 | static inline void omap2_mmc_mux(struct omap_mmc_platform_data *mmc_controller, |
625 | int controller_nr) | 625 | int controller_nr) |
626 | { | 626 | { |
627 | if ((mmc_controller->slots[0].switch_pin > 0) && \ | ||
628 | (mmc_controller->slots[0].switch_pin < OMAP_MAX_GPIO_LINES)) | ||
629 | omap_mux_init_gpio(mmc_controller->slots[0].switch_pin, | ||
630 | OMAP_PIN_INPUT_PULLUP); | ||
631 | if ((mmc_controller->slots[0].gpio_wp > 0) && \ | ||
632 | (mmc_controller->slots[0].gpio_wp < OMAP_MAX_GPIO_LINES)) | ||
633 | omap_mux_init_gpio(mmc_controller->slots[0].gpio_wp, | ||
634 | OMAP_PIN_INPUT_PULLUP); | ||
635 | |||
627 | if (cpu_is_omap2420() && controller_nr == 0) { | 636 | if (cpu_is_omap2420() && controller_nr == 0) { |
628 | omap_cfg_reg(H18_24XX_MMC_CMD); | 637 | omap_cfg_reg(H18_24XX_MMC_CMD); |
629 | omap_cfg_reg(H15_24XX_MMC_CLKI); | 638 | omap_cfg_reg(H15_24XX_MMC_CLKI); |
@@ -819,6 +828,33 @@ static inline void omap_hdq_init(void) | |||
819 | static inline void omap_hdq_init(void) {} | 828 | static inline void omap_hdq_init(void) {} |
820 | #endif | 829 | #endif |
821 | 830 | ||
831 | /*---------------------------------------------------------------------------*/ | ||
832 | |||
833 | #if defined(CONFIG_VIDEO_OMAP2_VOUT) || \ | ||
834 | defined(CONFIG_VIDEO_OMAP2_VOUT_MODULE) | ||
835 | #if defined(CONFIG_FB_OMAP2) || defined(CONFIG_FB_OMAP2_MODULE) | ||
836 | static struct resource omap_vout_resource[3 - CONFIG_FB_OMAP2_NUM_FBS] = { | ||
837 | }; | ||
838 | #else | ||
839 | static struct resource omap_vout_resource[2] = { | ||
840 | }; | ||
841 | #endif | ||
842 | |||
843 | static struct platform_device omap_vout_device = { | ||
844 | .name = "omap_vout", | ||
845 | .num_resources = ARRAY_SIZE(omap_vout_resource), | ||
846 | .resource = &omap_vout_resource[0], | ||
847 | .id = -1, | ||
848 | }; | ||
849 | static void omap_init_vout(void) | ||
850 | { | ||
851 | if (platform_device_register(&omap_vout_device) < 0) | ||
852 | printk(KERN_ERR "Unable to register OMAP-VOUT device\n"); | ||
853 | } | ||
854 | #else | ||
855 | static inline void omap_init_vout(void) {} | ||
856 | #endif | ||
857 | |||
822 | /*-------------------------------------------------------------------------*/ | 858 | /*-------------------------------------------------------------------------*/ |
823 | 859 | ||
824 | static int __init omap2_init_devices(void) | 860 | static int __init omap2_init_devices(void) |
@@ -834,6 +870,7 @@ static int __init omap2_init_devices(void) | |||
834 | omap_hdq_init(); | 870 | omap_hdq_init(); |
835 | omap_init_sti(); | 871 | omap_init_sti(); |
836 | omap_init_sha1_md5(); | 872 | omap_init_sha1_md5(); |
873 | omap_init_vout(); | ||
837 | 874 | ||
838 | return 0; | 875 | return 0; |
839 | } | 876 | } |