1 /**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19 #ifndef _ASM_SN_SN0_ADDRS_H 20 #define _ASM_SN_SN0_ADDRS_H 21 #define NODE_SIZE_BITS 32 22 #define BWIN_SIZE_BITS 29 23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24 #define NASID_BITMASK (0xffLL) 25 #define NASID_BITS 8 26 #define NASID_SHFT 32 27 #define NASID_META_BITS 4 28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29 #define NASID_LOCAL_BITS 4 30 #define BDDIR_UPPER_MASK (UINT64_CAST 0xfffff << 10) 31 #define BDECC_UPPER_MASK (UINT64_CAST 0x7ffffff << 3) 32 #define NODE_ADDRSPACE_SIZE (UINT64_CAST 1 << NODE_SIZE_BITS) 33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 #define NASID_MASK (UINT64_CAST NASID_BITMASK << NASID_SHFT) 35 #define NASID_GET(_pa) (int) ((UINT64_CAST (_pa) >> NASID_SHFT) & NASID_BITMASK) 36 #ifndef __ASSEMBLY__ 37 #define NODE_SWIN_BASE(nasid, widget) ((widget == 0) ? NODE_BWIN_BASE((nasid), SWIN0_BIGWIN) : RAW_NODE_SWIN_BASE(nasid, widget)) 38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39 #else 40 #define NODE_SWIN_BASE(nasid, widget) (NODE_IO_BASE(nasid) + (UINT64_CAST(widget) << SWIN_SIZE_BITS)) 41 #endif 42 #define BWIN_INDEX_BITS 3 43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 #define BWIN_SIZE (UINT64_CAST 1 << BWIN_SIZE_BITS) 45 #define BWIN_SIZEMASK (BWIN_SIZE - 1) 46 #define BWIN_WIDGET_MASK 0x7 47 #define NODE_BWIN_BASE0(nasid) (NODE_IO_BASE(nasid) + BWIN_SIZE) 48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49 #define NODE_BWIN_BASE(nasid, bigwin) (NODE_BWIN_BASE0(nasid) + (UINT64_CAST(bigwin) << BWIN_SIZE_BITS)) 50 #define BWIN_WIDGETADDR(addr) ((addr) & BWIN_SIZEMASK) 51 #define BWIN_WINDOWNUM(addr) (((addr) >> BWIN_SIZE_BITS) & BWIN_WIDGET_MASK) 52 #define NODE_BWIN_ADDR(nasid, addr) (((addr) >= NODE_BWIN_BASE0(nasid)) && ((addr) < (NODE_BWIN_BASE(nasid, HUB_NUM_BIG_WINDOW) + BWIN_SIZE))) 53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54 #define CALIAS_BASE CAC_BASE 55 #define BRIDGE_REG_PTR(_base, _off) ((volatile bridgereg_t *) ((__psunsigned_t)(_base) + (__psunsigned_t)(_off))) 56 #define SN0_WIDGET_BASE(_nasid, _wid) (NODE_SWIN_BASE((_nasid), (_wid))) 57 #define SABLE_LOG_TRIGGER(_map) 58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 #ifndef __ASSEMBLY__ 60 #define KERN_NMI_ADDR(nasid, slice) TO_NODE_UNCAC((nasid), IP27_NMI_KREGS_OFFSET + (IP27_NMI_KREGS_CPU_SIZE * (slice))) 61 #endif 62 #ifdef PROM 63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 #define MISC_PROM_BASE PHYS_TO_K0(0x01300000) 65 #define MISC_PROM_SIZE 0x200000 66 #define DIAG_BASE PHYS_TO_K0(0x01500000) 67 #define DIAG_SIZE 0x300000 68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69 #define ROUTE_BASE PHYS_TO_K0(0x01800000) 70 #define ROUTE_SIZE 0x200000 71 #define IP27PROM_FLASH_HDR PHYS_TO_K0(0x01300000) 72 #define IP27PROM_FLASH_DATA PHYS_TO_K0(0x01301000) 73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74 #define IP27PROM_CORP_MAX 32 75 #define IP27PROM_CORP PHYS_TO_K0(0x01800000) 76 #define IP27PROM_CORP_SIZE 0x10000 77 #define IP27PROM_CORP_STK PHYS_TO_K0(0x01810000) 78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 #define IP27PROM_CORP_STKSIZE 0x2000 80 #define IP27PROM_DECOMP_BUF PHYS_TO_K0(0x01900000) 81 #define IP27PROM_DECOMP_SIZE 0xfff00 82 #define IP27PROM_BASE PHYS_TO_K0(0x01a00000) 83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84 #define IP27PROM_BASE_MAPPED (UNCAC_BASE | 0x1fc00000) 85 #define IP27PROM_SIZE_MAX 0x100000 86 #define IP27PROM_PCFG PHYS_TO_K0(0x01b00000) 87 #define IP27PROM_PCFG_SIZE 0xd0000 88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89 #define IP27PROM_ERRDMP PHYS_TO_K1(0x01bd0000) 90 #define IP27PROM_ERRDMP_SIZE 0xf000 91 #define IP27PROM_INIT_START PHYS_TO_K1(0x01bd0000) 92 #define IP27PROM_CONSOLE PHYS_TO_K1(0x01bdf000) 93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94 #define IP27PROM_CONSOLE_SIZE 0x200 95 #define IP27PROM_NETUART PHYS_TO_K1(0x01bdf200) 96 #define IP27PROM_NETUART_SIZE 0x100 97 #define IP27PROM_UNUSED1 PHYS_TO_K1(0x01bdf300) 98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99 #define IP27PROM_UNUSED1_SIZE 0x500 100 #define IP27PROM_ELSC_BASE_A PHYS_TO_K0(0x01bdf800) 101 #define IP27PROM_ELSC_BASE_B PHYS_TO_K0(0x01bdfc00) 102 #define IP27PROM_STACK_A PHYS_TO_K0(0x01be0000) 103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104 #define IP27PROM_STACK_B PHYS_TO_K0(0x01bf0000) 105 #define IP27PROM_STACK_SHFT 16 106 #define IP27PROM_STACK_SIZE (1 << IP27PROM_STACK_SHFT) 107 #define IP27PROM_INIT_END PHYS_TO_K0(0x01c00000) 108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109 #define SLAVESTACK_BASE PHYS_TO_K0(0x01580000) 110 #define SLAVESTACK_SIZE 0x40000 111 #define ENETBUFS_BASE PHYS_TO_K0(0x01f80000) 112 #define ENETBUFS_SIZE 0x20000 113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114 #define IO6PROM_BASE PHYS_TO_K0(0x01c00000) 115 #define IO6PROM_SIZE 0x400000 116 #define IO6PROM_BASE_MAPPED (UNCAC_BASE | 0x11c00000) 117 #define IO6DPROM_BASE PHYS_TO_K0(0x01c00000) 118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119 #define IO6DPROM_SIZE 0x200000 120 #define NODEBUGUNIX_ADDR PHYS_TO_K0(0x00019000) 121 #define DEBUGUNIX_ADDR PHYS_TO_K0(0x00100000) 122 #define IP27PROM_INT_LAUNCH 10 123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124 #define IP27PROM_INT_NETUART 12 125 #endif 126 #define IP27PROM_ELSC_SHFT 10 127 #define IP27PROM_ELSC_SIZE (1 << IP27PROM_ELSC_SHFT) 128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129 #define FREEMEM_BASE PHYS_TO_K0(0x2000000) 130 #define IO6PROM_STACK_SHFT 14 131 #define IO6PROM_STACK_SIZE (1 << IO6PROM_STACK_SHFT) 132 #define IP27PROM_ENTRY PHYS_TO_COMPATK1(0x1fc00000) 133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134 #define IP27PROM_RESTART PHYS_TO_COMPATK1(0x1fc00008) 135 #define IP27PROM_SLAVELOOP PHYS_TO_COMPATK1(0x1fc00010) 136 #define IP27PROM_PODMODE PHYS_TO_COMPATK1(0x1fc00018) 137 #define IP27PROM_IOC3UARTPOD PHYS_TO_COMPATK1(0x1fc00020) 138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139 #define IP27PROM_FLASHLEDS PHYS_TO_COMPATK1(0x1fc00028) 140 #define IP27PROM_REPOD PHYS_TO_COMPATK1(0x1fc00030) 141 #define IP27PROM_LAUNCHSLAVE PHYS_TO_COMPATK1(0x1fc00038) 142 #define IP27PROM_WAITSLAVE PHYS_TO_COMPATK1(0x1fc00040) 143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144 #define IP27PROM_POLLSLAVE PHYS_TO_COMPATK1(0x1fc00048) 145 #define KL_UART_BASE LOCAL_HUB_ADDR(MD_UREG0_0) 146 #define KL_UART_CMD LOCAL_HUB_ADDR(MD_UREG0_0) 147 #define KL_UART_DATA LOCAL_HUB_ADDR(MD_UREG0_1) 148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149 #define KL_I2C_REG MD_UREG0_0 150 #ifndef __ASSEMBLY__ 151 #ifdef HUB_ERR_STS_WAR 152 #define CACHE_ERR_EFRAME 0x480 153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154 #else 155 #define CACHE_ERR_EFRAME 0x400 156 #endif 157 #define CACHE_ERR_ECCFRAME (CACHE_ERR_EFRAME + EF_SIZE) 158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159 #define CACHE_ERR_SP_PTR (0x1000 - 32) 160 #define CACHE_ERR_IBASE_PTR (0x1000 - 40) 161 #define CACHE_ERR_SP (CACHE_ERR_SP_PTR - 16) 162 #define CACHE_ERR_AREA_SIZE (ARCS_SPB_OFFSET - CACHE_ERR_EFRAME) 163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164 #endif 165 #define _ARCSPROM 166 #ifdef HUB_ERR_STS_WAR 167 #define ERR_STS_WAR_REGISTER IIO_IIBUSERR 168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169 #define ERR_STS_WAR_ADDR LOCAL_HUB_ADDR(IIO_IIBUSERR) 170 #define ERR_STS_WAR_PHYSADDR TO_PHYS((__psunsigned_t)ERR_STS_WAR_ADDR) 171 #define OLD_ERR_STS_WAR_OFFSET ((MD_MEM_BANKS * MD_BANK_SIZE) - 0x100) 172 #endif 173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174 #endif 175