From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rajesh Shah Date: Tue, 02 Nov 2004 01:58:38 +0000 Subject: Re: pci express switch driver Message-Id: <20041101175838.A4446@unix-os.sc.intel.com> List-Id: References: <73943A6B3BEAA1468EE1A4A090129F436DABCD@corpbridge.corp.idt.com> In-Reply-To: <73943A6B3BEAA1468EE1A4A090129F436DABCD@corpbridge.corp.idt.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-hotplug@vger.kernel.org On Fri, Oct 29, 2004 at 09:37:51PM -0700, Greg KH wrote: > On Sat, Oct 09, 2004 at 07:15:37PM -0700, Sadik, Pallathu wrote: > > > > Currently, I am working on developing a driver > > for a PCI express switch that have one upstream and > > multiple downstream ports with hotplug capability. > > I've waited so long in responding, as I would hope the Intel people I > know would pipe up. But they didn't :( > That probably would be me (plus several other who discussed this with Greg at OLS) :-). Sorry, my mail system seems to be screwed up and I never saw the original post. > Anyway, some other people are currently working on adding this kind of > functionality to Linux. But I have no idea when they will release it to > the public... What we are working on is ACPI based hot-plug of an IO complex rooted on a host bridge or a P2P bridge. If the switch you describe looks like a p2p bridge to Linux, what we're working on would probably overlap with what you need. We still need to resolve some ACPI/namespace issues, so we're not quite ready to send patches yet. > > > However, I am not able to figure out whether these > > are applicable in the case of a switch. > > > > My hardware setup is as follows: > > > > PCI express switch: > > As I have mentioned above, the switch is going to > > have one upstream and multiple downstream ports. > > The downstream ports have implemented hotpulg feature > > (Attention indicator, power indicator, attention button, > > MRL sensor etc). They are capable of generating interrupts > > on the hotplug events. > What hotplug technology do you plan to use to hotplug the switch itself? This is a platform/firmware capability. For example, if you want to use SHPC based hotplug, there must be an SHPC controller north of the switch you want to hotplug. If you want to support ACPI based hotplug, your firmware has to describe it in the ACPI namespace, generate the appropriate notification etc. Once the switch itself is hotplugged, downstream IO devices can be hotplugged using SHPC/PCI-E mechanisms if the switch has hotplug capabilities. Looks like your switch does support SHPC/PCI-E hotplug. > > > 1. Do I need to write a driver for this device? I couldn't locate a > > driver for PCI to PCI bridge in the linux code and functionally a > > PCI express switch is not that much different from a PCI bridge. > Since we will be using ACPI based hotplug, we'll be extending acpiphp. > > > pci_hotplug, shpchp, pciehp, acpiphp. I experimentally found out > > that the pci_hotplug module is required for the rest of the modules > > to load. However, I am not sure which one I should select. > You need to select the ones that your platform hardware and firmware supports. > > > As I understand acpiphp is for ACPI based hotplug control and > > pciehp is for PCI express native hotplug. Is that true? Do I need > > both of them for the correct operation? > Again, depends on your platform capability. Rajesh ------------------------------------------------------- This SF.Net email is sponsored by: Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux. http://ads.osdn.com/?ad_idU88&alloc_id065&op=click _______________________________________________ Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net Linux-hotplug-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel