Re: [RFC PATCH 0/2] Add sideband data extraction

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

 




On Fri, Jul 07, 2017 at 12:39:57PM +0530, Srinath Mannam wrote:
> These patches implements optional DT properties to generate
> smaller sideband data from RID which can be further mapped
> to MSI Device ID or Stream ID
> 
> On some of the systems, sideband data is smaller than RID
> (16bits). For such system, sideband data has to be generated
> by dropping some of the RID bits
> 
> the process of sideband data extracted from RID can be expressed
> using optional DT property {iommu/msi}-map-drop-mask.
> 
> Example: If drop-mask is 0xFF09 then sideband data is
> 8 bits bus number followed by 1 bit of device number and
> 1 bit function number. This means drop-mask=0xFF09 will
> convert RID=0x1a10 (16bits) to sideband data 0x6a (10bits).

So IIUC, here's you're using this not only to mask bits out, but also to
determine a *shift* to apply to the value, implicitly provided by the
(contiguous) low bits of the mask.

That's really not obvious from the name.

Mark.

> 
> Srinath Mannam (2):
>   dt-bindings: pci: Add drop mask property for MSI and IOMMU
>   pcie: sideband data by dropping RID bits
> 
>  .../devicetree/bindings/pci/pci-iommu.txt          | 31 ++++++++++++++
>  Documentation/devicetree/bindings/pci/pci-msi.txt  | 33 +++++++++++++++
>  drivers/iommu/of_iommu.c                           |  4 +-
>  drivers/of/irq.c                                   |  3 +-
>  drivers/of/of_pci.c                                | 48 ++++++++++++++++++++--
>  include/linux/of_pci.h                             |  6 ++-
>  6 files changed, 117 insertions(+), 8 deletions(-)
> 
> -- 
> 2.7.4
> 
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux