board: stm32: add stm32f469-discovery board support
This board offers : _ STM32F469NIH6 microcontroller featuring 2 Mbytes of Flash memory and 324 Kbytes of RAM in BGA216 package _ On-board ST-LINK/V2-1 SWD debugger, supporting USB reenumeration capability: _ Mbed-enabled (mbed.org) _ USB functions: USB virtual COM port, mass storage, debug port _ 4 inches 800x480 pixel TFT color LCD with MIPI DSI interface and capacitive touch screen _ SAI Audio DAC, with a stereo headphone output jack _ 3 MEMS microphones _ MicroSD card connector _ I2C extension connector _ 4Mx32bit SDRAM _ 128-Mbit Quad-SPI NOR Flash _ Reset and wake-up buttons _ 4 color user LEDs _ USB OTG FS with Micro-AB connector _ Three power supply options: _ Expansion connectors and Arduino™ UNO V3 connectors Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
This commit is contained in:
parent
d95faab201
commit
c0cdd5adc8
@ -3,6 +3,10 @@ if STM32F4
|
||||
config TARGET_STM32F429_DISCOVERY
|
||||
bool "STM32F429 Discovery board"
|
||||
|
||||
config TARGET_STM32F469_DISCOVERY
|
||||
bool "STM32F469 Discovery board"
|
||||
|
||||
source "board/st/stm32f429-discovery/Kconfig"
|
||||
source "board/st/stm32f469-discovery/Kconfig"
|
||||
|
||||
endif
|
||||
|
19
board/st/stm32f469-discovery/Kconfig
Normal file
19
board/st/stm32f469-discovery/Kconfig
Normal file
@ -0,0 +1,19 @@
|
||||
if TARGET_STM32F469_DISCOVERY
|
||||
|
||||
config SYS_BOARD
|
||||
string
|
||||
default "stm32f469-discovery"
|
||||
|
||||
config SYS_VENDOR
|
||||
string
|
||||
default "st"
|
||||
|
||||
config SYS_SOC
|
||||
string
|
||||
default "stm32f4"
|
||||
|
||||
config SYS_CONFIG_NAME
|
||||
string
|
||||
default "stm32f469-discovery"
|
||||
|
||||
endif
|
6
board/st/stm32f469-discovery/MAINTAINERS
Normal file
6
board/st/stm32f469-discovery/MAINTAINERS
Normal file
@ -0,0 +1,6 @@
|
||||
STM32F469-DISCOVERY BOARD
|
||||
M: Patrice Chotard <patrice.chotard@st.com>
|
||||
S: Maintained
|
||||
F: board/st/stm32f469-discovery/
|
||||
F: include/configs/stm32f469-discovery.h
|
||||
F: configs/stm32f469-discovery_defconfig
|
8
board/st/stm32f469-discovery/Makefile
Normal file
8
board/st/stm32f469-discovery/Makefile
Normal file
@ -0,0 +1,8 @@
|
||||
#
|
||||
# Copyright (C) STMicroelectronics SA 2017
|
||||
# Author(s): Patrice CHOTARD, <patrice.chotard@st.com> for STMicroelectronics.
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0+
|
||||
#
|
||||
|
||||
obj-y := stm32f469-discovery.o
|
74
board/st/stm32f469-discovery/stm32f469-discovery.c
Normal file
74
board/st/stm32f469-discovery/stm32f469-discovery.c
Normal file
@ -0,0 +1,74 @@
|
||||
/*
|
||||
* Copyright (C) STMicroelectronics SA 2017
|
||||
* Author(s): Patrice CHOTARD, <patrice.chotard@st.com> for STMicroelectronics.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
#include <dm.h>
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <asm/arch/stm32.h>
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
int dram_init(void)
|
||||
{
|
||||
int rv;
|
||||
struct udevice *dev;
|
||||
|
||||
rv = uclass_get_device(UCLASS_RAM, 0, &dev);
|
||||
if (rv) {
|
||||
debug("DRAM init failed: %d\n", rv);
|
||||
return rv;
|
||||
}
|
||||
|
||||
if (fdtdec_setup_memory_size() != 0)
|
||||
rv = -EINVAL;
|
||||
|
||||
return rv;
|
||||
}
|
||||
|
||||
int dram_init_banksize(void)
|
||||
{
|
||||
fdtdec_setup_memory_banksize();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 get_board_rev(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int board_early_init_f(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int board_init(void)
|
||||
{
|
||||
gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_MISC_INIT_R
|
||||
int misc_init_r(void)
|
||||
{
|
||||
char serialno[25];
|
||||
u32 u_id_low, u_id_mid, u_id_high;
|
||||
|
||||
if (!env_get("serial#")) {
|
||||
u_id_low = readl(&STM32_U_ID->u_id_low);
|
||||
u_id_mid = readl(&STM32_U_ID->u_id_mid);
|
||||
u_id_high = readl(&STM32_U_ID->u_id_high);
|
||||
sprintf(serialno, "%08x%08x%08x",
|
||||
u_id_high, u_id_mid, u_id_low);
|
||||
env_set("serial#", serialno);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif
|
42
configs/stm32f469-discovery_defconfig
Normal file
42
configs/stm32f469-discovery_defconfig
Normal file
@ -0,0 +1,42 @@
|
||||
CONFIG_ARM=y
|
||||
CONFIG_STM32=y
|
||||
CONFIG_SYS_MALLOC_F_LEN=0xF00
|
||||
CONFIG_STM32F4=y
|
||||
CONFIG_TARGET_STM32F469_DISCOVERY=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="stm32f469-disco"
|
||||
CONFIG_BOOTDELAY=3
|
||||
# CONFIG_DISPLAY_CPUINFO is not set
|
||||
CONFIG_BOARD_EARLY_INIT_F=y
|
||||
CONFIG_HUSH_PARSER=y
|
||||
CONFIG_SYS_PROMPT="U-Boot > "
|
||||
CONFIG_CMD_BOOTZ=y
|
||||
# CONFIG_CMD_BOOTEFI_HELLO_COMPILE is not set
|
||||
CONFIG_CMD_IMLS=y
|
||||
CONFIG_CMD_GPT=y
|
||||
# CONFIG_RANDOM_UUID is not set
|
||||
CONFIG_CMD_MMC=y
|
||||
# CONFIG_CMD_SETEXPR is not set
|
||||
CONFIG_CMD_CACHE=y
|
||||
CONFIG_CMD_TIMER=y
|
||||
CONFIG_CMD_EXT2=y
|
||||
CONFIG_CMD_EXT4=y
|
||||
CONFIG_CMD_FAT=y
|
||||
CONFIG_CMD_FS_GENERIC=y
|
||||
# CONFIG_DOS_PARTITION is not set
|
||||
CONFIG_OF_CONTROL=y
|
||||
CONFIG_OF_EMBED=y
|
||||
# CONFIG_BLK is not set
|
||||
CONFIG_CLK=y
|
||||
CONFIG_DM_GPIO=y
|
||||
CONFIG_MISC=y
|
||||
CONFIG_STM32_RCC=y
|
||||
CONFIG_DM_MMC=y
|
||||
CONFIG_ARM_PL180_MMCI=y
|
||||
CONFIG_MTD_NOR_FLASH=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_STM32=y
|
||||
CONFIG_RAM=y
|
||||
CONFIG_STM32_SDRAM=y
|
||||
CONFIG_DM_RESET=y
|
||||
CONFIG_STM32_RESET=y
|
||||
CONFIG_STM32X7_SERIAL=y
|
68
include/configs/stm32f469-discovery.h
Normal file
68
include/configs/stm32f469-discovery.h
Normal file
@ -0,0 +1,68 @@
|
||||
/*
|
||||
* Copyright (C) STMicroelectronics SA 2017
|
||||
* Author(s): Patrice CHOTARD, <patrice.chotard@st.com> for STMicroelectronics.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+
|
||||
*/
|
||||
|
||||
#ifndef __CONFIG_H
|
||||
#define __CONFIG_H
|
||||
|
||||
#define CONFIG_STM32F4DISCOVERY
|
||||
|
||||
#define CONFIG_MISC_INIT_R
|
||||
|
||||
#define CONFIG_SYS_FLASH_BASE 0x08000000
|
||||
|
||||
#define CONFIG_SYS_INIT_SP_ADDR 0x10010000
|
||||
#define CONFIG_SYS_TEXT_BASE 0x08000000
|
||||
|
||||
#define CONFIG_SYS_ICACHE_OFF
|
||||
#define CONFIG_SYS_DCACHE_OFF
|
||||
|
||||
/*
|
||||
* Configuration of the external SDRAM memory
|
||||
*/
|
||||
#define CONFIG_NR_DRAM_BANKS 1
|
||||
#define CONFIG_SYS_RAM_FREQ_DIV 2
|
||||
#define CONFIG_SYS_RAM_BASE 0x00000000
|
||||
#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_RAM_BASE
|
||||
#define CONFIG_SYS_LOAD_ADDR 0x00400000
|
||||
#define CONFIG_LOADADDR 0x00400000
|
||||
|
||||
#define CONFIG_SYS_MAX_FLASH_SECT 12
|
||||
#define CONFIG_SYS_MAX_FLASH_BANKS 2
|
||||
|
||||
#define CONFIG_ENV_OFFSET (256 << 10)
|
||||
#define CONFIG_ENV_SECT_SIZE (128 << 10)
|
||||
#define CONFIG_ENV_SIZE (8 << 10)
|
||||
|
||||
#define CONFIG_STM32_FLASH
|
||||
|
||||
#define CONFIG_STM32_HSE_HZ 8000000
|
||||
#define CONFIG_SYS_CLK_FREQ 180000000 /* 180 MHz */
|
||||
#define CONFIG_SYS_HZ_CLOCK 1000000 /* Timer is clocked at 1MHz */
|
||||
|
||||
#define CONFIG_CMDLINE_TAG
|
||||
#define CONFIG_SETUP_MEMORY_TAGS
|
||||
#define CONFIG_INITRD_TAG
|
||||
#define CONFIG_REVISION_TAG
|
||||
|
||||
#define CONFIG_SYS_CBSIZE 1024
|
||||
|
||||
#define CONFIG_SYS_MALLOC_LEN (1 * 1024 * 1024)
|
||||
|
||||
#define CONFIG_BOOTCOMMAND \
|
||||
"run boot_sd"
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"boot_sd=mmc dev 0;fatload mmc 0 0x00700000 stm32f469-disco.dtb; fatload mmc 0 0x00008000 zImage; icache off; bootz 0x00008000 - 0x00700000"
|
||||
|
||||
/*
|
||||
* Command line configuration.
|
||||
*/
|
||||
#define CONFIG_SYS_LONGHELP
|
||||
#define CONFIG_AUTO_COMPLETE
|
||||
#define CONFIG_CMDLINE_EDITING
|
||||
|
||||
#endif /* __CONFIG_H */
|
Loading…
Reference in New Issue
Block a user