Chris Lonergan
10/06/2024, 6:31 PMMitch Bailey
10/06/2024, 7:04 PMMGMT
modes direct the gpio input and output to the RISC-V processor. USER
modes direct the input and output to the user area. (It’s a little more complicated and there are exceptions, but that’s the general idea). So even if you don’t use the RISC-V processor, you can still use the gpio if they are configured in one of the USER
modes.Chris Lonergan
10/06/2024, 7:09 PMMitch Bailey
10/07/2024, 1:13 AMTim Edwards
10/07/2024, 9:42 PMuser_defines.v
is edited to set the GPIO in user-project-accessible modes on power-up, then you don't need to run the processor at all and can force it permanently to reset. If you don't have the proper configuration on power-up, you can run a program on the processor that configures the GPIO, and then force the processor into reset. The GPIOs will continue to keep the configuration.Chris Lonergan
10/07/2024, 9:43 PMTim Edwards
10/07/2024, 11:47 PMChris Lonergan
10/08/2024, 12:13 AMTim Edwards
10/08/2024, 1:00 AMChris Lonergan
10/08/2024, 1:06 AMMitch Bailey
10/08/2024, 1:39 AMcaravel/verilog/rtl/gpio_control_block.v
file here.Tim Edwards
10/08/2024, 1:53 AMhousekeeping.v
where it is driving by the power-on-reset signal (which remains constant zero shortly after power-up and is not affected by the RESETN
pin). Also within housekeeping, it can be manually overridden to force all GPIOs back to the power-on-reset state.Chris Lonergan
10/08/2024, 2:04 PMAndrew Wright
10/09/2024, 12:19 PMTim Edwards
10/09/2024, 1:01 PM