Date: Sat, 31 Aug 2013 09:11:46 +0200 From: Hans Petter Selasky <hps@bitfrost.no> To: "Lundberg, Johannes" <johannes@brilliantservice.co.jp> Cc: Alfred Perlstein <bright@mu.org>, =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@deepcore.dk>, FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: 2013 MacBook Air Project Message-ID: <52219732.7070209@bitfrost.no> In-Reply-To: <CAASDrV=BKgU4kUA3wVFvWrXt=wttU5FCOHYrVKvpdgxxhnW7OQ@mail.gmail.com> References: <CAASDrVkA-F-gmZW0CGxkRkSaBEDix4ni_jkJVGt41qtzTRx6uw@mail.gmail.com> <522110CB.5050501@mu.org> <CAASDrV=BKgU4kUA3wVFvWrXt=wttU5FCOHYrVKvpdgxxhnW7OQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------070702070501050503080309
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
On 08/31/13 01:42, Lundberg, Johannes wrote:
> +
> + /* MacBookAir6,1 */
> + { USB_VPI(0x05ac, 0x828f, 0) },
> +
> };
>
Hi,
I've updated the FreeBSD USB bluetooth driver with your ID, and a few
more from Linux.
I've attached an XHCI patch you can try.
--HPS
--------------070702070501050503080309
Content-Type: text/x-patch;
name="xhci_irq.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="xhci_irq.diff"
=== ./xhci.c
==================================================================
--- ./xhci.c (revision 255094)
+++ ./xhci.c (local)
@@ -385,10 +385,6 @@
sc->sc_exit_lat_max = XHCI_HCS3_U1_DEL(temp) +
XHCI_HCS3_U2_DEL(temp) + 250 /* us */;
- temp = XREAD4(sc, oper, XHCI_USBSTS);
-
- /* clear interrupts */
- XWRITE4(sc, oper, XHCI_USBSTS, temp);
/* disable all device notifications */
XWRITE4(sc, oper, XHCI_DNCTRL, 0);
@@ -1479,7 +1475,9 @@
USB_BUS_LOCK(&sc->sc_bus);
status = XREAD4(sc, oper, XHCI_USBSTS);
- if (status == 0)
+ iman = XREAD4(sc, runt, XHCI_IMAN(0));
+
+ if (status == 0 && (iman & XHCI_IMAN_INTR_PEND) == 0)
goto done;
/* acknowledge interrupts */
@@ -1488,11 +1486,8 @@
DPRINTFN(16, "real interrupt (status=0x%08x)\n", status);
- if (status & XHCI_STS_EINT) {
+ if (iman & XHCI_IMAN_INTR_PEND) {
- /* acknowledge pending event */
- iman = XREAD4(sc, runt, XHCI_IMAN(0));
-
/* reset interrupt */
XWRITE4(sc, runt, XHCI_IMAN(0), iman);
--------------070702070501050503080309--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52219732.7070209>
