git: 81d058df6d25 - main - LinuxKPI: allow bsddriver name to be set for PCI
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 24 Mar 2022 15:21:08 UTC
The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=81d058df6d255b7f551564f6d29a03692b51fe5a commit 81d058df6d255b7f551564f6d29a03692b51fe5a Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2022-03-24 01:45:36 +0000 Commit: Bjoern A. Zeeb <bz@FreeBSD.org> CommitDate: 2022-03-24 15:19:15 +0000 LinuxKPI: allow bsddriver name to be set for PCI Allow a driver to overwrite the bsddriver name (we use for pci and for wlan parent devices). This allows us to to set .bsddriver.name in struct pci_driver passed to module_pci_driver() and with that set the BSD driver name while retaining the Linux .name one. This is helpful for divers which have different parts depending on chipset and with that would change driver names which is highly confusing especially for configuration. One example is an upcoming rtw88 driver which would be rtw_8822be or rtw_8822ce depending on chipset. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste, hselasky Differential Revision: https://reviews.freebsd.org/D34653 --- sys/compat/linuxkpi/common/src/linux_pci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index b4f4a2219bb4..f8ae03d2bf28 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -654,7 +654,8 @@ _linux_pci_register_driver(struct pci_driver *pdrv, devclass_t dc) spin_lock(&pci_lock); list_add(&pdrv->node, &pci_drivers); spin_unlock(&pci_lock); - pdrv->bsddriver.name = pdrv->name; + if (pdrv->bsddriver.name == NULL) + pdrv->bsddriver.name = pdrv->name; pdrv->bsddriver.methods = pci_methods; pdrv->bsddriver.size = sizeof(struct pci_dev);