
Hello Stefan,
on 10.04.2013 09:17, Stefan Roese wrote:
Titanium is a i.MX6 based board from ProjectionDesign / Barco. This patch adds support for this board with the newly introduced NAND support for i.MX6.
Signed-off-by: Stefan Roese sr@denx.de
MAINTAINERS | 2 + board/freescale/titanium/Makefile | 36 ++++ board/freescale/titanium/imximage.cfg | 181 +++++++++++++++++ board/freescale/titanium/titanium.c | 372 ++++++++++++++++++++++++++++++++++ boards.cfg | 1 + include/configs/titanium.h | 274 +++++++++++++++++++++++++ 6 files changed, 866 insertions(+) create mode 100644 board/freescale/titanium/Makefile create mode 100644 board/freescale/titanium/imximage.cfg create mode 100644 board/freescale/titanium/titanium.c create mode 100644 include/configs/titanium.h
[...]
diff --git a/board/freescale/titanium/imximage.cfg b/board/freescale/titanium/imximage.cfg new file mode 100644 index 0000000..9172d0e --- /dev/null +++ b/board/freescale/titanium/imximage.cfg @@ -0,0 +1,181 @@ +/*
- Projectiondesign AS
- Derived from ./board/freescale/mx6qsabrelite/imximage.cfg
- 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.
- 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 nand
just Nitpicking: Comment says one of spi, sd you select nand ... and comment says the board has no nand ... ;-)
[...]
+/*
- Siste adresse i RAM. Starter på 0x10000000 og med 512MB blir dette
- siste 0x30000000 som er 768MB - sabrelite: 0x00000027
- */
Again Nitpick... comments in english please ...
[...]
diff --git a/board/freescale/titanium/titanium.c b/board/freescale/titanium/titanium.c new file mode 100644 index 0000000..3cf68cf --- /dev/null +++ b/board/freescale/titanium/titanium.c @@ -0,0 +1,372 @@
[...]
+static void setup_gpmi_nand(void) +{
- struct mxc_ccm_reg *mxc_ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR;
- unsigned int reg;
- /* config gpmi nand iomux */
- imx_iomux_v3_setup_multiple_pads(nfc_pads,
ARRAY_SIZE(nfc_pads));
- /* config gpmi and bch clock to 11Mhz*/
- reg = readl(&mxc_ccm->cs2cdr);
- reg &= 0xF800FFFF;
- reg |= 0x01E40000;
Hmm.. could you use some defines for this magic values?
- writel(reg, &mxc_ccm->cs2cdr);
- /* enable gpmi and bch clock gating */
- reg = readl(&mxc_ccm->CCGR4);
- reg |= 0xFF003000;
and here ...
- writel(reg, &mxc_ccm->CCGR4);
- /* enable apbh clock gating */
- reg = readl(&mxc_ccm->CCGR0);
- reg |= 0x0030;
and here ... Thanks!
- writel(reg, &mxc_ccm->CCGR0);
+}
[...]
bye, Heiko