Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 May 2018 14:07:45 -0500
From:      Tim Chase <freebsd@tim.thechases.com>
To:        Oleksandr Tymoshenko <gonzo@bluezbox.com>
Cc:        "freebsd-wireless@freebsd.org" <freebsd-wireless@freebsd.org>
Subject:   Re: ath0: could not map interrupt (again?)
Message-ID:  <20180521140745.65243721@bigbox.christie.dr>
In-Reply-To: <20180506201659.0a831f5f@bigbox.christie.dr>
References:  <20180502165745.59a5bfc4@bigbox.christie.dr> <CAJ-Vmo=uAB4Yv8fTu6yP5tDh82FtgFHQFDRWOGmNLYsABTvENw@mail.gmail.com> <20180502211001.550d290c@bigbox.christie.dr> <20180503192743.639240d0@bigbox.christie.dr> <20180504005448.GA89012@bluezbox.com> <20180506201659.0a831f5f@bigbox.christie.dr>

next in thread | previous in thread | raw e-mail | index | archive | help
I've been using this for a couple weeks now with no issues, for what
little value my OK is, your patch seems to be ready to roll.

-tim

On 2018-05-06 20:16, Tim Chase wrote:
> On 2018-05-03 17:54, Oleksandr Tymoshenko wrote:
> > Tim Chase (freebsd@tim.thechases.com) wrote:  
> > > ppb0 at pci0 dev 28 function 0 "Intel SCH PCIE" rev 0x07: apic 2
> > > int 17 ...
> > > athn0 at pci2 dev 0 function 0 "Atheros AR9281" rev 0x01: apic 2
> > > int 17 athn0: AR9280 rev 2 (2T2R), ROM rev 22, address
> > > 00:24:d2:b3:8c:b4
> > > 
> > > so it looks like the interrupt *can* be shared, it just appears
> > > that FreeBSD is doing something peculiar with it.    
> > 
> > It looks like PCI bridge allocates interupt without RF_SHAREABLE
> > (see dev/pci/pci_pci.c, pcib_alloc_pcie_irq). Could you test
> > this patch [1]? I am not sure if non-shareable IRQs for PCI/PCI
> > bridge is a design decision or it's just that nobody has hit this
> > problem before.
> > 
> > [1]
> > https://people.freebsd.org/~gonzo/patches/pci_pci-shareable-irq.diff  
> 
> Applying your one-line patch adding RF_SHAREABLE (sorry for the
> delay as buildworld took ~2.5 days and buildkernel took about half
> a day on this machine) does seem to have at least gotten past the
> initial issue.  The pcib1 now looks like it's properly sharing the
> interrupt and ath0 at least identifies.  Relevant excerpts from
> dmesg:
> 
> # dmesg | grep -e ath0 -e pcib1
> pcib1: <ACPI PCI-PCI bridge> irq 17 at device 28.0 on pci0
> pcib1: [GIANT-LOCKED]
> pci1: <ACPI PCI bus> on pcib1
> ath0: <Atheros 9280> mem 0xd8000000-0xd800ffff irq 17 at device 0.0
> on pci2 ath0: [HT] enabling HT modes
> ath0: [HT] 1 stream STBC receive enabled
> ath0: [HT] 1 stream STBC transmit enabled
> ath0: [HT] 2 RX streams; 2 TX streams
> ath0: AR9280 mac 128.2 RF5133 phy 13.0
> ath0: 2GHz radio: 0x0000; 5GHz radio: 0x00c0
> 
> This was performed against HEAD which, at the time, was r333254.
> 
> I'll poke at it more thoroughly in the morning, but I wanted to let
> you know that it seems to be working thus far.
> 
> If you know of any particular ways in which I should stress it (to
> see if IRQ 17 on pcib1 really *wasn't* supposed to be sharable), I'd
> be glad to abuse it a bit.
> 
> Many thanks!
> 
> -tim
> 
> 
> 
> 





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180521140745.65243721>