mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-20 00:48:52 +09:00
![Tom Rini](/assets/img/avatar_default.png)
This series moves the CONFIG_SYS_CACHELINE_SIZE. First, in nearly all cases we are mirroring the values used by the Linux Kernel here. Also, so long as (and in this case, it is true) we implement flushes in hunks that are no larger than the smallest implementation (and given that we mirror the Linux Kernel, again we are fine) it is OK to align higher. The biggest changes here are that we always use 64 bytes for CPU_V7 even if for example the underlying core is only 32 bytes (this mirrors Linux). Second, we say ARM64 uses 64 bytes not 128 (as found in the Linux Kernel) as we do not need multi-platform support (to this degree) and only the Cavium ThunderX 88xx series has a use for such large alignment. Cc: Albert Aribaud <albert.u.boot@aribaud.net> Cc: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de> Cc: Prafulla Wadaskar <prafulla@marvell.com> Cc: Luka Perkov <luka.perkov@sartura.hr> Cc: Stefan Roese <sr@denx.de> Cc: Nagendra T S <nagendra@mistralsolutions.com> Cc: Vaibhav Hiremath <hvaibhav@ti.com> Acked-by: Lokesh Vutla <lokeshvutla@ti.com> Cc: Steve Rae <steve.rae@raedomain.com> Cc: Igor Grinberg <grinberg@compulab.co.il> Cc: Nikita Kiryanov <nikita@compulab.co.il> Cc: Stefan Agner <stefan.agner@toradex.com> Acked-by: Heiko Schocher <hs@denx.de> Cc: Mateusz Kulikowski <mateusz.kulikowski@gmail.com> Cc: Peter Griffin <peter.griffin@linaro.org> Acked-by: Paul Kocialkowski <contact@paulk.fr> Cc: Anatolij Gustschin <agust@denx.de> Acked-by: "Pali Rohár" <pali.rohar@gmail.com> Cc: Adam Ford <aford173@gmail.com> Cc: Steve Sakoman <sakoman@gmail.com> Cc: Grazvydas Ignotas <notasas@gmail.com> Cc: Nishanth Menon <nm@ti.com> Cc: Stephen Warren <swarren@wwwdotorg.org> Cc: Robert Baldyga <r.baldyga@samsung.com> Cc: Minkyu Kang <mk7.kang@samsung.com> Cc: Thomas Weber <weber@corscience.de> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> Cc: David Feng <fenghua@phytium.com.cn> Cc: Alison Wang <b18965@freescale.com> Cc: Michal Simek <michal.simek@xilinx.com> Cc: Simon Glass <sjg@chromium.org> Cc: York Sun <york.sun@nxp.com> Cc: Shengzhou Liu <Shengzhou.Liu@nxp.com> Cc: Mingkai Hu <mingkai.hu@nxp.com> Cc: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com> Cc: Aneesh Bansal <aneesh.bansal@freescale.com> Cc: Saksham Jain <saksham.jain@nxp.com> Cc: Qianyu Gong <qianyu.gong@nxp.com> Cc: Wang Dongsheng <dongsheng.wang@nxp.com> Cc: Alex Porosanu <alexandru.porosanu@freescale.com> Cc: Hongbo Zhang <hongbo.zhang@nxp.com> Cc: tang yuantian <Yuantian.Tang@freescale.com> Cc: Rajesh Bhagat <rajesh.bhagat@nxp.com> Cc: Josh Wu <josh.wu@atmel.com> Cc: Bo Shen <voice.shen@atmel.com> Cc: Viresh Kumar <viresh.kumar@linaro.org> Cc: Hannes Schmelzer <oe5hpm@oevsv.at> Cc: Thomas Chou <thomas@wytron.com.tw> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Sam Protsenko <semen.protsenko@linaro.org> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Christophe Ricard <christophe-h.ricard@st.com> Cc: Anand Moon <linux.amoon@gmail.com> Cc: Beniamino Galvani <b.galvani@gmail.com> Cc: Carlo Caione <carlo@endlessm.com> Cc: huang lin <hl@rock-chips.com> Cc: Sjoerd Simons <sjoerd.simons@collabora.co.uk> Cc: Xu Ziyuan <xzy.xu@rock-chips.com> Cc: "jk.kernel@gmail.com" <jk.kernel@gmail.com> Cc: "Ariel D'Alessandro" <ariel@vanguardiasur.com.ar> Cc: Kever Yang <kever.yang@rock-chips.com> Cc: Samuel Egli <samuel.egli@siemens.com> Cc: Chin Liang See <clsee@altera.com> Cc: Dinh Nguyen <dinguyen@opensource.altera.com> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Ian Campbell <ijc@hellion.org.uk> Cc: Siarhei Siamashka <siarhei.siamashka@gmail.com> Cc: Boris Brezillon <boris.brezillon@free-electrons.com> Cc: Andre Przywara <andre.przywara@arm.com> Cc: Bernhard Nortmann <bernhard.nortmann@web.de> Cc: Wolfgang Denk <wd@denx.de> Cc: Ben Whitten <ben.whitten@gmail.com> Cc: Tom Warren <twarren@nvidia.com> Cc: Alexander Graf <agraf@suse.de> Cc: Sekhar Nori <nsekhar@ti.com> Cc: Vitaly Andrianov <vitalya@ti.com> Cc: "Andrew F. Davis" <afd@ti.com> Cc: Murali Karicheri <m-karicheri2@ti.com> Cc: Carlos Hernandez <ceh@ti.com> Cc: Ladislav Michl <ladis@linux-mips.org> Cc: Ash Charles <ashcharles@gmail.com> Cc: Mugunthan V N <mugunthanvnm@ti.com> Cc: Daniel Allred <d-allred@ti.com> Cc: Gong Qianyu <Qianyu.Gong@freescale.com> Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com> Acked-by: Chin Liang See <clsee@altera.com> Tested-by: Stephen Warren <swarren@nvidia.com> Acked-by: Paul Kocialkowski <contact@paulk.fr>
147 lines
4.0 KiB
C
147 lines
4.0 KiB
C
/*
|
|
* Board configuration file for Dragonboard 410C
|
|
*
|
|
* (C) Copyright 2015 Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0+
|
|
*/
|
|
|
|
#ifndef __CONFIGS_DRAGONBOARD410C_H
|
|
#define __CONFIGS_DRAGONBOARD410C_H
|
|
|
|
#include <linux/sizes.h>
|
|
#include <asm/arch/sysmap-apq8016.h>
|
|
|
|
#define CONFIG_IDENT_STRING "\nQualcomm-DragonBoard 410C"
|
|
|
|
#define CONFIG_MISC_INIT_R /* To stop autoboot */
|
|
|
|
/* Physical Memory Map */
|
|
#define CONFIG_NR_DRAM_BANKS 1
|
|
#define PHYS_SDRAM_1 0x80000000
|
|
/* 1008 MB (the last ~30Mb are secured for TrustZone by ATF*/
|
|
#define PHYS_SDRAM_1_SIZE 0x3da00000
|
|
#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1
|
|
#define CONFIG_SYS_TEXT_BASE 0x80080000
|
|
#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x7fff0)
|
|
#define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + 0x80000)
|
|
#define CONFIG_SYS_BOOTM_LEN 0x1000000 /* 16MB max kernel size */
|
|
|
|
/* UART */
|
|
#define CONFIG_BAUDRATE 115200
|
|
|
|
/* Generic Timer Definitions */
|
|
#define COUNTER_FREQUENCY 19000000
|
|
|
|
/* This are needed to have proper mmc support */
|
|
#define CONFIG_MMC
|
|
#define CONFIG_GENERIC_MMC
|
|
#define CONFIG_SDHCI
|
|
|
|
#define CONFIG_SYS_LDSCRIPT "board/qualcomm/dragonboard410c/u-boot.lds"
|
|
|
|
/* Fixup - in init code we switch from device to host mode,
|
|
* it has to be done after each HCD reset */
|
|
#define CONFIG_EHCI_HCD_INIT_AFTER_RESET
|
|
|
|
#define CONFIG_USB_HOST_ETHER /* Enable USB Networking */
|
|
|
|
/* Support all possible USB ethernet dongles */
|
|
#define CONFIG_USB_ETHER_DM9601
|
|
#define CONFIG_USB_ETHER_ASIX
|
|
#define CONFIG_USB_ETHER_ASIX88179
|
|
#define CONFIG_USB_ETHER_MCS7830
|
|
#define CONFIG_USB_ETHER_SMSC95XX
|
|
|
|
/* Libraries */
|
|
#define CONFIG_MD5
|
|
|
|
/* Extra Commands */
|
|
#define CONFIG_CMD_ENV
|
|
#define CONFIG_CMD_GPT
|
|
#define CONFIG_CMD_MD5SUM
|
|
/* Enable that for switching of boot partitions */
|
|
/* Disabled by default as some sub-commands can brick eMMC */
|
|
/*#define CONFIG_SUPPORT_EMMC_BOOT */
|
|
#define CONFIG_CMD_PART
|
|
#define CONFIG_CMD_REGINFO /* Register dump */
|
|
#define CONFIG_CMD_TFTP
|
|
#define CONFIG_CMD_UNZIP
|
|
|
|
/* Partition table support */
|
|
#define HAVE_BLOCK_DEVICE /* Needed for partition commands */
|
|
#define CONFIG_PARTITION_UUIDS
|
|
|
|
#include <config_distro_defaults.h>
|
|
|
|
/* BOOTP options */
|
|
#define CONFIG_BOOTP_BOOTFILESIZE
|
|
|
|
/* Environment - Boot*/
|
|
#define CONFIG_BOOTARGS "console=ttyMSM0,115200n8"
|
|
|
|
#define BOOT_TARGET_DEVICES(func) \
|
|
func(USB, usb, 0) \
|
|
func(MMC, mmc, 1) \
|
|
func(MMC, mmc, 0) \
|
|
func(DHCP, dhcp, na)
|
|
|
|
#include <config_distro_bootcmd.h>
|
|
|
|
/* Does what recovery does */
|
|
#define REFLASH(file, part) \
|
|
"part start mmc 0 "#part" start && "\
|
|
"part size mmc 0 "#part" size && "\
|
|
"tftp $loadaddr "#file" && " \
|
|
"mmc write $loadaddr $start $size && "
|
|
|
|
#define CONFIG_ENV_REFLASH \
|
|
"mmc dev 0 && "\
|
|
"usb start && "\
|
|
"dhcp && "\
|
|
"tftp $loadaddr dragonboard/rescue/gpt_both0.bin && "\
|
|
"mmc write $loadaddr 0 43 && " \
|
|
"mmc rescan && "\
|
|
REFLASH(dragonboard/rescue/NON-HLOS.bin, 1)\
|
|
REFLASH(dragonboard/rescue/sbl1.mbn, 2)\
|
|
REFLASH(dragonboard/rescue/rpm.mbn, 3)\
|
|
REFLASH(dragonboard/rescue/tz.mbn, 4)\
|
|
REFLASH(dragonboard/rescue/hyp.mbn, 5)\
|
|
REFLASH(dragonboard/rescue/sec.dat, 6)\
|
|
REFLASH(dragonboard/rescue/emmc_appsboot.mbn, 7)\
|
|
REFLASH(dragonboard/u-boot.img, 8)\
|
|
"usb stop &&"\
|
|
"echo Reflash completed"
|
|
|
|
/* Environment */
|
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
|
"reflash="CONFIG_ENV_REFLASH"\0"\
|
|
"loadaddr=0x81000000\0" \
|
|
"fdt_high=0xffffffffffffffff\0" \
|
|
"initrd_high=0xffffffffffffffff\0" \
|
|
"linux_image=Image\0" \
|
|
"kernel_addr_r=0x81000000\0"\
|
|
"fdtfile=apq8016-sbc.dtb\0" \
|
|
"fdt_addr_r=0x83000000\0"\
|
|
"ramdisk_addr_r=0x84000000\0"\
|
|
"scriptaddr=0x90000000\0"\
|
|
"pxefile_addr_r=0x90100000\0"\
|
|
BOOTENV
|
|
|
|
#define CONFIG_ENV_IS_NOWHERE
|
|
#define CONFIG_ENV_SIZE 0x2000
|
|
#define CONFIG_ENV_VARS_UBOOT_CONFIG
|
|
#define CONFIG_SYS_NO_FLASH
|
|
|
|
/* Size of malloc() pool */
|
|
#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + SZ_8M)
|
|
|
|
/* Monitor Command Prompt */
|
|
#define CONFIG_SYS_CBSIZE 512 /* Console I/O Buffer Size */
|
|
#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
|
|
sizeof(CONFIG_SYS_PROMPT) + 16)
|
|
#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
|
|
#define CONFIG_SYS_MAXARGS 64 /* max command args */
|
|
|
|
#endif
|