Subversion Repositories HelenOS

Rev

Rev 3655 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3655 Rev 3902
Line 75... Line 75...
75
    volatile ioport_t io_port;
75
    volatile ioport_t io_port;
76
} ns16550_t;
76
} ns16550_t;
77
 
77
 
78
static inline uint8_t ns16550_rbr_read(ns16550_t *dev)
78
static inline uint8_t ns16550_rbr_read(ns16550_t *dev)
79
{
79
{
80
    return inb(dev->io_port + RBR_REG);
80
    return pio_read_8(dev->io_port + RBR_REG);
81
}
81
}
82
static inline void ns16550_rbr_write(ns16550_t *dev, uint8_t v)
82
static inline void ns16550_rbr_write(ns16550_t *dev, uint8_t v)
83
{
83
{
84
    outb(dev->io_port + RBR_REG, v);
84
    pio_write_8(dev->io_port + RBR_REG, v);
85
}
85
}
86
 
86
 
87
static inline uint8_t ns16550_ier_read(ns16550_t *dev)
87
static inline uint8_t ns16550_ier_read(ns16550_t *dev)
88
{
88
{
89
    return inb(dev->io_port + IER_REG);
89
    return pio_read_8(dev->io_port + IER_REG);
90
}
90
}
91
 
91
 
92
static inline void ns16550_ier_write(ns16550_t *dev, uint8_t v)
92
static inline void ns16550_ier_write(ns16550_t *dev, uint8_t v)
93
{
93
{
94
    outb(dev->io_port + IER_REG, v);
94
    pio_write_8(dev->io_port + IER_REG, v);
95
}
95
}
96
 
96
 
97
static inline uint8_t ns16550_iir_read(ns16550_t *dev)
97
static inline uint8_t ns16550_iir_read(ns16550_t *dev)
98
{
98
{
99
    return inb(dev->io_port + IIR_REG);
99
    return pio_read_8(dev->io_port + IIR_REG);
100
}
100
}
101
 
101
 
102
static inline void ns16550_fcr_write(ns16550_t *dev, uint8_t v)
102
static inline void ns16550_fcr_write(ns16550_t *dev, uint8_t v)
103
{
103
{
104
    outb(dev->io_port + FCR_REG, v);
104
    pio_write_8(dev->io_port + FCR_REG, v);
105
}
105
}
106
 
106
 
107
static inline uint8_t ns16550_lcr_read(ns16550_t *dev)
107
static inline uint8_t ns16550_lcr_read(ns16550_t *dev)
108
{
108
{
109
    return inb(dev->io_port + LCR_REG);
109
    return pio_read_8(dev->io_port + LCR_REG);
110
}
110
}
111
 
111
 
112
static inline void ns16550_lcr_write(ns16550_t *dev, uint8_t v)
112
static inline void ns16550_lcr_write(ns16550_t *dev, uint8_t v)
113
{
113
{
114
    outb(dev->io_port + LCR_REG, v);
114
    pio_write_8(dev->io_port + LCR_REG, v);
115
}
115
}
116
 
116
 
117
static inline uint8_t ns16550_lsr_read(ns16550_t *dev)
117
static inline uint8_t ns16550_lsr_read(ns16550_t *dev)
118
{
118
{
119
    return inb(dev->io_port + LSR_REG);
119
    return pio_read_8(dev->io_port + LSR_REG);
120
}
120
}
121
 
121
 
122
static inline uint8_t ns16550_mcr_read(ns16550_t *dev)
122
static inline uint8_t ns16550_mcr_read(ns16550_t *dev)
123
{
123
{
124
    return inb(dev->io_port + MCR_REG);
124
    return pio_read_8(dev->io_port + MCR_REG);
125
}
125
}
126
 
126
 
127
static inline void ns16550_mcr_write(ns16550_t *dev, uint8_t v)
127
static inline void ns16550_mcr_write(ns16550_t *dev, uint8_t v)
128
{
128
{
129
    outb(dev->io_port + MCR_REG, v);
129
    pio_write_8(dev->io_port + MCR_REG, v);
130
}
130
}
131
 
131
 
132
#endif
132
#endif
133
 
133
 
134
/** @}
134
/** @}