Re: [U-Boot] [PATCH 0/9] Add basic Tegra30 (T30) support
On Wed, Sep 12, 2012 at 03:10:46PM -0700, Tom Warren wrote: This patch series adds basic (boot to cmd prompt) support for Tegra30. This is based on the Tegra20 SPL, which initializes the AVP (ARM7TDMI boot proc) first, then control is transferred to the CPU (A9 quad cluster). It is based on current u-boot-tegra/next. Future patches will add support/drivers for MMC, USB, I2C, SPI, NAND, and other peripherals. The Cardhu T30 board is supported initially. Let me put my TI Custodian hat on and say, I've been where you are and I have some advice. Make a local branch (or 5) of your working but needs re-factoring and re-cleaning tree, and start fresh from u-boot-tegra/next. Move more tegra20 files to the tegra common area. Strip (#if 0) the new include files bare. Bring it up again. If you bring in the framework so we can have plat/foo.h (which is in turn arch/$(ARCH)/include/plat-vendor) I will be so happy you beat me to the punch and with something a bit more (IMHO) clean than how the kernel handles plat/. You're masking a way a lot of things that are either identical (which is duplication which is bad) or subtly different (and you haven't hit it, yet). However you migrate from the current tree to the new tree (I've done a lot of ugly steps when I've done this locally, but it keeps the board working from change to change), do it and do it sooner rather than later. You will thank yourself in the end. -- Tom ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 0/9] Add basic Tegra30 (T30) support
Tom, On Thu, Sep 13, 2012 at 2:04 PM, Tom Rini tr...@ti.com wrote: On Wed, Sep 12, 2012 at 03:10:46PM -0700, Tom Warren wrote: This patch series adds basic (boot to cmd prompt) support for Tegra30. This is based on the Tegra20 SPL, which initializes the AVP (ARM7TDMI boot proc) first, then control is transferred to the CPU (A9 quad cluster). It is based on current u-boot-tegra/next. Future patches will add support/drivers for MMC, USB, I2C, SPI, NAND, and other peripherals. The Cardhu T30 board is supported initially. Let me put my TI Custodian hat on and say, I've been where you are and I have some advice. Make a local branch (or 5) of your working but needs re-factoring and re-cleaning tree, and start fresh from u-boot-tegra/next. Move more tegra20 files to the tegra common area. Strip (#if 0) the new include files bare. Bring it up again. If you bring in the framework so we can have plat/foo.h (which is in turn arch/$(ARCH)/include/plat-vendor) I will be so happy you beat me to the punch and with something a bit more (IMHO) clean than how the kernel handles plat/. You're masking a way a lot of things that are either identical (which is duplication which is bad) or subtly different (and you haven't hit it, yet). However you migrate from the current tree to the new tree (I've done a lot of ugly steps when I've done this locally, but it keeps the board working from change to change), do it and do it sooner rather than later. You will thank yourself in the end. Seems like good advice. I'm off tomorrow, so I'll take a look at your approach on Monday and see how it works for me. Thanks, Tom -- Tom ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 0/9] Add basic Tegra30 (T30) support
This patch series adds basic (boot to cmd prompt) support for Tegra30. This is based on the Tegra20 SPL, which initializes the AVP (ARM7TDMI boot proc) first, then control is transferred to the CPU (A9 quad cluster). It is based on current u-boot-tegra/next. Future patches will add support/drivers for MMC, USB, I2C, SPI, NAND, and other peripherals. The Cardhu T30 board is supported initially. Tom Warren (9): Tegra: T30: Add include files Tegra: T30: Add AVP (arm720t) files Tegra: T30: Add CPU (armv7) files Tegra: T30: Add common Tegra30 CPU files Tegra: DT: Add preliminary device tree files for T30 Cardhu Tegra30: Add Cardhu board files Tegra30: Add config files (common and Cardhu) Tegra30: Add common pinmux config in board_early_init_f Tegra30: Enable Cardhu build (SPL) Makefile | 23 + arch/arm/cpu/{armv7 = arm720t/tegra30}/Makefile | 27 +- arch/arm/cpu/arm720t/tegra30/board.h | 25 + arch/arm/cpu/arm720t/tegra30/config.mk | 26 + arch/arm/cpu/arm720t/tegra30/cpu.c | 570 +++ arch/arm/cpu/arm720t/tegra30/cpu.h | 65 ++ arch/arm/cpu/arm720t/tegra30/spl.c | 132 +++ arch/arm/cpu/armv7/Makefile |2 +- arch/arm/cpu/armv7/start.S |4 +- arch/arm/cpu/armv7/{ = tegra30}/Makefile| 23 +- arch/arm/cpu/armv7/tegra30/cmd_enterrcm.c| 65 ++ arch/arm/cpu/armv7/tegra30/config.mk | 26 + arch/arm/cpu/{armv7 = tegra30-common}/Makefile | 28 +- arch/arm/cpu/tegra30-common/ap30.c | 98 ++ arch/arm/cpu/tegra30-common/board.c | 141 +++ arch/arm/cpu/tegra30-common/clock.c | 1099 ++ arch/arm/cpu/tegra30-common/funcmux.c| 74 ++ arch/arm/cpu/tegra30-common/lowlevel_init.S | 42 + arch/arm/cpu/tegra30-common/pinmux.c | 507 ++ arch/arm/cpu/tegra30-common/sys_info.c | 35 + arch/arm/cpu/tegra30-common/timer.c | 111 +++ arch/arm/dts/tegra30.dtsi| 280 ++ arch/arm/include/asm/arch-tegra30/ap30.h | 99 ++ arch/arm/include/asm/arch-tegra30/board.h| 30 + arch/arm/include/asm/arch-tegra30/clk_rst.h | 277 ++ arch/arm/include/asm/arch-tegra30/clock.h| 602 arch/arm/include/asm/arch-tegra30/emc.h | 113 +++ arch/arm/include/asm/arch-tegra30/flow.h | 42 + arch/arm/include/asm/arch-tegra30/funcmux.h | 77 ++ arch/arm/include/asm/arch-tegra30/fuse.h | 39 + arch/arm/include/asm/arch-tegra30/gp_padctrl.h | 73 ++ arch/arm/include/asm/arch-tegra30/gpio.h | 322 +++ arch/arm/include/asm/arch-tegra30/hardware.h | 29 + arch/arm/include/asm/arch-tegra30/mmc.h | 28 + arch/arm/include/asm/arch-tegra30/pinmux.h | 610 arch/arm/include/asm/arch-tegra30/pmc.h | 132 +++ arch/arm/include/asm/arch-tegra30/pmu.h | 30 + arch/arm/include/asm/arch-tegra30/scu.h | 43 + arch/arm/include/asm/arch-tegra30/sys_proto.h| 35 + arch/arm/include/asm/arch-tegra30/tegra30.h | 109 +++ arch/arm/include/asm/arch-tegra30/tegra_i2c.h| 164 arch/arm/include/asm/arch-tegra30/timer.h| 31 + arch/arm/include/asm/arch-tegra30/uart.h | 47 + arch/arm/include/asm/arch-tegra30/usb.h | 253 + arch/arm/include/asm/arch-tegra30/warmboot.h | 150 +++ board/nvidia/cardhu/Makefile | 48 + board/nvidia/cardhu/cardhu.c | 87 ++ board/nvidia/cardhu/pinmux-config-common.h | 346 +++ board/nvidia/common/board.c | 27 +- board/nvidia/dts/tegra30-cardhu.dts | 92 ++ boards.cfg |1 + drivers/gpio/tegra_gpio.c|4 + include/configs/cardhu.h | 52 + include/configs/tegra30-common.h | 188 include/serial.h |3 +- spl/Makefile |3 + 56 files changed, 7536 insertions(+), 53 deletions(-) copy arch/arm/cpu/{armv7 = arm720t/tegra30}/Makefile (70%) create mode 100644 arch/arm/cpu/arm720t/tegra30/board.h create mode 100644 arch/arm/cpu/arm720t/tegra30/config.mk create mode 100644 arch/arm/cpu/arm720t/tegra30/cpu.c create mode 100644 arch/arm/cpu/arm720t/tegra30/cpu.h create mode 100644 arch/arm/cpu/arm720t/tegra30/spl.c copy arch/arm/cpu/armv7/{ = tegra30}/Makefile (76%) create mode 100644 arch/arm/cpu/armv7/tegra30/cmd_enterrcm.c create mode 100644 arch/arm/cpu/armv7/tegra30/config.mk copy arch/arm/cpu/{armv7 = tegra30-common}/Makefile (69%) create mode 100644 arch/arm/cpu/tegra30-common/ap30.c create mode 100644 arch/arm/cpu/tegra30-common/board.c create mode 100644