Cannot use VIC pins as GPIO output/AGPO on KLM5S3 (KLM550S3)
Hi All,
I am trying to use VIC parallel interface balls VI_0_I as GPIO output but the physical pin shows nothing on DSO despite all registers being correct.
VI_0_I_HS, VI_0_I_VS, VI_0_I_D[0], VI_0_I_D[1], VI_0_I_D[2], VI_0_I_D[3], VI_0_I_D[4], VI_0_I_D[5], VI_0_I_D[6], VI_0_I_D[7], VI_0_I_PCLK, VI_0_I_D[8], VI_0_I_D[9], VI_0_I_D[10], VI_0_I_D[11], VI_0_I_D[12], VI_0_I_D[13], VI_0_I_D[14], VI_0_I_D[15], VI_O_REF_CLK
We followed the standard GPIO enable procedure at register level in U-Boot:
- Enabled GPIO2 clock via
SYSC_CLK_EN_SET_0(0xB3F00114 = 0x04000000) - Cleared ALL VIC pads via
SYSC_PAD_EN_STAT_8_CLR_CTRL(0xB3F00178) — verified 0xB3F00058 = 0x00000000 - Cleared AGPO pad via
SYSC_PAD_EN_STAT_3_CLR_CTRL(0xB3F00150) - Enabled GPIO pad via
SYSC_PAD_EN_STAT_2_SET_CTRL(0xB3F00144 bit 18) - Set PIN_DIR to output via
GPIOC_PIN_DIR(0xB370000C = 0x00040000) - Drove HIGH via
GPIOC_DATA_SET(0xB3700014 = 0x00040000)
All registers confirm the correct state but no physical output:
VIC pads cleared: 0xB3F00058 = 0x00000000
GPIO pad enabled: 0xB3F00040 = 0x00040000
PIN_DIR = output: 0xB370000C = 0x00040000
DATA_OUT = HIGH: 0xB3700004 = 0x00040000
The same procedure works perfectly on non-VIC GPIO pins like GPIO_2_IO_D[12] (ball V8) and all GPIO_1 bank pins.
We also tested GPIO_2 bank VIC pins and GPIO_0 bank VIC pins — none of them produce any output.
Does GPIO or AGPO output work on these balls? If yes, what is the correct register sequence to enable GPIO or AGPO output on VIC pins?
Are VIC balls input-only at silicon level even when muxed to GPIO mode?
Comments
Hi,
We'd like to help, but before that, we'd like to double check with you: Are you using our KLM550S3 EVM, or a custom board you made?
Hi,
Thank you for your response.
Yes, we are currently using the KLM550S3 EVM (VATICS2217 EVB-M5S_SOCKET-3.0), not a custom board.
Looking forward to your guidance on this issue.
Hi,
Thank you for clarifying. To use VIC0 pins as GPIO, you will need to use J15 to short the VDDIO 3.3v to provide power:
Hi,
Thank you for the support. Issue is resolved after powering VDDIO_SENSOR_0 via J15.
Could you please let us know where this J15 jumper information is documented for future reference?
Thanks
Hi,
I'm glad the issue is resolved. You can find the documentation inside KLM5S3_HW/01_Hardware/02_PCB/01_EVM/M5S_EVM-SOCKET_3_0/M5S_EVM-SOCKET-3_0.pdf. The below image would be on Page 10:
For additional information on VIC, please refer to KLM5S3_HW/01_Hardware/01_Documents/KLM5S3_Hardware_Application_Notes.pdf:
Hi,
Thank you for the documentation references. We have reviewed both the EVB schematic (M5S_EVM-SOCKET-3_0.pdf, Page 10) and the Hardware Application Notes (KLM5S3_Hardware_Application_Notes.pdf) and found them very helpful.
We will refer to these documents for future hardware bring-up.
Thanks you for your support.