Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
2e0ee64
input: apple: Split off report handling into a separate file
marcan Jul 30, 2022
7c631d3
arm: apple: rtkit: Add support for AP power & syslogs
marcan Aug 1, 2022
92e8fd4
arm: apple: rtkit: Add default buffer handlers
marcan Aug 1, 2022
6f3d4df
arm: apple: rtkit: Add a generic RTKit helper driver
marcan Aug 1, 2022
faf28c0
input: apple: Add support for Apple MTP keyboard
marcan Aug 1, 2022
a2f58b6
arm: apple: Add MTP keyboard options to defconfig
marcan Aug 2, 2022
2c3fdba
apple: Set up file system firmware loader
kettenis May 2, 2023
37c626a
iopoll: Add readb_poll_sleep_timeout
kettenis Apr 14, 2023
5226eea
usb: xhci-pci: Load ASMedia XHCI controller firmware
kettenis Apr 14, 2023
b2109c8
env: apple: Enable ENV_IS_IN_FAT
kettenis May 2, 2023
0346b3f
apple: Nail down the EFI system partition
kettenis May 2, 2023
cee6670
scripts/dtc: Add support for floating-point literals
kettenis Apr 14, 2023
40851ea
arm: dts: apple: Update Apple M1 device trees
kettenis Feb 19, 2022
514b2c0
arm: dts: apple: Add Apple M1 Pro/Max/Ultra device trees
kettenis Mar 1, 2022
c969c4e
arm: dts: apple: Add Apple M2 device trees
kettenis Jul 19, 2022
ec8e201
arm: dts: apple: Add Apple M2 Pro/Max device trees
kettenis May 6, 2023
15b8280
arm: apple: rtkit: Add OSLog buffer support
marcan Aug 2, 2023
b71530f
arm: apple: rtkit: Add endpoint field to buffers
marcan Aug 2, 2023
85c637a
arm: apple: rtkit: Support allocating OSLog out of SRAM in helper
marcan Aug 2, 2023
582f851
efi_loader: prefer EFI system partition
kettenis Apr 7, 2024
d2ec1db
smbios support
ktrinh-anduril Jan 5, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 19 additions & 1 deletion arch/arm/dts/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,29 @@ dtb-$(CONFIG_TARGET_A7Y17LTE) += exynos78x0-axy17lte.dtb
dtb-$(CONFIG_TARGET_E850_96) += exynos850-e850-96.dtb

dtb-$(CONFIG_ARCH_APPLE) += \
t6000-j314s.dtb \
t6000-j316s.dtb \
t6001-j314c.dtb \
t6001-j316c.dtb \
t6001-j375c.dtb \
t6002-j375d.dtb \
t6020-j414s.dtb \
t6020-j416s.dtb \
t6020-j474s.dtb \
t6021-j414c.dtb \
t6021-j416c.dtb \
t6021-j475c.dtb \
t6022-j180d.dtb \
t6022-j475d.dtb \
t8103-j274.dtb \
t8103-j293.dtb \
t8103-j313.dtb \
t8103-j456.dtb \
t8103-j457.dtb
t8103-j457.dtb \
t8112-j413.dtb \
t8112-j415.dtb \
t8112-j473.dtb \
t8112-j493.dtb

dtb-$(CONFIG_ARCH_DAVINCI) += \
da850-evm.dtb \
Expand Down
47 changes: 47 additions & 0 deletions arch/arm/dts/isp-common.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* Common ISP configuration for Apple silicon platforms.
*
* Copyright The Asahi Linux Contributors
*/

/ {
aliases {
isp = &isp;
};

reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;

isp_heap: isp-heap {
compatible = "apple,asc-mem";
/* Filled in by bootloder */
reg = <0 0 0 0>;
no-map;
};
};
};

&isp {
memory-region = <&isp_heap>;
memory-region-names = "heap";
status = "okay";
};

&isp_dart0 {
status = "okay";
};

&isp_dart1 {
status = "okay";
};

&isp_dart2 {
status = "okay";
};

&ps_isp_sys {
status = "okay";
};
57 changes: 57 additions & 0 deletions arch/arm/dts/isp-imx248.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* ISP configuration for platforms with IMX248 sensor.
*
* Copyright The Asahi Linux Contributors
*/

#include "isp-common.dtsi"

&isp {
apple,temporal-filter = <0>;

sensor-presets {
/* 1280x720 */
preset0 {
apple,config-index = <0>;
apple,input-size = <1296 736>;
apple,output-size = <1280 720>;
apple,crop = <8 8 1280 720>;
};
/* 960x720 (4:3) */
preset1 {
apple,config-index = <0>;
apple,input-size = <1296 736>;
apple,output-size = <960 720>;
apple,crop = <168 8 960 720>;
};
/* 960x540 (16:9) */
preset2 {
apple,config-index = <0>;
apple,input-size = <1296 736>;
apple,output-size = <960 540>;
apple,crop = <8 8 1280 720>;
};
/* 640x480 (4:3) */
preset3 {
apple,config-index = <0>;
apple,input-size = <1296 736>;
apple,output-size = <640 480>;
apple,crop = <168 8 960 720>;
};
/* 640x360 (16:9) */
preset4 {
apple,config-index = <0>;
apple,input-size = <1296 736>;
apple,output-size = <640 360>;
apple,crop = <8 8 1280 720>;
};
/* 320x180 (16:9) */
preset5 {
apple,config-index = <0>;
apple,input-size = <1296 736>;
apple,output-size = <320 180>;
apple,crop = <8 8 1280 720>;
};
};
};
71 changes: 71 additions & 0 deletions arch/arm/dts/isp-imx364.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* ISP configuration for platforms with IMX364 sensor.
*
* Copyright The Asahi Linux Contributors
*/

#include "isp-common.dtsi"

&isp {
apple,temporal-filter = <0>;

sensor-presets {
/* 1920x1080 */
preset0 {
apple,config-index = <0>;
apple,input-size = <1920 1080>;
apple,output-size = <1920 1080>;
apple,crop = <0 0 1920 1080>;
};
/* 1440x720 (4:3) */
preset1 {
apple,config-index = <0>;
apple,input-size = <1920 1080>;
apple,output-size = <1440 1080>;
apple,crop = <240 0 1440 1080>;
};
/* 1280x720 (16:9) */
preset2 {
apple,config-index = <0>;
apple,input-size = <1920 1080>;
apple,output-size = <1280 720>;
apple,crop = <0 0 1920 1080>;
};
/* 960x720 (4:3) */
preset3{
apple,config-index = <0>;
apple,input-size = <1920 1080>;
apple,output-size = <960 720>;
apple,crop = <240 0 1440 1080>;
};
/* 960x540 (16:9) */
preset4 {
apple,config-index = <0>;
apple,input-size = <1920 1080>;
apple,output-size = <960 540>;
apple,crop = <0 0 1920 1080>;
};
/* 640x480 (4:3) */
preset5 {
apple,config-index = <0>;
apple,input-size = <1920 1080>;
apple,output-size = <640 480>;
apple,crop = <240 0 1440 1080>;
};
/* 640x360 (16:9) */
preset6 {
apple,config-index = <0>;
apple,input-size = <1920 1080>;
apple,output-size = <640 360>;
apple,crop = <0 0 1920 1080>;
};
/* 320x180 (16:9) */
preset7 {
apple,config-index = <0>;
apple,input-size = <1920 1080>;
apple,output-size = <320 180>;
apple,crop = <0 0 1920 1080>;
};
};
};
92 changes: 92 additions & 0 deletions arch/arm/dts/isp-imx558-cfg0.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* ISP configuration for platforms with IMX558 sensor in
* config #0 mode.
*
* These platforms enable MLVNR for all configs except
* #0, which we don't support. Config #0 is an uncropped
* square 1920x1920 sensor, with dark corners.
* Therefore, we synthesize common resolutions by using
* crop/scale while always choosing config #0.
*
* Copyright The Asahi Linux Contributors
*/

#include "isp-common.dtsi"

&isp {
apple,temporal-filter = <0>;

sensor-presets {
/* 1920x1080 */
preset0 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <1920 1080>;
apple,crop = <0 420 1920 1080>;
};
/* 1080x1920 */
preset1 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <1080 1920>;
apple,crop = <420 0 1080 1920>;
};
/* 1920x1440 */
preset2 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <1920 1440>;
apple,crop = <0 240 1920 1440>;
};
/* 1440x1920 */
preset3 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <1440 1920>;
apple,crop = <240 0 1440 1920>;
};
/* 1280x720 */
preset4 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <1280 720>;
apple,crop = <0 420 1920 1080>;
};
/* 720x1280 */
preset5 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <720 1280>;
apple,crop = <420 0 1080 1920>;
};
/* 1280x960 */
preset6 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <1280 960>;
apple,crop = <0 240 1920 1440>;
};
/* 960x1280 */
preset7 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <960 1280>;
apple,crop = <240 0 1440 1920>;
};
/* 640x480 */
preset8 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <640 480>;
apple,crop = <0 240 1920 1440>;
};
/* 480x640 */
preset9 {
apple,config-index = <0>;
apple,input-size = <1920 1920>;
apple,output-size = <480 640>;
apple,crop = <240 0 1440 1920>;
};
};
};
92 changes: 92 additions & 0 deletions arch/arm/dts/isp-imx558.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* ISP configuration for platforms with IMX558 sensor.
*
* Copyright The Asahi Linux Contributors
*/

#include "isp-common.dtsi"

&isp {
apple,temporal-filter = <0>;

sensor-presets {
/* 1920x1080 */
preset0 {
apple,config-index = <1>;
apple,input-size = <1920 1080>;
apple,output-size = <1920 1080>;
apple,crop = <0 0 1920 1080>;
};
/* 1080x1920 */
preset1 {
apple,config-index = <2>;
apple,input-size = <1080 1920>;
apple,output-size = <1080 1920>;
apple,crop = <0 0 1080 1920>;
};
/* 1760x1328 */
preset2 {
apple,config-index = <3>;
apple,input-size = <1760 1328>;
apple,output-size = <1760 1328>;
apple,crop = <0 0 1760 1328>;
};
/* 1328x1760 */
preset3 {
apple,config-index = <4>;
apple,input-size = <1328 1760>;
apple,output-size = < 1328 1760>;
apple,crop = <0 0 1328 1760>;
};
/* 1152x1152 */
preset4 {
apple,config-index = <5>;
apple,input-size = <1152 1152>;
apple,output-size = <1152 1152>;
apple,crop = <0 0 1152 1152>;
};
/* 1280x720 */
preset5 {
apple,config-index = <1>;
apple,input-size = <1920 1080>;
apple,output-size = <1280 720>;
apple,crop = <0 0 1920 1080>;
};
/* 720x1280 */
preset6 {
apple,config-index = <2>;
apple,input-size = <1080 1920>;
apple,output-size = <720 1280>;
apple,crop = <0 0 1080 1920>;
};
/* 1280x960 */
preset7 {
apple,config-index = <3>;
apple,input-size = <1760 1328>;
apple,output-size = <1280 960>;
apple,crop = <0 4 1760 1320>;
};
/* 960x1280 */
preset8 {
apple,config-index = <4>;
apple,input-size = <1328 1760>;
apple,output-size = <960 1280>;
apple,crop = <4 0 1320 1760>;
};
/* 640x480 */
preset9 {
apple,config-index = <3>;
apple,input-size = <1760 1328>;
apple,output-size = <640 480>;
apple,crop = <0 4 1760 1320>;
};
/* 480x640 */
preset10 {
apple,config-index = <4>;
apple,input-size = <1328 1760>;
apple,output-size = <480 640>;
apple,crop = <4 0 1320 1760>;
};
};
};
Loading