mirror of
https://gitee.com/bianbu-linux/linux-6.6-fh
synced 2025-04-18 21:54:44 -04:00
Adjust the registration method of PCIe and INET drivers, and set raid6_select to start asynchronously by default.
Asynchronous modules should now be configured in the DTS file, with an additional variable in the bootargs. The recommended configuration is as follows: driver_async_probe=spacemit-hdmi-drv,i2c-spacemit-k1x,ri2c-spacemit-k1x,k1xccic,sdhci-spacemit,k1x-dwc-pcie,pxa2xx-uart Change-Id: I2877696e84cc735c95363a1614dcbf3e5e26d5e0
This commit is contained in:
parent
6c7f63e739
commit
8b8ec6e224
3 changed files with 18 additions and 3 deletions
|
@ -1861,6 +1861,7 @@ static const struct dev_pm_ops k1x_pcie_pm_ops = {
|
|||
};
|
||||
|
||||
static struct platform_driver k1x_pcie_driver = {
|
||||
.probe = k1x_pcie_probe,
|
||||
.driver = {
|
||||
.name = "k1x-dwc-pcie",
|
||||
.of_match_table = of_k1x_pcie_match,
|
||||
|
@ -1868,4 +1869,4 @@ static struct platform_driver k1x_pcie_driver = {
|
|||
.pm = &k1x_pcie_pm_ops,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver_probe(k1x_pcie_driver, k1x_pcie_probe);
|
||||
module_platform_driver(k1x_pcie_driver);
|
||||
|
|
|
@ -18,6 +18,9 @@
|
|||
#else
|
||||
#include <linux/module.h>
|
||||
#include <linux/gfp.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/async.h>
|
||||
/* In .bss so it's zeroed */
|
||||
const char raid6_empty_zero_page[PAGE_SIZE] __attribute__((aligned(256)));
|
||||
EXPORT_SYMBOL(raid6_empty_zero_page);
|
||||
|
@ -289,7 +292,18 @@ static void raid6_exit(void)
|
|||
do { } while (0);
|
||||
}
|
||||
|
||||
subsys_initcall(raid6_select_algo);
|
||||
static void raid6_select_algo_wrapper(void *data, long long unsigned int arg)
|
||||
{
|
||||
raid6_select_algo();
|
||||
}
|
||||
|
||||
static int __init raid6_select_algo_async_init(void)
|
||||
{
|
||||
async_schedule(raid6_select_algo_wrapper, NULL);
|
||||
return 0;
|
||||
}
|
||||
|
||||
subsys_initcall(raid6_select_algo_async_init);
|
||||
module_exit(raid6_exit);
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_DESCRIPTION("RAID6 Q-syndrome calculations");
|
||||
|
|
|
@ -2080,7 +2080,7 @@ out_unregister_tcp_proto:
|
|||
goto out;
|
||||
}
|
||||
|
||||
fs_initcall(inet_init);
|
||||
subsys_initcall(inet_init);
|
||||
|
||||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue