]> git.ipfire.org Git - people/ms/u-boot.git/commit - board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c
powerpc/85xx: Add support for new P102x/P2020 RDB style boards
authorLi Yang <leoli@freescale.com>
Tue, 26 Jul 2011 14:50:46 +0000 (09:50 -0500)
committerKumar Gala <galak@kernel.crashing.org>
Fri, 30 Sep 2011 00:01:04 +0000 (19:01 -0500)
commit14aa71e6603def3bf258d9d05f11fe8454a59e50
tree4cd1915d5800bcbf17d90ae73661f0d0de111dfa
parent6ca88b0958d90afc43d09a0dee245c5254959003
powerpc/85xx: Add support for new P102x/P2020 RDB style boards

The following boards share a common design but with minor variations
between them:

P1020MSBG-PC
P1020RDB-PC
P1020UTM-PC
P1021RDB-PC
P1024RDB
P1025RDB
P2020RDB-PC

The P1020RDB-PC shares its roots in the existing P1020RDB board design,
however uses DDR3 instead of DDR2.
P2020RDB-PC differs from the P102x RDB-PC with 64-bit DDR and 100Mhz SYSCLK.

Key features on these boards include:
* DDR3
* NOR flash
* NAND flash (on RDB's only)
* SPI flash (on RDB's only)
* SDHC/MMC card slot
* VSC7385 Ethernet switch (on P1020MBG, P1020RDB, & P1021RDB)
* PCIE slot and mini-PCIE slots

As these boards use soldered DDR chips not regular DIMMs, an on-board EEPROM
is used to store SPD data. In case of absent or corrupted SPD, falling back
to timing data embedded in the source code will be used. Raw timing data is
extracted from DDR chip datasheet. Different speeds of DDR are supported
with this approach. ODT option is forced to fit this set of boards, again
because they don't have regular DIMMs.

CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS is defined as 5ms to meet
specification for writing timing.

VSC firmware Address is defined by default in config file for eTSEC1.

SD width is based off DIP switch. DIP switch is detected on the
board by reading i2c bus and setting the appropriate mux values.

Some boards have QE module in the silicon (P1021 and P1025). QE and eLBC
have pins multiplexing. QE function needs to be disabled to access Nor Flash
and CPLD. QE-UEC and QE-UART can be enabled for linux kernel by setting "qe"
in hwconfig. In addition, QE-UEC and QE-TDM also have pins multiplexing, to
enable QE-TDM for linux kernel, set "qe;tdm" in hwconfig. Syntax is as below

'setenv hwconfig qe' to enable QE UEC/UART and disable Nor-Flash/CPLD.
'setenv hwconfig 'qe;tdm'' to enalbe QE TDM and disable Nor-Flash/CPLD.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Zhao Chenhui <b26998@freescale.com>
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Priyanka Jain <Priyanka.Jain@freescale.com>
Signed-off-by: Tang Yuantian <b29983@freescale.com>
Signed-off-by: ramneek.mehresh <ramneek.mehresh@freescale.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Xie Xiaobo <X.Xie@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com>
Signed-off-by: Akhil Goyal <akhil.goyal@freescale.com>
board/freescale/p1_p2_rdb_pc/Makefile [new file with mode: 0644]
board/freescale/p1_p2_rdb_pc/ddr.c [new file with mode: 0644]
board/freescale/p1_p2_rdb_pc/law.c [new file with mode: 0644]
board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c [new file with mode: 0644]
board/freescale/p1_p2_rdb_pc/tlb.c [new file with mode: 0644]
boards.cfg
doc/README.p1_p2_rdb_pc [new file with mode: 0644]
include/configs/p1_p2_rdb_pc.h [new file with mode: 0644]
nand_spl/board/freescale/p1_p2_rdb_pc/Makefile [new file with mode: 0644]
nand_spl/board/freescale/p1_p2_rdb_pc/nand_boot.c [new file with mode: 0644]