git: f56dbe7ad92f - main - intelspi: Move ACPI/PCI ids table out of header file.
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 03 Aug 2023 16:12:01 UTC
The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=f56dbe7ad92f97394690dca21f105d3a44fb7701 commit f56dbe7ad92f97394690dca21f105d3a44fb7701 Author: Vladimir Kondratyev <wulf@FreeBSD.org> AuthorDate: 2023-08-03 16:10:50 +0000 Commit: Vladimir Kondratyev <wulf@FreeBSD.org> CommitDate: 2023-08-03 16:10:50 +0000 intelspi: Move ACPI/PCI ids table out of header file. There is no reason to store it multiple times. MFC after: 1 week Reviewed by: manu Differential Revision: https://reviews.freebsd.org/D41244 --- sys/dev/intel/spi.c | 23 +++++++++++++++++++++++ sys/dev/intel/spi.h | 30 +----------------------------- sys/dev/intel/spi_acpi.c | 7 ++++--- sys/dev/intel/spi_pci.c | 27 ++++++++++++++------------- 4 files changed, 42 insertions(+), 45 deletions(-) diff --git a/sys/dev/intel/spi.c b/sys/dev/intel/spi.c index c2308c20f8cd..42caed0c1c02 100644 --- a/sys/dev/intel/spi.c +++ b/sys/dev/intel/spi.c @@ -109,6 +109,29 @@ #define SPI_CS_CTRL_HW_MODE (1 << 0) #define SPI_CS_CTRL_CS_HIGH (1 << 1) +/* Same order as intelspi_vers */ +static const struct intelspi_info { + uint32_t reg_lpss_base; + uint32_t reg_cs_ctrl; +} intelspi_infos[] = { + [SPI_BAYTRAIL] = { + .reg_lpss_base = 0x400, + .reg_cs_ctrl = 0x18, + }, + [SPI_BRASWELL] = { + .reg_lpss_base = 0x400, + .reg_cs_ctrl = 0x18, + }, + [SPI_LYNXPOINT] = { + .reg_lpss_base = 0x800, + .reg_cs_ctrl = 0x18, + }, + [SPI_SUNRISEPOINT] = { + .reg_lpss_base = 0x200, + .reg_cs_ctrl = 0x24, + }, +}; + static void intelspi_intr(void *); static int diff --git a/sys/dev/intel/spi.h b/sys/dev/intel/spi.h index 31b708572630..bd79ec1e812a 100644 --- a/sys/dev/intel/spi.h +++ b/sys/dev/intel/spi.h @@ -41,38 +41,10 @@ enum intelspi_vers { SPI_SUNRISEPOINT, }; -/* Same order as intelspi_vers */ -static const struct intelspi_info { - const char *desc; - uint32_t reg_lpss_base; - uint32_t reg_cs_ctrl; -} intelspi_infos[] = { - [SPI_BAYTRAIL] = { - .desc = "Intel Bay Trail SPI Controller", - .reg_lpss_base = 0x400, - .reg_cs_ctrl = 0x18, - }, - [SPI_BRASWELL] = { - .desc = "Intel Braswell SPI Controller", - .reg_lpss_base = 0x400, - .reg_cs_ctrl = 0x18, - }, - [SPI_LYNXPOINT] = { - .desc = "Intel Lynx Point / Wildcat Point SPI Controller", - .reg_lpss_base = 0x800, - .reg_cs_ctrl = 0x18, - }, - [SPI_SUNRISEPOINT] = { - .desc = "Intel Sunrise Point SPI Controller", - .reg_lpss_base = 0x200, - .reg_cs_ctrl = 0x24, - }, -}; - struct intelspi_softc { ACPI_HANDLE sc_handle; device_t sc_dev; - enum intelspi_vers sc_vers; + enum intelspi_vers sc_vers; struct mtx sc_mtx; int sc_mem_rid; struct resource *sc_mem_res; diff --git a/sys/dev/intel/spi_acpi.c b/sys/dev/intel/spi_acpi.c index 4c22d7a351c4..033eb047cb29 100644 --- a/sys/dev/intel/spi_acpi.c +++ b/sys/dev/intel/spi_acpi.c @@ -42,9 +42,10 @@ static const struct intelspi_acpi_device { const char *hid; enum intelspi_vers vers; + const char *desc; } intelspi_acpi_devices[] = { - { "80860F0E", SPI_BAYTRAIL }, - { "8086228E", SPI_BRASWELL }, + { "80860F0E", SPI_BAYTRAIL, "Intel Bay Trail SPI Controller" }, + { "8086228E", SPI_BRASWELL, "Intel Braswell SPI Controller" }, }; static char *intelspi_ids[] = { "80860F0E", "8086228E", NULL }; @@ -66,7 +67,7 @@ intelspi_acpi_probe(device_t dev) if (strcmp(intelspi_acpi_devices[i].hid, hid) == 0) { sc->sc_vers = intelspi_acpi_devices[i].vers; sc->sc_handle = acpi_get_handle(dev); - device_set_desc(dev, intelspi_infos[sc->sc_vers].desc); + device_set_desc(dev, intelspi_acpi_devices[i].desc); return (BUS_PROBE_DEFAULT); } } diff --git a/sys/dev/intel/spi_pci.c b/sys/dev/intel/spi_pci.c index cb2b8bd82bfb..c2c118ca1eae 100644 --- a/sys/dev/intel/spi_pci.c +++ b/sys/dev/intel/spi_pci.c @@ -45,19 +45,20 @@ static struct intelspi_pci_device { uint32_t devid; enum intelspi_vers vers; + const char *desc; } intelspi_pci_devices[] = { - { 0x9c658086, SPI_LYNXPOINT }, - { 0x9c668086, SPI_LYNXPOINT }, - { 0x9ce58086, SPI_LYNXPOINT }, - { 0x9ce68086, SPI_LYNXPOINT }, - { 0x9d298086, SPI_SUNRISEPOINT }, - { 0x9d2a8086, SPI_SUNRISEPOINT }, - { 0xa1298086, SPI_SUNRISEPOINT }, - { 0xa12a8086, SPI_SUNRISEPOINT }, - { 0xa2a98086, SPI_SUNRISEPOINT }, - { 0xa2aa8086, SPI_SUNRISEPOINT }, - { 0xa3a98086, SPI_SUNRISEPOINT }, - { 0xa3aa8086, SPI_SUNRISEPOINT }, + { 0x9c658086, SPI_LYNXPOINT, "Intel Lynx Point-LP SPI Controller-0" }, + { 0x9c668086, SPI_LYNXPOINT, "Intel Lynx Point-LP SPI Controller-1" }, + { 0x9ce58086, SPI_LYNXPOINT, "Intel Wildcat Point SPI Controller-0" }, + { 0x9ce68086, SPI_LYNXPOINT, "Intel Wildcat Point SPI Controller-1" }, + { 0x9d298086, SPI_SUNRISEPOINT, "Intel Sunrise Point-LP SPI Controller-0" }, + { 0x9d2a8086, SPI_SUNRISEPOINT, "Intel Sunrise Point-LP SPI Controller-1" }, + { 0xa1298086, SPI_SUNRISEPOINT, "Intel Sunrise Point-H SPI Controller-0" }, + { 0xa12a8086, SPI_SUNRISEPOINT, "Intel Sunrise Point-H SPI Controller-1" }, + { 0xa2a98086, SPI_SUNRISEPOINT, "Intel Kaby Lake-H SPI Controller-0" }, + { 0xa2aa8086, SPI_SUNRISEPOINT, "Intel Kaby Lake-H SPI Controller-1" }, + { 0xa3a98086, SPI_SUNRISEPOINT, "Intel Comet Lake-V SPI Controller-0" }, + { 0xa3aa8086, SPI_SUNRISEPOINT, "Intel Comet Lake-V SPI Controller-1" }, }; static int @@ -73,7 +74,7 @@ intelspi_pci_probe(device_t dev) /* The PCI device is listed in ACPI too. * Not that we use the handle for anything... */ sc->sc_handle = acpi_get_handle(dev); - device_set_desc(dev, intelspi_infos[sc->sc_vers].desc); + device_set_desc(dev, intelspi_pci_devices[i].desc); return (BUS_PROBE_DEFAULT); } }