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_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);

	/*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;
}
static void __init mx53_ard_board_init(void)
{
	mxc_iomux_v3_setup_multiple_pads(mx53_ard_pads,
					ARRAY_SIZE(mx53_ard_pads));
	mx53_ard_init_uart();
	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);

	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);

	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));

	/* 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)
{
	int ret;
	imx53_soc_init();
	imx53_qsb_common_init();

	imx53_add_imx_uart(0, NULL);
	mx53_loco_fec_reset();
	imx53_add_fec(&mx53_loco_fec_data);
	imx53_add_imx2_wdt(0, NULL);

	ret = gpio_request_one(LOCO_ACCEL_EN, GPIOF_OUT_INIT_HIGH, "accel_en");
	if (ret)
		pr_err("Cannot request ACCEL_EN pin: %d\n", ret);

	i2c_register_board_info(0, mx53loco_i2c_devices,
				ARRAY_SIZE(mx53loco_i2c_devices));
	imx53_add_imx_i2c(0, &mx53_loco_i2c_data);
	imx53_add_imx_i2c(1, &mx53_loco_i2c_data);
	imx53_add_sdhci_esdhc_imx(0, &mx53_loco_sd1_data);
	imx53_add_sdhci_esdhc_imx(2, &mx53_loco_sd3_data);
	imx_add_gpio_keys(&loco_button_data);
	gpio_led_register_device(-1, &mx53loco_leds_data);
	imx53_add_ahci_imx();
}
Beispiel #4
0
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_loco_board_init(void)
{
	mxc_iomux_v3_setup_multiple_pads(mx53_loco_pads,
					ARRAY_SIZE(mx53_loco_pads));
	imx53_add_imx_uart(0, NULL);
	mx53_loco_fec_reset();
	imx53_add_fec(&mx53_loco_fec_data);
	imx53_add_imx2_wdt(0, NULL);
	imx53_add_imx_i2c(0, &mx53_loco_i2c_data);
	imx53_add_imx_i2c(1, &mx53_loco_i2c_data);
	imx53_add_sdhci_esdhc_imx(0, NULL);
	imx53_add_sdhci_esdhc_imx(2, NULL);
	imx_add_gpio_keys(&loco_button_data);
}
Beispiel #6
0
static void __init mx53_ard_board_init(void)
{
	imx53_soc_init();
	imx53_add_imx_uart(0, NULL);

	mx53_ard_io_init();
	weim_cs_config();
	platform_add_devices(devices, ARRAY_SIZE(devices));

	imx53_add_sdhci_esdhc_imx(0, &mx53_ard_sd1_data);
	imx53_add_imx2_wdt(0, NULL);
	imx53_add_imx_i2c(1, &mx53_ard_i2c2_data);
	imx53_add_imx_i2c(2, &mx53_ard_i2c3_data);
	imx_add_gpio_keys(&ard_button_data);
}
static void __init mx53_evk_board_init(void)
{
	mx53_evk_io_init();

	mx53_evk_init_uart();
	imx53_add_srtc();
	mx53_evk_fec_reset();
	imx53_add_fec(&mx53_evk_fec_pdata);

	imx53_add_ipuv3(&ipu_data);
	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(&evk_bus_freq_data);
	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);

	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);

	/* 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();
}
Beispiel #8
0
static void __init mx53_evk_board_init(void)
{
	imx53_soc_init();
	imx53_evk_common_init();

	mx53_evk_init_uart();
	mx53_evk_fec_reset();
	imx53_add_fec(&mx53_evk_fec_pdata);

	imx53_add_imx_i2c(0, &mx53_evk_i2c_data);
	imx53_add_imx_i2c(1, &mx53_evk_i2c_data);

	imx53_add_sdhci_esdhc_imx(0, NULL);
	imx53_add_sdhci_esdhc_imx(1, 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);
	gpio_led_register_device(-1, &mx53evk_leds_data);
}
Beispiel #9
0
static void __init mx53_smd_board_init(void)
{
	imx53_soc_init();

	mxc_iomux_v3_setup_multiple_pads(mx53_smd_pads,
					ARRAY_SIZE(mx53_smd_pads));
	mx53_smd_init_uart();
	mx53_smd_fec_reset();
	imx53_add_fec(&mx53_smd_fec_data);
	imx53_add_imx2_wdt(0, NULL);
	imx53_add_imx_i2c(0, &mx53_smd_i2c_data);
	imx53_add_sdhci_esdhc_imx(0, NULL);
	imx53_add_sdhci_esdhc_imx(1, NULL);
	imx53_add_sdhci_esdhc_imx(2, NULL);
}
static void __init mx53_smd_board_init(void)
{
	imx53_soc_init();
	imx53_smd_common_init();

	mx53_smd_init_uart();
	mx53_smd_fec_reset();
	imx53_add_fec(&mx53_smd_fec_data);
	imx53_add_imx2_wdt(0, NULL);
	imx53_add_imx_i2c(0, &mx53_smd_i2c_data);
	imx53_add_sdhci_esdhc_imx(0, NULL);
	imx53_add_sdhci_esdhc_imx(1, NULL);
	imx53_add_sdhci_esdhc_imx(2, NULL);
	mx53_smd_ahci_pwr_on();
	imx53_add_ahci_imx();
}
Beispiel #11
0
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();
}