| 1 | /* TI C6X control register information. |
| 2 | Copyright (C) 2010-2019 Free Software Foundation, Inc. |
| 3 | |
| 4 | This program is free software; you can redistribute it and/or modify |
| 5 | it under the terms of the GNU General Public License as published by |
| 6 | the Free Software Foundation; either version 3 of the License, or |
| 7 | (at your option) any later version. |
| 8 | |
| 9 | This program is distributed in the hope that it will be useful, |
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 12 | GNU General Public License for more details. |
| 13 | |
| 14 | You should have received a copy of the GNU General Public License |
| 15 | along with this program; if not, write to the Free Software |
| 16 | Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
| 17 | MA 02110-1301, USA. */ |
| 18 | |
| 19 | /* Define the CTRL macro before including this file; it takes as |
| 20 | arguments the fields from tic6x_ctrl (defined in tic6x.h). The |
| 21 | control register name is given as an identifier; the isa_variants |
| 22 | field without the leading TIC6X_INSN_; the rw field without the |
| 23 | leading tic6x_rw_. */ |
| 24 | |
| 25 | CTRL(amr, C62X, read_write, 0x0, 0x10) |
| 26 | CTRL(csr, C62X, read_write, 0x1, 0x10) |
| 27 | CTRL(dnum, C64XP, read, 0x11, 0x1f) |
| 28 | CTRL(ecr, C64XP, write, 0x1d, 0x1f) |
| 29 | CTRL(efr, C64XP, read, 0x1d, 0x1f) |
| 30 | CTRL(fadcr, C67X, read_write, 0x12, 0x1f) |
| 31 | CTRL(faucr, C67X, read_write, 0x13, 0x1f) |
| 32 | CTRL(fmcr, C67X, read_write, 0x14, 0x1f) |
| 33 | CTRL(gfpgfr, C64X, read_write, 0x18, 0x1f) |
| 34 | CTRL(gplya, C64XP, read_write, 0x16, 0x1f) |
| 35 | CTRL(gplyb, C64XP, read_write, 0x17, 0x1f) |
| 36 | CTRL(icr, C62X, write, 0x3, 0x10) |
| 37 | CTRL(ier, C62X, read_write, 0x4, 0x10) |
| 38 | CTRL(ierr, C64XP, read_write, 0x1f, 0x1f) |
| 39 | CTRL(ifr, C62X, read, 0x2, 0x1d) |
| 40 | CTRL(ilc, C64XP, read_write, 0xd, 0x1f) |
| 41 | CTRL(irp, C62X, read_write, 0x6, 0x10) |
| 42 | CTRL(isr, C62X, write, 0x2, 0x10) |
| 43 | CTRL(istp, C62X, read_write, 0x5, 0x10) |
| 44 | CTRL(itsr, C64XP, read_write, 0x1b, 0x1f) |
| 45 | CTRL(nrp, C62X, read_write, 0x7, 0x10) |
| 46 | CTRL(ntsr, C64XP, read_write, 0x1c, 0x1f) |
| 47 | CTRL(pce1, C62X, read, 0x10, 0xf) |
| 48 | CTRL(rep, C64XP, read_write, 0xf, 0x1f) |
| 49 | CTRL(rilc, C64XP, read_write, 0xe, 0x1f) |
| 50 | CTRL(ssr, C64XP, read_write, 0x15, 0x1f) |
| 51 | CTRL(tsch, C64XP, read, 0xb, 0x1f) |
| 52 | /* Contrary to Table 3-26 in SPRUFE8, this register is read-write, as |
| 53 | documented in section 2.9.13. */ |
| 54 | CTRL(tscl, C64XP, read_write, 0xa, 0x1f) |
| 55 | CTRL(tsr, C64XP, read_write, 0x1a, 0x1f) |