Revision 0986ac3b
b/Makefile | ||
---|---|---|
68 | 68 |
$(INSTALL) -m 755 -s $(TOOLS) "$(DESTDIR)$(bindir)" |
69 | 69 |
mkdir -p "$(DESTDIR)$(datadir)" |
70 | 70 |
for x in bios.bin vgabios.bin vgabios-cirrus.bin ppc_rom.bin \ |
71 |
video.x proll.elf linux_boot.bin; do \
|
|
71 |
video.x openbios-sparc32 linux_boot.bin; do \
|
|
72 | 72 |
$(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x "$(DESTDIR)$(datadir)"; \ |
73 | 73 |
done |
74 | 74 |
ifndef CONFIG_WIN32 |
... | ... | |
149 | 149 |
$(datadir)/vgabios-cirrus.bin \ |
150 | 150 |
$(datadir)/ppc_rom.bin \ |
151 | 151 |
$(datadir)/video.x \ |
152 |
$(datadir)/proll.elf \
|
|
152 |
$(datadir)/openbios-sparc32 \
|
|
153 | 153 |
$(datadir)/linux_boot.bin \ |
154 | 154 |
$(docdir)/qemu-doc.html \ |
155 | 155 |
$(docdir)/qemu-tech.html \ |
b/hw/sun4m.c | ||
---|---|---|
28 | 28 |
#define INITRD_LOAD_ADDR 0x00800000 |
29 | 29 |
#define PROM_SIZE_MAX (256 * 1024) |
30 | 30 |
#define PROM_ADDR 0xffd00000 |
31 |
#define PROM_FILENAMEB "proll.bin" |
|
32 |
#define PROM_FILENAMEE "proll.elf" |
|
31 |
#define PROM_FILENAME "openbios-sparc32" |
|
33 | 32 |
#define PHYS_JJ_EEPROM 0x71200000 /* m48t08 */ |
34 | 33 |
#define PHYS_JJ_IDPROM_OFF 0x1FD8 |
35 | 34 |
#define PHYS_JJ_EEPROM_SIZE 0x2000 |
... | ... | |
273 | 272 |
(PROM_SIZE_MAX + TARGET_PAGE_SIZE - 1) & TARGET_PAGE_MASK, |
274 | 273 |
prom_offset | IO_MEM_ROM); |
275 | 274 |
|
276 |
snprintf(buf, sizeof(buf), "%s/%s", bios_dir, PROM_FILENAMEE);
|
|
275 |
snprintf(buf, sizeof(buf), "%s/%s", bios_dir, PROM_FILENAME); |
|
277 | 276 |
ret = load_elf(buf, 0, NULL); |
278 | 277 |
if (ret < 0) { |
279 |
snprintf(buf, sizeof(buf), "%s/%s", bios_dir, PROM_FILENAMEB); |
|
280 |
ret = load_image(buf, phys_ram_base + prom_offset); |
|
281 |
} |
|
282 |
if (ret < 0) { |
|
283 | 278 |
fprintf(stderr, "qemu: could not load prom '%s'\n", |
284 | 279 |
buf); |
285 | 280 |
exit(1); |
b/hw/sun4u.c | ||
---|---|---|
32 | 32 |
#define APB_SPECIAL_BASE 0x1fe00000000ULL |
33 | 33 |
#define APB_MEM_BASE 0x1ff00000000ULL |
34 | 34 |
#define VGA_BASE (APB_MEM_BASE + 0x400000ULL) |
35 |
#define PROM_FILENAMEB "proll-sparc64.bin" |
|
36 |
#define PROM_FILENAMEE "proll-sparc64.elf" |
|
35 |
#define PROM_FILENAME "openbios-sparc64" |
|
37 | 36 |
#define NVRAM_SIZE 0x2000 |
38 | 37 |
|
39 | 38 |
/* TSC handling */ |
... | ... | |
282 | 281 |
(PROM_SIZE_MAX + TARGET_PAGE_SIZE) & TARGET_PAGE_MASK, |
283 | 282 |
prom_offset | IO_MEM_ROM); |
284 | 283 |
|
285 |
snprintf(buf, sizeof(buf), "%s/%s", bios_dir, PROM_FILENAMEE);
|
|
284 |
snprintf(buf, sizeof(buf), "%s/%s", bios_dir, PROM_FILENAME); |
|
286 | 285 |
ret = load_elf(buf, 0, NULL); |
287 | 286 |
if (ret < 0) { |
288 |
snprintf(buf, sizeof(buf), "%s/%s", bios_dir, PROM_FILENAMEB); |
|
289 |
ret = load_image(buf, phys_ram_base + prom_offset); |
|
290 |
} |
|
291 |
if (ret < 0) { |
|
292 | 287 |
fprintf(stderr, "qemu: could not load prom '%s'\n", |
293 | 288 |
buf); |
294 | 289 |
exit(1); |
b/pc-bios/README | ||
---|---|---|
7 | 7 |
- The PowerPC Open Hack'Ware Open Firmware Compatible BIOS is |
8 | 8 |
available at http://perso.magic.fr/l_indien/OpenHackWare/index.htm. |
9 | 9 |
|
10 |
- Proll is a GPL'd boot PROM for Sparc JavaStations |
|
11 |
(http://people.redhat.com/zaitcev/linux/). |
|
12 |
Applying proll.patch allows circumventing some bugs and enables |
|
13 |
faster kernel load through a hack. |
|
14 |
|
|
15 | 10 |
- video.x is a PowerMac NDRV compatible driver for a VGA frame |
16 | 11 |
buffer. It comes from the Mac-on-Linux project |
17 | 12 |
(http://www.maconlinux.org/). |
13 |
|
|
14 |
- OpenBIOS (http://www.openbios.org/) is a free (GPL v2) portable |
|
15 |
firmware implementation. The goal is to implement a 100% IEEE |
|
16 |
1275-1994 (referred to as Open Firmware) compliant firmware. |
b/qemu-doc.texi | ||
---|---|---|
1394 | 1394 |
@node Sparc32 System emulator invocation |
1395 | 1395 |
@section Sparc32 System emulator invocation |
1396 | 1396 |
|
1397 |
Use the executable @file{qemu-system-sparc} to simulate a JavaStation
|
|
1397 |
Use the executable @file{qemu-system-sparc} to simulate a SparcStation 5
|
|
1398 | 1398 |
(sun4m architecture). The emulation is somewhat complete. |
1399 | 1399 |
|
1400 | 1400 |
QEMU emulates the following sun4m peripherals: |
... | ... | |
1419 | 1419 |
|
1420 | 1420 |
The number of peripherals is fixed in the architecture. |
1421 | 1421 |
|
1422 |
QEMU uses the Proll, a PROM replacement available at |
|
1423 |
@url{http://people.redhat.com/@/zaitcev/linux/}. The required |
|
1424 |
QEMU-specific patches are included with the sources. |
|
1422 |
Since version 0.8.1, QEMU uses OpenBIOS |
|
1423 |
@url{http://www.openbios.org/}. OpenBIOS is a free (GPL v2) portable |
|
1424 |
firmware implementation. The goal is to implement a 100% IEEE |
|
1425 |
1275-1994 (referred to as Open Firmware) compliant firmware. |
|
1425 | 1426 |
|
1426 | 1427 |
A sample Linux 2.6 series kernel and ram disk image are available on |
1427 |
the QEMU web site. Please note that currently neither Linux 2.4
|
|
1428 |
series, NetBSD, nor OpenBSD kernels work.
|
|
1428 |
the QEMU web site. Please note that currently NetBSD, OpenBSD or
|
|
1429 |
Solaris kernels don't work.
|
|
1429 | 1430 |
|
1430 | 1431 |
@c man begin OPTIONS |
1431 | 1432 |
|
Also available in: Unified diff