2023-02-01 20:55:50

by Mauro Lima

[permalink] [raw]
Subject: [PATCH v2 0/2] spi: intel: PCI driver housekeeping

Found some controllers' private data that were wrong according
to the documentation. Also, the number of Protected Regions from
Broxton types was changed.
The second patch adds more Device IDs to the module table.
Probably good candidates to stable?

Changes since v1:
* Change BXT to Broxton in commit message
* Sort new Device IDs by hex value in the driver's module table
* Add ack from Mika Westerberg to the first patch
Link: https://lore.kernel.org/r/[email protected]

Mauro Lima (2):
spi: intel: Fix device private data and PR_NUM for Broxton controllers
spi: intel: Add support for controllers

drivers/spi/spi-intel-pci.c | 13 ++++++++-----
drivers/spi/spi-intel.c | 2 +-
2 files changed, 9 insertions(+), 6 deletions(-)

--
2.39.1



2023-02-01 20:56:17

by Mauro Lima

[permalink] [raw]
Subject: [PATCH v2 1/2] spi: intel: Fix device private data and PR_NUM for Broxton controllers

Some private data fields have to change from bxt_info to cnl_info.
Here is the list of Device IDs with the respective documentation taken for
validation:
0xa0a4 - Intel® 500 Series Chipset Family On-Package PCH
0x02a4 - Intel® 400 Series Chipset Family On-Package PCH
0x06a4 - Intel® 400 Series Chipset Family Platform Controller Hub
0x34a4 - Intel® 495 Chipset Family On-Package
0xa3a4 - Intel® B460 and H410 Chipset

According to documentation Broxton controller type has five PR registers.

Signed-off-by: Mauro Lima <[email protected]>
Acked-by: Mika Westerberg <[email protected]>
---
drivers/spi/spi-intel-pci.c | 10 +++++-----
drivers/spi/spi-intel.c | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/spi/spi-intel-pci.c b/drivers/spi/spi-intel-pci.c
index f0d532ea40e8..10fa3a7fa4f5 100644
--- a/drivers/spi/spi-intel-pci.c
+++ b/drivers/spi/spi-intel-pci.c
@@ -60,12 +60,12 @@ static int intel_spi_pci_probe(struct pci_dev *pdev,
}

static const struct pci_device_id intel_spi_pci_ids[] = {
- { PCI_VDEVICE(INTEL, 0x02a4), (unsigned long)&bxt_info },
- { PCI_VDEVICE(INTEL, 0x06a4), (unsigned long)&bxt_info },
+ { PCI_VDEVICE(INTEL, 0x02a4), (unsigned long)&cnl_info },
+ { PCI_VDEVICE(INTEL, 0x06a4), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0x18e0), (unsigned long)&bxt_info },
{ PCI_VDEVICE(INTEL, 0x19e0), (unsigned long)&bxt_info },
{ PCI_VDEVICE(INTEL, 0x1bca), (unsigned long)&bxt_info },
- { PCI_VDEVICE(INTEL, 0x34a4), (unsigned long)&bxt_info },
+ { PCI_VDEVICE(INTEL, 0x34a4), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0x38a4), (unsigned long)&bxt_info },
{ PCI_VDEVICE(INTEL, 0x43a4), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0x4b24), (unsigned long)&bxt_info },
@@ -75,11 +75,11 @@ static const struct pci_device_id intel_spi_pci_ids[] = {
{ PCI_VDEVICE(INTEL, 0x7a24), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0x7aa4), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0x7e23), (unsigned long)&cnl_info },
- { PCI_VDEVICE(INTEL, 0xa0a4), (unsigned long)&bxt_info },
+ { PCI_VDEVICE(INTEL, 0xa0a4), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0xa1a4), (unsigned long)&bxt_info },
{ PCI_VDEVICE(INTEL, 0xa224), (unsigned long)&bxt_info },
{ PCI_VDEVICE(INTEL, 0xa324), (unsigned long)&cnl_info },
- { PCI_VDEVICE(INTEL, 0xa3a4), (unsigned long)&bxt_info },
+ { PCI_VDEVICE(INTEL, 0xa3a4), (unsigned long)&cnl_info },
{ },
};
MODULE_DEVICE_TABLE(pci, intel_spi_pci_ids);
diff --git a/drivers/spi/spi-intel.c b/drivers/spi/spi-intel.c
index f619212b0d5c..1052fb4b7973 100644
--- a/drivers/spi/spi-intel.c
+++ b/drivers/spi/spi-intel.c
@@ -104,7 +104,7 @@
#define BXT_PR 0x84
#define BXT_SSFSTS_CTL 0xa0
#define BXT_FREG_NUM 12
-#define BXT_PR_NUM 6
+#define BXT_PR_NUM 5

#define CNL_PR 0x84
#define CNL_FREG_NUM 6
--
2.39.1


2023-02-01 20:56:40

by Mauro Lima

[permalink] [raw]
Subject: [PATCH v2 2/2] spi: intel: Add support for controllers

Add Device IDs to the module table for the following controllers:
- 9da4 Cannon Lake 300 Series On-Package
- a2a4 200 Series/Z370 Chipset Family SPI Controller
- 9d24 Intel® 200 Series Chipset Family (Including Intel® X299),
Intel® Z370 Intel® H310C,B365,
also Intel® B460 and H410 Chipset Platform Controller Hub

Signed-off-by: Mauro Lima <[email protected]>
---
drivers/spi/spi-intel-pci.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/spi/spi-intel-pci.c b/drivers/spi/spi-intel-pci.c
index 10fa3a7fa4f5..4d69e320d018 100644
--- a/drivers/spi/spi-intel-pci.c
+++ b/drivers/spi/spi-intel-pci.c
@@ -75,9 +75,12 @@ static const struct pci_device_id intel_spi_pci_ids[] = {
{ PCI_VDEVICE(INTEL, 0x7a24), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0x7aa4), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0x7e23), (unsigned long)&cnl_info },
+ { PCI_VDEVICE(INTEL, 0x9d24), (unsigned long)&cnl_info },
+ { PCI_VDEVICE(INTEL, 0x9da4), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0xa0a4), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0xa1a4), (unsigned long)&bxt_info },
{ PCI_VDEVICE(INTEL, 0xa224), (unsigned long)&bxt_info },
+ { PCI_VDEVICE(INTEL, 0xa2a4), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0xa324), (unsigned long)&cnl_info },
{ PCI_VDEVICE(INTEL, 0xa3a4), (unsigned long)&cnl_info },
{ },
--
2.39.1


2023-02-02 05:37:48

by Mika Westerberg

[permalink] [raw]
Subject: Re: [PATCH v2 2/2] spi: intel: Add support for controllers

On Wed, Feb 01, 2023 at 05:54:55PM -0300, Mauro Lima wrote:
> Add Device IDs to the module table for the following controllers:
> - 9da4 Cannon Lake 300 Series On-Package
> - a2a4 200 Series/Z370 Chipset Family SPI Controller
> - 9d24 Intel® 200 Series Chipset Family (Including Intel® X299),
> Intel® Z370 Intel® H310C,B365,
> also Intel® B460 and H410 Chipset Platform Controller Hub
>
> Signed-off-by: Mauro Lima <[email protected]>

Acked-by: Mika Westerberg <[email protected]>

2023-02-02 15:00:10

by Mark Brown

[permalink] [raw]
Subject: Re: [PATCH v2 0/2] spi: intel: PCI driver housekeeping

On Wed, 01 Feb 2023 17:54:53 -0300, Mauro Lima wrote:
> Found some controllers' private data that were wrong according
> to the documentation. Also, the number of Protected Regions from
> Broxton types was changed.
> The second patch adds more Device IDs to the module table.
> Probably good candidates to stable?
>
> Changes since v1:
> * Change BXT to Broxton in commit message
> * Sort new Device IDs by hex value in the driver's module table
> * Add ack from Mika Westerberg to the first patch
> Link: https://lore.kernel.org/r/[email protected]
>
> [...]

Applied to

https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next

Thanks!

[1/2] spi: intel: Fix device private data and PR_NUM for Broxton controllers
commit: b4c58d540777124f31ab0cb37a14c6573438d381
[2/2] spi: intel: Add support for controllers
commit: 7c62a2279b9e88f2cbfa3b92dc49c8b7806c56f8

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark


2023-02-02 15:02:04

by Alok Tiwari

[permalink] [raw]
Subject: Re: [External] : [PATCH v2 2/2] spi: intel: Add support for controllers

look good.

Acked-by: Alok Tiwari <[email protected]>

On 2/2/2023 2:24 AM, Mauro Lima wrote:
> Add Device IDs to the module table for the following controllers:
> - 9da4 Cannon Lake 300 Series On-Package
> - a2a4 200 Series/Z370 Chipset Family SPI Controller
> - 9d24 Intel® 200 Series Chipset Family (Including Intel® X299),
> Intel® Z370 Intel® H310C,B365,
> also Intel® B460 and H410 Chipset Platform Controller Hub
>
> Signed-off-by: Mauro Lima <[email protected]>
> ---
> drivers/spi/spi-intel-pci.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/spi/spi-intel-pci.c b/drivers/spi/spi-intel-pci.c
> index 10fa3a7fa4f5..4d69e320d018 100644
> --- a/drivers/spi/spi-intel-pci.c
> +++ b/drivers/spi/spi-intel-pci.c
> @@ -75,9 +75,12 @@ static const struct pci_device_id intel_spi_pci_ids[] = {
> { PCI_VDEVICE(INTEL, 0x7a24), (unsigned long)&cnl_info },
> { PCI_VDEVICE(INTEL, 0x7aa4), (unsigned long)&cnl_info },
> { PCI_VDEVICE(INTEL, 0x7e23), (unsigned long)&cnl_info },
> + { PCI_VDEVICE(INTEL, 0x9d24), (unsigned long)&cnl_info },
> + { PCI_VDEVICE(INTEL, 0x9da4), (unsigned long)&cnl_info },
> { PCI_VDEVICE(INTEL, 0xa0a4), (unsigned long)&cnl_info },
> { PCI_VDEVICE(INTEL, 0xa1a4), (unsigned long)&bxt_info },
> { PCI_VDEVICE(INTEL, 0xa224), (unsigned long)&bxt_info },
> + { PCI_VDEVICE(INTEL, 0xa2a4), (unsigned long)&cnl_info },
> { PCI_VDEVICE(INTEL, 0xa324), (unsigned long)&cnl_info },
> { PCI_VDEVICE(INTEL, 0xa3a4), (unsigned long)&cnl_info },
> { },