AMD Geode/Video 3/Script

From JookWiki

Accessibility notice[edit | edit source]

Narrator: "A full textual description of this video is linked in the description below. Enjoy!"

A glossy purple slide shows the text "A full textual description of this video is linked in the description below"

Recount[edit | edit source]

Narrator: "Welcome back to my AMD Geode repair video series. If you weren't here for the first few videos, let me give you a quick recap."

A glossy red slide shows the text "Welcome back! Now for a quick recap"

Narrator: "In part 1 I bought and did some basic troubleshooting on an AMD Geode computer board. I drew some wrong conclusions and at the end damaged the board with bad soldering."

Two scenes from part one are shown. The first is me using a bench power supply to power board. The second is a sticky mess of me soldering the board. The text "Part 1: Troubleshooting" is shown.

Narrator: "In part 2 I spent 6 hours trying to repair the board. I was successful in the end but damaged another part later."

Two scenes from part two are shown. The first is soldering an inductor back on to the board. The second is running solder braid over the Ethernet chip with bent and ruining the pins and traces. The text "Part 2: Repair" is shown.

Lessons learned[edit | edit source]

Narrator: "Okay we're done. Let's talk about some of the lessons learned."

A glossy green slide shows the text "Lessons learned"

Narrator: "First, make a plan when soldering. Practice on e-waste to see if it's something you can do. Take breaks throughout and assess the situation. I didn't do any of these and I damaged the board."

A glossy green slide shows the the following text:

  • Lesson 1: Have a plan
  • Practice it on e-waste
  • Take breaks
  • Assess the situation
  • I didn't do these and failed

Narrator: "Secondly, understand the circuit properly! Had I done this I wouldn't have even had to solder the board."

A glossy orange slide shows the the following text:

  • Lesson 2:
  • Understand the circuit!
  • I could've avoided disaster altogether

Narrator: "Let me explain: In part 1 I drew this diagram"

A picture of the circuit board near the CPU is shown. Text and lines are drawn over it, forming a diagram that shows:

  • DAVdd connects to the LM4041AIM3-1.2 voltage reference
  • From the 1.22 volt reference a 0.25 nanofarad capacitor and 10 kiloohm resistor in parallel run to DVREF
  • The 1.21 kiloohm resistor follows from the DVREF capacitor and resistor to the DRSET pin

In the top left the text "I drew this:" is shown.

Narrator: "I then measured these voltages"

The diagram is updated. DAVdd is marked as 3.3 volts, DVREF is 1.22 volts and DRSET is 40 millivolts. In the top left the text "I measured:" is shown next to the voltages.

Narrator: "How is DAVdd 3.3 volts if it's connected to a 1.2 volt reference?"

The voltage reference's 1.2 number is circled. The text "DAVdd should be 1.2v not 3.3v!" is shown.

Narrator: "How is DVREF 1.22 volts using this voltage divider?"

The two resistors are circled. The text "This voltage divider doesn't add up" is shown.

The 10k resistor is circled instead.

Narrator: "It makes no sense!"

Three giant question marks are shown overlaid the diagram.

Narrator: "When it comes to the part of the board I spent time troubleshooting and soldering, it gets worse!"

A picture of the circuit board near is shown, near the VGA output port. It contains various surface mount chips, but in the center is a set of 3 small capacitors, 7 inductors, 3 ESD diodes and 7 resistors. The text "It gets worse with the video circuit!" is overlaid.

Narrator: "I thought this circuit had the video signals travelling through capacitors, through inductors, through these ESD diodes, and out through these termination resistors."

Text overlays the diagrams labels the capacitors, inductors, ESD diodes and resistors. The top three capacitors are labelled R, G and B. Three separate lines from each of these capacitors draw through a set of inductors, ESD diodes and resistors. The lines are coloured red, green and blue.

Narrator: "I figured that an ESD diode was faulty, pulling a signal line down to GND. This would cause a low voltage."

The text "Would a bad ESD diode pull the signal low?" is shown. The green line is replaced with a shorter line that ends at one of the pins of its ESD diode.

Narrator: "Had I just measured the ESD diodes with my multimeter in resistance and diode mode I could've ruled this out."

A cartoon multimeter is shown with its black probe on the GND pin of the ESD diode and the red probe on the signal pin of the ESD diode.

The text "Measuring resistance or diode drop would have shown me the diodes were working correctly" is shown.

Narrator: "Even then, I decided to remove the capacitors to isolate the signals"

The circuit board is shown again, this time with the top capacitors removed. The red, green and blue lines stop at the signal side of the capacitor and no longer flow to the inductors.

The text "I removed the capacitors to rule out any fault..." is shown.

Narrator: "But these are connected to GND, not the signal!"

The red, green and blue lines turn to crossed out stubs. The text "But they weren't connected to the signal!" is shown.

Narrator: "Removing them would not show the fault at all! I was doomed from the start."

The red, green and blue lines start again at the inductors and flow to the resistors again. Except for green which is shown flowing to the GND side of its ESD diode.

Writing code[edit | edit source]

Narrator: "Without an obvious board issue, I decided to research how the chip outputs video"

A glossy blue slide shows the text "Investigating Geode video output"

Narrator: "So I opened the datasheet and started looking for anything useful."

The datasheet cover page is shown. An 'AMD Geode' logo is shown as well as the title "AMD Geode™ LX Processors Data Book". The datasheet is dated February 2009.

Narrator: "I first looked at the at the video processor diagnostic register."

A table titled "MSR_DIAG_VP Bit Descriptions" is shown. It has these fields:

  • RSVD: Reserved
  • CM: 32-Bit CRC Mode. Selects 32-bit CRC generation
  • NDM: New Dither Mode. Selects either the legacy dither mode, or new dither mode
  • SM: Sim Mode. This field is used to put the VP in modes to aid verification
  • DVAL: DAC Test Value. 8-bit data value to drive to CRT DAC when selected by bit 19
  • D: DAC Test Value Select. Selects which data stream is sent to CRT DAC during CRT DAC test mode
  • RSVD: Reserved. Reserved for test purposes. Set to 000 for normal operation
  • SP: Spares. Read/write, no function

Narrator: "I found some interesting fields that can be used to test the video processor DAC."

Three fields are shown in more detail. I will quote from the datasheet here:

Bits 27 to 20: DAC Test Value

8-bit data value to drive to CRT DAC when selected by bit 19.

Duplicate copies of DAC Test Value are driven on DAC RGB.

  • crt_dac_r[7:0] = DAC Test Value[7:0] ([27:20] is this register)
  • crt_dac_g[7:0] = DAC Test Value[7:0] ([27:20] is this register)
  • crt_dac_b[7:0] = DAC Test Value[7:0] ([27:20] is this register)

To enable DAC Test Value to be driven to CRT DAC:

  • (DAC Test Value Select must = 0) AND
  • ((VTM[6] = 0 AND MBD_MSR_DIAG[18:16] = 101h) OR
  • (VTM[6] = 1 AND VTM[3:0] = 0001h)

Bit 19: DAC Test Value Select

Selects which data stream is sent to CRT DAC during CRT DAC test mode.

  • 0: 24-bit data to CRT DAC = {3{DAC Test Value[27:20]}} (3 time repeated 8-bit value).
  • 1: 24-bit data to CRT DAC = gfx_data[23:0] (raw input from Display Controller).

Bits 18:16: RSVD

Reserved. Reserved for test purposes. Set to 000 for normal operation.

Narrator: "It looks complicated, but it's quite straight forward. Here's how to use it:"

The text "How to use DAC test mode:" is shown on screen.

Narrator: "Don't. Save yourself from this nightmare."

The single word "Don't" is shown in the center of the screen.

Narrator: "First: The MBD_MSR_DIAG register doesn't exist."

The three fields are shown again, with the "MBD_MSR_DIAG" register circled.

Narrator: "I googled it and got three results"

Top of a google results page is shown. It says there are about 3 results.

Google helpfully says "It looks like there aren't many great matches for your search"

The text "Google returns 3 results:" is shown on screen.

Narrator: "The top one is my website!"

Three Google results are shown:

The text "The top result is my website!" is shown on screen.

Narrator: "It's could be a typo for GLD_MSR_DIAG."

The GLD Diagnostic MSR register is shown, named GLD_MSR_DIAG.

It has a note: "This register is reversed for internal use by AMD and should not be written to."

The text "Maybe it meant GLD_MSR_DIAG?" is shown on screen.

Narrator: "But that register is reserved and not for use"

The note about it being reserved is circled.

The text "But it's reserved and not for use?"

Narrator: "Maybe it's a typo for the reserved test field I saw earlier?"

The three diagnostic fields from earlier are shown. The RSVD field is circled.

The text "Perhaps it meant the RSVD field?" is shown on screen.

Narrator: "The bit fields line up, both reference bits 18 to 16."

The numbers "18:16" are circled twice, with an arrow pointed between them.

The first instance is in the text "MBD_MSR_DIAG[18:16]".

The second instance is the bits for the RSVD field.

The text "The bit fields both match" is shown on screen.

Narrator: "Setting these registers use both MSRs and memory mapping"

The VP Diagnostic MSR (MSG_DIAG_VP) and Video Processor Test Mode (VTM) registers are shown.

MSG_DIAG_VP has an MSD address of 48002010h.

VTM has a VP Memory Offset of 130h.

The text "They use a mix of MSRs and memory mapping?" is shown on screen.

Narrator: "The documentation on how to use these is fairly confusing"

Excerpts from the GeodeLink datasheet section are shown, including Table 4-2. MSR Mapping and the Memory and I/O Mapping section. Both have a lot of complicated wording and require further context to understand.

The text "Using those seems complicated..." is shown on screen.

Narrator: "So I gave up and just modified the Linux driver to set registers for me."

The following source code is shown:

/* Enable test mode? */
#define VP_DIAG_MSR 0x48002011
u64 diag_val = 0;
u64 vtm_val = 0;
diag_val |= (128 << 27); /* DVAL = 128 */
/* diag_val D is already 0 */
diag_val |= (0x5 << 18); /* RSVD = 0b101 */
/* VTM[6] is already 0 */
wrmsrl(VP_DIAG_MSR, diag_val);
write_vp(par, VP_VTM, dcfg);

The text "I just edited the Linux driver:" is shown on screen.

Narrator: "...and it just made the screen go black."

The text "Test mode just made the screen go black" is shown on screen.

Narrator: "So what else is there to check?"

The text "What next?" appears on the screen"

Narrator: "I found a register that lets you use an external DAC VREF"

The DCFG register is shown. The following field is highlighted:

Select DAC VREF. Allows use of an external voltage reference for CRT DAC.

  • 0: Disable external VREF.
  • 1: Use external VREF.

The text "Maybe using another DAC VREF would help?" is shown on the screen.

Narrator: "Changing it didn't help."

The text "It did nothing" appears on the screen.

Narrator: "The DACPWRDN register reports if its powered down."

The MISC register is partially shown. The following fields are shown:

Bits 63 to 13: RSVD (RO)

Reserved (Read Only). Reads back as 0.

Bit 12: SP

Spare. Read/write; no function.

Bit 11: APWRDN

Analog Interface Power Down. Enables power down of the analog section of the internal CRT DAC.

  • 0: Normal.
  • 1: Power down.

Bit 10: DACPWRDN

DAC Power Down. Enables power down of the digital section of the internal CRT DAC.

For this bit to take effect:

VP Memory Offset 130h[6] must be = 1 or

MSR Address 48000010h[18:16] must not equal 101.

  • 0: Normal.
  • 1: Power down.

The text "Maybe the DAC is powered down?" is shown on screen.

Narrator: "But I confirmed these were set properly"

The text "Nope, these are set fine" appears on the screen.

Narrator: "I found the GLCP_DAC register"

The GLCP_DAC register is partially shown. The following fields are shown:

Bits 64 to 14: RSVD

Reserved.

Bit 13: SB (RO)

Status Blue (Read only). A logic level 1 means the Blue DAC output is above 0.35V.

Bit 12: SG (RO)

Status Green (Read only). A logic level 1 means the Green DAC output is above 0.35V.

Bit 11: SR (RO)

Status Red (Read only). A logic level 1 means the Red DAC output is above 0.35V.

Bit 10: INREFEN

Internal Reference Enable. Internal reference enable to the DAC.

Bit 9: OL

Output Level.

  • 0: RGB
  • 1: TV - for testing only, analog TV out is not supported).

Bits 8 to 6: AB

Adjust for Blue DAC.

  • 000: 0%.
  • 011: 7.5%
  • 100: -10%.
  • 111: -2.5%.

The text "I found the GLCP_DAC register" is shown on screen.

Narrator: "It has fields showing the DAC output voltage"

The status registers are circled.

The text "It reports on DAC output voltages" is shown on screen.

Narrator: "It correctly reports the output as being low voltage"

The text "It reported low voltage correctly" appears on screen.

Narrator: "Well, that wasn't too helpful."

The text "That was unhelpful" is the only thing shown on the screen.

Measurement[edit | edit source]

Narrator: "Let's go back and measure the DAC VREF. Again."

A glossy red slide shows the text "Let's measure the DAC VREF again!"

Narrator: "Here's a microscope shot of the circuit."

A microscope photo from above showing the same DAC VREF circuit from before.

The text "Here's the DAC VREF circuit" is shown.

Narrator: "Here's the components labelled again."

Three components are labelled:

  • A 12nF capacitor
  • A 1.21k resistor
  • A 10k resistor
  • The 1.2v voltage reference

The text "Here's each component" is shown.

Narrator: "and here are the signal lines labelled correctly"

Five lines are drawn over PCB tracks. These connect:

  • The 1.21k resistor between DRSET and GND
  • The 12nF cap between DVREF and GND
  • The 1.2v VREF between DVREF and GND
  • The 10k resistor between DVREF and 3.3v

The text "Here's each signal" is shown.

Narrator: "For now let's focus on the DVREF line."

Only the DVREF track is shown, and only the 1.2 volts VREF is labelled.

The text "Let's focus on DVREF" is shown on screen.

Narrator: "DVREF measures 1.2 volts correctly, but"

A cartoon multimeter is shown, with its black probe on a GND rail and red probe on the DVREF rail.

The text "DVREF measures 1.2V" is shown on screen.

Narrator: "Linux drops it to 0.8 volts!"

The text "Linux drops it to 0.8V!" in shown on screen.

Narrator: "All along I should've measured when the fault was active!"

The text "Lesson learned: Measure DURING the fault" is shown on screen.

Narrator: "Measuring the 3.3 volt rail shows it's 0.9 volts"

The 3.3v rail is shown on screen.

The multimeter measures between GND and the 3.3v rail.

The text "3.3V rail is 0.9V?" is shown on screen.

Narrator: "As a quick check I bridged the 3.3 volt rail to a nearby working rail"

A microscope shot of shaky tweezers approaching two components is shown.

The first is a capacitor component elsewhere on the board, the other is the 10k resistor in the DAC VREF section.

The tweezers touch both components and provide a path for the DAC VREF to get 3.3v.

One capacitor is the to connect the 3.3v rail to a nearby capacitor on a separate 3.3v rail is shown.

The text "Bridging to a nearby 3.3V rail" is shown.

Narrator: "Surprisingly this fixed the brightness"

A monitor is shown with cut-off text on it:

come to Alpine Linux 3.15

nel 5.16.0-rc2+ on an i586 (dev/tty1)

alhost login:

The text "The display worked!" is shown.

The camera briefly zooms out and shows an orange frog squeeze doll on its back. There's a hole on its underside that makes it look like a gaping butt hole. I didn't need to text describe that but I did. I also can't fix it because I filmed it over a year ago.

Narrator: "I checked the other side of the board and found this:"

Microscope footage of a circuit board is shown.

A yellowed resistor and capacitor are shown next to each other.

The text "The other side of the board:" is shown on screen.

Narrator: "A blown resistor!"

The view zooms in on the resistor, showing a small hole in the middle.

The resistor is marked 01Y, meaning 1 ohm!

The text "Blown resistor!" is shown on screen.

Narrator: "And a yellowed capacitor!"

The view zooms in on the capacitor.

The text "Yellowed capacitor" is shown on screen.

Repair[edit | edit source]

Narrator: "Time to finally repair something"

A glossy orange slide shows the text "Repair time!"

Narrator: "I used my soldering iron to remove the nearby capacitor and the resistor."

The microscope shows the same scene as before.

Tweezers hold the yellowed capacitor while a large square soldering iron touches its side.

The soldering iron barely makes any contact with the capacitor.

Narrator: "I heated up one side of each component then forced that side upwards off the pad"

The solder on the capacitor melts on one side and the tweezers pull the component to stand upwards.

The iron then melts one side of the resistor while holding it with the tweezers.

The resistor slips from the tweezers and bends sideways, disconnecting from the opposite pad.

Narrator: "Then I heated the other side up and pulled the components off"

The iron melts the resistor's pad again and the tweezers pull it away.

Part of the resistor remains on this pad too.

The same happens with the capacitor, leaving part of its remains too.

Narrator: "Next I ran a wire to replace the resistor"

The soldering heats up both resistor pads and cool to hold a small wire in place to bridge them.

Narrator: "Then I cleaned up the spent flux"

A cotton swab is used to clean remaining flux from the board.

The board is then shown post-clean.

Narrator: "Do not do this!"

The text "Do not do this!" appears.

Narrator: "First, did I need to remove both components?"

The board is shown again, with the resistor and capacitor circled.

The text "Should I have removed both?" is shown.

Narrator: "Measuring the resistor's voltage drop would show if it was faulty"

A multimeter is shown probing either side of the blown resistor.

The text "Measuring voltage drop would show if the resistor was faulty" is shown.

Narrator: "Secondly, I removed the components wrong"

An orange cartoon resistor sits on a an abstract blue circuit board.

The text "I desoldered components wrong" is shown.

Narrator: "I forced heat through one end of the component"

A cartoon soldering iron touches the end of the resistor. A gradient of red heat from a soldering iron heats up one end of the component, with the other end still cool.

The text "I heated up the component" is shown.

Narrator: "This let me lift one end up"

The cooled component is shown partially lifted up, with one end floating above the previously heated pad, and the other end attached to the other pad.

The text "Then lifted only one end up" is shown.

Narrator: "But I risked pulling up the other end's pad"

The resistor is now transparent, revealing the other pad has actually been partially lifted from the board. The pad is circled.

The text "But risked lifting the other pad" is shown.

Narrator: "The proper way to desolder this is using a hot air gun"

The resistor is back attached to the board and a large circular gradient of heat from above is shown heating up the resistor and board.

The text "Hot air would desolder both pads" is shown.

Narrator: "Then removing the component using tweezers"

The resistor is now completely gone from the board, with the board and pads still hot.

The text "Then tweezers could be used for a clean removal" is shown.

Narrator: "Here's the display before the fix"

A video of the screen showing unreadable faint blue text is shown. The text "Before" is overlaid.

Narrator: "Here's the display after the fix"

A video of the screen showing bright white text is shown. The contents is the same as the cut-off login text from the previous section. The text "After" is overlaid.

Narrator: "This fixed the brightness, but not the original issue"

A glossy purple slide shows the text "This fixed the brightness but not the original issue"

BIOS editing[edit | edit source]

Narrator: "Okay, Linux works. Maybe the BIOS is broken?"

A glossy brown slide shows the text "Linux worked. So I tried editing the BIOS"

Narrator: "I opened the BIOS in a BIOS editor"

A screenshot showing the program MODBIN32 is displayed. It has options to save and load BIOS images as well as edit various options.

Narrator: "I checked the default display output"

A screenshot shows data for the setup item "Output display". It it set to show normally, with the BIOS and SETUP default set to 'CRT'.

Narrator: "It was set to VGA by default"

The defaults are circled and the text "CRT = VGA" and "It's already default?" is shown on screen.

Narrator: "I could try re-flashing the stock BIOS"

The text "I could re-flash the stock BIOS" is shown.

Narrator: "But what if the flash failed?"

The interface for AwardBIOS Flash Utility is shown on the screen. It asks for a file name to program. The text "But what if flashing broke the BIOS?" is shown next to the interface.

Narrator: "I ordered some extra BIOS chips to flash instead"

A picture of an eBay order is shown. It was ordered on 18 Apr, 2022 for $10.87 USD. It delivered on 2 May, 2022. The description is "5Pcs New PM49FL004T-33JCE PM49FL004T-33JC 49FL004T-33JC 4 Mbit 3.3 V PLCC Bios". No picture of the object is available. The text "I ordered some chips to flash instead." is shown.

Ethernet removal[edit | edit source]

Narrator: "Okay, so what about the Ethernet chip?"

A glossy light green slide shows the text "What about Ethernet?"

Narrator: "I left a mess and broke a ton of pins"

The microscope photo of the chip's pins are shown. Various pins are bent and disconnected from traces, some of which are gone entirely.

Narrator: "I managed to find a pinout of the chip"

A screenshot of a datasheet showing a visual pinout for the RTL8139DL LQFP chip is shown.

Narrator: "I overlaid the microscope photo on it"

The microscope photo from before is overlaid, matching physical pins to the visual pinout.

Narrator: "Using this I identified the broken traces"

All pins but the broken ones are hidden. This leaves:

  • GND
  • AD21
  • AD20
  • AD17
  • IRDYB
  • TRDYB

Narrator: "So I have six broken traces"

The microscope photo is shown with each of the six pins from before highlighted by name. The title text "6 broken traces" is shown.

Narrator: "One trace is just ground"

The text "1 trace is GND" is shown under the title.

Narrator: "Five traces are data"

The text "5 traces are data" is added to the previous text.

Narrator: "These are all required!"

The text "These are all needed for the chip to work!" is added to the previous text.

Narrator: "How will I fix this?"

A glossy light blue slide shows the text "How to fix?"

Narrator: "I could run wires to the pins"

The microscope shot before shows the broken pins with the large text "Add wires?" above.

Narrator: "Here are the traces before I ruined them"

A microscope shot showing pins covered in flux and solder but with intact traces is shown. The text "Here are the traces before damage" is shown.

Narrator: "I overlaid the images which showed where some traces go"

A composite microscope shot is shown, with the broken traces intact.

The text "Overlaying shows where some god" is shown.

Narrator: "But some traces disappear under the chip"

Pins GND, AD21, AD20 and IRDYB are circled, showing there's no visible traces from the pads.

The text "Where do these traces go?" is shown.

Narrator: "I had to remove the chip to fix these traces"

A glossy gray slide shows the text "I had to remove the Ethernet chip"

Narrator: "So I blasted the chip with flux and hot air"

The Ethernet chip covered in bubbling flux is shown, heated by a hot air gun.

Narrator: "It didn't lift after 40 minutes"

Tweezers are shown trying to gently pry up a chip from its corner while the hot air gun heats it.

Narrator: "I gave up and cleaned up my failure"

Isopropyl alcohol is sprayed over the chip, now cold and no longer being worked on.

The pins of the chip are then shown with no minimal flux residue on them.

Narrator: "I decided to practice on a test board instead."

A glossy gray slide shows the text "Desoldering failed. So I tried on a test board"

A much larger STM32 is shown with many many more pins. It has flux on its edges and a hot air gun is heating it.

Narrator: "Within minutes I cleanly removed a giant chip"

The microscope shows the intact pins of the test board. They are bridged but the chip was successfully removed.

Narrator: "So I tried desoldering the Ethernet chip again"

A glossy gray slide shows the text "Success! Time to try again"

The Ethernet chip is shown again, this time having flux applied to its pins with a toothpick.

Narrator: "This time it worked!"

The already removed chip is lifted from the board. Underneath a massive amount of dried flux is visible.

Narrator: "Underneath the chip was my first attempt's dried flux"

The microscope pans around the pins of the chip showing yellowed traces and dried flux.

Narrator: "I did slightly melt the clock battery connector"

The CR2032 clock battery holder is shown, with the side of it near the chip disformed but still usable.

Narrator: "I did a thorough cleanup of the board"

A cotton swab wipes gunk off the board.

Narrator: "I also cleaned the chip itself"

The Ethernet chip is shown soaking in isopropyl alcohol.

Narrator: "After all this work I could finally see the traces"

A microscope image of the the damaged traces are shown, with the traces underneath the chip now visible. The traces that were disconnected do not lead underneath the chip.

Narrator: "Wait, they go nowhere?"

The traces that are disconnected a circled. The text "The traces go nowhere?!" is shown.

Narrator: "I'm confused. What's happening here?"

A glossy gray slide shows the text "What is going on?"

Narrator: "This circle on the chip and silkscreen shape indicates pin 1"

A microscope shot of the damaged pins is shown. It has a circle around the leftmost corner of the chip. The chip has a circle on it and the PCB has a marking on that corner.

The text "This circle and PCB marking indicates pin 1" is shown.

Narrator: "No! This smaller circle and larger marking does!"

A microscope shot from another side of the chip is shown. It has a smaller circle at the corner but a much larger triangle marking on the PCB.

Narrator: "I should have looked at the top pins in the datasheet"

A screenshot of the Ethernet chip datasheet is shown. This time the top pins of the chip are shown.

The text "I should have looked at the top pins in the datasheet" is shown.

Narrator: "These six pins to be specific"

All pins are hidden except for the following:

  • CLKRUNB
  • REQB2
  • GNTB2
  • AVDD
  • RTT3
  • LWAKE

Narrator: "Here's my diagram from before but fixed"

The microscope photo is shown with each of the six pins from before highlighted by name. The title text "REAL broken traces" is shown.

Narrator: "Four traces are not connected"

The text "4 are not connected" is shown under the title.

Narrator: "AVDD is for analog power"

The text "AVDD is for analog power" is shown under the previous text.

Narrator: "LWAKE is for Wake-On-LAN"

The text "LWAKE is for Wake-On-LAN" is shown under the previous text.

Narrator: "So here's my plan for repair"

A microscope shot of the broken traces are shown again. The text "Ethernet repair plan" is shown at the top of the image.

Narrator: "First, add new pads for AVDD and LWAKE"

Orange rectangles are added in place of new pads on top of the microscope shot. The text "First, add new pads" is shown.

Narrator: "Second, cover exposed traces with solder mask"

Parts of the board with exposed copper are colored green. This includes where empty pads are, and on top of new traces to hold them on the board. The text "Second, cover in solder mask" is shown.

Narrator: "Third, re-solder the chip"

Rectangles representing the chip and each of its pins are added, hiding most of the work done on the board. The text "Third, re-solder the chip" is shown.

Narrator: "I'll do that next video"

A black screen is shown with just the text "I'll do that next video"

BIOS flashing[edit | edit source]

Narrator: "I took a months-lang break"

A video of the board on a table is shown. An overhead light brings the room out of darkness. The text "Months later" is shown.

Narrator: "In that time my new BIOS chips had come"

The five BIOS chips I ordered on eBay are visible, taped to a piece of foam on a messy table. The text "New BIOS chips" is shown.

Narrator: "I decided I might as well flash one"

The camera zooms in to the current BIOS flash chip on the board. The text "Time to flash!" is shown.

Narrator: "I removed the old chip while the board was running"

Two hands using two pairs of tweezers pry the BIOS flash chip out of its socket on the board while the machine runs. The text "Removing the old chip" is shown.

Narrator: "Then inserted an empty chip in its place"

Two hands using two pairs of tweezers move the new chip on to the socket then press it fully down to ensure it's fully inserted. The text "Inserting the new chip" is shown.

Narrator: "flashrom managed to write and verify a stock BIOS image fine"

A screen shows the flashing session. It shows text such as:

  • root@geode:/home/jookia# /sbin/flashrom -p internal -w 9375V118.BIN
  • flashrom unknown on Linux 6.1.0-10-686 (i586)
  • Found chipset "AMD CS5536"
  • Found PMC flash chip "Pm49FL004" (512 kB, LPC, FWH)
  • Reading old flash chip contents... done
  • Erasing and writing flash chip... Erase/write done.
  • Verifying flash... VERIFIED.

The text "Flashing stock BIOS" is shown.

Narrator: "But does it boot this image?"

Only the text "Does it boot?" is shown.

Narrator: "Why yes it does!"

A video of a monitor is displayed. It shows a BIOS boot screen containing the following lines:

  • PCM-9375 BIOS V1.18 (07/04/2007)
  • Processor: Geode GX-MMX 500MHz

Narrator: "It even fixed video output?"

Only the text "It even fixed video output?!" is overlaid on the boot screen.

Narrator: "Here's the BIOS screen working"

A video of a monitor is displayed. It shows an AwardBIOS setup screen. Various settings are being scrolled through. The text "BIOS screen works" is shown.

Narrator: "Here's GRUB loading up"

A video of a monitor is displayed. It shows a listing of devices connected to the computer's PCI bus then the text "Welcome to GRUB!". The text "GRUB works" is shown.

After a moment the GRUB boot menu for Debian GNU/Linux loads and displays.

Narrator: "Here's Linux working"

A video of a monitor is displayed. It shows a login shell for Linux dated Sun Jul 16 2023. It shows one detected Ethernet port enp0s16. The text "Linux works" is shown.

Narrator: "Success! Looks like the BIOS was broken!"

A glossy orange slide shows the text "Success! The BIOS was the problem!"

Narrator: "Except now I'm having RAM issues"

A slightly darker glossy orange slide shows the text "Except... Now I'm having RAM errors"

Narrator: "and the working Ethernet port has disappeared from Linux"

A slightly darker glossy orange slide shows the text "...and the working Ethernet port has disappeared from Linux"

Narrator: "And now keys on the right side of the keyboard fail to register presses?"

A glossy orange red slide shows the text "and now keys on the right side of the keyboard fail to register presses?"

Narrator: "The RAM stick also fell out of the machine while it was running"

A glossy light red slide shows the text "The RAM stick also fell out of the machine while it was running..."

Narrator: "The reset button is broken too"

A glossy red slide shows the text "The reset button is broken too"

Narrator: "Looks like another year of debugging! Thanks for watching!"

A glossy blood red slide shows the text "Looks like another year of debugging! Thanks for watching!"

Credits[edit | edit source]

Narrator: "Credits time!"

A glossy grape colored slide shows the text "Credits time!"

Narrator: "Thanks Kdenlive, Audacity and Inkscape for helping me make this video"

A glossy grape colored slide shows the following lines of text:

  • This video made possible using these tools:
  • Kdenlive - Video editing
  • Audacity - Audio editing
  • Inkscape - Graphics drawing

Narrator: "If you like this video, please consider going vegan"

A glossy grape colored slide shows the text "If you liked this video, please consider going Vegan"

Narrator: "This video is dedicated to the public domain using the CC0 license"

A glossy grape colored slide shows the text "This video is dedicated to the public domain using the CC0 license"

Narrator: "For more information on any of this, see the video description"

A glossy grape colored slide shows the text "Questions? Check the video description"

Addendum: Video description[edit | edit source]

Can I fix it? Find out in this video part!

Textual description and video script: https://www.jookia.org/wiki/AMD_Geode/Video_3/Script

Full details on the project: https://www.jookia.org/wiki/AMD_Geode

Go vegan! https://www.vegansociety.com/go-vegan/how-go-vegan

Try Kdenlive, Audacity and Inkscape! https://kdenlive.org/en/ https://www.audacityteam.org/ https://inkscape.org/

This video is published under the CC0: https://creativecommons.org/public-domain/cc0/