Date: Mon, 22 Dec 2014 14:57:52 -0800 From: Adrian Chadd <adrian@freebsd.org> To: Anthony Jenkins <Scoobi_doo@yahoo.com> Cc: "wireless@freebsd.org" <wireless@freebsd.org> Subject: Re: Atheros AR9565 detected, not working Message-ID: <CAJ-VmonQsa=D52esXPiEY_csngXrA8n3hGZoS9ix1o-RAC_uEA@mail.gmail.com> In-Reply-To: <5498944C.4040706@yahoo.com> References: <CAJ-Vmo=rLMaatYY692fzc2CF2iiEXM9Fd5DZZpJTWOD_6mHpQg@mail.gmail.com> <433678684.160603.1419257025708.JavaMail.yahoo@jws10658.mail.bf1.yahoo.com> <CAJ-Vmom9zW9eeWvZ8KrpgYWS_MFQ46S1eOd4aUiOQ1S3P%2BbyNA@mail.gmail.com> <54987366.6060803@yahoo.com> <CAJ-VmomUoY3y5vtB88H4eugX01VVWMuuLf1gXsUS4Wptv8jh2Q@mail.gmail.com> <5498780B.90704@yahoo.com> <CAJ-Vmo=eaKGG9ha99%2B5gGdOE7OxkKq9RG3auc-2VP=ES0bvGmw@mail.gmail.com> <5498944C.4040706@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 22 December 2014 at 13:59, Anthony Jenkins <Scoobi_doo@yahoo.com> wrote: > On 12/22/2014 15:22, Adrian Chadd wrote: >> On 22 December 2014 at 11:59, Anthony Jenkins <Scoobi_doo@yahoo.com> wrote: >>> I'll have to re-add the printf()s, but I'm pretty sure I saw 0x0B (of course it could have been 0x08 I saw, but neither of those would make it through the function - both 0x0B and 0x08 are blocked). >> Please do. I'd like to fix up the HAL and driver to use the EEPROM >> provided LED and RFKILL GPIO fields if they're populated and valid. > Here's the chunk of boot messages for ath(4) on my laptop; it was 0x0B as I originally thought: > > Dec 22 16:47:59 ajenkins-hplaptop kernel: pcib2: allocated memory range (0xf0100000-0xf017ffff) for rid 10 of pci0:2:0:0 > Dec 22 16:47:59 ajenkins-hplaptop kernel: pcib2: matched entry for 2.0.INTA > Dec 22 16:47:59 ajenkins-hplaptop kernel: pcib2: slot 0 INTA hardwired to IRQ 17 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: <Qualcomm Atheros AR9565> mem 0xf0100000-0xf017ffff irq 17 at device 0.0 on pci2 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ioapic0: routing intpin 17 (PCI IRQ 17) to lapic 16 vector 53 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: WB335 1-ANT card detected > Dec 22 16:47:59 ajenkins-hplaptop kernel: ar9300_attach: calling ar9300_hw_attach > Dec 22 16:47:59 ajenkins-hplaptop kernel: ar9300_hw_attach: calling ar9300_eeprom_attach > Dec 22 16:47:59 ajenkins-hplaptop kernel: ar9300_flash_map: unimplemented for now > Dec 22 16:47:59 ajenkins-hplaptop kernel: Restoring Cal data from DRAM > Dec 22 16:47:59 ajenkins-hplaptop kernel: Restoring Cal data from EEPROM > Dec 22 16:47:59 ajenkins-hplaptop kernel: Restoring Cal data from Flash > Dec 22 16:47:59 ajenkins-hplaptop kernel: Restoring Cal data from Flash > Dec 22 16:47:59 ajenkins-hplaptop kernel: Restoring Cal data from OTP > Dec 22 16:47:59 ajenkins-hplaptop kernel: ar9300_hw_attach: ar9300_eeprom_attach returned 0 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ar9300_fill_capability_info: ah_rfsilent=0x2d > Dec 22 16:47:59 ajenkins-hplaptop kernel: ar9300_fill_capability_info: ah_gpio_select=0x0b > Dec 22 16:47:59 ajenkins-hplaptop kernel: ar9300_fill_capability_info: ah_polarity=0x00 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: RX status length: 48 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: RX buffer size: 4096 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: TX descriptor length: 128 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: TX status length: 36 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: TX buffers per descriptor: 4 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: ath_edma_setup_rxfifo: type=0, FIFO depth = 16 entries > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: ath_edma_setup_rxfifo: type=1, FIFO depth = 128 entries > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: [HT] enabling HT modes > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: [HT] enabling short-GI in 20MHz mode > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: [HT] 1 stream STBC receive enabled > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: [HT] 1 RX streams; 1 TX streams > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: 1T1R > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: 11ng MCS 20MHz > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: MCS 0-7: 6.5Mbps - 65Mbps > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: 11ng MCS 20MHz SGI > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: MCS 0-7: 7Mbps - 72Mbps > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: 11ng MCS 40MHz: > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: MCS 0-7: 13.5Mbps - 135Mbps > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: 11ng MCS 40MHz SGI: > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: MCS 0-7: 15Mbps - 150Mbps > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: AR9565 mac 704.0 RF5110 phy 1638.6 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0000 > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: Use hw queue 1 for WME_AC_BE traffic > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: Use hw queue 0 for WME_AC_BK traffic > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: Use hw queue 2 for WME_AC_VI traffic > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: Use hw queue 3 for WME_AC_VO traffic > Dec 22 16:47:59 ajenkins-hplaptop kernel: ath0: Use hw queue 8 for CAB traffic > > Here's the printf()s in the code: > > /* > * Fill all software cached or static hardware state information. > * Return failure if capabilities are to come from EEPROM and > * cannot be read. > */ > HAL_BOOL > ar9300_fill_capability_info(struct ath_hal *ah) > { > ... > ahpriv->ah_rfsilent = ar9300_eeprom_get(ahp, EEP_RF_SILENT); > ath_hal_printf(ah, "%s: ah_rfsilent=0x%02x\n", __func__, ahpriv->ah_rfsilent); > if (ahpriv->ah_rfsilent & EEP_RFSILENT_ENABLED) { > ahp->ah_gpio_select = MS(ahpriv->ah_rfsilent, EEP_RFSILENT_GPIO_SEL); > ath_hal_printf(ah, "%s: ah_gpio_select=0x%02x\n", __func__, ahp->ah_gpio_select); > ahp->ah_polarity = MS(ahpriv->ah_rfsilent, EEP_RFSILENT_POLARITY); > ath_hal_printf(ah, "%s: ah_polarity=0x%02x\n", __func__, ahp->ah_polarity); > > ath_hal_enable_rfkill(ah, AH_TRUE); > ar9300_enable_rf_kill(ah); > p_cap->halRfSilentSupport = AH_TRUE; > } > Oh, man, good catch! It's coming out of a different EEPROM configuration area. Ok, let me go see what's going on. -adrian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-VmonQsa=D52esXPiEY_csngXrA8n3hGZoS9ix1o-RAC_uEA>