Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1228959 > unrolled thread

[PATCH] thunderbolt: Allow loading of module on recent Apple MacBooks with thunderbolt 2 controller

Started byKnuth Posern <knuth@posern.org>
First post2015-09-20 21:30 +0200
Last post2015-09-21 00:30 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] thunderbolt: Allow loading of module on recent Apple MacBooks  with thunderbolt 2 controller Knuth Posern <knuth@posern.org> - 2015-09-20 21:30 +0200
    Re: [PATCH] thunderbolt: Allow loading of module on recent Apple  MacBooks with thunderbolt 2 controller Greg KH <greg@kroah.com> - 2015-09-21 00:30 +0200

#1228959 — [PATCH] thunderbolt: Allow loading of module on recent Apple MacBooks with thunderbolt 2 controller

FromKnuth Posern <knuth@posern.org>
Date2015-09-20 21:30 +0200
Subject[PATCH] thunderbolt: Allow loading of module on recent Apple MacBooks with thunderbolt 2 controller
Message-ID<qaStc-Fg-13@gated-at.bofh.it>

[Multipart message — attachments visible in raw view] — view raw

The pci device ids listed in the thunderbolt driver are to restrictive,
which prevents the driver from being loaded on recent Apple MacBooks
using a thunderbolt 2 controller. In particular this prevented any
hot-plugging functionality for thunderbolt based ethernet dongles
(i.e. Apples thunderbolt gigabit ethernet broadcom tg3 based dongle
Model A1433 EMC 2590).

Changing the subvendor and subdevice to PCI_ANY_ID the thunderbolt driver
loads and binds to the pci device 07:00.0 System peripheral:
Intel Corporation Device 156c which is the thunderbolt 2 controller on
the MacBookPro12,1.

Successfully tested on MacBookPro12,1. With the patch the thunderbolt
module gets now loaded on boot. And it provides hot-plugging support both
for a cold-plugged and a warm-plugged ethernet dongle.

Signed-off-by: Andreas Noever <andreas.noever@gmail.com>
Acked-by: Knuth Posern <knuth@posern.org>
---

... never 2 without 3 ;)

This patch is submitted for upstream inclusion.

Thanks to Greg and Andreas helping coming up with the patch fixing the
bug:
https://bugzilla.kernel.org/show_bug.cgi?id=100191

This is a first for me, so I hope the format of this mail is
convenient :)
For the changelog/comment, I tried to follow Andrew Mortons guide
https://www.ozlabs.org/~akpm/stuff/tpp.txt

- why the kernel needed patching
1st paragraph.

- the overall design approach in the patch
- implementation details
2nd paragraph

- testing results
3rd paragraph

Cheers,

Knuth.

--- linux/drivers/thunderbolt/nhi.c.orig	2015-09-20 17:36:14.014964300 +0200
+++ linux/drivers/thunderbolt/nhi.c	2015-09-13 09:58:18.000000000 +0200
@@ -643,7 +643,7 @@ static struct pci_device_id nhi_ids[] =
 	{
 		.class = PCI_CLASS_SYSTEM_OTHER << 8, .class_mask = ~0,
 		.vendor = PCI_VENDOR_ID_INTEL, .device = 0x156c,
-		.subvendor = 0x2222, .subdevice = 0x1111,
+		.subvendor = PCI_ANY_ID, .subdevice = PCI_ANY_ID,
 	},
 	{ 0,}
 };

[toc] | [next] | [standalone]


#1228970 — Re: [PATCH] thunderbolt: Allow loading of module on recent Apple MacBooks with thunderbolt 2 controller

FromGreg KH <greg@kroah.com>
Date2015-09-21 00:30 +0200
SubjectRe: [PATCH] thunderbolt: Allow loading of module on recent Apple MacBooks with thunderbolt 2 controller
Message-ID<qaVho-4Gp-7@gated-at.bofh.it>
In reply to#1228959
On Sun, Sep 20, 2015 at 09:25:22PM +0200, Knuth Posern wrote:
> The pci device ids listed in the thunderbolt driver are to restrictive,
> which prevents the driver from being loaded on recent Apple MacBooks
> using a thunderbolt 2 controller. In particular this prevented any
> hot-plugging functionality for thunderbolt based ethernet dongles
> (i.e. Apples thunderbolt gigabit ethernet broadcom tg3 based dongle
> Model A1433 EMC 2590).
> 
> Changing the subvendor and subdevice to PCI_ANY_ID the thunderbolt driver
> loads and binds to the pci device 07:00.0 System peripheral:
> Intel Corporation Device 156c which is the thunderbolt 2 controller on
> the MacBookPro12,1.
> 
> Successfully tested on MacBookPro12,1. With the patch the thunderbolt
> module gets now loaded on boot. And it provides hot-plugging support both
> for a cold-plugged and a warm-plugged ethernet dongle.
> 
> Signed-off-by: Andreas Noever <andreas.noever@gmail.com>
> Acked-by: Knuth Posern <knuth@posern.org>
> ---
> 
> ... never 2 without 3 ;)

Thanks for being persistent, that worked fine and is now queued up, you
should have received an email with all of the details.

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web