History Cool LiteRunner-LX BIOS =============================== Known issues: - The Insyde BIOS does not implement the System Management BIOS (SMBIOS) specification, which includes the Desktop Management Interface (DMI). This makes some Linux versions disable ACPI, assuming the BIOS is from 1999 or older. A workaround is to give "acpi=force" as a kernel parameter on boot. - Windows thinks ISA devices at 0220 conflict with the mother board resources at 1220-122F. It is wrong. If anyone ever finds a way to tell Windows that I/O 0220-022F really is fine to use on ISA, please drop us a note! - The BIOS itself implements only USB 1.1 support for booting from USB drives and for legacy software relying on INT 13 calls like DOS. You will only get USB 2.0 speed once your OS has loaded its native EHCI driver. - If several USB drives are connected on boot, all of them will be available via the legacy INT13 interface, however only the first to be found can be booted from. So, if in doubt, the bootable USB drive should be connected to USB port 0. LRLX0013.BIN --JR 07/2010 ------------ - Made the "80-Conductor Cable Sense" Setup option less confusing by no longer talking about GPIO numbers. GPIO 05 is hardwired anyway, so just called it "Auto" and removed the useless "None" choice. - Dropped the Setup option for "Additional PCI Headers". Those have been deprecated long before the CLR-LX came out and only cause trouble if enabled. The proper way to access GPIO, MFGPT and SMB is via the CS5536's ISA bridge PCI header. - If all boot devices failed, the BIOS used to make a last attempt hoping for some external IDE controller. But this led to booting from (internal) IDE or USB even if the user had deliberately dropped them from the boot order. Now this last attempt is skipped in that case. - Enabled MDI/MDI-X so Etherboot/PXE will no longer care if a crossover cable is used. - Also Etherboot/PXE will try the other Ethernet port if no link is detected. LRLX0012.BIN --JR 12/2009 ------------ - Created a new Setup option allowing to disable the PS/2 mouse port. This will free up IRQ 12, e.g. for PC/104 (ISA) cards. - Disabling ACPI now makes IRQ 9 available. - Hoping to provoke less conflicts, moved DDMA I/O registers from 0x1300-137F to 0x1390-13FF and taught PnP ACPI to shrink it further if some channels are disabled. The problem is that Windows stubbornly assumes all ISA devices to decode only 10 bit addresses, so DMA was claimed to conflict with ISA cards at 0x300-37F. This is of course not the case as most current PC/104 devices decode full 16 bits and the ISA bridge per default doesn't forward accesses to 0x1300 anyway. By the way, did I mention ASL syntax is hell? - Also moved SPI from I/O 0x1200 to 0x1228, adjacent to Simple-I/O, for the same reason, to avoid imaginary conflicts with 0x200. - Before trying to boot from a device, made the BIOS look for some start code. - Extended the POST 9F/BF mem dump to show stuck address lines and added a second run with inverted patterns to test the other half of the data lines. LRLX0011.BIN skipped to keep version numbers parallel with Hurricane-LX. LRLX0010.BIN --JR 05/2009 ------------ - Reorganized and cleaned up all Setup menus. Looks much better now, should've done this a long time ago! - New feature: the watchdog can now be left armed on boot to get a seamlessly watchdog-protected boot process. The timeout can be configured up to 255 s. Over 6 weeks are technically possible, but I wanted to keep it simple. - Another novelty: a temperature limit can be set that, if exceeded, will trigger an OS-independent emergency shutoff. A power cycle will revive the board. - Also introduced an option for powering down the ethernet chips. If the two i82551 aren't touched by the OS, 0.9 W may be saved. - Further options allow waking the board from S1, S3 or even Soft Off with a PS/2 key press or PS/2 mouse doubleclick. To make this work, a solder jumper has to provide power to mouse and keyboard in states lower than S1. Also the OS must not disable/reset the devices before going to sleep. - Made it possible to boot from an IDE Slave hard drive by swapping the BIOS drive number with the Master. - Reconfigured the watchdog clock source to get reproducible and more accurate timeouts. - Fixed a BIOS hang if PCI INTs are set to IRQ14 and no IDE device is present. - PNPACPI reported nonsense about the LPT port, making recent Linux kernels disable it. Fixed it, and many other bugs I tripped over along the way: ASL syntax is hell! Appearently even AMD developers were having trouble with it. - Also rewrote parts of the LPT initialization, this should make EPP and ECP modes work properly now. - Fixed the PCI resource assignment code to handle PCMCIA aka CardBus bridges correctly. - Fixed an error that hampered PCI busmaster DMA into the on-board graphics framebuffer. Framegrabber and TV cards' hardware overlay mode works now. - Previously unused I/O range 0x0298-029B is now used for SIO PME registers. - Changed order of NVRAM integrity and failed POST counter checks. - Minor precautionary fixes for IDE code to avoid potential geometry issues. LRLX0009 to 02 skipped to get version numbers parallel with Hurricane-LX. LRLX0001.BIN --JR 09/2008 ------------ Initial CLR-LX BIOS, based on SRLX0002.BIN: - Adapted to CLR-LX hardware.