drivers: log devices.csv columns + friendly labels for all buses
Each bus's discovery line now prints the device's would-be /etc/devices.csv row (bus, base, class, prog_if, vendor, device, subsystem / hid) in uppercase hex, followed by the human-readable names — so a row for a new driver reads straight off the boot log, for pci, usb, and acpi alike. - pci-bus: logFunction moved to registerAndReport (where vendor/device/subsystem are read from config space) and reformatted to columns + names; subsystem prints '*' when the function has none. Read unclaimed via the bridge ECAM, so no per-function claim is needed. - usb-xhci-bus, acpi: the same column framing on their existing discovery lines. - qemu_test.py: the acpi-ps2 and acpi-report regexes updated to the new ACPI format (both verified passing in QEMU). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KJqSiLLchDUUCoXn5jsiwd
This commit is contained in:
@@ -214,11 +214,13 @@ fn onInit(endpoint: ipc.Handle) bool {
|
||||
while (i < registered_count) : (i += 1) {
|
||||
const entry = registered[i];
|
||||
const hid = entry.hid[0..entry.hid_len];
|
||||
// The devices.csv columns (bus=acpi, hid) then the human-readable name — a
|
||||
// would-be /etc/devices.csv row read straight off the boot log.
|
||||
const desc = acpi_ids.description(hid);
|
||||
if (desc.len != 0)
|
||||
std.log.info("reported {s} (device {d}, {d} resources) — {s}", .{ hid, entry.device_id, entry.resource_count, desc })
|
||||
std.log.info("device {d} bus=acpi hid={s} — {s} ({d} resources)", .{ entry.device_id, hid, desc, entry.resource_count })
|
||||
else
|
||||
std.log.info("reported {s} (device {d}, {d} resources)", .{ hid, entry.device_id, entry.resource_count });
|
||||
std.log.info("device {d} bus=acpi hid={s} ({d} resources)", .{ entry.device_id, hid, entry.resource_count });
|
||||
if (manager) |h| {
|
||||
var report = device_manager_protocol.ChildAdded{ .bus = @intFromEnum(device_manager_protocol.BusKind.acpi), .parent = node_id, .bus_address = entry.device_id, .identity = 0, .device_id = entry.device_id };
|
||||
@memcpy(report.hid[0..entry.hid_len], entry.hid[0..entry.hid_len]);
|
||||
|
||||
Reference in New Issue
Block a user