hw/arm/omap1: Remove unused omap_uwire_attach() method
The recently removed 'cheetah' machine was the single user of the omap_uwire_attach() method. Remove it altogether with the uWireSlave structure. Replace the send/receive callbacks by Unimplemented logging. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
35152940b7
commit
a5397d805d
@ -2170,29 +2170,27 @@ struct omap_uwire_s {
|
||||
uint16_t rxbuf;
|
||||
uint16_t control;
|
||||
uint16_t setup[5];
|
||||
|
||||
uWireSlave *chip[4];
|
||||
};
|
||||
|
||||
static void omap_uwire_transfer_start(struct omap_uwire_s *s)
|
||||
{
|
||||
int chipselect = (s->control >> 10) & 3; /* INDEX */
|
||||
uWireSlave *slave = s->chip[chipselect];
|
||||
|
||||
if ((s->control >> 5) & 0x1f) { /* NB_BITS_WR */
|
||||
if (s->control & (1 << 12)) /* CS_CMD */
|
||||
if (slave && slave->send)
|
||||
slave->send(slave->opaque,
|
||||
s->txbuf >> (16 - ((s->control >> 5) & 0x1f)));
|
||||
if (s->control & (1 << 12)) { /* CS_CMD */
|
||||
qemu_log_mask(LOG_UNIMP, "uWireSlave TX CS:%d data:0x%04x\n",
|
||||
chipselect,
|
||||
s->txbuf >> (16 - ((s->control >> 5) & 0x1f)));
|
||||
}
|
||||
s->control &= ~(1 << 14); /* CSRB */
|
||||
/* TODO: depending on s->setup[4] bits [1:0] assert an IRQ or
|
||||
* a DRQ. When is the level IRQ supposed to be reset? */
|
||||
}
|
||||
|
||||
if ((s->control >> 0) & 0x1f) { /* NB_BITS_RD */
|
||||
if (s->control & (1 << 12)) /* CS_CMD */
|
||||
if (slave && slave->receive)
|
||||
s->rxbuf = slave->receive(slave->opaque);
|
||||
if (s->control & (1 << 12)) { /* CS_CMD */
|
||||
qemu_log_mask(LOG_UNIMP, "uWireSlave RX CS:%d\n", chipselect);
|
||||
}
|
||||
s->control |= 1 << 15; /* RDRB */
|
||||
/* TODO: depending on s->setup[4] bits [1:0] assert an IRQ or
|
||||
* a DRQ. When is the level IRQ supposed to be reset? */
|
||||
@ -2321,17 +2319,6 @@ static struct omap_uwire_s *omap_uwire_init(MemoryRegion *system_memory,
|
||||
return s;
|
||||
}
|
||||
|
||||
void omap_uwire_attach(struct omap_uwire_s *s,
|
||||
uWireSlave *slave, int chipselect)
|
||||
{
|
||||
if (chipselect < 0 || chipselect > 3) {
|
||||
error_report("%s: Bad chipselect %i", __func__, chipselect);
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
s->chip[chipselect] = slave;
|
||||
}
|
||||
|
||||
/* Pseudonoise Pulse-Width Light Modulator */
|
||||
struct omap_pwl_s {
|
||||
MemoryRegion iomem;
|
||||
|
@ -490,15 +490,7 @@ qemu_irq *omap_mpuio_in_get(struct omap_mpuio_s *s);
|
||||
void omap_mpuio_out_set(struct omap_mpuio_s *s, int line, qemu_irq handler);
|
||||
void omap_mpuio_key(struct omap_mpuio_s *s, int row, int col, int down);
|
||||
|
||||
typedef struct uWireSlave {
|
||||
uint16_t (*receive)(void *opaque);
|
||||
void (*send)(void *opaque, uint16_t data);
|
||||
void *opaque;
|
||||
} uWireSlave;
|
||||
|
||||
struct omap_uwire_s;
|
||||
void omap_uwire_attach(struct omap_uwire_s *s,
|
||||
uWireSlave *slave, int chipselect);
|
||||
|
||||
struct I2SCodec {
|
||||
void *opaque;
|
||||
|
Loading…
Reference in New Issue
Block a user