Message ID | 20220307143421.1106209-1-andre.przywara@arm.com (mailing list archive) |
---|---|
Headers | show |
Series | ARM: suniv: dts: update Allwinner F1C100 | expand |
On 3/7/22 09:34, Andre Przywara wrote: > The Allwinner F1C100 SoC didn't see much love since its initial merge in > 2018: the originally submitted .dts files were very basic, and didn't > cover such simple peripherals as MMC and SPI. > On top of that the watchdog compatible string was wrong, leading to a > non-functional watchdog and reset functionality. > > This series aims to fix that, after the series MMC and SPI work, and > make dtbs_check comes back clean. > This was tested with mounting a filesystem on /dev/mmcblk0 on a > LicheePi Nano, also with accessing the SPI flash through /dev/mtdblock > and mtd_debug. Reboot and watchdog now also work. > > Mainline U-Boot recently gained F1C100 support, and those DT updates are > needed there as well to get full MMC and SPI access. Thank you so much for doing this Giulio and I really appreciate this. I'm sorry I haven't been available lately i have had other activities lately. > The series is structured as follows: > - Patches 01/14 and 02/14 fix the watchdog, which allows to properly > reboot the system. > - Patches 03-06 fix some shortcomings of the existing DT files, to make > them DT binding compliant. > - Patches 07-09 are Jesse's recent MMC patches, with the comments from > the last version addressed [1]. > - Patches 10-12 add SPI support, to enable access to the SPI flash on > the LicheePi Nano board. > - The final two patches (13/14 and 14/14) add the F1C100 platform to > the multi_v5_defconfig, since it was not covered by any other > defconfig before, and an ARMv5 compliant kernel is not commonly > offered by distributions. > > I saw George's series from two years ago to add USB support[2], that > looks good on the first glance, I will comment on that once I did some > testing on that. There are patches for USB host as well. There are working patches floating around for the LCD controller, as well as patches for audio, but audio only works in 5.2 even though none of the files the patches touched have changed since. To test the LCD controller I made a DAC to output to VGA unfortunately the blanking regions aren't set to 0v so its not to VGA spec but if there is a black boarder it works fine. > Cheers, > Andre > > Changelog for the MMC patches [1]: > - bindings doc: extend commit message > - .dtsi: extend commit message, re-order mmc0_pins node, add > drive-strength > - .dts: extend commit message, add alias, regulator and disable-wp > > [1] https://lore.kernel.org/linux-arm-kernel/20220130220325.1983918-1-Mr.Bossman075@gmail.com/ > [2] https://lore.kernel.org/linux-usb/20200331170219.267732-1-thirtythreeforty@gmail.com/ > > Andre Przywara (10): > dt-bindings: watchdog: sunxi: fix F1C100s compatible > ARM: dts: suniv: F1C100: fix watchdog compatible > dt-bindings: arm: sunxi: document LicheePi Nano name > ARM: dts: suniv: F1C100: fix CPU node > ARM: dts: suniv: F1C100: fix timer node > dt-bindings: spi: sunxi: document F1C100 controllers > ARM: dts: suniv: F1C100: add SPI support > ARM: dts: suniv: licheepi-nano: add SPI flash > ARM: configs: sync multi_v5_defconfig from savedefconfig > ARM: configs: multi_v5: Enable Allwinner F1C100 > > Jesse Taube (4): > ARM: dts: suniv: F1C100: add clock and reset macros > dt-bindings: mmc: sunxi: add Allwinner F1c100s compatible > ARM: dts: suniv: F1C100: add MMC controllers > ARM: dts: suniv: licheepi-nano: add microSD card > > .../devicetree/bindings/arm/sunxi.yaml | 5 + > .../bindings/mmc/allwinner,sun4i-a10-mmc.yaml | 3 + > .../bindings/spi/allwinner,sun6i-a31-spi.yaml | 1 + > .../watchdog/allwinner,sun4i-a10-wdt.yaml | 2 +- > .../boot/dts/suniv-f1c100s-licheepi-nano.dts | 31 ++++++ > arch/arm/boot/dts/suniv-f1c100s.dtsi | 102 ++++++++++++++++-- > arch/arm/configs/multi_v5_defconfig | 25 ++--- > 7 files changed, 140 insertions(+), 29 deletions(-) >
Hi Jesse, On 07/03/22 19:03, Jesse Taube wrote: > > > On 3/7/22 09:34, Andre Przywara wrote: >> The Allwinner F1C100 SoC didn't see much love since its initial merge in >> 2018: the originally submitted .dts files were very basic, and didn't >> cover such simple peripherals as MMC and SPI. >> On top of that the watchdog compatible string was wrong, leading to a >> non-functional watchdog and reset functionality. >> >> This series aims to fix that, after the series MMC and SPI work, and >> make dtbs_check comes back clean. >> This was tested with mounting a filesystem on /dev/mmcblk0 on a >> LicheePi Nano, also with accessing the SPI flash through /dev/mtdblock >> and mtd_debug. Reboot and watchdog now also work. >> >> Mainline U-Boot recently gained F1C100 support, and those DT updates are >> needed there as well to get full MMC and SPI access. > Thank you so much for doing this Giulio and I really appreciate this. > I'm sorry I haven't been available lately i have had other activities > lately. I didn't do it, Andre did it :-) I'm full of other things to do too. Anyway it's great having patches here to be tested and reviewed. Hope to find some time soon to test them.
On 3/7/22 09:34, Andre Przywara wrote: > The Allwinner F1C100 SoC didn't see much love since its initial merge in > 2018: the originally submitted .dts files were very basic, and didn't > cover such simple peripherals as MMC and SPI. > On top of that the watchdog compatible string was wrong, leading to a > non-functional watchdog and reset functionality. > > This series aims to fix that, after the series MMC and SPI work, and > make dtbs_check comes back clean. > This was tested with mounting a filesystem on /dev/mmcblk0 on a > LicheePi Nano, also with accessing the SPI flash through /dev/mtdblock > and mtd_debug. Reboot and watchdog now also work. > > Mainline U-Boot recently gained F1C100 support, and those DT updates are > needed there as well to get full MMC and SPI access. > > The series is structured as follows: > - Patches 01/14 and 02/14 fix the watchdog, which allows to properly > reboot the system. > - Patches 03-06 fix some shortcomings of the existing DT files, to make > them DT binding compliant. > - Patches 07-09 are Jesse's recent MMC patches, with the comments from > the last version addressed [1]. > - Patches 10-12 add SPI support, to enable access to the SPI flash on > the LicheePi Nano board. > - The final two patches (13/14 and 14/14) add the F1C100 platform to > the multi_v5_defconfig, since it was not covered by any other > defconfig before, and an ARMv5 compliant kernel is not commonly > offered by distributions. > > I saw George's series from two years ago to add USB support[2], that > looks good on the first glance, I will comment on that once I did some > testing on that. > > Cheers, > Andre > > Changelog for the MMC patches [1]: > - bindings doc: extend commit message > - .dtsi: extend commit message, re-order mmc0_pins node, add > drive-strength > - .dts: extend commit message, add alias, regulator and disable-wp > > [1] https://lore.kernel.org/linux-arm-kernel/20220130220325.1983918-1-Mr.Bossman075@gmail.com/ > [2] https://lore.kernel.org/linux-usb/20200331170219.267732-1-thirtythreeforty@gmail.com/ > > Andre Przywara (10): > dt-bindings: watchdog: sunxi: fix F1C100s compatible > ARM: dts: suniv: F1C100: fix watchdog compatible > dt-bindings: arm: sunxi: document LicheePi Nano name > ARM: dts: suniv: F1C100: fix CPU node > ARM: dts: suniv: F1C100: fix timer node > dt-bindings: spi: sunxi: document F1C100 controllers > ARM: dts: suniv: F1C100: add SPI support > ARM: dts: suniv: licheepi-nano: add SPI flash > ARM: configs: sync multi_v5_defconfig from savedefconfig > ARM: configs: multi_v5: Enable Allwinner F1C100 > > Jesse Taube (4): > ARM: dts: suniv: F1C100: add clock and reset macros > dt-bindings: mmc: sunxi: add Allwinner F1c100s compatible > ARM: dts: suniv: F1C100: add MMC controllers > ARM: dts: suniv: licheepi-nano: add microSD card > > .../devicetree/bindings/arm/sunxi.yaml | 5 + > .../bindings/mmc/allwinner,sun4i-a10-mmc.yaml | 3 + > .../bindings/spi/allwinner,sun6i-a31-spi.yaml | 1 + > .../watchdog/allwinner,sun4i-a10-wdt.yaml | 2 +- > .../boot/dts/suniv-f1c100s-licheepi-nano.dts | 31 ++++++ > arch/arm/boot/dts/suniv-f1c100s.dtsi | 102 ++++++++++++++++-- > arch/arm/configs/multi_v5_defconfig | 25 ++--- > 7 files changed, 140 insertions(+), 29 deletions(-) > It boots fine and SPI flash and MMC are found. Time keeping also works. I didn't use the multi_v5_defconfig though.