Skip to content

Latest commit

 

History

History
23 lines (19 loc) · 2.32 KB

source-map.md

File metadata and controls

23 lines (19 loc) · 2.32 KB

Upstream implementation map

The Linux SOF code is a hardware/protocol reference, not a Windows driver that can be compiled unchanged. The Linux-facing ALSA, ASoC, PCI, DMA, firmware, interrupt, and power-management calls need Windows equivalents.

Concern Linux reference Windows implementation target
Alder Lake-N PCI identity, firmware selection pci-tgl.c, pci_ids.h Narrow PnP INF match and KMDF PCI device
HDA capability register offsets and bit fields hda_register.h Read-only mapping of the HDA resource and fixed register snapshot
Controller initialization and DSP boot intel/hda.c, intel/hda-loader.c PCI resources, MMIO, interrupts, DMA, firmware loader
IPC3 protocol and transport ipc.c, ipc3.c Serialized command/reply transport with bounded timeouts
RT5682 topology and routing ADL machine table, sof_rt5682.c ACPI/I2C codec support and ACX circuits
Windows audio abstraction Microsoft ACX overview ACX playback/capture circuits and streams

The Linux Alder Lake-N descriptor selects sof-adl-n.ri and defaults to IPC3, though the controller supports IPC4 too. Firmware and topology versions must be matched to the protocol used by the Windows driver. The first probe must report the actual controller capabilities before DSP initialization is attempted.

Code copied from Linux files must retain attribution and comply with each file's SPDX license. Microsoft's WDK samples use MS-PL, so their source should be treated as design examples rather than copied into this GPL tree.