PCI AC97 emulation by malc.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3918 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
balrog 2008-01-14 04:27:55 +00:00
parent ca9cc28c62
commit e5c9a13e26
5 changed files with 1382 additions and 2 deletions

9
configure vendored
View File

@ -85,6 +85,7 @@ EXESUF=""
gdbstub="yes"
slirp="yes"
adlib="no"
ac97="no"
oss="no"
dsound="no"
coreaudio="no"
@ -280,6 +281,8 @@ for opt do
;;
--enable-adlib) adlib="yes"
;;
--enable-ac97) ac97="yes"
;;
--disable-kqemu) kqemu="no"
;;
--enable-profiler) profiler="yes"
@ -406,6 +409,7 @@ echo " --disable-sdl disable SDL"
echo " --enable-cocoa enable COCOA (Mac OS X only)"
echo " --enable-mingw32 enable Win32 cross compilation with mingw32"
echo " --enable-adlib enable Adlib emulation"
echo " --enable-ac97 enable AC97 emulation"
echo " --enable-coreaudio enable Coreaudio audio driver"
echo " --enable-alsa enable ALSA audio driver"
echo " --enable-esd enable EsoundD audio driver"
@ -719,6 +723,7 @@ if test "$sdl" != "no" ; then
fi
echo "mingw32 support $mingw32"
echo "Adlib support $adlib"
echo "AC97 support $ac97"
echo "CoreAudio support $coreaudio"
echo "ALSA support $alsa"
echo "EsounD support $esd"
@ -895,6 +900,10 @@ if test "$adlib" = "yes" ; then
echo "CONFIG_ADLIB=yes" >> $config_mak
echo "#define CONFIG_ADLIB 1" >> $config_h
fi
if test "$ac97" = "yes" ; then
echo "CONFIG_AC97=yes" >> $config_mak
echo "#define CONFIG_AC97 1" >> $config_h
fi
if test "$oss" = "yes" ; then
echo "CONFIG_OSS=yes" >> $config_mak
echo "#define CONFIG_OSS 1" >> $config_h

1349
hw/ac97.c Normal file

File diff suppressed because it is too large Load Diff

View File

@ -10,3 +10,5 @@ int Adlib_init (AudioState *s, qemu_irq *pic);
/* gus.c */
int GUS_init (AudioState *s, qemu_irq *pic);
/* ac97.c */
int ac97_init (PCIBus *buf, AudioState *s);

View File

@ -166,6 +166,8 @@ Creative SoundBlaster 16 sound card
@item
ENSONIQ AudioPCI ES1370 sound card
@item
Intel 82801AA AC97 Audio compatible sound card
@item
Adlib(OPL2) - Yamaha YM3812 compatible chip
@item
PCI UHCI USB controller and a virtual USB hub.
@ -173,8 +175,8 @@ PCI UHCI USB controller and a virtual USB hub.
SMP is supported with up to 255 CPUs.
Note that adlib is only available when QEMU was configured with
-enable-adlib
Note that adlib and ac97 are only available when QEMU was configured
with --enable-adlib, --enable-ac97 respectively.
QEMU uses the PC BIOS from the Bochs project and the Plex86/Bochs LGPL
VGA BIOS.
@ -334,10 +336,18 @@ available sound hardware.
@example
qemu -soundhw sb16,adlib hda
qemu -soundhw es1370 hda
qemu -soundhw ac97 hda
qemu -soundhw all hda
qemu -soundhw ?
@end example
Note that Linux's i810_audio OSS kernel (for AC97) module might
require manually specifying clocking.
@example
modprobe i810_audio clocking=48000
@end example
@item -localtime
Set the real time clock to local time (the default is to UTC
time). This option is needed to have correct date in MS-DOS or

10
vl.c
View File

@ -7990,6 +7990,16 @@ struct soundhw soundhw[] = {
},
#endif
#ifdef CONFIG_AC97
{
"ac97",
"Intel 82801AA AC97 Audio",
0,
0,
{ .init_pci = ac97_init }
},
#endif
{
"es1370",
"ENSONIQ AudioPCI ES1370",