1 /* $NetBSD: auxioreg.h,v 1.8 2015/07/11 10:32:46 kamil Exp $ */ 2 3 /* 4 * Copyright (c) 2000 Matthew R. Green 5 * All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 17 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 18 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 19 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 20 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 21 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 23 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 24 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26 * SUCH DAMAGE. 27 */ 28 29 /* 30 * The AUXIO registers; their offset in the Ebus2 address space, plus the 31 * bits for each register. Note that the fdthree (FD), SUNW,CS4231 (AUDIO) 32 * and power (POWER) devices on the Ebus2 have their AUXIO registers mapped 33 * into their own "reg" properties, not the "auxio" device's "reg" properties. 34 */ 35 #define AUXIO_FD 0x00720000 36 #define AUXIO_FD_DENSENSE_INPUT 0x0 37 #define AUXIO_FD_DENSENSE_OUTPUT 0x1 38 39 #define AUXIO_AUDIO 0x00722000 40 #define AUXIO_AUDIO_POWERDOWN 0x0 41 42 #define AUXIO_POWER 0x00724000 43 #define AUXIO_POWER_SYSTEM_OFF 0x0 44 #define AUXIO_POWER_COURTESY_OFF 0x1 45 46 #define AUXIO_LED 0x00726000 47 /* XXX: these may be useless on Ebus2 auxio! find out! */ 48 #define AUXIO_LED_LED 0x01 /* front panel LED */ 49 #define AUXIO_LED_FTC 0x02 /* floppy: drives Terminal Count pin */ 50 #define AUXIO_LED_MMUX 0x04 /* Monitor/Mouse MUX; what is it? */ 51 #define AUXIO_LED_LTE 0x08 /* link-test enable */ 52 #define AUXIO_LED_FHD 0x20 /* floppy: high density (unreliable?)*/ 53 #define AUXIO_LED_FLOPPY_MASK (AUXIO_LED_FTC) 54 55 #define AUXIO_PCI 0x00728000 56 #define AUXIO_PCI_SLOT0 0x0 /* two bits each */ 57 #define AUXIO_PCI_SLOT1 0x2 58 #define AUXIO_PCI_SLOT2 0x4 59 #define AUXIO_PCI_SLOT3 0x6 60 #define AUXIO_PCI_MODE 0x8 61 62 #define AUXIO_FREQ 0x0072a000 63 #define AUXIO_FREQ_FREQ0 0x0 64 #define AUXIO_FREQ_FREQ1 0x1 65 #define AUXIO_FREQ_FREQ2 0x2 66 67 #define AUXIO_SCSI 0x0072c000 68 #define AUXIO_SCSI_INT_OSC_EN 0x0 69 #define AUXIO_SCSI_EXT_OSC_EN 0x1 70 71 #define AUXIO_TEMP 0x0072f000 72 #define AUXIO_TEMP_SELECT 0x0 73 #define AUXIO_TEMP_CLOCK 0x1 74 #define AUXIO_TEMP_ENABLE 0x2 75 #define AUXIO_TEMP_DATAOUT 0x3 76 #define AUXIO_TEMP_DATAINT 0x4 77 78 #define FTC_FLIP \ 79 do { \ 80 auxio_fd_control(AUXIO_LED_FTC); \ 81 auxio_fd_control(0); \ 82 } while (0) 83