
On 11/12/2011 11:36 AM, Jason Liu wrote:
Add the initial support for Freescale i.MX6Q Armadillo2 board Support: MMC boot from slot 0/1, debug UART(UART4), usdhc.
Signed-off-by: Jason Liu jason.hui@linaro.org
Hi Jason,
is mx6qarm2 the official Freescale name ?
+#ifdef CONFIG_FSL_ESDHC +struct fsl_esdhc_cfg usdhc_cfg[2] = {
- {USDHC3_BASE_ADDR, 1},
- {USDHC4_BASE_ADDR, 1},
+};
+int board_mmc_getcd(u8 *cd, struct mmc *mmc) +{
- struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
- if (cfg->esdhc_base == USDHC3_BASE_ADDR)
*cd = gpio_get_value(107); /*GPIO6_11*/
- else /* Don't have the CD GPIO pin on board */
*cd = 0;
Is it the logic inverted ? If you return always zero, there is no Card in the slot for the MMC framework and there is no attempt to read it. It is working on USDHC4 ?
+int board_early_init_f(void) +{
- imx_iomux_v3_init((void *)IOMUXC_BASE_ADDR);
- setup_iomux_uart();
- return 0;
+}
+int board_init(void) +{
- /* board id for linux */
- gd->bd->bi_arch_number = MACH_TYPE_MX61_ARD;
You should only set CONFIG_MACH_TYPE mx6qarm2.h and drop this line. The set is done in common code.
- /* address of boot parameters */
- gd->bd->bi_boot_params = PHYS_SDRAM + 0x100;
- /*
* Need re-initialization again since base is in BSS
* After relocation, base will be clear to zero.
*/
- imx_iomux_v3_init((void *)IOMUXC_BASE_ADDR);
However, this is a trick. As general rule, we must not use BSS before relocation. Is there no other way to do this ?
+#undef CONFIG_CMD_IMLS +#undef CONFIG_CMD_NET +#undef CONFIG_CMD_NFS
+#define CONFIG_BOOTDELAY 3
+#define CONFIG_PRIME "FEC0"
Ethernet is not yet working, right ? How many Ethernet has this board ?
Best regards, Stefano Babic