nuclear@0: #ifndef PIT8254_H_ nuclear@0: #define PIT8254_H_ nuclear@0: nuclear@0: /* frequency of the oscillator driving the 8254 timer */ nuclear@0: #define OSC_FREQ_HZ 1193182 nuclear@0: nuclear@0: /* I/O ports connected to the 8254 */ nuclear@0: #define PORT_DATA0 0x40 nuclear@0: #define PORT_DATA1 0x41 nuclear@0: #define PORT_DATA2 0x42 nuclear@0: #define PORT_CMD 0x43 nuclear@0: nuclear@0: /* command bits */ nuclear@0: #define CMD_CHAN0 0 nuclear@0: #define CMD_CHAN1 (1 << 6) nuclear@0: #define CMD_CHAN2 (2 << 6) nuclear@0: #define CMD_RDBACK (3 << 6) nuclear@0: nuclear@0: #define CMD_LATCH 0 nuclear@0: #define CMD_ACCESS_LOW (1 << 4) nuclear@0: #define CMD_ACCESS_HIGH (2 << 4) nuclear@0: #define CMD_ACCESS_BOTH (3 << 4) nuclear@0: nuclear@0: #define CMD_OP_INT_TERM 0 nuclear@0: #define CMD_OP_ONESHOT (1 << 1) nuclear@0: #define CMD_OP_RATE (2 << 1) nuclear@0: #define CMD_OP_SQWAVE (3 << 1) nuclear@0: #define CMD_OP_SW_STROBE (4 << 1) nuclear@0: #define CMD_OP_HW_STROBE (5 << 1) nuclear@0: nuclear@0: #define CMD_MODE_BIN 0 nuclear@0: #define CMD_MODE_BCD 1 nuclear@0: nuclear@0: #endif /* PIT8254_H_ */