summaryrefslogtreecommitdiffstats
path: root/arch/arm/boards/sama5d3_xplained
Commit message (Collapse)AuthorAgeFilesLines
* ARM: AT91: migrate sama5d3-xplained to DTAhmad Fatoum2021-10-014-251/+125
| | | | | | | | | | | | | | | | | | | | We have one other DT-enabled SAMA5D3 board already: microchip-ksz8477-evb, which is basically a sama5d3 xplained in different form factor and with a switch. Mimic what we do there to get rid of the sama5d3 board code. Unlike the microchip-ksz9477-evb, the barebox support for this board includes NAND, which is not yet up to date with respect to DT: - SMC for NAND configuration has no DT driver. Instead the board driver create this device - We don't support the newer NAND DT bindings (EBI). The device trees fix this up, so barebox sees the old bindings with the upstream partition layout. In future, this could be fixed. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20210922065000.20970-6-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* mtd: nand: Update to Linux-5.9Sascha Hauer2020-11-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This updates the barebox NAND layer and parts of the mtd layer to Linux-5.9. This patch is huge, but the barebox NAND layer is so far away from the Linux NAND layer that a step by step update would have taken ages. Unlike Linux barebox has functions to mark a block as good. This feature has been preserved. Also barebox used to make NAND write support optional, this feature is lost during the update for the sake of better compatibility to the Linux NAND layer. This patch has been tested: - GPMI aka nand_mxs on i.MX6 - nand_imx on i.MX25 - nand_omap_gpmc on AM335x - atmel_nand on Atmel sama5d3 - nand_denali on SoCFPGA Currently untested: - nand_orion - nand_mrvl_nfc - nand_s3c24xx The nand_denali driver is tested with the update of that driver to Linux-5.9 following in the next patch. I could only test the drivers with the NAND chips found on my boards, so there's still enough room for regressions, especially given that the NAND drivers themselves are mostly not updated. With the NAND layer being up-to-date with Linux it should hopefully be easy to update drivers to their Linux counterpart as well if necessary. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: at91: replace at91sam9_ddrsdr.h with at91bootstrap's at91_ddrsdrc.hAhmad Fatoum2020-07-111-1/+1
| | | | | | | | | | | | | | | Instead of adding missing definitions to the existing at91sam9_ddrsdr.h and adapting the incoming DDRAM initialization code from at91bootstrap, just replace the lightly used existing header with: https://github.com/linux4sam/at91bootstrap/blob/v3.8.12/include/arch/at91_ddrsdrc.h For easier comprehension, the replacement is done in three steps: This last step copies the memory size querying functions from at91sam9_ddrsdr.h to at91_ddrsdrc.h, then deletes it and fixes all references. Reviewed-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* arch/arm/boards: Replace license and copyright boilerplate by SPDX identfiersUwe Kleine-König2020-05-251-13/+2
| | | | | | | | | | | | | | | | This adapts all files that were identifed by licensecheck (https://salsa.debian.org/build-common-team/licensecheck.git) as licensed under the GPL. The advantage is that these specifiers are machine-parseable which helps license conformance, e.g. for packaging barebox in Debian. While touching these files also do some minor comment reformatting to get some uniform layout. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Reviewed-by: Roland Hieber <rhi@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: Cleanup stack offset cargo cultSascha Hauer2019-09-091-1/+1
| | | | | | | | | Most callers of arm_setup_stack substract a fixed offset of 8, 12 or 16 bytes from the stack top. This is unnecessary as on ARM we have a stack that decrements before storing values. Substracting this offset probably goes back to the U-Boot version we forked from. Stop this now. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: at91: fix at91sama5_get_ddram_size for sama5d4Ahmad Fatoum2019-05-271-1/+1
| | | | | | | | | | | | | | | | | at91sama5_get_ddram_size() is despite the name specific to the sama5d3 which it was added alongside of. sama5d4 board code continues to use it, but accessing SAMA5D3_BASE_MPDDRC (0xffffea00) on a sama5d4 should result in a Data Abort (Datasheet Figure 5-1).. Fix this by giving at91sama5_get_ddram_size the mpddrc base address as argument and migrate users to use one of two helpers that specify the base address. Tested-by: Sam Ravnborg <sam@ravnborg.org> [afa: Sam didn't test this exact change, but tested the use of the critical part: accessing a different register] Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: boards: Harmonize barebox_arm_reset_vector() prototypeSascha Hauer2019-03-181-1/+1
| | | | | | | | | | | | barebox_arm_reset_vector() is a global function but we never provided a prototype anywhere. The prototypes differ for the different boards, so to provide a common prototype we must harmonize them. void barebox_arm_reset_vector(uint32_t r0, uint32_t r1, uint32_t r2) Should be suitable for all boards. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: at91: remove mach/io.hSascha Hauer2018-11-061-1/+0
| | | | | | | Remove at91_sys_read() and at91_sys_write() since these are no longer used. This makes mach/io.h empty so remove that aswell. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* sama5d{3, 4}{xek, xplained}: move reset vector to board codeSam Ravnborg2018-01-092-0/+24
| | | | | | | | Include deletion of now unused CONFIG symbols Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Reviewed-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* defaultenv: add defaultenv-1 in boards via defaultenv_append_directory()Sascha Hauer2016-10-103-0/+5
| | | | | | | | | | | | | | | | | | | | Currently it's hardcoded for each board which defaultenv version is used. This is unfortunate since some people like the other defaultenv version better and may want to select it. This patch removes the board specific environment path CONFIG_DEFAULT_ENVIRONMENT_PATH and instead adds it via: if (IS_ENABLED(CONFIG_DEFAULT_ENVIRONMENT_GENERIC)) defaultenv_append_directory(defaultenv_<board>); This way we can make sure that the defaultenv-1 board specific bits are only compiled in when defaultenv-1 is actually in use. The next step is to make the defaultenv version selection a user visible choice. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* sizes.h: move include/sizes.h to include/linux/sizes.hMasahiro Yamada2015-01-081-1/+1
| | | | | | | | | | | | | | This file originates in Linux. Linux has it under include/linux/ directory since commit dccd2304cc90. Let's move it to the same place as well in barebox. This commit was generated by the following commands: find -name '*.[chS]' | xargs sed -i -e 's:<sizes.h>:<linux/sizes.h>:' git mv include/sizes.h include/linux/ Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* mtd: nand: add has_pmecc memberRaphaël Poggi2014-09-021-0/+1
| | | | | | | By adding this structure member, we can retrieve the pmecc config, through the device tree. Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: atmel: sama5d3_xplained: import smc timing from U-BootMatteo Fortini2014-08-021-10/+19
| | | | | | | | | | | The configuration for NAND has been aligned with values from U-Boot and completed with TIMINGS initialization Signed-off-by: Matteo Fortini <matteo.fortini@gmail.com> [voice.shen@atmel.com: apply this patch from Matteo Fortini for sama5d3xek to sama5d3_xplained board] Signed-off-by: Bo Shen <voice.shen@atmel.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: atmel: add sama5d3_xplained supportBo Shen2014-06-043-0/+281
Signed-off-by: Bo Shen <voice.shen@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>