lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20151207170122.GI7994@localhost>
Date:	Mon, 7 Dec 2015 11:01:22 -0600
From:	Bjorn Helgaas <helgaas@...nel.org>
To:	Ray Jui <rjui@...adcom.com>
Cc:	Bjorn Helgaas <bhelgaas@...gle.com>,
	Marc Zyngier <marc.zyngier@....com>,
	Arnd Bergmann <arnd@...db.de>,
	Hauke Mehrtens <hauke@...ke-m.de>,
	linux-kernel@...r.kernel.org,
	bcm-kernel-feedback-list@...adcom.com, linux-pci@...r.kernel.org
Subject: Re: [PATCH v5 0/5] Add iProc PCIe PAXC and MSI support

On Fri, Dec 04, 2015 at 09:34:57AM -0800, Ray Jui wrote:
> This patch series adds support for the iProc PAXC interface and support for
> event queue based MSI, integrated in the iProc PCIe core
> 
> This patch series is based on Linux v4.4-rc1 and is avaliable here:
> https://github.com/Broadcom/cygnus-linux/tree/iproc-msi-v5
> 
> Changes from v4:
> - Make 'iproc_msi_exit' inline to fix compiler warning when CONFIG_PCI_MSI
> is disabled
> 
> Changes from v3:
> - Detect the number of possible CPUs instead online CPUs in the driver. Note
> CPU notifier based implementation still needs to be added in the future, for
> proper support of MSI IRQ affinity when CPU is brought online/offline at
> runtime. Support in this dirver will be added when we support CPU hotplug in
> one of iProc family of SoCs so the changes can be tested
> - Use dma_zalloc_coherent for event queue host memory allocation and zeoring
> 
> Changes from v2:
> - Improved descriptions in the iProc MSI commit message
> - Removed redundant host memory used for MSI address. The MSI posted writes
> never really hit the memory. Use iProc PCIe controller base address instead
> - Fixed deadlock when MSI vectors are used up
> - Enforced the number of MSI groups to always be multiple of the number of CPUs
> - Improved the efficiency of MSI event processing by only updating the head
> pointer after finishing processing all outstanding events
> - Fixed error handling code to make sure all configurations are rolled back
> - Added code to zero the host memory used for event queues after allocation
> - Removed redundant 'brcm,num-eq-region' and 'brcm,num-msi-msg-region' DT
>   properties. Now determine the number of regions based on interface type
> - Other misc. changes
> 
> Changes from v1:
> - Fixed incorrect 1-to-1 mapping between MSI vector and GIC interrupt. Now the
> driver supports multiple MSI vectors per GIC interrupt
> - Added MSI IRQ affinity support by distributing GIC interrupts across
> available CPU cores and dynamically steer MSI vectors to the target CPU
> - replace readl/writel with readl_relaxed/writel_relaxed since all register
> accesses within the iProc MSI driver are to/from the same I/O block, i.e., the
> iProc PCIe core
> - Removed all redundant irq_chip callback assignments
> - Changed to use uncached host memory for both MSI posted writes and event
> queues
> - Add functions to free resources in error/exit cases
> - In pcie-iproc-platform.c, pass in interface type through OF device data
> - Moved define for max number of interrupts from pcie-iproc.h to
> pcie-iproc-msi.c
> - Other misc. changes
> 
> Ray Jui (5):
>   PCI: iproc: Update iProc PCIe device tree binding
>   PCI: iproc: Add PAXC interface support
>   PCI: iproc: Add iProc PCIe MSI device tree binding
>   PCI: iproc: Add iProc PCIe MSI support
>   ARM: dts: Enable MSI support for Broadcom Cygnus
> 
>  .../devicetree/bindings/pci/brcm,iproc-pcie.txt    |  40 +-
>  arch/arm/boot/dts/bcm-cygnus.dtsi                  |  22 +
>  drivers/pci/host/Kconfig                           |   9 +
>  drivers/pci/host/Makefile                          |   1 +
>  drivers/pci/host/pcie-iproc-bcma.c                 |   1 +
>  drivers/pci/host/pcie-iproc-msi.c                  | 675 +++++++++++++++++++++
>  drivers/pci/host/pcie-iproc-platform.c             |  25 +-
>  drivers/pci/host/pcie-iproc.c                      | 228 +++++--
>  drivers/pci/host/pcie-iproc.h                      |  42 +-
>  9 files changed, 1000 insertions(+), 43 deletions(-)
>  create mode 100644 drivers/pci/host/pcie-iproc-msi.c

Applied to pci/host-iproc for v4.5, with Marc's reviewed-by on "PCI: iproc:
Add iProc PCIe MSI support".  Thanks!

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ