Hi there, I have compiled qemu 0.12.2 on an x64 ubuntu (8.10) and run MusicPal in it with SDL. MusicPal works OK but there is no sound.
I have done essentially the same with qemu 0.11.1. The sound is there (thanks jki for suggesting a previous version). Please find below the configs and logs & contact me if additional info is needed. Cheers, Ondrej 1) qemu-0.12.2 === config === ./configure --enable-mixemu --audio-drv-list="alsa oss sdl esd" --target-list="arm-softmmu" Install prefix /usr/local BIOS directory /usr/local/share/qemu binary directory /usr/local/bin Manual directory /usr/local/share/man ELF interp prefix /usr/gnemul/qemu-%M Source path /home/ondrej/private/musicpal/qemu-0.12.2 C compiler gcc Host C compiler gcc CFLAGS -O2 -g QEMU_CFLAGS -m64 -Wold-style-definition -Wold-style-declaration -I. -I$(SRC_PATH) -U_FORTIFY_SOURCE -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wendif-labels -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing LDFLAGS -Wl,--warn-common -m64 -g make make install install host CPU x86_64 host big endian no target list arm-softmmu tcg debug enabled no gprof enabled no sparse enabled no strip binaries yes profiler no static build no -Werror enabled no SDL support yes curses support yes curl support no check support no mingw32 support no Audio drivers alsa oss sdl esd Extra audio cards ac97 es1370 sb16 Block whitelist Mixer emulation yes VNC TLS support no VNC SASL support no xen support no brlapi support no bluez support no Documentation yes NPTL support yes GUEST_BASE yes PIE user targets no vde support no IO thread no Linux AIO support no Install blobs yes KVM support no fdt support no preadv support no fdatasync yes uuid support no === make and install === === run it === export QEMU_AUDIO_DRV=sdl export SDL_VIDEODRIVER=x11 ##export SDL_AUDIODRIVER= qemu-system-arm -M musicpal -pflash flash.image -kernel u-boot.bin -serial stdio -m 128 -redir tcp:8080::80 -redir tcp:2323::23 __ __ _ _ | \/ | __ _ _ ____ _____| | | | |\/| |/ _` | '__\ \ / / _ \ | | | | | | (_| | | \ V / __/ | | |_| |_|\__,_|_| \_/ \___|_|_| _ _ ____ _ | | | | | __ ) ___ ___ | |_ | | | |___| _ \ / _ \ / _ \| __| | |_| |___| |_) | (_) | (_) | |_ \___/ |____/ \___/ \___/ \__| MARVELL MV88W8618 Rev 0x31 SOC Validation Board. Based on Feroceon Core with ARM926 LE CPU. U-Boot 1.1.1 (Apr 7 2008 - 13:51:47) Marvell Version: Maryland 23 Freecom Version: Nashville 1.47 U-Boot code: 00F00000 -> 00F2B9E0 BSS: -> 00F627CC RAM Configuration: Bank #0: 00000000 32 MB Flash: 8 MB No environment found on flash, using default. In: serial Out: serial Err: serial Waiting for USB connection USB not connected Net: Please wait, this takes a while... ethernetPhyInit at 0 Port LINK FAILS, Check line connection eth0 [PRIME] No mac address set, using random mac address 00:01:DB:FF:68:56. Hit any key to stop autoboot: 0 JFFS2 loading 'uImage' to 0x400000 Scanning JFFS2 FS: .......... done. JFFS2 load complete: 1203756 bytes loaded to 0x400000 Booting image at 00400000 ... Image Name: Linux-2.6.16.16-88w8xx8 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1203692 Bytes = 1.1 MB Load Address: 00008000 Entry Point: 00008000 Verifying Checksum ... OK OK Starting kernel... Uncompressing Linux................................................................................... done, booting the kernel. Linux version 2.6.16.16-88w8xx8 (r...@freecom.com) (gcc version 3.3.3 (DENX ELDK 3.1.1 3.3.3-9)) #393 PREEMPT Thu Apr 3 05:56:25 UTC 2008 CPU: ARM926EJ-Sid(wb) [41069265] revision 5 (ARMv5TEJ) Machine: MV88W8618-HS35 Using U-Boot release 1.1.1.23 Memory policy: ECC disabled, Data cache writeback CPU0: D VIVT write-through cache CPU0: I cache: 4096 bytes, associativity 4, 32 byte lines, 32 sets CPU0: D cache: 65536 bytes, associativity 4, 32 byte lines, 512 sets Built 1 zonelists Kernel command line: console=ttyS0,38400 root=/dev/mtdblock0 ro rootfstype=jffs2 ethaddr=00:01:DB:FF:68:56 PID hash table entries: 256 (order: 8, 4096 bytes) Console: colour dummy device 80x30 Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) Inode-cache hash table entries: 4096 (order: 2, 16384 bytes) Memory: 32MB = 32MB total Memory: 29268KB available (2100K code, 911K data, 92K init) Mount-cache hash table entries: 512 CPU: Testing write buffer coherency: ok NET: Registered protocol family 16 Reserved 64 pages (page size 4096) starting from c03c0000 for WLAN buffer pool audio_init, major is 254 ... audio set to DMA mode fc000000 fc001000 2048 Rx c0000000 0 0 Marvell USB EHCI Host controller SCSI subsystem initialized usbcore: registered new driver usbfs usbcore: registered new driver hub Successfully initialized LCD driver mvlcd_init: Successfully allocated a page for video memory. mvlcd_init: Successfully allocated frame buffer data structures. Successfully added lcd driver major 253 mvlcd_init: Successfully created proc. knobcon: major number 252 mv88w8xx8_knobcon_init : Assigned IRQ 12 to knobcon device. Dynamic Power Management for MV8618. audit: initializing netlink socket (disabled) audit(943920000.970:1): initialized NTFS driver 2.1.26 [Flags: R/O]. JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc. Initializing Cryptographic API io scheduler noop registered io scheduler anticipatory registered (default) io scheduler deadline registered io scheduler cfq registered Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled serial8250: ttyS0 at MMIO 0xf800c840 (irq = 11) is a 16550 RAMDISK driver initialized: 2 RAM disks of 4096K size 1024 blocksize loop: loaded (max 8 devices) PHY found at addr 1, ID 1410e20, mii_status c PHY is 88E3015 eth0: mv88w8xx8 FEC @ 80008000, 00:01:db:ff:68:56 irq 9 Found: SST 39VF6401B mv88w8xx8 flash: Found 1x16 devices at 0x0 in 16-bit bank number of JEDEC chips: 1 cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness. Creating 4 MTD partitions on "mv88w8xx8 flash": 0x00000000-0x00740000 : "LINUX_ROOT_FS" 0x00740000-0x007a0000 : "LINUX_HOME_FS" 0x007a0000-0x007b0000 : "LINUX_MANCONF" 0x007b0000-0x00800000 : "U-BOOT" usbmon: debugfs is not available Loading ehci-mv88w8xx8 Inside ehci_mv88w8xx8_probe ehci-mv88w8xx8 ehci-mv88w8xx8.1436: EHCI Host Controller ehci-mv88w8xx8 ehci-mv88w8xx8.1436: new USB bus registered, assigned bus number 1 ehci-mv88w8xx8 ehci-mv88w8xx8.1436: irq 8, io mem 0xf8000100 ehci-mv88w8xx8 ehci-mv88w8xx8.1436: USB 0.0 started, EHCI 0.00, driver 10 Dec 2004 usb usb1: configuration #1 chosen from 1 choice hub 1-0:1.0: USB hub found hub 1-0:1.0: 0 ports detected Initializing USB Mass Storage driver... usbcore: registered new driver usb-storage USB Mass Storage support registered. NET: Registered protocol family 2 IP route cache hash table entries: 512 (order: -1, 2048 bytes) TCP established hash table entries: 2048 (order: 1, 8192 bytes) TCP bind hash table entries: 2048 (order: 1, 8192 bytes) TCP: Hash tables configured (established 2048 bind 2048) TCP reno registered TCP bic registered NET: Registered protocol family 1 NET: Registered protocol family 17 VFS: Mounted root (jffs2 filesystem) readonly. Freeing init memory: 92K Mounting home file system: [ OK ] jffs2_scan_eraseblock(): Node at 0x0005fae0 {0x1985, 0xe001, 0x0000002f) has invalid CRC 0xc0021985 (calculated 0xf244f9b1) jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0005fae4: 0x002f instead Initializing random number generator: [ OK ] Setting hostname MusicPal: [ OK ] Loading WLAN driver: [ OK ] Checking LAN 00:01:DB:FF:68:56 and WLAN 00:23:68:90:7C:D6 [ OK ] Swapping MAC addresses [ OK ] Starting show_logo: [ OK ] Starting networking: [ OK ] Starting wlan: [ OK ] Starting mainapp: [ OK ] Starting http: [ OK ] Starting start_ifplugd: [ OK ] upd_init: Update time: 5. day at 17:32. [6812] player_list_build: pszUrl: /usr/share/startup.mp3. Starting system logger: Starting kernel logger: [ OK ] Starting finding: [ OK ] Starting croninit: [ OK ] Starting watching: [ OK ] / $ 2) qemu-0.11.1 (sound works. Note that the kernel is complaining about audio, lines "audio: Failed to create ..." but the sound is OK, both welcome sound & radio stations sound) === config === ./configure --enable-mixemu --audio-drv-list="alsa oss sdl esd" --target-list="arm-softmmu" Install prefix /usr/local BIOS directory /usr/local/share/qemu binary directory /usr/local/bin Manual directory /usr/local/share/man ELF interp prefix /usr/gnemul/qemu-%M Source path /home/ondrej/private/musicpal/qemu-0.11.1 C compiler gcc Host C compiler gcc ARCH_CFLAGS -m64 make make install install host CPU x86_64 host big endian no target list arm-softmmu tcg debug enabled no gprof enabled no sparse enabled no strip binaries yes profiler no static build no -Werror enabled no SDL support yes SDL static link yes curses support yes curl support no mingw32 support no Audio drivers alsa oss sdl esd Extra audio cards ac97 es1370 sb16 Mixer emulation yes VNC TLS support no VNC SASL support no kqemu support yes xen support no brlapi support no Documentation yes NPTL support yes vde support no AIO support yes IO thread no Install blobs yes KVM support no - (#error Missing KVM capability KVM_CAP_DESTROY_MEMORY_REGION_WORKS) NOTE: To enable KVM support, update your kernel to 2.6.29+ or install recent kvm-kmod from http://sourceforge.net/projects/kvm. fdt support no preadv support no === make and install === === run ==== export QEMU_AUDIO_DRV=sdl export SDL_VIDEODRIVER=x11 ##export SDL_AUDIODRIVER= qemu-system-arm -M musicpal -pflash flash.image -kernel u-boot.bin -serial stdio -m 128 -redir tcp:8080::80 -redir tcp:2323::23 __ __ _ _ | \/ | __ _ _ ____ _____| | | | |\/| |/ _` | '__\ \ / / _ \ | | | | | | (_| | | \ V / __/ | | |_| |_|\__,_|_| \_/ \___|_|_| _ _ ____ _ | | | | | __ ) ___ ___ | |_ | | | |___| _ \ / _ \ / _ \| __| | |_| |___| |_) | (_) | (_) | |_ \___/ |____/ \___/ \___/ \__| MARVELL MV88W8618 Rev 0x31 SOC Validation Board. Based on Feroceon Core with ARM926 LE CPU. U-Boot 1.1.1 (Apr 7 2008 - 13:51:47) Marvell Version: Maryland 23 Freecom Version: Nashville 1.47 U-Boot code: 00F00000 -> 00F2B9E0 BSS: -> 00F627CC RAM Configuration: Bank #0: 00000000 32 MB Flash: 8 MB No environment found on flash, using default. In: serial Out: serial Err: serial Waiting for USB connection USB not connected Net: Please wait, this takes a while... ethernetPhyInit at 0 Port LINK FAILS, Check line connection eth0 [PRIME] No mac address set, using random mac address 00:01:DB:FF:01:7F. Hit any key to stop autoboot: 0 JFFS2 loading 'uImage' to 0x400000 Scanning JFFS2 FS: .......... done. JFFS2 load complete: 1203756 bytes loaded to 0x400000 Booting image at 00400000 ... Image Name: Linux-2.6.16.16-88w8xx8 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1203692 Bytes = 1.1 MB Load Address: 00008000 Entry Point: 00008000 Verifying Checksum ... OK OK Starting kernel... Uncompressing Linux................................................................................... done, booting the kernel. audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' Linux version 2.6.16.16-88w8xx8 (r...@freecom.com) (gcc version 3.3.3 (DENX ELDK 3.1.1 3.3.3-9)) #393 PREEMPT Thu Apr 3 05:56:25 UTC 2008 CPU: ARM926EJ-Sid(wb) [41069265] revision 5 (ARMv5TEJ) Machine: MV88W8618-HS35 Using U-Boot release 1.1.1.23 Memory policy: ECC disabled, Data cache writeback CPU0: D VIVT write-through cache CPU0: I cache: 4096 bytes, associativity 4, 32 byte lines, 32 sets CPU0: D cache: 65536 bytes, associativity 4, 32 byte lines, 512 sets Built 1 zonelists Kernel command line: console=ttyS0,38400 root=/dev/mtdblock0 ro rootfstype=jffs2 ethaddr=00:01:DB:FF:01:7F PID hash table entries: 256 (order: 8, 4096 bytes) Console: colour dummy device 80x30 Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) Inode-cache hash table entries: 4096 (order: 2, 16384 bytes) Memory: 32MB = 32MB total Memory: 29268KB available (2100K code, 911K data, 92K init) Mount-cache hash table entries: 512 CPU: Testing write buffer coherency: ok NET: Registered protocol family 16 Reserved 64 pages (page size 4096) starting from c03c0000 for WLAN buffer pool audio_init, major is 254 ... audio set to DMA mode fc000000 fc001000 2048 Rx c0000000 0 0 Marvell USB EHCI Host controller SCSI subsystem initialized usbcore: registered new driver usbfs usbcore: registered new driver hub Successfully initialized LCD driver mvlcd_init: Successfully allocated a page for video memory. mvlcd_init: Successfully allocated frame buffer data structures. Successfully added lcd driver major 253 mvlcd_init: Successfully created proc. knobcon: major number 252 mv88w8xx8_knobcon_init : Assigned IRQ 12 to knobcon device. Dynamic Power Management for MV8618. audit: initializing netlink socket (disabled) audit(943920001.050:1): initialized NTFS driver 2.1.26 [Flags: R/O]. JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc. Initializing Cryptographic API io scheduler noop registered io scheduler anticipatory registered (default) io scheduler deadline registered io scheduler cfq registered Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled serial8250: ttyS0 at MMIO 0xf800c840 (irq = 11) is a 16550 RAMDISK driver initialized: 2 RAM disks of 4096K size 1024 blocksize loop: loaded (max 8 devices) PHY found at addr 1, ID 1410e20, mii_status c PHY is 88E3015 eth0: mv88w8xx8 FEC @ 80008000, 00:01:db:ff:01:7f irq 9 Found: SST 39VF6401B mv88w8xx8 flash: Found 1x16 devices at 0x0 in 16-bit bank number of JEDEC chips: 1 cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness. Creating 4 MTD partitions on "mv88w8xx8 flash": 0x00000000-0x00740000 : "LINUX_ROOT_FS" 0x00740000-0x007a0000 : "LINUX_HOME_FS" 0x007a0000-0x007b0000 : "LINUX_MANCONF" 0x007b0000-0x00800000 : "U-BOOT" usbmon: debugfs is not available Loading ehci-mv88w8xx8 Inside ehci_mv88w8xx8_probe ehci-mv88w8xx8 ehci-mv88w8xx8.1436: EHCI Host Controller ehci-mv88w8xx8 ehci-mv88w8xx8.1436: new USB bus registered, assigned bus number 1 ehci-mv88w8xx8 ehci-mv88w8xx8.1436: irq 8, io mem 0xf8000100 ehci-mv88w8xx8 ehci-mv88w8xx8.1436: USB 0.0 started, EHCI 0.00, driver 10 Dec 2004 usb usb1: configuration #1 chosen from 1 choice hub 1-0:1.0: USB hub found hub 1-0:1.0: 0 ports detected Initializing USB Mass Storage driver... usbcore: registered new driver usb-storage USB Mass Storage support registered. NET: Registered protocol family 2 IP route cache hash table entries: 512 (order: -1, 2048 bytes) TCP established hash table entries: 2048 (order: 1, 8192 bytes) TCP bind hash table entries: 2048 (order: 1, 8192 bytes) TCP: Hash tables configured (established 2048 bind 2048) TCP reno registered TCP bic registered NET: Registered protocol family 1 NET: Registered protocol family 17 VFS: Mounted root (jffs2 filesystem) readonly. Freeing init memory: 92K Mounting home file system: [ OK ] jffs2_scan_eraseblock(): Node at 0x0005fae0 {0x1985, 0xe001, 0x0000002f) has invalid CRC 0xc0021985 (calculated 0xf244f9b1) jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0005fae4: 0x002f instead Initializing random number generator: [ OK ] Setting hostname MusicPal: [ OK ] Loading WLAN driver: [ OK ] Checking LAN 00:01:DB:FF:01:7F and WLAN 00:C5:C4:AB:22:19 [ OK ] Swapping MAC addresses [ OK ] Starting show_logo: [ OK ] Starting networking: [ OK ] Starting wlan: [ OK ] Starting mainapp: [ OK ] Starting http: [ OK ] Starting start_ifplugd:audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' [ OK ] upd_init: Update time: 3. day at 20:50. [4130] player_list_build: pszUrl: /usr/share/startup.mp3. audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' Starting system logger: Starting kernel logger: [ OK ] Starting finding:audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' audio: Failed to create voice `wm8750.input1' audio: Failed to create voice `wm8750.input2' audio: Failed to create voice `wm8750.input3' [ OK ] Starting croninit: [ OK ] Starting watching: [ OK ] / $