nRF9160 - Issue reconfiguring IF5 (P0.23) to Open Drain

I have a custom board that started life based off of RF9160-DK 1.1.0.

We have a single programming header that can be used to program either the 52840 or the 9160 depending on the switch position.

During regular operation, the 9160 needs to be able to reset the 52840 via 9160:P0.23.

During programming, the JLINK will use the reset line.

So I need to set 9160:P0.23 as an open drain with a pullup.

We have created an overlay file for the 9160 that deletes the node &nrf52840_reset, and then set up 9160 pin 0.23 with GPIO_PULL_UP and as an GPIO_OPEN DRAIN as shown in the following:

/delete-node/ &nrf52840_reset;

/	{
	gpio_pins {
		compatible = "gpio-keys";
		
		nrf52840_reset_gpio: nrf52840_rst{
			gpios = <&gpio0 23 (GPIO_PULL_UP | GPIO_OPEN_DRAIN)>;
			label = "NRF52840 reset pin";
		};
	};
};

However, when the debugger finishes programming the 52840 (star in the image above) and the JLINK asserts the NRESET, it only gets down to 800mjV.

So it seems that the 9160 pin is not behaving as an open drain.  I confirmed this by disconnecting IF5 trace from the 9160 after which the debugger is able to fully pull down the NRESET to the 52840.

Is the snippet of our overlay changes incorrect? ... missing something? ... another way of doing this?

Thanks,

-- Glenn

Related