boot: driver chatter goes to the log; the console clears its margins

ACPI, DMI, SMP, xHCI, USB, I2C, NVMe, r8169 and ramdisk progress lines are
kinfo now: in dmesg and on a verbose boot, off the screen of a working
machine. Failures stay cprintf.

vt_repaint also paints the strip right of the last column and below the
last row, which kept the bottom of the X desktop after Ctrl+Alt+F-key.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S1giNvrHTrPMPw7V6x1kQ4
This commit is contained in:
Nexoniarz 2026-10-25 01:53:46 +02:00
commit c65bfa3fa3
16 changed files with 57 additions and 42 deletions

View file

@ -272,7 +272,7 @@ prt_lookup(uacpi_pci_routing_table *t, int slot, int pin, int *mode)
if (f.gsi <= 0) {
uacpi_object_name nm = uacpi_namespace_node_name(e->source);
char name[5] = { nm.text[0], nm.text[1], nm.text[2], nm.text[3], 0 };
cprintf("acpi: link %s for slot %d is disabled\n", name, slot);
kinfo("acpi: link %s for slot %d is disabled\n", name, slot);
return -1;
}
*mode = f.mode;

View file

@ -121,7 +121,7 @@ uacpi_kernel_log(uacpi_log_level level, const uacpi_char *msg)
switch (level) {
case UACPI_LOG_ERROR:
case UACPI_LOG_WARN:
cprintf("acpi: %s", msg);
kinfo("acpi: %s", msg);
break;
case UACPI_LOG_INFO:
kinfo("acpi: %s", msg);

View file

@ -421,7 +421,7 @@ controller(const char *path, uint32 speed)
if(dw_init(c, node, speed) < 0)
return 0;
nctl++;
cprintf("i2c: %s at 0x%p, %s mode, FIFOs %d/%d\n", path, c->phys,
kinfo("i2c: %s at 0x%p, %s mode, FIFOs %d/%d\n", path, c->phys,
c->fast ? "fast" : "standard", c->txdepth, c->rxdepth);
return c;
}
@ -541,12 +541,12 @@ probe(void *user, uacpi_namespace_node *node, uacpi_u32 depth)
STEP("i2c-hid: %s: reading its resources\n", d->name);
if(resources(node, &f) < 0 || !f.i2c){
cprintf("i2c-hid: %s has no I2C connection\n", d->name);
kinfo("i2c-hid: %s has no I2C connection\n", d->name);
return UACPI_ITERATION_DECISION_CONTINUE;
}
STEP("i2c-hid: %s: _DSM\n", d->name);
if(hid_desc_register(node, &descreg) < 0){
cprintf("i2c-hid: %s: _DSM gave no descriptor register\n", d->name);
kinfo("i2c-hid: %s: _DSM gave no descriptor register\n", d->name);
return UACPI_ITERATION_DECISION_CONTINUE;
}
STEP("i2c-hid: %s: controller %s, address 0x%x\n", d->name, f.bus, f.addr);
@ -601,10 +601,10 @@ probe(void *user, uacpi_namespace_node *node, uacpi_u32 depth)
d->hid = hid_attach(rdesc, rlen, what);
kfree((char *)rdesc);
if(d->hid == 0){
cprintf("i2c-hid: %s is neither a keyboard nor a pointer\n", d->name);
kinfo("i2c-hid: %s is neither a keyboard nor a pointer\n", d->name);
return UACPI_ITERATION_DECISION_CONTINUE;
}
cprintf("i2c-hid: %s: %x:%x at 0x%x, %s\n", d->name,
kinfo("i2c-hid: %s: %x:%x at 0x%x, %s\n", d->name,
desc[20] | desc[21] << 8, desc[22] | desc[23] << 8, d->addr,
d->pin ? "interrupt pin watched" : "polled");
ndev++;