A bit of background: I work for Silicom USA and we have several platforms designed around Denverton-NS.  Prior to coming to Silicom I was a BIOS architect for Intel, being employed there for 19 years.  I was one of the original BIOS engineers for Denverton back when it was first released and ADI Engineering (which became Silicom USA) was a design partner.  We still have several customers that use Coreboot on our platforms.  When I came on board a year ago I noted that the version we were maintaining was fairly old.  Since that time the Intel SoC support has evolved and uses a lot of common code (yay!) but Denverton doesn ‘t seem to have kept up.  Not sure if the maintainers from Intel are still active or not, but I’m sending them an email to see. 

 

Over the past few weeks I’ve brought Denverton support up to date with the Intel SoC common codebase and will be submitting wholesale changes to the tree to do this.  Unfortunately, since the code sort of languished for so long, it’s not a task that’s easily broken up into smaller bits since much of the bits are intertwined across several functional blocks (GPIOs, PMC, ACPI, CPU, etc).   While the current in-tree version of Denverton support uses some SOC_INTEL_COMMON_BLOCK_XXXX bits, I’ve updated the support to use much more and wondering what might be the best way to submit the refactor for easier review.

 

List of supported common bits for Denverton:

SOC_INTEL_COMMON_BLOCK

SOC_INTEL_COMMON_BLOCK_CPU

SOC_INTEL_COMMON_BLOCK_CPU_MPINIT

SOC_INTEL_COMMON_BLOCK_SA

SOC_INTEL_COMMON_BLOCK_ACPI

SOC_INTEL_COMMON_PMC

SOC_INTEL_COMMON_BLOKC_PMC_DISCOVERABLE

SOC_INTEL_COMMON_BLOCK_ITSS

SOC_INTEL_COMMON_BLOCK_TIMER

SOC_INTEL_COMMON_BLOCK_P2SB

SOC_INTEL_COMMON_BLOCK_GPIO

SOC_INTEL_COMMON_BLOCK_ACPI_GPIO

SOC_INTEL_COMMON_BLOCK_SPI

SOC_INTEL_COMMON_BLOCK_FAST_SPI

SOC_INTEL_COMMON_BLOCK_PCR

SOC_INTEL_COMMON_BLOCK_LPC

SOC_INTEL_COMMON_BLOCK_SMBUS

SOC_INTEL_COMMON_BLOCK_TCO

SOC_INTEL_COMMON_BLOCK_TCO_ENABLE_THROUGH_SMBUS

SOC_INTEL_COMMON_BLOCK_PCIE

SOC_INTEL_COMMON_BLOCK_RTC

SOC_INTEL_COMMON_BLOCK_SMM

SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP

SOC_INTEL_OMMON_BLOCK_POWER_LIMIT