Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

soc: apple: mailbox: Add Apple A11 and T2 mailbox support

Add ASC mailbox support for Apple A11 and T2 SoCs, which is used for
coprocessors in the system.

Reviewed-by: Sven Peter <sven@kernel.org>
Signed-off-by: Nick Chan <towinchenmi@gmail.com>
Link: https://lore.kernel.org/r/20250821-t8015-nvme-v3-2-14a4178adf68@gmail.com
Signed-off-by: Sven Peter <sven@kernel.org>

authored by

Nick Chan and committed by
Sven Peter
fee2e558 32299eb0

+19
+19
drivers/soc/apple/mailbox.c
··· 47 47 #define APPLE_ASC_MBOX_I2A_RECV0 0x830 48 48 #define APPLE_ASC_MBOX_I2A_RECV1 0x838 49 49 50 + #define APPLE_T8015_MBOX_A2I_CONTROL 0x108 51 + #define APPLE_T8015_MBOX_I2A_CONTROL 0x10c 52 + 50 53 #define APPLE_M3_MBOX_CONTROL_FULL BIT(16) 51 54 #define APPLE_M3_MBOX_CONTROL_EMPTY BIT(17) 52 55 ··· 385 382 return 0; 386 383 } 387 384 385 + static const struct apple_mbox_hw apple_mbox_t8015_hw = { 386 + .control_full = APPLE_ASC_MBOX_CONTROL_FULL, 387 + .control_empty = APPLE_ASC_MBOX_CONTROL_EMPTY, 388 + 389 + .a2i_control = APPLE_T8015_MBOX_A2I_CONTROL, 390 + .a2i_send0 = APPLE_ASC_MBOX_A2I_SEND0, 391 + .a2i_send1 = APPLE_ASC_MBOX_A2I_SEND1, 392 + 393 + .i2a_control = APPLE_T8015_MBOX_I2A_CONTROL, 394 + .i2a_recv0 = APPLE_ASC_MBOX_I2A_RECV0, 395 + .i2a_recv1 = APPLE_ASC_MBOX_I2A_RECV1, 396 + 397 + .has_irq_controls = false, 398 + }; 399 + 388 400 static const struct apple_mbox_hw apple_mbox_asc_hw = { 389 401 .control_full = APPLE_ASC_MBOX_CONTROL_FULL, 390 402 .control_empty = APPLE_ASC_MBOX_CONTROL_EMPTY, ··· 436 418 437 419 static const struct of_device_id apple_mbox_of_match[] = { 438 420 { .compatible = "apple,asc-mailbox-v4", .data = &apple_mbox_asc_hw }, 421 + { .compatible = "apple,t8015-asc-mailbox", .data = &apple_mbox_t8015_hw }, 439 422 { .compatible = "apple,m3-mailbox-v2", .data = &apple_mbox_m3_hw }, 440 423 {} 441 424 };