46 [kDtI2cRegBlockCore] = 0x40080000,
57 [kDtI2cPeriphIoSda] = {
65 [kDtI2cPeriphIoScl] = {
78 [kDtI2cRegBlockCore] = 0x40090000,
89 [kDtI2cPeriphIoSda] = {
97 [kDtI2cPeriphIoScl] = {
110 [kDtI2cRegBlockCore] = 0x400A0000,
121 [kDtI2cPeriphIoSda] = {
129 [kDtI2cPeriphIoScl] = {
146#define TRY_GET_DT(dt, default) ({ if ((dt) < (dt_i2c_t)0 || (dt) >= kDtI2cCount) return (default); &i2c_desc[dt]; })
164 return TRY_GET_DT(dt, 0xdeadbeef)->base_addr[reg_block];
171 if (first_irq == kDtPlicIrqIdNone) {
172 return kDtPlicIrqIdNone;
182 if (first_irq == kDtPlicIrqIdNone) {
195 return (
dt_alert_id_t)((uint32_t)i2c_desc[dt].first_alert + (uint32_t)alert);
202 if (alert < i2c_desc[dt].first_alert || alert >= i2c_desc[dt].first_alert + (
dt_alert_id_t)count) {
213 return TRY_GET_DT(dt, kDtPeriphIoConstantHighZ)->periph_io[sig];