summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* dts: update to v5.1-rc1Sascha Hauer2019-04-08872-4806/+30151
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2019.04.0v2019.04.0Sascha Hauer2019-04-051-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* of: Fix reproducible names for #address-cells != 1Sascha Hauer2019-03-181-2/+2
| | | | | | | | | | | | | | For the new "fixed-partitions" binding we ignore the partitions subnode for creating reproducible names and set node to its parent. To get the number of address cells we must call of_n_addr_cells() before setting node to its parent though, not afterwards. With the current behaviour we always get OF_ROOT_NODE_ADDR_CELLS_DEFAULT (=1). This happens to work then the partitioned device is less than 4GiB in size. On bigger devices #address-cells = <2> is chosen by the mtd partition fixup code. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Reported-by: Bastian Krause <bst@pengutronix.de>
* Revert "fix zbarebox linking with new ld"Sascha Hauer2019-03-181-1/+1
| | | | | | | | | --no-dynamic-linker is already added just a few lines below, do not add the option twice. This option also needs to be embedded in a test if the linker supports this option which we already have in the other place adding this option. This reverts commit 25de30638a2859f9e07c61821cdc71906b7169b8.
* ARM: Makefile: restore kindle3 imxcfg-y settingAlexander Kurz2019-03-181-0/+1
| | | | | | | | | Commit 45f38c1a846f ("ARM: Makefile: Drop unnecessary imxcfg-y settings") dropped the imximg generation for the kindle3. This device is not covered within multiimage support and can be configured with kindle3_defconfig. Signed-off-by: Alexander Kurz <akurz@blala.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* mci: imx-esdhc: resolve conflicting flagsAlexander Kurz2019-03-181-4/+5
| | | | | | | | | | | With commit 3354adee3920 ("mci: imx-esdhc: Add bigendian register access support") and commit 15b64fd520c2 ("mci: imx-esdhc: Add layerscape support") two ESDHC_FLAGs got assigned to already existing values. This conflict made the imx6sl usdhc appear to be big endian. Resolve this conflict by assign the new flags to the next vacant values. Signed-off-by: Alexander Kurz <akurz@blala.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* mci: imx-esdhc-pbl: initialize is_beChristian Hemp2019-03-181-0/+2
| | | | | | | | | Initialize is_be, otherwise the value of is_be is undefined. So it is possible that the i.MX8 will not boot because the bigendian functions are used. Signed-off-by: Christian Hemp <c.hemp@phytec.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* dtc: disable noisy warningsSascha Hauer2019-03-141-0/+4
| | | | | | | | | | | | | Disable the following warnings from dtc: -Wno-alias_paths -Wno-graph_child_address -Wno-simple_bus_reg -Wno-unique_unit_address This syncs the warning flags with the Kernel. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/spd'Sascha Hauer2019-03-0719-337/+806
|\
| * ddr_spd: Enable in PBLSascha Hauer2019-03-041-1/+1
| | | | | | | | | | | | | | SPD EEPROMs are typically needed in PBL when the SDRAM is not yet initialized. Enable compilation of the SPD support in PBL. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * ddr_spd: provide common SPD typeSascha Hauer2019-03-041-0/+10
| | | | | | | | | | | | | | Provide a common struct type for the different SPD EEPROM types. Can be used to pass around SPD data without specifying the DDR type. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * ddr_spd: Add function to read eepromSascha Hauer2019-03-042-0/+88
| | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * ddr_spd: Update from U-BootSascha Hauer2019-03-045-217/+604
| | | | | | | | | | | | | | | | | | | | | | This updates the ddr_spd.h header file from U-Boot-2019.01 with some small changes: - typedefs are removed - "_s" suffix from struct types removed - remove unnecessary "extern" from function declarations Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * crc: Add PBL variant for crc_itu_t()Sascha Hauer2019-03-042-1/+17
| | | | | | | | | | | | | | Enable crc_itu_t() for PBL. For the PBL use the slower-but-smaller variant without table. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * crc: import crc_itu_t() from kernelSascha Hauer2019-03-0414-120/+88
| | | | | | | | | | | | | | | | Our cyc_crc16() function is the same function as crc_itu_t() in the Linux kernel. Import and use crc_itu_t() from the Kernel for consistency. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Merge branch 'for-next/rpi'Sascha Hauer2019-03-0728-56/+404
|\ \
| * | ARM: rpi: Clarify debug uart namesSascha Hauer2019-03-071-2/+2
| | | | | | | | | | | | | | | | | | | | | Now that we support the miniuart as lowlevel debug UART clarify that the other UARTs are PL011. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | fixup! ARM: rpi: Add mini UART debug_ll supportSascha Hauer2019-03-071-1/+1
| | |
| * | fixup! ARM: rpi: move debug UART Kconfig settingsSascha Hauer2019-03-071-1/+1
| | |
| * | ARM: rpi: Add mini UART debug_ll supportSascha Hauer2019-03-062-0/+43
| | | | | | | | | | | | | | | | | | | | | The raspberry pi 3 comes up with the mini UART as default, so allow to use it for debug_ll output. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | ARM: rpi: move debug UART Kconfig settingsSascha Hauer2019-03-063-24/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In contrast to other architectures, R.Pi debug UART config was placed under the "System Type" menu, not under the "Debugging -> low-level debugging port". This made this setting easy to miss when enabling low level debug mesages. While at it use the existing base address defines rather than defining them again in Kconfig. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | debug_ll: Add ns16550 early debugging functionsSascha Hauer2019-03-061-0/+56
| | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | debug_ll: Move pl011 header file to architecture independent placeSascha Hauer2019-03-066-5/+5
| | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | ARM: rpi: Move UART base address definitions to header fileSascha Hauer2019-03-062-4/+5
| | | | | | | | | | | | | | | | | | Move defines to header file to make them reusable. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | ARM: rpi: save bootargs from VC FDT to vc.bootargsTomaz Solc2019-03-042-0/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When booting a Raspberry Pi, it is useful to extract bootargs from the device tree that was created by the VideoCore firmware. These bootargs contain for example settings for the framebuffer that the kernel needs to properly set the video output. This commit extracts the bootargs in the board initialization code and saves them to the vc.bootargs global variable. For example, a bootloader environment can then add the contents of this variable to linux.bootargs.vc, which then gets included into the final bootargs for the kernel using CONFIG_FLEXIBLE_BOOTARGS. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | ARM: rpi: save fdt that was passed from VideoCoreTomaz Solc2019-03-044-19/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Raspberry Pi, VideoCore firmware creates a device tree that contains information about peripherals that were initialized by VideoCore based on settings in config.txt. Normally this device tree is passed to the Linux kernel via a pointer in the r2 register. A bootloader needs to pass this device tree to the kernel, or some peripherals will not work correctly. Since the VideoCore device tree is not compatible with barebox, we can't just pass it to barebox_arm_entry() as the internal barebox device tree. This commit makes the prebootloader code copy the device tree from VideoCore into a scrap RAM area just above the area reserved for the bootloader. Board initialization code in the bootloader proper then copies it into a file /vc.dtb. The bootloader environment is then free to pass this file to the kernel at boot (e.g. via bootm -o). Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | ARM: start: save end of memory passed to start.Tomaz Solc2019-03-042-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | Knowing the address of the end of the memory area used by Barebox is useful if PBL stores some extra data after it, so that board init code can later retrieve it from there. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | ARM: rpi: add CONFIG_PINCTRL to rpi_defconfig.Tomaz Solc2019-02-191-1/+1
| | | | | | | | | | | | | | | | | | Required for emmc pin function switching on Raspberry Pi 3. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | ARM: rpi: Add device tree for Compute Module 3.Tomaz Solc2019-02-195-1/+40
| | | | | | | | | | | | | | | | | | | | | Compute Module needs "no-sd" property on the MMC interface otherwise mci-bcm2835 hangs on SD card probe. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | mci: bcm2835: parse other device tree properties.Tomaz Solc2019-02-191-0/+3
| | | | | | | | | | | | | | | | | | | | | The driver was missing a call to mci_of_parse() which fills in properties such as "bus-width", "no-sd" into the mci_host struct. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | mci: bcm2835: use device_initcall(), not coredev.Tomaz Solc2019-02-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pinctrl driver needs to be initialized before mci driver on Raspberry Pi. Otherwise the pinctrl device tree properties in the mci node are ignored. pinctrl is initialized by coredevice_initcall(), so moving mci-bcm2835 to device_initcall() ensures that it is initialized later. There is no reason for mci-bcm2835 to use coredevice_initcall(). Other mci drivers already use device_initcall(). Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | pinctrl: bcm2835: register the pin controller.Tomaz Solc2019-02-191-1/+51
| | | | | | | | | | | | | | | | | | | | | This adds hooks for the pin controller driver to the existing bcm2835_set_function(). Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | pinctrl: bcm2835: move existing code from gpio.Tomaz Solc2019-02-196-6/+8
| | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | Kconfig: add pin controllers submenu.Tomaz Solc2019-02-191-0/+4
| | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | ARM: rpi: switch emmc from sdhost to sdhciTomaz Solc2019-02-191-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BCM2837 has two mmc interfaces: sdhost and sdhci. On Raspberry Pi 3, sdhost is normally used for SD card/MMC flash and sdhci for the wireless interface. Barebox currently only has a driver for sdhci, so we disable the sdhost interface and remap the pins so that the sdhci has access to the SD card/MMC flash. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | watchdog: bcm2835: set timeout_max.Tomaz Solc2019-02-181-0/+5
| | | | | | | | | | | | | | | | | | BCM2835 watchdog timeout can be set to maximum 15 seconds (0xffffff >> 16). Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | Merge branch 'for-next/nvme'Sascha Hauer2019-03-0720-25/+5870
|\ \ \
| * | | drivers: Import a very basic NVME implementation from LinuxAndrey Smirnov2019-02-1810-0/+2758
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Import a very abridged NVME implementation from Linux kernel in order to be able to access NVME storage attached via PCIe. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | include: Import min_not_zero() macro from LinuxAndrey Smirnov2019-02-181-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Import min_not_zero() macro from Linux used by some kernel code. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | include: Import uuid.h for LinuxAndrey Smirnov2019-02-182-0/+138
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Import uuid.h for Linux as a requirement for NVMe subsystem. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | include: Add definitnion for HZAndrey Smirnov2019-02-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add definitnion for HZ to simplify porting Linux kernel code. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | include: Sync up pci_ids.h with 4.20-rc1Andrey Smirnov2019-02-181-0/+2952
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sync up pci_ids.h with 4.20-rc1 to get PCI IDs of devices currently not present in our copy of pci_ids.h. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | drivers: Make use of device_pci_driver()Andrey Smirnov2019-02-184-24/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace all of the generic PCI boilerplate with device_pci_driver(). Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | PCI: Introduce device_pci_driver()Andrey Smirnov2019-02-181-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to varoius *_platfrom_drivers(), introduce device_pci_driver() to simplify PCI driver boilerplate. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | PCI: Fix to_pci_dev() macroAndrey Smirnov2019-02-181-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rename argument of to_pci_dev() to avoid replacing both first and third parameters passed to container_of. All of the current users of the macro invoike it with a varible named "dev", so erroneous replacement doesn't cause any harm, however trying to pass variable with any other name will result in compilation failure. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | Merge branch 'for-next/misc'Sascha Hauer2019-03-0729-492/+1207
|\ \ \
| * | | common: Kconfig: improve help text for DEBUG_LLTomaz Solc2019-03-071-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adopts the help text used in Linux for the same setting. It clarifies that a build with DEBUG_LL enabled will only work on the system you chose the debug UART for. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | images: pbl: verify CONFIG_BAREBOX_MAX_IMAGE_SIZE is not exceededAhmad Fatoum2019-03-073-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For platforms such as the at91, the boot ROM imposes an upper limit on barebox file size. Prior to 5a1a5ed253 ("ARM: images: use piggydata"), BAREBOX_MAX_PBLX_SIZE seems to have been the way to go for limiting the size of the final barebox binary when using the PBL. With pblx removed, this variable is of no use, so have the existing BAREBOX_MAX_IMAGE_SIZE replace its functionality. Currently BAREBOX_MAX_IMAGE_SIZE is only checked against in the non-PBL case, so add a check in the PBL case as well. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | fix zbarebox linking with new ld张忠山2019-03-071-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: 张忠山 <zzs213@126.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | PCI: dwc: tune down link up messagesLucas Stach2019-03-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This function may be called repeatedly while establishing the link, so printing a message each time a working link is found can add quite a bit of noise. Tune those messages down to the debug level. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>