> sbus_establish() should take device_t self for the device itself, > not device_t parent even if sbus is grandparent of the device, > otherwise (*sd_reset)() callbacks will be called with an wrong device_t. > Even in such case, sbus_establish() looks for an sbus though device tree. > XXX: (*sd_reset)() isn't called anyway, and these stuff seems really bogus.
> i think you're right. can you just delete all this sbusreset() code? I wonder why sbus_establish() and struct sbus_dev were implemented. I guess we can remove sbusreset() and (*sd_reset)() stuff safely, but other members in struct sbusdev are used only in sbus/if_le.c to see unattached lebuffer (I don't think it worked as expected due to the bug mentioned in the log, though), so it might be better to remove whole sbus_establish() stuff if possible. Anyway, I'll leave them for now since they are harmless. --- Izumi Tsutsui