This fixes a possible endianness issue in the usb-ohci hw module. hcca.frame and ohci->frame_number are 16bit, so use cpu_to_le16().
Signed-off-by: Michael Buesch <m...@bu3sch.de> --- Resend. This patch was already sent on 2009/07/08, but the problem is still present in trunk. --- hw/usb-ohci.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- trunk.orig/hw/usb-ohci.c +++ trunk/hw/usb-ohci.c @@ -1150,9 +1150,9 @@ static void ohci_frame_boundary(void *op /* Frame boundary, so do EOF stuf here */ ohci->frt = ohci->fit; - /* XXX: endianness */ + /* Increment frame number and take care of endianness. */ ohci->frame_number = (ohci->frame_number + 1) & 0xffff; - hcca.frame = cpu_to_le32(ohci->frame_number); + hcca.frame = cpu_to_le16(ohci->frame_number); if (ohci->done_count == 0 && !(ohci->intr_status & OHCI_INTR_WD)) { if (!ohci->done) -- Greetings, Michael.