summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | regulator: fix bitrotted EXPORT_SYMBOL_GPLAhmad Fatoum2021-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Build with module support enabled rightfully complains about the unknown symbol. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030175812.2276705-4-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | ARM: i.MX: guf-santaro: fix passing around of uninitialized variableAhmad Fatoum2021-11-012-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | i2c_device_present() does a zero byte read to probe for the i2c device. Make i2c_write_reg handle a NULL buf to silence the compiler warning. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030175812.2276705-3-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | ARM: Rockchip: move ARCH_RK3568_OPTEE into ARCH_ROCKCHIP menuAhmad Fatoum2021-11-011-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise, it's selectable for others as well. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030175812.2276705-2-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | spi: zynq_qspi: don't check clk_get return value for NULLnessAhmad Fatoum2021-11-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | clk_get never returns NULL, so no point in checking for it. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030175446.2274194-4-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | serial: atmel: abort probe on atmel_serial_init_port failureAhmad Fatoum2021-11-011-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The port initialization fails if the memory region couldn't be requested or if the clock couldn't be gotten. Both print an error message, so users running into this would've noticed. Do the sane thing and abort the probe in such error cases. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030175446.2274194-3-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | usb: dwc3: remove unneeded EPROBE_DEFER checkAhmad Fatoum2021-11-011-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We early exit on all errors, so no need to single out EPROBE_DEFER. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030175446.2274194-2-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | misc: acpi-test: bump down debug message on removeAhmad Fatoum2021-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ACPI test driver is meant to serve as template for adding more useful drivers. Printing a message in remove isn't a pattern that should be copied, so bump the level down. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030175446.2274194-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | include: move ARRAY_AND_SIZE to <linux/kernel.h>Ahmad Fatoum2021-11-013-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux defines this macro at multiple places. We define it once, but in <common.h>, which is a bit heavy weight. Move it next to the ARRAY_SIZE() definition. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030141739.2207431-5-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | include: <asm-generic/bug.h>: make self-containedAhmad Fatoum2021-11-013-11/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | <asm-generic/bug.h> so far depended on a preceding <common.h> to get the dump_stack() definition. Move dump_stack() to the new printk.h and drop the remaining puts() use to make header self-contained. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030141739.2207431-4-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | include: add dedicated header for printf/printkAhmad Fatoum2021-11-0127-199/+211
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Including <stdio.h> for printf is a bit problematic, because it pulls in other headers for <console.h>, which includes quite a few more headers as well. To make it easier to share code between barebox and host tools make <printk.h> the new minimal header for printf and move the extra logging stuff into <linux/printk.h>. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030141739.2207431-3-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | scripts: <linux/bitops.h>: fix references to undefined __BITS_PER_LONGAhmad Fatoum2021-11-014-11/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No where do we define __BITS_PER_LONG, but we know about BITS_PER_LONG. Fix it. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030141739.2207431-2-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | include: <linux/bitops.h>: discard left-over hweight codeAhmad Fatoum2021-11-015-13/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are no definitions for __sw_hweight*, so no point in keeping the prototypes around. The scripts version of the header also ultimately tries to access non-existing normal headers, so fix that up as well. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030141739.2207431-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | fs: ramfs: drop free of unused dev->privAhmad Fatoum2021-11-011-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This probably was a benign free(NULL) so far, but it serves no point, so drop it. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030141707.2207152-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | gpio: add driver for xilinx zynq and zynqmpThomas Haemmerle2021-10-146-0/+448
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Port the driver for the Xilinx Zynq/Zynq UltraScale+ MPSoC architecture to barebox (based on the Linux driver). Signed-off-by: Thomas Haemmerle <thomas.haemmerle@wolfvision.net> [apply format fixes, revise probe function, revise Kconfig] Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net> Link: https://lore.barebox.org/20211013112247.3065-2-michael.riesch@wolfvision.net Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | devfs: Do not create overlapping partitionsSascha Hauer2021-10-122-69/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Until now it has been possible to create overlapping partitions. Go away from that and allow to create partitions only in unallocated areas of a device. This lowers the risk of having inconsistent partitioning and increases the chance that inconsistent partitioning is recognized by the user. We had explicit overlap checking for the environment partition which becomes unnecessary with this change and is removed. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Link: https://lore.barebox.org/20211011073025.4187545-1-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | of: partitions: Skip fixup for devices with no partitionsTrent Piepho2021-10-121-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the device has no partitions, e.g. most EEPROM or OTP memory, of_partition_fixup() can exit early, before trying to find the kernel dt node and calling of_fixup_partitions(). This avoids spurious error messages when the kernel dt node doesn't exist. E.g., for an EEPROM in the Barebox dtb but not in the kernel dtb, Barebox will display an error about being unable to fixup the kernel dt node, however, if it had found the node it would just return without doing anything since the partition list is empty, so really there is no error. Signed-off-by: Trent Piepho <trent.piepho@igorinstitute.com> Link: https://lore.barebox.org/20211011191933.857941-1-trent.piepho@igorinstitute.com Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | nandtest: Add more fields when bad byte foundTrent Piepho2021-10-121-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This can help to determine what is causing the problem. E.g., is the bad byte always in the same eraseblock? Is it always 513 bytes into a page with a hardware ECC chunk size of 512 bytes? Example before and after (error at absolute address 123456 with 128kB eraseblock and 2kB page sizes): Byte 0xe240 is 12 should be 34 Block 0x1 byte 0xe240 (page 0x1c offset 0x240) is 0x12 should be 0x34 Signed-off-by: Trent Piepho <trent.piepho@igorinstitute.com> Link: https://lore.barebox.org/20211011190725.856597-1-trent.piepho@igorinstitute.com Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | net: ksz8864: Add support for KSZ87xx switchesTrent Piepho2021-10-121-16/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for the ksz8765, ksz8794, and ksz8795 switches. IDs for OF bindings are added. The base chip type is "ksz8795", the same as the Linux driver, for the ksz87xx switches added here. "ksz8864rmn" is used for the existing switch. The registers for these switch chips, as least as far as this simple driver is concerned, are the same as the existing ksz8864 support. The difference in the ksz87xx chips is the format of the command and address bytes: C = command A = address (used bits) a = address (unused bits) p = turn around padding bit ksz8864: 00000CCC AAAAAAAA ksz8795: CCCaaaaA AAAAAAAp CCC and AAAAAAAA are the same, it's just where they are that changes. This is parameterized in the read/write reg functions by using two values for the address width and pad width. Signed-off-by: Trent Piepho <trent.piepho@igorinstitute.com> Link: https://lore.barebox.org/20211011184213.854061-1-trent.piepho@igorinstitute.com Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | logo: Makefile: Replace inkscape with convertJules Maselbas2021-10-112-14/+11
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The uses of inkscape to convert svg to png hasn't been very stable from one version to another, and required quirks from one version to another. I hope that convert from imagemagick will be a more stable solution. Signed-off-by: Jules Maselbas <jmaselbas@kalray.eu> Link: https://lore.barebox.org/20211007115254.32270-1-jmaselbas@kalray.eu Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | Merge branch 'for-next/imx'Sascha Hauer2021-11-153-6/+6
|\ \ \ \
| * | | | I2C: i.MX: early: replace zero-valued variable use with zero directlyAhmad Fatoum2021-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a if (ret) return -EAGAIN a few lines above, so if we reach the final return, ret must be zero. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030141954.2207820-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | include/image-metadata.h: fix whitespaces in the BAREBOX_IMD_CRC macroAntony Pavlov2021-11-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com> Link: https://lore.barebox.org/20211028012816.929611-4-antonynpavlov@gmail.com Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | imd: reuse imd_is_crc32()Antony Pavlov2021-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com> Link: https://lore.barebox.org/20211028012816.929611-3-antonynpavlov@gmail.com Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | imd: fix imd_is_crc32()Antony Pavlov2021-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com> Link: https://lore.barebox.org/20211028012816.929611-2-antonynpavlov@gmail.com Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | | Merge branch 'for-next/dts'Sascha Hauer2021-11-1568-477/+484
|\ \ \ \ \
| * | | | | dts: update to v5.15Sascha Hauer2021-11-155-9/+14
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | | dts: update to v5.15-rc7Sascha Hauer2021-10-272-24/+20
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | | dts: update to v5.15-rc6Sascha Hauer2021-10-277-17/+28
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | | dts: update to v5.15-rc5Sascha Hauer2021-10-2755-427/+422
| | |/ / / | |/| | | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | | Release v2021.11.0v2021.11.0Sascha Hauer2021-11-151-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | | efi: efi-iomem: fix erroneous use of IS_ENABLED()Ahmad Fatoum2021-11-151-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IS_ENABLED() is supposed to be used for CONFIG_ macros, which a local #define DEBUG isn't. Fix by using __is_defined instead. The reason, we have this as a compile time switch is that the memory map can be very extensive (> 100 entries) and is usually only interesting during development. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211115090023.4192546-3-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | | efi: efi-iomem: don't add EFI loader code/data as memory banksAhmad Fatoum2021-11-151-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The loader code and data memory descriptors describe code used by the currently running barebox instance. This is already used memory, so registering it as available SDRAM is wrong. Instead, just reserve the IO MEM region for informational purposes. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211115090023.4192546-2-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | | pci: efi: skip driver model fixup for non-EFI PCI bussesAhmad Fatoum2021-11-151-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The EFI driver registers a PCI fixup to associate PCI devices probed via EFI with their parent. Restrict the fixup to EFI PCI busses only, so other PCI drivers can be used in the same build. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211115090023.4192546-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | | mci: dw_mmc: make reset control optional againAhmad Fatoum2021-11-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As documented in 90bdf1e5d1e4 ("mci: dw_mmc: match against StarFive MMC compatibles"), it was intended for the reset to remain optional as to not break existing users. Unfortunately, my later a3cf324593ea ("mci: dw_mmc: add optional reset line") didn't heed that and made it required, breaking SoCFPGA DW-MMC use as a result. Revert that line to fix the regression. Fixes: a3cf324593ea ("mci: dw_mmc: add optional reset line") Reported-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211101175207.2160779-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | | ARM: Terasic SoCkit: Use upstream compatible stringIan Abbott2021-11-082-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The upstream (Linux) 'compatible' string for the Terasic SoCkit board in "dts/src/arm/socfpga_cyclone5_sockit.dts" differs from the barebox 'compatible' string for the same board in "arch/arm/dts/socfpga_cyclone5_sockit.dts": Linux: "terasic,socfpga-cyclone5-sockit" barebox: "terasic,sockit" That results in an incompatibility when trying to boot a bootloader spec entry with a 'devicetree' key that refers to the DTB file built from the Linux sources. The barebox bootloader spec loader will ignore the entry because the 'compatible' string in the root node of the DTB does not match what barebox expects. Remove the 'compatible' string list from "arch/arm/dts/socfpga_cyclone5_sockit.dts" so that barebox uses the upstream compatible string list. Also remove the 'model' string ("Terasic SoCkit") which is identical to the upstream 'model' string. Finally, update the `of_machine_is_compatible("terasic,sockit")` function call in `socfpga_console_init()` to use the "terasic,socfpga-cyclone5-sockit" string. Cc: Steffen Trumtrar <s.trumtrar@pengutronix.de> Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Link: https://lore.barebox.org/20211105122146.29370-3-abbotti@mev.co.uk Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | | ARM: Terasic DE0-Nano-SoC/Atlas-SoC: Use upstream compatible stringIan Abbott2021-11-082-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The upstream (Linux) 'compatible' string for the Terasic DE0-Nano-SoC/Atlas-SoC board in "dts/src/arm/socfpga_cyclone5_de0_nano_soc.dts" differs from the barebox 'compatible' string for the same board in "arch/arm/dts/socfpga_cyclone5_de0_nano_soc.dts": Linux: "terasic,de0-atlas" barebox: "terasic,de0-nano-soc" That results in an incompatibility when trying to boot a bootloader spec entry with a 'devicetree' key that refers to the DTB file built from the Linux sources. The barebox bootloader spec loader will ignore the entry because the 'compatible' string in the root node of the DTB does not match what barebox expects. Remove the 'compatible' string list from "arch/arm/dts/socfpga_cyclone5_de0_nano_soc.dts" so that barebox uses the upstream compatible string list. Also remove the 'model' string ("Terasic DE0-Nano-SoC/Atlas-SoC Kit") so that barebox uses the upstream (and shorter!) model name ("Terasic DE-0(Atlas)"). Finally, update the `of_machine_is_compatible("terasic,de0-nano-soc")` function call in `socfpga_init()` to use the "terasic,de0-atlas" string. Cc: Steffen Trumtrar <s.trumtrar@pengutronix.de> Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Link: https://lore.barebox.org/20211105122146.29370-2-abbotti@mev.co.uk Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | | net: designware: eqos: fix MDIO regression for STM32MP1 boardsAhmad Fatoum2021-11-051-1/+5
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The STM32MP1 boards call their mdio subnode mdio0, which is now skipped since ed8c7bdf8592 ("net: designware: eqos: set mdio bus device node"). Fix networking for them by only falling back to the mdio node name when a child node with the correct compatible could not be found. Fixes: ed8c7bdf8592 ("net: designware: eqos: set mdio bus device node") Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Reviewed-by: Rouven Czerwinski <r.czerwinski@pengutronix.de> Link: https://lore.barebox.org/20210831153214.31047-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | ARM: i.MX8M: nxp-imx8mn-evk: use regular i2c read for device detectionAhmad Fatoum2021-11-011-2/+3
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The barebox-nxp-imx8mn-evk image supports both DDR4 and LPDDR4 variants by probing for the PMIC in use as the former uses a BD71847 and the latter a PCA9450B. The PCA9450B was observed to hang on the 0-byte (probe) reads. This results in I/O errors during later PMIC writes and the image would only boot on the EVKs with DDR4, which have the other PMIC. Fix this by switching to a 1 byte read instead. Change tested on i.MX8MN DDR4 EVK as well as another board with LPDDR4. While at it, note the address of the PMIC in the error message, so it's clear, what the result of the i2c probe was. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211030141934.2207659-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | Documentation: reboot-mode: fix typosUlrich Ölmann2021-10-221-4/+4
| | | | | | | | | | | | | | | | | | Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de> Link: https://lore.barebox.org/20211021143654.13824-1-u.oelmann@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | ARM: rpi_defconfig: Enable PHY core for dwc2 USB driverDaniel Brát2021-10-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Enable PHY core and USB NOP PHY driver in rpi_defconfig since the already enabled dwc2 usb driver uses it. Signed-off-by: Daniel Brát <danek.brat@gmail.com> Link: https://lore.barebox.org/20211020082505.3607-1-danek.brat@gmail.com Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | ARM: psci: client: fix power off and reset via 64-bit secure monitorAhmad Fatoum2021-10-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PSCI function code is a 32-bit integer > 0x80000000, but the the PSCI client code erroneously casted it to a signed integer. On 32-bit systems, the cast later on to unsigned long restored the original value, but on 64-bit system, we passed a very large 64-bit number in the secure monitor call because of the sign extension. This worked because TF-A seems to ignore the upper 32-bits anyway, (tested with i.MX8MN), but for other secure monitors like the default HVC implementation for QEMU ARM64 Virt machine this didn't hold true for all commands, leading to aborts when doing reset or poweroff. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211015160544.5783-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | common: Kconfig: fix indentationUlrich Ölmann2021-10-121-3/+3
| | | | | | | | | | | | | | | | | | Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de> Link: https://lore.barebox.org/20211012083920.14092-2-u.oelmann@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | common: Kconfig: fix typosUlrich Ölmann2021-10-121-13/+13
| |/ |/| | | | | | | | | Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de> Link: https://lore.barebox.org/20211012083920.14092-1-u.oelmann@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | ARM: Rockchip: fix path to rkbin firmware in documentationAhmad Fatoum2021-10-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | Like in the two lines following it, the rk3568_bl31_v1.24.elf firmware's top level directory is bin/. Checked against 7d631e0d5b2d ("rk3568: bl31: update version to v1.24"). Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211011142215.25846-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | sandbox: Fix stickypage.bin dependenciesSascha Hauer2021-10-112-8/+6
| | | | | | | | | | | | | | | | | | | | | | stickypage.o is included in the build process once in arch/sandbox/board/Makefile using extra-y += stickypage.o and once again in arch/sandbox/Makefile using stickypage.bin: arch/sandbox/board/stickypage.o This doesn't work as expected. With parallel builds it can happen that the file is built twice confusing the build system. Create stickypage.bin in a single directory only. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | console: fixup add new CONFIG_CONSOLE_DISABLE_INPUT optionAhmad Fatoum2021-10-111-1/+1
|/ | | | | | | | Fix typo in CONFIG_CONSOLE_DISABLE_INPUT case for simple console. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211002174417.27020-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/zynqmp'Sascha Hauer2021-10-0713-67/+211
|\
| * arm: zynqmp: add boot source supportMichael Riesch2021-10-041-0/+86
| | | | | | | | | | | | | | | | | | | | The ZynqMP reports the mode pins sampled at POR via the register ZYNQMP_CRL_APB_BOOT_MODE_USER. This commit adds a function that reads the register and populates the boot source. Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net> Link: https://lore.barebox.org/20210913121350.9307-4-michael.riesch@wolfvision.net Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * Documentation: boards: zynqmp: fix broken linksMichael Riesch2021-10-041-2/+2
| | | | | | | | | | | | | | | | | | The external links are not properly recognized. Remove quotation marks as a fix. Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net> Link: https://lore.barebox.org/20210913121350.9307-3-michael.riesch@wolfvision.net Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * arm: zynqmp: add support for xilinx zcu106 boardMichael Riesch2021-10-049-0/+93
| | | | | | | | | | | | | | | | | | | | | | | | Add support for the Xilinx Zynq UltraScale+ MPSoC ZCU106 evaluation board. The changes are derived from the ZCU104 board support by applying s/104/106/g (more or less). Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net> Link: https://lore.barebox.org/20210913121350.9307-2-michael.riesch@wolfvision.net Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>