Commit 0c4ad8dc2aa144a6269b9c19200c40b67c873d5b

Authored by bellard
1 parent 165c6fc8

ide endianness fixes


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@760 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 6 additions and 10 deletions
hw/ide.c
@@ -352,11 +352,7 @@ static void padstr8(uint8_t *buf, int buf_size, const char *src) @@ -352,11 +352,7 @@ static void padstr8(uint8_t *buf, int buf_size, const char *src)
352 352
353 static void put_le16(uint16_t *p, unsigned int v) 353 static void put_le16(uint16_t *p, unsigned int v)
354 { 354 {
355 -#ifdef WORDS_BIGENDIAN  
356 - *p = bswap16(v);  
357 -#else  
358 - *p = v;  
359 -#endif 355 + *p = cpu_to_le16(v);
360 } 356 }
361 357
362 static void ide_identify(IDEState *s) 358 static void ide_identify(IDEState *s)
@@ -1328,7 +1324,7 @@ static void ide_data_writew(void *opaque, uint32_t addr, uint32_t val) @@ -1328,7 +1324,7 @@ static void ide_data_writew(void *opaque, uint32_t addr, uint32_t val)
1328 uint8_t *p; 1324 uint8_t *p;
1329 1325
1330 p = s->data_ptr; 1326 p = s->data_ptr;
1331 - *(uint16_t *)p = tswap16(val); 1327 + *(uint16_t *)p = le16_to_cpu(val);
1332 p += 2; 1328 p += 2;
1333 s->data_ptr = p; 1329 s->data_ptr = p;
1334 if (p >= s->data_end) 1330 if (p >= s->data_end)
@@ -1341,7 +1337,7 @@ static uint32_t ide_data_readw(void *opaque, uint32_t addr) @@ -1341,7 +1337,7 @@ static uint32_t ide_data_readw(void *opaque, uint32_t addr)
1341 uint8_t *p; 1337 uint8_t *p;
1342 int ret; 1338 int ret;
1343 p = s->data_ptr; 1339 p = s->data_ptr;
1344 - ret = tswap16(*(uint16_t *)p); 1340 + ret = cpu_to_le16(*(uint16_t *)p);
1345 p += 2; 1341 p += 2;
1346 s->data_ptr = p; 1342 s->data_ptr = p;
1347 if (p >= s->data_end) 1343 if (p >= s->data_end)
@@ -1355,7 +1351,7 @@ static void ide_data_writel(void *opaque, uint32_t addr, uint32_t val) @@ -1355,7 +1351,7 @@ static void ide_data_writel(void *opaque, uint32_t addr, uint32_t val)
1355 uint8_t *p; 1351 uint8_t *p;
1356 1352
1357 p = s->data_ptr; 1353 p = s->data_ptr;
1358 - *(uint32_t *)p = tswap32(val); 1354 + *(uint32_t *)p = le32_to_cpu(val);
1359 p += 4; 1355 p += 4;
1360 s->data_ptr = p; 1356 s->data_ptr = p;
1361 if (p >= s->data_end) 1357 if (p >= s->data_end)
@@ -1369,7 +1365,7 @@ static uint32_t ide_data_readl(void *opaque, uint32_t addr) @@ -1369,7 +1365,7 @@ static uint32_t ide_data_readl(void *opaque, uint32_t addr)
1369 int ret; 1365 int ret;
1370 1366
1371 p = s->data_ptr; 1367 p = s->data_ptr;
1372 - ret = tswap32(*(uint32_t *)p); 1368 + ret = cpu_to_le32(*(uint32_t *)p);
1373 p += 4; 1369 p += 4;
1374 s->data_ptr = p; 1370 s->data_ptr = p;
1375 if (p >= s->data_end) 1371 if (p >= s->data_end)
@@ -1417,7 +1413,7 @@ static void ide_guess_geometry(IDEState *s) @@ -1417,7 +1413,7 @@ static void ide_guess_geometry(IDEState *s)
1417 return; 1413 return;
1418 for(i = 0; i < 4; i++) { 1414 for(i = 0; i < 4; i++) {
1419 p = ((struct partition *)(buf + 0x1be)) + i; 1415 p = ((struct partition *)(buf + 0x1be)) + i;
1420 - nr_sects = tswap32(p->nr_sects); 1416 + nr_sects = le32_to_cpu(p->nr_sects);
1421 if (nr_sects && p->end_head) { 1417 if (nr_sects && p->end_head) {
1422 /* We make the assumption that the partition terminates on 1418 /* We make the assumption that the partition terminates on
1423 a cylinder boundary */ 1419 a cylinder boundary */