Rev 3031 | Rev 3764 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3031 | Rev 3192 | ||
---|---|---|---|
Line 60... | Line 60... | ||
60 | 60 | ||
Line 61... | Line 61... | ||
61 | #define DMIF_ADDR_CONFIG 0xBD4 |
61 | #define DMIF_ADDR_CONFIG 0xBD4 |
Line -... | Line 62... | ||
- | 62 | ||
- | 63 | #define SRBM_STATUS 0xE50 |
|
- | 64 | ||
- | 65 | #define SRBM_SOFT_RESET 0x0E60 |
|
- | 66 | #define SOFT_RESET_BIF (1 << 1) |
|
- | 67 | #define SOFT_RESET_DC (1 << 5) |
|
- | 68 | #define SOFT_RESET_DMA1 (1 << 6) |
|
- | 69 | #define SOFT_RESET_GRBM (1 << 8) |
|
- | 70 | #define SOFT_RESET_HDP (1 << 9) |
|
- | 71 | #define SOFT_RESET_IH (1 << 10) |
|
- | 72 | #define SOFT_RESET_MC (1 << 11) |
|
- | 73 | #define SOFT_RESET_ROM (1 << 14) |
|
- | 74 | #define SOFT_RESET_SEM (1 << 15) |
|
- | 75 | #define SOFT_RESET_VMC (1 << 17) |
|
- | 76 | #define SOFT_RESET_DMA (1 << 20) |
|
- | 77 | #define SOFT_RESET_TST (1 << 21) |
|
62 | 78 | #define SOFT_RESET_REGBB (1 << 22) |
|
63 | #define SRBM_STATUS 0xE50 |
79 | #define SOFT_RESET_ORB (1 << 23) |
Line 64... | Line 80... | ||
64 | 80 | ||
65 | #define CC_SYS_RB_BACKEND_DISABLE 0xe80 |
81 | #define CC_SYS_RB_BACKEND_DISABLE 0xe80 |
Line 89... | Line 105... | ||
89 | #define VM_L2_STATUS 0x140C |
105 | #define VM_L2_STATUS 0x140C |
90 | #define L2_BUSY (1 << 0) |
106 | #define L2_BUSY (1 << 0) |
91 | #define VM_CONTEXT0_CNTL 0x1410 |
107 | #define VM_CONTEXT0_CNTL 0x1410 |
92 | #define ENABLE_CONTEXT (1 << 0) |
108 | #define ENABLE_CONTEXT (1 << 0) |
93 | #define PAGE_TABLE_DEPTH(x) (((x) & 3) << 1) |
109 | #define PAGE_TABLE_DEPTH(x) (((x) & 3) << 1) |
- | 110 | #define RANGE_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 3) |
|
94 | #define RANGE_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 4) |
111 | #define RANGE_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 4) |
- | 112 | #define DUMMY_PAGE_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 6) |
|
- | 113 | #define DUMMY_PAGE_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 7) |
|
- | 114 | #define PDE0_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 9) |
|
- | 115 | #define PDE0_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 10) |
|
- | 116 | #define VALID_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 12) |
|
- | 117 | #define VALID_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 13) |
|
- | 118 | #define READ_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 15) |
|
- | 119 | #define READ_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 16) |
|
- | 120 | #define WRITE_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 18) |
|
- | 121 | #define WRITE_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 19) |
|
95 | #define VM_CONTEXT1_CNTL 0x1414 |
122 | #define VM_CONTEXT1_CNTL 0x1414 |
96 | #define VM_CONTEXT0_CNTL2 0x1430 |
123 | #define VM_CONTEXT0_CNTL2 0x1430 |
97 | #define VM_CONTEXT1_CNTL2 0x1434 |
124 | #define VM_CONTEXT1_CNTL2 0x1434 |
98 | #define VM_CONTEXT8_PAGE_TABLE_BASE_ADDR 0x1438 |
125 | #define VM_CONTEXT8_PAGE_TABLE_BASE_ADDR 0x1438 |
99 | #define VM_CONTEXT9_PAGE_TABLE_BASE_ADDR 0x143c |
126 | #define VM_CONTEXT9_PAGE_TABLE_BASE_ADDR 0x143c |
Line 102... | Line 129... | ||
102 | #define VM_CONTEXT12_PAGE_TABLE_BASE_ADDR 0x1448 |
129 | #define VM_CONTEXT12_PAGE_TABLE_BASE_ADDR 0x1448 |
103 | #define VM_CONTEXT13_PAGE_TABLE_BASE_ADDR 0x144c |
130 | #define VM_CONTEXT13_PAGE_TABLE_BASE_ADDR 0x144c |
104 | #define VM_CONTEXT14_PAGE_TABLE_BASE_ADDR 0x1450 |
131 | #define VM_CONTEXT14_PAGE_TABLE_BASE_ADDR 0x1450 |
105 | #define VM_CONTEXT15_PAGE_TABLE_BASE_ADDR 0x1454 |
132 | #define VM_CONTEXT15_PAGE_TABLE_BASE_ADDR 0x1454 |
Line -... | Line 133... | ||
- | 133 | ||
- | 134 | #define VM_CONTEXT1_PROTECTION_FAULT_ADDR 0x14FC |
|
- | 135 | #define VM_CONTEXT1_PROTECTION_FAULT_STATUS 0x14DC |
|
106 | 136 | ||
107 | #define VM_INVALIDATE_REQUEST 0x1478 |
137 | #define VM_INVALIDATE_REQUEST 0x1478 |
Line 108... | Line 138... | ||
108 | #define VM_INVALIDATE_RESPONSE 0x147c |
138 | #define VM_INVALIDATE_RESPONSE 0x147c |
109 | 139 | ||
Line 833... | Line 863... | ||
833 | #define PACKET3_MPEG_INDEX 0x3A |
863 | #define PACKET3_MPEG_INDEX 0x3A |
834 | #define PACKET3_COPY_DW 0x3B |
864 | #define PACKET3_COPY_DW 0x3B |
835 | #define PACKET3_WAIT_REG_MEM 0x3C |
865 | #define PACKET3_WAIT_REG_MEM 0x3C |
836 | #define PACKET3_MEM_WRITE 0x3D |
866 | #define PACKET3_MEM_WRITE 0x3D |
837 | #define PACKET3_COPY_DATA 0x40 |
867 | #define PACKET3_COPY_DATA 0x40 |
- | 868 | #define PACKET3_CP_DMA 0x41 |
|
- | 869 | /* 1. header |
|
- | 870 | * 2. SRC_ADDR_LO or DATA [31:0] |
|
- | 871 | * 3. CP_SYNC [31] | SRC_SEL [30:29] | ENGINE [27] | DST_SEL [21:20] | |
|
- | 872 | * SRC_ADDR_HI [7:0] |
|
- | 873 | * 4. DST_ADDR_LO [31:0] |
|
- | 874 | * 5. DST_ADDR_HI [7:0] |
|
- | 875 | * 6. COMMAND [30:21] | BYTE_COUNT [20:0] |
|
- | 876 | */ |
|
- | 877 | # define PACKET3_CP_DMA_DST_SEL(x) ((x) << 20) |
|
- | 878 | /* 0 - SRC_ADDR |
|
- | 879 | * 1 - GDS |
|
- | 880 | */ |
|
- | 881 | # define PACKET3_CP_DMA_ENGINE(x) ((x) << 27) |
|
- | 882 | /* 0 - ME |
|
- | 883 | * 1 - PFP |
|
- | 884 | */ |
|
- | 885 | # define PACKET3_CP_DMA_SRC_SEL(x) ((x) << 29) |
|
- | 886 | /* 0 - SRC_ADDR |
|
- | 887 | * 1 - GDS |
|
- | 888 | * 2 - DATA |
|
- | 889 | */ |
|
- | 890 | # define PACKET3_CP_DMA_CP_SYNC (1 << 31) |
|
- | 891 | /* COMMAND */ |
|
- | 892 | # define PACKET3_CP_DMA_DIS_WC (1 << 21) |
|
- | 893 | # define PACKET3_CP_DMA_CMD_SRC_SWAP(x) ((x) << 23) |
|
- | 894 | /* 0 - none |
|
- | 895 | * 1 - 8 in 16 |
|
- | 896 | * 2 - 8 in 32 |
|
- | 897 | * 3 - 8 in 64 |
|
- | 898 | */ |
|
- | 899 | # define PACKET3_CP_DMA_CMD_DST_SWAP(x) ((x) << 24) |
|
- | 900 | /* 0 - none |
|
- | 901 | * 1 - 8 in 16 |
|
- | 902 | * 2 - 8 in 32 |
|
- | 903 | * 3 - 8 in 64 |
|
- | 904 | */ |
|
- | 905 | # define PACKET3_CP_DMA_CMD_SAS (1 << 26) |
|
- | 906 | /* 0 - memory |
|
- | 907 | * 1 - register |
|
- | 908 | */ |
|
- | 909 | # define PACKET3_CP_DMA_CMD_DAS (1 << 27) |
|
- | 910 | /* 0 - memory |
|
- | 911 | * 1 - register |
|
- | 912 | */ |
|
- | 913 | # define PACKET3_CP_DMA_CMD_SAIC (1 << 28) |
|
- | 914 | # define PACKET3_CP_DMA_CMD_DAIC (1 << 29) |
|
- | 915 | # define PACKET3_CP_DMA_CMD_RAW_WAIT (1 << 30) |
|
838 | #define PACKET3_PFP_SYNC_ME 0x42 |
916 | #define PACKET3_PFP_SYNC_ME 0x42 |
839 | #define PACKET3_SURFACE_SYNC 0x43 |
917 | #define PACKET3_SURFACE_SYNC 0x43 |
840 | # define PACKET3_DEST_BASE_0_ENA (1 << 0) |
918 | # define PACKET3_DEST_BASE_0_ENA (1 << 0) |
841 | # define PACKET3_DEST_BASE_1_ENA (1 << 1) |
919 | # define PACKET3_DEST_BASE_1_ENA (1 << 1) |
842 | # define PACKET3_CB0_DEST_BASE_ENA (1 << 6) |
920 | # define PACKET3_CB0_DEST_BASE_ENA (1 << 6) |
Line 920... | Line 998... | ||
920 | #define PACKET3_WAIT_ON_DE_COUNTER_DIFF 0x88 |
998 | #define PACKET3_WAIT_ON_DE_COUNTER_DIFF 0x88 |
921 | #define PACKET3_SET_CE_DE_COUNTERS 0x89 |
999 | #define PACKET3_SET_CE_DE_COUNTERS 0x89 |
922 | #define PACKET3_WAIT_ON_AVAIL_BUFFER 0x8A |
1000 | #define PACKET3_WAIT_ON_AVAIL_BUFFER 0x8A |
923 | #define PACKET3_SWITCH_BUFFER 0x8B |
1001 | #define PACKET3_SWITCH_BUFFER 0x8B |
Line -... | Line 1002... | ||
- | 1002 | ||
- | 1003 | /* ASYNC DMA - first instance at 0xd000, second at 0xd800 */ |
|
- | 1004 | #define DMA0_REGISTER_OFFSET 0x0 /* not a register */ |
|
- | 1005 | #define DMA1_REGISTER_OFFSET 0x800 /* not a register */ |
|
- | 1006 | ||
- | 1007 | #define DMA_RB_CNTL 0xd000 |
|
- | 1008 | # define DMA_RB_ENABLE (1 << 0) |
|
- | 1009 | # define DMA_RB_SIZE(x) ((x) << 1) /* log2 */ |
|
- | 1010 | # define DMA_RB_SWAP_ENABLE (1 << 9) /* 8IN32 */ |
|
- | 1011 | # define DMA_RPTR_WRITEBACK_ENABLE (1 << 12) |
|
- | 1012 | # define DMA_RPTR_WRITEBACK_SWAP_ENABLE (1 << 13) /* 8IN32 */ |
|
- | 1013 | # define DMA_RPTR_WRITEBACK_TIMER(x) ((x) << 16) /* log2 */ |
|
- | 1014 | #define DMA_RB_BASE 0xd004 |
|
- | 1015 | #define DMA_RB_RPTR 0xd008 |
|
- | 1016 | #define DMA_RB_WPTR 0xd00c |
|
- | 1017 | ||
- | 1018 | #define DMA_RB_RPTR_ADDR_HI 0xd01c |
|
- | 1019 | #define DMA_RB_RPTR_ADDR_LO 0xd020 |
|
- | 1020 | ||
- | 1021 | #define DMA_IB_CNTL 0xd024 |
|
- | 1022 | # define DMA_IB_ENABLE (1 << 0) |
|
- | 1023 | # define DMA_IB_SWAP_ENABLE (1 << 4) |
|
- | 1024 | #define DMA_IB_RPTR 0xd028 |
|
- | 1025 | #define DMA_CNTL 0xd02c |
|
- | 1026 | # define TRAP_ENABLE (1 << 0) |
|
- | 1027 | # define SEM_INCOMPLETE_INT_ENABLE (1 << 1) |
|
- | 1028 | # define SEM_WAIT_INT_ENABLE (1 << 2) |
|
- | 1029 | # define DATA_SWAP_ENABLE (1 << 3) |
|
- | 1030 | # define FENCE_SWAP_ENABLE (1 << 4) |
|
- | 1031 | # define CTXEMPTY_INT_ENABLE (1 << 28) |
|
- | 1032 | #define DMA_STATUS_REG 0xd034 |
|
- | 1033 | # define DMA_IDLE (1 << 0) |
|
- | 1034 | #define DMA_TILING_CONFIG 0xd0b8 |
|
- | 1035 | ||
- | 1036 | #define DMA_PACKET(cmd, b, t, s, n) ((((cmd) & 0xF) << 28) | \ |
|
- | 1037 | (((b) & 0x1) << 26) | \ |
|
- | 1038 | (((t) & 0x1) << 23) | \ |
|
- | 1039 | (((s) & 0x1) << 22) | \ |
|
- | 1040 | (((n) & 0xFFFFF) << 0)) |
|
- | 1041 | ||
- | 1042 | #define DMA_IB_PACKET(cmd, vmid, n) ((((cmd) & 0xF) << 28) | \ |
|
- | 1043 | (((vmid) & 0xF) << 20) | \ |
|
- | 1044 | (((n) & 0xFFFFF) << 0)) |
|
- | 1045 | ||
- | 1046 | #define DMA_PTE_PDE_PACKET(n) ((2 << 28) | \ |
|
- | 1047 | (1 << 26) | \ |
|
- | 1048 | (1 << 21) | \ |
|
- | 1049 | (((n) & 0xFFFFF) << 0)) |
|
- | 1050 | ||
- | 1051 | /* async DMA Packet types */ |
|
- | 1052 | #define DMA_PACKET_WRITE 0x2 |
|
- | 1053 | #define DMA_PACKET_COPY 0x3 |
|
- | 1054 | #define DMA_PACKET_INDIRECT_BUFFER 0x4 |
|
- | 1055 | #define DMA_PACKET_SEMAPHORE 0x5 |
|
- | 1056 | #define DMA_PACKET_FENCE 0x6 |
|
- | 1057 | #define DMA_PACKET_TRAP 0x7 |
|
- | 1058 | #define DMA_PACKET_SRBM_WRITE 0x9 |
|
- | 1059 | #define DMA_PACKET_CONSTANT_FILL 0xd |
|
- | 1060 | #define DMA_PACKET_NOP 0xf |
|
924 | 1061 |