Skip to content
Snippets Groups Projects
Verified Commit e568ce53 authored by Recolic Keghart's avatar Recolic Keghart
Browse files

another trial

parent 5b11c6b8
No related branches found
No related tags found
No related merge requests found
......@@ -12,14 +12,16 @@ uint8_t pmem[PMEM_SIZE];
/* Memory accessing interfaces */
__attribute__((hot)) uint32_t paddr_read(paddr_t addr, int len) {
switch(len) {
case 4: return pmem_rw(addr, uint32_t);
case 2: return pmem_rw(addr, uint32_t) & 0x0000ffff;
case 1: return pmem_rw(addr, uint32_t) & 0x000000ff;
case 3: return pmem_rw(addr, uint32_t) & 0x00ffffff;
case 0: return 0;
}
return pmem_rw(addr, uint32_t) & (~0u >> ((4 - len) << 3));
static const uint32_t niddle[] = {0, 0xff, 0xffff, 0xffffff, 0xffffffff};
return pmem_rw(addr, uint32_t) & niddle[len];
// switch(len) {
// case 4: return pmem_rw(addr, uint32_t);
// case 2: return pmem_rw(addr, uint32_t) & 0x0000ffff;
// case 1: return pmem_rw(addr, uint32_t) & 0x000000ff;
// case 3: return pmem_rw(addr, uint32_t) & 0x00ffffff;
// case 0: return 0;
// }
// return pmem_rw(addr, uint32_t) & (~0u >> ((4 - len) << 3));
}
void paddr_write(paddr_t addr, uint32_t data, int len) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment