
On Tue, 4 Feb 2025 at 00:23, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
Raspberry Pi 'B' models have an ethernet chipset (the LAN9512). Since we don't yet model it, add a /* TODO */ comment.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- hw/arm/raspi.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
diff --git a/hw/arm/raspi.c b/hw/arm/raspi.c index 1a6a1f8ff22..68332fba027 100644 --- a/hw/arm/raspi.c +++ b/hw/arm/raspi.c @@ -143,6 +143,16 @@ static const char *board_type(uint32_t board_rev) return types[bt].model; }
+static bool is_model_b(uint32_t board_rev) +{ + return !!strchr(board_type(board_rev), 'B'); +} + +static bool has_enet(uint32_t board_rev) +{ + return is_model_b(board_rev); +} + static void write_smpboot(ARMCPU *cpu, const struct arm_boot_info *info) { static const ARMInsnFixup smpboot[] = { @@ -304,6 +314,10 @@ void raspi_base_machine_init(MachineState *machine, machine->kernel_cmdline, &error_abort); qdev_realize(DEVICE(soc), NULL, &error_fatal);
+ if (has_enet(board_rev)) { + /* TODO: model LAN9512 and wire over USB2 */ + } +
Why bother, if we don't do anything anyway? We can say in the TODO comment /* TODO: "B" models have a LAN9512 on the USB bus */ thanks -- PMM