Re: [U-Boot] [PATCH 2/5] vybrid: add Freescale vybrid vf600 tower board support
On 12/04/2013 08:53, Alison Wang wrote: This patch adds Freescale vybrid vf600 tower board support. Signed-off-by: TsiChung Liew tsicl...@gmail.com Signed-off-by: Jason Jin jason@freescale.com Signed-off-by: Alison Wang b18...@freescale.com --- Hi Alison. board/freescale/vybrid/Makefile| 40 +++ board/freescale/vybrid/vybrid.c| 488 + board/freescale/vybrid/vybridimage.cfg | 44 +++ boards.cfg | 2 + include/configs/vybrid.h | 284 +++ include/configs/vybrid_iram.h | 284 +++ 6 files changed, 1142 insertions(+) create mode 100644 board/freescale/vybrid/Makefile create mode 100644 board/freescale/vybrid/vybrid.c create mode 100644 board/freescale/vybrid/vybridimage.cfg create mode 100644 include/configs/vybrid.h create mode 100644 include/configs/vybrid_iram.h diff --git a/board/freescale/vybrid/Makefile b/board/freescale/vybrid/Makefile new file mode 100644 index 000..0749b21 --- /dev/null +++ b/board/freescale/vybrid/Makefile @@ -0,0 +1,40 @@ +# +# Copyright 2012-2013 Freescale Semiconductor, Inc. +# +# This program is free software; you can redistribute it and/or # +modify it under the terms of the GNU General Public License as # +published by the Free Software Foundation; either version 2 of # the +License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, # +but WITHOUT ANY WARRANTY; without even the implied warranty of # +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU +General Public License for more details. +# +# You should have received a copy of the GNU General Public License # +along with this program; if not, write to the Free Software # +Foundation, Inc., 59 Temple Place, Suite 330, Boston, # MA 02111-1307 +USA # + +include $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).o + +COBJS := $(BOARD).o + +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) +SOBJS := $(addprefix $(obj),$(SOBJS)) + +$(LIB):$(obj).depend $(OBJS) $(SOBJS) + $(call cmd_link_o_target, $(OBJS) $(SOBJS)) + +# + + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# + diff --git a/board/freescale/vybrid/vybrid.c b/board/freescale/vybrid/vybrid.c new file mode 100644 index 000..c2da1ff --- /dev/null +++ b/board/freescale/vybrid/vybrid.c @@ -0,0 +1,488 @@ +/* + * Copyright 2012-2013 Freescale Semiconductor, Inc. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#include common.h +#include asm/io.h +#include asm/fec.h +#include asm/arch/vybrid-regs.h +#include asm/arch/vybrid-pins.h +#include asm/arch/iomux.h +#include asm/errno.h +#include asm/arch/sys_proto.h +#include i2c.h +#include mmc.h +#include fsl_esdhc.h +#include usb/ehci-fsl.h + +DECLARE_GLOBAL_DATA_PTR; + +#define DDR_IOMUX 0x0180 +#define DDR_IOMUX1 0x00010180 + +#define PHY_DQ_TIMING 0x2613 +#define PHY_DQS_TIMING 0x2615 +#define PHY_CTRL 0x01210080 +#define PHY_MASTER_CTRL0x0001012a +#define PHY_SLAVE_CTRL 0x00012020 + +#ifdef CONFIG_FSL_ESDHC +struct fsl_esdhc_cfg esdhc_cfg[2] = { + {CONFIG_SYS_ESDHC1_BASE, 1}, + {ESDHC2_BASE_ADDR, 1}, +}; +#endif + +void setup_iomux_ddr(void) +{ + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A15); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A14); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A13); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A12); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A11); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A10); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A9); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A8); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A7); +
Re: [U-Boot] [PATCH 2/5] vybrid: add Freescale vybrid vf600 tower board support
Hi, Fabio, On Fri, Apr 12, 2013 at 3:53 AM, Alison Wang b18...@freescale.com wrote: This patch adds Freescale vybrid vf600 tower board support. Signed-off-by: TsiChung Liew tsicl...@gmail.com Signed-off-by: Jason Jin jason@freescale.com Signed-off-by: Alison Wang b18...@freescale.com --- board/freescale/vybrid/Makefile| 40 +++ board/freescale/vybrid/vybrid.c| 488 + Vybrid is the SoC name and the board name is vf600, right? Then you should add: board/freescale/vf600 [Alison] I will modify the name. Also, please copy Stefano Babic in your future patches, as he is the U-boot imx maintainer. board/freescale/vybrid/vybridimage.cfg | 44 +++ boards.cfg | 2 + include/configs/vybrid.h | 284 +++ include/configs/vybrid_iram.h | 284 +++ 6 files changed, 1142 insertions(+) create mode 100644 board/freescale/vybrid/Makefile create mode 100644 board/freescale/vybrid/vybrid.c create mode 100644 board/freescale/vybrid/vybridimage.cfg create mode 100644 include/configs/vybrid.h create mode 100644 include/configs/vybrid_iram.h This patch should be the last of the series. You add the board support here, but ethernet, serial, esdhc support comes later in the patch series. [Alison] Agree, I will reorganize the series. Please add an entry to MAINTAINERS file. [Alison] Ok, I will add. +#ifdef CONFIG_FSL_ESDHC +struct fsl_esdhc_cfg esdhc_cfg[2] = { + {CONFIG_SYS_ESDHC1_BASE, 1}, + {ESDHC2_BASE_ADDR, 1}, CONFIG_ESDHC2_BASE_ADDR ? [Alison] Yes, I will modify. +int dram_init(void) +{ + setup_iomux_ddr(); +#ifdef CONFIG_SYS_UBOOT_IN_GPURAM You introduced CONFIG_SYS_UBOOT_IN_GPURAM here and it would be nice to add an entry into README explaining what it means. [Alison] This macro is used in vybrid_iram configuration. It is not necessary. I will remove it with vybrid_iram configuration. + gd-ram_size = 0x8; + ddr_ctrl_init(); +#else + gd-ram_size = ddr_ctrl_init(); #endif + return 0; Can't you use the standard method? gd-ram_size = get_ram_size((void *)PHYS_SDRAM, PHYS_SDRAM_SIZE); [Alison] Agree, I will use the standard method. +#ifdef CONFIG_QUAD_SPI CONFIG_QUAD_SPI does not exist in U-boot. Can't you re-use an existing SPI config option? [Alison] I will modify. +#ifdef CONFIG_FSL_ESDHC +int board_mmc_getcd(struct mmc *mmc) +{ + int ret; + + __raw_writel(0x005031ef, IOMUXC_PAD_014); /* clk */ + __raw_writel(0x005031ef, IOMUXC_PAD_015); /* cmd */ + __raw_writel(0x005031ef, IOMUXC_PAD_016); /* dat0 */ + __raw_writel(0x005031ef, IOMUXC_PAD_017); /* dat1 */ + __raw_writel(0x005031ef, IOMUXC_PAD_018); /* dat2 */ + __raw_writel(0x005031ef, IOMUXC_PAD_019); /* dat3 */ This function should basically return the card detect status, please setup the IOMUX in another place. [Alison] Ok, I will rewrite these functions. + ret = 1; + return ret; In this board you assume that the SD card is always present, right? You could remove the 'ret' variable. [Alison] Yes. I will remove it. diff --git a/board/freescale/vybrid/vybridimage.cfg b/board/freescale/vybrid/vybridimage.cfg new file mode 100644 index 000..5da5659 --- /dev/null +++ b/board/freescale/vybrid/vybridimage.cfg @@ -0,0 +1,44 @@ +# +# Copyright 2012-2013 Freescale Semiconductor, Inc. +# +# See file CREDITS for list of people who contributed to this # +project. +# +# This program is free software; you can redistribute it and/or # +modify it under the terms of the GNU General Public License as # +published by the Free Software Foundation; either version 2 of # the +License or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, # +but WITHOUT ANY WARRANTY; without even the implied warranty of # +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU +General Public License for more details. +# +# You should have received a copy of the GNU General Public License # +along with this program; if not write to the Free Software # +Foundation Inc. 51 Franklin Street Fifth Floor Boston, # MA +02110-1301 USA # # Refer docs/README.imxmage for more details about +how-to configure # and create imximage boot image # # The syntax is +taken as close as possible with the kwbimage + +IMAGE_VERSION 2 + +# Boot Device : one of +# spi, sd (the board has no nand neither onenand) + +BOOT_FROM sd + +# Device Configuration Data (DCD) +# +# Each entry must have the format: +# Addr-type AddressValue +# +# where: +# Addr-type register length (1,2 or 4 bytes) +# Address absolute address of the register +# value value to be stored in the register + +# Setting IOMUXC This file is suited for imx. If
Re: [U-Boot] [PATCH 2/5] vybrid: add Freescale vybrid vf600 tower board support
On Sat, Apr 13, 2013 at 2:15 AM, Wang Huan-B18965 b18...@freescale.com wrote: No hardcoded IP addresses/MAC addresses, please. [Alison] Agree. What is the general configuration way for these default settings? Just remove it from the config file. For IP addresses, the user should manually set serverip/ipaddr, etc in the U-boot prompt. For MAC addresses usually we read it from fuses, Regards, Fabio Estevam ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/5] vybrid: add Freescale vybrid vf600 tower board support
On 12/04/2013 08:53, Alison Wang wrote: This patch adds Freescale vybrid vf600 tower board support. Signed-off-by: TsiChung Liew tsicl...@gmail.com Signed-off-by: Jason Jin jason@freescale.com Signed-off-by: Alison Wang b18...@freescale.com --- Hi Alison. board/freescale/vybrid/Makefile| 40 +++ board/freescale/vybrid/vybrid.c| 488 + board/freescale/vybrid/vybridimage.cfg | 44 +++ boards.cfg | 2 + include/configs/vybrid.h | 284 +++ include/configs/vybrid_iram.h | 284 +++ 6 files changed, 1142 insertions(+) create mode 100644 board/freescale/vybrid/Makefile create mode 100644 board/freescale/vybrid/vybrid.c create mode 100644 board/freescale/vybrid/vybridimage.cfg create mode 100644 include/configs/vybrid.h create mode 100644 include/configs/vybrid_iram.h diff --git a/board/freescale/vybrid/Makefile b/board/freescale/vybrid/Makefile new file mode 100644 index 000..0749b21 --- /dev/null +++ b/board/freescale/vybrid/Makefile @@ -0,0 +1,40 @@ +# +# Copyright 2012-2013 Freescale Semiconductor, Inc. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# + +include $(TOPDIR)/config.mk + +LIB = $(obj)lib$(BOARD).o + +COBJS:= $(BOARD).o + +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) +SOBJS:= $(addprefix $(obj),$(SOBJS)) + +$(LIB): $(obj).depend $(OBJS) $(SOBJS) + $(call cmd_link_o_target, $(OBJS) $(SOBJS)) + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/freescale/vybrid/vybrid.c b/board/freescale/vybrid/vybrid.c new file mode 100644 index 000..c2da1ff --- /dev/null +++ b/board/freescale/vybrid/vybrid.c @@ -0,0 +1,488 @@ +/* + * Copyright 2012-2013 Freescale Semiconductor, Inc. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#include common.h +#include asm/io.h +#include asm/fec.h +#include asm/arch/vybrid-regs.h +#include asm/arch/vybrid-pins.h +#include asm/arch/iomux.h +#include asm/errno.h +#include asm/arch/sys_proto.h +#include i2c.h +#include mmc.h +#include fsl_esdhc.h +#include usb/ehci-fsl.h + +DECLARE_GLOBAL_DATA_PTR; + +#define DDR_IOMUX0x0180 +#define DDR_IOMUX1 0x00010180 + +#define PHY_DQ_TIMING0x2613 +#define PHY_DQS_TIMING 0x2615 +#define PHY_CTRL 0x01210080 +#define PHY_MASTER_CTRL 0x0001012a +#define PHY_SLAVE_CTRL 0x00012020 + +#ifdef CONFIG_FSL_ESDHC +struct fsl_esdhc_cfg esdhc_cfg[2] = { + {CONFIG_SYS_ESDHC1_BASE, 1}, + {ESDHC2_BASE_ADDR, 1}, +}; +#endif + +void setup_iomux_ddr(void) +{ + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A15); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A14); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A13); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A12); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A11); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A10); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A9); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A8); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A7); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A6); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A5); + __raw_writel(DDR_IOMUX,
[U-Boot] [PATCH 2/5] vybrid: add Freescale vybrid vf600 tower board support
This patch adds Freescale vybrid vf600 tower board support. Signed-off-by: TsiChung Liew tsicl...@gmail.com Signed-off-by: Jason Jin jason@freescale.com Signed-off-by: Alison Wang b18...@freescale.com --- board/freescale/vybrid/Makefile| 40 +++ board/freescale/vybrid/vybrid.c| 488 + board/freescale/vybrid/vybridimage.cfg | 44 +++ boards.cfg | 2 + include/configs/vybrid.h | 284 +++ include/configs/vybrid_iram.h | 284 +++ 6 files changed, 1142 insertions(+) create mode 100644 board/freescale/vybrid/Makefile create mode 100644 board/freescale/vybrid/vybrid.c create mode 100644 board/freescale/vybrid/vybridimage.cfg create mode 100644 include/configs/vybrid.h create mode 100644 include/configs/vybrid_iram.h diff --git a/board/freescale/vybrid/Makefile b/board/freescale/vybrid/Makefile new file mode 100644 index 000..0749b21 --- /dev/null +++ b/board/freescale/vybrid/Makefile @@ -0,0 +1,40 @@ +# +# Copyright 2012-2013 Freescale Semiconductor, Inc. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# + +include $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).o + +COBJS := $(BOARD).o + +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) +SOBJS := $(addprefix $(obj),$(SOBJS)) + +$(LIB):$(obj).depend $(OBJS) $(SOBJS) + $(call cmd_link_o_target, $(OBJS) $(SOBJS)) + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/freescale/vybrid/vybrid.c b/board/freescale/vybrid/vybrid.c new file mode 100644 index 000..c2da1ff --- /dev/null +++ b/board/freescale/vybrid/vybrid.c @@ -0,0 +1,488 @@ +/* + * Copyright 2012-2013 Freescale Semiconductor, Inc. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#include common.h +#include asm/io.h +#include asm/fec.h +#include asm/arch/vybrid-regs.h +#include asm/arch/vybrid-pins.h +#include asm/arch/iomux.h +#include asm/errno.h +#include asm/arch/sys_proto.h +#include i2c.h +#include mmc.h +#include fsl_esdhc.h +#include usb/ehci-fsl.h + +DECLARE_GLOBAL_DATA_PTR; + +#define DDR_IOMUX 0x0180 +#define DDR_IOMUX1 0x00010180 + +#define PHY_DQ_TIMING 0x2613 +#define PHY_DQS_TIMING 0x2615 +#define PHY_CTRL 0x01210080 +#define PHY_MASTER_CTRL0x0001012a +#define PHY_SLAVE_CTRL 0x00012020 + +#ifdef CONFIG_FSL_ESDHC +struct fsl_esdhc_cfg esdhc_cfg[2] = { + {CONFIG_SYS_ESDHC1_BASE, 1}, + {ESDHC2_BASE_ADDR, 1}, +}; +#endif + +void setup_iomux_ddr(void) +{ + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A15); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A14); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A13); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A12); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A11); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A10); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A9); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A8); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A7); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A6); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A5); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A4); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A3); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A2); + __raw_writel(DDR_IOMUX, IOMUXC_DDR_A1); +
Re: [U-Boot] [PATCH 2/5] vybrid: add Freescale vybrid vf600 tower board support
Hi Alison, On Fri, Apr 12, 2013 at 3:53 AM, Alison Wang b18...@freescale.com wrote: This patch adds Freescale vybrid vf600 tower board support. Signed-off-by: TsiChung Liew tsicl...@gmail.com Signed-off-by: Jason Jin jason@freescale.com Signed-off-by: Alison Wang b18...@freescale.com --- board/freescale/vybrid/Makefile| 40 +++ board/freescale/vybrid/vybrid.c| 488 + Vybrid is the SoC name and the board name is vf600, right? Then you should add: board/freescale/vf600 Also, please copy Stefano Babic in your future patches, as he is the U-boot imx maintainer. board/freescale/vybrid/vybridimage.cfg | 44 +++ boards.cfg | 2 + include/configs/vybrid.h | 284 +++ include/configs/vybrid_iram.h | 284 +++ 6 files changed, 1142 insertions(+) create mode 100644 board/freescale/vybrid/Makefile create mode 100644 board/freescale/vybrid/vybrid.c create mode 100644 board/freescale/vybrid/vybridimage.cfg create mode 100644 include/configs/vybrid.h create mode 100644 include/configs/vybrid_iram.h This patch should be the last of the series. You add the board support here, but ethernet, serial, esdhc support comes later in the patch series. Please add an entry to MAINTAINERS file. +#ifdef CONFIG_FSL_ESDHC +struct fsl_esdhc_cfg esdhc_cfg[2] = { + {CONFIG_SYS_ESDHC1_BASE, 1}, + {ESDHC2_BASE_ADDR, 1}, CONFIG_ESDHC2_BASE_ADDR ? +int dram_init(void) +{ + setup_iomux_ddr(); +#ifdef CONFIG_SYS_UBOOT_IN_GPURAM You introduced CONFIG_SYS_UBOOT_IN_GPURAM here and it would be nice to add an entry into README explaining what it means. + gd-ram_size = 0x8; + ddr_ctrl_init(); +#else + gd-ram_size = ddr_ctrl_init(); +#endif + return 0; Can't you use the standard method? gd-ram_size = get_ram_size((void *)PHYS_SDRAM, PHYS_SDRAM_SIZE); +#ifdef CONFIG_QUAD_SPI CONFIG_QUAD_SPI does not exist in U-boot. Can't you re-use an existing SPI config option? +#ifdef CONFIG_FSL_ESDHC +int board_mmc_getcd(struct mmc *mmc) +{ + int ret; + + __raw_writel(0x005031ef, IOMUXC_PAD_014); /* clk */ + __raw_writel(0x005031ef, IOMUXC_PAD_015); /* cmd */ + __raw_writel(0x005031ef, IOMUXC_PAD_016); /* dat0 */ + __raw_writel(0x005031ef, IOMUXC_PAD_017); /* dat1 */ + __raw_writel(0x005031ef, IOMUXC_PAD_018); /* dat2 */ + __raw_writel(0x005031ef, IOMUXC_PAD_019); /* dat3 */ This function should basically return the card detect status, please setup the IOMUX in another place. + ret = 1; + return ret; In this board you assume that the SD card is always present, right? You could remove the 'ret' variable. diff --git a/board/freescale/vybrid/vybridimage.cfg b/board/freescale/vybrid/vybridimage.cfg new file mode 100644 index 000..5da5659 --- /dev/null +++ b/board/freescale/vybrid/vybridimage.cfg @@ -0,0 +1,44 @@ +# +# Copyright 2012-2013 Freescale Semiconductor, Inc. +# +# See file CREDITS for list of people who contributed to this +# project. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not write to the Free Software +# Foundation Inc. 51 Franklin Street Fifth Floor Boston, +# MA 02110-1301 USA +# +# Refer docs/README.imxmage for more details about how-to configure +# and create imximage boot image +# +# The syntax is taken as close as possible with the kwbimage + +IMAGE_VERSION 2 + +# Boot Device : one of +# spi, sd (the board has no nand neither onenand) + +BOOT_FROM sd + +# Device Configuration Data (DCD) +# +# Each entry must have the format: +# Addr-type AddressValue +# +# where: +# Addr-type register length (1,2 or 4 bytes) +# Address absolute address of the register +# value value to be stored in the register + +# Setting IOMUXC This file is suited for imx. If you don't need this for Vybrid, please remove it. diff --git a/boards.cfg b/boards.cfg index 7725a15..2700a76 100644 --- a/boards.cfg +++ b/boards.cfg @@ -244,6 +244,8 @@ am335x_evm_uart5 arm armv7 am335x ti am335x_evm_usbsplarm armv7 am335x ti am33xx am335x_evm:SERIAL1,CONS_INDEX=1,SPL_USBETH_SUPPORT