summaryrefslogtreecommitdiff
path: root/firmware/export/pp5020.h
diff options
context:
space:
mode:
authorWilliam Wilgus <wilgus.william@gmail.com>2021-03-29 10:04:04 -0400
committerWilliam Wilgus <wilgus.william@gmail.com>2021-04-01 00:52:57 -0400
commit89acde6af2c9d8ff4a647e7abd737b18333cad80 (patch)
tree92c9ec13b6292c1cbc2abf6b0692fff49e95cd02 /firmware/export/pp5020.h
parent058a9ec9453fed05872d10c72913bbc7034d32d8 (diff)
downloadrockbox-89acde6af2c9d8ff4a647e7abd737b18333cad80.tar.gz
rockbox-89acde6af2c9d8ff4a647e7abd737b18333cad80.zip
H10 PP Crash -- Fixed
This appears to finally fix the issue turns out the status register we were writing was only for the CPU COP cache flush wiped out the CPU cache -- Added some defines to cut down on the magic numbers Added some comments explaining such Set the address to full 20 bit address 0x1FFFFF which is then left shifted 11 internally -- somewhere around 4GB? Link explains the cache status bits https://daniel.haxx.se/sansa/memory_controller.txt Change-Id: I57b7187c2f71a5b54ce145bf3a21ed492a8993cb
Diffstat (limited to 'firmware/export/pp5020.h')
-rw-r--r--firmware/export/pp5020.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/firmware/export/pp5020.h b/firmware/export/pp5020.h
index 073d33e494..0d2ffc4d94 100644
--- a/firmware/export/pp5020.h
+++ b/firmware/export/pp5020.h
@@ -584,8 +584,10 @@
584#define CACHE_DATA_BASE (*(volatile unsigned long*)(0xf0000000)) 584#define CACHE_DATA_BASE (*(volatile unsigned long*)(0xf0000000))
585/* 0xf0002000-0xf0003fff */ 585/* 0xf0002000-0xf0003fff */
586#define CACHE_DATA_MIRROR_BASE (*(volatile unsigned long*)(0xf0002000)) 586#define CACHE_DATA_MIRROR_BASE (*(volatile unsigned long*)(0xf0002000))
587/* 0xf0004000-0xf0007fff */ 587/* 0xf0004000-0xf0005fff */
588#define CACHE_STATUS_BASE (*(volatile unsigned long*)(0xf0004000)) 588#define CACHE_STATUS_BASE_CPU (*(volatile unsigned long*)(0xf0004000))
589/* 0xf0006000-0xf0007fff */
590#define CACHE_STATUS_BASE_COP (*(volatile unsigned long*)(0xf0006000))
589#define CACHE_FLUSH_BASE (*(volatile unsigned long*)(0xf0008000)) 591#define CACHE_FLUSH_BASE (*(volatile unsigned long*)(0xf0008000))
590#define CACHE_INVALID_BASE (*(volatile unsigned long*)(0xf000c000)) 592#define CACHE_INVALID_BASE (*(volatile unsigned long*)(0xf000c000))
591#define MMAP_PHYS_READ_MASK 0x0100 593#define MMAP_PHYS_READ_MASK 0x0100