Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the board
Thread view  Mix view  Order
RayeR

Homepage

CZ,
02.09.2026, 17:56
 

USB XHCI opensource driver for Win98/2k (Announce)

Interesting how old Win9x still receives better and better support recently (NVME and HDA driver, GPT support, modern CPU patches...) and now it gets USB 3.0 XHCI: https://github.com/yeokm1/xhci98
Maybe it could be used as starting point to upgrade USB drivers also for DOS...

---
DOS gives me freedom to unlimited HW access.

Japheth

Homepage

Germany (South),
04.09.2026, 13:57

@ RayeR

USB XHCI opensource driver for Win98/2k

> Maybe it could be used as starting point to upgrade USB drivers also for
> DOS...

If it were a VxD it could perhaps "easily" be ported to a Jemm JLM. But it's a WDM and - more severe - it depends on another driver ( usbport.sys ); IMO this makes it uninteresting for DOS.

---
MS-DOS forever!

RayeR

Homepage

CZ,
07.09.2026, 20:05

@ Japheth

USB XHCI opensource driver for Win98/2k

Yes, I read project full info later and it is only the low level part of usb stack handling the xhci specific hw. But maybe still usefull to combine in Bret's dos usb driver...

---
DOS gives me freedom to unlimited HW access.

RayeR

Homepage

CZ,
08.09.2026, 06:18

@ RayeR

USB XHCI opensource driver for Win98/2k

BTW the driver package also contains a small DOS utility XHCIQUAL.EXE that probes for XHCI and checks if it's usable and print some interesting info:

XHCIQUAL 1.0.0.1 (build Sep  2 2026 22:52:22) - Win98/Win2000 USB qualification
Mode: FULL (active bring-up tests)
Families: xHCI
Found 1 selected USB host controller(s).

Running active tests on xHCI 1106:3483...
  C1 handoff: PASS  BIOS released in <= 0 ms
  C2 reset:   PASS  HCRST+CNR in 1 ms
  C3 DMA:     PASS  No-Op completion in 1 ms
  C4 IRQ:     PASS  one-shot ISR fired on IRQ 3 (level per ELCR) (ISR count 1)
  C6: port 1 connect (PORTSC=400202E1), resetting...
  C6: port 1 reset ok in 1 ms, High-Speed (480 Mb/s)
  C6 ports:   PASS  1 connect(s), 1 reset(s) ok, 2 port event(s)
  C8: port 1 slot 1 addr 1: 2109:3431 "USB2.0 Hub"

==== Controller 03:00.0 - 1106:3483 rev 01 ====
  quirks: none known for this VID/DID
  PCI: cmd=0006 (MSE=1 BME=1 INTxDis=0)  pin=INTA#  line=IRQ 3
  PCI subsys: 1106:3483
  PCI caps: PM=1 MSI=1(en=0) MSI-X=0 PCIe=1
  PCI PM: v3  state=D0  D1=0 D2=0  PME_En=0 PME_Status=0
    PME_Support: D0, D3cold
    NoSoftRst=0 - resets on D3hot->D0; resume must reinitialise
-- More -- (any key, ESC = no more pauses) --
                                             
    flags: DSI=0 PMEClk=0  Aux=375mA
    raw: PMC=89C3 PMCSR=0000
  BAR0: FBDFF000 64-bit (raw lo=FBDFF004 hi=00000000)
  HCIVERSION 1.00  CAPLENGTH 32  ContextSize 32  AC64=1  PPC=1
  MaxSlots 32  MaxIntrs 4  MaxPorts 5  Scratchpad 31  PAGESIZE 00000001
  HCCPARAMS2 00000000  FSC=0 U3C=0 CMC=0  (FSC=0: suspend/resume re-enumerates)
  USBLEGSUP: present
  Protocol USB 2.0: ports 1-1, slot type 0, PSIC 1
  Protocol USB 3.0: ports 2-5, slot type 0, PSIC 1
  Port map:
    port  1: USB2-only (managed)
    port  2: USB3 orphan (unmanaged)
    port  3: USB3 orphan (unmanaged)
    port  4: USB3 orphan (unmanaged)
    port  5: USB3 orphan (unmanaged)
  --- Tier C results ---
  C1 handoff:  PASS  BIOS released in <= 0 ms
  C2 reset:    PASS  HCRST+CNR in 1 ms
  C3 DMA:      PASS  No-Op completion in 1 ms
  C4 IRQ:      PASS  one-shot ISR fired on IRQ 3 (level per ELCR) (ISR count 1)
  C6 ports:    PASS  1 connect(s), 1 reset(s) ok, 2 port event(s)
  C8 devices:  PASS  1 of 1 device(s) identified (informational)
    port  1: 2109:3431 rev 4.20  USB 2.10  High-Speed (480 Mb/s)  addr 1  MPS0 6-- More -- (any key, ESC = no more pauses) --
                                             
4
             class 09/00/01 (Hub)  1 iface(s), first 09/00/00 (Hub)
             "" "USB2.0 Hub"
  FACT id=1106:3483 rev=01 bar=FBDFF000 irq=3 pin=1 hciver=0100 csz=32 ac64=1 ppc=1 slots=32 intrs=4 ports=5 scratch=31 usb2ports=1 legsup=1 hcc2=00000000 fsc=0
  DEV port=1 speed=3 vid=2109 pid=3431 class=09.00.01 iface=09.00.00 mps0=64

---- Verdict for 1106:3483 ----
  ==> CONTROLLER QUALIFIED for cross-target driver development

---
DOS gives me freedom to unlimited HW access.

Back to the board
Thread view  Mix view  Order
23602 Postings in 2238 Threads, 410 registered users (0 online)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum