Revision 32600a30 hw/e1000.c

b/hw/e1000.c
857 857
    E1000State *s = opaque;
858 858
    unsigned int index = (addr & 0x1ffff) >> 2;
859 859

  
860
#ifdef TARGET_WORDS_BIGENDIAN
861
    val = bswap32(val);
862
#endif
863 860
    if (index < NWRITEOPS && macreg_writeops[index]) {
864 861
        macreg_writeops[index](s, index, val);
865 862
    } else if (index < NREADOPS && macreg_readops[index]) {
......
894 891

  
895 892
    if (index < NREADOPS && macreg_readops[index])
896 893
    {
897
        uint32_t val = macreg_readops[index](s, index);
898
#ifdef TARGET_WORDS_BIGENDIAN
899
        val = bswap32(val);
900
#endif
901
        return val;
894
        return macreg_readops[index](s, index);
902 895
    }
903 896
    DBGOUT(UNKNOWN, "MMIO unknown read addr=0x%08x\n", index<<2);
904 897
    return 0;
......
1131 1124
    pci_conf[PCI_INTERRUPT_PIN] = 1; // interrupt pin 0
1132 1125

  
1133 1126
    d->mmio_index = cpu_register_io_memory(e1000_mmio_read,
1134
            e1000_mmio_write, d, DEVICE_NATIVE_ENDIAN);
1127
            e1000_mmio_write, d, DEVICE_LITTLE_ENDIAN);
1135 1128

  
1136 1129
    pci_register_bar(&d->dev, 0, PNPMMIO_SIZE,
1137 1130
                           PCI_BASE_ADDRESS_SPACE_MEMORY, e1000_mmio_map);

Also available in: Unified diff