VirtualBox

Changeset 46243 in vbox for trunk/src


Ignore:
Timestamp:
May 23, 2013 4:09:52 PM (12 years ago)
Author:
vboxsync
Message:

BusLogic: Implemented busmaster fifo r/w commands.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Storage/DevBusLogic.cpp

    r45025 r46243  
    19991999            break;
    20002000        }
     2001        case BUSLOGICCOMMAND_WRITE_BUSMASTER_CHIP_FIFO:
     2002        {
     2003            RTGCPHYS GCPhysFifoBuf;
     2004            Addr24   addr;
     2005
     2006            pBusLogic->cbReplyParametersLeft = 0;
     2007            addr.hi  = pBusLogic->aCommandBuffer[0];
     2008            addr.mid = pBusLogic->aCommandBuffer[1];
     2009            addr.lo  = pBusLogic->aCommandBuffer[2];
     2010            GCPhysFifoBuf = (RTGCPHYS)ADDR_TO_U32(addr);
     2011            Log(("Write busmaster FIFO at: %04X\n", ADDR_TO_U32(addr)));
     2012            PDMDevHlpPhysRead(pBusLogic->CTX_SUFF(pDevIns), GCPhysFifoBuf,
     2013                              &pBusLogic->LocalRam.u8View[64], 64);
     2014            break;
     2015        }
     2016        case BUSLOGICCOMMAND_READ_BUSMASTER_CHIP_FIFO:
     2017        {
     2018            RTGCPHYS GCPhysFifoBuf;
     2019            Addr24   addr;
     2020
     2021            pBusLogic->cbReplyParametersLeft = 0;
     2022            addr.hi  = pBusLogic->aCommandBuffer[0];
     2023            addr.mid = pBusLogic->aCommandBuffer[1];
     2024            addr.lo  = pBusLogic->aCommandBuffer[2];
     2025            GCPhysFifoBuf = (RTGCPHYS)ADDR_TO_U32(addr);
     2026            Log(("Read busmaster FIFO at: %04X\n", ADDR_TO_U32(addr)));
     2027            PDMDevHlpPCIPhysWrite(pBusLogic->CTX_SUFF(pDevIns), GCPhysFifoBuf,
     2028                                  &pBusLogic->LocalRam.u8View[64], 64);
     2029            break;
     2030        }
    20012031        default:
    20022032            AssertMsgFailed(("Invalid command %#x\n", pBusLogic->uOperationCode));
     
    22212251                        pBusLogic->cbCommandParametersLeft = 2;
    22222252                        break;
     2253                    case BUSLOGICCOMMAND_READ_BUSMASTER_CHIP_FIFO:
     2254                    case BUSLOGICCOMMAND_WRITE_BUSMASTER_CHIP_FIFO:
     2255                        pBusLogic->cbCommandParametersLeft = 3;
     2256                        break;
    22232257                    case BUSLOGICCOMMAND_INITIALIZE_MAILBOX:
    22242258                        pBusLogic->cbCommandParametersLeft = sizeof(RequestInitMbx);
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette