public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v2 0/6] Add support for hi6220 SoC and HiKey 96boards CE board.
@ 2015-07-08 15:57 Peter Griffin
  2015-07-08 15:57 ` [U-Boot] [PATCH v2 1/6] dm: gpio: hi6220: Add a hi6220 GPIO driver model driver Peter Griffin
                   ` (5 more replies)
  0 siblings, 6 replies; 23+ messages in thread
From: Peter Griffin @ 2015-07-08 15:57 UTC (permalink / raw)
  To: u-boot

Hi Folks,

This series adds support for the first 96boards consumer edition HiKey board.

More information can be found about this board at the following link
https://www.96boards.org/products/hikey/.

This initial port adds support for: -
1) Serial 
2) eMMC and sd card
3) USB
4) GPIO

It has been tested with Arm Trusted Firmware running u-boot as the BL33 executable.

Some instructions on exactly how to compile everything (l-loader, 
with Arm Trusted Firmware, which then loads u-boot) is documented in the README found
in the board/hisilicon/hikey directory.
 
A basic SoC datasheet can be found here: -
https://github.com/96boards/documentation/blob/master/hikey/
Hi6220V100_Multi-Mode_Application_Processor_Function_Description.pdf
    
Board schematic can be found here: -
https://github.com/96boards/documentation/blob/master/hikey/
96Boards-Hikey-Rev-A1.pdf

A rather pleasant side effect of rebasing to v2015.07-rc2 is that the two main bugs
with the v1 series (that I new about at least) are resolved. DHCP now works correctly,
and USB mass storage devices are also enumerated).

I had a quick look at migrating the gpio driver over to DT like Simon suggested.
Currently there is a bug in fdtdec_get_addr() for 64bit platforms which I ran into.
See patch from Thierry here http://permalink.gmane.org/gmane.comp.boot-loaders.u-boot/215346

Also I'm not sure on the protocol here, but the DT nodes for the gpio controller aren't
yet present in upstream Linux kernel, so I think it would be better to wait until they are,
so that u-boot and kernel DT don't diverge. Migrating over to DT at that point should
then be fairly trivial.

Changes since v1:
- Rename vendor to hisilicon not 96boards (Rob)
- Get rid of aemv8a vexpress leftover (Rob)
- Remove __weak on misc_init_r (Rob)
- Remove unnecessary LINUX_BOOT_PARAM_ADDR (Rob)
- COUNTER_FREQUENCY in decimal to avoid comment (Rob)
- Remove leftover V2M* from vexpress (Rob)
- Migrate configs/hikey.h over to use config_distro_defaults.h (Rob)
- Remove custom u-boot prompt (Rob)
- Enable icache
- Remove custom delay function, as mdelay/udelay work fine (Rob)
- Update CONFIG_SYS_LOAD_ADDR to 0x80000 (Rob)

- Use suggested macro for declaring gpio addresses (Marek)
- Zap dead Macros (Marek)
- Use calloc instead of malloc (Marek)

- Reduce PHYS_RAM by 16Mb to accomodate OPTEE in latest ATF code (Peter)
- Rebase on v2015.07-rc2 (Peter)
- Add CONFIG_NET=y so that env callbacks work (Peter)

- Add a README on how to build / flash u-boot (Simon)


kind regards,

Peter.

Peter Griffin (6):
  dm: gpio: hi6220: Add a hi6220 GPIO driver model driver.
  ARM: hi6220: Add register and bitfield definition header files.
  hi6553: Add register definition and bitfield header for 6553 pmic
  mmc: hi6220_dw_mmc: Add hi6220 glue code for dw_mmc controller.
  ARM64: hikey: hi6220: Add u-boot support for the 96boards CE HiKey
    board.
  ARM64: hikey: Add a README for this board.

 arch/arm/Kconfig                                   |   8 +
 arch/arm/include/asm/arch-hi6220/dwmmc.h           |   8 +
 arch/arm/include/asm/arch-hi6220/gpio.h            |  29 ++
 arch/arm/include/asm/arch-hi6220/hi6220.h          | 324 ++++++++++++++++
 .../include/asm/arch-hi6220/hi6220_regs_alwayson.h | 349 +++++++++++++++++
 arch/arm/include/asm/arch-hi6220/hi6553.h          |  75 ++++
 board/hisilicon/hikey/Kconfig                      |  15 +
 board/hisilicon/hikey/Makefile                     |   8 +
 board/hisilicon/hikey/README                       | 160 ++++++++
 board/hisilicon/hikey/hikey.c                      | 415 +++++++++++++++++++++
 configs/hikey_defconfig                            |   5 +
 drivers/gpio/Makefile                              |   2 +
 drivers/gpio/hi6220_gpio.c                         |  95 +++++
 drivers/mmc/Makefile                               |   1 +
 drivers/mmc/hi6220_dw_mmc.c                        |  56 +++
 include/configs/hikey.h                            | 168 +++++++++
 16 files changed, 1718 insertions(+)
 create mode 100644 arch/arm/include/asm/arch-hi6220/dwmmc.h
 create mode 100644 arch/arm/include/asm/arch-hi6220/gpio.h
 create mode 100644 arch/arm/include/asm/arch-hi6220/hi6220.h
 create mode 100644 arch/arm/include/asm/arch-hi6220/hi6220_regs_alwayson.h
 create mode 100644 arch/arm/include/asm/arch-hi6220/hi6553.h
 create mode 100644 board/hisilicon/hikey/Kconfig
 create mode 100644 board/hisilicon/hikey/Makefile
 create mode 100644 board/hisilicon/hikey/README
 create mode 100644 board/hisilicon/hikey/hikey.c
 create mode 100644 configs/hikey_defconfig
 create mode 100644 drivers/gpio/hi6220_gpio.c
 create mode 100644 drivers/mmc/hi6220_dw_mmc.c
 create mode 100644 include/configs/hikey.h

-- 
1.9.1

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

end of thread, other threads:[~2015-07-29 21:07 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-08 15:57 [U-Boot] [PATCH v2 0/6] Add support for hi6220 SoC and HiKey 96boards CE board Peter Griffin
2015-07-08 15:57 ` [U-Boot] [PATCH v2 1/6] dm: gpio: hi6220: Add a hi6220 GPIO driver model driver Peter Griffin
2015-07-18 14:37   ` Simon Glass
2015-07-08 15:57 ` [U-Boot] [PATCH v2 2/6] ARM: hi6220: Add register and bitfield definition header files Peter Griffin
2015-07-18 14:37   ` Simon Glass
2015-07-29 21:07     ` Peter Griffin
2015-07-08 15:57 ` [U-Boot] [PATCH v2 3/6] hi6553: Add register definition and bitfield header for 6553 pmic Peter Griffin
2015-07-18 14:37   ` Simon Glass
2015-07-29 21:04     ` Peter Griffin
2015-07-08 15:57 ` [U-Boot] [PATCH v2 4/6] mmc: hi6220_dw_mmc: Add hi6220 glue code for dw_mmc controller Peter Griffin
2015-07-09  4:30   ` Jaehoon Chung
2015-07-18 14:38   ` Simon Glass
2015-07-19  9:39     ` Peter Griffin
2015-07-20  2:17       ` Simon Glass
2015-07-08 15:57 ` [U-Boot] [PATCH v2 5/6] ARM64: hikey: hi6220: Add u-boot support for the 96boards CE HiKey board Peter Griffin
2015-07-10 18:36   ` Rob Herring
2015-07-16  0:41     ` Peter Griffin
2015-07-16 13:28       ` Rob Herring
2015-07-16 13:39         ` Tom Rini
2015-07-29 20:59         ` Peter Griffin
2015-07-18 14:38   ` Simon Glass
2015-07-28 17:37     ` Peter Griffin
2015-07-08 15:57 ` [U-Boot] [PATCH v2 6/6] ARM64: hikey: Add a README for this board Peter Griffin

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