Changeset 801 for trunk/softs/tsar_boot/src/reset.S
- Timestamp:
- Sep 12, 2014, 3:10:03 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/softs/tsar_boot/src/reset.S
r758 r801 79 79 mtc0 k0, CP0_STATUS 80 80 81 /* All processors compute pid, lpid, cluster_xy */ 81 /* 82 * All processors compute gpid, lpid, cluster_xy 83 * gpid = ebase[9:0] = X_WIDTH : Y_WIDTH : P_WIDTH 84 * x y lpid 85 * X, Y and LPID fields are left-aligned 86 */ 82 87 83 88 mfc0 k0, CP0_EBASE 84 andi t0, k0, 0x3FF /* t0 <= pid (at most 1024 procs) */ 85 86 move t3, t0 87 88 la k0, NB_PROCS_MAX /* k0 <= # of processors per cluster */ 89 divu t3, k0 90 mfhi t1 /* t1 <= lpid = pid % NB_PROCS */ 91 mflo t2 /* t2 <= cluster_xy = pid / NB_PROCS */ 89 andi t0, k0, 0x3FF /* t0 <= gpid (<= 1024 procs) */ 90 andi t1, t0, ((1<<P_WIDTH)-1) /* t1 <= lpid */ 91 srl t2, t0, P_WIDTH /* t2 <= cluster_xy */ 92 92 93 93 /* All processors initialise the count register in CP0 */
Note: See TracChangeset
for help on using the changeset viewer.