static int vincell_devices_init(void) { writel(0, MX53_M4IF_BASE_ADDR + 0xc); console_flush(); imx53_init_lowlevel(1000); clk_set_rate(clk_lookup("nfc_podf"), 66666667); imx53_add_nand(&nand_info); imx51_iim_register_fec_ethaddr(); imx53_add_fec(&fec_info); imx53_add_mmc0(NULL); i2c_register_board_info(0, i2c_devices, ARRAY_SIZE(i2c_devices)); imx53_add_i2c0(NULL); vincell_fec_reset(); armlinux_set_bootparams((void *)0x70000100); armlinux_set_architecture(3297); devfs_add_partition("nand0", SZ_1M, SZ_512K, DEVFS_PARTITION_FIXED, "self_raw"); dev_add_bb_dev("self_raw", "self0"); devfs_add_partition("nand0", SZ_1M + SZ_512K, SZ_512K, DEVFS_PARTITION_FIXED, "env_raw"); dev_add_bb_dev("env_raw", "env0"); imx53_bbu_internal_nand_register_handler("nand", BBU_HANDLER_FLAG_DEFAULT, dcd_entry, sizeof(dcd_entry), 3 * SZ_128K, 0xf8020000); return 0; }
static int smd_devices_init(void) { imx51_iim_register_fec_ethaddr(); imx53_add_fec(&fec_info); imx53_add_mmc0(&loco_sd1_data); imx53_add_mmc2(&loco_sd3_data); smd_fec_reset(); armlinux_set_bootparams((void *)0x70000100); armlinux_set_architecture(MACH_TYPE_MX53_SMD); return 0; }
static int f3s_devices_init(void) { imx51_iim_register_fec_ethaddr(); imx51_add_fec(&fec_info); imx51_add_mmc0(NULL); spi_register_board_info(mx51_babbage_spi_board_info, ARRAY_SIZE(mx51_babbage_spi_board_info)); imx51_add_spi0(&spi_0_data); babbage_power_init(); armlinux_set_bootparams((void *)0x90000100); armlinux_set_architecture(MACH_TYPE_MX51_BABBAGE); return 0; }
static int f3s_devices_init(void) { spi_register_board_info(mx51_babbage_spi_board_info, ARRAY_SIZE(mx51_babbage_spi_board_info)); imx51_add_spi0(&spi_0_data); babbage_power_init(); console_flush(); imx51_init_lowlevel(800); clock_notifier_call_chain(); imx51_iim_register_fec_ethaddr(); imx51_add_fec(&fec_info); imx51_add_mmc0(NULL); imx51_add_mmc1(NULL); armlinux_set_bootparams((void *)0x90000100); armlinux_set_architecture(MACH_TYPE_MX51_BABBAGE); return 0; }
static int tx51_devices_init(void) { #ifdef CONFIG_MCI_IMX_ESDHC imx51_add_mmc0(NULL); imx51_add_mmc1(NULL); #endif imx51_add_nand(&nand_info); spi_register_board_info(mx51_tx51_spi_board_info, ARRAY_SIZE(mx51_tx51_spi_board_info)); imx51_add_spi0(&tx51_spi_0_data); imx51_iim_register_fec_ethaddr(); tx51_fec_init(); imx51_add_fec(&fec_info); tx51_leds_init(); //Linux Parameters armlinux_set_architecture(MACH_TYPE_TX51); return 0; }