On Mon, Sep 11, 2023 at 06:09:20PM -0400, Frank Li wrote: > Add doorbell test support. > > Signed-off-by: Frank Li <Frank.Li@xxxxxxx> > --- > tools/pci/pcitest.c | 16 +++++++++++++++- > 1 file changed, 15 insertions(+), 1 deletion(-) > > diff --git a/tools/pci/pcitest.c b/tools/pci/pcitest.c > index 441b542346354..215d0aa8a09fe 100644 > --- a/tools/pci/pcitest.c > +++ b/tools/pci/pcitest.c > @@ -36,6 +36,7 @@ struct pci_test { > bool copy; > unsigned long size; > bool use_dma; > + bool doorbell; > }; > > static int run_test(struct pci_test *test) > @@ -149,6 +150,15 @@ static int run_test(struct pci_test *test) > fprintf(stdout, "%s\n", result[ret]); > } > > + if (test->doorbell) { > + ret = ioctl(fd, PCITEST_DOORBELL, 0); > + fprintf(stdout, "Push doorbell\t\t"); "Ringing doorbell on the EP". - Mani > + if (ret < 0) > + fprintf(stdout, "TEST FAILED\n"); > + else > + fprintf(stdout, "%s\n", result[ret]); > + } > + > fflush(stdout); > close(fd); > return (ret < 0) ? ret : 1 - ret; /* return 0 if test succeeded */ > @@ -174,7 +184,7 @@ int main(int argc, char **argv) > /* set default endpoint device */ > test->device = "/dev/pci-endpoint-test.0"; > > - while ((c = getopt(argc, argv, "D:b:m:x:i:deIlhrwcs:")) != EOF) > + while ((c = getopt(argc, argv, "D:b:m:x:i:BdeIlhrwcs:")) != EOF) > switch (c) { > case 'D': > test->device = optarg; > @@ -224,6 +234,9 @@ int main(int argc, char **argv) > case 'd': > test->use_dma = true; > continue; > + case 'B': > + test->doorbell = true; > + continue; > case 'h': > default: > usage: > @@ -243,6 +256,7 @@ int main(int argc, char **argv) > "\t-w Write buffer test\n" > "\t-c Copy buffer test\n" > "\t-s <size> Size of buffer {default: 100KB}\n" > + "\t-B Doorbell test\n" > "\t-h Print this help message\n", > argv[0]); > return -EINVAL; > -- > 2.34.1 > -- மணிவண்ணன் சதாசிவம்