Add a conb cell in gpio_control_block
- this is to be able to enable/disable output without needed extra cells
on an upper level
diff --git a/verilog/rtl/caravel.v b/verilog/rtl/caravel.v
index d58aa9b..fa85ee2 100644
--- a/verilog/rtl/caravel.v
+++ b/verilog/rtl/caravel.v
@@ -590,6 +590,9 @@
.mgmt_gpio_out({sdo_out, jtag_out}),
.mgmt_gpio_oeb({sdo_outenb, jtag_outenb}),
+ .one(),
+ .zero(),
+
// Serial data chain for pad configuration
.serial_data_in(gpio_serial_link_shifted[1:0]),
.serial_data_out(gpio_serial_link[1:0]),
@@ -614,6 +617,7 @@
.pad_gpio_in(mprj_io_in[1:0])
);
+ wire [`MPRJ_IO_PADS-1:2] one_loop;
gpio_control_block gpio_control_in [`MPRJ_IO_PADS-1:2] (
`ifdef USE_POWER_PINS
.vccd(vccd),
@@ -629,7 +633,10 @@
.mgmt_gpio_in(mgmt_io_in[(`MPRJ_IO_PADS-1):2]),
.mgmt_gpio_out(mgmt_io_in[(`MPRJ_IO_PADS-1):2]),
- .mgmt_gpio_oeb(1'b1),
+ .mgmt_gpio_oeb(one_loop),
+
+ .one(one_loop),
+ .zero(),
// Serial data chain for pad configuration
.serial_data_in(gpio_serial_link_shifted[(`MPRJ_IO_PADS-1):2]),