Hello, On 2/17/2011 8:40 PM, Pedanekar, Hemant wrote: > Correction: outbound --> remote > > linux-pci-owner@xxxxxxxxxxxxxxx wrote on : > >> Hello, >> >> linux-pci-owner@xxxxxxxxxxxxxxx wrote on Thursday, February 17, 2011 3:44 >> PM: >> >>> pcie_set_readrq modifies read request size in EP's capability register. >>> Now considering a situation where this EP is to be connected to an RC >>> whose implemented read buffer size is less than what this function >>> programs. [As per pcie specification this buffer size can be 128-4096 >>> bytes. So an RC can have lesser buffer size] >>> In this scenario there is no way that RC can revert this as >>> per its capability. >>> So , read capability should always be either programmed by enumeration >>> during bootloader or by using postinit hook of base driver. I mean, it >>> should be programmed by RC's driver not by EP's driver. >> >> I am also working on a RC device which supports max outbound >> read request of >> 256 bytes and have to modify this (sil) driver to set read >> request size to >> 256 bytes. This patch would probably help me. >> >> But I have one question: aren't the completors supposed to >> respond with >> multiple completions if the read request exceeds their buffer limit? >> I am also agreeing with this statement. But, I really do not know why does a read request fails , rather to be replied by multiple packets. What happens in your case? Does it not work, if you do not modify sil driver? Regards Pratyush >> Thanks. >> Hemant >> >>> Signed-off-by: Pratyush Anand <pratyush.anand@xxxxxx> --- >>> drivers/ata/sata_sil24.c | 5 ----- >>> 1 files changed, 0 insertions(+), 5 deletions(-) >>> >>> diff --git a/drivers/ata/sata_sil24.c >> b/drivers/ata/sata_sil24.c index >>> af41c6f..bc45e01 100644 --- a/drivers/ata/sata_sil24.c >>> +++ b/drivers/ata/sata_sil24.c >>> @@ -1343,11 +1343,6 @@ static int sil24_init_one(struct >>> pci_dev *pdev, const struct pci_device_id *ent) >>> } >>> } >>> >>> - /* Set max read request size to 4096. This slightly increases >>> - * write throughput for pci-e variants. >>> - */ >>> - pcie_set_readrq(pdev, 4096); >>> - >>> sil24_init_controller(host); >>> >>> if (sata_sil24_msi && !pci_enable_msi(pdev)) { >>> -- >>> 1.6.0.2-- >> 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 > > > > Hemant. > -- 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