Annotation of Gnu-Mach/linux/pcmcia-cs/modules/o2micro.h, revision 1.1

1.1     ! root        1: /*
        !             2:  * o2micro.h 1.20 2002/03/03 14:16:57
        !             3:  *
        !             4:  * The contents of this file are subject to the Mozilla Public License
        !             5:  * Version 1.1 (the "License"); you may not use this file except in
        !             6:  * compliance with the License. You may obtain a copy of the License
        !             7:  * at http://www.mozilla.org/MPL/
        !             8:  *
        !             9:  * Software distributed under the License is distributed on an "AS IS"
        !            10:  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
        !            11:  * the License for the specific language governing rights and
        !            12:  * limitations under the License. 
        !            13:  *
        !            14:  * The initial developer of the original code is David A. Hinds
        !            15:  * <[email protected]>.  Portions created by David A. Hinds
        !            16:  * are Copyright (C) 1999 David A. Hinds.  All Rights Reserved.
        !            17:  *
        !            18:  * Alternatively, the contents of this file may be used under the
        !            19:  * terms of the GNU General Public License version 2 (the "GPL"), in
        !            20:  * which case the provisions of the GPL are applicable instead of the
        !            21:  * above.  If you wish to allow the use of your version of this file
        !            22:  * only under the terms of the GPL and not to allow others to use
        !            23:  * your version of this file under the MPL, indicate your decision by
        !            24:  * deleting the provisions above and replace them with the notice and
        !            25:  * other provisions required by the GPL.  If you do not delete the
        !            26:  * provisions above, a recipient may use your version of this file
        !            27:  * under either the MPL or the GPL.
        !            28:  */
        !            29: 
        !            30: #ifndef _LINUX_O2MICRO_H
        !            31: #define _LINUX_O2MICRO_H
        !            32: 
        !            33: #ifndef PCI_VENDOR_ID_O2
        !            34: #define PCI_VENDOR_ID_O2               0x1217
        !            35: #endif
        !            36: #ifndef PCI_DEVICE_ID_O2_6729
        !            37: #define PCI_DEVICE_ID_O2_6729          0x6729
        !            38: #endif
        !            39: #ifndef PCI_DEVICE_ID_O2_6730
        !            40: #define PCI_DEVICE_ID_O2_6730          0x673a
        !            41: #endif
        !            42: #ifndef PCI_DEVICE_ID_O2_6832
        !            43: #define PCI_DEVICE_ID_O2_6832          0x6832
        !            44: #endif
        !            45: #ifndef PCI_DEVICE_ID_O2_6836
        !            46: #define PCI_DEVICE_ID_O2_6836          0x6836
        !            47: #endif
        !            48: #ifndef PCI_DEVICE_ID_O2_6812
        !            49: #define PCI_DEVICE_ID_O2_6812          0x6872
        !            50: #endif
        !            51: #ifndef PCI_DEVICE_ID_O2_6922
        !            52: #define PCI_DEVICE_ID_O2_6922          0x6825
        !            53: #endif
        !            54: #ifndef PCI_DEVICE_ID_O2_6933
        !            55: #define PCI_DEVICE_ID_O2_6933          0x6933
        !            56: #endif
        !            57: #ifndef PCI_DEVICE_ID_O2_6912
        !            58: #define PCI_DEVICE_ID_O2_6912          0x6972
        !            59: #endif
        !            60: 
        !            61: /* Additional PCI configuration registers */
        !            62: 
        !            63: #define O2_MUX_CONTROL         0x90    /* 32 bit */
        !            64: #define  O2_MUX_RING_OUT       0x0000000f
        !            65: #define  O2_MUX_SKTB_ACTV      0x000000f0
        !            66: #define  O2_MUX_SCTA_ACTV_ENA  0x00000100
        !            67: #define  O2_MUX_SCTB_ACTV_ENA  0x00000200
        !            68: #define  O2_MUX_SER_IRQ_ROUTE  0x0000e000
        !            69: #define  O2_MUX_SER_PCI                0x00010000
        !            70: 
        !            71: #define  O2_MUX_SKTA_TURBO     0x000c0000      /* for 6833, 6860 */
        !            72: #define  O2_MUX_SKTB_TURBO     0x00300000
        !            73: #define  O2_MUX_AUX_VCC_3V     0x00400000
        !            74: #define  O2_MUX_PCI_VCC_5V     0x00800000
        !            75: #define  O2_MUX_PME_MUX                0x0f000000
        !            76: 
        !            77: /* Additional ExCA registers */
        !            78: 
        !            79: #define O2_MODE_A              0x38
        !            80: #define O2_MODE_A_2            0x26    /* for 6833B, 6860C */
        !            81: #define  O2_MODE_A_CD_PULSE    0x04
        !            82: #define  O2_MODE_A_SUSP_EDGE   0x08
        !            83: #define  O2_MODE_A_HOST_SUSP   0x10
        !            84: #define  O2_MODE_A_PWR_MASK    0x60
        !            85: #define  O2_MODE_A_QUIET       0x80
        !            86: 
        !            87: #define O2_MODE_B              0x39
        !            88: #define O2_MODE_B_2            0x2e    /* for 6833B, 6860C */
        !            89: #define  O2_MODE_B_IDENT       0x03
        !            90: #define  O2_MODE_B_ID_BSTEP    0x00
        !            91: #define  O2_MODE_B_ID_CSTEP    0x01
        !            92: #define  O2_MODE_B_ID_O2       0x02
        !            93: #define  O2_MODE_B_VS1         0x04
        !            94: #define  O2_MODE_B_VS2         0x08
        !            95: #define  O2_MODE_B_IRQ15_RI    0x80
        !            96: 
        !            97: #define O2_MODE_C              0x3a
        !            98: #define  O2_MODE_C_DREQ_MASK   0x03
        !            99: #define  O2_MODE_C_DREQ_INPACK 0x01
        !           100: #define  O2_MODE_C_DREQ_WP     0x02
        !           101: #define  O2_MODE_C_DREQ_BVD2   0x03
        !           102: #define  O2_MODE_C_ZVIDEO      0x08
        !           103: #define  O2_MODE_C_IREQ_SEL    0x30
        !           104: #define  O2_MODE_C_MGMT_SEL    0xc0
        !           105: 
        !           106: #define O2_MODE_D              0x3b
        !           107: #define  O2_MODE_D_IRQ_MODE    0x03
        !           108: #define  O2_MODE_D_IRQ_PCPCI   0x00
        !           109: #define  O2_MODE_D_IRQ_PCIWAY  0x02
        !           110: #define  O2_MODE_D_IRQ_PCI     0x03
        !           111: #define  O2_MODE_D_PCI_CLKRUN  0x04
        !           112: #define  O2_MODE_D_CB_CLKRUN   0x08
        !           113: #define  O2_MODE_D_SKT_ACTV    0x20
        !           114: #define  O2_MODE_D_PCI_FIFO    0x40    /* for OZ6729, OZ6730 */
        !           115: #define  O2_MODE_D_W97_IRQ     0x40
        !           116: #define  O2_MODE_D_ISA_IRQ     0x80
        !           117: 
        !           118: #define O2_MHPG_DMA            0x3c
        !           119: #define  O2_MHPG_CHANNEL       0x07
        !           120: #define  O2_MHPG_CINT_ENA      0x08
        !           121: #define  O2_MHPG_CSC_ENA       0x10
        !           122: 
        !           123: #define O2_FIFO_ENA            0x3d
        !           124: #define  O2_FIFO_ZVIDEO_3      0x08
        !           125: #define  O2_FIFO_PCI_FIFO      0x10
        !           126: #define  O2_FIFO_POSTWR                0x40
        !           127: #define  O2_FIFO_BUFFER                0x80
        !           128: 
        !           129: #define O2_MODE_E              0x3e
        !           130: #define  O2_MODE_E_MHPG_DMA    0x01
        !           131: #define  O2_MODE_E_SPKR_OUT    0x02
        !           132: #define  O2_MODE_E_LED_OUT     0x08
        !           133: #define  O2_MODE_E_SKTA_ACTV   0x10
        !           134: 
        !           135: /* Data structure for tracking vendor-specific state */
        !           136: typedef struct o2micro_state_t {
        !           137:     u_char             mode_a;         /* O2_MODE_A */
        !           138:     u_char             mode_b;         /* O2_MODE_B */
        !           139:     u_char             mode_c;         /* O2_MODE_C */
        !           140:     u_char             mode_d;         /* O2_MODE_D */
        !           141:     u_char             mhpg;           /* O2_MHPG_DMA */
        !           142:     u_char             fifo;           /* O2_FIFO_ENA */
        !           143:     u_char             mode_e;         /* O2_MODE_E */
        !           144: } o2micro_state_t;
        !           145: 
        !           146: #define O2MICRO_PCIC_ID \
        !           147:     IS_OZ6729, IS_OZ6730, IS_OZ6832, IS_OZ6836, IS_OZ6812,     \
        !           148:     IS_OZ6922, IS_OZ6933, IS_OZ6912
        !           149: 
        !           150: #define O2MICRO_PCIC_INFO \
        !           151:     { "O2Micro OZ6729", IS_O2MICRO|IS_PCI|IS_VG_PWR, ID(O2, 6729) },   \
        !           152:     { "O2Micro OZ6730", IS_O2MICRO|IS_PCI|IS_VG_PWR, ID(O2, 6730) },   \
        !           153:     { "O2Micro OZ6832/33", IS_O2MICRO|IS_CARDBUS, ID(O2, 6832) },      \
        !           154:     { "O2Micro OZ6836/60", IS_O2MICRO|IS_CARDBUS, ID(O2, 6836) },      \
        !           155:     { "O2Micro OZ6812", IS_O2MICRO|IS_CARDBUS, ID(O2, 6812) },         \
        !           156:     { "O2Micro OZ6922", IS_O2MICRO|IS_CARDBUS, ID(O2, 6922) },         \
        !           157:     { "O2Micro OZ6933", IS_O2MICRO|IS_CARDBUS, ID(O2, 6933) },         \
        !           158:     { "O2Micro OZ6912", IS_O2MICRO|IS_CARDBUS, ID(O2, 6912) }
        !           159: 
        !           160: #endif /* _LINUX_O2MICRO_H */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.