Hi everyone,
I'd like to share with you information that finally I've managed to find out what was the reason of problems with networking on rpi 3b+ which I implemented (with help mostly from Stefan) during Hack'n'Hike.
The important thing that we didn't notice during Hack'n'Hike was that packages that we were able to receive only broadcast messages, so only arp packets were received. That led me to debugging code that was supposed to set MAC address in the driver and after some digging I found in [1] information about a bug (later fixed) in this linux driver that caused not setting MAC address properly in some situations. Applying a change from this patch allowed to have usb_net test working.
In the meantime I've checked that usb_block test also works (although seems to be quite slow) so I think I have generally working the most important devices to start again from the start and polish my work and try to prepare it for inclusion Genode repositories (probably I'll wait for a release).
My current plan is to work on supporting with base-hw:
- rpi3b+ 32bit - as 64bit support is not yet ready and 32bit version does not restrict using of this device
- rpi2b - this one is armv7 so 32bit architecture and with regard to devices it is somewhere between rpi1 and rpi3b+
After discussion with Stefan during Hack'n'Hike I plan to move as much as possible of support for above versions to genode-world repository as Genode Labs plans to support in main genode repository and test: old rpi and new rpi3b (without +) 64bit.
One thing I'd like to get some acceptance is a naming scheme for those SOCs/configurations. Especially for the 32 and 64 bit versions for one SOC. Will it be ok to have following naming for boards?
- rpi3bplus32 (running 32 bit) - rpi3bplus (later; running native for armv8 64 bit instructions) - rpi2b - rpi3b - version that you have and plan to support
Cheers Tomasz