Message ID | 20230323090314.22431-4-cai.huoqing@linux.dev (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | [1/8] net: liquidio: Remove redundant pci_clear_master | expand |
On Thu, Mar 23, 2023 at 2:04 AM Cai Huoqing <cai.huoqing@linux.dev> wrote: > > Remove pci_clear_master to simplify the code, > the bus-mastering is also cleared in do_pci_disable_device, > like this: > ./drivers/pci/pci.c:2197 > static void do_pci_disable_device(struct pci_dev *dev) > { > u16 pci_command; > > pci_read_config_word(dev, PCI_COMMAND, &pci_command); > if (pci_command & PCI_COMMAND_MASTER) { > pci_command &= ~PCI_COMMAND_MASTER; > pci_write_config_word(dev, PCI_COMMAND, pci_command); > } > > pcibios_disable_device(dev); > }. > And dev->is_busmaster is set to 0 in pci_disable_device. > > Signed-off-by: Cai Huoqing <cai.huoqing@linux.dev> Acked-by: Dimitris Michailidis <dmichail@fungible.com> > --- > drivers/net/ethernet/fungible/funcore/fun_dev.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/drivers/net/ethernet/fungible/funcore/fun_dev.c b/drivers/net/ethernet/fungible/funcore/fun_dev.c > index 3680f83feba2..a7fbd4cd560a 100644 > --- a/drivers/net/ethernet/fungible/funcore/fun_dev.c > +++ b/drivers/net/ethernet/fungible/funcore/fun_dev.c > @@ -746,7 +746,6 @@ void fun_dev_disable(struct fun_dev *fdev) > bitmap_free(fdev->irq_map); > pci_free_irq_vectors(pdev); > > - pci_clear_master(pdev); > pci_disable_device(pdev); > > fun_unmap_bars(fdev); > @@ -821,7 +820,6 @@ int fun_dev_enable(struct fun_dev *fdev, struct pci_dev *pdev, > disable_admin: > fun_disable_admin_queue(fdev); > free_irq_mgr: > - pci_clear_master(pdev); > bitmap_free(fdev->irq_map); > free_irqs: > pci_free_irq_vectors(pdev); > -- > 2.34.1 >
diff --git a/drivers/net/ethernet/fungible/funcore/fun_dev.c b/drivers/net/ethernet/fungible/funcore/fun_dev.c index 3680f83feba2..a7fbd4cd560a 100644 --- a/drivers/net/ethernet/fungible/funcore/fun_dev.c +++ b/drivers/net/ethernet/fungible/funcore/fun_dev.c @@ -746,7 +746,6 @@ void fun_dev_disable(struct fun_dev *fdev) bitmap_free(fdev->irq_map); pci_free_irq_vectors(pdev); - pci_clear_master(pdev); pci_disable_device(pdev); fun_unmap_bars(fdev); @@ -821,7 +820,6 @@ int fun_dev_enable(struct fun_dev *fdev, struct pci_dev *pdev, disable_admin: fun_disable_admin_queue(fdev); free_irq_mgr: - pci_clear_master(pdev); bitmap_free(fdev->irq_map); free_irqs: pci_free_irq_vectors(pdev);
Remove pci_clear_master to simplify the code, the bus-mastering is also cleared in do_pci_disable_device, like this: ./drivers/pci/pci.c:2197 static void do_pci_disable_device(struct pci_dev *dev) { u16 pci_command; pci_read_config_word(dev, PCI_COMMAND, &pci_command); if (pci_command & PCI_COMMAND_MASTER) { pci_command &= ~PCI_COMMAND_MASTER; pci_write_config_word(dev, PCI_COMMAND, pci_command); } pcibios_disable_device(dev); }. And dev->is_busmaster is set to 0 in pci_disable_device. Signed-off-by: Cai Huoqing <cai.huoqing@linux.dev> --- drivers/net/ethernet/fungible/funcore/fun_dev.c | 2 -- 1 file changed, 2 deletions(-)