[PATCH 0/11] ARM: at91: Add pbl support to skov-arm9cpu

Sam Ravnborg sam at ravnborg.org
Tue Jun 28 13:38:38 PDT 2022

The following is the current set of patches so far to support
PBL for the skov-arm9cpu.

The pwm is not really part of this - but it is part of the story.
The patch-set was triggered when someone reported a bug in the 
atmel pwm code. The code did not build - so I ported it over.
Now I wanted to boot the target, but at91bootstrap no longer
supports the at91sam9263. So I decided to try to make it work
in barebox. I have tried this before and failed - but it should
be possible...

What I have made is modelled on top of all the great work
for other more modern atmel bouards.

 - The first stage bootloader works - thanks to feedback from Ahmad!
 - Add support for non-high capacity SD cards, as required by at91sam9 (Ahmad)
 - Replace hardcoded delay loops with pit based early delays (Ahmad)
 - Several adjustments to skov-arm9cpu code to fit the changes

The following patches are not ready:
- atmel_lcdfb: add support for updated DT bindings
- ARM: at91: Update DTS for skov-arm9cpu

They both rely on updated bindings that has not landed yet,
and which may end up not being compatible with the changes
implemented here.
So the patches works - but bindings are work-in-progress.

My plan is to resurrect my drm driver for at91sam9 and
with that the update the binding file. But timeline
for this work is unknowm.

In other words - I assume patch 1 to 8 + 10 as ready.
Patch 9 + 11 are WIP.


Sam Ravnborg (11):
      pwm: atmel: Fix build and update
      ARM: at91: Make sdramc.h useable in multi image builds
      ARM: at91: Add initialize function to sdramc
      ARM: at91: Provide at91_mux_pio_pin for use in lowlevel
      mci: atmel_mci: Add PBL helper to configure highcapacity
      ARM: at91: Add at91sam9 xload_mmc for PBL use
      ARM: at91: Add extra register definitions
      ARM: at91: Add lowlevel helpers for at91sam9263
      atmel_lcdfb: add support for updated DT bindings
      ARM: at91: Add xload support to skov-arm9cpu
      ARM: at91: Update DTS for skov-arm9cpu

 arch/arm/boards/skov-arm9cpu/board.c               |  17 +-
 arch/arm/boards/skov-arm9cpu/lowlevel.c            | 158 +++------
 arch/arm/dts/at91-skov-arm9cpu.dts                 | 107 +++---
 arch/arm/mach-at91/Kconfig                         |   4 +-
 arch/arm/mach-at91/Makefile                        |   4 +-
 arch/arm/mach-at91/at91sam9_sdramc_ll.c            |  71 ++++
 arch/arm/mach-at91/at91sam9_xload_mmc.c            | 118 +++++++
 arch/arm/mach-at91/include/mach/at91_pmc.h         |   2 +
 arch/arm/mach-at91/include/mach/at91sam9263.h      |  14 +
 .../mach-at91/include/mach/at91sam9263_matrix.h    |  23 +-
 arch/arm/mach-at91/include/mach/at91sam926x.h      |   2 +
 arch/arm/mach-at91/include/mach/at91sam9_sdramc.h  | 165 ++++++---
 arch/arm/mach-at91/include/mach/gpio.h             |  25 ++
 arch/arm/mach-at91/include/mach/sam92_ll.h         |  54 +++
 arch/arm/mach-at91/include/mach/xload.h            |   5 +
 arch/arm/mach-at91/sam9263_ll.c                    | 215 ++++++++++++
 drivers/mci/atmel_mci_pbl.c                        |   5 +
 drivers/pwm/pwm-atmel.c                            | 383 +++++++++++++++------
 drivers/video/atmel_lcdfb.c                        |   6 +
 drivers/video/atmel_lcdfb.h                        |   4 +
 drivers/video/atmel_lcdfb_core.c                   | 125 +++++--
 images/Makefile.at91                               |   6 +-
 22 files changed, 1167 insertions(+), 346 deletions(-)

More information about the barebox mailing list