1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */ 244da3a17SPurna Chandra Mandal /* 344da3a17SPurna Chandra Mandal * (c) 2015 Purna Chandra Mandal <purna.mandal@microchip.com> 444da3a17SPurna Chandra Mandal * 544da3a17SPurna Chandra Mandal * Microchip PIC32MZ[DA] Starter Kit. 644da3a17SPurna Chandra Mandal */ 744da3a17SPurna Chandra Mandal 844da3a17SPurna Chandra Mandal #ifndef __PIC32MZDASK_CONFIG_H 944da3a17SPurna Chandra Mandal #define __PIC32MZDASK_CONFIG_H 1044da3a17SPurna Chandra Mandal 1144da3a17SPurna Chandra Mandal /* System Configuration */ 1244da3a17SPurna Chandra Mandal 1344da3a17SPurna Chandra Mandal /*-------------------------------------------- 1444da3a17SPurna Chandra Mandal * CPU configuration 1544da3a17SPurna Chandra Mandal */ 1644da3a17SPurna Chandra Mandal /* CPU Timer rate */ 1744da3a17SPurna Chandra Mandal #define CONFIG_SYS_MIPS_TIMER_FREQ 100000000 1844da3a17SPurna Chandra Mandal 1944da3a17SPurna Chandra Mandal /*---------------------------------------------------------------------- 2044da3a17SPurna Chandra Mandal * Memory Layout 2144da3a17SPurna Chandra Mandal */ 2244da3a17SPurna Chandra Mandal #define CONFIG_SYS_SRAM_BASE 0x80000000 2344da3a17SPurna Chandra Mandal #define CONFIG_SYS_SRAM_SIZE 0x00080000 /* 512K */ 2444da3a17SPurna Chandra Mandal 2544da3a17SPurna Chandra Mandal /* Initial RAM for temporary stack, global data */ 2644da3a17SPurna Chandra Mandal #define CONFIG_SYS_INIT_RAM_SIZE 0x10000 2744da3a17SPurna Chandra Mandal #define CONFIG_SYS_INIT_RAM_ADDR \ 2844da3a17SPurna Chandra Mandal (CONFIG_SYS_SRAM_BASE + CONFIG_SYS_SRAM_SIZE - CONFIG_SYS_INIT_RAM_SIZE) 2944da3a17SPurna Chandra Mandal #define CONFIG_SYS_INIT_SP_ADDR \ 3044da3a17SPurna Chandra Mandal (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_RAM_SIZE - 1) 3144da3a17SPurna Chandra Mandal 3244da3a17SPurna Chandra Mandal /* SDRAM Configuration (for final code, data, stack, heap) */ 3344da3a17SPurna Chandra Mandal #define CONFIG_SYS_SDRAM_BASE 0x88000000 3444da3a17SPurna Chandra Mandal #define CONFIG_SYS_MALLOC_LEN (256 << 10) 3544da3a17SPurna Chandra Mandal #define CONFIG_SYS_BOOTPARAMS_LEN (4 << 10) 3644da3a17SPurna Chandra Mandal 3744da3a17SPurna Chandra Mandal #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE 3844da3a17SPurna Chandra Mandal #define CONFIG_SYS_MONITOR_LEN (192 << 10) 3944da3a17SPurna Chandra Mandal 4044da3a17SPurna Chandra Mandal #define CONFIG_SYS_LOAD_ADDR 0x88500000 /* default load address */ 4144da3a17SPurna Chandra Mandal #define CONFIG_SYS_ENV_ADDR 0x88300000 42c76eb72cSPurna Chandra Mandal #define CONFIG_SYS_FDT_ADDR 0x89d00000 4344da3a17SPurna Chandra Mandal 4444da3a17SPurna Chandra Mandal /* Memory Test */ 4544da3a17SPurna Chandra Mandal #define CONFIG_SYS_MEMTEST_START 0x88000000 4644da3a17SPurna Chandra Mandal #define CONFIG_SYS_MEMTEST_END 0x88080000 4744da3a17SPurna Chandra Mandal 4844da3a17SPurna Chandra Mandal /*---------------------------------------------------------------------- 4944da3a17SPurna Chandra Mandal * Commands 5044da3a17SPurna Chandra Mandal */ 5144da3a17SPurna Chandra Mandal 5244da3a17SPurna Chandra Mandal /*------------------------------------------------------------ 5344da3a17SPurna Chandra Mandal * Console Configuration 5444da3a17SPurna Chandra Mandal */ 5544da3a17SPurna Chandra Mandal #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 5644da3a17SPurna Chandra Mandal 577d514a74SPurna Chandra Mandal /*----------------------------------------------------------------------- 587d514a74SPurna Chandra Mandal * Networking Configuration 597d514a74SPurna Chandra Mandal */ 607d514a74SPurna Chandra Mandal #define CONFIG_PHY_SMSC 617d514a74SPurna Chandra Mandal #define CONFIG_SYS_RX_ETH_BUFFER 8 627d514a74SPurna Chandra Mandal #define CONFIG_NET_RETRY_COUNT 20 637d514a74SPurna Chandra Mandal #define CONFIG_ARP_TIMEOUT 500 /* millisec */ 647d514a74SPurna Chandra Mandal 657d514a74SPurna Chandra Mandal /* 667d514a74SPurna Chandra Mandal * BOOTP options 677d514a74SPurna Chandra Mandal */ 687d514a74SPurna Chandra Mandal #define CONFIG_BOOTP_BOOTFILESIZE 697d514a74SPurna Chandra Mandal 70ac7eef71SPurna Chandra Mandal /*-------------------------------------------------- 71ac7eef71SPurna Chandra Mandal * USB Configuration 72ac7eef71SPurna Chandra Mandal */ 73ac7eef71SPurna Chandra Mandal 7444da3a17SPurna Chandra Mandal /* ------------------------------------------------- 7544da3a17SPurna Chandra Mandal * Environment 7644da3a17SPurna Chandra Mandal */ 7744da3a17SPurna Chandra Mandal #define CONFIG_ENV_SIZE 0x4000 7844da3a17SPurna Chandra Mandal 7944da3a17SPurna Chandra Mandal /* --------------------------------------------------------------------- 8044da3a17SPurna Chandra Mandal * Board boot configuration 8144da3a17SPurna Chandra Mandal */ 8244da3a17SPurna Chandra Mandal #define CONFIG_TIMESTAMP /* Print image info with timestamp */ 83c76eb72cSPurna Chandra Mandal 84c76eb72cSPurna Chandra Mandal #define MEM_LAYOUT_ENV_SETTINGS \ 85c76eb72cSPurna Chandra Mandal "kernel_addr_r="__stringify(CONFIG_SYS_LOAD_ADDR)"\0" \ 86c76eb72cSPurna Chandra Mandal "fdt_addr_r="__stringify(CONFIG_SYS_FDT_ADDR)"\0" \ 87c76eb72cSPurna Chandra Mandal "scriptaddr="__stringify(CONFIG_SYS_ENV_ADDR)"\0" 88c76eb72cSPurna Chandra Mandal 89c76eb72cSPurna Chandra Mandal #define CONFIG_LEGACY_BOOTCMD_ENV \ 90c76eb72cSPurna Chandra Mandal "legacy_bootcmd= " \ 91c76eb72cSPurna Chandra Mandal "if load mmc 0 ${scriptaddr} uEnv.txt; then " \ 92c76eb72cSPurna Chandra Mandal "env import -tr ${scriptaddr} ${filesize}; " \ 93c76eb72cSPurna Chandra Mandal "if test -n \"${bootcmd_uenv}\" ; then " \ 94c76eb72cSPurna Chandra Mandal "echo Running bootcmd_uenv ...; " \ 95c76eb72cSPurna Chandra Mandal "run bootcmd_uenv; " \ 96c76eb72cSPurna Chandra Mandal "fi; " \ 97c76eb72cSPurna Chandra Mandal "fi; \0" 98c76eb72cSPurna Chandra Mandal 99c76eb72cSPurna Chandra Mandal #define BOOT_TARGET_DEVICES(func) \ 1007d514a74SPurna Chandra Mandal func(MMC, mmc, 0) \ 101ac7eef71SPurna Chandra Mandal func(USB, usb, 0) \ 1027d514a74SPurna Chandra Mandal func(DHCP, dhcp, na) 103c76eb72cSPurna Chandra Mandal 104c76eb72cSPurna Chandra Mandal #include <config_distro_bootcmd.h> 105c76eb72cSPurna Chandra Mandal 106c76eb72cSPurna Chandra Mandal #define CONFIG_EXTRA_ENV_SETTINGS \ 107c76eb72cSPurna Chandra Mandal MEM_LAYOUT_ENV_SETTINGS \ 108c76eb72cSPurna Chandra Mandal CONFIG_LEGACY_BOOTCMD_ENV \ 109c76eb72cSPurna Chandra Mandal BOOTENV 110c76eb72cSPurna Chandra Mandal 111c76eb72cSPurna Chandra Mandal #undef CONFIG_BOOTCOMMAND 112c76eb72cSPurna Chandra Mandal #define CONFIG_BOOTCOMMAND "run distro_bootcmd || run legacy_bootcmd" 11344da3a17SPurna Chandra Mandal 11444da3a17SPurna Chandra Mandal #endif /* __PIC32MZDASK_CONFIG_H */ 115