Last active
October 22, 2022 01:19
-
-
Save nonakap/9045101 to your computer and use it in GitHub Desktop.
86Duino Sketch: Dump UART and CrossBar registers
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* vortex86ex internal pcidevs | |
* dev#0 func#0: NB0 | |
* dev#0 func#1: NB1 | |
* dev#1 func#0: PCI-E | |
* dev#7 func#0: SB0 | |
* dev#7 func#1: SB1 | |
*/ | |
void | |
setup(void) | |
{ | |
Serial.begin(9600); | |
Serial.println("begin"); | |
} | |
void | |
loop(void) | |
{ | |
delay(10000); | |
int sbclk = sb_Read16(0xc0) & (1UL << 31); | |
Serial.print("SBCLK: "); | |
Serial.println(sbclk ? "1" : "0"); | |
Serial.println(""); | |
int base = sb_Read16(0x60); | |
Serial.print("UART base: 0x"); | |
Serial.println(base, HEX); | |
void *cookie = io_Alloc(IO_USE_PORTIO, base & 0xfffe, 4 * 10); /* XXX and 0xfffe? */ | |
if (cookie != NULL) { | |
int i; | |
for (i = 0; i < 10; ++i) { | |
unsigned long uartbase = io_In32(cookie, i * 4); | |
Serial.print("UART["); | |
Serial.print(i); | |
Serial.print("]: 0x"); | |
Serial.println(uartbase, HEX); | |
Serial.print(" Duplex mode: "); | |
Serial.println(uartbase & (1 << 25) ? "Half" : "Full"); | |
if (i == 0) { | |
if (uartbase & (1 << 24)) { | |
Serial.println(" Forward port 80h to UART1"); | |
} | |
} | |
Serial.print(" Internal UART I/O Address Decode: "); | |
Serial.println(uartbase & (1 << 23) ? "Enabled" : "Disabled"); | |
Serial.print(" Clock: "); | |
Serial.println(uartbase & (1 << 22) ? (sbclk ? "48MHz" : "24MHz") : (sbclk ? "26MHz" : "13Mhz")); | |
Serial.print(" FIFO: "); | |
Serial.println(uartbase & (1 << 21) ? "32 bytes" : "16 bytes"); | |
Serial.print(" High Speed UART Clock Ratio Selection: "); | |
Serial.println(uartbase & (1 << 20) ? "1/8" : "1/16"); | |
static const char *irq_table[] = { | |
"Disabled", "IRQ[9]", "IRQ[3]", "IRQ[10]", | |
"IRQ[4]", "IRQ[5]", "IRQ[7]" ,"IRQ[6]", | |
"IRQ[1]", "IRQ[11]", "Reserved" ,"IRQ[12]", | |
"Reserved", "IRQ[14]", "Reserved" ,"IRQ[15]" | |
}; | |
Serial.print(" IRQ Routing Table: "); | |
Serial.println(irq_table[(uartbase >> 16) & 0xf]); | |
unsigned short combase = uartbase & 0xfff8; | |
Serial.print(" I/O Address: "); | |
Serial.println(combase, HEX); | |
if (combase != 0) { | |
void *com_cookie = io_Alloc(IO_USE_PORTIO, combase, 8); | |
if (com_cookie != NULL) { | |
Serial.print(" Register: "); | |
int r; | |
for (r = 0; r < 8; ++r) { | |
unsigned char reg = io_In8(com_cookie, r); | |
Serial.print(reg, HEX); | |
Serial.print(" "); | |
} | |
Serial.println(""); | |
io_Free(com_cookie); | |
} | |
} | |
} | |
io_Free(cookie); | |
} | |
Serial.println(""); | |
int cbbase = sb_Read16(0x64); | |
Serial.print("CrossBar base: 0x"); | |
Serial.println(cbbase, HEX); | |
void *cb_cookie = io_Alloc(IO_USE_PORTIO, cbbase & 0xfffe, 0xb0); // XXX and fffe? | |
if (cb_cookie != NULL) { | |
static const char *port_function_table[] = { | |
/*00*/"No function", "MCM P0", "MCM P1", "MCM P2", | |
/*04*/"PRT 8/17 P0", "PRT 8/17 P1", "SD/MMC", "COM[5678] TXD[56768]/RXD[5678]", | |
/*08*/"Bit-RichIO Port0", "Bit-RichIO Port1", "Bit-RichIO Port2", "[ISA P0]", | |
/*0c*/"[ISA P1]", "[ISA P2]", "[ISA P3]", "[ISA P4]", | |
/*10*/"[ISA P5]", "[ISA P6]", "[ISA P7]", "", | |
/*14*/"", "", "", "", | |
/*18*/"", "", "", "", | |
/*1c*/"", "", "", "" | |
}; | |
int port; | |
for (port = 0; port < 10; ++port) { | |
Serial.print(" RichIO Port["); | |
Serial.print(port); | |
Serial.print("]: "); | |
unsigned char reg = io_In8(cb_cookie, port); | |
Serial.print(reg, HEX); | |
Serial.print(" ("); | |
Serial.print(port_function_table[reg & 0x1f]); | |
Serial.println(")"); | |
} | |
Serial.println(""); | |
static const char *bit_function_table[] = { | |
/*00*/"No function", "COM1-TXD1", "COM1-RXD1", "COM2-TXD2", | |
/*04*/"COM2-RXD2", "COM3-TXD3", "COM3-RXD3", "COM4-TXD4", | |
/*08*/"COM4-RXD4", "SPI-CS1", "SPI-CLK", "SPI-DO", | |
/*0c*/"SPI-DI", "I2C-SDA", "I2C-SCL", "CAN-TXD", | |
/*10*/"CAN-RXD", "USB-DEVICE+", "USB-DEVICE-", "KBDATA", | |
/*14*/"KBCLK", "MSDATA", "MSCLK", "LAN-LINK/ACK", | |
/*18*/"LAN-DUPLEX", "PRINT 1/17-PError", "SPEAKER", "WDTOUT", | |
/*1c*/"TXDEN1", "TXDEN2", "TXDEN3", "TXDEN4", | |
/*20*/"TXDEN5", "TXDEN6", "TXDEN7", "TXDEN8", | |
/*24*/"CLK-OUT", "MTBF", "SPI-CS2", "H_BCLK", | |
/*28*/"H_SYNC", "H_SDO", "H_SDI", "H_RST#", | |
/*2c*/"", "", "", "", | |
/*30*/"", "", "", "", | |
/*34*/"", "", "", "", | |
/*38*/"", "", "", "", | |
/*3c*/"", "", "", "" | |
}; | |
for (port = 0; port < 8; ++port) { | |
Serial.print(" Bit-RichIO Port0 Select["); | |
Serial.print(port); | |
Serial.print("]: "); | |
unsigned char reg = io_In8(cb_cookie, 0x10 + port); | |
Serial.print(reg, HEX); | |
Serial.print(" ("); | |
Serial.print(bit_function_table[reg & 0x3f]); | |
Serial.println(")"); | |
} | |
for (port = 0; port < 8; ++port) { | |
Serial.print(" Bit-RichIO Port1 Select["); | |
Serial.print(port); | |
Serial.print("]: "); | |
unsigned char reg = io_In8(cb_cookie, 0x18 + port); | |
Serial.print(reg, HEX); | |
Serial.print(" ("); | |
Serial.print(bit_function_table[reg & 0x3f]); | |
Serial.println(")"); | |
} | |
for (port = 0; port < 8; ++port) { | |
Serial.print(" Bit-RichIO Port2 Select["); | |
Serial.print(port); | |
Serial.print("]: "); | |
unsigned char reg = io_In8(cb_cookie, 0x20 + port); | |
Serial.print(reg, HEX); | |
Serial.print(" ("); | |
Serial.print(bit_function_table[reg & 0x3f]); | |
Serial.println(")"); | |
} | |
static const char *power_control0_table[] = { | |
/*00*/"COM1", "COM2", "COM3", "COM4", | |
/*04*/"COM5", "COM6", "COM7", "COM8", | |
/*08*/"COM9", "COM10", "GPIO INTC0", "GPIO INTC1", | |
/*0c*/"SPI0", "I2C0", "MOTOR", "USB Device", | |
/*10*/"Parallel Port", "CAN Bus", "8051A", "GPIO Port0", | |
/*14*/"GPIO Port1", "GPIO Port2", "GPIO Port3", "GPIO Port4", | |
/*18*/"GPIO Port5", "GPIO Port6", "GPIO Port7", "GPIO Port8", | |
/*1c*/"GPIO Port9", "8051A GPIO Port0", "8051A GPIO Port1", "8051A GPIO Port2" | |
}; | |
unsigned long pdc0 = io_In32(cb_cookie, 0x28); | |
Serial.print(" On-Chip Device Power-Down Control 0: "); | |
Serial.println(pdc0, HEX); | |
for (port = 0; port < 32; ++port) { | |
Serial.print(" "); | |
Serial.print(power_control0_table[port]); | |
Serial.print(": "); | |
Serial.println(pdc0 & (1U << port) ? "power-down" : "activate"); | |
} | |
static const char *power_control1_table[] = { | |
/*00*/"8051A GPIO Port3", "8051A GPIO Port4", "8051A GPIO Port5", "8051A GPIO Port6", | |
/*04*/"8051A GPIO Port7", "8051A GPIO Port8", "8051A GPIO Port9", "HDA", | |
/*08*/"", "", "", "", | |
/*0c*/"", "", "", "", | |
/*10*/"", "", "", "", | |
/*14*/"", "", "", "", | |
/*18*/"", "", "", "", | |
/*1c*/"", "", "", "" | |
}; | |
unsigned long pdc1 = io_In32(cb_cookie, 0x2c); | |
Serial.print(" On-Chip Device Power-Down Control 1: "); | |
Serial.println(pdc1, HEX); | |
for (port = 0; port < 7; ++port) { | |
Serial.print(" "); | |
Serial.print(power_control1_table[port]); | |
Serial.print(": "); | |
Serial.println(pdc1 & (1U << port) ? "power-down" : "activate"); | |
} | |
int pad; | |
for (pad = 0; pad < 80; ++pad) { | |
unsigned long val = io_In8(cookie, 0x30 + pad); | |
Serial.print(" PAD Attribute["); | |
Serial.print(pad); | |
Serial.print("]: 0x"); | |
Serial.print(val, HEX); | |
Serial.print(", "); | |
Serial.print(val & (1 << 4) ? "high" : "low"); | |
Serial.print(" slew rate, Smitter Trigger: "); | |
Serial.print(val & (1 << 3) ? "Enabled" : "Disabled"); | |
Serial.print(", Driving current: "); | |
Serial.print(val & (1 << 2) ? "16" : "8"); | |
Serial.print(" mA, Input State: "); | |
static const char *input_state_table[] = { | |
"Tri-state", "Pull-up", "Pull-down", "Reserved" | |
}; | |
Serial.println(input_state_table[val & 3]); | |
} | |
for (port = 4; port < 10; ++port) { | |
Serial.print(" Port Group Selection["); | |
Serial.print(port); | |
Serial.print("]: "); | |
unsigned char reg = io_In8(cb_cookie, 0x80 + port); | |
Serial.print(reg, HEX); | |
Serial.print(" ("); | |
switch (reg & 0x1f) { | |
case 0: | |
Serial.print("No function"); | |
break; | |
case 1 << 0: | |
Serial.print("GPIO Group"); | |
break; | |
case 1 << 1: | |
Serial.print("COM Group"); | |
break; | |
case 1 << 2: | |
Serial.print("8051A Group"); | |
break; | |
case 1 << 3: | |
Serial.print("RichIO Group"); | |
break; | |
case 1 << 4: | |
Serial.print("Reserved"); | |
break; | |
default: | |
Serial.print("Unknown"); | |
break; | |
} | |
Serial.println(")"); | |
} | |
for (port = 0; port < 32; ++port) { | |
Serial.print(" Bit Group Selection["); | |
Serial.print(port); | |
Serial.print("]: "); | |
unsigned char reg = io_In8(cb_cookie, 0x90 + port); | |
Serial.print(reg, HEX); | |
Serial.print(" ("); | |
switch (reg & 0x1f) { | |
case 0: | |
Serial.print("No function"); | |
break; | |
case 1 << 0: | |
Serial.print("GPIO Group"); | |
break; | |
case 1 << 1: | |
Serial.print("COM Group"); | |
break; | |
case 1 << 2: | |
Serial.print("8051A Group"); | |
break; | |
case 1 << 3: | |
Serial.print("RichIO Group"); | |
break; | |
case 1 << 4: | |
Serial.print("Reserved"); | |
break; | |
default: | |
Serial.print("Unknown"); | |
break; | |
} | |
Serial.println(")"); | |
} | |
io_Free(cb_cookie); | |
} | |
} | |
/* | |
Result: 86Duino EduCake with Hehuan 1.0/GuavaCake 0.9 (20140218) | |
SBCLK: 0 | |
UART base: 0xC01 | |
UART[0]: 0x8403F8 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Enabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: IRQ[4] | |
I/O Address: 3F8 | |
Register: 0 0 C1 3 3 60 0 81 | |
UART[1]: 0x8202F8 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Enabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: IRQ[3] | |
I/O Address: 2F8 | |
Register: 0 0 C1 3 3 60 0 1 | |
UART[2]: 0x8403E8 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Enabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: IRQ[4] | |
I/O Address: 3E8 | |
Register: 0 0 C1 3 3 60 0 0 | |
UART[3]: 0x820260 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Enabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: IRQ[3] | |
I/O Address: 260 | |
Register: 0 0 C1 3 3 60 0 4D | |
UART[4]: 0x0 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Disabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: Disabled | |
I/O Address: 0 | |
UART[5]: 0x8B02E8 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Enabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: IRQ[12] | |
I/O Address: 2E8 | |
Register: 0 0 C1 3 3 60 0 A0 | |
UART[6]: 0x0 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Disabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: Disabled | |
I/O Address: 0 | |
UART[7]: 0x0 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Disabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: Disabled | |
I/O Address: 0 | |
UART[8]: 0x8403E0 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Enabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: IRQ[4] | |
I/O Address: 3E0 | |
Register: 0 0 C1 3 3 60 0 0 | |
UART[9]: 0x0 | |
Duplex mode: Full | |
Internal UART I/O Address Decode: Disabled | |
Clock: 13Mhz | |
FIFO: 16 bytes | |
High Speed UART Clock Ratio Selection: 1/16 | |
IRQ Routing Table: Disabled | |
I/O Address: 0 | |
CrossBar base: 0xA01 | |
RichIO Port[0]: 3 (MCM P2) | |
RichIO Port[1]: 8 (Bit-RichIO Port0) | |
RichIO Port[2]: 1 (MCM P0) | |
RichIO Port[3]: 2 (MCM P1) | |
RichIO Port[4]: 0 (No function) | |
RichIO Port[5]: 0 (No function) | |
RichIO Port[6]: 6 (SD/MMC) | |
RichIO Port[7]: 0 (No function) | |
RichIO Port[8]: 9 (Bit-RichIO Port1) | |
RichIO Port[9]: A (Bit-RichIO Port2) | |
Bit-RichIO Port0 Select[0]: E (I2C-SCL) | |
Bit-RichIO Port0 Select[1]: D (I2C-SDA) | |
Bit-RichIO Port0 Select[2]: 1 (COM1-TXD1) | |
Bit-RichIO Port0 Select[3]: 2 (COM1-RXD1) | |
Bit-RichIO Port0 Select[4]: 5 (COM3-TXD3) | |
Bit-RichIO Port0 Select[5]: 6 (COM3-RXD3) | |
Bit-RichIO Port0 Select[6]: 3 (COM2-TXD2) | |
Bit-RichIO Port0 Select[7]: 4 (COM2-RXD2) | |
Bit-RichIO Port1 Select[0]: 9 (SPI-CS1) | |
Bit-RichIO Port1 Select[1]: A (SPI-CLK) | |
Bit-RichIO Port1 Select[2]: C (SPI-DI) | |
Bit-RichIO Port1 Select[3]: B (SPI-DO) | |
Bit-RichIO Port1 Select[4]: 17 (LAN-LINK/ACK) | |
Bit-RichIO Port1 Select[5]: 18 (LAN-DUPLEX) | |
Bit-RichIO Port1 Select[6]: 1A (SPEAKER) | |
Bit-RichIO Port1 Select[7]: 0 (No function) | |
Bit-RichIO Port2 Select[0]: 27 (H_BCLK) | |
Bit-RichIO Port2 Select[1]: 28 (H_SYNC) | |
Bit-RichIO Port2 Select[2]: 29 (H_SDO) | |
Bit-RichIO Port2 Select[3]: 2A (H_SDI) | |
Bit-RichIO Port2 Select[4]: 2B (H_RST#) | |
Bit-RichIO Port2 Select[5]: 21 (TXDEN6) | |
Bit-RichIO Port2 Select[6]: 11 (USB-DEVICE+) | |
Bit-RichIO Port2 Select[7]: 12 (USB-DEVICE-) | |
On-Chip Device Power-Down Control 0: F8010C00 | |
COM1: activate | |
COM2: activate | |
COM3: activate | |
COM4: activate | |
COM5: activate | |
COM6: activate | |
COM7: activate | |
COM8: activate | |
COM9: activate | |
COM10: activate | |
GPIO INTC0: power-down | |
GPIO INTC1: power-down | |
SPI0: activate | |
I2C0: activate | |
MOTOR: activate | |
USB Device: activate | |
Parallel Port: power-down | |
CAN Bus: activate | |
8051A: activate | |
GPIO Port0: activate | |
GPIO Port1: activate | |
GPIO Port2: activate | |
GPIO Port3: activate | |
GPIO Port4: activate | |
GPIO Port5: activate | |
GPIO Port6: activate | |
GPIO Port7: activate | |
GPIO Port8: power-down | |
GPIO Port9: power-down | |
8051A GPIO Port0: power-down | |
8051A GPIO Port1: power-down | |
8051A GPIO Port2: power-down | |
On-Chip Device Power-Down Control 1: 7F | |
8051A GPIO Port3: power-down | |
8051A GPIO Port4: power-down | |
8051A GPIO Port5: power-down | |
8051A GPIO Port6: power-down | |
8051A GPIO Port7: power-down | |
8051A GPIO Port8: power-down | |
8051A GPIO Port9: power-down | |
PAD Attribute[0]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[1]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[2]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[3]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[4]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[5]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[6]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[7]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[8]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[9]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[10]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[11]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[12]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[13]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[14]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[15]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[16]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[17]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[18]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[19]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[20]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[21]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[22]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[23]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[24]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[25]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[26]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[27]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[28]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[29]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[30]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[31]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[32]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[33]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[34]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[35]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[36]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[37]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[38]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[39]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[40]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[41]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[42]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[43]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[44]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[45]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[46]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[47]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[48]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[49]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[50]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[51]: 0x2, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-down | |
PAD Attribute[52]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[53]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[54]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[55]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[56]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[57]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[58]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[59]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[60]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[61]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[62]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[63]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[64]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[65]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[66]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[67]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[68]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[69]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[70]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[71]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[72]: 0x2, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-down | |
PAD Attribute[73]: 0x2, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-down | |
PAD Attribute[74]: 0x2, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-down | |
PAD Attribute[75]: 0x2, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-down | |
PAD Attribute[76]: 0x1, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Pull-up | |
PAD Attribute[77]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[78]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
PAD Attribute[79]: 0x0, low slew rate, Smitter Trigger: Disabled, Driving current: 8 mA, Input State: Tri-state | |
Port Group Selection[4]: 1 (GPIO Group) | |
Port Group Selection[5]: 2 (COM Group) | |
Port Group Selection[6]: 8 (RichIO Group) | |
Port Group Selection[7]: 1 (GPIO Group) | |
Port Group Selection[8]: 8 (RichIO Group) | |
Port Group Selection[9]: 8 (RichIO Group) | |
Bit Group Selection[0]: 8 (RichIO Group) | |
Bit Group Selection[1]: 8 (RichIO Group) | |
Bit Group Selection[2]: 8 (RichIO Group) | |
Bit Group Selection[3]: 8 (RichIO Group) | |
Bit Group Selection[4]: 8 (RichIO Group) | |
Bit Group Selection[5]: 8 (RichIO Group) | |
Bit Group Selection[6]: 8 (RichIO Group) | |
Bit Group Selection[7]: 8 (RichIO Group) | |
Bit Group Selection[8]: 8 (RichIO Group) | |
Bit Group Selection[9]: 8 (RichIO Group) | |
Bit Group Selection[10]: 1 (GPIO Group) | |
Bit Group Selection[11]: 1 (GPIO Group) | |
Bit Group Selection[12]: 1 (GPIO Group) | |
Bit Group Selection[13]: 1 (GPIO Group) | |
Bit Group Selection[14]: 1 (GPIO Group) | |
Bit Group Selection[15]: 1 (GPIO Group) | |
Bit Group Selection[16]: 8 (RichIO Group) | |
Bit Group Selection[17]: 8 (RichIO Group) | |
Bit Group Selection[18]: 8 (RichIO Group) | |
Bit Group Selection[19]: 8 (RichIO Group) | |
Bit Group Selection[20]: 8 (RichIO Group) | |
Bit Group Selection[21]: 8 (RichIO Group) | |
Bit Group Selection[22]: 8 (RichIO Group) | |
Bit Group Selection[23]: 8 (RichIO Group) | |
Bit Group Selection[24]: 8 (RichIO Group) | |
Bit Group Selection[25]: 8 (RichIO Group) | |
Bit Group Selection[26]: 8 (RichIO Group) | |
Bit Group Selection[27]: 8 (RichIO Group) | |
Bit Group Selection[28]: 8 (RichIO Group) | |
Bit Group Selection[29]: 8 (RichIO Group) | |
Bit Group Selection[30]: 8 (RichIO Group) | |
Bit Group Selection[31]: 8 (RichIO Group) | |
*/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment