Skip to content

wii - char driver for gba / joybus devices#81

Open
gummybuns wants to merge 10000 commits into
NetBSD:trunkfrom
gummybuns:wii-identify
Open

wii - char driver for gba / joybus devices#81
gummybuns wants to merge 10000 commits into
NetBSD:trunkfrom
gummybuns:wii-identify

Conversation

@gummybuns

@gummybuns gummybuns commented May 29, 2026

Copy link
Copy Markdown

Overview

  • Adds /dev/gcport* char drivers to the nintendo wii to support additional devices on the gamecube controller ports.
  • dynamically identifies gamecube controller attach / detach events through the hardware interrupt
    Working example of it can be found here

changes

  • creates a driver hierarchy: si -> gcport -> uhid. uhid is only used if a gamecube controller is identified
  • moves the register definitions out of si.c into si.h
  • implements a queue for interfacing with sicomcsr
  • always poll all four channels. use the interrupt to identify if an attach/detach event.
  • use the hardware interrupt to identify tcint events. dequeue transactions upon completion
  • adds the child driver gcport_si.c with an ioctl command to leverage the serial communication
  • adds workqueue to attach/detach uhid. uhid match function checks if the physical device is a gamecube controller
  • adds /dev/gcport* as a device parent to uhid

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.