2021-12-29 06:07:42

by Li Chen

[permalink] [raw]
Subject: [PATCH] misc: pci_endpoint_test: fix misuse of COMMAND_READ/WRITE

IIUC, COMMAND_WRITE should be set for pci_endpoint_test_write,
and COMMAND_READ should be set for pci_endpoint_test_read.

Signed-off-by: Li Chen <[email protected]>
---
drivers/misc/pci_endpoint_test.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/misc/pci_endpoint_test.c b/drivers/misc/pci_endpoint_test.c
index 2ed7e3aaff3a8..ea7a90830932d 100644
--- a/drivers/misc/pci_endpoint_test.c
+++ b/drivers/misc/pci_endpoint_test.c
@@ -551,12 +551,12 @@ static bool pci_endpoint_test_write(struct pci_endpoint_test *test,
pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_IRQ_TYPE, irq_type);
pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_IRQ_NUMBER, 1);
pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_COMMAND,
- COMMAND_READ);
+ COMMAND_WRITE);

wait_for_completion(&test->irq_raised);

reg = pci_endpoint_test_readl(test, PCI_ENDPOINT_TEST_STATUS);
- if (reg & STATUS_READ_SUCCESS)
+ if (reg & STATUS_WRITE_SUCCESS)
ret = true;

dma_unmap_single(dev, orig_phys_addr, size + alignment,
@@ -643,7 +643,7 @@ static bool pci_endpoint_test_read(struct pci_endpoint_test *test,
pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_IRQ_TYPE, irq_type);
pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_IRQ_NUMBER, 1);
pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_COMMAND,
- COMMAND_WRITE);
+ COMMAND_READ);

wait_for_completion(&test->irq_raised);

--
2.34.1

**********************************************************************
This email and attachments contain Ambarella Proprietary and/or Confidential Information and is intended solely for the use of the individual(s) to whom it is addressed. Any unauthorized review, use, disclosure, distribute, copy, or print is prohibited. If you are not an intended recipient, please contact the sender by reply email and destroy all copies of the original message. Thank you.


2021-12-29 10:49:52

by Li Chen

[permalink] [raw]
Subject: RE: [PATCH] misc: pci_endpoint_test: fix misuse of COMMAND_READ/WRITE

Sorry, I misunderstood the two functions. pci_endpoint_test_write has fulfilled orig_addr, which is used to dma_map_single. So it ask the device to read from the dma address, and **writes** to its own dma address/buf.

Pls ignore this patch, thanks.

> -----Original Message-----
> From: Li Chen
> Sent: Wednesday, December 29, 2021 2:07 PM
> To: Kishon Vijay Abraham I; Lorenzo Pieralisi; Krzysztof Wilczy?ski; Arnd
> Bergmann; Greg Kroah-Hartman; [email protected]; linux-
> [email protected]
> Subject: [PATCH] misc: pci_endpoint_test: fix misuse of
> COMMAND_READ/WRITE
>
> IIUC, COMMAND_WRITE should be set for pci_endpoint_test_write,
> and COMMAND_READ should be set for pci_endpoint_test_read.
>
> Signed-off-by: Li Chen <[email protected]>
> ---
> drivers/misc/pci_endpoint_test.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/misc/pci_endpoint_test.c b/drivers/misc/pci_endpoint_test.c
> index 2ed7e3aaff3a8..ea7a90830932d 100644
> --- a/drivers/misc/pci_endpoint_test.c
> +++ b/drivers/misc/pci_endpoint_test.c
> @@ -551,12 +551,12 @@ static bool pci_endpoint_test_write(struct
> pci_endpoint_test *test,
> pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_IRQ_TYPE,
> irq_type);
> pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_IRQ_NUMBER, 1);
> pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_COMMAND,
> - COMMAND_READ);
> + COMMAND_WRITE);
>
> wait_for_completion(&test->irq_raised);
>
> reg = pci_endpoint_test_readl(test, PCI_ENDPOINT_TEST_STATUS);
> - if (reg & STATUS_READ_SUCCESS)
> + if (reg & STATUS_WRITE_SUCCESS)
> ret = true;
>
> dma_unmap_single(dev, orig_phys_addr, size + alignment,
> @@ -643,7 +643,7 @@ static bool pci_endpoint_test_read(struct
> pci_endpoint_test *test,
> pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_IRQ_TYPE,
> irq_type);
> pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_IRQ_NUMBER, 1);
> pci_endpoint_test_writel(test, PCI_ENDPOINT_TEST_COMMAND,
> - COMMAND_WRITE);
> + COMMAND_READ);
>
> wait_for_completion(&test->irq_raised);
>
> --
> 2.34.1

Regards,
Li

**********************************************************************
This email and attachments contain Ambarella Proprietary and/or Confidential Information and is intended solely for the use of the individual(s) to whom it is addressed. Any unauthorized review, use, disclosure, distribute, copy, or print is prohibited. If you are not an intended recipient, please contact the sender by reply email and destroy all copies of the original message. Thank you.