I am using PHYTEC link board eth (https://docs.zephyrproject.org/latest/boards/shields/link_board_eth/doc/index.html) as ethernet shield using SPI on nRF9161.
I updated the VDD rail voltage to 3.3V using the board configurator and also verified using a multimeter.
The shield uses the following pins for the SPI connection .
D9 - INT
D10 - CS
D11 - MOSI
D12 - MISO
D13 - SCK
In nrf9161_nrf9161_common.dtsi, gd25wb256 is disabled. spi3 status is "okay".
arduino_spi: &spi3 { compatible = "nordic,nrf-spim"; status = "okay"; cs-gpios = <&arduino_header 16 GPIO_ACTIVE_LOW>, /* D10 */ <&gpio0 20 GPIO_ACTIVE_LOW>; pinctrl-0 = <&spi3_default>; pinctrl-1 = <&spi3_sleep>; pinctrl-names = "default", "sleep"; gd25wb256: gd25wb256e3ir@1 { compatible = "jedec,spi-nor"; status = "disabled"; reg = <1>; spi-max-frequency = <8000000>; size = <268435456>; has-dpd; t-enter-dpd = <3000>; t-exit-dpd = <40000>; sfdp-bfp = [ e5 20 f3 ff ff ff ff 0f 44 eb 08 6b 08 3b 42 bb ee ff ff ff ff ff 00 ff ff ff 00 ff 0c 20 0f 52 10 d8 00 ff 44 7a c9 fe 83 67 26 62 ec 82 18 44 7a 75 7a 75 04 c4 d5 5c 00 06 74 00 08 50 00 01 ]; jedec-id = [c8 65 19]; }; };
I noticed that button_1 is also using GPIO Pin 9.
buttons { compatible = "gpio-keys"; button0: button_0 { gpios = <&gpio0 8 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; label = "Push button 1"; zephyr,code = <INPUT_KEY_0>; }; button1: button_1 { gpios = <&gpio0 9 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; label = "Push button 2"; zephyr,code = <INPUT_KEY_1>; };
So, I also enabled the I/O expander in the Board configurator to free up GPIOs. However I am getting an SPI connection timeout when i try to run zperf sample app.
Am I missing something for the device tree configuration on nrf9161? I have used the shield with nRF9160, and there, I have to disable the switch2_pin_routing in order to use GPIO Pin 9.
Thanks in advance.