Changeset 39e1b9a in mainline for kernel/genarch/src/drivers/ns16550/ns16550.c
- Timestamp:
- 2025-04-17T15:37:05Z (5 days ago)
- Branches:
- master
- Children:
- 250a435
- Parents:
- 690ad20
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2025-04-14 16:54:54)
- git-committer:
- Jiří Zárevúcky <zarevucky.jiri@…> (2025-04-17 15:37:05)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/genarch/src/drivers/ns16550/ns16550.c
r690ad20 r39e1b9a 112 112 } 113 113 114 static void ns16550_ putuchar(outdev_t *dev, char32_t ch)114 static void ns16550_write(outdev_t *dev, const char *s, size_t n) 115 115 { 116 116 ns16550_instance_t *instance = (ns16550_instance_t *) dev->data; 117 117 118 if ((!instance->parea.mapped) || (console_override)) { 119 if (ch == '\n') 118 if (instance->parea.mapped && !console_override) 119 return; 120 121 const char *top = s + n; 122 assert(top >= s); 123 124 for (; s < top; s++) { 125 if (*s == '\n') 120 126 ns16550_sendb(instance, '\r'); 121 127 122 if (ascii_check(ch)) 123 ns16550_sendb(instance, (uint8_t) ch); 124 else 125 ns16550_sendb(instance, U_SPECIAL); 128 ns16550_sendb(instance, (uint8_t) *s); 126 129 } 127 130 } 128 131 129 132 static outdev_operations_t ns16550_ops = { 130 .write = ns16550_ putuchar,133 .write = ns16550_write, 131 134 .redraw = NULL 132 135 };
Note:
See TracChangeset
for help on using the changeset viewer.