All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/7] Apple M1 Support
@ 2021-10-11 16:40 Mark Kettenis
  2021-10-11 16:40 ` [PATCH v3 1/7] iommu: Add IOMMU uclass Mark Kettenis
                   ` (7 more replies)
  0 siblings, 8 replies; 16+ messages in thread
From: Mark Kettenis @ 2021-10-11 16:40 UTC (permalink / raw)
  To: u-boot; +Cc: sjg, bmeng.cn, Mark Kettenis

This series adds basic support for Apple's M1 SoC to U-Boot.
This builds a basic U-Boot that can be used as a payload
for the m1n1 boot loader being developed by the Asahi Linux
project.

The goal here is to privide an UEFI interface on these machines that
allows booting various open source OSes.  This initial series provides
support for the serial port, framebuffer and the USB 3.1 Type-C ports.
It can boot a support OS (e.g. OpenBSD/arm64) from a USB disk.

This version attempts to address most comments.  It doesn't add a
proper WDT/sysreset driver yet since I prefer to do that once the
device tree bindings for that have been ironed out.


ChangeLog:

v2: - Add IOMMU uclass and use it for the DART driver
    - Cut back DART driver to only support bypass mode
    - Rework the S5P serial support to use more DT stuff
    - Update preliminary device trees

v3: - Respin for CONFIG_SYS_LOAD_ADDR kconfig migration

Mark Kettenis (7):
  iommu: Add IOMMU uclass
  test: Add tests for IOMMU uclass
  arm: apple: Add initial support for Apple's M1 SoC
  serial: s5p: Add Apple M1 support
  iommu: Add Apple DART driver
  arm: dts: apple: Add preliminary device trees
  doc: board: apple: Add Apple M1 documentation

 arch/arm/Kconfig                              |  23 +
 arch/arm/Makefile                             |   1 +
 arch/arm/dts/Makefile                         |   4 +
 arch/arm/dts/t8103-j274.dts                   | 135 +++++
 arch/arm/dts/t8103-j293.dts                   |  97 +++
 arch/arm/dts/t8103.dtsi                       | 560 ++++++++++++++++++
 arch/arm/include/asm/arch-m1/uart.h           |  41 ++
 arch/arm/mach-apple/Kconfig                   |  18 +
 arch/arm/mach-apple/Makefile                  |   4 +
 arch/arm/mach-apple/board.c                   | 161 +++++
 arch/arm/mach-apple/lowlevel_init.S           |  17 +
 arch/sandbox/dts/test.dts                     |   6 +
 configs/apple_m1_defconfig                    |  20 +
 configs/sandbox64_defconfig                   |   1 +
 configs/sandbox_defconfig                     |   1 +
 configs/sandbox_flattree_defconfig            |   1 +
 configs/sandbox_noinst_defconfig              |   1 +
 configs/sandbox_spl_defconfig                 |   1 +
 doc/board/apple/index.rst                     |   9 +
 doc/board/apple/m1.rst                        |  56 ++
 doc/board/index.rst                           |   1 +
 drivers/Kconfig                               |   2 +
 drivers/Makefile                              |   1 +
 drivers/core/device.c                         |   8 +
 drivers/iommu/Kconfig                         |  23 +
 drivers/iommu/Makefile                        |   6 +
 drivers/iommu/apple_dart.c                    |  59 ++
 drivers/iommu/iommu-uclass.c                  |  45 ++
 drivers/iommu/sandbox_iommu.c                 |  18 +
 drivers/serial/Kconfig                        |   4 +-
 drivers/serial/serial_s5p.c                   | 104 +++-
 include/configs/apple.h                       |  36 ++
 include/dm/uclass-id.h                        |   1 +
 .../interrupt-controller/apple-aic.h          |  15 +
 include/dt-bindings/pinctrl/apple.h           |  13 +
 include/dt-bindings/spmi/spmi.h               |  10 +
 include/iommu.h                               |  16 +
 test/dm/Makefile                              |   1 +
 test/dm/iommu.c                               |  28 +
 39 files changed, 1524 insertions(+), 24 deletions(-)
 create mode 100644 arch/arm/dts/t8103-j274.dts
 create mode 100644 arch/arm/dts/t8103-j293.dts
 create mode 100644 arch/arm/dts/t8103.dtsi
 create mode 100644 arch/arm/include/asm/arch-m1/uart.h
 create mode 100644 arch/arm/mach-apple/Kconfig
 create mode 100644 arch/arm/mach-apple/Makefile
 create mode 100644 arch/arm/mach-apple/board.c
 create mode 100644 arch/arm/mach-apple/lowlevel_init.S
 create mode 100644 configs/apple_m1_defconfig
 create mode 100644 doc/board/apple/index.rst
 create mode 100644 doc/board/apple/m1.rst
 create mode 100644 drivers/iommu/Kconfig
 create mode 100644 drivers/iommu/Makefile
 create mode 100644 drivers/iommu/apple_dart.c
 create mode 100644 drivers/iommu/iommu-uclass.c
 create mode 100644 drivers/iommu/sandbox_iommu.c
 create mode 100644 include/configs/apple.h
 create mode 100644 include/dt-bindings/interrupt-controller/apple-aic.h
 create mode 100644 include/dt-bindings/pinctrl/apple.h
 create mode 100644 include/dt-bindings/spmi/spmi.h
 create mode 100644 include/iommu.h
 create mode 100644 test/dm/iommu.c

-- 
2.33.0


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2021-10-14 22:35 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-11 16:40 [PATCH v3 0/7] Apple M1 Support Mark Kettenis
2021-10-11 16:40 ` [PATCH v3 1/7] iommu: Add IOMMU uclass Mark Kettenis
2021-10-11 16:40 ` [PATCH v3 2/7] test: Add tests for " Mark Kettenis
2021-10-11 16:40 ` [PATCH v3 3/7] arm: apple: Add initial support for Apple's M1 SoC Mark Kettenis
2021-10-11 16:40 ` [PATCH v3 4/7] serial: s5p: Add Apple M1 support Mark Kettenis
2021-10-11 16:40 ` [PATCH v3 5/7] iommu: Add Apple DART driver Mark Kettenis
2021-10-11 16:40 ` [PATCH v3 6/7] arm: dts: apple: Add preliminary device trees Mark Kettenis
2021-10-11 16:40 ` [PATCH v3 7/7] doc: board: apple: Add Apple M1 documentation Mark Kettenis
2021-10-11 17:01   ` Simon Glass
2021-10-14 20:09     ` Mark Kettenis
2021-10-14 20:43       ` Simon Glass
2021-10-14 22:34         ` François Ozog
2021-10-11 19:10   ` Simon Glass
2021-10-14 20:15     ` Mark Kettenis
2021-10-14 20:43       ` Simon Glass
2021-10-11 19:10 ` [PATCH v3 0/7] Apple M1 Support Simon Glass

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.