Skip to content

[micas]: Fix Micas platform modules for Trixie (kernel 6.12)#25858

Open
sspeedy99 wants to merge 4 commits intosonic-net:masterfrom
sspeedy99:fix/micas-platform-in-trixie
Open

[micas]: Fix Micas platform modules for Trixie (kernel 6.12)#25858
sspeedy99 wants to merge 4 commits intosonic-net:masterfrom
sspeedy99:fix/micas-platform-in-trixie

Conversation

@sspeedy99
Copy link

Why I did it

The Micas platform modules (platform-modules-micas) fail to build on Trixie (Debian 13 / kernel 6.12) due to kernel API changes in SPI, watchdog timer, GPIO, I2C mux, FPGA, PCIe, and PMBus subsystems. This PR updates all affected kernel modules and build rules to restore Micas platform support on the Trixie base image.

Reference: saiarcot895/sonic-buildimage@6bb0089 (similar Trixie kernel compat changes for Accton, Alpha Networks, and Dell platforms)

Fixes: #23950

Work item tracking

  • Microsoft ADO: (number only)

How I did it

  1. Enabled Micas platform build in Broadcom rules.mk and rules.dep.
  2. Updated debian/rules build targets for kernel 6.12 module build compatibility.
  3. Fixed kernel 6.12 API compatibility across 50 kernel module source files:
    • timer_setup() / from_timer() API changes
    • class_create() single-argument form (removed THIS_MODULE parameter)
    • i2c_probe() callback signature changes (removed i2c_device_id parameter)
    • SPI driver probe() signature updates
    • Watchdog timer API updates (watchdog_info struct changes)
    • GPIO subsystem API updates
    • PMBus driver registration changes
    • Covers common modules and all per-platform device drivers (m2-w6510, m2-w6520, m2-w6920, m2-w6930, m2-w6940 series)

How to verify it

  1. Build the Broadcom image with Micas platform enabled:
    make init
    make configure PLATFORM=broadcom
    make target/sonic-broadcom.bin

  2. Verify Micas platform .deb packages are produced:
    ls -lh target/debs/trixie/platform-modules-micas*.deb

  3. Install on Micas switch hardware (M2-W6510-48V8C tested).

  4. Verify platform detection: Run show version and show platform summary.

  5. Verify all containers running: Run docker ps.

  6. Verify Micas package installed: Run dpkg -l | grep micas.

Build evidence (master — image version: SONiC.master.0-dirty-20260225.172359) **Build completed successfully:** Success: Demo install image is ready in target/sonic-broadcom-dnx.bin: -rw-r--r-- 1 build gbuild 1050707951 Feb 25 18:42 target/sonic-broadcom-dnx.bin Build end time: Wed Feb 25 18:42:16 UTC 2026 **Image produced:** -rwxr-xr-x 1 build build 1021M Feb 25 18:36 sonic-broadcom.bin **All 9 Micas platform Debian packages produced:** target/debs/trixie/platform-modules-micas-m2-w6510-32c_1.0_amd64.deb 4.5M target/debs/trixie/platform-modules-micas-m2-w6510-48gt4v_1.0_amd64.deb 4.4M target/debs/trixie/platform-modules-micas-m2-w6510-48v8c_1.0_amd64.deb 4.5M target/debs/trixie/platform-modules-micas-m2-w6520-24dc8qc_1.0_amd64.deb 4.6M target/debs/trixie/platform-modules-micas-m2-w6520-48c8qc_1.0_amd64.deb 4.6M target/debs/trixie/platform-modules-micas-m2-w6920-32qc2x_1.0_amd64.deb 4.7M target/debs/trixie/platform-modules-micas-m2-w6930-64qc_1.0_amd64.deb 5.3M target/debs/trixie/platform-modules-micas-m2-w6940-128qc_1.0_amd64.deb 4.4M target/debs/trixie/platform-modules-micas-m2-w6940-64oc_1.0_amd64.deb 4.9M **Platform detection:** admin@sw03:~$ show version SONiC Software Version: SONiC.master.0-dirty-20260225.172359 SONiC OS Version: 13 Distribution: Debian 13.3 Kernel: 6.12.41+deb13-sonic-amd64 Build commit: 3d68237 Build date: Wed Feb 25 18:30:51 UTC 2026 Built by: build@cf-sonic-build Platform: x86_64-micas_m2-w6510-48v8c-r0 HwSKU: M2-W6510-48V8C ASIC: broadcom ASIC Count: 1 Serial Number: G1SC0UU000295 Model Number: 01018905 Hardware Revision: 100 Uptime: 08:27:17 up 2 days, 7 min admin@sw03:~$ show platform summary Platform: x86_64-micas_m2-w6510-48v8c-r0 HwSKU: M2-W6510-48V8C ASIC: broadcom ASIC Count: 1 Serial Number: G1SC0UU000295 Model Number: 01018905 Hardware Revision: 100 **Container health (all Up 2 days):** admin@sw03:~$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS NAMES 7861a6d76c6f docker-syncd-brcm:latest "..." 2 days ago Up 2 days syncd d81f3f8f8ee4 docker-orchagent:latest "..." 2 days ago Up 2 days swss 6a8834e78789 docker-platform-monitor:latest "..." 2 days ago Up 2 days pmon e4f7f16a563f docker-fpm-frr:latest "..." 2 days ago Up 2 days bgp 4c360f6043e5 docker-teamd:latest "..." 2 days ago Up 2 days teamd 02dab56d3456 docker-database:latest "..." 2 days ago Up 2 days database 5e20173c080e docker-snmp:latest "..." 2 days ago Up 2 days snmp b5c247ab3710 docker-sonic-mgmt-framework:latest "..." 2 days ago Up 2 days mgmt-framework 47502385e6b4 docker-lldp:latest "..." 2 days ago Up 2 days lldp b8fe53f7e819 docker-sonic-gnmi:latest "..." 2 days ago Up 2 days gnmi 2e156b53b70c docker-eventd:latest "..." 2 days ago Up 2 days eventd eef14813a6cd docker-router-advertiser:latest "..." 2 days ago Up 2 days radv 6e363dce146b docker-sysmgr:latest "..." 2 days ago Up 2 days sysmgr **Micas package installed:** admin@sw03:~$ dpkg -l | grep micas ii platform-modules-micas-m2-w6510-48v8c 1.0 amd64 kernel modules for platform devices such as fan, led, sfp

Which release branch to backport

  • 202305
  • 202311
  • 202405
  • 202411
  • 202505
  • 202511 — Micas hardware targets the 202511 (Trixie/kernel 6.12) release

Tested branch

  • master (image version: SONiC.master.0-dirty-20260225.172359)
  • [ x] 202511

Description for the changelog
Fix Micas platform module build and kernel driver compatibility for Trixie (kernel 6.12)

Link to config_db schema for YANG module changes
N/A

A picture of a cute animal (not mandatory but encouraged)

Shashi Prakash and others added 4 commits February 28, 2026 14:47
Enable micas platform module build in broadcom platform rules.

Fixes sonic-net#23950

Signed-off-by: Shashi Prakash <sprakash@cloudflare.com>
Update micas debian/rules build targets for Trixie kernel 6.12
module build compatibility.

Fixes sonic-net#23950

Signed-off-by: Shashi Prakash <sprakash@cloudflare.com>
Update micas platform kernel modules for Trixie (kernel 6.12) API changes
in SPI, watchdog timer, GPIO, I2C mux, FPGA, PCIe, and PMBus subsystems.
Covers common modules and all per-platform device drivers (m2-w6510,
m2-w6520, m2-w6920, m2-w6930, m2-w6940 series).

Reference: saiarcot895/sonic-buildimage@6bb0089 (similar Trixie kernel compat changes
for Accton, Alpha Networks, and Dell platforms)

Fixes sonic-net#23950

Signed-off-by: Shashi Prakash <sprakash@cloudflare.com>
@sspeedy99 sspeedy99 requested a review from lguohan as a code owner March 3, 2026 13:54
@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@linux-foundation-easycla
Copy link

CLA Not Signed

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@robertlperry
Copy link

Hi @micas-net, please review. Thanks.

CC: @saiarcot895

@micas-net
Copy link
Contributor

Hi @micas-net, please review. Thanks.

CC: @saiarcot895

thanks, will review as soon as possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Trixie] Update platform-modules-micas for Trixie

4 participants