1 #ifndef SMSC_SIO_H 2 #define SMSC_SIO_H 3 4 /****************************************** 5 Keys. They should work with every SMsC SIO 6 ******************************************/ 7 8 #define SMSCSIO_CFGACCESSKEY 0x55 9 #define SMSCSIO_CFGEXITKEY 0xaa 10 11 /***************************** 12 * Generic SIO Flat (!?) * 13 *****************************/ 14 15 /* Register 0x0d */ 16 #define SMSCSIOFLAT_DEVICEID_REG 0x0d 17 18 /* Register 0x0c */ 19 #define SMSCSIOFLAT_UARTMODE0C_REG 0x0c 20 #define SMSCSIOFLAT_UART2MODE_MASK 0x38 21 #define SMSCSIOFLAT_UART2MODE_VAL_COM 0x00 22 #define SMSCSIOFLAT_UART2MODE_VAL_IRDA 0x08 23 #define SMSCSIOFLAT_UART2MODE_VAL_ASKIR 0x10 24 25 /* Register 0x25 */ 26 #define SMSCSIOFLAT_UART2BASEADDR_REG 0x25 27 28 /* Register 0x2b */ 29 #define SMSCSIOFLAT_FIRBASEADDR_REG 0x2b 30 31 /* Register 0x2c */ 32 #define SMSCSIOFLAT_FIRDMASELECT_REG 0x2c 33 #define SMSCSIOFLAT_FIRDMASELECT_MASK 0x0f 34 35 /* Register 0x28 */ 36 #define SMSCSIOFLAT_UARTIRQSELECT_REG 0x28 37 #define SMSCSIOFLAT_UART2IRQSELECT_MASK 0x0f 38 #define SMSCSIOFLAT_UART1IRQSELECT_MASK 0xf0 39 #define SMSCSIOFLAT_UARTIRQSELECT_VAL_NONE 0x00 40 41 42 /********************* 43 * LPC47N227 * 44 *********************/ 45 46 #define LPC47N227_CFGACCESSKEY 0x55 47 #define LPC47N227_CFGEXITKEY 0xaa 48 49 /* Register 0x00 */ 50 #define LPC47N227_FDCPOWERVALIDCONF_REG 0x00 51 #define LPC47N227_FDCPOWER_MASK 0x08 52 #define LPC47N227_VALID_MASK 0x80 53 54 /* Register 0x02 */ 55 #define LPC47N227_UART12POWER_REG 0x02 56 #define LPC47N227_UART1POWERDOWN_MASK 0x08 57 #define LPC47N227_UART2POWERDOWN_MASK 0x80 58 59 /* Register 0x07 */ 60 #define LPC47N227_APMBOOTDRIVE_REG 0x07 61 #define LPC47N227_PARPORT2AUTOPWRDOWN_MASK 0x10 /* auto power down on if set */ 62 #define LPC47N227_UART2AUTOPWRDOWN_MASK 0x20 /* auto power down on if set */ 63 #define LPC47N227_UART1AUTOPWRDOWN_MASK 0x40 /* auto power down on if set */ 64 65 /* Register 0x0c */ 66 #define LPC47N227_UARTMODE0C_REG 0x0c 67 #define LPC47N227_UART2MODE_MASK 0x38 68 #define LPC47N227_UART2MODE_VAL_COM 0x00 69 #define LPC47N227_UART2MODE_VAL_IRDA 0x08 70 #define LPC47N227_UART2MODE_VAL_ASKIR 0x10 71 72 /* Register 0x0d */ 73 #define LPC47N227_DEVICEID_REG 0x0d 74 #define LPC47N227_DEVICEID_DEFVAL 0x5a 75 76 /* Register 0x0e */ 77 #define LPC47N227_REVISIONID_REG 0x0e 78 79 /* Register 0x25 */ 80 #define LPC47N227_UART2BASEADDR_REG 0x25 81 82 /* Register 0x28 */ 83 #define LPC47N227_UARTIRQSELECT_REG 0x28 84 #define LPC47N227_UART2IRQSELECT_MASK 0x0f 85 #define LPC47N227_UART1IRQSELECT_MASK 0xf0 86 #define LPC47N227_UARTIRQSELECT_VAL_NONE 0x00 87 88 /* Register 0x2b */ 89 #define LPC47N227_FIRBASEADDR_REG 0x2b 90 91 /* Register 0x2c */ 92 #define LPC47N227_FIRDMASELECT_REG 0x2c 93 #define LPC47N227_FIRDMASELECT_MASK 0x0f 94 #define LPC47N227_FIRDMASELECT_VAL_DMA1 0x01 /* 47n227 has three dma channels */ 95 #define LPC47N227_FIRDMASELECT_VAL_DMA2 0x02 96 #define LPC47N227_FIRDMASELECT_VAL_DMA3 0x03 97 #define LPC47N227_FIRDMASELECT_VAL_NONE 0x0f 98 99 100 #endif 101