[U-Boot] [PATCH 5/5] ARM64: poplar: hi3798cv200: u-boot support for Poplar 96Boards

Jorge Ramirez jorge.ramirez-ortiz at linaro.org
Wed May 10 15:22:35 UTC 2017


On 05/04/2017 03:59 PM, Daniel Thompson wrote:
> On 04/05/17 14:47, Jorge Ramirez-Ortiz wrote:
>> diff --git a/include/configs/poplar.h b/include/configs/poplar.h
>> new file mode 100644
>> index 0000000..fb0ca19
>> --- /dev/null
>> +++ b/include/configs/poplar.h
>> @@ -0,0 +1,113 @@
>> +/*
>> + * (C) Copyright 2017 Linaro
>> + *
>> + * Jorge Ramirez-Ortiz <jorge.ramirez-ortiz at linaro.org>
>> + *
>> + * Configuration for Poplar 96boards CE. Parts were derived from 
>> other ARM
>> + * configurations.
>> + *
>> + * SPDX-License-Identifier:    GPL-2.0+
>> + */
>> +
>> +#ifndef _POPLAR_H_
>> +#define _POPLAR_H_
>> +
>> +#include <linux/sizes.h>
>> +
>> +/* network config */
>> +#define CONFIG_NET_MULTI            1
>> +#define CONFIG_PHY_GIGE                1
>> +#define CONFIG_ARP_TIMEOUT            500000L
>> +#define CONFIG_NET_RETRY_COUNT             50
>> +#define CONFIG_SYS_FAULT_ECHO_LINK_DOWN     1
>> +#define CONFIG_SYS_RX_ETH_BUFFER        16
>> +#define CONFIG_NET_RANDOM_ETHADDR
>> +
>> +/* memory */
>> +#define PHYS_SDRAM_1                0x00000000
>> +#define PHYS_SDRAM_1_SIZE            0x40000000
>> +#define CONFIG_NR_DRAM_BANKS            4
>> +#define DRAM_BANK_SIZE                0x10000000
>> +
>> +/* sys */
>> +#define CONFIG_SYS_BOOTM_LEN             0x1400000
>> +#define CONFIG_SYS_INIT_RAM_SIZE        0x100000
>> +#define CONFIG_SYS_SDRAM_BASE            PHYS_SDRAM_1
>> +#define CONFIG_SYS_INIT_SP_ADDR            (PHYS_SDRAM_1 + 0x200000)
>> +#define CONFIG_SYS_LOAD_ADDR            (PHYS_SDRAM_1 + 0x800000)
>> +#define CONFIG_SYS_MALLOC_LEN            (PHYS_SDRAM_1 + SZ_8M)
>> +
>> +/* must match bl33.bin load address */
>> +#define CONFIG_SYS_TEXT_BASE            0x37000000
>> +
>> +/* generic gimer */
>> +#define COUNTER_FREQUENCY            19000000
>> +
>> +/* generic interrupt controller definitions */
>> +#define GICD_BASE                0xF1001000
>> +#define GICC_BASE                0xF1002000
>> +
>> +/* serial port PL010/PL011 */
>> +#define CONFIG_PL01X_SERIAL
>> +
>> +/* USB configuration */
>> +#define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS    3
>> +#define CONFIG_USB_MAX_CONTROLLER_COUNT        2
>> +#define CONFIG_SYS_USB_EVENT_POLL
>> +#define CONFIG_USB_ETHER_SMSC95XX
>> +#define CONFIG_USB_HOST_ETHER
>> +#define CONFIG_USB_ETHER_ASIX
>> +
>> +/* SD/MMC configuration */
>> +#define CONFIG_BOUNCE_BUFFER
>> +/***************************************************************************** 
>>
>> + *  Initial environment variables
>> + 
>> *****************************************************************************/
>> +
>> +#define CONFIG_NETMASK                255.255.255.0
>> +#define CONFIG_SERVERIP                192.168.1.4
>> +#define CONFIG_GATEWAYIP            192.168.1.1
>> +
>> +#define BOOT_TARGET_DEVICES(func)                     \
>> +                    func(USB, usb, 0)        \
>> +                    func(MMC, mmc, 0)         \
>> +                    func(DHCP, dhcp, na)
>> +
>> +#ifndef CONFIG_SPL_BUILD
>> +#include <config_distro_defaults.h>
>> +#include <config_distro_bootcmd.h>
>> +#endif
>> +
>> +
>> +#define CONFIG_EXTRA_ENV_SETTINGS                    \
>> +                    "loader_mmc_blknum=0x0\0"    \
>> +                    "loader_mmc_nblks=0x780\0"    \
>> +                    "env_mmc_blknum=0xF0000\0"    \
>
> Shouldn't this be 0x780 (i.e. a blknum rather than bytes)

yes!


>
>> + "env_mmc_nblks=0x80\0"        \
>> +                    "kernel_addr_r=0x30000000\0"    \
>> +                    "pxefile_addr_r=0x32000000\0"    \
>> +                    "scriptaddr=0x32000000\0"    \
>> +                    "fdt_addr_r=0x32200000\0"    \
>> +                    "ramdisk_addr_r=0x32400000\0"    \
>> +    BOOTENV
>> +
>> +
>> +/* Command line configuration */
>> +#define CONFIG_ENV_IS_IN_MMC        1
>> +#define CONFIG_SYS_MMC_ENV_DEV        0
>> +#define CONFIG_ENV_OFFSET        0xF0000  /* env_mmc_blknum */
>> +#define CONFIG_ENV_SIZE            0x10000  /* env_mmc_nblks bytes */
>
> Possibly express these are (0x780 * 512) to make absolutely explicit 
> the relationship to the blknum/nblks values?

OK.

>
>> +#define CONFIG_CMD_ENV
>> +#define CONFIG_FAT_WRITE
>> +#define CONFIG_ENV_VARS_UBOOT_CONFIG
>> +
>> +/* Monitor Command Prompt */
>> +#define CONFIG_CMDLINE_EDITING
>> +#define CONFIG_SYS_LONGHELP
>> +#define CONFIG_SYS_CBSIZE            512
>> +#define CONFIG_SYS_MAXARGS            64
>> +#define CONFIG_SYS_PBSIZE            (CONFIG_SYS_CBSIZE + \
>> +                        sizeof(CONFIG_SYS_PROMPT) + 16)
>> +#define CONFIG_SYS_BARGSIZE            CONFIG_SYS_CBSIZE
>> +
>> +#endif /* _POPLAR_H_ */
>>
>



More information about the U-Boot mailing list