summaryrefslogtreecommitdiff
path: root/sys/arch/aviion
AgeCommit message (Collapse)Author
2014-05-31Use calloc to make sure the correct size is zeroed; Benjamin BaierMiod Vallat
2014-05-31Revert previous diff setting cold to 1 on shutdown because it breaks machineMartin Pieuchot
with softraid(4) disks. softraid(4) is the last real consumer of the doshutdownhooks(9) API and it is not trivial to convert its hook to a DVACT_POWERDOWN handler since the latter does not allow to sleep.
2014-05-30Set cold to 1 before executing the DVACT_POWERDOWN handlers when halting orMartin Pieuchot
rebooting a machine, like it is done in the hibernate case. At least some USB host controller drivers rely on this to busy way instead of sleeping. Avoid a panic on macppc with an uhci(4) cardbus plugged in. ok deraadt@, uebayashi@
2014-05-17Remove "WARNING:" prefix from SYSFAIL and ACFAIL messages, so that, in caseMiod Vallat
of ACFAIL, what reaches the console is explicit enough.
2014-05-08Format string fixes for m88k; remove -Wno-format from the m88k kernels.Miod Vallat
2014-03-29It's been a quarter century: we can assume volatile is present with that name.Philip Guenther
ok dlg@ mpi@ deraadt@
2014-03-13get rid of the assumption that the head of the alldevs list is theDavid Gwynne
"mainbus" device. this breaks when mpath is enabled because it attaches before mainbus and therefore takes the head position. have autoconf provide device_mainbus() which looks up mainbus_cd, and use that instead. discussed with deraadt who just wants mpath stuff to move forward despite there being many ways to shine this particular turd.
2014-02-24/etc/random.seed support in da bootblockz.Miod Vallat
2014-01-19Cope with an arbitrary number of ELF program headers, and only copy theMiod Vallat
contents of PT_LOAD headers to the output.
2014-01-19Initialize ci_randseed better using arc4random() + a trick. Remove theTheo de Raadt
libkern srandom() API since it is not suitable for this use. ok kettenis miod
2014-01-04Add rnddata[] placeholders to make these boot blocks build again.Miod Vallat
2013-12-28crank the versionTheo de Raadt
2013-12-08reflect reality, mark as NOOBJMarc Espie
"sure" deraadt@
2013-11-09Cope with the current layout of kernel binaries (three program headers nowMiod Vallat
that .text, .rodata and .data are aligned on BATC boundaries) and merge all phdrs into the first BCS section.
2013-11-03Even saner kernel layout, so that .rodata can be batc mapped by a read-onlyMiod Vallat
dbatc. Add batc mapping support for 88110 systems as well.
2013-11-02Use a linker script to align .data to a BATC boundary as well, so that noMiod Vallat
DBATC may span over parts of .rodata.
2013-11-02Create the initial page tables in the area between the end of the firmwareMiod Vallat
data area and the kernel image, whenever possible. On 88100/88200 systems, use BATC mappings to map the kernel text (and the kernel data for non-MULTIPROCESSOR kernels). 88110 to follow soon.
2013-11-02Link m88k kernels on a BATC boundary.Miod Vallat
2013-10-23Add a sc_hwinit callback when running on an ILACC, to make sure CSR4 doesMiod Vallat
not get lost if the chip is reset. Also try to mask the `TX start' interrupt, but this doesn't seem to work.
2013-10-23Checkpoint of work-in-progress DMA support for oaic(4). Not working yet,Miod Vallat
probably due to incorrect programming of the system board ``Diagnostic Control Register'', for which I do not have documentation yet; commited so as not to lose this work, since the machine I was testing on has apparently commited suicide and will no longer POST.
2013-10-20catch up with elf(5)/stab(5) removal;Jason McIntyre
ok miod
2013-10-19Use daddr_t * instead of int * for the partoffp parameter toKenneth R Westerback
readdoslabel(). Ditto all the MD variables whose addresses are passed to readdoslabel() via partoffp. Fix some 512-byte block vs disk sector confusion in hppa and sgi. All the DL_GETxxxxx() defines return disk sector values. All DL_SETxxxx() take disk sector values. These changes should be no-ops until a drive using non-512-byte-sectors is encountered. ok deraadt@
2013-10-17... and do not set up lance buffers at 3MB. Oh the irony.Miod Vallat
2013-10-17Merge old netboot le(4) code into new boot, to allow for a kernel to be loadedMiod Vallat
from the network, with symbols. This will be useful to load bsd.rd on systems with the 3MB bootfile limit in the stupid PROM. Crank version to 0.4.
2013-10-17the explanation for locally-defined ecoff is even simpler now thatTheo de Raadt
the .h file is missing... so remove the #if 0 chunk
2013-10-17a better way to disable the speaker on AV400 familyMiod Vallat
2013-10-17Remove support for a.out and ecoff. We only do elf now.Theo de Raadt
ok miod
2013-10-16Correctly honour spoofonly in readvdmlabel() to avoid reading the on-disk labelMiod Vallat
when it's not welcome.
2013-10-16Support for oaic in the boot blocks. Cope with older prom putting a \r atMiod Vallat
the end of the commandline. Clean up a few stale comments. Crank boot blocks version to 0.3.
2013-10-15Rewrite the awk script that generates the data for option DDB_STRUCT:Philip Guenther
- switch to perl for better data structures and (thus) speed - fix a couple glitches in the interpretation of the stabs output - compress the strings by putting them in one big array and overlaying suffixes - all sizes and offsets are <64k, so use u_short for them This results in ~60% reduction in the resulting text size and it now takes less than a second to create on fast platforms. ok miod@
2013-10-15First shot at installation media for aviion, and updated documentation.Miod Vallat
2013-10-15In readvdmlabel(), be sure to have *partoffp initialized in all cases.Miod Vallat
2013-10-15Driver for the AIC-6250 SCSI controller found on AViiON models 100, 200, 300,Miod Vallat
400 and 4300. Limited to PIO mode only for now, until the DMA controller is tamed. Heavily based upon the MI aic(4) driver.
2013-10-11When converting an ELF file, create a dummy non-empty (8 byte) .data section,Miod Vallat
for older PROM will fail to load BCS binaries with only a .text section, and will also fail to load an empty .data section. Tested on AV4300.
2013-10-10Better boot device detection code. Board-specific code will now return theMiod Vallat
address of a controller only know by its SCM name and number, and the boot device detection code will now attempt to match the controller first, and then grandchildren of it (if the boot device is a disk or a tape).
2013-10-10Misc cleanups and small fixes. Boot controller/unit/lun information passedMiod Vallat
to the kernel will now match the device the kernel is loaded from, not the device the boot blocks are loaded from (this allows one to netboot the boot blocks to boot a kernel from a local disk).
2013-10-09Quick'n'dirty code to match trivial on-disk boot paths as the boot device.Miod Vallat
Needs more work in order to cover all cases, but enough to get internal disks on the first controller on models 4600 and 530 to get matched. This makes the aviion port finally self-hosting on aforementioned models, finally! Next step: bsd.rd...
2013-10-09Needed by recent libsaMiod Vallat
2013-10-09DIsplay fixes, also print boot path before attempting to boot it. Still notMiod Vallat
cranking boot blocks version because it's unlikely anyone but me is running them at the moment.
2013-10-09Parse (hex) partition number in boot path. For experts only.Miod Vallat
2013-10-09Fix build (forgot to rerun make depend)Miod Vallat
2013-10-09Fix parse_args() to ignore device specification and correctly append theMiod Vallat
default kernel name if only a boot device is specified. This makes boot paths like "sd()" auto-boot without asking for a kernel name.
2013-10-09Move common SCSI defines and structs to their own header, to eventually allowMiod Vallat
SCSI tape support. Drop sync negotiation from oosiop code, we can run without it.
2013-10-08Early stages of a working disk bootloader for OpenBSD/aviion.Miod Vallat
Currently limited to oosiop(4) controllers, and thus models 4600 and 530. There are some rough edges to polish to avoid manual interaction (kernel currently can't figure its boot device when booted from disk), but the hard (and hair-pulling) work is over. And we can have kernel symbols again!
2013-10-08Try to be a bit more cross-compile friendly.Miod Vallat
2013-10-07Have platform->bootstrap() return the machine speed in MHz, which is used toMiod Vallat
set up the delay constant.
2013-10-07Put the kernel VBR page at the beginning of the kernel text, as done onMiod Vallat
mvme88k, to be able to unmap the page at address zero in the kernel, and have the vbr page read-only after being initialized.
2013-10-07Split the 64-bit interrupt source mask code into two 32-bit `interrupt' andMiod Vallat
`extended interrupt' masks. This is how the hardware works, and this makes the code simpler than attempting to aggregate them. No functional change.
2013-10-01tweak previous;Jason McIntyre
2013-10-01If a valid VDM signature is found, but neither a VDIT nor a native label areMiod Vallat
found, do not attempt to check for any other label scheme: the VDM signature implies the disk doesn't use MBR or whole-disk partitionining. This makes sure that, once a boot area has been set up on a disk without any form a label yet, the bounding constraint it creates will not be cleared by readdoslabel(). It is now possible to correctly set up and label a vnd image with a boot area.