mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-04 11:53:21 +09:00
![Simon Glass](/assets/img/avatar_default.png)
This converts the following to Kconfig: CONFIG_ENV_IS_IN_MMC CONFIG_ENV_IS_IN_NAND CONFIG_ENV_IS_IN_UBI CONFIG_ENV_IS_NOWHERE In fact this already exists for sunxi as a 'choice' config. However not all the choices are available in Kconfig yet so we cannot use that. It would lead to more than one option being set. In addition, one purpose of this series is to allow the environment to be stored in more than one place. So the existing choice is converted to a normal config allowing each option to be set independently. There are not many opportunities for Kconfig updates to reduce the size of this patch. This was tested with ./tools/moveconfig.py -i CONFIG_ENV_IS_IN_MMC And then manual updates. This is because for CHAIN_OF_TRUST boards they can only have ENV_IS_NOWHERE set, so we enforce that via Kconfig logic now. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com>
148 lines
4.4 KiB
C
148 lines
4.4 KiB
C
/*
|
|
* pcm051.h
|
|
*
|
|
* Phytec phyCORE-AM335x (pcm051) boards information header
|
|
*
|
|
* Copyright (C) 2013 Lemonage Software GmbH
|
|
* Author Lars Poeschel <poeschel@lemonage.de>
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License as
|
|
* published by the Free Software Foundation version 2.
|
|
*
|
|
* This program is distributed "as is" WITHOUT ANY WARRANTY of any
|
|
* kind, whether express or implied; without even the implied warranty
|
|
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*/
|
|
|
|
#ifndef __CONFIG_PCM051_H
|
|
#define __CONFIG_PCM051_H
|
|
|
|
#include <configs/ti_am335x_common.h>
|
|
|
|
#define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB */
|
|
#define CONFIG_MACH_TYPE MACH_TYPE_PCM051
|
|
|
|
/* set to negative value for no autoboot */
|
|
#define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
|
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
|
"loadaddr=0x80007fc0\0" \
|
|
"fdtaddr=0x80000000\0" \
|
|
"rdaddr=0x81000000\0" \
|
|
"bootfile=uImage\0" \
|
|
"fdtfile=pcm051.dtb\0" \
|
|
"console=ttyO0,115200n8\0" \
|
|
"optargs=\0" \
|
|
"mmcdev=0\0" \
|
|
"mmcroot=/dev/mmcblk0p2 ro\0" \
|
|
"mmcrootfstype=ext4 rootwait\0" \
|
|
"ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=${rdaddr},64M\0" \
|
|
"ramrootfstype=ext2\0" \
|
|
"mmcargs=setenv bootargs console=${console} " \
|
|
"${optargs} " \
|
|
"root=${mmcroot} " \
|
|
"rootfstype=${mmcrootfstype}\0" \
|
|
"bootenv=uEnv.txt\0" \
|
|
"loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \
|
|
"bootscript=echo Running bootscript from mmc${mmcdev} ...; " \
|
|
"source ${loadaddr}\0" \
|
|
"loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \
|
|
"importbootenv=echo Importing environment from mmc ...; " \
|
|
"env import -t $loadaddr $filesize\0" \
|
|
"ramargs=setenv bootargs console=${console} " \
|
|
"${optargs} " \
|
|
"root=${ramroot} " \
|
|
"rootfstype=${ramrootfstype}\0" \
|
|
"loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \
|
|
"loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} ${bootfile}\0" \
|
|
"loaduimage=ext2load mmc ${mmcdev}:2 ${loadaddr} ${bootfile}\0" \
|
|
"mmcboot=echo Booting from mmc ...; " \
|
|
"run mmcargs; " \
|
|
"bootm ${loadaddr}\0" \
|
|
"ramboot=echo Booting from ramdisk ...; " \
|
|
"run ramargs; " \
|
|
"bootm ${loadaddr}\0" \
|
|
|
|
#define CONFIG_BOOTCOMMAND \
|
|
"mmc dev ${mmcdev}; if mmc rescan; then " \
|
|
"echo SD/MMC found on device ${mmcdev};" \
|
|
"if run loadbootscript; then " \
|
|
"run bootscript;" \
|
|
"else " \
|
|
"if run loadbootenv; then " \
|
|
"echo Loaded environment from ${bootenv};" \
|
|
"run importbootenv;" \
|
|
"fi;" \
|
|
"if test -n $uenvcmd; then " \
|
|
"echo Running uenvcmd ...;" \
|
|
"run uenvcmd;" \
|
|
"fi;" \
|
|
"if run loaduimage; then " \
|
|
"run mmcboot;" \
|
|
"fi;" \
|
|
"fi ;" \
|
|
"fi;" \
|
|
|
|
/* Clock Defines */
|
|
#define V_OSCK 25000000 /* Clock output from T2 */
|
|
#define V_SCLK (V_OSCK)
|
|
|
|
/*
|
|
* memtest works on 8 MB in DRAM after skipping 32MB from
|
|
* start addr of ram disk
|
|
*/
|
|
#define CONFIG_SYS_MEMTEST_START (CONFIG_SYS_SDRAM_BASE + (64 << 20))
|
|
#define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START \
|
|
+ (8 * 1024 * 1024))
|
|
|
|
#define CONFIG_SF_DEFAULT_SPEED 24000000
|
|
|
|
#define CONFIG_CONS_INDEX 1
|
|
/* NS16550 Configuration */
|
|
#define CONFIG_SYS_NS16550_COM1 0x44e09000 /* Base EVM has UART0 */
|
|
#define CONFIG_SYS_NS16550_COM2 0x48022000 /* UART1 */
|
|
#define CONFIG_SYS_NS16550_COM3 0x48024000 /* UART2 */
|
|
#define CONFIG_SYS_NS16550_COM4 0x481a6000 /* UART3 */
|
|
#define CONFIG_SYS_NS16550_COM5 0x481a8000 /* UART4 */
|
|
#define CONFIG_SYS_NS16550_COM6 0x481aa000 /* UART5 */
|
|
|
|
/* I2C Configuration */
|
|
#define CONFIG_ENV_EEPROM_IS_ON_I2C
|
|
#define CONFIG_SYS_I2C_EEPROM_ADDR 0x50 /* Main EEPROM */
|
|
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
|
|
|
|
#define CONFIG_SYS_BAUDRATE_TABLE { 110, 300, 600, 1200, 2400, \
|
|
4800, 9600, 14400, 19200, 28800, 38400, 56000, 57600, 115200 }
|
|
|
|
/* CPU */
|
|
|
|
#define CONFIG_SPL_LDSCRIPT "arch/arm/mach-omap2/u-boot-spl.lds"
|
|
|
|
#ifdef CONFIG_SPI_BOOT
|
|
#define CONFIG_SPL_SPI_LOAD
|
|
#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000
|
|
#define CONFIG_SYS_SPI_U_BOOT_SIZE 0x40000
|
|
#endif
|
|
|
|
/*
|
|
* USB configuration
|
|
*/
|
|
#define CONFIG_USB_MUSB_DSPS
|
|
#define CONFIG_USB_MUSB_PIO_ONLY
|
|
#define CONFIG_AM335X_USB0
|
|
#define CONFIG_AM335X_USB0_MODE MUSB_PERIPHERAL
|
|
#define CONFIG_AM335X_USB1
|
|
#define CONFIG_AM335X_USB1_MODE MUSB_HOST
|
|
|
|
#ifdef CONFIG_USB_MUSB_GADGET
|
|
#define CONFIG_USB_ETHER
|
|
#define CONFIG_USB_ETH_RNDIS
|
|
#endif /* CONFIG_USB_MUSB_GADGET */
|
|
|
|
#define CONFIG_PHY_GIGE
|
|
#define CONFIG_PHYLIB
|
|
#define CONFIG_PHY_SMSC
|
|
|
|
#endif /* ! __CONFIG_PCM051_H */
|