Kmod driver at iicbus. attach() and config_intrhook(9)

John-Mark Gurney jmg at funkthat.com
Tue Sep 1 00:26:45 UTC 2020


Andriy Gapon wrote this message on Thu, Aug 27, 2020 at 08:35 +0300:
> On 27/08/2020 00:33, John-Mark Gurney wrote:
> > Andriy Gapon wrote this message on Wed, Aug 26, 2020 at 23:55 +0300:
> >> On 25/08/2020 23:33, John-Mark Gurney wrote:
> >>> Andriy Gapon wrote this message on Tue, Aug 25, 2020 at 10:21 +0300:
> >>>> On 24/08/2020 23:47, John-Mark Gurney wrote:
> >>>>> What driver is used for i2c on the Orange?  I've tried to firgure it
> >>>>> out from dts + source, but it isn't clear.
> >>>>
> >>>> a10_twsi
> >>>
> >>> Thanks.  And this explains why I couldn't find it in arm/allwinner.. :)
> >>>
> >>> Yeah, this is using bus_generic_attach...
> >>>
> >>> But it looks like it supports interruptless operation.  Is there a flag
> >>> for when interrupts are enabled?
> >>>
> >>> Because the check in sys/dev/iicbus/twsi/twsi.c:twsi_transfer could be
> >>> changed from:
> >>>         if (sc->have_intr == false)
> >>>
> >>> to:
> >>>         if (sc->have_intr == false || interrupts_not_enabled)
> >>>
> >>> And that could fix things.
> >>>
> >>
> >> sc->have_intr is already enabled from the interrupt enable hook.
> > 
> > But that only detects if the interrupt are used, NOT that they are
> > currently active and working which the "|| cold" would provide...
> 
> The interrupt hook is called after interrupts are enabled and usable.
> Specifically, I mean config_intrhook_oneshot().

Ok, then the OP shouldn't be having a problem then, maybe you can help
then figure it out then?

-- 
  John-Mark Gurney				Voice: +1 415 225 5579

     "All that I will do, has been done, All that I have, has not."


More information about the freebsd-arm mailing list