[U-Boot] [PATCH v3 7/8] ARM64: hikey: hi6220: Add u-boot support for the 96boards CE HiKey board.

Peter Robinson pbrobinson at gmail.com
Thu Jul 30 12:17:30 CEST 2015


On Thu, Jul 30, 2015 at 9:46 AM, Sjoerd Simons
<sjoerd.simons at collabora.co.uk> wrote:
> On Wed, 2015-07-29 at 22:39 +0100, Peter Griffin wrote:
>> HiKey is the first 96boards consumer edition compliant board. It
>> features a hi6220
>> SoC which has eight ARM A53 cpu's.
>>
>> This initial port adds support for: -
>> 1) Serial
>> 2) eMMC / SD card
>> 3) USB
>> 4) GPIO
>>
>> It has been tested with Arm Trusted Firmware running u-boot as the
>> BL33 executable.
>>
>> Notes:
>>
>> eMMC has been tested with basic reading of eMMC partition into DDR. I
>> have not
>> tested writing / erasing. Due to lack of clock control it won't be
>> running in the most performant high speed mode.
>>
>> SD card slot has been tested for reading and booting kernels into
>> DDR.
>> It is also currently configured to save the u-boot environment to the
>> SD card.
>>
>> USB has been tested with ASIX networking adapter to tftpboot kernels
>> into DDR. On v2015.07-rc2 dhcp now works, and also USB mass storage
>> are correctly enumerated.
>>
>> GPIO has been tested using gpio toggle GPIO4_1-3 to flash the LEDs.
>>
>> 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
>>
>> Signed-off-by: Peter Griffin <peter.griffin at linaro.org>
>> -
>> diff --git a/include/configs/hikey.h b/include/configs/hikey.h
>> new file mode 100644
>> index 0000000..6bb0b7d
>> --- /dev/null
>> +++ b/include/configs/hikey.h
>> @@ -0,0 +1,159 @@
>>
>> +/* SD/MMC configuration */
>> +#define CONFIG_GENERIC_MMC
>> +#define CONFIG_MMC
>> +#define CONFIG_DWMMC
>> +#define CONFIG_HIKEY_DWMMC
>> +#define CONFIG_BOUNCE_BUFFER
>> +#define CONFIG_CMD_MMC
>> +
>> +#define CONFIG_FS_EXT4
>
>> +
>> +/* Command line configuration */
>> +#define CONFIG_MENU
>> +#define CONFIG_CMD_CACHE
>> +#define CONFIG_CMD_UNZIP
>> +#define CONFIG_CMD_ENV
>> +
>> +#define CONFIG_MTD_PARTITIONS
>> +
>> +/* BOOTP options */
>> +#define CONFIG_BOOTP_BOOTFILESIZE
>> +
>> +#include <config_distro_defaults.h>
>> +
>> +/* Initial environment variables */
>> +
>> +/*
>> + * Defines where the kernel and FDT will be put in RAM
>> + */
>> +
>> +#define CONFIG_EXTRA_ENV_SETTINGS    \
>> +                             "kernel_name=Image\0"   \
>> +                             "kernel_addr_r=0x00080000\0" \
>> +                             "fdt_name=hi6220-hikey.dtb\0" \
>> +                             "fdt_addr_r=0x02000000\0" \
>> +                             "fdt_high=0xffffffffffffffff\0" \
>> +                             "initrd_high=0xffffffffffffffff\0" \
>> +
>> +/* Assume we boot with root on the seventh partition of eMMC */
>> +#define CONFIG_BOOTARGS      "console=ttyAMA0,115200n8
>> root=/dev/mmcblk0p9 rw"
>> +
>> +/* Copy the kernel and FDT to DRAM memory and boot */
>> +#define CONFIG_BOOTCOMMAND   "usb start; dhcp;" \
>> +                             "tftp $kernel_addr_r $kernel_name;"
>> \
>> +                             "tftp $fdt_addr_r $fdt_name;" \
>> +                             "booti $kernel_addr_r - $fdt_addr_r"
>
> Why not use config_distro_bootcmd.h to get a somewhat standard boot
> sequence rather then hardcoding a tftp boot and a rootfs on a specific
> mmc partition?
>
>
>> +#define CONFIG_BOOTDELAY             2
>
> This redefines the default in config_distro_defaults


I completely agree, please use distro_defaults


More information about the U-Boot mailing list