Re: [U-Boot] [PATCH 0/9] Add basic Tegra30 (T30) support

2012-09-13 Thread Tom Rini
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

2012-09-13 Thread Tom Warren
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

2012-09-12 Thread Tom Warren
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