I am running into a problem using the TI DM3730 part. We are trying to use GPIO ports 127 & 129 for normal 1.8V GPIO, but these ports are “extended-drain” I/O pins which require extra configuration of “PBIAS” circuitry, which selects between 1.8V and 3.0V output based on input voltage on the SIM_VDDS supply rail. At this point I’ve done all the configuration the data sheet recommends, and I am still not able to use these pins as GPIO. I am noting that the data sheet is not very clear on the use case I’m describing.
My general configuration practice (testing with pin 129):
(CONTROL_PBIAS_LITE[PBIASLITEPWRDNZ1] is 0 to start)
· Set SIM_VDDS supply to 1.8V (The signals are buried, so verifying this electrically this would be tough, but a step that may be necessary)
· Set pin mux to output (no pullup/pulldown)
· Set GPIO output enable for pin 129
· Set GPIO output high for pin 129 (will light an LED when the pin is high)
· Set CONTROL_PBIAS_LITE[PBIASLITEVMODE1] to 0
· Set CONTROL_PBIAS_LITE[PBIASLITEPWRDNZ1] to 1
· Set CONTROL_WKUP_CTRL[GPIO_IO_PWRDNZ] to 1 (not sure if this necessary but I have tested with and without this step)
So far none of this has worked. I have attempted to set the pin in “pull-up” state through the MUX register and notice that it lights the LED in this state but is not controllable by the normal GPIO registers.
Summary: My goal is to have the pins 127 & 129 behave like any other GPIO (‘0’ causes a low state on the output, ‘1’ causes a high state (1.8V) on the output). My problem is that they don’t behave that way and the MCU requires extra configuration to get them to.
Any help you can provide would be very much appreciated.