Subversion Repositories HelenOS

Compare Revisions

Regard whitespace Rev 4055 → Rev 4156

/branches/dd/kernel/genarch/include/drivers/ns16550/ns16550.h
48,7 → 48,7
#define MCR_OUT2 0x08 /** OUT2. */
 
/** NS16550 registers. */
struct ns16550 {
typedef struct {
ioport8_t rbr; /**< Receiver Buffer Register. */
ioport8_t ier; /**< Interrupt Enable Register. */
union {
58,21 → 58,16
ioport8_t lcr; /**< Line Control register. */
ioport8_t mcr; /**< Modem Control Register. */
ioport8_t lsr; /**< Line Status Register. */
} __attribute__ ((packed));
typedef struct ns16550 ns16550_t;
} __attribute__ ((packed)) ns16550_t;
 
/** Structure representing the ns16550 device. */
typedef struct ns16550_instance {
devno_t devno;
typedef struct {
ns16550_t *ns16550;
irq_t irq;
chardev_t *devout;
indev_t kbrdin;
} ns16550_instance_t;
 
extern bool ns16550_init(ns16550_t *, devno_t, inr_t, cir_t, void *,
chardev_t *);
extern irq_ownership_t ns16550_claim(irq_t *);
extern void ns16550_irq_handler(irq_t *);
extern indev_t *ns16550_init(ns16550_t *, inr_t, cir_t, void *);
 
#endif