On 04/03/12 07:37, Jonathan Nieder wrote:
> Thanks.  Does v0.98d, v0.99g, or v0.99 work, too?  (The changelog
> entry "Setup: change HDD slave to V (avoid accidental change)" sounds
> vaguely promising.)

I didn't test each intervening version. I have since reinstalled the
machine into its remote location. I will test it again when I get
physical access to it (if the BIOS updater allows downgrades).

I'm also attaching the Alix BIOS changelog referenced in the last post
for completeness.

Jon
How to upgrade the BIOS
-----------------------

1. Use a CF card that boots FreeDOS or similar.

Copy sb.com and alix*.bin to the CF card. Execute sb.com, this will
automatically select the right file and upgrade flash. DO NOT RENAME FILES.

Please see www.pcengines.ch/freedos.htm for details on how to prepare
a bootable FreeDOS CF card.

2. Serial port upgrade

Enter BIOS setup by pressing S during memory test. Then press X to start
transfer, and start a X-Modem 1K (CRC) upload / send in your communication
program. For alix.2* send alix2.upd, for alix.3* send alix3.upd.

Please note that all BIOS setup options are reset to default by the upgrade.

ALIX tinyBIOS revision history
------------------------------

v0.99h  pd 081105       Enable banked extensions for CS5536 UARTs.

v0.99g  pd 081002       Add support for ALIX.4 board.

v0.99f  pd 080919       Experimental: swap INTD and USB interrupt assignment
                        to avoid Mikrotik conflict between USB and non-existent
                        secondary IDE...
                        
                        Experimental: enable HD_EDD, fix drive geometry report.

v0.99e  pd 080907       Correct COM2 port setup to I/O 02F8.

v0.99d  pd 080618       Enable CS5536 COM2 port for ALIX.6B and ALIX.2D
                        boards.

v0.99c  pd 080222       USB gang power control to enable higher power USB
                        modification.

v0.99b  pd 080111       Add PCI table entry for Commell MP-541
                        dual LAN miniPCI card.

v0.99   pd 071210       Setup: changed description from Etherboot to PXE boot

v0.98j  pd 071206       Setup: add late PCI init option to support
                        FPGA based miniPCI cards that take a long time
                        to wake up... (symptom: no interrupt assigned)

v0.98h  pd 071203       Change to BIOS controlled PXE module

v0.98g  pd 071126       Fix CS5536 serial port flow control

v0.98f  pd 071126       Disable audio section

v0.98e  pd 071125       Serial console: allow Int 14 init to disable interrupt.
                        Setup: add UDMA option

v0.98d  pd 071115       Setup: change HDD slave to V (avoid accidental change)
                        Setup: add MFGPT workaround option

v0.98c  pd 071113       Alternate version without MFGPT reset

v0.98b  pd 071101       Fix UART initialization

v0.98   pd 071031       Skip DLL status check

v0.97   pd 071026       Back to 400 MHz DRAM clock for ALIX.3*2

v0.96   pd 071025       Always do HDD wait if enabled

v0.95   pd 071024       Use 333 MHz DRAM clock for ALIX.3*2

v0.94   pd 071023       Force MFGPT timer reset (undocumented MSR 5140002B per
                        workaround in AMD Linux driver)

                        Fixed a bug in PCI BIOS find device function
        
                        Auto detect DRAM clock to set correct refresh interval

v0.93   pd 071021       Add port 92 reset support
        
                        Setup: add 19200 baud option

v0.92   pd 071003       Add HDD wait option, adds some delay to allow
                        detection of conventional HDDs.
        
                        Disable CS5536 diverse device power management
                        to avoid MFGPT / interrupt issues.
        
                        MFGPT issues: please observe AMD CS5536 data book
                        section 5.16.3, incorrect initialization sequence
                        will HANG the system.

v0.90   pd 070925       Remap audio and USB interrupts to offload regular
                        PCI interrupts.
        
                        IRQ7 is no longer directed to the LPC bus, used
                        as a default interrupt for MFGPT high resolution timer.
        
                        Implement BIOS setup. Press S during memory test
                        to enter.
        
                        Add UMB (upper memory block) support.

ALIX / tinyBIOS quirks
----------------------

A20 gate

        A20 gate is always "open", prefer performance over support for
        broken legacy code.
        
HDD master / slave

        To reduce boot time, slave drives are not detected by default.
        Change the option in setup if required.
        
HDD wait

        Hard disk drives need more time to wake up, enable HDD wait in
        setup if necessary.
        
LPT IRQ

        IRQ7 is intentionally unmapped to allow use for MFGPT high speed
        timer.

PXE boot

        Use setup to enable, or press N during memory test to select
        network boot for this startup only.
        
Reboot

        Best method to reboot ALIX.2 / ALIX.3 boards is to use either port 92
        or the dedicated reset registers in CS5536.

RTC wake-up

        One customer reported strange behavior on ALIX.1C, set wake-up
        time to 999999 if problems occur.
        
UMB
        
        To support UMB (upper memory block), unused shadow RAM between
        C000 and E000 is left read/writeable.

Open issues
-----------

HDD support

        tinyBIOS does not include large HDD support (> about 40 GB) yet.
        
PCI boot ROMs

        Not handled correctly by tinyBIOS.

PCI bridges

        tinyBIOS bridge support is questionable, if in doubt send PCI dump +
        maybe sample hardware to PC Engines.

VGA

        ALIX.1C tinyBIOS does not support video. Use Award BIOS for this.
        
Flash layout for ALIX                                           pd 070921
---------------------

The layout is controlled by the batch files used to build the BIOS,
for example lx3.bat.

00000 - 0FFFF   Config block (only first few bytes used, but the flash device
                has 64KB erase blocks)

10000 - 3FFFF   unused

40000 - 47FFF   unused / video BIOS (future use)

48000 - 5FFFF   unused

60000 - 6FFFF   PXE BIOS

70000 - 77FFF   SMI module

78000 - 78FFF   unused, space for runtime copy of config block

79000 - 7FFFF   tinyBIOS core

Memory layout for ALIX
----------------------

00000 - 9FFFF   RW      base 640K RAM

A0000 - BFFFF   -       unused / VGA memory

C0000 - C7FFF   RO      unused / video BIOS

C8000 - DFFFF   -       unused

E0000 - EFFFF   RW      PXE BIOS

F0000 - F7FFF   RW      SMI module

F8000 - F8FFF   RO      runtime copy of config block

F9000 - FFFFF   RO      tinyBIOS core

PCI Interrupt map
-----------------

Please note that ALIX.2A / ALIX.3A boards have a different mapping, please
ask for specific BIOS images for these boards.

PCI dev AD line Int map         Description

00      ..      -               unused

08      AD11    INTA            Geode LX host bridge (crypto)

10..30  12..16  -               unused

38      AD17    INTB            miniPCI1 secondary device (Commell hack)

40      AD18    -               unused

48      AD19    INTB            LAN1 (right)

50      AD20    INTC            LAN2 (middle)

58      AD21    INTD            LAN3 (left)

60      AD22    INTA, INTB      miniPCI 1

68      AD23    -               unused

70      AD24    INTC, INTD      miniPCI2

78      AD25    INTA .. INTD    Geode CS5536

80..F8  ..      -               unused

Interrupt map
-------------

IRQ0    timer
IRQ1    KBD (LPC)
IRQ2    cascade
IRQ3    COM2 serial (LPC)
IRQ4    COM1 serial (internal / LPC)
IRQ5    audio (CS5536)
IRQ6    FDC (LPC)
IRQ7    spare, used for MFGPT high resolution timer

IRQ8    RTC
IRQ9    PCI INTA
IRQ10   PCI INTB
IRQ11   PCI INTC
IRQ12   USB (CS5536)
IRQ13   floating point
IRQ14   IDE HDD
IRQ15   PCI INTD

Reply via email to