* Copyright (c) 1992 OMRON Corporation.
* Copyright (c) 1982, 1986, 1992 Regents of the University of California.
* %sccs.include.redist.c%
* from: hp300/hp300/swapgeneric.c 7.8 (Berkeley) 10/11/92
* @(#)swapgeneric.c 7.4 (Berkeley) %G%
#include <luna68k/dev/device.h>
* Generic configuration; all in one
struct swdevt swdevt
[] = {
int dmmin
, dmmax
, dmtext
;
extern struct driver sddriver
;
extern struct hp_ctlr hp_cinit
[];
extern struct hp_device hp_dinit
[];
{ (caddr_t
)&sddriver
, "sd", makedev(4, 0) },
register struct hp_ctlr
*hc
;
register struct hp_device
*hd
;
register struct genericconf
*gc
;
int unit
, part
, swaponroot
= 0;
if (boothowto
& RB_ASKNAME
) {
for (gc
= genericconf
; gc
->gc_driver
; gc
++)
if (gc
->gc_name
[0] == name
[0] &&
gc
->gc_name
[1] == name
[1])
for (gc
= genericconf
; gc
->gc_driver
; gc
++)
printf(" %s%%d", gc
->gc_name
);
if (*cp
< '0' || *cp
> '9') {
printf("bad/missing unit number\n");
while (*cp
>= '0' && *cp
<= '9')
unit
= 10 * unit
+ *cp
++ - '0';
if (*cp
< 'a' || *cp
> 'h') {
printf("bad/missing partiiton number\n");
for (gc
= genericconf
; gc
->gc_driver
; gc
++) {
for (hd
= hp_dinit
; hd
->hp_driver
; hd
++) {
if (hd
->hp_unit
== 0 && hd
->hp_driver
==
(struct driver
*)gc
->gc_driver
) {
printf("root on %s0\n", hd
->hp_driver
->d_name
);
printf("no suitable root\n");
gc
->gc_root
= makedev(major(gc
->gc_root
), (unit
* 8) + part
);
printf("using root device: %s%d%c\n", gc
->gc_name
, unit
, 'a' + part
);
swdevt
[0].sw_dev
= argdev
= dumpdev
=
makedev(major(rootdev
), (minor(rootdev
) & ~0x7) + 1);
printf("using swap device: %s%d%c\n",
gc
->gc_name
, unit
, 'a' + (minor(swdevt
[0].sw_dev
) & 0x7));
/* swap size and dumplo set during autoconfigure */