dartfrog wrote on 2024-01-27, 06:08:
Yeah, That's why I mentioned those two AMD motherboards from asrock, livemixer and taichi. The cpu Zen (Ryzen) architecture has full LPC support on each die of the multi-die and the block diagram of both motherboards show the SuperIO NCT6686D connected by an LPC bus through a F85227N eSPI to LPC bridge which is directly connected to the cpu socket via eSPI. That's why I figured full ISA compatibility could be achieved because everything in the chain claims to support the full LPC spec.
The thing is though, since the eSPI to LPC bridge chip is communicating with the processor directly via eSPI not LPC. The bridge chip is only talking to the SuperIO NCT6686D via LPC. So I guess my question is, why would the processor itself, need to support LPC? The bridge chip is handling the LPC to eSPI translation and the bridge chip specifically states that's what this chip is for, to enable full LPC spec on cpus that only support eSPI. Maybe I'm missing something obvious?
I suppose F85227N is the same as ECE1200, not trying to actively emulate anything. Can't be 100% sure without its datasheet, however.
From what I could find online, LPC is dropped since Raphael (AM5) and Genoa (SP5). They can still be found in AM4/SP4, and in AMD's case, LPC and eSPI are separate.
dartfrog wrote on 2024-01-27, 06:08:
Also side note, I found this gem from fintek.
Fintek F85526 wrote:F85526 PCI Express to ISA Bridge IC is necessary to be used for the new chipset system. The issue of the package size is critical for the layout requirement. So the F85526 is the optimal solution for the non-ISA chipset where the package will be the best chosen for economic solution and save the layout size. The two wire signal bus EEPROM interface is provided for the system implementation convenience. Some registers can be pre-programmed via the hardware pin settings to facilitate system initialization. The F85526 absolutely meets PCI Express base spec 1.1 and supports fully ISA interface. Provides multi-ISA compatible slots without buffering and supports ISA parallel IRQ transfer to serial IRQ by IRQ Serialier. It is completely PCIE to ISA bridge specialized chip.
Seems too good to be true, I thought PCIe couldn't be used for an ISA interface?
PCIe to ISA was already possible the ITE way using two chips, IT8892E (PCIe-to-PCI) and IT8888 (PCI-to-ISA), which can be found on industrial motherboards with (DMAless) ISA slot.
Just that PC/PCI for DMA was long gone starting with ICH6, and I don't recall any other chipset ever implemented it, so normally no ISA DMA this way.
But this F85526 you mentioned is interesting. Although being on the PCIe bus, it instead relies on LPC to handle DMA!
Fintek F85526 wrote:PCI Express base spec 1.1 compliant
Fully ISA bridge support except bus master (By conditions)
IS interface supports 8/16bit I/O […]
Show full quote
PCI Express base spec 1.1 compliant
Fully ISA bridge support except bus master (By conditions)
IS interface supports 8/16bit I/O R/W, memory R/W and DMA R/W (via LPC interface)
All software transparent
All ISA signals can be isolated
ISA parallel IRQ transfer to serial IRQ by IRQ Serialier
PCIE interrupt supports INTA mode (only for the own device/driver)
Supports multi-slots without buffering
Supports 14MHz output pins
Provide WDT function
Device parameters configurable via EEPROM (ESDA & ESCL interface)
3 sets of address decoder is supported
128pin LQFP package
(Emphasis added)
If this is really true then this chip would be the ultimate answer to the problems with existing ISA bridging methods:
- PCI(e)-ISA is less restrictive when it comes to I/O and IRQ compared to LPC-ISA, but the lack of PC/PCI takes away any possibility to use DMA this way.
- On modern chipsets that still feature a complete LPC bus, LPC DMA is the only way for ISA DMA to work, but accessing the LPC bus can be difficult if the board does not expose it via TPM*.
* Modern TPMs have already transitioned to SPI-based protocols from LPC, so on most chipsets, there's little need to keep LPC anymore now that there are eSPI-compatible SuperIOs.
I wonder if there's any datasheet about this F85526 somewhere...