Opened 16 years ago

Closed 15 years ago

Last modified 15 years ago

#25 closed enhancement (fixed)

VIA-CUDA keyboard driver is incomplete and missing in user space

Reported by: Martin Decky Owned by: Jiri Svoboda
Priority: major Milestone: 0.4.2
Component: helenos/unspecified Version: mainline
Keywords: Cc:
Blocker for: Depends on:
See also:

Description

There is no support for VIA-CUDA keyboard controller in user space.

Change History (8)

comment:1 by Martin Decky, 16 years ago

Milestone: 0.4.1
Status: newaccepted
Summary: VIA-CUDA keyboard driver is missing in user spaceVIA-CUDA keyboard driver is incomplete and missing in user space

comment:2 by Jiri Svoboda, 15 years ago

Component: unspecified
Owner: changed from Martin Decky to Jiri Svoboda
Status: acceptedassigned

I am working on this.

comment:3 by Jiri Svoboda, 15 years ago

In r4610 I added a new VIA-CUDA keyboard kernel driver. It works fine in PearPC (without the bug that caused keyboard to get stuck when autorepeat kicked in, which was in the previous driver). Qemu also provides a VIA-CUDA ADB keyboard, but it does not work yet (probably the Qemu implementation is more realistic). Therefore it most probably won't work on real hardware yet, either. Also note that to actually test it in PearPC you need to make sure you can get to the kernel console (since there is no userspace driver).

Next I will try two things: (1) implement the user-space driver and (2) make it work in Qemu.

comment:4 by Jiri Svoboda, 15 years ago

In r4626 I rewrote the driver to use per-byte interrupts, which involved rewriting the interrupt handler to a state-machine format. In r4637 I added the transmission half of the state machine, which is used to enable autopolling on the CUDA. (In PearPC the firmware enables it, in Qemu it does not).

Now the kernel driver works both in PearPC and Qemu -M g3beige. To make it work with -M mac99 we need to implement a driver for OpenPIC in order to enable interrupts from the VIA.

comment:5 by Jakub Jermář, 15 years ago

Milestone: 0.4.10.5.0

comment:6 by Jiri Svoboda, 15 years ago

Resolution: fixed
Status: assignedclosed

In changeset:head,235 a userspace ADB driver, ADB keyboard and mouse drivers were merged. While far from perfect, this brings working keyboard and mouse to qemu-system-ppc -Mg3beige. For qemu-system-ppc -Mmac99 we need a driver for OpenPIC. The driver currently does not work properly in PearPC.

comment:7 by Jiri Svoboda, 15 years ago

For OpenPIC support see ticket #177, for PearPC support see ticket #178.

comment:8 by Jakub Jermář, 15 years ago

Milestone: 0.5.00.4.2
Note: See TracTickets for help on using tickets.