I’m currently finishing the OpenThread port (#5552).
The implementation is radio independent via netdev, but requires the driver setup function to be called before passing the netdev pointer to the OpenThread contrib (check what I’m doing atm in 1).
The auto_init_xxxx functions like 2 do exactly that, but call gnrc_netdev related functions instead of OpenThread related functions.
What’s your opinion on how to deal with this? (e.g #ifdef MODULE_OPENTHREAD in auto_init_xxxx file?)
that is exactly the same problem Shugou currently has with lwMAC  and I had when porting lwIP and emb6.
When we originally wrote the auto-initialization we had cases like this (different stacks, different MAC protocols) in mind, but refrained from providing a solution since it simply wasn’t needed at the time. So I guess the time to come together and come up with a solution is now, unless we want to let auto_init_xxxx become our next sys/transceiver  ;-).