mirror of
https://github.com/AmbiML/sparrow-kata-full.git
synced 2025-08-24 07:48:19 +00:00
Enables UART tx_watermark interrupts
With Renode at HEAD, this causes an infinite loop. It seems like the Renode OpenTitan UART does not have "edge triggered" behavior. Change-Id: Ic553ce34cabaf8287c7969904d6336d1acf339a0 GitOrigin-RevId: 010f0d7045d40ea6b0900fc74d79fe92df0fae69
This commit is contained in:
parent
b7727a0823
commit
b35f77a2fe
@ -163,12 +163,7 @@ void pre_init() {
|
||||
|
||||
// Enables interrupts.
|
||||
REG(INTR_ENABLE) = (
|
||||
// TODO(mattharvey): Enable tx_watermark. Currently the handler fires
|
||||
// repeatedly in a loop when doing this, even while the TX FIFO remains
|
||||
// empty, contrary to the "edge triggered events" working in the OpenTitan
|
||||
// docs. Check that Renode is doing the right thing and if so debug after
|
||||
// re-enabling this.
|
||||
// BIT(UART_INTR_COMMON_TX_WATERMARK) |
|
||||
BIT(UART_INTR_COMMON_TX_WATERMARK) |
|
||||
BIT(UART_INTR_COMMON_RX_WATERMARK) | BIT(UART_INTR_COMMON_TX_EMPTY));
|
||||
}
|
||||
|
||||
@ -239,9 +234,6 @@ void tx_update(uint32_t num_valid_dataport_bytes) {
|
||||
// These happen when the transmit FIFO is half-empty. This refills the FIFO to
|
||||
// prevent stalling, stopping early if tx_buf becomes empty, and then signals
|
||||
// any tx_update that might be waiting for tx_buf to not be full.
|
||||
//
|
||||
// Currently this is not actually enabled. See the TODO in the implementation of
|
||||
// pre_init.
|
||||
void tx_watermark_handle(void) {
|
||||
fill_tx_fifo();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user