All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: Simon Glass <sjg@chromium.org>
Cc: kettenis@openbsd.org, u-boot@lists.denx.de,
	oliver.graute@kococonnector.com, michael@walle.cc,
	anup.patel@wdc.com, jbalkind@ucsb.edu, tianrui-wei@outlook.com,
	padmarao.begari@microchip.com, kishon@ti.com,
	stephan@gerhold.net, xypron.glpk@gmx.de, bin.meng@windriver.com,
	ashe@kivikakk.ee, michal.simek@xilinx.com, wasim.khan@nxp.com,
	ye.li@nxp.com, igor.opaniuk@foundries.io, sr@denx.de,
	mk7.kang@samsung.com, takahiro.akashi@linaro.org,
	weijie.gao@mediatek.com, vabhav.sharma@nxp.com,
	andriy.shevchenko@linux.intel.com, p.yadav@ti.com
Subject: Re: [PATCH 0/5] Apple M1 Support
Date: Sat, 25 Sep 2021 10:11:23 +0200 (CEST)	[thread overview]
Message-ID: <5614837a43225d79@bloch.sibelius.xs4all.nl> (raw)
In-Reply-To: <CAPnjgZ1ExzxcxvyCv_Tj-pA=zg7UOOQfxUivWLEDd3ss39hj+g@mail.gmail.com> (message from Simon Glass on Fri, 24 Sep 2021 19:20:32 -0600)

> From: Simon Glass <sjg@chromium.org>
> Date: Fri, 24 Sep 2021 19:20:32 -0600
> 
> Hi Mark,
> 
> On Sat, 18 Sept 2021 at 07:54, Mark Kettenis <kettenis@openbsd.org> wrote:
> >
> > 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
> 
> provide
> 
> > 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.
> >
> > Mark Kettenis (5):
> >   arm: apple: Add initial support for Apple's M1 SoC
> >   serial: s5p: Add Apple M1 support
> >   misc: Add Apple DART driver
> >   arm: dts: apple: Add preliminary device trees
> >   doc: board: apple: Add Apple M1 documentation
> >
> >  arch/arm/Kconfig                              |  22 +
> >  arch/arm/Makefile                             |   1 +
> >  arch/arm/dts/t8103-j274.dts                   | 135 +++++
> >  arch/arm/dts/t8103-j293.dts                   |  97 ++++
> >  arch/arm/dts/t8103.dtsi                       | 506 ++++++++++++++++++
> >  arch/arm/include/asm/arch-m1/clk.h            |  11 +
> >  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                   | 163 ++++++
> >  arch/arm/mach-apple/lowlevel_init.S           |  16 +
> >  configs/apple_m1_defconfig                    |  14 +
> >  doc/board/apple/index.rst                     |   9 +
> >  doc/board/apple/m1.rst                        |  54 ++
> >  doc/board/index.rst                           |   1 +
> >  drivers/misc/Kconfig                          |   7 +
> >  drivers/misc/Makefile                         |   1 +
> >  drivers/misc/apple_dart.c                     | 171 ++++++
> >  drivers/serial/Kconfig                        |   2 +-
> >  drivers/serial/serial_s5p.c                   |  22 +
> >  include/configs/apple.h                       |  38 ++
> >  .../interrupt-controller/apple-aic.h          |  15 +
> >  include/dt-bindings/pinctrl/apple.h           |  13 +
> >  include/dt-bindings/spmi/spmi.h               |  10 +
> >  24 files changed, 1370 insertions(+), 1 deletion(-)
> >  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/clk.h
> >  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/misc/apple_dart.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
> >
> > --
> > 2.33.0
> >
> 
> I gave this a whirl on a Macbook Air A2337 and needed the patch below
> to build the devicetree files. Sorry the formatting is broken.
> 
> Also when booting I get this:
> 
> ...
> Preparing to boot kernel at 0x808200000 with fdt at 0x8082e8000
> Valid payload found
> Preparing to run next stage at 0x808200000...
> MMU: shutting down...
> MMU: shutdown successful, clearing caches
> 
> 
> Then the display clears and it hangs. If I try the J274 devicetree it
> just reboots at that point.
> 
> What should I expect? I was hoping for console output as I don't have
> serial connected. I don't have a suitable serial cable, and the USB
> gadget mode did not result in a ttyACM0 device appearing.

For framebuffer support you also need the "30bpp framebuffer support"
series I posted earlier:

https://patchwork.ozlabs.org/project/uboot/list/?series=262617

With that your should get the usual U-Boot output on the screen.  I've
not tested the Air, but it should work there.

I'll probably post a v2 of that series this weekend as I fixed the EFI
GOP support with the help of Heinrich.  But that shouldn't matter for
U-Boot itself.

Regarding the device tree, I was afraid that setting
CONFIG_DEFAULT_DEVICE_TREE would make the distroboot commands try to
load a device tree from disk before loading the EFI bootloader, but it
looks I was mistaken there.  It still is a little bit pointless to
build the device tree and a u-boot.bin that includes it, but if that
makes you happier, I'll add it to the series.

Cheers,

Mark

> Subject: [PATCH] Fix up devicetree
> 
> Get these building.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
>  arch/arm/dts/Makefile      |  2 ++
>  configs/apple_m1_defconfig | 11 +++++------
>  2 files changed, 7 insertions(+), 6 deletions(-)
> 
> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
> index fc16a57e60b..0c40947cc33 100644
> --- a/arch/arm/dts/Makefile
> +++ b/arch/arm/dts/Makefile
> @@ -1130,6 +1130,8 @@ dtb-$(CONFIG_TARGET_IMX8MM_CL_IOT_GATE) +=
> imx8mm-cl-iot-gate.dtb
> 
>  dtb-$(CONFIG_TARGET_EA_LPC3250DEVKITV2) += lpc3250-ea3250.dtb
> 
> +dtb-$(CONFIG_ARCH_APPLE) += t8103-j274.dtb t8103-j293.dtb
> +
>  targets += $(dtb-y)
> 
>  # Add any required device tree compiler flags here
> diff --git a/configs/apple_m1_defconfig b/configs/apple_m1_defconfig
> index a7ae15576bf..7712a0bac52 100644
> --- a/configs/apple_m1_defconfig
> +++ b/configs/apple_m1_defconfig
> @@ -1,14 +1,13 @@
>  CONFIG_ARM=y
>  CONFIG_ARCH_APPLE=y
> +CONFIG_DEFAULT_DEVICE_TREE="t8103-j293"
> +CONFIG_USE_PREBOOT=y
>  # CONFIG_DISPLAY_CPUINFO is not set
> -# CONFIG_MMC is not set
> -# CONFIG_NET is not set
> -CONFIG_VIDEO_SIMPLE=y
>  CONFIG_DISPLAY_BOARDINFO_LATE=y
> +# CONFIG_NET is not set
> +# CONFIG_MMC is not set
>  CONFIG_USB_XHCI_HCD=y
>  CONFIG_USB_XHCI_DWC3=y
>  CONFIG_USB_KEYBOARD=y
> -CONFIG_USB_STORAGE=y
> -CONFIG_USE_PREBOOT=y
> -CONFIG_PREBOOT="usb start"
> +CONFIG_VIDEO_SIMPLE=y
>  # CONFIG_GENERATE_SMBIOS_TABLE is not set
> -- 
> 2.25.1
> 

  reply	other threads:[~2021-09-25  8:11 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-18 13:54 Mark Kettenis
2021-09-18 13:54 ` [PATCH 1/5] arm: apple: Add initial support for Apple's M1 SoC Mark Kettenis
2021-09-19  1:04   ` Bin Meng
2021-09-19  1:17     ` Bin Meng
2021-09-19 20:33       ` Mark Kettenis
2021-09-21 12:42         ` Tom Rini
2021-09-21 15:53           ` Bin Meng
2021-09-21 16:04             ` Tom Rini
2021-09-21 16:08             ` Mark Kettenis
2021-09-25 13:27               ` Simon Glass
2021-09-19 20:05     ` Mark Kettenis
2021-09-20  3:15   ` Simon Glass
2021-09-20  8:49     ` Mark Kettenis
2021-09-21  1:11       ` Simon Glass
2021-09-18 13:54 ` [PATCH 2/5] serial: s5p: Add Apple M1 support Mark Kettenis
2021-09-19  1:11   ` Bin Meng
2021-09-19 20:30     ` Mark Kettenis
2021-09-20  3:15   ` Simon Glass
2021-09-25 13:27     ` Simon Glass
2021-10-02 22:15     ` Mark Kettenis
2021-10-03  2:01       ` Simon Glass
2021-09-18 13:54 ` [PATCH 3/5] misc: Add Apple DART driver Mark Kettenis
2021-09-20  3:16   ` Simon Glass
2021-09-20  8:33     ` Mark Kettenis
2021-09-21  1:11       ` Simon Glass
2021-09-25 13:27         ` Simon Glass
2021-09-26 20:53         ` Mark Kettenis
2021-09-27 20:14           ` Simon Glass
2021-09-18 13:54 ` [PATCH 4/5] arm: dts: apple: Add preliminary device trees Mark Kettenis
2021-09-20  3:16   ` Simon Glass
2021-09-25 13:27     ` Simon Glass
2021-09-18 13:54 ` [PATCH 5/5] doc: board: apple: Add Apple M1 documentation Mark Kettenis
2021-09-19  1:22   ` Bin Meng
2021-09-20  3:16   ` Simon Glass
2021-09-25 13:27     ` Simon Glass
2021-09-20  8:45   ` Igor Opaniuk
2021-09-25  1:20 ` [PATCH 0/5] Apple M1 Support Simon Glass
2021-09-25  8:11   ` Mark Kettenis [this message]
2021-09-25 13:27     ` Simon Glass
2021-09-25 13:52       ` Mark Kettenis
2021-09-25 14:42         ` Simon Glass
2021-09-25 16:45           ` Mark Kettenis
2021-09-26 15:53             ` Simon Glass
2021-09-28  3:46               ` Simon Glass
2021-09-28  7:36                 ` Mark Kettenis
2021-09-28 12:07                   ` Simon Glass

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5614837a43225d79@bloch.sibelius.xs4all.nl \
    --to=mark.kettenis@xs4all.nl \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=anup.patel@wdc.com \
    --cc=ashe@kivikakk.ee \
    --cc=bin.meng@windriver.com \
    --cc=igor.opaniuk@foundries.io \
    --cc=jbalkind@ucsb.edu \
    --cc=kettenis@openbsd.org \
    --cc=kishon@ti.com \
    --cc=michael@walle.cc \
    --cc=michal.simek@xilinx.com \
    --cc=mk7.kang@samsung.com \
    --cc=oliver.graute@kococonnector.com \
    --cc=p.yadav@ti.com \
    --cc=padmarao.begari@microchip.com \
    --cc=sjg@chromium.org \
    --cc=sr@denx.de \
    --cc=stephan@gerhold.net \
    --cc=takahiro.akashi@linaro.org \
    --cc=tianrui-wei@outlook.com \
    --cc=u-boot@lists.denx.de \
    --cc=vabhav.sharma@nxp.com \
    --cc=wasim.khan@nxp.com \
    --cc=weijie.gao@mediatek.com \
    --cc=xypron.glpk@gmx.de \
    --cc=ye.li@nxp.com \
    --subject='Re: [PATCH 0/5] Apple M1 Support' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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.