> Yes, I know - but the point is its impossible to review, and I think > you at least have an extra level of locking which isn't needed. > > But I wouldn't know because of the huge number of changes which make > it impossible to read.
That semaphore locking is only used to guard open/close against the power management callback. It greatly simplify the deal with the shared irq (the irq is shared between both ports). It's not used during normal operations. Ben.