[U-Boot] [PATCH v4 00/19] sunxi: sync H3, H5, A64 DTs from mainline Linux
Jagan Teki
jagan at amarulasolutions.com
Thu Mar 29 08:51:24 UTC 2018
Hi Andre,
On Wed, Mar 14, 2018 at 7:26 AM, Andre Przywara <andre.przywara at arm.com> wrote:
> A minor update to the v3 version sent earlier this month.
> I reworked patch 09 to drop the direct MMC environment for 32-bit Allwinner
> boards as well and keep the current MMC offset.
> For now I also dropped the two patches changing (back) the MMC regulator.
> I still believe they are good to have and keep them as U-Boot specific
> .dtsi files in my tree, possibly posting them later again.
>
> As the previous version, this combines the EMAC DT support update with
> an update of the full Linux kernel DTs for all H3, H5 and A64 boards.
>
> Patch 01 leaves some hint in the README how to avoid the situation
> when overrunning U-Boot's image size on 64-bit boards.
> The old v2 EMAC DT update series is in patches 02-08, it prepares U-Boot's
> EMAC driver for using the new DT binding used in Linux, also updates
> the DTs to the new EMAC DT node already.
>
> Changes to sync the whole of U-Boot's DT files for the H3, H5 and A64 SoCs
> to those from Linux are in the following patches. However this first requires
> lifting the space limit we currently have due to the raw MMC environment.
> Patch 09 disables that for all sunxi boards, to give us finally some
> space. Patches 10 and 11 consequently revert the disabling of features we
> saw a few weeks ago to migitate the size problem.
>
> Patches 12-19 then bring in the Linux DTs, split by SoCs, with the .dtsi
> files first, then the board files.
>
> Merging the H3 and H5 device tree files brings in significant changes,
> also to the structure of the .dtsi files. However U-Boot's own DT usage
> is pretty limited, so it doesn't matter.
>
> The huge benefit of syncing the DTs is that we can use U-Boot's DT copy
> to directly pass it to the kernel, avoiding to actually load a .dtb file
> from somewhere. To allows seamless and automatic UEFI booting, so
> distribution installer images should just work (TM).
>
> As a goodie the final patch brings in the actual SoPine + baseboard DT
> files, which we were completely missing so far.
>
> This is based on sunxi/master (2d53018a0ef2).
>
> Cheers,
> Andre.
>
> Changelog v3 .. v4:
> - remove MMC environment for all Allwinner boards (including 32 bit ones)
> - keep MMC environment offset to the old values
> - drop DT adjustments to use fixed MMC regulator
>
> Changelog v2 .. v3:
> 01: added, was on the list before
> 02: drop redundant H5 line
> 03-08: unchanged
> 09-20: added
>
> Changelog v1 .. v2:
> 01, 02, 03: unchanged
> 04, 05, 06, 07: added
>
> Andre Przywara (19):
> sunxi: README.sunxi64: Add hint about non-debug of ARM Trusted
> Firmware
> sunxi: gpio: add missing compatible strings
> net: sun8i-emac: support new pinctrl DT bindings
> net: sun8i-emac: add support for new EMAC DT binding
> arm: dts: sunxi: update A64 to new EMAC binding
> arm: dts: sunxi: update H3 to new EMAC binding
> arm: dts: sunxi: update H5 to new EMAC binding
> net: sun8i-emac: remove support for old binding
> sunxi: disable direct MMC environment
> sunxi: revert disabling of features
> Revert "sunxi: Pine64: temporarily remove extra Pine64 non-plus DT"
> sunxi: DT: A64: update device tree file for Allwinner A64 SoC
> sunxi: DT: A64: update board .dts files from Linux
> sunxi: DT: update device tree files for Allwinner H3 and H5 SoCs
> sunxi: DT: H5: update board .dts files from Linux
> sunxi: DT: H3: update board .dts files from Linux
> sunxi: DT: H3: update libre-cc board .dts file
> sunxi: DT: H2+: update Opi-zero .dts
> sunxi: DT: A64: add proper SoPine baseboard device tree
I agree that we have space for now with U-Boot proper since we removed
MMC raw, but why we need to Sync all the dts nodes from Linux? it is
costing some space right? becuase
- most of the nodes doesn't have proper drivers yet example: clock,
reset, spi, axp803 and some include files and etc
- Few nodes like mmc1 from bananpi-m64 doesn't need from U-Boot point-of-view
What I'm trying to say is we should anyway sync to Linux bindings and
dts files, but that could be like step-by-step based on the relevant
driver support with proper testing this way we can monitor the "Size"
instead of adding unneeded(for now) and untested once now struggling
to think about size constraints later.
If are fine with this please re-work based on above points and resend
the next version otherwise please comment.
Jagan.
More information about the U-Boot
mailing list