diff options
Diffstat (limited to 'firmware/export')
-rw-r--r-- | firmware/export/pp5020.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/firmware/export/pp5020.h b/firmware/export/pp5020.h index 9d2a3b9d94..89acb2e8d2 100644 --- a/firmware/export/pp5020.h +++ b/firmware/export/pp5020.h | |||
@@ -300,6 +300,16 @@ | |||
300 | #define GPIOK_INT_CLR (*(volatile unsigned long *)(0x6000d178)) | 300 | #define GPIOK_INT_CLR (*(volatile unsigned long *)(0x6000d178)) |
301 | #define GPIOL_INT_CLR (*(volatile unsigned long *)(0x6000d17c)) | 301 | #define GPIOL_INT_CLR (*(volatile unsigned long *)(0x6000d17c)) |
302 | 302 | ||
303 | /* Standard GPIO addresses + 0x800 allow atomic port manipulation on PP502x. | ||
304 | * Bits 8..15 of the written word define which bits are changed, bits 0..7 | ||
305 | * define the value of those bits. */ | ||
306 | |||
307 | #define GPIO_SET_BITWISE(port, mask) \ | ||
308 | do { *(&port + (0x800/sizeof(long))) = (mask << 8) | mask; } while(0) | ||
309 | |||
310 | #define GPIO_CLEAR_BITWISE(port, mask) \ | ||
311 | do { *(&port + (0x800/sizeof(long))) = mask << 8; } while(0) | ||
312 | |||
303 | /* Device initialization */ | 313 | /* Device initialization */ |
304 | #define PP_VER1 (*(volatile unsigned long *)(0x70000000)) | 314 | #define PP_VER1 (*(volatile unsigned long *)(0x70000000)) |
305 | #define PP_VER2 (*(volatile unsigned long *)(0x70000004)) | 315 | #define PP_VER2 (*(volatile unsigned long *)(0x70000004)) |
@@ -318,6 +328,8 @@ | |||
318 | 328 | ||
319 | #define INIT_USB 0x80000000 | 329 | #define INIT_USB 0x80000000 |
320 | 330 | ||
331 | /* 32 bit GPO port */ | ||
332 | #define GPO32_VAL (*(volatile unsigned long *)(0x70000080)) | ||
321 | 333 | ||
322 | /* IIS */ | 334 | /* IIS */ |
323 | #define IISDIV (*(volatile unsigned long*)(0x60006080)) | 335 | #define IISDIV (*(volatile unsigned long*)(0x60006080)) |