1*a499e569Sfvdl /* $NetBSD: linux_hdio.h,v 1.1 2000/12/10 14:12:17 fvdl Exp $ */ 2*a499e569Sfvdl 3*a499e569Sfvdl /* 4*a499e569Sfvdl * Copyright (c) 2000 Wasabi Systems, Inc. 5*a499e569Sfvdl * All rights reserved. 6*a499e569Sfvdl * 7*a499e569Sfvdl * Written by Frank van der Linden for Wasabi Systems, Inc. 8*a499e569Sfvdl * 9*a499e569Sfvdl * Redistribution and use in source and binary forms, with or without 10*a499e569Sfvdl * modification, are permitted provided that the following conditions 11*a499e569Sfvdl * are met: 12*a499e569Sfvdl * 1. Redistributions of source code must retain the above copyright 13*a499e569Sfvdl * notice, this list of conditions and the following disclaimer. 14*a499e569Sfvdl * 2. Redistributions in binary form must reproduce the above copyright 15*a499e569Sfvdl * notice, this list of conditions and the following disclaimer in the 16*a499e569Sfvdl * documentation and/or other materials provided with the distribution. 17*a499e569Sfvdl * 3. All advertising materials mentioning features or use of this software 18*a499e569Sfvdl * must display the following acknowledgement: 19*a499e569Sfvdl * This product includes software developed for the NetBSD Project by 20*a499e569Sfvdl * Wasabi Systems, Inc. 21*a499e569Sfvdl * 4. The name of Wasabi Systems, Inc. may not be used to endorse 22*a499e569Sfvdl * or promote products derived from this software without specific prior 23*a499e569Sfvdl * written permission. 24*a499e569Sfvdl * 25*a499e569Sfvdl * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND 26*a499e569Sfvdl * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 27*a499e569Sfvdl * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 28*a499e569Sfvdl * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL WASABI SYSTEMS, INC 29*a499e569Sfvdl * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 30*a499e569Sfvdl * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 31*a499e569Sfvdl * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 32*a499e569Sfvdl * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 33*a499e569Sfvdl * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 34*a499e569Sfvdl * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 35*a499e569Sfvdl * POSSIBILITY OF SUCH DAMAGE. 36*a499e569Sfvdl */ 37*a499e569Sfvdl 38*a499e569Sfvdl #ifndef _LINUX_HDIO_H 39*a499e569Sfvdl #define _LINUX_HDIO_H 40*a499e569Sfvdl 41*a499e569Sfvdl /* 42*a499e569Sfvdl * Linux 'hd' (mostly really IDE disk) ioctl calls. 43*a499e569Sfvdl */ 44*a499e569Sfvdl 45*a499e569Sfvdl #define LINUX_HDIO_GETGEO 0x0301 46*a499e569Sfvdl #define LINUX_HDIO_GETGEO_BIG 0x0330 47*a499e569Sfvdl #define LINUX_HDIO_GETGEO_BIG_RAW 0x0331 48*a499e569Sfvdl #define LINUX_HDIO_GET_UNMASKINTR 0x0302 49*a499e569Sfvdl #define LINUX_HDIO_GET_MULTCOUNT 0x0304 50*a499e569Sfvdl #define LINUX_HDIO_OBSOLETE_IDENTITY 0x0307 51*a499e569Sfvdl #define LINUX_HDIO_GET_KEEPSETTINGS 0x0308 52*a499e569Sfvdl #define LINUX_HDIO_GET_32BIT 0x0309 53*a499e569Sfvdl #define LINUX_HDIO_GET_NOWERR 0x030a 54*a499e569Sfvdl #define LINUX_HDIO_GET_DMA 0x030b 55*a499e569Sfvdl #define LINUX_HDIO_GET_NICE 0x030c 56*a499e569Sfvdl #define LINUX_HDIO_GET_IDENTITY 0x030d 57*a499e569Sfvdl 58*a499e569Sfvdl #define LINUX_HDIO_DRIVE_RESET 0x031c 59*a499e569Sfvdl #define LINUX_HDIO_TRISTATE_HWIF 0x031d 60*a499e569Sfvdl #define LINUX_HDIO_DRIVE_TASK 0x031e 61*a499e569Sfvdl #define LINUX_HDIO_DRIVE_CMD 0x031f 62*a499e569Sfvdl 63*a499e569Sfvdl #define LINUX_HDIO_SET_MULTCOUNT 0x0321 64*a499e569Sfvdl #define LINUX_HDIO_SET_UNMASKINTR 0x0322 65*a499e569Sfvdl #define LINUX_HDIO_SET_KEEPSETTINGS 0x0323 66*a499e569Sfvdl #define LINUX_HDIO_SET_32BIT 0x0324 67*a499e569Sfvdl #define LINUX_HDIO_SET_NOWERR 0x0325 68*a499e569Sfvdl #define LINUX_HDIO_SET_DMA 0x0326 69*a499e569Sfvdl #define LINUX_HDIO_SET_PIO_MODE 0x0327 70*a499e569Sfvdl #define LINUX_HDIO_SCAN_HWIF 0x0328 71*a499e569Sfvdl #define LINUX_HDIO_SET_NICE 0x0329 72*a499e569Sfvdl #define LINUX_HDIO_UNREGISTER_HWIF 0x032a 73*a499e569Sfvdl 74*a499e569Sfvdl struct linux_hd_geometry { 75*a499e569Sfvdl u_char heads; 76*a499e569Sfvdl u_char sectors; 77*a499e569Sfvdl u_short cylinders; 78*a499e569Sfvdl u_long start; 79*a499e569Sfvdl }; 80*a499e569Sfvdl 81*a499e569Sfvdl struct linux_hd_big_geometry { 82*a499e569Sfvdl u_char heads; 83*a499e569Sfvdl u_char sectors; 84*a499e569Sfvdl u_int cylinders; 85*a499e569Sfvdl u_long start; 86*a499e569Sfvdl }; 87*a499e569Sfvdl 88*a499e569Sfvdl #endif /* _LINUX_HDIO_H */ 89