1 /* SPDX-License-Identifier: GPL-2.0+ */
5 * Phytec phyCORE-AM335x R2 (PCL060 / PCM060) boards information header
7 * Copyright (C) 2011, Texas Instruments, Incorporated - http://www.ti.com/
8 * Copyright (C) 2013 Lars Poeschel, Lemonage Software GmbH
9 * Copyright (C) 2019 DENX Software Engineering GmbH
12 #ifndef __CONFIG_PHYCORE_AM335x_R2_H
13 #define __CONFIG_PHYCORE_AM335x_R2_H
15 #include <configs/ti_am335x_common.h>
17 #define CONFIG_MACH_TYPE MACH_TYPE_SBC_PHYCORE_AM335X
18 #define CONFIG_SYS_MMC_ENV_DEV 0
19 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
21 #ifdef CONFIG_MTD_RAW_NAND
23 "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \
24 "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \
25 "nandargs=setenv bootargs console=${console} " \
28 "rootfstype=${nandrootfstype}\0" \
29 "nandroot=ubi0:root ubi.mtd=NAND.UBI\0" \
30 "nandrootfstype=ubifs rootwait rw fsck.repair=yes\0" \
31 "nandboot=echo Booting from nand ...; " \
33 "ubi part NAND.UBI; " \
34 "ubi readvol ${fdtaddr} oftree; " \
35 "ubi readvol ${loadaddr} kernel; " \
36 "bootz ${loadaddr} - ${fdtaddr}\0"
42 /* set to negative value for no autoboot */
43 #define BOOTENV_DEV_LEGACY_MMC(devtypeu, devtypel, instance) \
44 "bootcmd_" #devtypel #instance "=" \
45 "setenv mmcdev " #instance "; "\
46 "setenv bootpart " #instance ":1 ; "\
47 "setenv rootpart " #instance ":2 ; "\
50 #define BOOTENV_DEV_NAME_LEGACY_MMC(devtypeu, devtypel, instance) \
51 #devtypel #instance " "
53 #define BOOTENV_DEV_NAND(devtypeu, devtypel, instance) \
54 "bootcmd_" #devtypel #instance "=" \
57 #define BOOTENV_DEV_NAME_NAND(devtypeu, devtypel, instance) \
58 #devtypel #instance " "
60 #define BOOT_TARGET_DEVICES(func) \
62 func(LEGACY_MMC, legacy_mmc, 0) \
64 func(LEGACY_MMC, legacy_mmc, 1) \
67 #include <config_distro_bootcmd.h>
68 #include <environment/ti/dfu.h>
69 #include <environment/ti/mmc.h>
71 #define CONFIG_EXTRA_ENV_SETTINGS \
73 DEFAULT_LINUX_BOOT_ENV \
75 "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \
76 "console=ttyS0,115200\0" \
78 "mmcrootfstype=ext2 rootwait\0" \
79 "finduuid=part uuid mmc ${rootpart} uuid\0" \
85 #define V_OSCK 25000000 /* Clock output from T2 */
88 #define CONFIG_POWER_TPS65910
90 #ifdef CONFIG_MTD_RAW_NAND
91 /* NAND: device related configs */
92 #define CONFIG_SYS_NAND_5_ADDR_CYCLE
93 #define CONFIG_SYS_NAND_PAGE_COUNT (CONFIG_SYS_NAND_BLOCK_SIZE / \
94 CONFIG_SYS_NAND_PAGE_SIZE)
95 #define CONFIG_SYS_NAND_PAGE_SIZE 2048
96 #define CONFIG_SYS_NAND_OOBSIZE 64
97 #define CONFIG_SYS_NAND_BLOCK_SIZE (128 * 1024)
98 /* NAND: driver related configs */
99 #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS
100 #define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \
101 10, 11, 12, 13, 14, 15, 16, 17, \
102 18, 19, 20, 21, 22, 23, 24, 25, \
103 26, 27, 28, 29, 30, 31, 32, 33, \
104 34, 35, 36, 37, 38, 39, 40, 41, \
105 42, 43, 44, 45, 46, 47, 48, 49, \
106 50, 51, 52, 53, 54, 55, 56, 57, }
108 #define CONFIG_SYS_NAND_ECCSIZE 512
109 #define CONFIG_SYS_NAND_ECCBYTES 14
110 #define CONFIG_SYS_NAND_ONFI_DETECTION
111 #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW
113 /* NAND: SPL related configs */
114 #ifdef CONFIG_SPL_OS_BOOT
115 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x00200000 /* kernel offset */
117 #endif /* !CONFIG_MTD_RAW_NAND */
121 #ifdef CONFIG_SPI_BOOT
122 #define CONFIG_SYS_SPI_U_BOOT_SIZE 0x40000
123 #elif defined(CONFIG_ENV_IS_IN_NAND)
124 #define CONFIG_SYS_ENV_SECT_SIZE CONFIG_SYS_NAND_BLOCK_SIZE
127 #endif /* ! __CONFIG_PHYCORE_AM335x_R2_H */