Module Name: src Committed By: mlelstv Date: Sun Nov 9 10:10:08 UTC 2014
Modified Files: src/sys/arch/emips/ebus: ace_ebus.c flash_ebus.c src/sys/dev/mca: ed_mca.c src/sys/dev/mscp: mscp_disk.c src/sys/dev/ofw: ofdisk.c src/sys/dev/qbus: rl.c Log Message: support DIOCMWEDGES ioctl To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/sys/arch/emips/ebus/ace_ebus.c cvs rdiff -u -r1.11 -r1.12 src/sys/arch/emips/ebus/flash_ebus.c cvs rdiff -u -r1.58 -r1.59 src/sys/dev/mca/ed_mca.c cvs rdiff -u -r1.81 -r1.82 src/sys/dev/mscp/mscp_disk.c cvs rdiff -u -r1.47 -r1.48 src/sys/dev/ofw/ofdisk.c cvs rdiff -u -r1.45 -r1.46 src/sys/dev/qbus/rl.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/emips/ebus/ace_ebus.c diff -u src/sys/arch/emips/ebus/ace_ebus.c:1.13 src/sys/arch/emips/ebus/ace_ebus.c:1.14 --- src/sys/arch/emips/ebus/ace_ebus.c:1.13 Sun Aug 10 16:44:33 2014 +++ src/sys/arch/emips/ebus/ace_ebus.c Sun Nov 9 10:10:08 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: ace_ebus.c,v 1.13 2014/08/10 16:44:33 tls Exp $ */ +/* $NetBSD: ace_ebus.c,v 1.14 2014/11/09 10:10:08 mlelstv Exp $ */ /*- * Copyright (c) 2010 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ace_ebus.c,v 1.13 2014/08/10 16:44:33 tls Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ace_ebus.c,v 1.14 2014/11/09 10:10:08 mlelstv Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -2278,6 +2278,15 @@ aceioctl(dev_t dev, u_long xfer, void *a return dkwedge_list(&ace->sc_dk, dkwl, l); } + case DIOCMWEDGES: + { + if ((flag & FWRITE) == 0) + return EBADF; + + dkwedge_discover(&ace->sc_dk); + return 0; + } + case DIOCGSTRATEGY: { struct disk_strategy *dks = (void *)addr; Index: src/sys/arch/emips/ebus/flash_ebus.c diff -u src/sys/arch/emips/ebus/flash_ebus.c:1.11 src/sys/arch/emips/ebus/flash_ebus.c:1.12 --- src/sys/arch/emips/ebus/flash_ebus.c:1.11 Sun Aug 10 16:44:33 2014 +++ src/sys/arch/emips/ebus/flash_ebus.c Sun Nov 9 10:10:08 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: flash_ebus.c,v 1.11 2014/08/10 16:44:33 tls Exp $ */ +/* $NetBSD: flash_ebus.c,v 1.12 2014/11/09 10:10:08 mlelstv Exp $ */ /*- * Copyright (c) 2010 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> /* RCS ID & Copyright macro defns */ -__KERNEL_RCSID(0, "$NetBSD: flash_ebus.c,v 1.11 2014/08/10 16:44:33 tls Exp $"); +__KERNEL_RCSID(0, "$NetBSD: flash_ebus.c,v 1.12 2014/11/09 10:10:08 mlelstv Exp $"); /* Driver for the Intel 28F320/640/128 (J3A150) StrataFlash memory device * Extended to include the Intel JS28F256P30T95. @@ -2195,6 +2195,15 @@ eflashioctl(dev_t dev, u_long xfer, void return (dkwedge_list(&sc->sc_dk, dkwl, l)); } + case DIOCMWEDGES: + { + if ((flag & FWRITE) == 0) + return (EBADF); + + dkwedge_discover(&sc->sc_dk); + return 0; + } + case DIOCGSTRATEGY: { struct disk_strategy *dks = (void *)addr; Index: src/sys/dev/mca/ed_mca.c diff -u src/sys/dev/mca/ed_mca.c:1.58 src/sys/dev/mca/ed_mca.c:1.59 --- src/sys/dev/mca/ed_mca.c:1.58 Sun Aug 10 16:44:35 2014 +++ src/sys/dev/mca/ed_mca.c Sun Nov 9 10:10:08 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: ed_mca.c,v 1.58 2014/08/10 16:44:35 tls Exp $ */ +/* $NetBSD: ed_mca.c,v 1.59 2014/11/09 10:10:08 mlelstv Exp $ */ /* * Copyright (c) 2001 The NetBSD Foundation, Inc. @@ -34,7 +34,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ed_mca.c,v 1.58 2014/08/10 16:44:35 tls Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ed_mca.c,v 1.59 2014/11/09 10:10:08 mlelstv Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -602,6 +602,15 @@ edmcaioctl(dev_t dev, u_long xfer, void return (dkwedge_list(&ed->sc_dk, dkwl, l)); } + case DIOCMWEDGES: + { + if ((flag & FWRITE) == 0) + return (EBADF); + + dkwedge_discover(&ed->sc_dk); + return 0; + } + default: return ENOTTY; } Index: src/sys/dev/mscp/mscp_disk.c diff -u src/sys/dev/mscp/mscp_disk.c:1.81 src/sys/dev/mscp/mscp_disk.c:1.82 --- src/sys/dev/mscp/mscp_disk.c:1.81 Fri Jul 25 08:10:37 2014 +++ src/sys/dev/mscp/mscp_disk.c Sun Nov 9 10:10:08 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: mscp_disk.c,v 1.81 2014/07/25 08:10:37 dholland Exp $ */ +/* $NetBSD: mscp_disk.c,v 1.82 2014/11/09 10:10:08 mlelstv Exp $ */ /* * Copyright (c) 1988 Regents of the University of California. * All rights reserved. @@ -82,7 +82,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: mscp_disk.c,v 1.81 2014/07/25 08:10:37 dholland Exp $"); +__KERNEL_RCSID(0, "$NetBSD: mscp_disk.c,v 1.82 2014/11/09 10:10:08 mlelstv Exp $"); #include <sys/param.h> #include <sys/buf.h> @@ -530,6 +530,15 @@ raioctl(dev_t dev, u_long cmd, void *dat return (dkwedge_list(&ra->ra_disk, dkwl, l)); } + case DIOCMWEDGES: + { + if ((flag & FWRITE) == 0) + return (EBADF); + + dkwedge_discover(&ra->ra_disk); + return 0; + } + default: error = ENOTTY; break; Index: src/sys/dev/ofw/ofdisk.c diff -u src/sys/dev/ofw/ofdisk.c:1.47 src/sys/dev/ofw/ofdisk.c:1.48 --- src/sys/dev/ofw/ofdisk.c:1.47 Fri Jul 25 08:10:37 2014 +++ src/sys/dev/ofw/ofdisk.c Sun Nov 9 10:10:08 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: ofdisk.c,v 1.47 2014/07/25 08:10:37 dholland Exp $ */ +/* $NetBSD: ofdisk.c,v 1.48 2014/11/09 10:10:08 mlelstv Exp $ */ /* * Copyright (C) 1995, 1996 Wolfgang Solfrank. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ofdisk.c,v 1.47 2014/07/25 08:10:37 dholland Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ofdisk.c,v 1.48 2014/11/09 10:10:08 mlelstv Exp $"); #include <sys/param.h> #include <sys/buf.h> @@ -473,6 +473,18 @@ ofdisk_ioctl(dev_t dev, u_long cmd, void return (dkwedge_list(&of->sc_dk, dkwl, l)); } + case DIOCMWEDGES: + { + if (OFDISK_FLOPPY_P(of)) + return (ENOTTY); + + if ((flag & FWRITE) == 0) + return (EBADF); + + dkwedge_discover(&of->sc_dk); + return 0; + } + default: return ENOTTY; } Index: src/sys/dev/qbus/rl.c diff -u src/sys/dev/qbus/rl.c:1.45 src/sys/dev/qbus/rl.c:1.46 --- src/sys/dev/qbus/rl.c:1.45 Fri Jul 25 08:10:38 2014 +++ src/sys/dev/qbus/rl.c Sun Nov 9 10:10:08 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: rl.c,v 1.45 2014/07/25 08:10:38 dholland Exp $ */ +/* $NetBSD: rl.c,v 1.46 2014/11/09 10:10:08 mlelstv Exp $ */ /* * Copyright (c) 2000 Ludd, University of Lule}, Sweden. All rights reserved. @@ -43,7 +43,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: rl.c,v 1.45 2014/07/25 08:10:38 dholland Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rl.c,v 1.46 2014/11/09 10:10:08 mlelstv Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -535,6 +535,14 @@ rlioctl(dev_t dev, u_long cmd, void *add return dkwedge_list(&rc->rc_disk, dkwl, l); } + case DIOCMWEDGES: { + if ((flag & FWRITE) == 0) + return (EBADF); + + dkwedge_discover(&rc->rc_disk); + return 0; + } + default: err = ENOTTY; break;