<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/pci/Kconfig, branch linux-4.13.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.13.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.13.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2017-06-28T20:32:56Z</updated>
<entry>
<title>PCI: Provide Kconfig option for lockless config space accessors</title>
<updated>2017-06-28T20:32:56Z</updated>
<author>
<name>Thomas Gleixner</name>
</author>
<published>2017-03-16T21:50:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=714fe383d6c9bd95d0d2cad8cbeff3688342d025'/>
<id>urn:sha1:714fe383d6c9bd95d0d2cad8cbeff3688342d025</id>
<content type='text'>
The generic PCI configuration space accessors are globally serialized via
pci_lock. On larger systems this causes massive lock contention when the
configuration space has to be accessed frequently. One such access pattern
is the Intel Uncore performance counter unit.

Provide a kernel config option which can be selected by an architecture
when the low level PCI configuration space accessors in the architecture
use their own serialization or can operate completely lockless.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Acked-by: Bjorn Helgaas &lt;helgaas@kernel.org&gt;
Cc: Andi Kleen &lt;ak@linux.intel.com&gt;
Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;
Cc: Stephane Eranian &lt;eranian@google.com&gt;
Cc: Borislav Petkov &lt;bp@alien8.de&gt;
Cc: linux-pci@vger.kernel.org
Link: http://lkml.kernel.org/r/20170316215057.205961140@linutronix.de
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

</content>
</entry>
<entry>
<title>Merge branch 'pci/switchtec' into next</title>
<updated>2017-04-28T15:33:41Z</updated>
<author>
<name>Bjorn Helgaas</name>
</author>
<published>2017-04-28T15:33:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d060c6fcef972e6a8d0898c55f1b7b6da89a6744'/>
<id>urn:sha1:d060c6fcef972e6a8d0898c55f1b7b6da89a6744</id>
<content type='text'>
* pci/switchtec:
  switchtec: Add IOCTLs to the Switchtec driver
  switchtec: Add sysfs attributes to the Switchtec driver
  switchtec: Add user interface documentation
  MicroSemi Switchtec management interface driver

Conflicts:
	drivers/pci/Kconfig
</content>
</entry>
<entry>
<title>PCI: endpoint: Add EP core layer to enable EP controller and EP functions</title>
<updated>2017-04-11T19:18:35Z</updated>
<author>
<name>Kishon Vijay Abraham I</name>
</author>
<published>2017-04-10T13:55:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5e8cb4033807e39849b753e5399ec130c0995f1f'/>
<id>urn:sha1:5e8cb4033807e39849b753e5399ec130c0995f1f</id>
<content type='text'>
Introduce a new EP core layer in order to support endpoint functions in
linux kernel. This comprises the EPC library (Endpoint Controller Library)
and EPF library (Endpoint Function Library). EPC library implements
functions specific to an endpoint controller and EPF library implements
functions specific to an endpoint function.

Signed-off-by: Kishon Vijay Abraham I &lt;kishon@ti.com&gt;
Acked-by: Joao Pinto &lt;jpinto@synopsys.com&gt;
Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;
</content>
</entry>
<entry>
<title>MicroSemi Switchtec management interface driver</title>
<updated>2017-03-07T00:33:34Z</updated>
<author>
<name>Logan Gunthorpe</name>
</author>
<published>2017-03-07T00:30:54Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=080b47def5e5e28b2509c5bb92160d1df730f27b'/>
<id>urn:sha1:080b47def5e5e28b2509c5bb92160d1df730f27b</id>
<content type='text'>
Microsemi's "Switchtec" line of PCI switch devices is already well
supported by the kernel with standard PCI switch drivers.  However, the
Switchtec device advertises a special management endpoint with a separate
PCI function address and class code.  This endpoint enables some additional
functionality which includes:

 * Packet and Byte Counters
 * Switch Firmware Upgrades
 * Event and Error logs
 * Querying port link status
 * Custom user firmware commands

Add a switchtec kernel module which provides PCI driver that exposes a char
device.  The char device provides userspace access to this interface
through read, write and (optionally) poll calls.

A userspace tool and library which utilizes this interface is available
at [1].  This tool takes inspiration (and borrows some code) from
nvme-cli [2].  The tool is largely complete at this time but additional
features may be added in the future.

[1] https://github.com/sbates130272/switchtec-user
[2] https://github.com/linux-nvme/nvme-cli

[Dan Carpenter &lt;dan.carpenter@oracle.com&gt;: don't invert error codes]
[Christophe JAILLET &lt;christophe.jaillet@wanadoo.fr&gt;: fix
switchtec_dev_open() error handling]
Tested-by: Krishna Dhulipala &lt;krishnad@fb.com&gt;
Signed-off-by: Logan Gunthorpe &lt;logang@deltatee.com&gt;
Signed-off-by: Stephen Bates &lt;stephen.bates@microsemi.com&gt;
Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;
Reviewed-by: Wei Zhang &lt;wzhang@fb.com&gt;
Reviewed-by: Jens Axboe &lt;axboe@fb.com&gt;
Reviewed-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;</content>
</entry>
<entry>
<title>PCI: Move DesignWare IP support to new drivers/pci/dwc/ directory</title>
<updated>2017-02-21T20:59:53Z</updated>
<author>
<name>Kishon Vijay Abraham I</name>
</author>
<published>2017-01-06T12:52:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=950bf6388bc22c2749b8b66c501df1462639d6bd'/>
<id>urn:sha1:950bf6388bc22c2749b8b66c501df1462639d6bd</id>
<content type='text'>
Group all the PCI drivers that use DesignWare core in dwc directory.
dwc IP is capable of operating in both host mode and device mode and
keeping it inside the *host* directory is misleading.

Signed-off-by: Kishon Vijay Abraham I &lt;kishon@ti.com&gt;
Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;
Acked-by: Jingoo Han &lt;jingoohan1@gmail.com&gt;
Acked-By: Joao Pinto &lt;jpinto@synopsys.com&gt;
Cc: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Cc: Minghuan Lian &lt;minghuan.Lian@freescale.com&gt;
Cc: Mingkai Hu &lt;mingkai.hu@freescale.com&gt;
Cc: Roy Zang &lt;tie-fei.zang@freescale.com&gt;
Cc: Richard Zhu &lt;hongxing.zhu@nxp.com&gt;
Cc: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Cc: Murali Karicheri &lt;m-karicheri2@ti.com&gt;
Cc: Pratyush Anand &lt;pratyush.anand@gmail.com&gt;
Cc: Niklas Cassel &lt;niklas.cassel@axis.com&gt;
Cc: Jesper Nilsson &lt;jesper.nilsson@axis.com&gt;
Cc: Zhou Wang &lt;wangzhou1@hisilicon.com&gt;
Cc: Gabriele Paoloni &lt;gabriele.paoloni@huawei.com&gt;
Cc: Stanimir Varbanov &lt;svarbanov@mm-sol.com&gt;</content>
</entry>
<entry>
<title>PCI/MSI: Enable PCI_MSI_IRQ_DOMAIN support for ARC</title>
<updated>2016-09-06T15:53:32Z</updated>
<author>
<name>Joao Pinto</name>
</author>
<published>2016-08-09T15:49:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f8430eae9f1b439154dbe8bd77d697c4cece145b'/>
<id>urn:sha1:f8430eae9f1b439154dbe8bd77d697c4cece145b</id>
<content type='text'>
Add ARC as an arch that supports PCI_MSI_IRQ_DOMAIN and add generation of
msi.h in the ARC arch.

Signed-off-by: Joao Pinto &lt;jpinto@synopsys.com&gt;
Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;
Acked-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;</content>
</entry>
<entry>
<title>PCI/MSI: irqchip: Fix PCI_MSI dependencies</title>
<updated>2016-06-15T20:47:33Z</updated>
<author>
<name>Arnd Bergmann</name>
</author>
<published>2016-06-15T20:47:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3ee803641e76bea76ec730c80dcc64739a9919ff'/>
<id>urn:sha1:3ee803641e76bea76ec730c80dcc64739a9919ff</id>
<content type='text'>
The PCI_MSI symbol is used inconsistently throughout the tree, with some
drivers using 'select' and others using 'depends on', or using conditional
selects.  This keeps causing problems; the latest one is a result of
ARCH_ALPINE using a 'select' statement to enable its platform-specific MSI
driver without enabling MSI:

  warning: (ARCH_ALPINE) selects ALPINE_MSI which has unmet direct dependencies (PCI &amp;&amp; PCI_MSI)
  drivers/irqchip/irq-alpine-msi.c:104:15: error: variable 'alpine_msix_domain_info' has initializer but incomplete type
   static struct msi_domain_info alpine_msix_domain_info = {
		 ^~~~~~~~~~~~~~~
  drivers/irqchip/irq-alpine-msi.c:105:2: error: unknown field 'flags' specified in initializer
    .flags = MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
    ^
  drivers/irqchip/irq-alpine-msi.c:105:11: error: 'MSI_FLAG_USE_DEF_DOM_OPS' undeclared here (not in a function)
    .flags = MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
	     ^~~~~~~~~~~~~~~~~~~~~~~~

There is little reason to enable PCI support for a platform that uses MSI
but then leave MSI disabled at compile time.

Select PCI_MSI from irqchips that implement MSI, and make PCI host bridges
that use MSI on ARM depend on PCI_MSI_IRQ_DOMAIN.

For all three architectures that support PCI_MSI_IRQ_DOMAIN (ARM, ARM64,
X86), enable it by default whenever MSI is enabled.

[bhelgaas: changelog, omit crypto config change]
Suggested-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;
Acked-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;</content>
</entry>
<entry>
<title>PCI: Provide common functions for ECAM mapping</title>
<updated>2016-05-11T22:34:41Z</updated>
<author>
<name>Jayachandran C</name>
</author>
<published>2016-05-10T15:19:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=35ff9477d880986441981010585399c1d7201fee'/>
<id>urn:sha1:35ff9477d880986441981010585399c1d7201fee</id>
<content type='text'>
Add config option PCI_ECAM and file drivers/pci/ecam.c to provide generic
functions for accessing memory-mapped PCI config space.

The API is defined in drivers/pci/ecam.h and is written to replace the API
in drivers/pci/host/pci-host-common.h.  The file defines a new 'struct
pci_config_window' to hold the information related to a PCI config area and
its mapping.  This structure is expected to be used as sysdata for
controllers that have ECAM based mapping.

Helper functions are provided to setup the mapping, free the mapping and to
implement the map_bus method in 'struct pci_ops'

Signed-off-by: Jayachandran C &lt;jchandra@broadcom.com&gt;
Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;</content>
</entry>
<entry>
<title>PCI: Restore inclusion of pci/hotplug Kconfig</title>
<updated>2016-03-21T12:33:34Z</updated>
<author>
<name>Tero Roponen</name>
</author>
<published>2016-03-21T07:26:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=30b5b8808c12bcd947dd474980482561b69c1bcb'/>
<id>urn:sha1:30b5b8808c12bcd947dd474980482561b69c1bcb</id>
<content type='text'>
Commit e7e127e3c767 ("PCI: Include pci/hotplug Kconfig directly from
pci/Kconfig") added one line to pci/Kconfig.  However, for some mysterious
reason it isn't there now, even though there are no traces of removing it
in the git log.

I detected this issue when 'make oldconfig' removed all the options that
depended on HOTPLUG_PCI.

[bhelgaas: I botched the cfeb8139a1fb ("Merge branch 'pci/host-hv' into
next") merge.  "git diff cfeb8139a1fb^ cfeb8139a1fb" shows a conflict in
drivers/pci/Kconfig, and I mistakenly dropped the hotplug/Kconfig piece.]
Signed-off-by: Tero Roponen &lt;tero.roponen@gmail.com&gt;
Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;</content>
</entry>
<entry>
<title>Merge branch 'pci/host-hv' into next</title>
<updated>2016-03-15T13:56:16Z</updated>
<author>
<name>Bjorn Helgaas</name>
</author>
<published>2016-03-15T13:56:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cfeb8139a1fbbbae3f1e986133f4e9e7833eeac4'/>
<id>urn:sha1:cfeb8139a1fbbbae3f1e986133f4e9e7833eeac4</id>
<content type='text'>
* pci/host-hv:
  PCI: hv: Add paravirtual PCI front-end for Microsoft Hyper-V VMs
  PCI: Look up IRQ domain by fwnode_handle
  PCI: Add fwnode_handle to x86 pci_sysdata
</content>
</entry>
</feed>
