15c263f43SRuslan Bukin /*- 2*4d846d26SWarner Losh * SPDX-License-Identifier: BSD-2-Clause 3af3dc4a7SPedro F. Giffuni * 45c263f43SRuslan Bukin * Copyright (c) 2013 Ruslan Bukin <br@bsdpad.com> 55c263f43SRuslan Bukin * All rights reserved. 65c263f43SRuslan Bukin * 75c263f43SRuslan Bukin * Redistribution and use in source and binary forms, with or without 85c263f43SRuslan Bukin * modification, are permitted provided that the following conditions 95c263f43SRuslan Bukin * are met: 105c263f43SRuslan Bukin * 1. Redistributions of source code must retain the above copyright 115c263f43SRuslan Bukin * notice, this list of conditions and the following disclaimer. 125c263f43SRuslan Bukin * 2. Redistributions in binary form must reproduce the above copyright 135c263f43SRuslan Bukin * notice, this list of conditions and the following disclaimer in the 145c263f43SRuslan Bukin * documentation and/or other materials provided with the distribution. 155c263f43SRuslan Bukin * 165c263f43SRuslan Bukin * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 175c263f43SRuslan Bukin * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 185c263f43SRuslan Bukin * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 195c263f43SRuslan Bukin * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 205c263f43SRuslan Bukin * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 215c263f43SRuslan Bukin * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 225c263f43SRuslan Bukin * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 235c263f43SRuslan Bukin * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 245c263f43SRuslan Bukin * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 255c263f43SRuslan Bukin * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 265c263f43SRuslan Bukin * SUCH DAMAGE. 275c263f43SRuslan Bukin */ 285c263f43SRuslan Bukin 295c263f43SRuslan Bukin #define IOMUXC(n) (n * 0x04) 305c263f43SRuslan Bukin #define IOMUXCN 135 315c263f43SRuslan Bukin #define IOMUXC_PTA6 0x000 /* Software MUX Pad Control Register 0 */ 325c263f43SRuslan Bukin #define IOMUXC_PTA8 0x004 /* Software MUX Pad Control Register 1 */ 335c263f43SRuslan Bukin #define IOMUXC_PTA9 0x008 /* Software MUX Pad Control Register 2 */ 345c263f43SRuslan Bukin #define IOMUXC_PTA10 0x00C /* Software MUX Pad Control Register 3 */ 355c263f43SRuslan Bukin #define IOMUXC_PTA11 0x010 /* Software MUX Pad Control Register 4 */ 365c263f43SRuslan Bukin #define IOMUXC_PTA12 0x014 /* Software MUX Pad Control Register 5 */ 375c263f43SRuslan Bukin #define IOMUXC_PTA16 0x018 /* Software MUX Pad Control Register 6 */ 385c263f43SRuslan Bukin #define IOMUXC_PTA17 0x01C /* Software MUX Pad Control Register 7 */ 395c263f43SRuslan Bukin #define IOMUXC_PTA18 0x020 /* Software MUX Pad Control Register 8 */ 405c263f43SRuslan Bukin #define IOMUXC_PTA19 0x024 /* Software MUX Pad Control Register 9 */ 415c263f43SRuslan Bukin #define IOMUXC_PTA20 0x028 /* Software MUX Pad Control Register 10 */ 425c263f43SRuslan Bukin #define IOMUXC_PTA21 0x02C /* Software MUX Pad Control Register 11 */ 435c263f43SRuslan Bukin #define IOMUXC_PTA22 0x030 /* Software MUX Pad Control Register 12 */ 445c263f43SRuslan Bukin #define IOMUXC_PTA23 0x034 /* Software MUX Pad Control Register 13 */ 455c263f43SRuslan Bukin #define IOMUXC_PTA24 0x038 /* Software MUX Pad Control Register 14 */ 465c263f43SRuslan Bukin #define IOMUXC_PTA25 0x03C /* Software MUX Pad Control Register 15 */ 475c263f43SRuslan Bukin #define IOMUXC_PTA26 0x040 /* Software MUX Pad Control Register 16 */ 485c263f43SRuslan Bukin #define IOMUXC_PTA27 0x044 /* Software MUX Pad Control Register 17 */ 495c263f43SRuslan Bukin #define IOMUXC_PTA28 0x048 /* Software MUX Pad Control Register 18 */ 505c263f43SRuslan Bukin #define IOMUXC_PTA29 0x04C /* Software MUX Pad Control Register 19 */ 515c263f43SRuslan Bukin #define IOMUXC_PTA30 0x050 /* Software MUX Pad Control Register 20 */ 525c263f43SRuslan Bukin #define IOMUXC_PTA31 0x054 /* Software MUX Pad Control Register 21 */ 535c263f43SRuslan Bukin #define IOMUXC_PTB0 0x058 /* Software MUX Pad Control Register 22 */ 545c263f43SRuslan Bukin #define IOMUXC_PTB1 0x05C /* Software MUX Pad Control Register 23 */ 555c263f43SRuslan Bukin #define IOMUXC_PTB2 0x060 /* Software MUX Pad Control Register 24 */ 565c263f43SRuslan Bukin #define IOMUXC_PTB3 0x064 /* Software MUX Pad Control Register 25 */ 575c263f43SRuslan Bukin #define IOMUXC_PTB4 0x068 /* Software MUX Pad Control Register 26 */ 585c263f43SRuslan Bukin #define IOMUXC_PTB5 0x06C /* Software MUX Pad Control Register 27 */ 595c263f43SRuslan Bukin #define IOMUXC_PTB6 0x070 /* Software MUX Pad Control Register 28 */ 605c263f43SRuslan Bukin #define IOMUXC_PTB7 0x074 /* Software MUX Pad Control Register 29 */ 615c263f43SRuslan Bukin #define IOMUXC_PTB8 0x078 /* Software MUX Pad Control Register 30 */ 625c263f43SRuslan Bukin #define IOMUXC_PTB9 0x07C /* Software MUX Pad Control Register 31 */ 635c263f43SRuslan Bukin #define IOMUXC_PTB10 0x080 /* Software MUX Pad Control Register 32 */ 645c263f43SRuslan Bukin #define IOMUXC_PTB11 0x084 /* Software MUX Pad Control Register 33 */ 655c263f43SRuslan Bukin #define IOMUXC_PTB12 0x088 /* Software MUX Pad Control Register 34 */ 665c263f43SRuslan Bukin #define IOMUXC_PTB13 0x08C /* Software MUX Pad Control Register 35 */ 675c263f43SRuslan Bukin #define IOMUXC_PTB14 0x090 /* Software MUX Pad Control Register 36 */ 685c263f43SRuslan Bukin #define IOMUXC_PTB15 0x094 /* Software MUX Pad Control Register 37 */ 695c263f43SRuslan Bukin #define IOMUXC_PTB16 0x098 /* Software MUX Pad Control Register 38 */ 705c263f43SRuslan Bukin #define IOMUXC_PTB17 0x09C /* Software MUX Pad Control Register 39 */ 715c263f43SRuslan Bukin #define IOMUXC_PTB18 0x0A0 /* Software MUX Pad Control Register 40 */ 725c263f43SRuslan Bukin #define IOMUXC_PTB19 0x0A4 /* Software MUX Pad Control Register 41 */ 735c263f43SRuslan Bukin #define IOMUXC_PTB20 0x0A8 /* Software MUX Pad Control Register 42 */ 745c263f43SRuslan Bukin #define IOMUXC_PTB21 0x0AC /* Software MUX Pad Control Register 43 */ 755c263f43SRuslan Bukin #define IOMUXC_PTB22 0x0B0 /* Software MUX Pad Control Register 44 */ 765c263f43SRuslan Bukin #define IOMUXC_PTC0 0x0B4 /* Software MUX Pad Control Register 45 */ 775c263f43SRuslan Bukin #define IOMUXC_PTC1 0x0B8 /* Software MUX Pad Control Register 46 */ 785c263f43SRuslan Bukin #define IOMUXC_PTC2 0x0BC /* Software MUX Pad Control Register 47 */ 795c263f43SRuslan Bukin #define IOMUXC_PTC3 0x0C0 /* Software MUX Pad Control Register 48 */ 805c263f43SRuslan Bukin #define IOMUXC_PTC4 0x0C4 /* Software MUX Pad Control Register 49 */ 815c263f43SRuslan Bukin #define IOMUXC_PTC5 0x0C8 /* Software MUX Pad Control Register 50 */ 825c263f43SRuslan Bukin #define IOMUXC_PTC6 0x0CC /* Software MUX Pad Control Register 51 */ 835c263f43SRuslan Bukin #define IOMUXC_PTC7 0x0D0 /* Software MUX Pad Control Register 52 */ 845c263f43SRuslan Bukin #define IOMUXC_PTC8 0x0D4 /* Software MUX Pad Control Register 53 */ 855c263f43SRuslan Bukin #define IOMUXC_PTC9 0x0D8 /* Software MUX Pad Control Register 54 */ 865c263f43SRuslan Bukin #define IOMUXC_PTC10 0x0DC /* Software MUX Pad Control Register 55 */ 875c263f43SRuslan Bukin #define IOMUXC_PTC11 0x0E0 /* Software MUX Pad Control Register 56 */ 885c263f43SRuslan Bukin #define IOMUXC_PTC12 0x0E4 /* Software MUX Pad Control Register 57 */ 895c263f43SRuslan Bukin #define IOMUXC_PTC13 0x0E8 /* Software MUX Pad Control Register 58 */ 905c263f43SRuslan Bukin #define IOMUXC_PTC14 0x0EC /* Software MUX Pad Control Register 59 */ 915c263f43SRuslan Bukin #define IOMUXC_PTC15 0x0F0 /* Software MUX Pad Control Register 60 */ 925c263f43SRuslan Bukin #define IOMUXC_PTC16 0x0F4 /* Software MUX Pad Control Register 61 */ 935c263f43SRuslan Bukin #define IOMUXC_PTC17 0x0F8 /* Software MUX Pad Control Register 62 */ 945c263f43SRuslan Bukin #define IOMUXC_PTD31 0x0FC /* Software MUX Pad Control Register 63 */ 955c263f43SRuslan Bukin #define IOMUXC_PTD30 0x100 /* Software MUX Pad Control Register 64 */ 965c263f43SRuslan Bukin #define IOMUXC_PTD29 0x104 /* Software MUX Pad Control Register 65 */ 975c263f43SRuslan Bukin #define IOMUXC_PTD28 0x108 /* Software MUX Pad Control Register 66 */ 985c263f43SRuslan Bukin #define IOMUXC_PTD27 0x10C /* Software MUX Pad Control Register 67 */ 995c263f43SRuslan Bukin #define IOMUXC_PTD26 0x110 /* Software MUX Pad Control Register 68 */ 1005c263f43SRuslan Bukin #define IOMUXC_PTD25 0x114 /* Software MUX Pad Control Register 69 */ 1015c263f43SRuslan Bukin #define IOMUXC_PTD24 0x118 /* Software MUX Pad Control Register 70 */ 1025c263f43SRuslan Bukin #define IOMUXC_PTD23 0x11C /* Software MUX Pad Control Register 71 */ 1035c263f43SRuslan Bukin #define IOMUXC_PTD22 0x120 /* Software MUX Pad Control Register 72 */ 1045c263f43SRuslan Bukin #define IOMUXC_PTD21 0x124 /* Software MUX Pad Control Register 73 */ 1055c263f43SRuslan Bukin #define IOMUXC_PTD20 0x128 /* Software MUX Pad Control Register 74 */ 1065c263f43SRuslan Bukin #define IOMUXC_PTD19 0x12C /* Software MUX Pad Control Register 75 */ 1075c263f43SRuslan Bukin #define IOMUXC_PTD18 0x130 /* Software MUX Pad Control Register 76 */ 1085c263f43SRuslan Bukin #define IOMUXC_PTD17 0x134 /* Software MUX Pad Control Register 77 */ 1095c263f43SRuslan Bukin #define IOMUXC_PTD16 0x138 /* Software MUX Pad Control Register 78 */ 1105c263f43SRuslan Bukin #define IOMUXC_PTD0 0x13C /* Software MUX Pad Control Register 79 */ 1115c263f43SRuslan Bukin #define IOMUXC_PTD1 0x140 /* Software MUX Pad Control Register 80 */ 1125c263f43SRuslan Bukin #define IOMUXC_PTD2 0x144 /* Software MUX Pad Control Register 81 */ 1135c263f43SRuslan Bukin #define IOMUXC_PTD3 0x148 /* Software MUX Pad Control Register 82 */ 1145c263f43SRuslan Bukin #define IOMUXC_PTD4 0x14C /* Software MUX Pad Control Register 83 */ 1155c263f43SRuslan Bukin #define IOMUXC_PTD5 0x150 /* Software MUX Pad Control Register 84 */ 1165c263f43SRuslan Bukin #define IOMUXC_PTD6 0x154 /* Software MUX Pad Control Register 85 */ 1175c263f43SRuslan Bukin #define IOMUXC_PTD7 0x158 /* Software MUX Pad Control Register 86 */ 1185c263f43SRuslan Bukin #define IOMUXC_PTD8 0x15C /* Software MUX Pad Control Register 87 */ 1195c263f43SRuslan Bukin #define IOMUXC_PTD9 0x160 /* Software MUX Pad Control Register 88 */ 1205c263f43SRuslan Bukin #define IOMUXC_PTD10 0x164 /* Software MUX Pad Control Register 89 */ 1215c263f43SRuslan Bukin #define IOMUXC_PTD11 0x168 /* Software MUX Pad Control Register 90 */ 1225c263f43SRuslan Bukin #define IOMUXC_PTD12 0x16C /* Software MUX Pad Control Register 91 */ 1235c263f43SRuslan Bukin #define IOMUXC_PTD13 0x170 /* Software MUX Pad Control Register 92 */ 1245c263f43SRuslan Bukin #define IOMUXC_PTB23 0x174 /* Software MUX Pad Control Register 93 */ 1255c263f43SRuslan Bukin #define IOMUXC_PTB24 0x178 /* Software MUX Pad Control Register 94 */ 1265c263f43SRuslan Bukin #define IOMUXC_PTB25 0x17C /* Software MUX Pad Control Register 95 */ 1275c263f43SRuslan Bukin #define IOMUXC_PTB26 0x180 /* Software MUX Pad Control Register 96 */ 1285c263f43SRuslan Bukin #define IOMUXC_PTB27 0x184 /* Software MUX Pad Control Register 97 */ 1295c263f43SRuslan Bukin #define IOMUXC_PTB28 0x188 /* Software MUX Pad Control Register 98 */ 1305c263f43SRuslan Bukin #define IOMUXC_PTC26 0x18C /* Software MUX Pad Control Register 99 */ 1315c263f43SRuslan Bukin #define IOMUXC_PTC27 0x190 /* Software MUX Pad Control Register 100 */ 1325c263f43SRuslan Bukin #define IOMUXC_PTC28 0x194 /* Software MUX Pad Control Register 101 */ 1335c263f43SRuslan Bukin #define IOMUXC_PTC29 0x198 /* Software MUX Pad Control Register 102 */ 1345c263f43SRuslan Bukin #define IOMUXC_PTC30 0x19C /* Software MUX Pad Control Register 103 */ 1355c263f43SRuslan Bukin #define IOMUXC_PTC31 0x1A0 /* Software MUX Pad Control Register 104 */ 1365c263f43SRuslan Bukin #define IOMUXC_PTE0 0x1A4 /* Software MUX Pad Control Register 105 */ 1375c263f43SRuslan Bukin #define IOMUXC_PTE1 0x1A8 /* Software MUX Pad Control Register 106 */ 1385c263f43SRuslan Bukin #define IOMUXC_PTE2 0x1AC /* Software MUX Pad Control Register 107 */ 1395c263f43SRuslan Bukin #define IOMUXC_PTE3 0x1B0 /* Software MUX Pad Control Register 108 */ 1405c263f43SRuslan Bukin #define IOMUXC_PTE4 0x1B4 /* Software MUX Pad Control Register 109 */ 1415c263f43SRuslan Bukin #define IOMUXC_PTE5 0x1B8 /* Software MUX Pad Control Register 110 */ 1425c263f43SRuslan Bukin #define IOMUXC_PTE6 0x1BC /* Software MUX Pad Control Register 111 */ 1435c263f43SRuslan Bukin #define IOMUXC_PTE7 0x1C0 /* Software MUX Pad Control Register 112 */ 1445c263f43SRuslan Bukin #define IOMUXC_PTE8 0x1C4 /* Software MUX Pad Control Register 113 */ 1455c263f43SRuslan Bukin #define IOMUXC_PTE9 0x1C8 /* Software MUX Pad Control Register 114 */ 1465c263f43SRuslan Bukin #define IOMUXC_PTE10 0x1CC /* Software MUX Pad Control Register 115 */ 1475c263f43SRuslan Bukin #define IOMUXC_PTE11 0x1D0 /* Software MUX Pad Control Register 116 */ 1485c263f43SRuslan Bukin #define IOMUXC_PTE12 0x1D4 /* Software MUX Pad Control Register 117 */ 1495c263f43SRuslan Bukin #define IOMUXC_PTE13 0x1D8 /* Software MUX Pad Control Register 118 */ 1505c263f43SRuslan Bukin #define IOMUXC_PTE14 0x1DC /* Software MUX Pad Control Register 119 */ 1515c263f43SRuslan Bukin #define IOMUXC_PTE15 0x1E0 /* Software MUX Pad Control Register 120 */ 1525c263f43SRuslan Bukin #define IOMUXC_PTE16 0x1E4 /* Software MUX Pad Control Register 121 */ 1535c263f43SRuslan Bukin #define IOMUXC_PTE17 0x1E8 /* Software MUX Pad Control Register 122 */ 1545c263f43SRuslan Bukin #define IOMUXC_PTE18 0x1EC /* Software MUX Pad Control Register 123 */ 1555c263f43SRuslan Bukin #define IOMUXC_PTE19 0x1F0 /* Software MUX Pad Control Register 124 */ 1565c263f43SRuslan Bukin #define IOMUXC_PTE20 0x1F4 /* Software MUX Pad Control Register 125 */ 1575c263f43SRuslan Bukin #define IOMUXC_PTE21 0x1F8 /* Software MUX Pad Control Register 126 */ 1585c263f43SRuslan Bukin #define IOMUXC_PTE22 0x1FC /* Software MUX Pad Control Register 127 */ 1595c263f43SRuslan Bukin #define IOMUXC_PTE23 0x200 /* Software MUX Pad Control Register 128 */ 1605c263f43SRuslan Bukin #define IOMUXC_PTE24 0x204 /* Software MUX Pad Control Register 129 */ 1615c263f43SRuslan Bukin #define IOMUXC_PTE25 0x208 /* Software MUX Pad Control Register 130 */ 1625c263f43SRuslan Bukin #define IOMUXC_PTE26 0x20C /* Software MUX Pad Control Register 131 */ 1635c263f43SRuslan Bukin #define IOMUXC_PTE27 0x210 /* Software MUX Pad Control Register 132 */ 1645c263f43SRuslan Bukin #define IOMUXC_PTE28 0x214 /* Software MUX Pad Control Register 133 */ 1655c263f43SRuslan Bukin #define IOMUXC_PTA7 0x218 /* Software MUX Pad Control Register 134 */ 166