In order to read the current GPIO state regardless of the current controller
mode, and thus regardless of whether the GPIO irq is enabled, a direct
read of the raw GPIO state is done directly from the sysfs attribute_show
method.
Required synchronization was added to the access method to prevent race
if the attribute is read at the same time the irq handler is running.
When reading the otg controller mode from sysfs before changing it, returns 0.
This is not correct, as the default mode is 1.
As the controllermode is changed, the sysfs attribute shadow value is also changed.
Now also during fsm init.
Device-connected sysfs property is vulnerable for simultanious access by
IRQ handler and sysfs property show handler.
Fix bug causing kernel stack-dump/crash when trying to read current pinctrl state through sysfs property
Temporary skip authentication of calling application
Check connection state before changing state (to keep connection state while
changing mode).
Other cleanup
- Fix typo in devicetree causing pincontrol not being registered
- Change pin mux states to use both RX and TX pin
- Implement preliminary first attempt to communicate over ow (wip)
- Add registration as extcon device
- Add ow tty property in device-tree
- Add ow gpio property in device-tree
- Add GPIO IRQ initiation/hanndling in delayed worker