This patchset modifies SeaBIOS source code to be able to build a firmware for
the PA-RISC CPU architecture. This firmware can then be used to boot a virtual
PA-RISC machine with PA-Linux and HP/UX on QEMU.
Where possible existing SeaBIOS drivers and infrastructure is reused.
Since PA-RISC is native 32/64-Bit, the various segment accessors are
not needed and replaced by simple variable accesses.
Helge Deller (31):
Add config option for PA-RISC arch
biosvar.h: Add accessors for various BIOS data areas
Drivers: Use get_bda_ptr() BDA accessor
byteorder.h: Add endianess conversion functions
farptr.h: Add FLATPTR* accessor functions for parisc
font.c: Disable built-in x86 font on parisc
paravirt.h: Add PORT_QEMU_CFG_CTL for parisc
pciinit.c: Initialize PA-RISC Dino PCI chip
shadow.c: Compile int3 inline assembly on x86 only
Add portaddr_t typedef to specify I/O port addresses
ata.c: Allow to boot on PA-RISC
ata.h: Add ATA IDE port addresses for PA-RISC
blockcmd.c: Prevent unaligned access crash on PA-RISC
scsi: Add fields for specifying target and lun of SCSI devices
lsi-scsi.c: Convert SCSI script to little endian
pci.c: Add PCI ports for PA-RISC and access PCI bus in little-endian
rtc.h: Add CMOS/RTC addresses for PA-RISC
serialio.h: Add serial port adresses for PA-RISC
malloc.c: Implement a PA-RISC specific malloc()
output.c: Add PA-RISC specific output behaviour
output.c: Make printf() capable to print 64bit int values
romfile.c: return values are returned as little-endian
sercon.c: Use SEROFF_IIR constant
stacks.h: Provide replacement for thread functions when
!CONFIG_THREADS
version.c: Mark version strings const
x86.h: Provide replacement functions for PA-RISC
parisc: Add PA-RISC related code
string.c: reimplement mem*_far() functions for PA-RISC
boot.c: Add boot disc chooser for PA-RISC
block.c: Allow PA-RISC to boot from ATA drives
ata.c: Add missing endianess conversion functions
Makefile | 9 +-
Makefile.parisc | 192 ++++
src/Kconfig | 54 +-
src/biosvar.h | 31 +
src/block.c | 10 +-
src/block.h | 2 +
src/boot.c | 48 +
src/byteorder.h | 74 ++
src/farptr.h | 14 +-
src/font.c | 2 +
src/fw/csm.c | 2 +-
src/fw/paravirt.h | 7 +
src/fw/pciinit.c | 53 +-
src/fw/shadow.c | 2 +
src/hw/ata.c | 70 +-
src/hw/ata.h | 14 +-
src/hw/blockcmd.c | 17 +-
src/hw/blockcmd.h | 2 +-
src/hw/esp-scsi.c | 2 +-
src/hw/lsi-scsi.c | 6 +-
src/hw/megasas.c | 2 +-
src/hw/mpt-scsi.c | 2 +-
src/hw/pci.c | 13 +-
src/hw/pvscsi.c | 2 +-
src/hw/rtc.h | 7 +
src/hw/serialio.c | 2 +-
src/hw/serialio.h | 10 +-
src/hw/usb-msc.c | 2 +-
src/hw/usb-uas.c | 2 +-
src/hw/virtio-scsi.c | 2 +-
src/malloc.c | 4 +-
src/malloc.h | 8 +-
src/output.c | 56 +-
src/parisc/b160l.h | 630 +++++++++++
src/parisc/head.S | 319 ++++++
src/parisc/hppa.h | 370 +++++++
src/parisc/hppa_hardware.h | 49 +
src/parisc/lasips2.c | 66 ++
src/parisc/lasips2.h | 17 +
src/parisc/malloc.c | 91 ++
src/parisc/pafirmware.lds.S | 69 ++
src/parisc/parisc.c | 1997 +++++++++++++++++++++++++++++++++++
src/parisc/pdc.h | 694 ++++++++++++
src/parisc/sti.c | 179 ++++
src/parisc/sticore.h | 326 ++++++
src/parisc/stirom.c | 652 ++++++++++++
src/parisc/timer.c | 103 ++
src/post.c | 2 +-
src/romfile.c | 4 +-
src/sercon.c | 2 +-
src/serial.c | 4 +-
src/stacks.h | 17 +-
src/string.c | 27 +-
src/types.h | 8 +-
src/version.c | 4 +-
src/x86.h | 6 +
56 files changed, 6236 insertions(+), 123 deletions(-)
create mode 100644 Makefile.parisc
create mode 100644 src/parisc/b160l.h
create mode 100644 src/parisc/head.S
create mode 100644 src/parisc/hppa.h
create mode 100644 src/parisc/hppa_hardware.h
create mode 100644 src/parisc/lasips2.c
create mode 100644 src/parisc/lasips2.h
create mode 100644 src/parisc/malloc.c
create mode 100644 src/parisc/pafirmware.lds.S
create mode 100644 src/parisc/parisc.c
create mode 100644 src/parisc/pdc.h
create mode 100644 src/parisc/sti.c
create mode 100644 src/parisc/sticore.h
create mode 100644 src/parisc/stirom.c
create mode 100644 src/parisc/timer.c
--
2.29.2
_______________________________________________
SeaBIOS mailing list -- [email protected]
To unsubscribe send an email to [email protected]