[PATCH 0/7] PCI: Re-factor PCI's 'latency timer' setup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The 'latency timer' of PCI devices, both Type 0 and Type 1,
is setup in architecture-specific code [see: pcibios_set_master()].
There are two approaches being taken by all the architectures - check
if the 'latency timer' is currently set between 16 and 255 and if not
bring it within bounds, or, do nothing (and then there is the
gratuitously different parisc implementation).

There is nothing architecture-specific about PCI's 'latency timer' so
this patch pulls the setup functionality up into the PCI core by
creating a generic 'pcibios_set_master()' function using the 'weak'
attribute which can be used by all architectures as a default which,
if absolutely necessary, can then be over-ridden by architecture-
pecific code.

With the generic 'pcibios_set_master()' function in place the series
removes the now redundant function from the following architectures:
frv, mips, mn10300, sh, and x86.  I believe that alpha, arm, and
arch-v32 could also be removed and use the default but I was
not comfortable with those architectures so any feedback there as to
whether or not they should be included would be appreciated.


I have only tested x86.

---

Myron Stowe (7):
      PCI: latency timer doesn't apply to PCIe
      PCI: x86: use generic pcibios_set_master()
      PCI: sh: use generic pcibios_set_master()
      PCI: mn10300: use generic pcibios_set_master()
      PCI: mips: use generic pcibios_set_master()
      PCI: frv: use generic pcibios_set_master()
      PCI: Pull PCI 'latency timer' setup up into the core


 arch/arm/common/it8152.c                |    7 -------
 arch/frv/mb93090-mb00/pci-frv.c         |   20 -------------------
 arch/frv/mb93090-mb00/pci-frv.h         |    2 --
 arch/mips/pci/pci.c                     |   21 --------------------
 arch/mn10300/unit-asb2305/pci-asb2305.c |   22 ---------------------
 arch/mn10300/unit-asb2305/pci-asb2305.h |    2 --
 arch/sh/drivers/pci/pci.c               |   21 --------------------
 arch/x86/include/asm/pci_x86.h          |    2 --
 arch/x86/pci/i386.c                     |   20 -------------------
 drivers/pci/pci.c                       |   33 +++++++++++++++++++++++++++++++
 include/linux/pci.h                     |    5 +++++
 11 files changed, 38 insertions(+), 117 deletions(-)

-- 
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux