diff options
Diffstat (limited to 'kernel/drivers')
-rw-r--r-- | kernel/drivers/keyboard.c | 1 | ||||
-rw-r--r-- | kernel/drivers/rtl8139.c | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/kernel/drivers/keyboard.c b/kernel/drivers/keyboard.c index f59e6a8..da04b1c 100644 --- a/kernel/drivers/keyboard.c +++ b/kernel/drivers/keyboard.c @@ -183,6 +183,7 @@ int keyboard_read(u8 *buffer, u64 offset, u64 len, vfs_fd_t *fd) { } void add_keyboard(void) { + kprintf("very important"); kb_inode = devfs_add_file("/keyboard", keyboard_read, NULL, NULL, 0, 0, FS_TYPE_CHAR_DEVICE); } diff --git a/kernel/drivers/rtl8139.c b/kernel/drivers/rtl8139.c index 6e738db..b178078 100644 --- a/kernel/drivers/rtl8139.c +++ b/kernel/drivers/rtl8139.c @@ -105,6 +105,12 @@ void rtl8139_handler(void *regs) { } void rtl8139_send_data(u8 *data, u16 data_size) { + if (data_size > 0x1000) { + rtl8139_send_data(data, 0x1000); + data += 0x1000; + data_size -= 0x1000; + return rtl8139_send_data(data, data_size); + } kprintf("ipc_write\n"); ipc_write(0, data, data_size); /* |