| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
52cc061f50aa ("ARM: dts: stm32mp: report psci v0.2 at least") adds a
barebox override, because the upstream device tree's compatible was
outdated. Since abef60363d8e ("dts: update to v5.8-rc1"), the
upstream device tree has &{/psci} { compatible = "arm,psci-1.0"; }; ,
so now we can drop our override again without adverse effect.
Signed-off-by: Ahmad Fatoum <ahmad@a3f.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Grouping the fixed regulators in an extra regulators node is deprecated.
Move the regulators up one level and drop the reg properties to avoid
dtc warnings.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| | |
tps65217.dtsi should be used from the upstream dts sources instead.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| | |
The mmc aliases are in the upstream dtsi now, so use them.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| |
| | |
The upstream dtsi now has a ddr controller node, so no need to duplicate
anymore.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|/
|
|
|
|
|
| |
Newer i.MX dtsi files expect three pwm cells. The third cell contains
flags. Add a third cell containing empty flags.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Board consists of SoM with stm32mp157c with 4G eMMC and 512M DDR3 RAM.
Carrier board features USB and ETH interfaces and SD card connector.
USB and ETH interfaces not yet operational.
Boot from eMMC requires boot ack bit set.
Device Tree taken from v5 of kernel device tree off mailing list[1].
[1]: https://lore.kernel.org/linux-arm-kernel/20200724145107.35772-3-marcin.sloniewski@gmail.com/
Tested-by: Jookia <contact@jookia.org>
Tested-by: Xogium <contact@xogium.me>
Signed-off-by: Ahmad Fatoum <ahmad@a3f.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This ensures that the correct console gets activated independent
of the device probe order.
Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Use the fourth SPL partition in NAND for environment storage.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We use barebox,state as compatible for the state node. The
barebox,bootstate node serves no purpose with current code base and is
just confusing. Drop it.
Reported-by: Xogium <contact@xogium.me>
Signed-off-by: Ahmad Fatoum <ahmad@a3f.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Create the PHY node with properly configured phy-mode and reset lines.
In this case we will not need board specific PHY fixups.
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | | |
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |/
| |
| |
| |
| | |
Signed-off-by: Anees Rehman <anees.r3hman@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|/
|
|
| |
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This adds support for the NXP i.MX8MP-EVK board.
The SDRAM timings are taken from U-Boot-2020.07-rc4, other information
how to initialize the board are form U-Boot as well.
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
EEPROM on fiber optic modules present on Rev C ZII VF610 Dev board
can be exposed as AT24 compatible devices. Add corresponding DT nodes
needed for that.
Signed-off-by: Chris Healy <cphealy@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| |
| | |
Add initial support for 15 i.MX6 based Protonic boards.
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| |
| | |
This DTS will be replaced by kernel version
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The phandles are unreferenced anywhere. They are likely a remnant of
copy and paste from another device tree that makes use of them, e.g. the
socfpga_cyclone5_socrates.dts. Drop them.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
zynqmp.dtsi's only node is now available in the upstream dtsi at same
path and same contents, so we can drop the file again.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This gpio-keys node is now available upstream long with the
GPIO_ACTIVE_LOW flag, so we can drop the barebox override.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A status = "disabled" node should act the same as if it were
uncommented, with the difference that a board that does have the
resistor populated could easily fixup the status.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This was likely overlooked because they were separate commits.
Combine them now. No functional change.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Prior to 8226f7f90973 ("of: base: parse all available memory nodes"),
barebox first looked at a /memory node, then at a node with a
device_type = "memory" property when probing available memory banks from
device tree. Linux instead only considered nodes with device_type =
"memory". The imx6ul-pico-hobbit predates the change in barebox behavior,
so it's unclear what is gained from dropping device_type = "memory" as
barebox used to parse the node by name anyway and Linux only saw the new
fixed up node.
Since then the Linux device tree has been split into a SoM and carrier
board device tree and the node name is now called memory@80000000 with
a size of 0 in the reg property. Because it's already used for boards
with differing memory size, we assume this will remain so and thus we
just drop the defunct barebox memory node override.
Cc: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The container node of the leds has never had the name gpio_leds,
so there is no regression here, it just never worked.
Instead of fixing it, just drop it.
Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The upstream device tree already features a memory node with the correct
size, but with the name memory@80000000. Drop the differently-named
barebox node.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Many device trees upstream have moved to memory@BASE_ADDRESS for the
memory node instead of a unit-name-less memory node. This has resulted
in breakage[1] in barebox, because some device trees feature an upstream
memory size that's not available in all variants and the barebox device
tree must override it, not create a second correct node next to the broken
one and risk of_add_memory allocating banks with bogus sizes.
To avoid this happening in future, to memory or to other nodes, extension
of nodes should happen via phandles throughout, because a phandle is assumed
to be more stable and if one is removed a compile error results instead
of creating a new node somewhere. For nodes lacking a phandle, we can
use the &{/path} syntax to declare an anonymous phandle that will fail
to compile when the upstream path changes. This is better than having
devices fail to boot at runtime.
[1]: 0d26ce1c11a1 ("ARM: Phytec phyFLEX i.MX6: delete wrong memory node")
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The pinctrl device is also on the APB in the base device tree. The
barebox device tree wrongly creates a new one top-level under /.
Move it to the correct location, so the upstream node is extended.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
With the recent v5.8-rc1 device tree sync, we can drop everything but
the barebox-specific parts from the barebox device tree.
The rest now comes from the upstream device tree.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Roland already fixed the vexpress-v2p-ca9:
> Upstream DTS commit 62a5017bf825c9e4d317 ("ARM: dts: vexpress: specify
> AFS partition") [1] introduced an empty node at /smb@4000000
> /motherboard/flash@0,00000000/partitions, which is preferred by the OF
> partitions parser over the single partition nodes. In the same commit,
> upstream set the compatible to "arm,arm-firmware-suite", which barebox
> does not know about. Adapt our fixed partition setup accordingly by
> wrapping all partitions in an extra "partitions" node with the correct
> compatible.
> [1]: https://git.kernel.org/linus/62a5017bf825c9e4d3176eb975a01c329a9f36
Do the same for the vexpress-v2p-ca15. While at it use the new label:
added along with 6940ba22c66a ("dts: update to v5.3-rc1"). This way we
aren't (build-)broken, when the upstream path changes in v5.8-rc1.
Fixes: 6940ba22c66ac1c71350 ("dts: update to v5.3-rc1")
Cc: Roland Hieber <r.hieber@pengutronix.de>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Linux v5.8-rc1 adds partitions to the flash@0 node, which now overlap
with the partitions we define and resulting in errors:
ERROR: m25p0.barebox: New partition m25p0.barebox conflicts
with m25p0.at91bootstrap
ERROR: m25p0.barebox-environment: New partition
m25p0.barebox-environment conflicts with m25p0.bootloader
We don't want to reuse those partitions as their name may and probably
will change (they have leading zeroes in the unit address).
We could use the &{/path/to/partition} syntax, but that might be broken
soon as well, as the nodes aren't inside a partitions node with a
"fixed-partitions" compatible.
The busses also don't align with the yaml schema and might be renamed.
Nuke the full flash@0 node and supply ours and avoid these problems.
The offsets of the partitions have been adjusted to coincide with the
upstream offsets for second stage bootloader and environment.
Signed-off-by: Ahmad Fatoum <ahmad@a3f.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The board only has SD-Card as storage. Add a barebox update handler to
flash barebox to it, as well as an nv.boot.default=mmc1 to boot from it.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We now have second stage support for running from sdmmc0 and sdmmc1.
Add a barebox environment and update handler for the two SD cards.
As fall back, we use the environment in the QSPI flash as before as this
is soldered to the SoM and is always available.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We hard code memory size at three places:
- In the configuration we use to initialize the DDRAM controller
- In the minimal available size passed from PBL to barebox proper
- In the device tree memory node override
Remove the two latter ones and replace them with code that reads the
size back from controller.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When booting from SDMMC0, Use of SDMMC1 fails with:
ERROR: clk: couldn't set sdmmc1_gclk clk rate to 480000000 (-22), current rate: 32768
This is because the first stage bootloader only reparents the boot SDMMC
instance and barebox does no automatic reparenting for the other one.
Force both clocks to have a suitable parent.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There is no /smb@4000000 node upstream any longer as it was
renamed with the 8d158e1a4091 ("dts: update to v5.7-rc1") sync.
Adjust the barebox device tree accordingly. It's likely that this
resulted in barebox v2020.06.0 state, environment and update breakage on
the vexpress boards.
Cc: Roland Hieber <rhi@pengutronix.de>
Fixes: 8d158e1a4091 ("dts: update to v5.7-rc1")
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The spec[1] says that top level memory nodes `shall have device_type =
"memory"'. Since 8226f7f9 ("of: base: parse all available memory nodes"),
we parse only nodes with device_type = "memory", so we should add the
device_type property where ever it's missing. When the nodes were first
added, this wasn't an issue because the skeleton.dtsi defined a memory
skeleton with correct device_type, but this was removed upstream and
imported into barebox along with 1dc748b3 ("dts: update to v5.1-rc1").
Upstream device trees with a memory node were adapted to have
device_type = "memory" in-line. This wasn't the case for nodes defined
only within barebox. Rectify this now and rename the nodes to feature a
unit name as well to be aligned with the upstream trend.
[1]: https://github.com/devicetree-org/devicetree-specification/releases/download/v0.3/devicetree-specification-v0.3.pdf
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With the upstream migration to memory@BASE_ADDRESS naming scheme in the
device tree of some SoC families, we now have multiple overlapping memory
nodes in some of the barebox device trees. Rename the defunct overrides, so
they once again override the upstream nodes.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There is no /soc/aips@50000000 node upstream any longer as it was
renamed with the 8d158e1a4091 ("dts: update to v5.7-rc1") sync.
Adjust the barebox device tree accordingly. It's likely that this
resulted in barebox v2020.06.0 USB connectivity breakage for the
i.MX50's second USB PHY.
Fixes: 8d158e1a4091 ("dts: update to v5.7-rc1")
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The rpi3b device tree specifies 1G of RAM in the memory node, but maps
the highest 16M of RAM's physical address range for peripheral use.
When support for device tree probing was first added for the rpi3b
in e8fab18835a1 ("ARM: rpi: switch to DT probe and multi-image build"),
it had a memory { } node overriding the kernel node size with 0, so the
size is computed later correctly.
1dc748b3b202 ("dts: update to v5.1-rc1") came and renamed the upstream
memory { } node to memory@0. So instead of overriding the old, we
now created a second dummy along with the broken node.
barebox did only parse the dummy, so it continued to limp along.
8226f7f90973 ("of: base: parse all available memory nodes") started
considering both nodes and rendered barebox v2020.05.0 unable to start
up on the rpi3b because of the conflict between RAM range and peripherals
like the bcm2835_mbox caused by parsing the broken memory node.
At least one board also was broken for the same reason[1], so a more
robust approach is in order. For nodes that lack a phandle, the
&{/path} syntax can be used instead. This has the benefit that should
the path disappear in future, a compile failure would result.
[1] 0d26ce1c11a1 ("ARM: Phytec phyFLEX i.MX6: delete wrong memory node")
Fixes: 1dc748b3b202 ("dts: update to v5.1-rc1")
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This devicetree isn't baseboard-specific, so keep it compatible at
SOM-level.
Signed-off-by: Robert Karszniewicz <r.karszniewicz@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The embedded DTBs are compiled by the chain of pattern rules as follows:
%.dts -> %.dtb -> %.dtb.S -> %.dtb.o for barebox proper
%.dts -> %.dtb -> %.dtb.S -> %.dtb.pbl.o for pbl
Barebox introduced {obj,pbl,lwl}-dtb-y syntax to put the intermediate
files into extra-y. The purposes of doing so were:
[1] prevent GNU Make from deleting the intermediate files
[2] include .*.cmd files
In contrast, Linux does not use a special syntax for embedding DTBs
into the kernel.
For example, as you see in arch/sh/boot/dts/Makefile of Linux 5.6,
obj-y += <basename>.dtb.o
... just works.
This is because scripts/Kbuild.include specifies .SECONDARY to cater
to [1], and scripts/Makefile.build adds the intermediates to 'targets'
to deal with [2].
Barebox had already imported the same code from Linux, so you can use
obj-y instead of obj-dtb-y, like Linux.
pbl-dtb-y and lwl-dtb-y are barebox-specific cases, so I added the
%.dtb.pbl.o pattern to intermediate_targets.
Going forward, please use obj-y, pbl-y, or lwl-y.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|