All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andreas Noever <andreas.noever@gmail.com>
To: linux-kernel@vger.kernel.org,
	Matthew Garrett <matthew.garrett@nebula.com>,
	Greg KH <greg@kroah.com>, Bjorn Helgaas <bhelgaas@google.com>,
	linux-pci@vger.kernel.org
Cc: Andreas Noever <andreas.noever@gmail.com>
Subject: [PATCH v5 00/15] Thunderbolt driver for Apple MacBooks
Date: Tue,  3 Jun 2014 22:03:57 +0200	[thread overview]
Message-ID: <1401825852-4745-1-git-send-email-andreas.noever@gmail.com> (raw)

Hi,

Updated version of the driver. Includes changes by Matthew to make it work on
Falcon Ridge hardware (present in the newest Mac(Book)Pro). 

Changes since v4 (suggested by Matthew):
 - Changed the PCI quirks to check just for Apple hardware instead of checking
   against a list of machines. (The PCI id check already restricts this quirk
to the relevant Apple machines).
 - Added Falcon Ridge PCI id to the driver and to the "wait_for_thunderbolt"
   quirk (the "poweroff_thunderbolt" quirk is no longer necessary for Falcon
Ridge devices).
 - Fixed plug events for Falcon Ridge hardware.

@Matthew: I think that your patch was missing the Falcon Ridge PCI id within
the wait_for_thunderbolt quirk (I have added it). If you have time could you
verify that suspend/resume works on your MacPro?  Thanks!

As before Matthew's ACPI changes (latest version: [1]) are required for this to
work properly. Without them you need to boot with a coldplugged TB device to
prevent the firmware from disabling the controller.

Thanks,
Andreas

[1]: https://lkml.org/lkml/2014/6/1/165 


Andreas Noever (15):
  thunderbolt: Add initial cactus ridge NHI support
  thunderbolt: Add control channel interface
  thunderbolt: Setup control channel
  thunderbolt: Add tb_regs.h
  thunderbolt: Initialize root switch and ports
  thunderbolt: Add thunderbolt capability handling
  thunderbolt: Enable plug events
  thunderbolt: Scan for downstream switches
  thunderbolt: Handle hotplug events
  thunderbolt: Add path setup code.
  thunderbolt: Add support for simple pci tunnels
  PCI: Add pci_fixup_suspend_late quirk pass
  PCI: Suspend/resume quirks for Apple thunderbolt
  thunderbolt: Read switch uid from EEPROM
  thunderbolt: Add suspend/hibernate support

 drivers/Kconfig                   |   2 +
 drivers/Makefile                  |   1 +
 drivers/pci/pci-driver.c          |  18 +-
 drivers/pci/quirks.c              | 104 ++++++
 drivers/thunderbolt/Kconfig       |  12 +
 drivers/thunderbolt/Makefile      |   3 +
 drivers/thunderbolt/cap.c         | 116 ++++++
 drivers/thunderbolt/ctl.c         | 731 ++++++++++++++++++++++++++++++++++++++
 drivers/thunderbolt/ctl.h         |  75 ++++
 drivers/thunderbolt/eeprom.c      | 189 ++++++++++
 drivers/thunderbolt/nhi.c         | 677 +++++++++++++++++++++++++++++++++++
 drivers/thunderbolt/nhi.h         | 114 ++++++
 drivers/thunderbolt/nhi_regs.h    | 101 ++++++
 drivers/thunderbolt/path.c        | 215 +++++++++++
 drivers/thunderbolt/switch.c      | 498 ++++++++++++++++++++++++++
 drivers/thunderbolt/tb.c          | 431 ++++++++++++++++++++++
 drivers/thunderbolt/tb.h          | 266 ++++++++++++++
 drivers/thunderbolt/tb_regs.h     | 213 +++++++++++
 drivers/thunderbolt/tunnel_pci.c  | 232 ++++++++++++
 drivers/thunderbolt/tunnel_pci.h  |  30 ++
 include/asm-generic/vmlinux.lds.h |   3 +
 include/linux/pci.h               |  12 +-
 22 files changed, 4038 insertions(+), 5 deletions(-)
 create mode 100644 drivers/thunderbolt/Kconfig
 create mode 100644 drivers/thunderbolt/Makefile
 create mode 100644 drivers/thunderbolt/cap.c
 create mode 100644 drivers/thunderbolt/ctl.c
 create mode 100644 drivers/thunderbolt/ctl.h
 create mode 100644 drivers/thunderbolt/eeprom.c
 create mode 100644 drivers/thunderbolt/nhi.c
 create mode 100644 drivers/thunderbolt/nhi.h
 create mode 100644 drivers/thunderbolt/nhi_regs.h
 create mode 100644 drivers/thunderbolt/path.c
 create mode 100644 drivers/thunderbolt/switch.c
 create mode 100644 drivers/thunderbolt/tb.c
 create mode 100644 drivers/thunderbolt/tb.h
 create mode 100644 drivers/thunderbolt/tb_regs.h
 create mode 100644 drivers/thunderbolt/tunnel_pci.c
 create mode 100644 drivers/thunderbolt/tunnel_pci.h

-- 
2.0.0


             reply	other threads:[~2014-06-03 20:04 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-03 20:03 Andreas Noever [this message]
2014-06-03 20:03 ` [PATCH v5 01/15] thunderbolt: Add initial cactus ridge NHI support Andreas Noever
2014-06-20  7:41   ` Paul Bolle
2014-06-20 16:34     ` Greg KH
2014-06-20 19:45     ` Andreas Noever
2014-06-20 20:28       ` Paul Bolle
2014-06-03 20:03 ` [PATCH v5 02/15] thunderbolt: Add control channel interface Andreas Noever
2014-06-03 20:04 ` [PATCH v5 03/15] thunderbolt: Setup control channel Andreas Noever
2014-06-03 20:04 ` [PATCH v5 04/15] thunderbolt: Add tb_regs.h Andreas Noever
2014-06-03 20:04 ` [PATCH v5 05/15] thunderbolt: Initialize root switch and ports Andreas Noever
2014-06-03 20:04 ` [PATCH v5 06/15] thunderbolt: Add thunderbolt capability handling Andreas Noever
2014-06-03 20:04 ` [PATCH v5 07/15] thunderbolt: Enable plug events Andreas Noever
2014-06-03 20:04 ` [PATCH v5 08/15] thunderbolt: Scan for downstream switches Andreas Noever
2014-06-03 20:04 ` [PATCH v5 09/15] thunderbolt: Handle hotplug events Andreas Noever
2014-06-03 20:04 ` [PATCH v5 10/15] thunderbolt: Add path setup code Andreas Noever
2014-06-03 20:04 ` [PATCH v5 11/15] thunderbolt: Add support for simple pci tunnels Andreas Noever
2014-06-03 20:04 ` [PATCH v5 12/15] PCI: Add pci_fixup_suspend_late quirk pass Andreas Noever
2014-06-03 20:04 ` [PATCH v5 13/15] PCI: Suspend/resume quirks for Apple thunderbolt Andreas Noever
2014-06-03 20:04 ` [PATCH v5 14/15] thunderbolt: Read switch uid from EEPROM Andreas Noever
2014-06-03 20:04 ` [PATCH v5 15/15] thunderbolt: Add suspend/hibernate support Andreas Noever
2014-06-03 20:33 ` [PATCH v5 00/15] Thunderbolt driver for Apple MacBooks Greg KH
2014-06-19 21:14 ` Greg KH
2014-06-30  9:17   ` Andreas Noever

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1401825852-4745-1-git-send-email-andreas.noever@gmail.com \
    --to=andreas.noever@gmail.com \
    --cc=bhelgaas@google.com \
    --cc=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=matthew.garrett@nebula.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.