gpiobus_acquire_pin is only meant to be used internally by gpiobus. Use
gpio_pin_acquire instead.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
Why did you remove the comment? IMHO it is still a bit problematic (or not well defined) to hold the mutex across the GPIO infrastructure call.
Comment Actions
I don't really see why it would cause problems. With the current implementation at least.
Thinking about this some more, it's very possible that a future change to gpiobus_acquire_pin or gpio_pin_acquire can break this though...
Comment Actions
Thanks.
The most problematic variant is GPIO over I2C bus (or other serial bus), where sleepable(SX) locks are required for basic operation. So I just was to be very careful and warn others of the problematic place.
Comment Actions
Looks good, but this is more 'permission to commit' rather than 'the change is good'. I trust the people that reviewed it and didn't see anything insane.