summaryrefslogtreecommitdiffstats
path: root/board/st
Commit message (Collapse)AuthorAgeFilesLines
* SPDX: Convert all of our multiple license tags to Linux Kernel styleTom Rini2018-05-075-10/+5
| | | | | | | | | | | | | | | | | | | | | | | When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us. In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style. This commit changes all instances where we have multiple licenses (in these cases, dual license) declared in the SPDX-License-Identifier tag. In this case we change from listing "LICENSE-A LICENSE-B" or "LICENSE-A or LICENSE-B" or "(LICENSE-A OR LICENSE-B)" to "LICENSE-A OR LICENSE-B" as per the Linux Kernel style document. Note that parenthesis are allowed so when they were used before we continue to use them. Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Signed-off-by: Tom Rini <trini@konsulko.com>
* SPDX: Convert all of our single license tags to Linux Kernel styleTom Rini2018-05-0717-42/+17
| | | | | | | | | | | | | | | | | | | | When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us. In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style. This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one. Signed-off-by: Tom Rini <trini@konsulko.com>
* stm32mp1: add eMMC support for ED1Patrick Delaunay2018-04-061-24/+59
| | | | | | | | | | Add command GPT support Add EMMC boot support Add the 2 other SDMMC instances for ED1: - SDMMC2 = mmc 1, eMMC on the ED1 board - SDMMC3 = extension connector, deactivated by default Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
* board: st: add generic board for STM32MP1 familyPatrick Delaunay2018-03-197-0/+358
| | | | | | | | | | | Add first support for STM32MP157C-ED1 board with "Basic" boot chain 1/ Boot Rom: load SPL with STM32 image header in SYSRAM 2/ SPL: power up and initialize the DDR and load U-Boot image from SDCARD in DDR 3/ U-Boot: search and load extlinux.conf in SDCARD (DISTRO activated) Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
* stm32f7: board: add splash screenyannick fertre2018-03-191-0/+9
| | | | | | | | Support several pixel format (8bits, 16bits, 24bits & 32bits). Add new file st_logo_data.h which contains logo stmicroelectronics_uboot_logo_8bit_rle.bmp. Signed-off-by: yannick fertre <yannick.fertre@st.com>
* arch-stm32: Remove stm32_periph.hPatrice Chotard2018-03-131-1/+0
| | | | | | | Remove arch/arm/include/asm/arch-stm32fx/stm32_periph.h as all defines or enums are no more used. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* board: stm32: switch to DM STM32 timerPatrice Chotard2018-03-131-1/+0
| | | | | | | | | | | | Use available DM stm32_timer driver instead of dedicated mach-stm32/stm32fx/timer.c. Remove all defines or files previously used for timer usage in arch/arm/include/asm/arch-stm32fx and in arch/arm/mach-stm32/stm32fx Enable DM STM32_TIMER for STM32F4/F7 and H7. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* clk: clk_stm32f: Move SYSCFG clock setup into configure_clocks()Patrice Chotard2018-01-281-13/+6
| | | | | | | | | | | | | | Move SYSCFG clock setup into configure_clocks() instead of calling clock_setup() from board file. As this clock is only needed in case of ethernet enabled and as both stm32f4 and stm32f7 are using the Designware ethernet IP, we use CONFIG_ETH_DESIGNWARE to only enable this clock if needed. Move the RMII setup from board_early_init_f() to board_init() to insure that RMII bit is set only when clock driver is initialized. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* clk: clk_stm32f: Remove STMMAC clock setupPatrice Chotard2018-01-281-1/+0
| | | | | | | | Thanks to 'commit ba1f96672522 ("net: designware: add clock support")' we don't need anymore to setup the STMMAC clock in board. Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Vikas Manocha <vikas.manocha@st.com>
* board: stm32: Add stm32f429-evaluation board supportPatrice Chotard2018-01-284-0/+107
| | | | | | | | Add stm32f429-evaluation board support. For more information, please visit: http://www.st.com/en/evaluation-tools/stm32429i-eval.html Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* board: stm32: add stm32f469-discovery board supportPatrice Chotard2018-01-104-0/+107
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* board: stm32f429-disco: switch to DM STM32 pinctrl and gpio driverPatrice Chotard2018-01-101-111/+0
| | | | | | | | | | | Use available DM stm32f7_gpio.c and pinctrl_stm32.c drivers instead of board GPIO initialization. Remove stm32_gpio.c which is no more used and migrate structs stm32_gpio_regs and stm32_gpio_priv into arch-stm32f4/gpio.h to not break compilation. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* board: stm32f429-disco: switch to DM STM32 clock driverPatrice Chotard2018-01-101-23/+1
| | | | | | | | | | | | | Use available DM clk_stm32f.c driver instead of dedicated mach-stm32/stm32f4/clock.c. Migrate periph_clock defines from stm32_periph.h directly in CLK driver. These periph_clock defines will be removed when STMMAC, TIMER2 and SYSCFG drivers will support DM CLK. Enable also CLK flag. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* board: stm32f429-disco: switch to DM STM32 serial driverPatrice Chotard2018-01-101-10/+0
| | | | | | | | | | | Remove serial_stm32.c driver and uart init from board file, use available DM serial_stm32x7.c driver compatible for STM32F4/F7 and H7 SoCs. The serial_stm32x7.c driver will be renamed later with a more generic name as it's shared with all STM32 Socs. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* board: stm32f429-discovery: switch to DM STM32 sdram driverPatrice Chotard2018-01-101-122/+14
| | | | | | | | Use available DM stm32_sdram.c driver instead of board SDRAM initialization. For that, enable OF_CONTROL, OF_EMBED and STM32_SDRAM flags. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* mach-stm32: Factorize MPU's region config for STM32 SoCsPatrice Chotard2017-11-291-0/+2
| | | | | | | | | | | | | | MPU's region setup can be factorized between STM32F4/F7/H7 SoCs family and used a common MPU's region config. Only one exception for STM32H7 which doesn't have device area located at 0xA000 0000. For STM32F4, configure_clocks() need to be moved from arch_cpu_init() to board_early_init_f(). Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Vikas Manocha <vikas.manocha@st.com>
* stm32: migrate clock structs in include/stm32_rcc.hPatrice Chotard2017-11-291-0/+1
| | | | | | | | In order to factorize code between STM32F4 and STM32F7 migrate all structs related to RCC clocks in include/stm32_rcc.h Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Vikas Manocha <vikas.manocha@st.com>
* stv0991: fix STMicroelectronics copyrightPatrice Chotard2017-11-062-4/+4
| | | | | | | Uniformize STMicroelectronics copyrights headers for STV0991 related code. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* stm32: fix STMicroelectronics copyrightPatrice Chotard2017-11-066-12/+12
| | | | | | | Uniformize STMicroelectronics copyrights headers for STM32 related code. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* sti: fix STMicroelectronics copyrightPatrice Chotard2017-11-062-5/+4
| | | | | | | Uniformize all STMicroelectronics copyrights headers for STi related code. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* board: Add stm32h7 SoC, discovery and evaluation boards supportPatrice Chotard2017-09-228-0/+179
| | | | | | | | | | | This patch adds support for stm32h7 soc family, stm32h743 discovery and evaluation boards. For more information about STM32H7 series, please visit: http://www.st.com/en/microcontrollers/stm32h7-series.html Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* board: STiH410-B2260: add fastboot supportPatrice Chotard2017-09-221-0/+42
| | | | | | | | | Add usb_gadget_handle_interrupts(), board_usb_init(), board_usb_cleanup() and g_dnl_board_usb_cable_connected() callbacks needed for FASTBOOT support Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* env: Rename getenv/_f() to env_get()Simon Glass2017-08-161-1/+1
| | | | | | | | | | | We are now using an env_ prefix for environment functions. Rename these two functions for consistency. Also add function comments in common.h. Quite a few places use getenv() in a condition context, provoking a warning from checkpatch. These are fixed up in this patch also. Suggested-by: Wolfgang Denk <wd@denx.de> Signed-off-by: Simon Glass <sjg@chromium.org>
* env: Rename setenv() to env_set()Simon Glass2017-08-161-1/+1
| | | | | | | | We are now using an env_ prefix for environment functions. Rename setenv() for consistency. Also add function comments in common.h. Suggested-by: Wolfgang Denk <wd@denx.de> Signed-off-by: Simon Glass <sjg@chromium.org>
* ram: stm32: migrate fmc defines in driver filePatrice Chotard2017-07-261-1/+0
| | | | | | | | | | | | Migrate all FMC defines from arch/arm/include/asm/arch-stm32f7/fmc.h to drivers/ram/stm32_sdram.c This will avoid to add an additionnal arch-stm32xx/fmc.h file when a new stm32 family soc will be introduced. Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Vikas Manocha <vikas.manocha@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* serial: stm32x7: migrate serial struct to driverPatrice Chotard2017-07-261-1/+0
| | | | | | | | | | | This allow to remove include/dm/platform_data/serial_stm32x7.h which was included in the past by stm32x7 driver and by stm32f746-disco.c board file. Since patch 42bf5e7c27 "serial: stm32f7: add device tree support" this file is no more needed in board file. Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
* spl: stm32f7: configure for xip bootingVikas Manocha2017-06-091-1/+1
| | | | | | | | | | | | | | | | | | With xip booting configuration, we don't need to copy the next image (U-Boot or linux xipimage) from flash to sdram area. Flash memory organization is like this: spl-U-Boot: u-boot-spl.bin : 0x0800_0000 U-Boot : u-boot-dtb.bin : 0x0800_8000 linux : xipImage : 0x0800_8000 It is also possible to have U-Boot binary & linux binaries configured at different addresses of flash memory like U-Boot at 0x0800_8000 & linux xipImage at 0x0800_4000. But in any case, spl-U-Boot needs to be compiled for U-Boot as next binary with SPL_OS_BOOT option disabled. By default, spl is configured to boot linux xipImage. Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
* spl: stm32f7: add kernel boot supportVikas Manocha2017-06-091-0/+9
| | | | Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
* stm32: stm32f7: add spl build supportVikas Manocha2017-06-091-1/+26
| | | | | | | | | | | | | | | | | This commit supports booting from stm32 internal nor flash. spl U-Boot initializes the sdram memory, copies next image (e.g. standard U-Boot) to sdram & then jumps to entry point. Here are the flash memory addresses for U-Boot-spl & standard U-Boot: - spl U-Boot : 0x0800_0000 - standard U-Boot : 0x0800_8000 To compile u-boot without spl: Remove SUPPORT_SPL configuration (arch/arm/mach-stm32/Kconfig) Signed-off-by: Vikas Manocha <vikas.manocha@st.com> [trini: Rework Kconfig logic a bit] Signed-off-by: Tom Rini <trini@konsulko.com>
* dm: gpio: Add live tree supportSimon Glass2017-06-011-3/+3
| | | | | | | | | | | Add support for requesting GPIOs with a live device tree. This involves adjusting the function signature for the legacy function gpio_request_by_name_nodev(), so fix up all callers. Signed-off-by: Simon Glass <sjg@chromium.org> Fixes to stm32f746-disco.c: Signed-off-by: Tom Rini <trini@konsulko.com>
* dm: Use dm.h header when driver mode is usedSimon Glass2017-06-013-3/+3
| | | | | | | | This header includes things that are needed to make driver build. Adjust existing users to include that always, even if other dm/ includes are present Signed-off-by: Simon Glass <sjg@chromium.org>
* stm32f7: stm32f746-disco: read memory info from device treeVikas Manocha2017-05-081-12/+30
| | | | | Signed-off-by: Vikas Manocha <vikas.manocha@st.com> cc: Christophe KERELLO <christophe.kerello@st.com>
* stm32f746: to switch on user LED1 & read user buttonVikas Manocha2017-05-081-0/+37
| | | | | | | | All discovery boards have one user button & one user LED. Here we are just reading the button status & switching ON the user LED. Signed-off-by: Vikas Manocha <vikas.manocha@st.com> cc: Christophe KERELLO <christophe.kerello@st.com>
* stm32f7: use stm32f7 gpio driver supporting driver modelVikas Manocha2017-05-081-67/+3
| | | | | | | | | | | | With this gpio driver supporting DM, there is no need to enable clocks for different gpios (for pin muxing) in the board specific code. Need to increase the allocatable area required before relocation from 0x400 to 0xC00 becuase of 10 new gpio devices(& new gpio class) added in device tree. Signed-off-by: Vikas Manocha <vikas.manocha@st.com> cc: Christophe KERELLO <christophe.kerello@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* stm32f7: use clock driver to enable sdram controller clockVikas Manocha2017-05-081-2/+0
| | | | | | | | This patch also removes the sdram/fmc clock enable from board specific code. Signed-off-by: Vikas Manocha <vikas.manocha@st.com> cc: Christophe KERELLO <christophe.kerello@st.com>
* stm32f7: use driver model for sdram initializationVikas Manocha2017-05-081-70/+19
| | | | | | | | As driver model takes care of pin control configuraion, this patch also removes the sdram/fmc pin configuration. Signed-off-by: Vikas Manocha <vikas.manocha@st.com> cc: Christophe KERELLO <christophe.kerello@st.com>
* stm32f7: sdram: move sdram driver code to ram drivers areaVikas Manocha2017-05-081-112/+1
| | | | | Signed-off-by: Vikas Manocha <vikas.manocha@st.com> cc: Christophe KERELLO <christophe.kerello@st.com>
* board: STiH410-B2260: enable cachesPatrice Chotard2017-04-081-0/+8
| | | | Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* board_f: Drop setup_dram_config() wrapperSimon Glass2017-04-052-2/+6
| | | | | | | | By making dram_init_banksize() return an error code we can drop the wrapper. Adjust this and clean up all implementations. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
* ARM: DT: stm32f7: add qspi pin contol nodeVikas Manocha2017-03-171-43/+0
| | | | | | | It also removes the qspi pin configuration done during the board initialization. Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
* ARM: DT: stm32f7: add ethernet pin contol nodeVikas Manocha2017-03-171-32/+0
| | | | | | | It also removes the ethernet pin configuration done during the board initialization. Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
* ARM: DT: stm32f7: add pin control node for serial port pinsVikas Manocha2017-03-171-24/+1
| | | | | | And remove the uart pin configuration from board initialization. Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
* stm32f7: clk: remove usart1 clock enable from board initVikas Manocha2017-03-171-1/+0
| | | | | | | Before clock driver availability it was required to enable usart1 clock for serial init but now with clock driver is taking care of usart1 clock. Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
* serial: stm32f7: add device tree supportVikas Manocha2017-03-171-10/+0
| | | | | | | | This patch adds device tree support for stm32f7 serial driver & removes serial platform data structure. Signed-off-by: Vikas Manocha <vikas.manocha@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* board: Add STMicroelectronics STiH410-B2260 supportPatrice Chotard2017-03-144-0/+62
| | | | | | | | | | | | | | | | | | | This is a 96Board compliant board based on STiH410 SoC: - 1GB DDR - On-Board USB combo WiFi/Bluetooth RTL8723BU with PCB soldered antenna - Ethernet 1000-BaseT - SATA - HDMI - 2 x USB2.0 type A - 1 x USB2.0 type micro-AB - SD card slot - High speed connector (SD/I2C/USB interfaces) - Low speed connector (UART/I2C/GPIO/SPI/PCM interfaces) Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* ARM: SPI: stm32: add stm32f746 qspi driverMichael Kurz2017-01-281-0/+60
| | | | | | This patch adds support for the QSPI IP found in stm32f7 devices. Signed-off-by: Michael Kurz <michi.kurz@gmail.com>
* net: stm32: add designware mac glue code for stm32Michael Kurz2017-01-281-0/+56
| | | | | | | | This patch adds glue code required for enabling the designware mac on stm32f7 devices. Signed-off-by: Michael Kurz <michi.kurz@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* ARM: stm32: use clock setup function defined in clock.cMichael Kurz2017-01-281-2/+1
| | | | | | | | | | | Use the clock setup function defined in clock.c instead of setting the clock bits directly in the drivers. Remove register definitions of RCC in rcc.h as these are already defined in the struct in stm32.h Signed-off-by: Michael Kurz <michi.kurz@gmail.com> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Vikas Manocha <vikas.manocha@st.com>
* ARM: stm32: cleanup stm32f7 filesMichael Kurz2017-01-281-6/+1
| | | | | | | | | | | | Cleanup stm32f7 files: - use BIT macro - use GENMASK macro - use rcc struct instead of macro additions Add missing stm32f7 register in rcc struct Signed-off-by: Michael Kurz <michi.kurz@gmail.com> Acked-by: Vikas MANOCHA<vikas.manocha@st.com>
* Revert "stm32: Change USART port to USART6 for stm32f746 discovery board"Tom Rini2016-07-211-6/+7
| | | | | | | | | | Per Vikas' request, the problem this commit is supposed to be solving is something he doesn't see and further this introduces additional hardware requirements. This reverts commit 4b2fd720a7b2f78c42d1565edf4c67f378c65440. Signed-off-by: Tom Rini <trini@konsulko.com>