[PATCH v2 00/16] ARM: at91: microchip-kz9477-evb: support first stage boot

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



v1 is at <20190116174559.17416-1-a.fatoum@xxxxxxxxxxxxxx>.

I tried to strip down barebox, so the first stage can be device tree
based as well. It boots up to trying to load the first stage from MMC,
where it fails. As it's very annoying to debug when only having few bytes
to spare, I am not sure if it's worth it. Future barebox updates might
increase size and break it again, so the first stage is again non-device
tree, but OFDEVICE can be selected and the curious user (you?) can try
to get the size further down and fix the bootstrap failure.

This patch set applies on top of "ARM: at91: misc fixes and cleanup",
<20190116174559.17416-1-a.fatoum@xxxxxxxxxxxxxx>, which I sent out
earlier today.


Changes since v1:
- dropped removal of h32mx code, it was just touched by
  ARM: at91: microchip-kz9477-evb: support first stage boot and might
  be useful for future ports
- dropped removal of sama5d3_matrix.h, already mainline via
  f722f2a12 ("ARM: at91: delete unused mach/sama5d3_matrix.h")
- added commit with BSD-1-Clause license text
- split the migration to the at91bootstrap header for SDRAM defines
  into 3 separate commits for better comprehension as suggested by Sam
- arch-prefixed globally visible functions/defines
- copied over some helper functions from at91bootstrap for board init,
  or moved them to headers, so board code can look more like at91bootstrap
  board code
- moved some helper function into headers, so they can be used in
  multiple boards in future
- replaced all __raw_{read,write}T with {read,write}T
- added separate entry point for first stage, like am335x does
- added build-time size check for first stage
- renamed _first_stage suffix to _bootstrap, for symmetry with
  the other at91sam9261
- compressed the DTB
- added infrastructure for future device tree based first stage
- added documentation as suggested by Sam
- changed NAND partition layout in board code as suggested by Sascha
- stylistic fixes here and there


Ahmad Fatoum (16):
  LICENSES: add BSD-1-Clause license
  ARM: at91: import at91bootstrap's at91_ddrsdrc.h
  ARM: at91: migrate at91sam9_ddrsdr.h to use at91bootstrap's
    at91_ddrsdrc.h
  ARM: at91: replace at91sam9_ddrsdr.h with at91bootstrap's
    at91_ddrsdrc.h
  ARM: at91: watchdog: implement at91_wdt_disable
  ARM: at91: import lowlevel clock initialization from at91bootstrap
  ARM: at91: import early_udelay from at91bootstrap
  ARM: at91: import low level DDRAMC initialization code from
    at91bootstrap
  ARM: at91: import lowlevel dbgu UART init code from at91bootstrap
  images: at91: differentiate between first and second stage images
  ARM: at91: sama5: specify 0x10000 as first stage max size
  ARM: at91: microchip-ksz9477-evb: use compressed DTB
  ARM: dts: microchip-ksz9477-evb: add dummy first stage device tree
  ARM: at91: microchip-ksz9477-evb: implement first stage
  ARM: at91: microchip-ksz9477: provide board code fallback
  doc: microchip-ksz9477-evb: add documentation

 .../boards/at91/microchip-ksz9477-evb.rst     |  38 +-
 LICENSES/other/X11                            |  28 +
 LICENSES/preferred/BSD-1-Clause               |  15 +
 arch/arm/boards/at91sam9m10g45ek/lowlevel.c   |   2 +-
 arch/arm/boards/at91sam9m10ihd/lowlevel.c     |   2 +-
 arch/arm/boards/at91sam9n12ek/lowlevel.c      |   2 +-
 arch/arm/boards/at91sam9x5ek/lowlevel.c       |   2 +-
 .../arm/boards/microchip-ksz9477-evb/Makefile |   3 +
 arch/arm/boards/microchip-ksz9477-evb/board.c | 129 +++++
 .../boards/microchip-ksz9477-evb/lowlevel.c   | 199 ++++++-
 arch/arm/boards/pm9g45/lowlevel.c             |   3 +-
 arch/arm/boards/sama5d3_xplained/lowlevel.c   |   2 +-
 arch/arm/boards/sama5d3xek/lowlevel.c         |   2 +-
 arch/arm/boards/sama5d4_xplained/lowlevel.c   |   2 +-
 arch/arm/boards/sama5d4ek/lowlevel.c          |   2 +-
 ...rochip_ksz9477_evb_bootstrap_mmc_defconfig |  24 +
 arch/arm/dts/Makefile                         |   4 +-
 .../at91-microchip-ksz9477-evb-boot-bin.dts   |  13 +
 arch/arm/mach-at91/Kconfig                    |  23 +-
 arch/arm/mach-at91/Makefile                   |   3 +
 arch/arm/mach-at91/at91sam9g45_devices.c      |   2 +-
 arch/arm/mach-at91/at91sam9g45_reset.S        |   8 +-
 arch/arm/mach-at91/at91sam9n12_devices.c      |   2 +-
 arch/arm/mach-at91/at91sam9x5_devices.c       |   2 +-
 arch/arm/mach-at91/ddramc.c                   | 518 ++++++++++++++++++
 arch/arm/mach-at91/early_udelay.c             |  53 ++
 arch/arm/mach-at91/include/mach/at91_dbgu.h   |  57 +-
 .../arm/mach-at91/include/mach/at91_ddrsdrc.h | 390 +++++++++++++
 .../include/mach/at91_lowlevel_clock.h        |  52 ++
 arch/arm/mach-at91/include/mach/at91_pmc.h    |  24 +-
 arch/arm/mach-at91/include/mach/at91_wdt.h    |  16 +
 .../mach-at91/include/mach/at91sam9_ddrsdr.h  | 138 +----
 arch/arm/mach-at91/include/mach/ddramc.h      |  35 ++
 .../arm/mach-at91/include/mach/early_udelay.h |  13 +
 arch/arm/mach-at91/include/mach/sama5d3.h     |   1 +
 arch/arm/mach-at91/lowlevel_clock.c           | 174 ++++++
 arch/arm/mach-at91/sama5d3_devices.c          |   2 +-
 arch/arm/mach-at91/sama5d4_devices.c          |   2 +-
 images/Makefile.at91                          |  16 +-
 39 files changed, 1839 insertions(+), 164 deletions(-)
 create mode 100644 LICENSES/other/X11
 create mode 100644 LICENSES/preferred/BSD-1-Clause
 create mode 100644 arch/arm/boards/microchip-ksz9477-evb/board.c
 create mode 100644 arch/arm/configs/microchip_ksz9477_evb_bootstrap_mmc_defconfig
 create mode 100644 arch/arm/dts/at91-microchip-ksz9477-evb-boot-bin.dts
 create mode 100644 arch/arm/mach-at91/ddramc.c
 create mode 100644 arch/arm/mach-at91/early_udelay.c
 create mode 100644 arch/arm/mach-at91/include/mach/at91_ddrsdrc.h
 create mode 100644 arch/arm/mach-at91/include/mach/at91_lowlevel_clock.h
 create mode 100644 arch/arm/mach-at91/include/mach/ddramc.h
 create mode 100644 arch/arm/mach-at91/include/mach/early_udelay.h
 create mode 100644 arch/arm/mach-at91/lowlevel_clock.c

-- 
2.20.1


_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux