Subject: linux-next: build failure after merge of the pm tree

From: Stephen Rothwell <[email-masked]>
Date: Mon, 3 Apr 2023 11:25:14 +1000

Hi all,

After merging the pm tree, today's linux-next build (x86_64 allmodconfig)
failed like this:

drivers/fpga/lattice-sysconfig-spi.c:146:35: error: implicit declaration of function 'of_match_ptr' [-Werror=implicit-function-declaration]
  146 |                 .of_match_table = of_match_ptr(sysconfig_of_ids),
      |                                   ^~~~~~~~~~~~
drivers/fpga/lattice-sysconfig-spi.c:146:35: error: initialization of 'const struct of_device_id *' from 'int' makes pointer from integer without a cast [-Werror=int-conversion]
drivers/fpga/lattice-sysconfig-spi.c:146:35: note: (near initialization for 'lattice_sysconfig_driver.driver.of_match_table')
drivers/fpga/lattice-sysconfig-spi.c:146:35: error: initializer element is not constant
drivers/fpga/lattice-sysconfig-spi.c:146:35: note: (near initialization for 'lattice_sysconfig_driver.driver.of_match_table')
drivers/ata/pata_ixp4xx_cf.c: In function 'ixp4xx_pata_probe':
drivers/ata/pata_ixp4xx_cf.c:254:46: error: invalid use of undefined type 'struct device_node'
  254 |         ixpp->rmap = syscon_node_to_regmap(np->parent);
      |                                              ^~
drivers/ata/pata_ixp4xx_cf.c:258:15: error: implicit declaration of function 'of_property_read_u32_index'; did you mean 'fwnode_property_read_u32_array'? [-Werror=implicit-function-declaration]
  258 |         ret = of_property_read_u32_index(np, "reg", 0, &csindex);
      |               ^~~~~~~~~~~~~~~~~~~~~~~~~~
      |               fwnode_property_read_u32_array

Caused by commit (I am pretty sure, but can't see why)

  054e68aae050 ("ACPI: Replace irqdomain.h include with struct declarations")

I have applied the following patch for today (and it could be applied
to the pm tree).

From: Stephen Rothwell <[email-masked]>
Date: Mon, 3 Apr 2023 11:21:33 +1000
Subject: [PATCH] lattice-sysconfig-spi, pata_ixp4xx_cf.c: fixup for "ACPI:
 Replace irqdomain.h include with struct declarations"

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 drivers/ata/pata_ixp4xx_cf.c         | 1 +
 drivers/fpga/lattice-sysconfig-spi.c | 1 +
 2 files changed, 2 insertions(+)

diff --git a/drivers/ata/pata_ixp4xx_cf.c b/drivers/ata/pata_ixp4xx_cf.c
index e225913a619d..64f77fa457cd 100644
--- a/drivers/ata/pata_ixp4xx_cf.c
+++ b/drivers/ata/pata_ixp4xx_cf.c
@@ -18,6 +18,7 @@
 #include <linux/libata.h>
 #include <linux/irq.h>
 #include <linux/platform_device.h>
+#include <linux/of.h>
 #include <linux/regmap.h>
 #include <scsi/scsi_host.h>
 
diff --git a/drivers/fpga/lattice-sysconfig-spi.c b/drivers/fpga/lattice-sysconfig-spi.c
index 2702b26b7f55..44691cfcf50a 100644
--- a/drivers/fpga/lattice-sysconfig-spi.c
+++ b/drivers/fpga/lattice-sysconfig-spi.c
@@ -3,6 +3,7 @@
  * Lattice FPGA programming over slave SPI sysCONFIG interface.
  */
 
+#include <linux/of.h>
 #include <linux/spi/spi.h>
 
 #include "lattice-sysconfig.h"
-- 
2.39.2

-- 
Cheers,
Stephen Rothwell