Linux 5.13-rc1发布,初步支持Apple M1芯片,


万众期待的Linux对Apple M1的支持终于有了一个初步的结果,最新发布的5.13-rc1开始初步支持M1。这一组patch主要来自Hector Martin:

Hector Martin “marcan”领导了一个叫做Asahi Linux的项目,专门用于对MAC提供Linux支持:

https://asahilinux.org/

根据cover-letter的描述

https://lore.kernel.org/lkml/20210402090542.131194-1-marcan@marcan.st/

这组patch主要完成了如下功能:

  • 带earlycon支持的UART (samsung-style) 串口驱动
  • Apple中断控制器,支持中断、中断亲和(affinity )和IPI (跨CPU中断)
  • SMP (通过标准spin-table来支持)
  • 基于simplefb的framebuffer驱动
  • Mac Mini的设备树

中断控制器,M1显然没有用GIC,所以除基本的外设外,体系架构相关的新增代码drivers/irqchip/irq-apple-aic.c成为这个patchset里面最大的一个patch,增加了864行代码。

目前这组patch可以实现Mac Mini启动到Framebuffer和串口控制台。当然,仍然任重道远。如果您需要尝试,可以根据文档:

https://github.com/AsahiLinux/docs/wiki/Developer-Quickstart

来进行尝试。

根据我们在芯片公司的工作经验,它目前的状态应该还是一个非常非常非常(重要的事情说三篇)早期的阶段,类似于我们拿到了一个FPGA,开始bring-up Linux了,会先启动一个串口、中断控制器或者可能一个基本的Framebuffer。也就是说,你不能指望这个阶段的Linux是真正可用的。

但是毕竟这个工作已经开始了,我们还是会继续期待。

本文转载自微信公众号「Linux阅码场」,可以通过以下二维码关注。转载本文请联系Linux阅码场公众号。

相关内容