The Linux story, although not completely done, comes to an end.
I'm very happy with the fact that the gigabit ethernet works, but what a ride it was to get this far. Getting DRAM initialization up and running, fixing the Tina Linux build issues, u-boot communication issues, optee and secure Linux issues and the last hurdle getting the ethernet interface up and running.
Since QFN soldering is not one of my strong points, the first try brought some shorts with it. Should have checked on those before running the board of course, but under the microscope it all looked ok. Nothing broke, luckily, but the process of getting things to work did not became easier.

The DTS configuration was not to bad, with the support of Copilot, although at times it does not help either. When I first tried to bring up the phy it just failed and measurements showed that the reset signal was held low. This is where the DTS is counter intuitive. The reset needs to be low to reset the device, so Copilot showed this "phy-rst = <&pio PE 10 GPIO_ACTIVE_LOW>;", which looks reasonable, but it has to be "phy-rst = <&pio PE 10 GPIO_ACTIVE_HIGH>;". Without the reset line in the DTS the interface came up though, so I continued testing without it. Things looked good, the bring up showed 1Gbps/Full on a gigabit link and 100Mbps/Full on a fast ethernet link.
But there was no communication, so I started scoping the signals and at some point noticed that the RXCTL and the next to it RXD0 showed the same signal, which struck me as weird since the TXCTL signal showed a single pulse high for the full communication time. The dmm proved me right, a short between those lines. Resoldered the phy and checked for shorts to find none. Unfortunately still no communication, despite seeing both TXCTL and RXCTL pulses. The clocks all looked good too.
Then I learned that one can check the different stats on the RX side:
cat /sys/class/net/eth0/statistics/rx_packets
cat /sys/class/net/eth0/statistics/rx_crc_errors
cat /sys/class/net/eth0/statistics/rx_length_errors
cat /sys/class/net/eth0/statistics/rx_missed_errors
And those told me that packets were being received without any errors. At that point I grabbed an USB ethernet dongle and connected that. It only did 10Mbps/Half, but good enough to do some tests. This showed that there was data coming from the board, but it had weird errors, like some bits in the mac flipped and the wrong frame type. On 100Mbps this failed, and then, totally by accident, it started working. I had touched the board with my finger to see if the phy was warming up. I started to investigate this further and found it to be repeatable. Turned out that with a proper reset the link went down for a moment and then came up fully working.
So back to the DTS to try to fix this. Copilot came with a new set of DTS instructions and those had to be it for sure. Nah no dice. Did not even generate a pulse. So I reverted to some earlier suggestion and flipped the active state to high. Now I see a proper reset of 65ms low, but it still does not work directly. Only when I manually reset the phy again, while it is up, does it work.

But all this now shows that the board is good and after the manual reset it works without problems, even on a gigabit link. And that is what it was about, checking that the hardware is good.
The conclusion is that this first spin of the board is proper so far. The soc works, DRAM works, the LCD part works, the SD card works, ethernet works, UART4 works, USB device part (otg) works. What is left to test is the I2S peripherals and the USB host port.