Sorry because of the issues with your X5000. I hope you can repair it.
Thanks for testing!
Sorry because of the issues with your X5000. I hope you can repair it.
Thanks for testing!
Code: Select all
git revert 86c87bea6b42100c67418af690919c44de6ede6e -m 1
Code: Select all
Removing drivers/of/unittest-data/overlay_20.dts
Removing drivers/of/unittest-data/overlay_19.dts
Removing drivers/of/unittest-data/overlay_18.dts
Removing drivers/of/unittest-data/overlay_17.dts
Removing drivers/of/unittest-data/overlay_16.dts
Auto-merging drivers/of/platform.c
Auto-merging MAINTAINERS
Auto-merging Documentation/devicetree/bindings/vendor-prefixes.yaml
Removing Documentation/devicetree/bindings/timer/ti,timer-dm.yaml
Removing Documentation/devicetree/bindings/timer/rda,8810pl-timer.yaml
Removing Documentation/devicetree/bindings/spmi/qcom,spmi-pmic-arb.yaml
Removing Documentation/devicetree/bindings/spi/qcom,spi-qup.yaml
Removing Documentation/devicetree/bindings/sound/arm,pl041.yaml
Removing Documentation/devicetree/bindings/soc/ti/wkup-m3-ipc.yaml
Removing Documentation/devicetree/bindings/soc/qcom/qcom,smp2p.yaml
Removing Documentation/devicetree/bindings/soc/qcom/qcom,gsbi.yaml
Removing Documentation/devicetree/bindings/soc/fsl/fsl,layerscape-scfg.yaml
Removing Documentation/devicetree/bindings/soc/fsl/fsl,layerscape-dcfg.yaml
Removing Documentation/devicetree/bindings/serio/arm,pl050.yaml
Removing Documentation/devicetree/bindings/serial/qcom,msm-uartdm.yaml
Removing Documentation/devicetree/bindings/perf/spe-pmu.yaml
Removing Documentation/devicetree/bindings/pci/socionext,uniphier-pcie.yaml
Removing Documentation/devicetree/bindings/net/smsc,lan91c111.yaml
Removing Documentation/devicetree/bindings/net/microchip,lan95xx.yaml
Removing Documentation/devicetree/bindings/net/asix,ax88178.yaml
Removing Documentation/devicetree/bindings/mfd/mediatek,mt6360.yaml
Removing Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml
Removing Documentation/devicetree/bindings/interrupt-controller/fsl,ls-extirq.yaml
Removing Documentation/devicetree/bindings/i2c/qcom,i2c-qup.yaml
Removing Documentation/devicetree/bindings/i2c/qcom,i2c-geni-qcom.yaml
Removing Documentation/devicetree/bindings/i2c/i2c-mt65xx.yaml
Removing Documentation/devicetree/bindings/gnss/mediatek.yaml
Removing Documentation/devicetree/bindings/gnss/brcm,bcm4751.yaml
Removing Documentation/devicetree/bindings/display/arm,pl11x.yaml
Removing Documentation/devicetree/bindings/display/arm,malidp.yaml
Removing Documentation/devicetree/bindings/display/arm,komeda.yaml
Removing Documentation/devicetree/bindings/display/arm,hdlcd.yaml
Removing Documentation/devicetree/bindings/clock/mediatek,topckgen.yaml
Removing Documentation/devicetree/bindings/clock/mediatek,apmixedsys.yaml
Removing Documentation/devicetree/bindings/arm/vexpress-sysreg.yaml
Removing Documentation/devicetree/bindings/arm/vexpress-config.yaml
Removing Documentation/devicetree/bindings/arm/sp810.yaml
Removing Documentation/devicetree/bindings/arm/mediatek/mediatek,infracfg.yaml
hint: Waiting for your editor to close the file...
Revert "Merge tag 'devicetree-for-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux"
This reverts commit 86c87bea6b42100c67418af690919c44de6ede6e, reversing
changes made to d223575e50f8da0de358c0098defd560069ecf66.
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# On branch master
# Your branch is up to date with 'origin/master'.
#
# Changes to be committed:
# modified: Documentation/devicetree/bindings/arm/bcm/brcm,bcm63138.txt
# new file: Documentation/devicetree/bindings/arm/freescale/fsl,layerscape-dcfg.txt
# new file: Documentation/devicetree/bindings/arm/freescale/fsl,layerscape-scfg.txt
# modified: Documentation/devicetree/bindings/arm/hisilicon/controller/hip04-bootwrapper.yaml
# new file: Documentation/devicetree/bindings/arm/mediatek/mediatek,apmixedsys.txt
# new file: Documentation/devicetree/bindings/arm/mediatek/mediatek,infracfg.txt
# deleted: Documentation/devicetree/bindings/arm/mediatek/mediatek,infracfg.yaml
# new file: Documentation/devicetree/bindings/arm/mediatek/mediatek,topckgen.txt
# new file: Documentation/devicetree/bindings/arm/sp810.txt
# deleted: Documentation/devicetree/bindings/arm/sp810.yaml
# new file: Documentation/devicetree/bindings/arm/spe-pmu.txt
# deleted: Documentation/devicetree/bindings/arm/vexpress-config.yaml
# new file: Documentation/devicetree/bindings/arm/vexpress-sysreg.txt
# deleted: Documentation/devicetree/bindings/arm/vexpress-sysreg.yaml
# deleted: Documentation/devicetree/bindings/clock/mediatek,apmixedsys.yaml
# deleted: Documentation/devicetree/bindings/clock/mediatek,topckgen.yaml
# modified: Documentation/devicetree/bindings/clock/samsung,exynos4412-isp-clock.yaml
# modified: Documentation/devicetree/bindings/crypto/allwinner,sun8i-ce.yaml
# modified: Documentation/devicetree/bindings/display/amlogic,meson-dw-hdmi.yaml
# new file: Documentation/devicetree/bindings/display/arm,hdlcd.txt
# deleted: Documentation/devicetree/bindings/display/arm,hdlcd.yaml
# new file: Documentation/devicetree/bindings/display/arm,komeda.txt
# deleted: Documentation/devicetree/bindings/display/arm,komeda.yaml
# new file: Documentation/devicetree/bindings/display/arm,malidp.txt
# deleted: Documentation/devicetree/bindings/display/arm,malidp.yaml
# new file: Documentation/devicetree/bindings/display/arm,pl11x.txt
# deleted: Documentation/devicetree/bindings/display/arm,pl11x.yaml
# modified: Documentation/devicetree/bindings/display/bridge/google,cros-ec-anx7688.yaml
# modified: Documentation/devicetree/bindings/display/bridge/ps8640.yaml
# modified: Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml
# modified: Documentation/devicetree/bindings/display/imx/nxp,imx8mq-dcss.yaml
# modified: Documentation/devicetree/bindings/display/mediatek/mediatek,merge.yaml
# modified: Documentation/devicetree/bindings/display/panel/ilitek,ili9341.yaml
[master 11c544686437] Revert "Merge tag 'devicetree-for-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux"
188 files changed, 1997 insertions(+), 4364 deletions(-)
create mode 100644 Documentation/devicetree/bindings/arm/freescale/fsl,layerscape-dcfg.txt
create mode 100644 Documentation/devicetree/bindings/arm/freescale/fsl,layerscape-scfg.txt
create mode 100644 Documentation/devicetree/bindings/arm/mediatek/mediatek,apmixedsys.txt
create mode 100644 Documentation/devicetree/bindings/arm/mediatek/mediatek,infracfg.txt
delete mode 100644 Documentation/devicetree/bindings/arm/mediatek/mediatek,infracfg.yaml
create mode 100644 Documentation/devicetree/bindings/arm/mediatek/mediatek,topckgen.txt
create mode 100644 Documentation/devicetree/bindings/arm/sp810.txt
delete mode 100644 Documentation/devicetree/bindings/arm/sp810.yaml
create mode 100644 Documentation/devicetree/bindings/arm/spe-pmu.txt
delete mode 100644 Documentation/devicetree/bindings/arm/vexpress-config.yaml
create mode 100644 Documentation/devicetree/bindings/arm/vexpress-sysreg.txt
delete mode 100644 Documentation/devicetree/bindings/arm/vexpress-sysreg.yaml
delete mode 100644 Documentation/devicetree/bindings/clock/mediatek,apmixedsys.yaml
delete mode 100644 Documentation/devicetree/bindings/clock/mediatek,topckgen.yaml
create mode 100644 Documentation/devicetree/bindings/display/arm,hdlcd.txt
delete mode 100644 Documentation/devicetree/bindings/display/arm,hdlcd.yaml
create mode 100644 Documentation/devicetree/bindings/display/arm,komeda.txt
delete mode 100644 Documentation/devicetree/bindings/display/arm,komeda.yaml
create mode 100644 Documentation/devicetree/bindings/display/arm,malidp.txt
delete mode 100644 Documentation/devicetree/bindings/display/arm,malidp.yaml
create mode 100644 Documentation/devicetree/bindings/display/arm,pl11x.txt
delete mode 100644 Documentation/devicetree/bindings/display/arm,pl11x.yaml
create mode 100644 Documentation/devicetree/bindings/eeprom/at24.txt
delete mode 100644 Documentation/devicetree/bindings/gnss/brcm,bcm4751.yaml
create mode 100644 Documentation/devicetree/bindings/gnss/mediatek.txt
delete mode 100644 Documentation/devicetree/bindings/gnss/mediatek.yaml
create mode 100644 Documentation/devicetree/bindings/i2c/i2c-mt65xx.txt
delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-mt65xx.yaml
delete mode 100644 Documentation/devicetree/bindings/i2c/qcom,i2c-geni-qcom.yaml
create mode 100644 Documentation/devicetree/bindings/i2c/qcom,i2c-qup.txt
delete mode 100644 Documentation/devicetree/bindings/i2c/qcom,i2c-qup.yaml
create mode 100644 Documentation/devicetree/bindings/input/ilitek,ili2xxx.txt
create mode 100644 Documentation/devicetree/bindings/interrupt-controller/fsl,ls-extirq.txt
delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/fsl,ls-extirq.yaml
create mode 100644 Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt
delete mode 100644 Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml
delete mode 100644 Documentation/devicetree/bindings/mfd/mediatek,mt6360.yaml
create mode 100644 Documentation/devicetree/bindings/mtd/common.txt
delete mode 100644 Documentation/devicetree/bindings/net/asix,ax88178.yaml
delete mode 100644 Documentation/devicetree/bindings/net/microchip,lan95xx.yaml
delete mode 100644 Documentation/devicetree/bindings/net/smsc,lan91c111.yaml
create mode 100644 Documentation/devicetree/bindings/net/smsc-lan91c111.txt
delete mode 100644 Documentation/devicetree/bindings/pci/socionext,uniphier-pcie.yaml
create mode 100644 Documentation/devicetree/bindings/pci/uniphier-pcie.txt
delete mode 100644 Documentation/devicetree/bindings/perf/spe-pmu.yaml
create mode 100644 Documentation/devicetree/bindings/reset/hisilicon,hi6220-reset.txt
create mode 100644 Documentation/devicetree/bindings/rtc/rtc.txt
create mode 100644 Documentation/devicetree/bindings/serial/qcom,msm-uartdm.txt
delete mode 100644 Documentation/devicetree/bindings/serial/qcom,msm-uartdm.yaml
delete mode 100644 Documentation/devicetree/bindings/serio/arm,pl050.yaml
delete mode 100644 Documentation/devicetree/bindings/soc/fsl/fsl,layerscape-dcfg.yaml
delete mode 100644 Documentation/devicetree/bindings/soc/fsl/fsl,layerscape-scfg.yaml
create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,gsbi.txt
delete mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,gsbi.yaml
create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smp2p.txt
delete mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smp2p.yaml
delete mode 100644 Documentation/devicetree/bindings/soc/ti/wkup-m3-ipc.yaml
create mode 100644 Documentation/devicetree/bindings/soc/ti/wkup_m3_ipc.txt
delete mode 100644 Documentation/devicetree/bindings/sound/arm,pl041.yaml
create mode 100644 Documentation/devicetree/bindings/spi/qcom,spi-qup.txt
delete mode 100644 Documentation/devicetree/bindings/spi/qcom,spi-qup.yaml
create mode 100644 Documentation/devicetree/bindings/spmi/qcom,spmi-pmic-arb.txt
delete mode 100644 Documentation/devicetree/bindings/spmi/qcom,spmi-pmic-arb.yaml
create mode 100644 Documentation/devicetree/bindings/timer/rda,8810pl-timer.txt
delete mode 100644 Documentation/devicetree/bindings/timer/rda,8810pl-timer.yaml
delete mode 100644 Documentation/devicetree/bindings/timer/ti,timer-dm.yaml
create mode 100644 Documentation/devicetree/bindings/timer/ti,timer.txt
delete mode 100644 drivers/of/unittest-data/overlay_16.dts
delete mode 100644 drivers/of/unittest-data/overlay_17.dts
delete mode 100644 drivers/of/unittest-data/overlay_18.dts
delete mode 100644 drivers/of/unittest-data/overlay_19.dts
delete mode 100644 drivers/of/unittest-data/overlay_20.dts
Code: Select all
-rw-r--r-- drivers/of/fdt.c 3
-rw-r--r-- drivers/of/irq.c 15
-rw-r--r-- drivers/of/overlay.c 339
-rw-r--r-- drivers/of/platform.c 14
-rw-r--r-- drivers/of/property.c 5
-rw-r--r-- drivers/of/unittest-data/Makefile 10
-rw-r--r-- drivers/of/unittest-data/overlay_16.dts 15
-rw-r--r-- drivers/of/unittest-data/overlay_17.dts 15
-rw-r--r-- drivers/of/unittest-data/overlay_18.dts 15
-rw-r--r-- drivers/of/unittest-data/overlay_19.dts 15
-rw-r--r-- drivers/of/unittest-data/overlay_20.dts 15
-rw-r--r-- drivers/of/unittest.c
Code: Select all
--- a/drivers/of/platform.c 2022-05-26 18:46:15.551656025 +0200
+++ b/drivers/of/platform.c 2022-05-22 21:52:31.000000000 +0200
@@ -114,31 +114,35 @@ struct platform_device *of_device_alloc(
struct device *parent)
{
struct platform_device *dev;
- int rc, i, num_reg = 0;
+ int rc, i, num_reg = 0, num_irq;
struct resource *res, temp_res;
dev = platform_device_alloc("", PLATFORM_DEVID_NONE);
if (!dev)
return NULL;
- /* count the io resources */
+ /* count the io and irq resources */
while (of_address_to_resource(np, num_reg, &temp_res) == 0)
num_reg++;
+ num_irq = of_irq_count(np);
/* Populate the resource table */
- if (num_reg) {
- res = kcalloc(num_reg, sizeof(*res), GFP_KERNEL);
+ if (num_irq || num_reg) {
+ res = kcalloc(num_irq + num_reg, sizeof(*res), GFP_KERNEL);
if (!res) {
platform_device_put(dev);
return NULL;
}
- dev->num_resources = num_reg;
+ dev->num_resources = num_reg + num_irq;
dev->resource = res;
for (i = 0; i < num_reg; i++, res++) {
rc = of_address_to_resource(np, i, res);
WARN_ON(rc);
}
+ if (of_irq_to_resource_table(np, res, num_irq) != num_irq)
+ pr_debug("not all legacy IRQ resources mapped for %pOFn\n",
+ np);
}
dev->dev.of_node = of_node_get(np);
Rob Herring wrote: The issue is in drivers/usb/host/fsl-mph-dr-of.c which copies the
resources to a child platform device. Can you try the following
change:
Code: Select all
diff --git a/drivers/usb/host/fsl-mph-dr-of.c b/drivers/usb/host/fsl-mph-dr-of.c
index 44a7e58a26e3..47d9b7be60da 100644
--- a/drivers/usb/host/fsl-mph-dr-of.c
+++ b/drivers/usb/host/fsl-mph-dr-of.c
@@ -80,8 +80,6 @@ static struct platform_device *fsl_usb2_device_register(
const char *name, int id)
{
struct platform_device *pdev;
- const struct resource *res = ofdev->resource;
- unsigned int num = ofdev->num_resources;
int retval;
pdev = platform_device_alloc(name, id);
@@ -106,11 +104,7 @@ static struct platform_device *fsl_usb2_device_register(
if (retval)
goto error;
- if (num) {
- retval = platform_device_add_resources(pdev, res, num);
- if (retval)
- goto error;
- }
+ pdev->dev.of_node = ofdev->dev.of_node;
retval = platform_device_add(pdev);
if (retval)
Code: Select all
patching file a/drivers/usb/host/fsl-mph-dr-of.c
Hunk #1 FAILED at 80.
Hunk #2 FAILED at 106.
2 out of 2 hunks FAILED -- saving rejects to file a/drivers/usb/host/fsl-mph-dr-of.c.rej
Code: Select all
--- a/drivers/usb/host/fsl-mph-dr-of.c 2022-05-28 09:10:26.797688422 +0200
+++ b/drivers/usb/host/fsl-mph-dr-of.c 2022-05-28 09:15:01.668594809 +0200
@@ -80,8 +80,6 @@ static struct platform_device *fsl_usb2_
const char *name, int id)
{
struct platform_device *pdev;
- const struct resource *res = ofdev->resource;
- unsigned int num = ofdev->num_resources;
int retval;
pdev = platform_device_alloc(name, id);
@@ -106,11 +104,7 @@ static struct platform_device *fsl_usb2_
if (retval)
goto error;
- if (num) {
- retval = platform_device_add_resources(pdev, res, num);
- if (retval)
- goto error;
- }
+ pdev->dev.of_node = ofdev->dev.of_node;
retval = platform_device_add(pdev);
if (retval)
Code: Select all
powerpc-linux-gnu-ld: net/rds/tcp_stats.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/wireless/wext-spy.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/wireless/wext-priv.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/bcast.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/bearer.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/core.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/link.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/discover.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/msg.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/name_distr.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/subscr.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/name_table.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/net.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/netlink.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/netlink_compat.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/node.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/eth_media.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/topsrv.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/group.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/trace.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/udp_media.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/sysctl.o:(.bss+0x40): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/crypto.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/tipc/diag.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/9p/trans_common.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/9p/trans_virtio.o:(.bss+0x40): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/6lowpan/ndisc.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
powerpc-linux-gnu-ld: net/sysctl_net.o:(.bss+0x80): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
It's already fixed.xeno74 wrote: ↑Sat May 28, 2022 9:11 am Unfortunately I can't test it. The git kernel doesn't compile currently.
I reported it to the kernel developers today.Code: Select all
powerpc-linux-gnu-ld: net/rds/tcp_stats.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/wireless/wext-spy.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/wireless/wext-priv.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/bcast.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/bearer.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/core.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/link.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/discover.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/msg.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/name_distr.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/subscr.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/name_table.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/net.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/netlink.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/netlink_compat.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/node.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/eth_media.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/topsrv.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/group.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/trace.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/udp_media.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/sysctl.o:(.bss+0x40): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/crypto.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/tipc/diag.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/9p/trans_common.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/9p/trans_virtio.o:(.bss+0x40): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/6lowpan/ndisc.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here powerpc-linux-gnu-ld: net/sysctl_net.o:(.bss+0x80): multiple definition of `____cacheline_aligned'; init/version.o:(.bss+0x0): first defined here
Link: [FSL P50x0] Keyboard and mouse don't work anymore after the devicetree updates for 5.19
paca.patch:Michael Ellerman wrote: paca.h uses ____cacheline_aligned without directly including cache.h,
where it's defined.
For Book3S builds that's OK because paca.h includes lppaca.h, and it
does include cache.h.
But Book3E builds have been getting cache.h indirectly via printk.h,
which is dicey, and in fact that include was recently removed, leading
to build errors such as:
ld: fs/isofs/dir.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; fs/isofs/namei.o:(.bss+0x0): first defined here
So include cache.h directly to fix the build error.
Fixes: 534aa1dc975a ("printk: stop including cache.h from printk.h")
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
---
arch/powerpc/include/asm/paca.h | 1 +
1 file changed, 1 insertion(+)
Code: Select all
diff --git a/arch/powerpc/include/asm/paca.h b/arch/powerpc/include/asm/paca.h
index 03330b7d835f..4d7aaab82702 100644
--- a/arch/powerpc/include/asm/paca.h
+++ b/arch/powerpc/include/asm/paca.h
@@ -12,6 +12,7 @@
#ifdef CONFIG_PPC64
+#include <linux/cache.h>
#include <linux/string.h>
#include <asm/types.h>
#include <asm/lppaca.h>