Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions drivers/espi/espi_realtek_rts5912.c
Original file line number Diff line number Diff line change
Expand Up @@ -670,6 +670,8 @@ static void espi_periph_ch_setup(const struct device *dev)

#ifdef CONFIG_ESPI_PERIPHERAL_DEBUG_PORT_80

#define P80_MAX_ITEM 16

static void espi_port80_isr(const struct device *dev)
{
const struct espi_rts5912_config *const espi_config = dev->config;
Expand All @@ -679,8 +681,13 @@ static void espi_port80_isr(const struct device *dev)
ESPI_PERIPHERAL_NODATA};
volatile struct port80_reg *const port80_reg = espi_config->port80_reg;

evt.evt_data = port80_reg->DATA;
espi_send_callbacks(&espi_data->callbacks, dev, evt);
int i = 0;

while (!(port80_reg->STS & PORT80_STS_FIFOEM) && i < P80_MAX_ITEM) {
evt.evt_data = port80_reg->DATA;
espi_send_callbacks(&espi_data->callbacks, dev, evt);
i++;
}
}

static int espi_peri_ch_port80_setup(const struct device *dev)
Expand Down