fs_translating_port_proxy.hh (12532:a86ce386add1) | fs_translating_port_proxy.hh (14008:e36048ba1c2c) |
---|---|
1/* 2 * Copyright (c) 2011 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 67 unchanged lines hidden (view full) --- 76 ThreadContext* _tc; 77 78 public: 79 80 FSTranslatingPortProxy(ThreadContext* tc); 81 82 FSTranslatingPortProxy(MasterPort &port, unsigned int cacheLineSize); 83 | 1/* 2 * Copyright (c) 2011 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 67 unchanged lines hidden (view full) --- 76 ThreadContext* _tc; 77 78 public: 79 80 FSTranslatingPortProxy(ThreadContext* tc); 81 82 FSTranslatingPortProxy(MasterPort &port, unsigned int cacheLineSize); 83 |
84 ~FSTranslatingPortProxy(); | 84 ~FSTranslatingPortProxy() {} |
85 | 85 |
86 /** Version of readblob that translates virt->phys and deals | 86 /** Version of tryReadblob that translates virt->phys and deals |
87 * with page boundries. */ | 87 * with page boundries. */ |
88 void readBlob(Addr addr, uint8_t *p, int size) const override; | 88 bool tryReadBlob(Addr addr, uint8_t *p, int size) const override; |
89 | 89 |
90 /** Version of writeBlob that translates virt->phys and deals | 90 /** Version of tryWriteBlob that translates virt->phys and deals |
91 * with page boundries. */ | 91 * with page boundries. */ |
92 void writeBlob(Addr addr, const uint8_t *p, int size) const override; | 92 bool tryWriteBlob(Addr addr, const uint8_t *p, int size) const override; |
93 94 /** 95 * Fill size bytes starting at addr with byte value val. 96 */ | 93 94 /** 95 * Fill size bytes starting at addr with byte value val. 96 */ |
97 void memsetBlob(Addr address, uint8_t v, int size) const override; | 97 bool tryMemsetBlob(Addr address, uint8_t v, int size) const override; |
98}; 99 100void CopyOut(ThreadContext *tc, void *dest, Addr src, size_t cplen); 101void CopyIn(ThreadContext *tc, Addr dest, const void *source, size_t cplen); 102void CopyStringOut(ThreadContext *tc, char *dst, Addr vaddr, size_t maxlen); 103void CopyStringIn(ThreadContext *tc, const char *src, Addr vaddr); 104 105#endif //__MEM_FS_TRANSLATING_PORT_PROXY_HH__ | 98}; 99 100void CopyOut(ThreadContext *tc, void *dest, Addr src, size_t cplen); 101void CopyIn(ThreadContext *tc, Addr dest, const void *source, size_t cplen); 102void CopyStringOut(ThreadContext *tc, char *dst, Addr vaddr, size_t maxlen); 103void CopyStringIn(ThreadContext *tc, const char *src, Addr vaddr); 104 105#endif //__MEM_FS_TRANSLATING_PORT_PROXY_HH__ |