From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Babic Date: Mon, 14 Nov 2011 10:25:51 +0100 Subject: [U-Boot] [PATCH 6/6] i.mx: i.mx6q: Add the initial support for i.mx6q ARM2 board In-Reply-To: <1321094190-8108-7-git-send-email-jason.hui@linaro.org> References: <1321094190-8108-1-git-send-email-jason.hui@linaro.org> <1321094190-8108-7-git-send-email-jason.hui@linaro.org> Message-ID: <4EC0DE9F.7060900@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 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 -- ===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de =====================================================================