From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49767) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bSeqk-000398-Op for qemu-devel@nongnu.org; Thu, 28 Jul 2016 02:31:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bSeqh-0004Tz-Il for qemu-devel@nongnu.org; Thu, 28 Jul 2016 02:31:17 -0400 Date: Thu, 28 Jul 2016 15:51:02 +1000 From: David Gibson Message-ID: <20160728055102.GE2588@voom.fritz.box> References: <1469608053.5978.132.camel@kernel.crashing.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="brEuL7wsLY8+TuWz" Content-Disposition: inline In-Reply-To: <1469608053.5978.132.camel@kernel.crashing.org> Subject: Re: [Qemu-devel] [PATCH] ppc: Add MacOS VGA driver ROM List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Benjamin Herrenschmidt Cc: qemu-ppc@nongnu.org, qemu-devel@nongnu.org, Mark Cave-Ayland , Alexander Graf --brEuL7wsLY8+TuWz Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jul 27, 2016 at 06:27:33PM +1000, Benjamin Herrenschmidt wrote: > The project is at https://github.com/ozbenh/QemuMacDrivers >=20 > This adds a native MacOS driver in ROM (which can be picked up > by MacOS once OpenBIOS has been updated if Mark accepts > the patches I sent him) which allows MacOS classic > (tested 9.2.1) and MacOS X (tested 10.1.4 and 10.4) > to properly use QEMU std VGA (10.1.x doesn't work at all > without it, the others get the ability to change resolution > and color depth). >=20 > Building the ROM is tricky and requires CodeWarrior for MacOS > so I include a pre-built binary. So, I believe qemu convention is to include the ROM source via a submodule - even though it won't typically be built from there and the prebuilt blob will be used instead. Not sure who the right person to talk to about that would be. >=20 > Signed-off-by: Benjamin Herrenschmidt > --- > hw/ppc/mac_newworld.c | 8 ++++++++ > pc-bios/qemu_vga.ndrv | Bin 0 -> 12808 bytes > 2 files changed, 8 insertions(+) > create mode 100644 pc-bios/qemu_vga.ndrv >=20 > diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c > index 7d25106..5029345 100644 > --- a/hw/ppc/mac_newworld.c > +++ b/hw/ppc/mac_newworld.c > @@ -511,6 +511,13 @@ static int core99_kvm_type(const char *arg) > return 2; > } > =20 > +#define MAC_CORE99_COMPAT \ > + { \ > + .driver =3D "pci-vga", \ > + .property =3D "romfile", \ > + .value =3D "qemu_vga.ndrv", \ > + }, > + > static void core99_machine_class_init(ObjectClass *oc, void *data) > { > MachineClass *mc =3D MACHINE_CLASS(oc); > @@ -520,6 +527,7 @@ static void core99_machine_class_init(ObjectClass *oc= , void *data) > mc->max_cpus =3D MAX_CPUS; > mc->default_boot_order =3D "cd"; > mc->kvm_type =3D core99_kvm_type; > + SET_MACHINE_COMPAT(mc, MAC_CORE99_COMPAT); > } > =20 > static const TypeInfo core99_machine_info =3D { > diff --git a/pc-bios/qemu_vga.ndrv b/pc-bios/qemu_vga.ndrv > new file mode 100644 > index 0000000000000000000000000000000000000000..0b1549d1c5978f87aed2b6e49= 6a23fbaf18dbea4 > GIT binary patch > literal 12808 > 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 > S3pms9xI7eDPqe?>@BaW(s=3DrMD >=20 > literal 0 > HcmV?d00001 >=20 >=20 --=20 David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson --brEuL7wsLY8+TuWz Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJXmZ1GAAoJEGw4ysog2bOSbgIP/3nw/Rio9jCZN0IW6Zj6g5MK XHNgAN91wt9maXdE+Ok38RCCe33c6iO6o2VnNX69ie6p7b2uyM8OUPKvm/S+T4Kj SGiOjX1dken/j9qEi5ao8cjPIARDl2bCEgpMQNkjq05weW+THxTVcNzW4WQNRQlo 7xnisPoeUqbJbhfhVGwqA9N93woVopOLxceFwGjth1NfCO7PhpNUHXXJy3/eclt8 wzC1POEGQwk/cQXqJLYYoOAprkALo/qUFw9S/Rs/D7wHvIAqN64tTLCJd3+Pcy4m HUmSdKnqhLZNEe9qgGZ/oF4irHAFznLnS+RdT6lDnXRX5wLodvnP0D8EbBRXfMVt 1A1UBbrE/xh2vaKiICZV0TNGQXKtc0lnJLHVc0qE9OYYLSe6eihoC0MLeHvlJ6R5 FW6TPUK3uJwMqzgt8IqQiYsfYKGtRw9fChxyNWHgow9QU8k7krCX9UnomR2e8XgE /pZ/I/t2wla4718C5ArNkwHKtoWPYpxioxcw5a1MLDX9GLgW1UkoyqRO0EzUKnRL bAIHcGGdEWIAeBCfT4BB/mPsVhNoQkitkYBAW9+s5nlUDswbySuobd5BgFHjs7o0 XouVRtERWMa12wN/sj6cAm2/EVqTfBYWAWp3EyBwpbQ4V5Fyovh7EADNFxARwIJV qxkfQN2RCNyDS+FaP3FY =FIjM -----END PGP SIGNATURE----- --brEuL7wsLY8+TuWz--