Browse Source

hw/i3c/aspeed: Add I3C bus get function

To retrieve the I3C bus object normally, the order is Aspeed I3C -> DW
I3C[n] -> bus object, so make a nice wrapper for people to use.

Signed-off-by: Joe Komlodi <komlodi@google.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
Tested-by: Jithu Joseph <jithu.joseph@oss.qualcomm.com>
Link: https://lore.kernel.org/qemu-devel/20260225021158.1586584-18-jamin_lin@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
master
Jamin Lin 5 months ago
committed by Cédric Le Goater
parent
commit
7ffc895802
  1. 9
      hw/i3c/aspeed_i3c.c
  2. 3
      include/hw/i3c/aspeed_i3c.h

9
hw/i3c/aspeed_i3c.c

@ -153,6 +153,15 @@ static const MemoryRegionOps aspeed_i3c_ops = {
}
};
I3CBus *aspeed_i3c_get_bus(AspeedI3CState *s, uint8_t bus_num)
{
if (bus_num < ARRAY_SIZE(s->devices)) {
return s->devices[bus_num].bus;
}
/* Developer error, fail fast. */
g_assert_not_reached();
}
static void aspeed_i3c_reset(DeviceState *dev)
{
AspeedI3CState *s = ASPEED_I3C(dev);

3
include/hw/i3c/aspeed_i3c.h

@ -31,4 +31,7 @@ struct AspeedI3CState {
DWI3C devices[ASPEED_I3C_NR_DEVICES];
uint8_t id;
};
I3CBus *aspeed_i3c_get_bus(AspeedI3CState *s, uint8_t bus_num);
#endif /* ASPEED_I3C_H */

Loading…
Cancel
Save