public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
@ 2012-09-11 18:32 Fabio Estevam
  2012-09-11 18:32 ` [U-Boot] [PATCH 2/2] mx6: Add basic support for mx6qsabresd board Fabio Estevam
  2012-09-12  2:26 ` [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code Liu Hui-R64343
  0 siblings, 2 replies; 12+ messages in thread
From: Fabio Estevam @ 2012-09-11 18:32 UTC (permalink / raw)
  To: u-boot

Factor out common DDR3 initialization code, allowing easier maintainance of such 
scripts.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
 .../arm/imx-common/ddr/mx6q_ddr3.cfg               |    0
 board/freescale/mx6qarm2/imximage.cfg              |  173 --------------------
 boards.cfg                                         |    4 +-
 3 files changed, 2 insertions(+), 175 deletions(-)
 rename board/freescale/mx6qsabrelite/imximage.cfg => arch/arm/imx-common/ddr/mx6q_ddr3.cfg (100%)
 delete mode 100644 board/freescale/mx6qarm2/imximage.cfg

diff --git a/board/freescale/mx6qsabrelite/imximage.cfg b/arch/arm/imx-common/ddr/mx6q_ddr3.cfg
similarity index 100%
rename from board/freescale/mx6qsabrelite/imximage.cfg
rename to arch/arm/imx-common/ddr/mx6q_ddr3.cfg
diff --git a/board/freescale/mx6qarm2/imximage.cfg b/board/freescale/mx6qarm2/imximage.cfg
deleted file mode 100644
index bf941a3..0000000
--- a/board/freescale/mx6qarm2/imximage.cfg
+++ /dev/null
@@ -1,173 +0,0 @@
-# Copyright (C) 2011 Freescale Semiconductor, Inc.
-# Jason Liu <r64343@freescale.com>
-#
-# 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
-
-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           Address        Value
-#
-# where:
-#	Addr-type register length (1,2 or 4 bytes)
-#	Address	  absolute address of the register
-#	value	  value to be stored in the register
-DATA 4 0x020e05a8 0x00000030
-DATA 4 0x020e05b0 0x00000030
-DATA 4 0x020e0524 0x00000030
-DATA 4 0x020e051c 0x00000030
-
-DATA 4 0x020e0518 0x00000030
-DATA 4 0x020e050c 0x00000030
-DATA 4 0x020e05b8 0x00000030
-DATA 4 0x020e05c0 0x00000030
-
-DATA 4 0x020e05ac 0x00020030
-DATA 4 0x020e05b4 0x00020030
-DATA 4 0x020e0528 0x00020030
-DATA 4 0x020e0520 0x00020030
-
-DATA 4 0x020e0514 0x00020030
-DATA 4 0x020e0510 0x00020030
-DATA 4 0x020e05bc 0x00020030
-DATA 4 0x020e05c4 0x00020030
-
-DATA 4 0x020e056c 0x00020030
-DATA 4 0x020e0578 0x00020030
-DATA 4 0x020e0588 0x00020030
-DATA 4 0x020e0594 0x00020030
-
-DATA 4 0x020e057c 0x00020030
-DATA 4 0x020e0590 0x00003000
-DATA 4 0x020e0598 0x00003000
-DATA 4 0x020e058c 0x00000000
-
-DATA 4 0x020e059c 0x00003030
-DATA 4 0x020e05a0 0x00003030
-DATA 4 0x020e0784 0x00000030
-DATA 4 0x020e0788 0x00000030
-
-DATA 4 0x020e0794 0x00000030
-DATA 4 0x020e079c 0x00000030
-DATA 4 0x020e07a0 0x00000030
-DATA 4 0x020e07a4 0x00000030
-
-DATA 4 0x020e07a8 0x00000030
-DATA 4 0x020e0748 0x00000030
-DATA 4 0x020e074c 0x00000030
-DATA 4 0x020e0750 0x00020000
-
-DATA 4 0x020e0758 0x00000000
-DATA 4 0x020e0774 0x00020000
-DATA 4 0x020e078c 0x00000030
-DATA 4 0x020e0798 0x000C0000
-
-DATA 4 0x021b081c 0x33333333
-DATA 4 0x021b0820 0x33333333
-DATA 4 0x021b0824 0x33333333
-DATA 4 0x021b0828 0x33333333
-
-DATA 4 0x021b481c 0x33333333
-DATA 4 0x021b4820 0x33333333
-DATA 4 0x021b4824 0x33333333
-DATA 4 0x021b4828 0x33333333
-
-DATA 4 0x021b0018 0x00081740
-
-DATA 4 0x021b001c 0x00008000
-DATA 4 0x021b000c 0x555A7975
-DATA 4 0x021b0010 0xFF538E64
-DATA 4 0x021b0014 0x01FF00DB
-DATA 4 0x021b002c 0x000026D2
-
-DATA 4 0x021b0030 0x005B0E21
-DATA 4 0x021b0008 0x09444040
-DATA 4 0x021b0004 0x00025576
-DATA 4 0x021b0040 0x00000027
-DATA 4 0x021b0000 0xC31A0000
-
-DATA 4 0x021b001c 0x04088032
-DATA 4 0x021b001c 0x0408803A
-DATA 4 0x021b001c 0x00008033
-DATA 4 0x021b001c 0x0000803B
-DATA 4 0x021b001c 0x00428031
-DATA 4 0x021b001c 0x00428039
-DATA 4 0x021b001c 0x09408030
-DATA 4 0x021b001c 0x09408038
-
-DATA 4 0x021b001c 0x04008040
-DATA 4 0x021b001c 0x04008048
-DATA 4 0x021b0800 0xA1380003
-DATA 4 0x021b4800 0xA1380003
-DATA 4 0x021b0020 0x00005800
-DATA 4 0x021b0818 0x00022227
-DATA 4 0x021b4818 0x00022227
-
-DATA 4 0x021b083c 0x434B0350
-DATA 4 0x021b0840 0x034C0359
-DATA 4 0x021b483c 0x434B0350
-DATA 4 0x021b4840 0x03650348
-DATA 4 0x021b0848 0x4436383B
-DATA 4 0x021b4848 0x39393341
-DATA 4 0x021b0850 0x35373933
-DATA 4 0x021b4850 0x48254A36
-
-DATA 4 0x021b080c 0x001F001F
-DATA 4 0x021b0810 0x001F001F
-
-DATA 4 0x021b480c 0x00440044
-DATA 4 0x021b4810 0x00440044
-
-DATA 4 0x021b08b8 0x00000800
-DATA 4 0x021b48b8 0x00000800
-
-DATA 4 0x021b001c 0x00000000
-DATA 4 0x021b0404 0x00011006
-
-DATA 4 0x020e0010 0xF00000FF
-DATA 4 0x020e0018 0x00070007
-DATA 4 0x020e001c 0x00070007
-
-DATA 4 0x020c4068 0x00C03F3F
-DATA 4 0x020c406c 0x0030FC00
-DATA 4 0x020c4070 0x0FFFC000
-DATA 4 0x020c4074 0x3FF00000
-DATA 4 0x020c4078 0x00FFF300
-DATA 4 0x020c407c 0x0F0000C3
-DATA 4 0x020c4080 0x000003FF
-
-# enable AXI cache for VDOA/VPU/IPU
-DATA 4 0x020e0010 0xF00000CF
-# set IPU AXI-id0 Qos=0xf(bypass) AXI-id1 Qos=0x7
-DATA 4 0x020e0018 0x007F007F
-DATA 4 0x020e001c 0x007F007F
diff --git a/boards.cfg b/boards.cfg
index 72e7803..a3bec35 100644
--- a/boards.cfg
+++ b/boards.cfg
@@ -230,8 +230,8 @@ mx53loco                     arm         armv7       mx53loco            freesca
 mx53smd                      arm         armv7       mx53smd             freescale      mx5		mx53smd:IMX_CONFIG=board/freescale/mx53smd/imximage.cfg
 ima3-mx53                    arm         armv7       ima3-mx53           esg            mx5		ima3-mx53:IMX_CONFIG=board/esg/ima3-mx53/imximage.cfg
 vision2                      arm         armv7       vision2             ttcontrol      mx5		vision2:IMX_CONFIG=board/ttcontrol/vision2/imximage_hynix.cfg
-mx6qarm2                     arm         armv7       mx6qarm2            freescale      mx6		mx6qarm2:IMX_CONFIG=board/freescale/mx6qarm2/imximage.cfg
-mx6qsabrelite                arm         armv7       mx6qsabrelite       freescale      mx6		mx6qsabrelite:IMX_CONFIG=board/freescale/mx6qsabrelite/imximage.cfg
+mx6qarm2                     arm         armv7       mx6qarm2            freescale      mx6		mx6qarm2:IMX_CONFIG=arch/arm/imx-common/ddr/mx6q_ddr3.cfg
+mx6qsabrelite                arm         armv7       mx6qsabrelite       freescale      mx6		mx6qsabrelite:IMX_CONFIG=arch/arm/imx-common/ddr/mx6q_ddr3.cfg
 cm_t35                       arm         armv7       cm_t35              -              omap3
 omap3_overo                  arm         armv7       overo               -              omap3
 omap3_pandora                arm         armv7       pandora             -              omap3
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 2/2] mx6: Add basic support for mx6qsabresd board.
  2012-09-11 18:32 [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code Fabio Estevam
@ 2012-09-11 18:32 ` Fabio Estevam
  2012-09-12 17:30   ` Vikram Narayanan
  2012-09-12  2:26 ` [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code Liu Hui-R64343
  1 sibling, 1 reply; 12+ messages in thread
From: Fabio Estevam @ 2012-09-11 18:32 UTC (permalink / raw)
  To: u-boot

mx6qsabresd is a board based on mx6q SoC with the following features:
- 1GB of DDR3
- 1 USB OTG port
- 1 HDMI output port
- SPI NOR
- LVDS panel
- Gigabit Ethernet
- Camera Connector
- eMMC and SD card slot
- Audio

Add very basic support for it.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
 MAINTAINERS                               |    1 +
 board/freescale/mx6qsabresd/Makefile      |   37 +++++++
 board/freescale/mx6qsabresd/mx6qsabresd.c |  118 ++++++++++++++++++++
 boards.cfg                                |    1 +
 include/configs/mx6qsabresd.h             |  171 +++++++++++++++++++++++++++++
 5 files changed, 328 insertions(+)
 create mode 100644 board/freescale/mx6qsabresd/Makefile
 create mode 100644 board/freescale/mx6qsabresd/mx6qsabresd.c
 create mode 100644 include/configs/mx6qsabresd.h

diff --git a/MAINTAINERS b/MAINTAINERS
index 4aabcff..130d0cc 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -654,6 +654,7 @@ Fabio Estevam <fabio.estevam@freescale.com>
 	mx31pdk		i.MX31
 	mx53ard		i.MX53
 	mx53smd		i.MX53
+	mx6qsabresd	i.MX6Q
 
 Daniel Gorsulowski <daniel.gorsulowski@esd.eu>
 
diff --git a/board/freescale/mx6qsabresd/Makefile b/board/freescale/mx6qsabresd/Makefile
new file mode 100644
index 0000000..477bc3a
--- /dev/null
+++ b/board/freescale/mx6qsabresd/Makefile
@@ -0,0 +1,37 @@
+#
+# Copyright (C) 2007, Guennadi Liakhovetski <lg@denx.de>
+#
+# (C) Copyright 2011 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.
+#
+
+include $(TOPDIR)/config.mk
+
+LIB    = $(obj)lib$(BOARD).o
+
+COBJS  := mx6qsabresd.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/mx6qsabresd/mx6qsabresd.c b/board/freescale/mx6qsabresd/mx6qsabresd.c
new file mode 100644
index 0000000..1020227
--- /dev/null
+++ b/board/freescale/mx6qsabresd/mx6qsabresd.c
@@ -0,0 +1,118 @@
+/*
+ * Copyright (C) 2012 Freescale Semiconductor, Inc.
+ *
+ * Author: Fabio Estevam <fabio.estevam@freescale.com>
+ *
+ * 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.
+ */
+
+#include <common.h>
+#include <asm/io.h>
+#include <asm/arch/clock.h>
+#include <asm/arch/imx-regs.h>
+#include <asm/arch/iomux.h>
+#include <asm/arch/mx6x_pins.h>
+#include <asm/errno.h>
+#include <asm/gpio.h>
+#include <asm/imx-common/iomux-v3.h>
+#include <mmc.h>
+#include <fsl_esdhc.h>
+#include <miiphy.h>
+#include <netdev.h>
+DECLARE_GLOBAL_DATA_PTR;
+
+#define UART_PAD_CTRL  (PAD_CTL_PKE | PAD_CTL_PUE |            \
+	PAD_CTL_PUS_100K_UP | PAD_CTL_SPEED_MED |               \
+	PAD_CTL_DSE_40ohm   | PAD_CTL_SRE_FAST  | PAD_CTL_HYS)
+
+#define USDHC_PAD_CTRL (PAD_CTL_PKE | PAD_CTL_PUE |            \
+	PAD_CTL_PUS_47K_UP  | PAD_CTL_SPEED_LOW |               \
+	PAD_CTL_DSE_80ohm   | PAD_CTL_SRE_FAST  | PAD_CTL_HYS)
+
+#define ENET_PAD_CTRL  (PAD_CTL_PKE | PAD_CTL_PUE |		\
+	PAD_CTL_PUS_100K_UP | PAD_CTL_SPEED_MED   |		\
+	PAD_CTL_DSE_40ohm   | PAD_CTL_HYS)
+
+int dram_init(void)
+{
+	gd->ram_size = get_ram_size((void *)PHYS_SDRAM, PHYS_SDRAM_SIZE);
+
+	return 0;
+}
+
+iomux_v3_cfg_t uart1_pads[] = {
+	MX6Q_PAD_CSI0_DAT10__UART1_TXD | MUX_PAD_CTRL(UART_PAD_CTRL),
+	MX6Q_PAD_CSI0_DAT11__UART1_RXD | MUX_PAD_CTRL(UART_PAD_CTRL),
+};
+
+iomux_v3_cfg_t usdhc3_pads[] = {
+	MX6Q_PAD_SD3_CLK__USDHC3_CLK   | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+	MX6Q_PAD_SD3_CMD__USDHC3_CMD   | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+	MX6Q_PAD_SD3_DAT0__USDHC3_DAT0 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+	MX6Q_PAD_SD3_DAT1__USDHC3_DAT1 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+	MX6Q_PAD_SD3_DAT2__USDHC3_DAT2 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+	MX6Q_PAD_SD3_DAT3__USDHC3_DAT3 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+	MX6Q_PAD_NANDF_D0__GPIO_2_0    | MUX_PAD_CTRL(NO_PAD_CTRL), /* CD */
+};
+
+static void setup_iomux_uart(void)
+{
+	imx_iomux_v3_setup_multiple_pads(uart1_pads, ARRAY_SIZE(uart1_pads));
+}
+
+#ifdef CONFIG_FSL_ESDHC
+struct fsl_esdhc_cfg usdhc_cfg[1] = {
+	{USDHC3_BASE_ADDR},
+};
+
+int board_mmc_getcd(struct mmc *mmc)
+{
+	gpio_direction_input(IMX_GPIO_NR(2, 0));
+	return !gpio_get_value(IMX_GPIO_NR(2, 0));
+}
+
+int board_mmc_init(bd_t *bis)
+{
+	imx_iomux_v3_setup_multiple_pads(usdhc3_pads, ARRAY_SIZE(usdhc3_pads));
+
+	return fsl_esdhc_initialize(bis, &usdhc_cfg[0]);
+}
+#endif
+
+u32 get_board_rev(void)
+{
+	return 0x63000;
+}
+
+int board_early_init_f(void)
+{
+	setup_iomux_uart();
+
+	return 0;
+}
+
+int board_init(void)
+{
+	/* address of boot parameters */
+	gd->bd->bi_boot_params = PHYS_SDRAM + 0x100;
+
+	return 0;
+}
+
+int checkboard(void)
+{
+	puts("Board: MX6Q-SabreSD\n");
+
+	return 0;
+}
diff --git a/boards.cfg b/boards.cfg
index a3bec35..da0ed85 100644
--- a/boards.cfg
+++ b/boards.cfg
@@ -232,6 +232,7 @@ ima3-mx53                    arm         armv7       ima3-mx53           esg
 vision2                      arm         armv7       vision2             ttcontrol      mx5		vision2:IMX_CONFIG=board/ttcontrol/vision2/imximage_hynix.cfg
 mx6qarm2                     arm         armv7       mx6qarm2            freescale      mx6		mx6qarm2:IMX_CONFIG=arch/arm/imx-common/ddr/mx6q_ddr3.cfg
 mx6qsabrelite                arm         armv7       mx6qsabrelite       freescale      mx6		mx6qsabrelite:IMX_CONFIG=arch/arm/imx-common/ddr/mx6q_ddr3.cfg
+mx6qsabresd                  arm         armv7       mx6qsabresd         freescale      mx6           mx6qsabresd:IMX_CONFIG=arch/arm/imx-common/ddr/mx6q_ddr3.cfg
 cm_t35                       arm         armv7       cm_t35              -              omap3
 omap3_overo                  arm         armv7       overo               -              omap3
 omap3_pandora                arm         armv7       pandora             -              omap3
diff --git a/include/configs/mx6qsabresd.h b/include/configs/mx6qsabresd.h
new file mode 100644
index 0000000..f4ba9c3
--- /dev/null
+++ b/include/configs/mx6qsabresd.h
@@ -0,0 +1,171 @@
+/*
+ * Copyright (C) 2012 Freescale Semiconductor, Inc.
+ *
+ * Configuration settings for the Freescale i.MX6Q SabreSD board.
+ *
+ * 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.
+ */
+
+#ifndef __CONFIG_H
+#define __CONFIG_H
+
+#define CONFIG_MX6Q
+#define CONFIG_SYS_MX6_HCLK            24000000
+#define CONFIG_SYS_MX6_CLK32           32768
+#define CONFIG_DISPLAY_CPUINFO
+#define CONFIG_DISPLAY_BOARDINFO
+
+#define CONFIG_MACH_TYPE	3980
+
+#include <asm/arch/imx-regs.h>
+
+#define CONFIG_CMDLINE_TAG
+#define CONFIG_SETUP_MEMORY_TAGS
+#define CONFIG_INITRD_TAG
+#define CONFIG_REVISION_TAG
+
+/* Size of malloc() pool */
+#define CONFIG_SYS_MALLOC_LEN          CONFIG_ENV_SIZE
+
+#define CONFIG_ARCH_CPU_INIT
+#define CONFIG_BOARD_EARLY_INIT_F
+#define CONFIG_MXC_GPIO
+
+#define CONFIG_MXC_UART
+#define CONFIG_MXC_UART_BASE           UART1_BASE
+
+/* MMC Configs */
+#define CONFIG_FSL_ESDHC
+#define CONFIG_FSL_USDHC
+#define CONFIG_SYS_FSL_ESDHC_ADDR      0
+#define CONFIG_SYS_FSL_USDHC_NUM       2
+
+#define CONFIG_MMC
+#define CONFIG_CMD_MMC
+#define CONFIG_GENERIC_MMC
+#define CONFIG_CMD_EXT2
+#define CONFIG_CMD_FAT
+#define CONFIG_DOS_PARTITION
+
+/* allow to overwrite serial and ethaddr */
+#define CONFIG_ENV_OVERWRITE
+#define CONFIG_CONS_INDEX              1
+#define CONFIG_BAUDRATE                        115200
+#define CONFIG_SYS_BAUDRATE_TABLE      {9600, 19200, 38400, 57600, 115200}
+
+/* Command definition */
+#include <config_cmd_default.h>
+
+#undef CONFIG_CMD_IMLS
+
+#define CONFIG_BOOTDELAY               3
+
+#define CONFIG_LOADADDR                        0x10800000
+#define CONFIG_SYS_TEXT_BASE           0x17800000
+
+#define CONFIG_EXTRA_ENV_SETTINGS \
+	"script=boot.scr\0" \
+	"uimage=uImage\0" \
+	"console=ttymxc0\0" \
+	"fdt_high=0xffffffff\0"	  \
+	"initrd_high=0xffffffff\0" \
+	"mmcdev=0\0" \
+	"mmcpart=2\0" \
+	"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
+	"mmcargs=setenv bootargs console=${console},${baudrate} " \
+		"root=${mmcroot}\0" \
+	"loadbootscript=" \
+		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
+	"bootscript=echo Running bootscript from mmc ...; " \
+		"source\0" \
+	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
+		"mmcboot=echo Booting from mmc ...; " \
+		"run mmcargs; " \
+		"bootm\0" \
+	"netargs=setenv bootargs console=${console},${baudrate} " \
+		"root=/dev/nfs " \
+		"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
+	"netboot=echo Booting from net ...; " \
+		"run netargs; " \
+		"dhcp ${uimage}; bootm\0" \
+
+#define CONFIG_BOOTCOMMAND \
+	"mmc dev ${mmcdev};" \
+	"if mmc rescan ${mmcdev}; then " \
+		"if run loadbootscript; then " \
+		"run bootscript; " \
+		"else " \
+			"if run loaduimage; then " \
+				"run mmcboot; " \
+			"else run netboot; " \
+			"fi; " \
+		"fi; " \
+	"else run netboot; fi"
+
+#define CONFIG_ARP_TIMEOUT     200UL
+
+/* Miscellaneous configurable options */
+#define CONFIG_SYS_LONGHELP
+#define CONFIG_SYS_HUSH_PARSER
+#define CONFIG_SYS_PROMPT_HUSH_PS2     "> "
+#define CONFIG_SYS_PROMPT              "MX6QSABRESD U-Boot > "
+#define CONFIG_AUTO_COMPLETE
+#define CONFIG_SYS_CBSIZE              256
+
+/* Print Buffer Size */
+#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
+#define CONFIG_SYS_MAXARGS             16
+#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
+
+#define CONFIG_SYS_MEMTEST_START       0x10000000
+#define CONFIG_SYS_MEMTEST_END         0x10010000
+
+#define CONFIG_SYS_LOAD_ADDR           CONFIG_LOADADDR
+#define CONFIG_SYS_HZ                  1000
+
+#define CONFIG_CMDLINE_EDITING
+#define CONFIG_STACKSIZE               (128 * 1024)
+
+/* Physical Memory Map */
+#define CONFIG_NR_DRAM_BANKS           1
+#define PHYS_SDRAM                     MMDC0_ARB_BASE_ADDR
+#define PHYS_SDRAM_SIZE                        (1u * 1024 * 1024 * 1024)
+
+#define CONFIG_SYS_SDRAM_BASE          PHYS_SDRAM
+#define CONFIG_SYS_INIT_RAM_ADDR       IRAM_BASE_ADDR
+#define CONFIG_SYS_INIT_RAM_SIZE       IRAM_SIZE
+
+#define CONFIG_SYS_INIT_SP_OFFSET \
+	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
+#define CONFIG_SYS_INIT_SP_ADDR \
+	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
+
+/* FLASH and environment organization */
+#define CONFIG_SYS_NO_FLASH
+
+#define CONFIG_ENV_SIZE			(8 * 1024)
+
+#define CONFIG_ENV_IS_IN_MMC
+
+#if defined(CONFIG_ENV_IS_IN_MMC)
+#define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
+#define CONFIG_SYS_MMC_ENV_DEV		0
+#endif
+
+#define CONFIG_OF_LIBFDT
+
+#define CONFIG_SYS_DCACHE_OFF
+
+#ifndef CONFIG_SYS_DCACHE_OFF
+#define CONFIG_CMD_CACHE
+#endif
+
+#endif                         /* __CONFIG_H */
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
  2012-09-11 18:32 [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code Fabio Estevam
  2012-09-11 18:32 ` [U-Boot] [PATCH 2/2] mx6: Add basic support for mx6qsabresd board Fabio Estevam
@ 2012-09-12  2:26 ` Liu Hui-R64343
  2012-09-12  2:32   ` Fabio Estevam
  2012-09-12 18:22   ` Fabio Estevam
  1 sibling, 2 replies; 12+ messages in thread
From: Liu Hui-R64343 @ 2012-09-12  2:26 UTC (permalink / raw)
  To: u-boot

>-----Original Message-----
From: u-boot-bounces@lists.denx.de [mailto:u-boot-bounces at lists.denx.de]
>On Behalf Of Fabio Estevam
>Sent: Wednesday, September 12, 2012 2:33 AM
>To: sbabic at denx.de
>Cc: Estevam Fabio-R49496; u-boot at lists.denx.de
>Subject: [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
>
>Factor out common DDR3 initialization code, allowing easier maintainance of
>such scripts.

Are you sure that we can use on DDR3 script to cover 3 kind of boards:

ARM2/Sabrelite/SabreSD? Did you do the DDR stress test?

>
>Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
>---
> .../arm/imx-common/ddr/mx6q_ddr3.cfg               |    0
> board/freescale/mx6qarm2/imximage.cfg              |  173 --------------------
> boards.cfg                                         |    4 +-
> 3 files changed, 2 insertions(+), 175 deletions(-)  rename
>board/freescale/mx6qsabrelite/imximage.cfg => arch/arm/imx-
>common/ddr/mx6q_ddr3.cfg (100%)  delete mode 100644
>board/freescale/mx6qarm2/imximage.cfg
>
>diff --git a/board/freescale/mx6qsabrelite/imximage.cfg b/arch/arm/imx-

[...]

>1.7.9.5
>
>
>_______________________________________________
>U-Boot mailing list
>U-Boot at lists.denx.de
>http://lists.denx.de/mailman/listinfo/u-boot

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
  2012-09-12  2:26 ` [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code Liu Hui-R64343
@ 2012-09-12  2:32   ` Fabio Estevam
       [not found]     ` <AD13664F485EE54694E29A7F9D5BE1AF348CFA@039-SN2MPN1-022.039d.mgd.msft.net>
  2012-09-12 18:22   ` Fabio Estevam
  1 sibling, 1 reply; 12+ messages in thread
From: Fabio Estevam @ 2012-09-12  2:32 UTC (permalink / raw)
  To: u-boot

On Tue, Sep 11, 2012 at 11:26 PM, Liu Hui-R64343 <r64343@freescale.com> wrote:
>>-----Original Message-----
>>From: u-boot-bounces at lists.denx.de [mailto:u-boot-bounces at lists.denx.de]
>>On Behalf Of Fabio Estevam
>>Sent: Wednesday, September 12, 2012 2:33 AM
>>To: sbabic at denx.de
>>Cc: Estevam Fabio-R49496; u-boot at lists.denx.de
>>Subject: [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
>>
>>Factor out common DDR3 initialization code, allowing easier maintainance of
>>such scripts.
>
> Are you sure that we can use on DDR3 script to cover 3 kind of boards:
>
> ARM2/Sabrelite/SabreSD? Did you do the DDR stress test?

Yes, mtest runs fine.

I also plan to do the same for mx53 boards.

Regards,

Fabio Estevam

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
       [not found]     ` <AD13664F485EE54694E29A7F9D5BE1AF348CFA@039-SN2MPN1-022.039d.mgd.msft.net>
@ 2012-09-12  2:55       ` Fabio Estevam
  2012-09-12  8:34       ` stefano babic
  1 sibling, 0 replies; 12+ messages in thread
From: Fabio Estevam @ 2012-09-12  2:55 UTC (permalink / raw)
  To: u-boot

On Tue, Sep 11, 2012 at 11:42 PM, Liu Hui-R64343 <r64343@freescale.com> wrote:

> mtest is not enough, you need run FSL DDR stress test tool.

I will be glad to test it, if you port it to U-boot ;-)

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
       [not found]     ` <AD13664F485EE54694E29A7F9D5BE1AF348CFA@039-SN2MPN1-022.039d.mgd.msft.net>
  2012-09-12  2:55       ` Fabio Estevam
@ 2012-09-12  8:34       ` stefano babic
  1 sibling, 0 replies; 12+ messages in thread
From: stefano babic @ 2012-09-12  8:34 UTC (permalink / raw)
  To: u-boot

Am 12/09/2012 04:42, schrieb Liu Hui-R64343:
>> -----Original Message-----
>> From: Fabio Estevam [mailto:festevam at gmail.com]
>> Sent: Wednesday, September 12, 2012 10:33 AM
>> To: Liu Hui-R64343
>> Cc: Estevam Fabio-R49496; sbabic at denx.de; u-boot at lists.denx.de
>> Subject: Re: [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
>>
>> On Tue, Sep 11, 2012 at 11:26 PM, Liu Hui-R64343 <r64343@freescale.com>
>> wrote:
>>>> -----Original Message-----
>>>> From: u-boot-bounces at lists.denx.de
>>>> [mailto:u-boot-bounces at lists.denx.de]
>>>> On Behalf Of Fabio Estevam
>>>> Sent: Wednesday, September 12, 2012 2:33 AM
>>>> To: sbabic at denx.de
>>>> Cc: Estevam Fabio-R49496; u-boot at lists.denx.de
>>>> Subject: [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
>>>>
>>>> Factor out common DDR3 initialization code, allowing easier
>>>> maintainance of such scripts.
>>>
>>> Are you sure that we can use on DDR3 script to cover 3 kind of boards:
>>>
>>> ARM2/Sabrelite/SabreSD? Did you do the DDR stress test?
>>
>> Yes, mtest runs fine.
> 
> mtest is not enough, you need run FSL DDR stress test tool.

Then you are saying the *current* configuration in u-boot is already
buggy. Fabio has only moved the setup but the boards use now the same
configuration. Can you tell us which problem you have found with the
current code ?

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
=====================================================================

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 2/2] mx6: Add basic support for mx6qsabresd board.
  2012-09-11 18:32 ` [U-Boot] [PATCH 2/2] mx6: Add basic support for mx6qsabresd board Fabio Estevam
@ 2012-09-12 17:30   ` Vikram Narayanan
  2012-09-12 17:35     ` Fabio Estevam
  0 siblings, 1 reply; 12+ messages in thread
From: Vikram Narayanan @ 2012-09-12 17:30 UTC (permalink / raw)
  To: u-boot

On 9/12/2012 12:02 AM, Fabio Estevam wrote:
> mx6qsabresd is a board based on mx6q SoC with the following features:
> - 1GB of DDR3
> - 1 USB OTG port
> - 1 HDMI output port
> - SPI NOR
> - LVDS panel
> - Gigabit Ethernet
> - Camera Connector
> - eMMC and SD card slot
> - Audio
>
> Add very basic support for it.
>
> Signed-off-by: Fabio Estevam<fabio.estevam@freescale.com>
<snip>
> +/* allow to overwrite serial and ethaddr */
> +#define CONFIG_ENV_OVERWRITE
> +#define CONFIG_CONS_INDEX              1
> +#define CONFIG_BAUDRATE                        115200
> +#define CONFIG_SYS_BAUDRATE_TABLE      {9600, 19200, 38400, 57600, 115200}

According to this commit,
"CONFIG_SYS_BAUDRATE_TABLE: Add <config_fallbacks.h>, place there"
(26750c8aee2383a026e0cf89e9310628d3a5a6a0), the above line isn't 
required anymore. Right?

Regards,
Vikram

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 2/2] mx6: Add basic support for mx6qsabresd board.
  2012-09-12 17:30   ` Vikram Narayanan
@ 2012-09-12 17:35     ` Fabio Estevam
  0 siblings, 0 replies; 12+ messages in thread
From: Fabio Estevam @ 2012-09-12 17:35 UTC (permalink / raw)
  To: u-boot

Hi Vikram,

On Wed, Sep 12, 2012 at 2:30 PM, Vikram Narayanan <vikram186@gmail.com> wrote:

> According to this commit,
> "CONFIG_SYS_BAUDRATE_TABLE: Add <config_fallbacks.h>, place there"
> (26750c8aee2383a026e0cf89e9310628d3a5a6a0), the above line isn't required
> anymore. Right?

Yes, you are right. Will remove it in v2.

Thanks,

Fabio Estevam

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
  2012-09-12  2:26 ` [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code Liu Hui-R64343
  2012-09-12  2:32   ` Fabio Estevam
@ 2012-09-12 18:22   ` Fabio Estevam
  2012-09-12 22:06     ` stefano babic
  1 sibling, 1 reply; 12+ messages in thread
From: Fabio Estevam @ 2012-09-12 18:22 UTC (permalink / raw)
  To: u-boot

Jason,

On Tue, Sep 11, 2012 at 11:26 PM, Liu Hui-R64343 <r64343@freescale.com> wrote:

> Are you sure that we can use on DDR3 script to cover 3 kind of boards:
>
> ARM2/Sabrelite/SabreSD? Did you do the DDR stress test?

Ok, looking more closely at this I will keep the ARM2 DDR3 init as is
in my v2 series.

sabrelite and sabresd does have the same DDR3 init as per the FSL U-boot source.

arm2 has a different DDR3 density, so I will not touch this file.

Regards,

Fabio Estevam

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
  2012-09-12 18:22   ` Fabio Estevam
@ 2012-09-12 22:06     ` stefano babic
  2012-09-13  4:57       ` Fabio Estevam
  0 siblings, 1 reply; 12+ messages in thread
From: stefano babic @ 2012-09-12 22:06 UTC (permalink / raw)
  To: u-boot

Am 12/09/2012 20:22, schrieb Fabio Estevam:
> Jason,
> 

Hi Fabio,

> On Tue, Sep 11, 2012 at 11:26 PM, Liu Hui-R64343 <r64343@freescale.com> wrote:
> 
>> Are you sure that we can use on DDR3 script to cover 3 kind of boards:
>>
>> ARM2/Sabrelite/SabreSD? Did you do the DDR stress test?
> 
> Ok, looking more closely at this I will keep the ARM2 DDR3 init as is
> in my v2 series.
> 
> sabrelite and sabresd does have the same DDR3 init as per the FSL U-boot source.
> 
> arm2 has a different DDR3 density, so I will not touch this file.

Ok - before you put your next version, is imx-common the right place fir
it ? I mean, in imx-common we should put code that can be shared among
different Freescale's SOCs. The imximage you want to share is common to
some boards, not SOCs. Should we put it into a freescale's directory,
let see something into boards/freescale ? There is already a
boards/freescale/common, but it is PowerPC specific, so maybe it is not
the right place, but we could add a new one. What do you think ?

Best regards,
Stefano


-- 
=====================================================================
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
=====================================================================

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
  2012-09-12 22:06     ` stefano babic
@ 2012-09-13  4:57       ` Fabio Estevam
  2012-09-13  8:06         ` stefano babic
  0 siblings, 1 reply; 12+ messages in thread
From: Fabio Estevam @ 2012-09-13  4:57 UTC (permalink / raw)
  To: u-boot

Hi Stefano,

On Wed, Sep 12, 2012 at 7:06 PM, stefano babic <sbabic@denx.de> wrote:

> Ok - before you put your next version, is imx-common the right place fir
> it ? I mean, in imx-common we should put code that can be shared among
> different Freescale's SOCs. The imximage you want to share is common to
> some boards, not SOCs. Should we put it into a freescale's directory,
> let see something into boards/freescale ? There is already a
> boards/freescale/common, but it is PowerPC specific, so maybe it is not
> the right place, but we could add a new one. What do you think ?

Ok, good point. What about boards/freescale/imx/ddr ?

Regards,

Fabio Estevam

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code
  2012-09-13  4:57       ` Fabio Estevam
@ 2012-09-13  8:06         ` stefano babic
  0 siblings, 0 replies; 12+ messages in thread
From: stefano babic @ 2012-09-13  8:06 UTC (permalink / raw)
  To: u-boot

Am 13/09/2012 06:57, schrieb Fabio Estevam:
> Hi Stefano,
> 
> On Wed, Sep 12, 2012 at 7:06 PM, stefano babic <sbabic@denx.de> wrote:
> 
>> Ok - before you put your next version, is imx-common the right place fir
>> it ? I mean, in imx-common we should put code that can be shared among
>> different Freescale's SOCs. The imximage you want to share is common to
>> some boards, not SOCs. Should we put it into a freescale's directory,
>> let see something into boards/freescale ? There is already a
>> boards/freescale/common, but it is PowerPC specific, so maybe it is not
>> the right place, but we could add a new one. What do you think ?
> 
> Ok, good point. What about boards/freescale/imx/ddr ?

It is fine with me

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
=====================================================================

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2012-09-13  8:06 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-11 18:32 [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code Fabio Estevam
2012-09-11 18:32 ` [U-Boot] [PATCH 2/2] mx6: Add basic support for mx6qsabresd board Fabio Estevam
2012-09-12 17:30   ` Vikram Narayanan
2012-09-12 17:35     ` Fabio Estevam
2012-09-12  2:26 ` [U-Boot] [PATCH 1/2] mx6q: Factor out common DDR3 init code Liu Hui-R64343
2012-09-12  2:32   ` Fabio Estevam
     [not found]     ` <AD13664F485EE54694E29A7F9D5BE1AF348CFA@039-SN2MPN1-022.039d.mgd.msft.net>
2012-09-12  2:55       ` Fabio Estevam
2012-09-12  8:34       ` stefano babic
2012-09-12 18:22   ` Fabio Estevam
2012-09-12 22:06     ` stefano babic
2012-09-13  4:57       ` Fabio Estevam
2012-09-13  8:06         ` stefano babic

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox