diff options
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/isa/mcd.c | 55 | ||||
| -rw-r--r-- | sys/dev/scsipi/cd.c | 57 | ||||
| -rw-r--r-- | sys/dev/scsipi/sd.c | 58 |
3 files changed, 87 insertions, 83 deletions
diff --git a/sys/dev/isa/mcd.c b/sys/dev/isa/mcd.c index 44f914a0cb7..35941a8bfa1 100644 --- a/sys/dev/isa/mcd.c +++ b/sys/dev/isa/mcd.c @@ -1,4 +1,4 @@ -/* $NetBSD: mcd.c,v 1.41 1995/07/10 01:27:24 cgd Exp $ */ +/* $NetBSD: mcd.c,v 1.42 1995/08/05 23:47:52 mycroft Exp $ */ /* * Copyright (c) 1993, 1994, 1995 Charles M. Hannum. All rights reserved. @@ -639,35 +639,38 @@ void mcdgetdisklabel(sc) struct mcd_softc *sc; { + struct disklabel *lp = &sc->sc_dk.dk_label; - bzero(&sc->sc_dk.dk_label, sizeof(struct disklabel)); + bzero(lp, sizeof(struct disklabel)); bzero(&sc->sc_dk.dk_cpulabel, sizeof(struct cpu_disklabel)); - sc->sc_dk.dk_label.d_secsize = sc->blksize; - sc->sc_dk.dk_label.d_ntracks = 1; - sc->sc_dk.dk_label.d_nsectors = 100; - sc->sc_dk.dk_label.d_ncylinders = (sc->disksize / 100) + 1; - sc->sc_dk.dk_label.d_secpercyl = - sc->sc_dk.dk_label.d_ntracks * sc->sc_dk.dk_label.d_nsectors; - - strncpy(sc->sc_dk.dk_label.d_typename, "Mitsumi CD-ROM", 16); - sc->sc_dk.dk_label.d_type = 0; /* XXX */ - strncpy(sc->sc_dk.dk_label.d_packname, "fictitious", 16); - sc->sc_dk.dk_label.d_secperunit = sc->disksize; - sc->sc_dk.dk_label.d_rpm = 300; - sc->sc_dk.dk_label.d_interleave = 1; - sc->sc_dk.dk_label.d_flags = D_REMOVABLE; - - sc->sc_dk.dk_label.d_partitions[0].p_offset = 0; - sc->sc_dk.dk_label.d_partitions[0].p_size = - sc->sc_dk.dk_label.d_secperunit * - (sc->sc_dk.dk_label.d_secsize / DEV_BSIZE); - sc->sc_dk.dk_label.d_partitions[0].p_fstype = FS_ISO9660; - sc->sc_dk.dk_label.d_npartitions = 1; + lp->d_secsize = sc->blksize; + lp->d_ntracks = 1; + lp->d_nsectors = 100; + lp->d_ncylinders = (sc->disksize / 100) + 1; + lp->d_secpercyl = lp->d_ntracks * lp->d_nsectors; + + strncpy(lp->d_typename, "Mitsumi CD-ROM", 16); + lp->d_type = 0; /* XXX */ + strncpy(lp->d_packname, "fictitious", 16); + lp->d_secperunit = sc->disksize; + lp->d_rpm = 300; + lp->d_interleave = 1; + lp->d_flags = D_REMOVABLE; + + lp->d_partitions[0].p_offset = 0; + lp->d_partitions[0].p_size = + lp->d_secperunit * (lp->d_secsize / DEV_BSIZE); + lp->d_partitions[0].p_fstype = FS_ISO9660; + lp->d_partitions[RAW_PART].p_offset = 0; + lp->d_partitions[RAW_PART].p_size = + lp->d_secperunit * (lp->d_secsize / DEV_BSIZE); + lp->d_partitions[RAW_PART].p_fstype = FS_ISO9660; + lp->d_npartitions = RAW_PART + 1; - sc->sc_dk.dk_label.d_magic = DISKMAGIC; - sc->sc_dk.dk_label.d_magic2 = DISKMAGIC; - sc->sc_dk.dk_label.d_checksum = dkcksum(&sc->sc_dk.dk_label); + lp->d_magic = DISKMAGIC; + lp->d_magic2 = DISKMAGIC; + lp->d_checksum = dkcksum(lp); } int diff --git a/sys/dev/scsipi/cd.c b/sys/dev/scsipi/cd.c index 736bfa3f2d9..3c3cef7366c 100644 --- a/sys/dev/scsipi/cd.c +++ b/sys/dev/scsipi/cd.c @@ -1,4 +1,4 @@ -/* $NetBSD: cd.c,v 1.71 1995/07/24 06:55:37 cgd Exp $ */ +/* $NetBSD: cd.c,v 1.72 1995/08/05 23:48:53 mycroft Exp $ */ /* * Copyright (c) 1994, 1995 Charles M. Hannum. All rights reserved. @@ -841,35 +841,38 @@ void cdgetdisklabel(cd) struct cd_softc *cd; { + struct disklabel *lp = &cd->sc_dk.dk_label; - bzero(&cd->sc_dk.dk_label, sizeof(struct disklabel)); + bzero(lp, sizeof(struct disklabel)); bzero(&cd->sc_dk.dk_cpulabel, sizeof(struct cpu_disklabel)); - cd->sc_dk.dk_label.d_secsize = cd->params.blksize; - cd->sc_dk.dk_label.d_ntracks = 1; - cd->sc_dk.dk_label.d_nsectors = 100; - cd->sc_dk.dk_label.d_ncylinders = (cd->params.disksize / 100) + 1; - cd->sc_dk.dk_label.d_secpercyl = - cd->sc_dk.dk_label.d_ntracks * cd->sc_dk.dk_label.d_nsectors; - - strncpy(cd->sc_dk.dk_label.d_typename, "SCSI CD-ROM", 16); - cd->sc_dk.dk_label.d_type = DTYPE_SCSI; - strncpy(cd->sc_dk.dk_label.d_packname, "fictitious", 16); - cd->sc_dk.dk_label.d_secperunit = cd->params.disksize; - cd->sc_dk.dk_label.d_rpm = 300; - cd->sc_dk.dk_label.d_interleave = 1; - cd->sc_dk.dk_label.d_flags = D_REMOVABLE; - - cd->sc_dk.dk_label.d_partitions[0].p_offset = 0; - cd->sc_dk.dk_label.d_partitions[0].p_size = - cd->sc_dk.dk_label.d_secperunit * - (cd->sc_dk.dk_label.d_secsize / DEV_BSIZE); - cd->sc_dk.dk_label.d_partitions[0].p_fstype = FS_ISO9660; - cd->sc_dk.dk_label.d_npartitions = 1; - - cd->sc_dk.dk_label.d_magic = DISKMAGIC; - cd->sc_dk.dk_label.d_magic2 = DISKMAGIC; - cd->sc_dk.dk_label.d_checksum = dkcksum(&cd->sc_dk.dk_label); + lp->d_secsize = cd->params.blksize; + lp->d_ntracks = 1; + lp->d_nsectors = 100; + lp->d_ncylinders = (cd->params.disksize / 100) + 1; + lp->d_secpercyl = lp->d_ntracks * lp->d_nsectors; + + strncpy(lp->d_typename, "SCSI CD-ROM", 16); + lp->d_type = DTYPE_SCSI; + strncpy(lp->d_packname, "fictitious", 16); + lp->d_secperunit = cd->params.disksize; + lp->d_rpm = 300; + lp->d_interleave = 1; + lp->d_flags = D_REMOVABLE; + + lp->d_partitions[0].p_offset = 0; + lp->d_partitions[0].p_size = + lp->d_secperunit * (lp->d_secsize / DEV_BSIZE); + lp->d_partitions[0].p_fstype = FS_ISO9660; + lp->d_partitions[RAW_PART].p_offset = 0; + lp->d_partitions[RAW_PART].p_size = + lp->d_secperunit * (lp->d_secsize / DEV_BSIZE); + lp->d_partitions[RAW_PART].p_fstype = FS_ISO9660; + lp->d_npartitions = RAW_PART + 1; + + lp->d_magic = DISKMAGIC; + lp->d_magic2 = DISKMAGIC; + lp->d_checksum = dkcksum(lp); } /* diff --git a/sys/dev/scsipi/sd.c b/sys/dev/scsipi/sd.c index bd4c4657872..3cb3866070a 100644 --- a/sys/dev/scsipi/sd.c +++ b/sys/dev/scsipi/sd.c @@ -1,4 +1,4 @@ -/* $NetBSD: sd.c,v 1.73 1995/07/24 06:56:48 cgd Exp $ */ +/* $NetBSD: sd.c,v 1.74 1995/08/05 23:48:55 mycroft Exp $ */ /* * Copyright (c) 1994, 1995 Charles M. Hannum. All rights reserved. @@ -654,47 +654,45 @@ void sdgetdisklabel(sd) struct sd_softc *sd; { + struct disklabel *lp = &sd->sc_dk.dk_label; char *errstring; - bzero(&sd->sc_dk.dk_label, sizeof(struct disklabel)); + bzero(lp, sizeof(struct disklabel)); bzero(&sd->sc_dk.dk_cpulabel, sizeof(struct cpu_disklabel)); - sd->sc_dk.dk_label.d_secsize = sd->params.blksize; - sd->sc_dk.dk_label.d_ntracks = sd->params.heads; - sd->sc_dk.dk_label.d_nsectors = sd->params.sectors; - sd->sc_dk.dk_label.d_ncylinders = sd->params.cyls; - sd->sc_dk.dk_label.d_secpercyl = - sd->sc_dk.dk_label.d_ntracks * sd->sc_dk.dk_label.d_nsectors; - if (sd->sc_dk.dk_label.d_secpercyl == 0) { - sd->sc_dk.dk_label.d_secpercyl = 100; + lp->d_secsize = sd->params.blksize; + lp->d_ntracks = sd->params.heads; + lp->d_nsectors = sd->params.sectors; + lp->d_ncylinders = sd->params.cyls; + lp->d_secpercyl = lp->d_ntracks * lp->d_nsectors; + if (lp->d_secpercyl == 0) { + lp->d_secpercyl = 100; /* as long as it's not 0 - readdisklabel divides by it (?) */ } - strncpy(sd->sc_dk.dk_label.d_typename, "SCSI disk", 16); - sd->sc_dk.dk_label.d_type = DTYPE_SCSI; - strncpy(sd->sc_dk.dk_label.d_packname, "fictitious", 16); - sd->sc_dk.dk_label.d_secperunit = sd->params.disksize; - sd->sc_dk.dk_label.d_rpm = 3600; - sd->sc_dk.dk_label.d_interleave = 1; - sd->sc_dk.dk_label.d_flags = 0; - - sd->sc_dk.dk_label.d_partitions[RAW_PART].p_offset = 0; - sd->sc_dk.dk_label.d_partitions[RAW_PART].p_size = - sd->sc_dk.dk_label.d_secperunit * - (sd->sc_dk.dk_label.d_secsize / DEV_BSIZE); - sd->sc_dk.dk_label.d_partitions[RAW_PART].p_fstype = FS_UNUSED; - sd->sc_dk.dk_label.d_npartitions = RAW_PART + 1; - - sd->sc_dk.dk_label.d_magic = DISKMAGIC; - sd->sc_dk.dk_label.d_magic2 = DISKMAGIC; - sd->sc_dk.dk_label.d_checksum = dkcksum(&sd->sc_dk.dk_label); + strncpy(lp->d_typename, "SCSI disk", 16); + lp->d_type = DTYPE_SCSI; + strncpy(lp->d_packname, "fictitious", 16); + lp->d_secperunit = sd->params.disksize; + lp->d_rpm = 3600; + lp->d_interleave = 1; + lp->d_flags = 0; + + lp->d_partitions[RAW_PART].p_offset = 0; + lp->d_partitions[RAW_PART].p_size = + lp->d_secperunit * (lp->d_secsize / DEV_BSIZE); + lp->d_partitions[RAW_PART].p_fstype = FS_UNUSED; + lp->d_npartitions = RAW_PART + 1; + + lp->d_magic = DISKMAGIC; + lp->d_magic2 = DISKMAGIC; + lp->d_checksum = dkcksum(lp); /* * Call the generic disklabel extraction routine */ if (errstring = readdisklabel(MAKESDDEV(0, sd->sc_dev.dv_unit, - RAW_PART), sdstrategy, &sd->sc_dk.dk_label, - &sd->sc_dk.dk_cpulabel)) { + RAW_PART), sdstrategy, lp, &sd->sc_dk.dk_cpulabel)) { printf("%s: %s\n", sd->sc_dev.dv_xname, errstring); return; } |
