提交 09564574 编写于 作者: P Paul Brook

OHCI address decoding fix

Ignore high address bits when PCI memory window is not mapped on a page
boundary.
Signed-off-by: NPaul Brook <paul@codesourcery.com>
上级 11165820
......@@ -1415,6 +1415,8 @@ static uint32_t ohci_mem_read(void *ptr, target_phys_addr_t addr)
OHCIState *ohci = ptr;
uint32_t retval;
addr &= 0xff;
/* Only aligned reads are allowed on OHCI */
if (addr & 3) {
fprintf(stderr, "usb-ohci: Mis-aligned read\n");
......@@ -1538,6 +1540,8 @@ static void ohci_mem_write(void *ptr, target_phys_addr_t addr, uint32_t val)
{
OHCIState *ohci = ptr;
addr &= 0xff;
#ifdef TARGET_WORDS_BIGENDIAN
val = bswap32(val);
#endif
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册