diff options
| author | Poul-Henning Kamp <phk@FreeBSD.org> | 2002-09-20 19:36:05 +0000 |
|---|---|---|
| committer | Poul-Henning Kamp <phk@FreeBSD.org> | 2002-09-20 19:36:05 +0000 |
| commit | 7812d86f03dbed973e20eee5da963ae5efc666c4 (patch) | |
| tree | 47b5afae3623c1371d19a0478c850d8e6a08d07b /sys/dev/ata | |
| parent | 5741a42f2f25ab4f5bff0b8f213cbb93aae1b5ac (diff) | |
Notes
Diffstat (limited to 'sys/dev/ata')
| -rw-r--r-- | sys/dev/ata/ata-disk.c | 12 | ||||
| -rw-r--r-- | sys/dev/ata/ata-raid.c | 13 | ||||
| -rw-r--r-- | sys/dev/ata/atapi-fd.c | 14 |
3 files changed, 14 insertions, 25 deletions
diff --git a/sys/dev/ata/ata-disk.c b/sys/dev/ata/ata-disk.c index b4a86562b387..f8bae5eddac3 100644 --- a/sys/dev/ata/ata-disk.c +++ b/sys/dev/ata/ata-disk.c @@ -208,14 +208,10 @@ ad_attach(struct ata_device *atadev) dev->si_iosize_max = adp->max_iosize; adp->dev = dev; - /* construct the disklabel */ - bzero(&adp->disk.d_label, sizeof(struct disklabel)); - adp->disk.d_label.d_secsize = DEV_BSIZE; - adp->disk.d_label.d_nsectors = adp->sectors; - adp->disk.d_label.d_ntracks = adp->heads; - adp->disk.d_label.d_ncylinders = adp->total_secs/(adp->heads*adp->sectors); - adp->disk.d_label.d_secpercyl = adp->sectors * adp->heads; - adp->disk.d_label.d_secperunit = adp->total_secs; + adp->disk.d_sectorsize = DEV_BSIZE; + adp->disk.d_mediasize = DEV_BSIZE * (off_t)adp->total_secs; + adp->disk.d_fwsectors = adp->sectors; + adp->disk.d_fwheads = adp->heads; atadev->driver = adp; atadev->flags = 0; diff --git a/sys/dev/ata/ata-raid.c b/sys/dev/ata/ata-raid.c index b209c1d1d711..ec920e0f411e 100644 --- a/sys/dev/ata/ata-raid.c +++ b/sys/dev/ata/ata-raid.c @@ -470,16 +470,11 @@ static int aropen(dev_t dev, int flags, int fmt, struct thread *td) { struct ar_softc *rdp = dev->si_drv1; - struct disklabel *dl; - dl = &rdp->disk.d_label; - bzero(dl, sizeof *dl); - dl->d_secsize = DEV_BSIZE; - dl->d_nsectors = rdp->sectors; - dl->d_ntracks = rdp->heads; - dl->d_ncylinders = rdp->cylinders; - dl->d_secpercyl = rdp->sectors * rdp->heads; - dl->d_secperunit = rdp->total_sectors; + rdp->disk.d_sectorsize = DEV_BSIZE; + rdp->disk.d_mediasize = (off_t)rdp->total_sectors * DEV_BSIZE; + rdp->disk.d_fwsectors = rdp->sectors; + rdp->disk.d_fwheads = rdp->heads; return 0; } diff --git a/sys/dev/ata/atapi-fd.c b/sys/dev/ata/atapi-fd.c index a8a53abe2ce1..e5f887a96b6f 100644 --- a/sys/dev/ata/atapi-fd.c +++ b/sys/dev/ata/atapi-fd.c @@ -224,7 +224,6 @@ static int afdopen(dev_t dev, int flags, int fmt, struct thread *td) { struct afd_softc *fdp = dev->si_drv1; - struct disklabel *label = &fdp->disk.d_label; atapi_test_ready(fdp->device); @@ -236,13 +235,12 @@ afdopen(dev_t dev, int flags, int fmt, struct thread *td) fdp->device->flags &= ~ATA_D_MEDIA_CHANGED; - bzero(label, sizeof *label); - label->d_secsize = fdp->cap.sector_size; - label->d_nsectors = fdp->cap.sectors; - label->d_ntracks = fdp->cap.heads; - label->d_ncylinders = fdp->cap.cylinders; - label->d_secpercyl = fdp->cap.sectors * fdp->cap.heads; - label->d_secperunit = label->d_secpercyl * fdp->cap.cylinders; + fdp->disk.d_sectorsize = fdp->cap.sector_size; + fdp->disk.d_mediasize = (off_t)fdp->cap.sector_size * fdp->cap.sectors * + fdp->cap.heads * fdp->cap.cylinders; + fdp->disk.d_fwsectors = fdp->cap.sectors; + fdp->disk.d_fwheads = fdp->cap.heads; + return 0; } |
