diff options
author | nox <nox@FreeBSD.org> | 2011-09-17 03:17:12 +0800 |
---|---|---|
committer | nox <nox@FreeBSD.org> | 2011-09-17 03:17:12 +0800 |
commit | 8f9dfb1f609c764dcf8ae4de9d5ec809f8800ee8 (patch) | |
tree | c08ea06f4b38fdbe18765fa8bfcfc7498f9f23ec /emulators/qemu-devel | |
parent | 80cf956ec263f7be8ae13f5bbb24bfb8ac3c84b4 (diff) | |
download | freebsd-ports-gnome-8f9dfb1f609c764dcf8ae4de9d5ec809f8800ee8.tar.gz freebsd-ports-gnome-8f9dfb1f609c764dcf8ae4de9d5ec809f8800ee8.tar.zst freebsd-ports-gnome-8f9dfb1f609c764dcf8ae4de9d5ec809f8800ee8.zip |
- Add ahci emulation fix for FreeBSD guests. [1]
- Add OPTION to build a seabios git snapshot that add ahci boot disk
emulation. [2]
- Bump PORTREVISION.
Submitted by: avg [1]
Suggested by: avg [2]
Diffstat (limited to 'emulators/qemu-devel')
-rw-r--r-- | emulators/qemu-devel/Makefile | 6 | ||||
-rw-r--r-- | emulators/qemu-devel/files/patch-hw-ide-ahci.c | 31 | ||||
-rw-r--r-- | emulators/qemu-devel/pkg-plist | 2 |
3 files changed, 38 insertions, 1 deletions
diff --git a/emulators/qemu-devel/Makefile b/emulators/qemu-devel/Makefile index 827c3191eac7..038d2c0e795a 100644 --- a/emulators/qemu-devel/Makefile +++ b/emulators/qemu-devel/Makefile @@ -7,6 +7,7 @@ PORTNAME= qemu PORTVERSION= 0.15.0 +PORTREVISION= 1 CATEGORIES= emulators MASTER_SITES= SAVANNAH:release \ http://wiki.qemu.org/download/:release \ @@ -44,6 +45,7 @@ OPTIONS= SAMBA "samba dependency (for -smb)" Off \ CURL "libcurl dependency (remote images)" On \ CDROM_DMA "IDE CDROM DMA" On \ PCAP "pcap dependency (networking with bpf)" On \ + SEABIOS_GIT "add seabios snapshot (-bios seabios-devel.bin)" On \ USBREDIR "usb device network redirection (experimental!)" Off \ GNS3 "gns3 patches (udp, promiscuous multicast)" Off \ ADD_AUDIO "Emulate more audio hardware (experimental!)" Off \ @@ -133,6 +135,10 @@ CONFIGURE_ARGS+= --audio-card-list=ac97,es1370,sb16,cs4231a,adlib,gus,hda RUN_DEPENDS+= ${LOCALBASE}/sbin/smbd:${PORTSDIR}/net/samba35 .endif +.if defined(WITH_SEABIOS_GIT) +RUN_DEPENDS+= ${LOCALBASE}/share/qemu/seabios-devel.bin:${PORTSDIR}/emulators/seabios-devel +.endif + .if defined(NOPORTDOCS) MAKE_ARGS+= NOPORTDOCS=${NOPORTDOCS} .else diff --git a/emulators/qemu-devel/files/patch-hw-ide-ahci.c b/emulators/qemu-devel/files/patch-hw-ide-ahci.c new file mode 100644 index 000000000000..4b539d5e711a --- /dev/null +++ b/emulators/qemu-devel/files/patch-hw-ide-ahci.c @@ -0,0 +1,31 @@ +--- qemu/hw/ide/ahci.c.prev 2011-09-11 16:39:53.000000000 +0300 ++++ qemu/hw/ide/ahci.c 2011-09-11 16:39:48.000000000 +0300 +@@ -505,10 +505,7 @@ static void ahci_reset_port(AHCIState *s + ide_bus_reset(&d->port); + ide_state->ncq_queues = AHCI_MAX_CMDS; + +- pr->irq_stat = 0; +- pr->irq_mask = 0; + pr->scr_stat = 0; +- pr->scr_ctl = 0; + pr->scr_err = 0; + pr->scr_act = 0; + d->busy_slot = -1; +@@ -1157,12 +1154,17 @@ void ahci_uninit(AHCIState *s) + void ahci_reset(void *opaque) + { + struct AHCIPCIState *d = opaque; ++ AHCIPortRegs *pr; + int i; + + d->ahci.control_regs.irqstatus = 0; + d->ahci.control_regs.ghc = 0; + + for (i = 0; i < d->ahci.ports; i++) { ++ pr = &d->ahci.dev[i].port_regs; ++ pr->irq_stat = 0; ++ pr->irq_mask = 0; ++ pr->scr_ctl = 0; + ahci_reset_port(&d->ahci, i); + } + } diff --git a/emulators/qemu-devel/pkg-plist b/emulators/qemu-devel/pkg-plist index 5f15d7ea8dd3..c6c1ffff3129 100644 --- a/emulators/qemu-devel/pkg-plist +++ b/emulators/qemu-devel/pkg-plist @@ -98,4 +98,4 @@ etc/qemu/target-x86_64.conf.sample %%DATADIR%%/keymaps/th %%DATADIR%%/keymaps/tr @dirrm %%DATADIR%%/keymaps -@dirrm %%DATADIR%% +@dirrmtry %%DATADIR%% |