Difference between revisions of "Xonar EEPROM Failure"

From AlsaProject
Jump to: navigation, search
m (Booting from a USB memory stick/flash disk)
(Booting Linux)
 
(44 intermediate revisions by one user not shown)
Line 1: Line 1:
 
==Xonar EEPROM Failure==
 
==Xonar EEPROM Failure==
  
Sometimes, Xonar cards randomly fail to be recognized.
+
Sometimes, Xonar PCI/PCI-E 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".
 
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".
Line 10: Line 10:
 
when it gets overwritten, the main chip cannot read the subsystem 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.)
 
and uses a default ID (13F6:8788) which is not recognized by the Xonar driver.)
 +
 +
To reliably detect whether the EEPROM was overwritten,
 +
go into Device Manager, show the properties page of the device,
 +
go to the "Details" tab, and select the property "Hardware IDs",
 +
and look at the values after "SUBSYS_":
 +
{| border="1"
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_82691043
 +
| OK (Xonar D2)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_82751043
 +
| OK (Xonar DX)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_82B71043
 +
| OK (Xonar D2X)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_83141043
 +
| OK (Xonar HDAV1.3)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_83271043
 +
| OK (Xonar DX)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_834F1043
 +
| OK (Xonar D1)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_835C1043
 +
| OK (Xonar Essence STX)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_835D1043
 +
| OK (Xonar Essence ST)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_835E1043
 +
| OK (Xonar HDAV1.3 Slim)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_838E1043
 +
| OK (Xonar DS)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_84281043
 +
| OK (Xonar Xense)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_84671043
 +
| OK (Xonar DG)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_85211043
 +
| OK (Xonar DGX)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_85221043
 +
| OK (Xonar DSX)
 +
|-
 +
| PCI\VEN_13F6&DEV_8788&SUBSYS_'''878813F6'''<br>PCI\VEN_13F6&DEV_8788&SUBSYS_'''434D1043'''
 +
| '''overwritten EEPROM'''
 +
|}
  
 
==Causes==
 
==Causes==
  
The exact cause is unknown.
+
The exact cause is unknown.<BR>
 
+
There was a guess that the EEPROM chip can misinterpret certain signals if they happen together with eletrical noise,
+
but the EEPROM is protected against that.
+
 
+
 
It seems that the problem occurs only with certain computers or motherboards,
 
It seems that the problem occurs only with certain computers or motherboards,
and mostly after a (re)installation of an operating system.
+
and after booting from a CD (i.e., (re)installation of an operating system, or using a live CD).
<!-- Asus M3N-HT, Asus Striker II Formula, Asus P5N-D, Asus P5N-T Deluxe, Dell Optiplex 755 -->
+
  
 
==Restoring the EEPROM==
 
==Restoring the EEPROM==
  
I have written a tool that can restore the original contents of the EEPROM;
+
I have written a tool that can restore the original contents of the EEPROM.
there are versions for Linux and MS-DOS:
+
<br>
 
+
It needs direct access to the hardware, therefore, it can ''not'' be run inside Windows.
===In Linux===
+
 
+
# Boot Linux (either from hard drisk or from a live CD);
+
# download the package directly from <http://www.alsa-project.org/~clemens/oxygen_restore_eeprom.tar.gz>, or download it from Windows and copy it over with a USB stick;
+
# open a console;
+
# unpack the package:<br><code>tar xvzf oxygen_restore_eeprom.tar.gz<br>cd oxygen_restore_eeprom</code>
+
# run the program, as root:
+
#* either run first <code>su</code>, then <code>./oxygen_restore_eeprom_32</code>
+
#* or run <code>sudo ./oxygen_restore_eeprom_32</code>
+
# follow the instructions on the screen.
+
 
+
The package also contains a 64-bit version (<code>oxygen_restore_eeprom_64</code>) for the unlikely case that you're running a 64-bit-only Linux.
+
 
+
The program has been confirmed to work.
+
  
 
===In DOS===
 
===In DOS===
Line 46: Line 78:
 
If you have a working DOS, you can use this method. (This tool is run in the same way as Asus' xee01.bat.)
 
If you have a working DOS, you can use this method. (This tool is run in the same way as Asus' xee01.bat.)
  
# Download [http://www.alsa-project.org/~clemens/restoree.exe restoree.exe];
+
# Download [http://cladisch.fastmail.net/restoree.exe restoree.exe];
# boot DOS;<br>(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)
+
# boot DOS;<br>(this works only with a real DOS such as MS-DOS or DR-DOS or FreeDOS; an emulated DOS such as the DOS box of Windows or the DOS in an emulated computer (e.g. VMWare) will not work)
 
# run restoree.exe.
 
# run restoree.exe.
  
(source code: [http://www.alsa-project.org/~clemens/restoree.c restoree.c])
+
(source code: [http://cladisch.fastmail.net/restoree.c restoree.c])
  
 
===Booting from a floppy===
 
===Booting from a floppy===
  
# Download this floppy image: [http://www.alsa-project.org/~clemens/floppy.img floppy.img] (1.44 MB);
+
# Download this floppy image: [http://cladisch.fastmail.net/floppy.img floppy.img] (1.44 MB);
 
# write it to a floppy with rawrite.exe (which you can get [http://www.google.com/search?q=rawrite.exe somewhere on the Internet]);
 
# write it to a floppy with rawrite.exe (which you can get [http://www.google.com/search?q=rawrite.exe somewhere on the Internet]);
 
# boot from the floppy.
 
# boot from the floppy.
Line 60: Line 92:
 
===Booting from a CD===
 
===Booting from a CD===
  
# Download this ISO file: [http://www.alsa-project.org/~clemens/restore_eeprom.iso restore_eeprom.iso] (1.8 MB);
+
# Download this ISO file: [http://cladisch.fastmail.net/restore_eeprom.iso restore_eeprom.iso] (1.8 MB);
 
# burn it to a blank CD-R;
 
# burn it to a blank CD-R;
 
# boot from the CD.
 
# boot from the CD.
Line 66: Line 98:
 
===Booting from a USB memory stick/flash disk===
 
===Booting from a USB memory stick/flash disk===
  
# Make a bootable USB flash disk (see [http://vip.asus.com/forum/view.aspx?id=20081009200304311&board_id=21&model=Xonar+DX&SLanguage=en-us&page=1#20081011060714859 this description]);
+
# Make a bootable USB flash disk (see [http://www.sevenforums.com/tutorials/46707-ms-dos-bootable-flash-drive-create.html this description]), but do not put the xee01 files on the disk;
# download [http://www.alsa-project.org/~clemens/restoree.exe restoree.exe] and put in on the flash disk;
+
# download [http://cladisch.fastmail.net/restoree.exe restoree.exe] and put in on the flash disk;
 
# boot from the flash disk and run restoree.exe.
 
# boot from the flash disk and run restoree.exe.
 +
 +
===Booting Linux===
 +
 +
The Linux Xonar driver has a simple version of the EEPROM restoring tool integrated since kernel 2.6.30 (which was released June 2009).<br>Just boot your installed Linux, or any recent Linux live CD.
 +
 +
However, this simple version is not able to correct all possible errors.
  
 
===Feedback===
 
===Feedback===
Line 78: Line 116:
  
 
==Bug Reports==
 
==Bug Reports==
So far, five users have reported this problem:
+
Many users have reported this problem:
  
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20080308014957187<BR>
 
http://vip.asus.com/forum/view.aspx?board_id=21&id=20080815123512921<BR>
 
http://vip.asus.com/forum/view.aspx?board_id=21&id=20080815123512921<BR>
 
http://vip.asus.com/forum/view.aspx?board_id=21&id=20081109201810093<BR>
 
http://vip.asus.com/forum/view.aspx?board_id=21&id=20081109201810093<BR>
 
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090108020749752<BR>
 
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090108020749752<BR>
http://bugzilla.novell.com/show_bug.cgi?id=462365
+
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090211084749940<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090212184022002<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090417024503409<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090424193309127<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090719054139406<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20100510174004218<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20100828085839182<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20110120170223383<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20110318045748367<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20120505102639207<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20130128083647397<BR>
 +
http://vip.asus.com/forum/view.aspx?board_id=21&id=20130506122138947<BR>
 +
http://bugzilla.novell.com/show_bug.cgi?id=462365<BR>
 +
(and private e-mail)

Latest revision as of 14:12, 19 June 2013

Contents

[edit] Xonar EEPROM Failure

Sometimes, Xonar PCI/PCI-E 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.)

To reliably detect whether the EEPROM was overwritten, go into Device Manager, show the properties page of the device, go to the "Details" tab, and select the property "Hardware IDs", and look at the values after "SUBSYS_":

PCI\VEN_13F6&DEV_8788&SUBSYS_82691043 OK (Xonar D2)
PCI\VEN_13F6&DEV_8788&SUBSYS_82751043 OK (Xonar DX)
PCI\VEN_13F6&DEV_8788&SUBSYS_82B71043 OK (Xonar D2X)
PCI\VEN_13F6&DEV_8788&SUBSYS_83141043 OK (Xonar HDAV1.3)
PCI\VEN_13F6&DEV_8788&SUBSYS_83271043 OK (Xonar DX)
PCI\VEN_13F6&DEV_8788&SUBSYS_834F1043 OK (Xonar D1)
PCI\VEN_13F6&DEV_8788&SUBSYS_835C1043 OK (Xonar Essence STX)
PCI\VEN_13F6&DEV_8788&SUBSYS_835D1043 OK (Xonar Essence ST)
PCI\VEN_13F6&DEV_8788&SUBSYS_835E1043 OK (Xonar HDAV1.3 Slim)
PCI\VEN_13F6&DEV_8788&SUBSYS_838E1043 OK (Xonar DS)
PCI\VEN_13F6&DEV_8788&SUBSYS_84281043 OK (Xonar Xense)
PCI\VEN_13F6&DEV_8788&SUBSYS_84671043 OK (Xonar DG)
PCI\VEN_13F6&DEV_8788&SUBSYS_85211043 OK (Xonar DGX)
PCI\VEN_13F6&DEV_8788&SUBSYS_85221043 OK (Xonar DSX)
PCI\VEN_13F6&DEV_8788&SUBSYS_878813F6
PCI\VEN_13F6&DEV_8788&SUBSYS_434D1043
overwritten EEPROM

[edit] 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).

[edit] Restoring the EEPROM

I have written a tool that can restore the original contents of the EEPROM.
It needs direct access to the hardware, therefore, it can not be run inside Windows.

[edit] 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;
    (this works only with a real DOS such as MS-DOS or DR-DOS or FreeDOS; an emulated DOS such as 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)

[edit] 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.

[edit] 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.

[edit] Booting from a USB memory stick/flash disk

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

[edit] Booting Linux

The Linux Xonar driver has a simple version of the EEPROM restoring tool integrated since kernel 2.6.30 (which was released June 2009).
Just boot your installed Linux, or any recent Linux live CD.

However, this simple version is not able to correct all possible errors.

[edit] Feedback

clemens@ladisch.de

[edit] Warranty

none

[edit] Bug Reports

Many users have reported this problem:

http://vip.asus.com/forum/view.aspx?board_id=21&id=20080308014957187
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://vip.asus.com/forum/view.aspx?board_id=21&id=20090424193309127
http://vip.asus.com/forum/view.aspx?board_id=21&id=20090719054139406
http://vip.asus.com/forum/view.aspx?board_id=21&id=20100510174004218
http://vip.asus.com/forum/view.aspx?board_id=21&id=20100828085839182
http://vip.asus.com/forum/view.aspx?board_id=21&id=20110120170223383
http://vip.asus.com/forum/view.aspx?board_id=21&id=20110318045748367
http://vip.asus.com/forum/view.aspx?board_id=21&id=20120505102639207
http://vip.asus.com/forum/view.aspx?board_id=21&id=20130128083647397
http://vip.asus.com/forum/view.aspx?board_id=21&id=20130506122138947
http://bugzilla.novell.com/show_bug.cgi?id=462365
(and private e-mail)

Custom Search
Personal tools
Namespaces

Variants
Actions
Navigation
wiki
Toolbox