Hey, > This is the event ring configuration in the MBPL driver from Sierra, > with NUM_MHI_EVT_RING_ELEMENTS=2048: > > static struct mhi_event_properties event_config[] = { > /* num intmod msi chan pri brs type > hw_ev c_m off */ > { NUM_MHI_EVT_RING_ELEMENTS, 1, 1, 0, 1, 2, 1, > 0, 0, 0}, > { NUM_MHI_EVT_RING_ELEMENTS, 1, 2, 100, 1, 3, 0, > 1, 0, 0}, > { NUM_MHI_EVT_RING_ELEMENTS, 1, 3, 101, 1, 3, 0, > 1, 0, 0}, > // { 240, 1, 3, 101, 1, 2, 0, 1, 0, 0}, > // { 240, 1, 4, 0, 1, 2, 1, 0, 0, 0}, > }; > Looking in detail at the table above, I can see at least 2 differences between the Sierra MBPL driver and the upstream one: * In the upstream driver, MHI_EVENT_CONFIG_CTRL() sets irq_moderation_ms to 0, while in the Sierra MBPL driver the table above (intmod column) we can see it's set to 1 in channel 0. * In the upstream driver, MHI_EVENT_CONFIG_HW_DATA() sets mode to MHI_DB_BRST_DISABLE(2), while in the Sierra MBPL driver the table above (brs column) we can see it's set to MHI_DB_BRST_ENABLE (3) in channels 100 and 101. But changing those in my setup to be in line with the MBPL driver didn't make any difference :/ -- Aleksander https://aleksander.es