summaryrefslogtreecommitdiff
path: root/sys/arch/hp300
diff options
context:
space:
mode:
authorJason Downs <downsj@cvs.openbsd.org>1997-02-10 01:34:09 +0000
committerJason Downs <downsj@cvs.openbsd.org>1997-02-10 01:34:09 +0000
commitf4c7ec8de009e09634eb0390f5a19a2efd4a7472 (patch)
tree25e712eb41a0b15c25f0616a1326cfcf30fd3a7b /sys/arch/hp300
parent584c603b312f9885942192cafaf545ad68cd4d62 (diff)
Support 16 partitions.
Diffstat (limited to 'sys/arch/hp300')
-rw-r--r--sys/arch/hp300/conf/files.hp3004
-rw-r--r--sys/arch/hp300/dev/hdvar.h9
-rw-r--r--sys/arch/hp300/dev/sd.c8
-rw-r--r--sys/arch/hp300/dev/sdvar.h9
-rw-r--r--sys/arch/hp300/include/disklabel.h9
5 files changed, 21 insertions, 18 deletions
diff --git a/sys/arch/hp300/conf/files.hp300 b/sys/arch/hp300/conf/files.hp300
index 70618b0bc25..be7031a0d0f 100644
--- a/sys/arch/hp300/conf/files.hp300
+++ b/sys/arch/hp300/conf/files.hp300
@@ -1,10 +1,10 @@
-# $OpenBSD: files.hp300,v 1.3 1997/02/03 08:11:52 downsj Exp $
+# $OpenBSD: files.hp300,v 1.4 1997/02/10 01:33:55 downsj Exp $
# $NetBSD: files.hp300,v 1.22 1997/01/30 22:11:19 scottr Exp $
#
# hp300-specific configuration info
# maxpartitions must be the first item in files.${ARCH}
-maxpartitions 8
+maxpartitions 16
maxusers 2 8 64
diff --git a/sys/arch/hp300/dev/hdvar.h b/sys/arch/hp300/dev/hdvar.h
index 051bdb246a5..85a71d05cfa 100644
--- a/sys/arch/hp300/dev/hdvar.h
+++ b/sys/arch/hp300/dev/hdvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: hdvar.h,v 1.1 1997/02/03 08:11:55 downsj Exp $ */
+/* $OpenBSD: hdvar.h,v 1.2 1997/02/10 01:33:56 downsj Exp $ */
/* $NetBSD: rdvar.h,v 1.6 1997/01/30 09:14:19 thorpej Exp $ */
/*
@@ -91,10 +91,9 @@ struct hd_softc {
#define HDF_WANTED 0x20
#define HDF_WLABEL 0x40
-#define hdunit(x) (minor(x) >> 3)
-#define hdpart(x) (minor(x) & 0x7)
-#define hdpunit(x) ((x) & 7)
-#define hdlabdev(d) (dev_t)(((int)(d)&~7)|2) /* hd?c */
+#define hdunit(x) DISKUNIT(x)
+#define hdpart(x) DISKPART(x)
+#define hdlabdev(d) MAKEDISKDEV(major(d), hdunit(d), RAW_PART)
#define b_cylin b_resid
diff --git a/sys/arch/hp300/dev/sd.c b/sys/arch/hp300/dev/sd.c
index ecc87b4d639..d848472cfd2 100644
--- a/sys/arch/hp300/dev/sd.c
+++ b/sys/arch/hp300/dev/sd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sd.c,v 1.7 1997/02/03 04:47:47 downsj Exp $ */
+/* $OpenBSD: sd.c,v 1.8 1997/02/10 01:33:57 downsj Exp $ */
/* $NetBSD: sd.c,v 1.29 1997/01/30 09:14:20 thorpej Exp $ */
/*
@@ -1022,9 +1022,6 @@ sdioctl(dev, cmd, data, flag, p)
int error, flags;
switch (cmd) {
- default:
- return (EINVAL);
-
case DIOCGDINFO:
*(struct disklabel *)data = *lp;
return (0);
@@ -1106,6 +1103,9 @@ sdioctl(dev, cmd, data, flag, p)
*/
bcopy(&sc->sc_sensestore, data, sizeof(sc->sc_sensestore));
return (0);
+
+ default:
+ return (EINVAL);
}
/*NOTREACHED*/
diff --git a/sys/arch/hp300/dev/sdvar.h b/sys/arch/hp300/dev/sdvar.h
index c3d9921798c..a23d9dccc6b 100644
--- a/sys/arch/hp300/dev/sdvar.h
+++ b/sys/arch/hp300/dev/sdvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: sdvar.h,v 1.6 1997/02/03 04:47:48 downsj Exp $ */
+/* $OpenBSD: sdvar.h,v 1.7 1997/02/10 01:33:58 downsj Exp $ */
/* $NetBSD: sdvar.h,v 1.6 1997/01/30 09:14:22 thorpej Exp $ */
/*
@@ -74,10 +74,9 @@ struct sd_softc {
#define SDF_RMEDIA 0x20
#define SDF_ERROR 0x40
-#define sdunit(x) (minor(x) >> 3)
-#define sdpart(x) (minor(x) & 0x7)
-#define sdpunit(x) ((x) & 7)
-#define sdlabdev(d) (dev_t)(((int)(d)&~7)|2) /* sd?c */
+#define sdunit(x) DISKUNIT(x)
+#define sdpart(x) DISKPART(x)
+#define sdlabdev(d) MAKEDISKDEV(major(d), sdunit(d), RAW_PART)
#define b_cylin b_resid
diff --git a/sys/arch/hp300/include/disklabel.h b/sys/arch/hp300/include/disklabel.h
index 883ac3b1005..98c0a7ce943 100644
--- a/sys/arch/hp300/include/disklabel.h
+++ b/sys/arch/hp300/include/disklabel.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: disklabel.h,v 1.2 1997/01/12 15:13:34 downsj Exp $ */
+/* $OpenBSD: disklabel.h,v 1.3 1997/02/10 01:33:58 downsj Exp $ */
/* $NetBSD: disklabel.h,v 1.1 1994/10/14 18:26:39 cgd Exp $ */
/*
@@ -36,7 +36,7 @@
#define LABELSECTOR (1024 / DEV_BSIZE) /* sector containing label */
#define LABELOFFSET 0 /* offset of label in sector */
-#define MAXPARTITIONS 8 /* number of partitions */
+#define MAXPARTITIONS 16 /* number of partitions */
#define RAW_PART 2 /* raw partition: xx?c */
/* Just a dummy */
@@ -44,4 +44,9 @@ struct cpu_disklabel {
int cd_dummy; /* must have one element. */
};
+#ifdef _KERNEL
+struct disklabel;
+int bounds_check_with_label __P((struct buf *, struct disklabel *, int));
+#endif
+
#endif /* _MACHINE_DISKLABEL_H_ */