static void __init mx53_evk_board_init(void) { int i; mx53_evk_io_init(); gp_reg_id = evk_regulator_data.cpu_reg_id; lp_reg_id = evk_regulator_data.vcc_reg_id; mxc_spdif_data.spdif_core_clk = clk_get(NULL, "spdif_xtal_clk"); clk_put(mxc_spdif_data.spdif_core_clk); mx53_evk_init_uart(); imx53_add_srtc(); mx53_evk_fec_reset(); imx53_add_fec(&mx53_evk_fec_pdata); imx53_add_ipuv3(0, &ipu_data); for (i = 0; i < ARRAY_SIZE(evk_fb_data); i++) imx53_add_ipuv3fb(i, &evk_fb_data[i]); imx53_add_vpu(); imx53_add_tve(&tve_data); imx53_add_v4l2_output(0); if (!board_is_mx53_arm2()) { imx53_add_mxc_pwm(1); imx53_add_mxc_pwm_backlight(0, &evk_pwm_backlight_data); } imx53_add_dvfs_core(&evk_dvfs_core_data); imx53_add_busfreq(); imx53_add_imx_i2c(0, &mx53_evk_i2c_data); imx53_add_imx_i2c(1, &mx53_evk_i2c_data); i2c_register_board_info(0, mxc_i2c0_board_info, ARRAY_SIZE(mxc_i2c0_board_info)); i2c_register_board_info(1, mxc_i2c1_board_info, ARRAY_SIZE(mxc_i2c1_board_info)); imx53_add_sdhci_esdhc_imx(0, &mx53_evk_sd1_data); imx53_add_sdhci_esdhc_imx(2, &mx53_evk_sd3_data); mxc_register_device(&imx_ahci_device_hwmon, NULL); spi_register_board_info(mx53_evk_spi_board_info, ARRAY_SIZE(mx53_evk_spi_board_info)); imx53_add_ecspi(0, &mx53_evk_spi_data); imx53_add_imx2_wdt(0, NULL); imx53_add_spdif(&mxc_spdif_data); imx53_add_spdif_dai(); imx53_add_spdif_audio_device(); /* this call required to release SCC RAM partition held by ROM * during boot, even if SCC2 driver is not part of the image */ imx53_add_mxc_scc2(); }
static void __init mx53_ard_board_init(void) { int i; mxc_iomux_v3_setup_multiple_pads(mx53_ard_pads, ARRAY_SIZE(mx53_ard_pads)); /* setup VGA PINs */ if (enable_ard_vga) { iomux_v3_cfg_t vga; vga = MX53_PAD_EIM_OE__IPU_DI1_PIN7; mxc_iomux_v3_setup_pad(vga); vga = MX53_PAD_EIM_RW__IPU_DI1_PIN8; mxc_iomux_v3_setup_pad(vga); } gp_reg_id = ard_regulator_data.cpu_reg_id; lp_reg_id = ard_regulator_data.vcc_reg_id; mxc_spdif_data.spdif_core_clk = clk_get(NULL, "spdif_xtal_clk"); clk_put(mxc_spdif_data.spdif_core_clk); mx53_ard_init_uart(); imx53_add_ipuv3(0, &ipu_data); for (i = 0; i < ARRAY_SIZE(ard_fb_data); i++) imx53_add_ipuv3fb(i, &ard_fb_data[i]); imx53_add_vpu(); imx53_add_ldb(&ldb_data); imx53_add_tve(&tve_data); imx53_add_v4l2_output(0); imx53_add_mxc_pwm(0); imx53_add_mxc_pwm_backlight(0, &ard_pwm1_backlight_data); imx53_add_mxc_pwm(1); imx53_add_mxc_pwm_backlight(1, &ard_pwm2_backlight_data); imx53_add_srtc(); imx53_add_imx2_wdt(0, NULL); imx53_add_sdhci_esdhc_imx(0, &mx53_ard_sd1_data); imx53_add_sdhci_esdhc_imx(1, &mx53_ard_sd2_data); mxc_register_device(&imx_ahci_device_hwmon, NULL); weim_cs_config(); mx53_ard_io_init(); mxc_register_device(&ard_smsc_lan9220_device, &ard_smsc911x_config); imx53_add_imx_i2c(1, &mx53_ard_i2c1_data); imx53_add_imx_i2c(2, &mx53_ard_i2c2_data); imx53_add_spdif(&mxc_spdif_data); imx53_add_spdif_dai(); imx53_add_spdif_audio_device(); i2c_register_board_info(1, mxc_i2c1_board_info, ARRAY_SIZE(mxc_i2c1_board_info)); i2c_register_board_info(2, mxc_i2c2_board_info, ARRAY_SIZE(mxc_i2c2_board_info)); imx53_init_audio(); /* this call required to release SCC RAM partition held by ROM * during boot, even if SCC2 driver is not part of the image */ imx53_add_mxc_scc2(); }
static void __init mx53_loco_board_init(void) { mx53_loco_io_init(); imx53_add_imx_uart(0, NULL); mx53_loco_fec_reset(); imx53_add_fec(&mx53_loco_fec_data); mxc_spdif_data.spdif_core_clk = clk_get(NULL, "spdif_xtal_clk"); clk_put(mxc_spdif_data.spdif_core_clk); mxc_register_device(&mxc_pm_device, &loco_pm_data); imx53_add_ipuv3(&ipu_data); imx53_add_vpu(); imx53_add_ldb(&ldb_data); imx53_add_tve(&tve_data); imx53_add_v4l2_output(0); imx53_add_mxc_pwm(1); imx53_add_mxc_pwm_backlight(0, &loco_pwm_backlight_data); imx53_add_imx2_wdt(0, NULL); imx53_add_srtc(); imx53_add_dvfs_core(&loco_dvfs_core_data); imx53_add_busfreq(&loco_bus_freq_data); imx53_add_imx_i2c(0, &mx53_loco_i2c_data); imx53_add_imx_i2c(1, &mx53_loco_i2c_data); mx53_loco_init_da9052(); i2c_register_board_info(0, mxc_i2c0_board_info, ARRAY_SIZE(mxc_i2c0_board_info)); i2c_register_board_info(1, mxc_i2c1_board_info, ARRAY_SIZE(mxc_i2c1_board_info)); imx53_add_sdhci_esdhc_imx(0, &mx53_loco_sd1_data); imx53_add_sdhci_esdhc_imx(2, &mx53_loco_sd3_data); imx53_add_ahci_imx(0, &sata_data); imx53_add_iim(&iim_data); /* USB */ mx5_usb_dr_init(); mx5_set_host1_vbus_func(mx53_loco_usbh1_vbus); mx5_usbh1_init(); mxc_register_device(&loco_audio_device, &loco_audio_data); imx53_add_imx_ssi(1, &loco_ssi_pdata); imx53_add_spdif(&mxc_spdif_data); imx53_add_spdif_dai(); imx53_add_spdif_audio_device(); /*GPU*/ if (mx53_revision() >= IMX_CHIP_REVISION_2_0) gpu_data.z160_revision = 1; else gpu_data.z160_revision = 0; imx53_add_mxc_gpu(&gpu_data); imx_add_gpio_keys(&loco_button_data); /* this call required to release SCC RAM partition held by ROM * during boot, even if SCC2 driver is not part of the image */ imx53_add_mxc_scc2(); pm_power_off = da9053_power_off; }