mirror of https://github.com/xqemu/xqemu.git
ide: change identify_data type to uint8_t
It is used everywhere as uint8_t except in one place. Cast to uint16_t in that place Signed-off-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
6521dc629c
commit
96c35cebfe
|
@ -1942,28 +1942,29 @@ void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val)
|
||||||
break;
|
break;
|
||||||
case 0x03: { /* set transfer mode */
|
case 0x03: { /* set transfer mode */
|
||||||
uint8_t val = s->nsector & 0x07;
|
uint8_t val = s->nsector & 0x07;
|
||||||
|
uint16_t *identify_data = (uint16_t *)s->identify_data;
|
||||||
|
|
||||||
switch (s->nsector >> 3) {
|
switch (s->nsector >> 3) {
|
||||||
case 0x00: /* pio default */
|
case 0x00: /* pio default */
|
||||||
case 0x01: /* pio mode */
|
case 0x01: /* pio mode */
|
||||||
put_le16(s->identify_data + 62,0x07);
|
put_le16(identify_data + 62,0x07);
|
||||||
put_le16(s->identify_data + 63,0x07);
|
put_le16(identify_data + 63,0x07);
|
||||||
put_le16(s->identify_data + 88,0x3f);
|
put_le16(identify_data + 88,0x3f);
|
||||||
break;
|
break;
|
||||||
case 0x02: /* sigle word dma mode*/
|
case 0x02: /* sigle word dma mode*/
|
||||||
put_le16(s->identify_data + 62,0x07 | (1 << (val + 8)));
|
put_le16(identify_data + 62,0x07 | (1 << (val + 8)));
|
||||||
put_le16(s->identify_data + 63,0x07);
|
put_le16(identify_data + 63,0x07);
|
||||||
put_le16(s->identify_data + 88,0x3f);
|
put_le16(identify_data + 88,0x3f);
|
||||||
break;
|
break;
|
||||||
case 0x04: /* mdma mode */
|
case 0x04: /* mdma mode */
|
||||||
put_le16(s->identify_data + 62,0x07);
|
put_le16(identify_data + 62,0x07);
|
||||||
put_le16(s->identify_data + 63,0x07 | (1 << (val + 8)));
|
put_le16(identify_data + 63,0x07 | (1 << (val + 8)));
|
||||||
put_le16(s->identify_data + 88,0x3f);
|
put_le16(identify_data + 88,0x3f);
|
||||||
break;
|
break;
|
||||||
case 0x08: /* udma mode */
|
case 0x08: /* udma mode */
|
||||||
put_le16(s->identify_data + 62,0x07);
|
put_le16(identify_data + 62,0x07);
|
||||||
put_le16(s->identify_data + 63,0x07);
|
put_le16(identify_data + 63,0x07);
|
||||||
put_le16(s->identify_data + 88,0x3f | (1 << (val + 8)));
|
put_le16(identify_data + 88,0x3f | (1 << (val + 8)));
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
goto abort_cmd;
|
goto abort_cmd;
|
||||||
|
|
|
@ -374,7 +374,7 @@ struct IDEState {
|
||||||
int64_t nb_sectors;
|
int64_t nb_sectors;
|
||||||
int mult_sectors;
|
int mult_sectors;
|
||||||
int identify_set;
|
int identify_set;
|
||||||
uint16_t identify_data[256];
|
uint8_t identify_data[512];
|
||||||
int drive_serial;
|
int drive_serial;
|
||||||
char drive_serial_str[21];
|
char drive_serial_str[21];
|
||||||
/* ide regs */
|
/* ide regs */
|
||||||
|
|
Loading…
Reference in New Issue