Messages in this thread Patch in this message | | | From | Kunihiko Hayashi <> | Subject | [PATCH RESEND] PCI: endpoint: Fix clearing start entry in configfs | Date | Fri, 20 Dec 2019 21:24:37 +0900 |
| |
The value of 'start' entry is no change whenever writing 0 to configfs. So the endpoint that stopped once can't restart.
The following command lines are an example restarting endpoint and reprogramming configurations after receiving bus-reset.
echo 0 > controllers/66000000.pcie-ep/start rm controllers/66000000.pcie-ep/func1 ln -s functions/pci_epf_test/func1 controllers/66000000.pcie-ep/ echo 1 > controllers/66000000.pcie-ep/start
However, the first 'echo' can't set 0 to 'start', so the last 'echo' can't restart endpoint.
Fixes: d74679911610 ("PCI: endpoint: Introduce configfs entry for configuring EP functions") Cc: Kishon Vijay Abraham I <kishon@ti.com> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> --- drivers/pci/endpoint/pci-ep-cfs.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/drivers/pci/endpoint/pci-ep-cfs.c b/drivers/pci/endpoint/pci-ep-cfs.c index d1288a0..4fead88 100644 --- a/drivers/pci/endpoint/pci-ep-cfs.c +++ b/drivers/pci/endpoint/pci-ep-cfs.c @@ -58,6 +58,7 @@ static ssize_t pci_epc_start_store(struct config_item *item, const char *page, if (!start) { pci_epc_stop(epc); + epc_group->start = 0; return len; } -- 2.7.4
| |