Follow us on Google+ Follow us on Facebook Follow us on Twitter

Opened 3 years ago

Last modified 16 months ago

#577 new enhancement

AC'97 Audio driver

Reported by: jvesely Owned by:
Priority: major Milestone:
Component: helenos/drv/other Version: mainline
Keywords: gsoc14, gsoc15, gsoc16, gsoc17 Cc:
Blocker for: Depends on:
See also:

Description (last modified by jermar)

Implement a driver for an audio device compliant with the AC'97 specification pluggable into the HelenOS audio subsystem (Hound).

Details
Although HelenOS has a sound server that can mix output from multiple applications, currently only Sound Blaster 16 and Intel HDA hardware is supported. This former is not practically usable on today's hardware outside of emulators such as QEMU.

The goal of this ticket is to implement a driver for AC'97 class of audio devices that would be pluggable into to the sound subsystem and to the device driver framework implemented in HelenOS. The driver should at least support audio playback on virtual devices emulated in VirtualBox? and QEMU and optionally on actual hardware.

AC'97 devices are simpler than Intel HDA devices. This ticket should be considered an easier alternative to ticket #575. The difficulty can be further scaled down by limiting the scope to a specific AC'97 revision.
Gains and Benefits
Although replaced by the newer Intel HDA standard, the AC'97 devices were the de facto standard in previous generations of sound cards for PC. Implementing a driver for sound output output via Intel HD Audio would allow to use HelenOS sound system on real hardware, improving the user experience and overall usefulness of the system from the end-user point of view.
Difficulty
Medium
Required skills
A successful applicant will have good skills of programming in the C language and the ability to survive in a non-standard non-POSIX environment. Previous experience with driver or sound system implementation would be beneficial, as well as the knowledge of I/O device architecture (PCI, MMIO, DMA).
Documentation
Possible mentors
HelenOS Core Team, Jiri Svoboda

Change History (6)

comment:1 Changed 3 years ago by decky

  • Component changed from helenos/unspecified to helenos/drv/other
  • Description modified (diff)
  • Keywords gsoc14 added
  • Milestone 0.5.1 deleted

comment:2 Changed 2 years ago by jermar

  • Keywords gsoc15 added

comment:3 Changed 2 years ago by jermar

  • Description modified (diff)

comment:4 Changed 18 months ago by svoboda

  • Description modified (diff)

comment:5 Changed 16 months ago by jermar

  • Keywords gsoc16 added

comment:6 Changed 16 months ago by jermar

  • Description modified (diff)
Note: See TracTickets for help on using tickets.