Difference between Arduino YUNs

Hello Community,

I found an error in the SPI-communication at a Arduino YUN.
The Arduino communicate with an MCP23S17. The problem is, that the communication isn't stable. Every restart, the GPIOs of the MCP are different. Sometimes they have the same function like in the setupcode, sometimes every INPUT is an OUTPUT.
The only way to resolve the problem is a command at the Linux side

echo 0 > /sys/class/gpio/gpio21/value

With this command the IC "U5A" (NTB0104) get disable.
I bought the YUN a few month ago (Feb 2018). On the Linux side there is running the Arduino OS 2.0.3. The Firmeware Version is Linino Attitude Adjustment devel. Manufacture Arduino.org
From a friend I got an older Arduino YUN (2015). On the Linux side isn't running the Arduino OS, the firmeware is OpenWRTYun Attitude Adjustmnent 1. Manufacture Arduino.cc.
Both YUNs with the Kernel Version 3.3.8.
On the older board, I had no error.
Did anyone know the problem, or can tell me, where to find the activation of the U5A to disable this?
Or are there hardware difference betwen the 2015 arduino.cc and 2018 Arduino.org?
I could life with the workaraound to run the command at startup, but when the Linuxside restart, the SPI-communication crashed and that must not happen.
Regards Marco

Supplement:
With the 2015 YUN, a restart of the Linux-Part the SPI-Communication crashed too. Only after a restart of both sides (Arduino and Linux) the SPI-communication is running again.
For me it is necessary to seperate the Arduino part with the Linux part.
My only way now, is to use a Leonard and a Network shield where only the Pins RX and TX are used.