mirror of https://gitee.com/openkylin/qemu.git
esp: use pdma_origin directly in esp_pdma_read()/esp_pdma_write()
This is the first step in removing get_pdma_buf() from esp.c. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20210304221103.6369-17-mark.cave-ayland@ilande.co.uk>
This commit is contained in:
parent
761bef75dd
commit
6e3fafa8bb
|
@ -153,16 +153,38 @@ static uint8_t *get_pdma_buf(ESPState *s)
|
|||
|
||||
static uint8_t esp_pdma_read(ESPState *s)
|
||||
{
|
||||
uint8_t *buf = get_pdma_buf(s);
|
||||
|
||||
return buf[s->pdma_cur++];
|
||||
switch (s->pdma_origin) {
|
||||
case PDMA:
|
||||
return s->pdma_buf[s->pdma_cur++];
|
||||
case TI:
|
||||
return s->ti_buf[s->pdma_cur++];
|
||||
case CMD:
|
||||
return s->cmdbuf[s->pdma_cur++];
|
||||
case ASYNC:
|
||||
return s->async_buf[s->pdma_cur++];
|
||||
default:
|
||||
g_assert_not_reached();
|
||||
}
|
||||
}
|
||||
|
||||
static void esp_pdma_write(ESPState *s, uint8_t val)
|
||||
{
|
||||
uint8_t *buf = get_pdma_buf(s);
|
||||
|
||||
buf[s->pdma_cur++] = val;
|
||||
switch (s->pdma_origin) {
|
||||
case PDMA:
|
||||
s->pdma_buf[s->pdma_cur++] = val;
|
||||
break;
|
||||
case TI:
|
||||
s->ti_buf[s->pdma_cur++] = val;
|
||||
break;
|
||||
case CMD:
|
||||
s->cmdbuf[s->pdma_cur++] = val;
|
||||
break;
|
||||
case ASYNC:
|
||||
s->async_buf[s->pdma_cur++] = val;
|
||||
break;
|
||||
default:
|
||||
g_assert_not_reached();
|
||||
}
|
||||
}
|
||||
|
||||
static int get_cmd_cb(ESPState *s)
|
||||
|
|
Loading…
Reference in New Issue