Latest revision |
Your text |
Line 88: |
Line 88: |
| * DOTREF - 48MHz input clock | | * DOTREF - 48MHz input clock |
|
| |
|
| After looking at the [https://wiki.laptop.org/mediawiki/images/8/83/XO-1_Schematics.pdf OLPC XO-1 Schematics] and [https://manualzz.com/doc/29656964/amd-geode%E2%84%A2-lx-epic-rdk-reference AMD Geode LX EPIC RDK Schematics] which both use LX processors and inspecting the PCM-9375 board itself I figured out the following: | | After looking at the [https://wiki.laptop.org/mediawiki/images/8/83/XO-1_Schematics.pdf OLPC XO-1 Schematics] and [https://manualzz.com/doc/29656964/amd-geode%E2%84%A2-lx-epic-rdk-reference AMD Geode LX EPIC RDK Schematics] which both use LX processors and the PCM-9375 board itself I figured out the following: |
|
| |
|
| * The OLPC XO-1 uses a resistor voltage divider to generate DVREF | | * The OLPC XO-1 uses a resistor voltage divider to generate DVREF |
Line 155: |
Line 155: |
|
| |
|
| == Rebuilding solder failure == | | == Rebuilding solder failure == |
| I managed to spend a lot of time and effort rebuilding the stuff I messed up to the point it works again. I actually couldn't find the ceramic capacitors I ordered so I skipped them. I documented this failure in [[AMD Geode/Video 2]] . | | I managed to spend a lot of time and effort rebuilding the stuff I messed up to the point it works again. I actually couldn't find the ceramic capacitors I ordered so I skipped them. |
|
| |
|
| Alpine Linux does give a nice login prompt again. | | Alpine Linux does give a nice login prompt again. |
Line 226: |
Line 226: |
| I also found [http://ftp.emacinc.com/LegacyProducts/SBC/pcm-9375/Drivers/BIOS/readme.txt a warning on CRT support with BIOS 1.17] and [https://www.advantech.com/support/details/faq?id=1+FY+68 how to make a CRT-only PCM-5862E BIOS]. | | I also found [http://ftp.emacinc.com/LegacyProducts/SBC/pcm-9375/Drivers/BIOS/readme.txt a warning on CRT support with BIOS 1.17] and [https://www.advantech.com/support/details/faq?id=1+FY+68 how to make a CRT-only PCM-5862E BIOS]. |
|
| |
|
| Using modbin6 I was able to check the BIOS settings and found that it's already set to CRT and doesn't have the broken default 1.17 has, so I'm not even sure this method is going to work. | | Using modbin6 I was able to check the BIOS settings and found that it's already set to CRT, so I'm not even sure this method is going to work. |
|
| |
|
| Using awdbedit I was able to decompress and extract parts of the BIOS. | | Using awdbedit I was able to decompress and extract parts of the BIOS. |
Line 236: |
Line 236: |
| I ordered 5 of those chips off eBay, my plan is to hot swap the chip and use that for BIOS foolery and keep the current one as a known good. | | I ordered 5 of those chips off eBay, my plan is to hot swap the chip and use that for BIOS foolery and keep the current one as a known good. |
|
| |
|
| == Ethernet desoldering == | | ==Future ideas== |
| I attempted to desolder the RTL8139DL chip I had broken earlier. Even with a large amount of flux and 40 minutes of hot air rework at various it didn't come off, instead making a flux mess and possibly damaging the board. | | Here's some things I'll try: |
|
| |
|
| I tried again the next day, changing my technique to use a larger nozzle, putting the nozzle closer to the chip and using tweezers to push the chip upwards to try and defeat surface tension. It worked!
| | *Check TFT panel signals |
| | | *BIOS flash |
| I prepared to re-solder the 6 lost pads, belonging to the following pins:
| |
| | |
| * GND | |
| * AD21
| |
| * AD20
| |
| * AD17
| |
| * IRDYB
| |
| * TRDYB
| |
| | |
| Only to find out only AD17, TRDYB were visibly connected. It's unclear where IRDYB connects, if at all.
| |
| | |
| == BIOS flashing ==
| |
| One night I was bored so I installed Debian 12 in QEMU then transferred it to the board's CompactFlash. The remaining Ethernet connector didn't work but I'm not sure if it ever connected.
| |
| | |
| I had some trouble with the RAM detecting. The board wouldn't beep due to lack of RAM but it also wouldn't initialize. Under a microscope the joints look bad, but I'm a little more suspicious of the SODIMM connection pins in the socket itself. The RAM doesn't feel like it snaps it properly, or maybe it's not making proper contact.
| |
| | |
| Only one Ethernet port shows, but even that one doesn't work. Maybe I've fried that chip? Though it wouldn't really enumerate. There was a resistor I lost when desoldering, that might be important.
| |
| | |
| The Molex USB to power connector also seems to have failed, because the crimping on it failed its once job of handling physical strain. I decided to just solder the crimp and be gentle with it for now.
| |
| | |
| Once Debian was up and running I used flashrom and chip hot swapping to try BIOS versions v1.18, v1.17, v1.16 and v1.15. None of them had any changes.
| |
| | |
| I gave up after a while until I decided to try the TV connector jumper on the board. I had tried this previously and had mixed results as it just seems to stop the boot altogether. When I tried booting it the machine didn't power at all. Removing the jumper also kept the system not booting.
| |
| | |
| I tried swapping RAM sticks but overall it seems like the slot really is failing in some way. But when it did work something interesting happened: The screen completely worked. I managed to see the BIOS screens and GRUB.
| |
| | |
| I'm tempted to believe this whole thing is some kind of memory issue, but that doesn't make much sense given OSes seemed to run just fine.
| |
| | |
| == Ethernet pins ==
| |
| While working on video 3 I was seriously, seriously confused about why IRDYB and TRDYB wouldn't be connected. It mades no sense, this is REQUIRED for bus transfer. The mystery is that I was looking at the chip upside down.
| |
| | |
| The real broken pins are:
| |
| | |
| * CLKRUNB
| |
| * REQB2
| |
| * GNTB2
| |
| * AVDD
| |
| * RTT3
| |
| * LWAKE | |
| | |
| Most of these are test pins. The only ones that were connected was AVDD and RTT3, both should be fine left disconnected!
| |
| | |
| == Ethernet testing ==
| |
| I decided to try and figure out if the reason the remaining Ethernet was broken was due to me using the wrong type of Ethernet cable: I usually run small cross-over cables from the switch on my desk but the board may need an actual cable.
| |
| | |
| I booted the board and confirmed VGA works, but I was having serious problems with serial garbage. I had to send a break to get the Linux prompt to show itself.
| |
| | |
| Surprisingly, the board no longer acknowledges it has any Ethernet ports. It doesn't seem to show up in lspci either. Really not sure what is happening here.
| |
| | |
| I tried to reboot the board and go in to setup to check that. The delete key didn't work. In fact only some keys on my PS/2 keyboard worked. Same with a USB to PS/2 adapter. I did try to
| |
| | |
| VGA turned garbled very fast while the machine was running. I lifted the board up and found the RAM stick fell out. That's not normal, right? RAM sticks aren't supposed to do that.
| |
| | |
| Also the reset button isn't working. I think this started when working on the VGA port, not the BIOS or Ethernet.
| |
| | |
| I think the next step is clear: Fix the RAM slot.
| |
| | |
| == To-do ==
| |
| I need to:
| |
| | |
| * Repair traces
| |
| * Reinstall Ethernet
| |
| * Validate the USB power cable
| |
| * Fix the RAM
| |
| * Run a memory test using memtest86+ and its serial mode
| |
| * Debug why remaining Ethernet is broken
| |
| * Debug why PS/2 is broken
| |
| * Check if it was the BIOS breaking the VGA
| |
| *Repair the reset button
| |