Xonar EEPROM Failure

From AlsaProject
Revision as of 09:56, 20 April 2009 by ClemensLadisch (Talk | contribs)

Jump to: navigation, search

Contents

Xonar EEPROM Failure

Sometimes, Xonar cards randomly fail to be recognized.

The driver refused to load or to install, and in Device Manager, the card is shown as an unknown sound card or as "C-Media Oxygen audio device". Putting the card into another slot or another computer does not help.

This happens when the EEPROM on the card gets overwritten.
(This EEPROM stores the PCI subsystem vendor and product IDs; when it gets overwritten, the main chip cannot read the subsystem IDs and uses a default ID (13F6:8788) which is not recognized by the Xonar driver.)

Causes

The exact cause is unknown.
It seems that the problem occurs only with certain computers or motherboards, and after booting from a CD (i.e., (re)installation of an operating system, or using a live CD).

This may be abug in the BIOS.

Affected systems:

Mainboard Chipset
Asus M3N-HT Deluxe nForce 780a SLI
Asus P5N-D nForce 750i SLI
Asus P5N-T Deluxe nForce 780i SLI
Asus Striker II Formula nForce 780i SLI
Dell Optiplex 755 Intel Q35  ?

All Asus systems use a Phoenix Award BIOS.

Restoring the EEPROM

I have written a tool that can restore the original contents of the EEPROM; there are versions for Linux and MS-DOS:

In Linux

  1. Boot Linux (either from hard drisk or from a live CD);
  2. download the package (oxygen_restore_eeprom.tar.gz) directly from Linux, or download it from Windows and copy it over with a USB stick;
  3. open a console;
  4. unpack the package:
    tar xvzf oxygen_restore_eeprom.tar.gz
    cd oxygen_restore_eeprom
  5. run the program, as root:
    • either run first su, then ./oxygen_restore_eeprom_32
    • or run sudo ./oxygen_restore_eeprom_32
  6. follow the instructions on the screen.

The package also contains a 64-bit version (oxygen_restore_eeprom_64) for the unlikely case that you're running a 64-bit-only Linux.

The program has been confirmed to work.

In DOS

If you have a working DOS, you can use this method. (This tool is run in the same way as Asus' xee01.bat.)

  1. Download restoree.exe;
  2. boot DOS;
    (MS-DOS or DR-DOS or FreeDOS; the DOS box of Windows or the DOS in an emulated computer (e.g. VMWare) will not work)
  3. run restoree.exe.

(source code: restoree.c)

Booting from a floppy

  1. Download this floppy image: floppy.img (1.44 MB);
  2. write it to a floppy with rawrite.exe (which you can get somewhere on the Internet);
  3. boot from the floppy.

Booting from a CD

  1. Download this ISO file: restore_eeprom.iso (1.8 MB);
  2. burn it to a blank CD-R;
  3. boot from the CD.

Booting from a USB memory stick/flash disk

  1. Make a bootable USB flash disk (see this description);
  2. download restoree.exe and put in on the flash disk;
  3. boot from the flash disk and run restoree.exe.

Feedback

clemens@ladisch.de

Warranty

none

Bug Reports

So far, I know of nine users who have reported this problem:

http://vip.asus.com/forum/view.aspx?board_id=21&id=20080815123512921
http://vip.asus.com/forum/view.aspx?board_id=21&id=20081109201810093
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090108020749752
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090211084749940
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090212184022002
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090417024503409
http://bugzilla.novell.com/show_bug.cgi?id=462365
(and private e-mail)

Custom Search
Personal tools
Namespaces

Variants
Actions
Navigation
wiki
Toolbox