Quote:
Quote:
we can do our own integration - a custom system management controller (like the one on the Efika) might work better for the MPC8610 than the PC-like one in the southbridge
What's that "custom system management controller" that the Efika has? You don't mean an internal feature of the MPC5200, do you.
No. The MPC5200B has a broken RTC module - while it counts time perfectly well, it has no outside line to a battery (coin cell or whatever) which means on power off, the RTC time resets. You can either supplement it with an external chip or you can reset the time on boot using NTP or so.
So, we have a little chip on the board that handles RTC function. It also has some flash memory (nvram) and handles functions such as the firmware "ac-back-behaviour" setting which allows the system to come back online when the power is cut. It also allows firing an alarm based on any RTC time, which means you can turn them all off by remote and have them come back on at 8:50am in the morning for all the employees if used as a thin client, saving energy etc. And it implements the 4-second power button switch off just like ATX specs suggest.
Quote:
I guess that's something that can't be handled within software, right?
It is - Linux does it for a lot of platforms - but it's complicated and entirely board-specific. This means every combination of forwarding, cascading, interrupt controllers which exist but are simply not active or used, has to be implemented specifically to act in a certain way in the OS.
Linux then presents a sanitized virtual interrupt number to the rest of the drivers, and deals with the internals of each chip through irq_chip etc. structures and drivers, one for each, one configuration for each board.
Alternatively given that the way Linux does it does not exist on a) Linux 2.4 and early Linux 2.6 versions and b) any other OS, Aura is there such that the complex configuration of the interrupt controller is hidden, and Linux gets an already-sanitized interrupt number and a view of ONE preconfigured, generic interrupt controller. The driver is about ~100 lines but on Linux 2.4, it is about ~25.