https://ninkilim.com/articles/rtl9210_usb_to_nvme_bridge/da.html
Home | Articles | Postings | Weather | Top | Trending | Status
Login
Arabic: HTML, MD, MP3, PDF, TXT, Czech: HTML, MD, MP3, PDF, TXT, Danish: HTML, MD, MP3, PDF, TXT, German: HTML, MD, MP3, PDF, TXT, English: HTML, MD, MP3, PDF, TXT, Spanish: HTML, MD, MP3, PDF, TXT, Persian: HTML, MD, PDF, TXT, Finnish: HTML, MD, MP3, PDF, TXT, French: HTML, MD, MP3, PDF, TXT, Hebrew: HTML, MD, PDF, TXT, Hindi: HTML, MD, MP3, PDF, TXT, Indonesian: HTML, MD, PDF, TXT, Icelandic: HTML, MD, MP3, PDF, TXT, Italian: HTML, MD, MP3, PDF, TXT, Japanese: HTML, MD, MP3, PDF, TXT, Dutch: HTML, MD, MP3, PDF, TXT, Polish: HTML, MD, MP3, PDF, TXT, Portuguese: HTML, MD, MP3, PDF, TXT, Russian: HTML, MD, MP3, PDF, TXT, Swedish: HTML, MD, MP3, PDF, TXT, Thai: HTML, MD, PDF, TXT, Turkish: HTML, MD, MP3, PDF, TXT, Urdu: HTML, MD, PDF, TXT, Chinese: HTML, MD, MP3, PDF, TXT,

Linux og Realtek RTL9210 USB til NVMe-bro

Resumé:Symptomer: Gentagne USB-nulstillinger, I/O-fejl eller diske, der forsvinder under Linux. • Berørte: Realtek RTL9210 (bekræftet) og RTL9220 (muligvis). • Årsag: Tilbagefald til intern ROM (f0.01) efter fejl i tjeksum. • Påvirkning: Permanent ustabilitet, ingen Linux-værktøjer til genindlæsning tilgængelige. • Løsning: Kun OEM Windows-værktøjer kan gendanne firmwaren – Realtek blokerer open source-alternativer.

Forord

I år 2025 burde det være helt rimeligt at starte en Raspberry Pi fra en SSD forbundet via USB. Men takket være finurlighederne i Realteks firmware er dette rimelige mål blevet et eventyr. Efter måneder med uforklarlig ustabilitet – tilfældige nulstillinger, forsvindende diske, korrupte filsystemer – udtømte forfatteren alle almindelige rettelser: nye kabler, strømforsynede hubs, kerneopdateringer, USB-justeringer og firmware-finjustering. Gennembruddet kom først, da ChatGPT svarede på et mærkeligt spørgsmål sent om natten: „Er det muligt, at USB-til-NVMe-broen er vendt tilbage til en gammel firmware?“

Introduktion

Hvis din Realtek-baserede NVMe-kabinet pludselig bliver ustabil efter ugers fejlfri drift – gentagne USB-nulstillinger, I/O-fejl eller forsvindende diske – er du ikke alene. Mønsteret er opstået på tværs af flere mærker, fra ukendte enheder til velkendte OEM’er som Sabrent og Orico. Fællesnævneren: Realteks RTL9210 og muligvis RTL9220 USB-til-NVMe-bro-chips.

I starten fungerer alt. Men tilsyneladende uden årsag begynder enheden at afbryde under belastning eller ved længerevarende brug, især på Linux- eller Raspberry Pi-systemer. Den sande årsag er ikke SSD’en eller strømforsyningen – det er selve firmwaren, der stille vender tilbage til sin ROM-indlejrede reservekode, en version, som Realtek stadig leverer internt som f0.01.

Den skjulte mekanisme – Firmware-tilbagefald ved design

Realteks bro-chips gemmer deres driftsfirmware og konfigurationsdata i en ekstern SPI-flash. Ved opstart tjekker controlleren en simpel tjeksum. Hvis tjeksumen ikke stemmer, nægter den at indlæse den eksterne firmware og starter i stedet fra sin interne ROM.

Denne reserve-firmware er gammel og defekt. Den mangler flere USB-stabilitetsrettelser og forbedringer i link-tilstandsstyring, der findes i senere revisioner, hvilket fører til den klassiske sekvens, som enhver Linux-bruger genkender:

usb 3-2: nulstil højhastigheds-USB-enhed nummer 2 ved hjælp af xhci-hcd
usb 3-2: enhedsbeskrivelse læs/64, fejl -71
EXT4-fs advarsel (enhed sda2): I/O-fejl ved skrivning til inode …

Tjeksumen kan blive ugyldig, når konfigurationsdata omskrives – for eksempel når broen opdaterer sine strømstyrings- eller UAS-indstillinger – og enheden mister strøm midt i skrivningen. Næste opstart registrerer en korrupt tjeksum og falder permanent tilbage til ROM-firmwaren.

På det tidspunkt opfører dit „højtydende NVMe-kabinet“ sig præcis som det billigste ukendte kabinet, fordi det internt nu kører den samme fejlbehæftede basiskode, der er brændt ind i silicium.

Verificering af problemet

Du kan nemt bekræfte denne tilstand under Linux:

lsusb -v | grep -A2 Realtek

En sund Realtek-bro rapporterer en firmware-revision (bcdDevice) over 1.00. En tilbagefaldet viser:

bcdDevice f0.01

Denne f0.01-signatur betyder, at controlleren starter fra ROM – og ingen mængde af frakobling, omformatering eller kernejustering vil løse det.

Denne tilbagefaldsmekanisme er bekræftet på RTL9210. RTL9220 ser ud til at dele den samme designarkitektur og firmware-layout, så den kan udvise identisk adfærd, men dette er sandsynligt snarere end bevist.

Hvorfor du ikke kan reparere det selv

I princippet er løsningen enkel: genindlæs den korrekte firmware til SPI. I praksis gør Realtek dette umuligt.

Virksomheden leverer en lukket kildekode-opdatering til Windows til OEM’er og integratorer. Linux-brugere tilbydes intet. Fællesskabsudviklere reverse-engineerede kompatible flash-værktøjer (rtsupdater, rtl9210fw, rtsupdater-cli), som tillod fuld firmware-gendannelse fra Linux-systemer – indtil Realtek udstedte DMCA-nedtagelsesmeddelelser for at undertrykke dem.

Der er ingen plausibel begrundelse for intellektuel ejendom til at blokere sådanne værktøjer: de afslører ikke mikrokode, kun orkestrerer opdateringssekvensen over USB. Realteks nedtagelser handlede ikke om beskyttelse. De var ideologiske.

Prisen for en ideologi

Dette handler ikke om open source-idealisme. Det handler om en hardwareleverandørs ideologiske fjendtlighed over for åbne systemer, der ødelægger enheder, der markedsføres som Linux-kompatible.

Realteks modstand mod dokumentation og åbne værktøjer har varet i to årtier, spændende over Wi-Fi, Ethernet, lyd og nu lagringscontrollere. Denne isolationisme kan gå ubemærket hen i en verden kun med Windows, men bliver giftig, når de samme chips integreres i produkter til flere platforme som Sabrent EC-SNVE, der åbent viser Linux-logoet på sin emballage.

Ved at forbyde Linux-flashværktøjer og blokere fællesskabsvedligeholdelse har Realtek effektivt kriminaliseret selv-reparation. Konsekvenserne spreder sig udad:

I sidste ende er det ikke open source, der ødelægger Realteks enheder – det er Realteks fjendtlighed over for open source, der ødelægger dem.

En rationel vej frem

Løsningen kræver ingen ideologisk ændring, kun pragmatisme. Realtek kunne:

  1. Udgive en leverandørunderskrevet kommandolinje-opdatering til Linux (ingen kildekode-åbenhed nødvendig).
  2. Offentliggøre tjeksum-algoritmen, så integratorer sikkert kan validere flash-billeder.
  3. Udrulle en DFU-lignende tilstand, der accepterer opdateringer over USB Mass Storage, uafhængigt af OS.

Hver af disse ville forhindre garantinomkostninger, beskytte OEM-relationer og genoprette tilliden til Realteks bro-chips blandt professionelle Linux-brugere – fra arbejdsstationsbyggere til Raspberry Pi-udviklere.

Hvad du kan gøre

Hvis du mistænker, at dit kabinet er vendt tilbage til ROM-firmware:

Realteks firmware-politik generer ikke kun entusiaster; den skaber håndgribelige økonomiske tab for deres eget økosystem. Jo hurtigere denne virkelighed anerkendes i virksomheden, jo hurtigere kan både Linux-brugere og OEM-partnere stoppe med at spilde tid på unødvendige RMA-cyklusser.

Producenternes svar

Både Realtek og Sabrent blev inviteret til at give udtalelser om tilbagefaldsproblemet med firmwaren beskrevet ovenfor. Deres svar – hvis de modtages – vil blive tilføjet her.

Tillæg – Identifikation af berørte enheder

Controller Leverandør-ID Produkt-ID Noter Status
RTL9210 0x0bda 0x9210 USB 3.1 Gen 2 10 Gb/s bro Bekræftet tilbagefaldsadfærd
RTL9220 0x0bda 0x9220 USB 3.2 Gen 2×2 20 Gb/s bro Mulig, lignende arkitektur

Firmware-tilbagefaldssignatur: bcdDevice f0.01
Kendte stabile revisioner: 1.231.31

Impressions: 24