Changeset 80bcaed in mainline for kernel/generic/include/console/chardev.h
- Timestamp:
- 2007-02-03T13:22:24Z (18 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- f619ec11
- Parents:
- fa8e7d2
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/console/chardev.h
rfa8e7d2 r80bcaed 46 46 /* Character device operations interface. */ 47 47 typedef struct { 48 void (* suspend)(struct chardev *); /**< Suspend pushing characters. */ 49 void (* resume)(struct chardev *); /**< Resume pushing characters. */ 50 void (* write)(struct chardev *, char c); /**< Write character to stream. */ 51 /** Read character directly from device, assume interrupts disabled */ 48 /** Suspend pushing characters. */ 49 void (* suspend)(struct chardev *); 50 /** Resume pushing characters. */ 51 void (* resume)(struct chardev *); 52 /** Write character to stream. */ 53 void (* write)(struct chardev *, char c); 54 /** Read character directly from device, assume interrupts disabled. */ 52 55 char (* read)(struct chardev *); 53 56 } chardev_operations_t; … … 58 61 59 62 waitq_t wq; 60 SPINLOCK_DECLARE(lock); /**< Protects everything below. */ 63 /** Protects everything below. */ 64 SPINLOCK_DECLARE(lock); 61 65 uint8_t buffer[CHARDEV_BUFLEN]; 62 66 count_t counter; 63 chardev_operations_t *op; /**< Implementation of chardev operations. */ 67 /** Implementation of chardev operations. */ 68 chardev_operations_t *op; 64 69 index_t index; 65 70 void *data; 66 71 } chardev_t; 67 72 68 extern void chardev_initialize(char *name, 69 chardev_t *chardev, 70 chardev_operations_t *op); 73 extern void chardev_initialize(char *name, chardev_t *chardev, 74 chardev_operations_t *op); 71 75 extern void chardev_push_character(chardev_t *chardev, uint8_t ch); 72 76
Note:
See TracChangeset
for help on using the changeset viewer.