PCI: spear: Drop __initdata from spear13xx_pcie_driver
authorMatwey V. Kornilov <[email protected]>
Thu, 19 Feb 2015 17:41:48 +0000 (20:41 +0300)
committerBjorn Helgaas <[email protected]>
Fri, 6 Mar 2015 17:47:28 +0000 (11:47 -0600)
commita43f32d647273023edddb0dc8f91c4c6378b252b
tree82eb305a0ba4dd653c864c7b35e26796a7cd343b
parent085a68d0010ffa57603b93c2b09fdf98bf74218c
PCI: spear: Drop __initdata from spear13xx_pcie_driver

Struct spear13xx_pcie_driver was in initdata, but we passed a pointer to it
to platform_driver_register(), which can use the pointer at arbitrary times
in the future, even after the initdata is freed.  That leads to crashes.

Move spear13xx_pcie_driver and things referenced by it
(spear13xx_pcie_probe() and dw_pcie_host_init()) out of initdata.

[bhelgaas: changelog]
Fixes: 6675ef212dac ("PCI: spear: Fix Section mismatch compilation warning for probe()")
Signed-off-by: Matwey V. Kornilov <[email protected]>
Signed-off-by: Bjorn Helgaas <[email protected]>
Acked-by: Viresh Kumar <[email protected]>
CC: [email protected] # v3.17+
drivers/pci/host/pcie-designware.c
drivers/pci/host/pcie-spear13xx.c