regulator: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in 4.14
authorDouglas Anderson <dianders@chromium.org>
Thu, 16 Mar 2023 19:54:38 +0000 (12:54 -0700)
committerMark Brown <broonie@kernel.org>
Mon, 20 Mar 2023 13:11:25 +0000 (13:11 +0000)
Probing of regulators can be a slow operation and can contribute to
slower boot times. This is especially true if a regulator is turned on
at probe time (with regulator-boot-on or regulator-always-on) and the
regulator requires delays (off-on-time, ramp time, etc).

While the overall kernel is not ready to switch to async probe by
default, as per the discussion on the mailing lists [1] it is believed
that the regulator subsystem is in good shape and we can move
regulator drivers over wholesale. There is no way to just magically
opt in all regulators (regulators are just normal drivers like
platform_driver), so we set PROBE_PREFER_ASYNCHRONOUS for all
regulators found in 'drivers/regulator' individually.

Given the number of drivers touched and the impossibility to test this
ahead of time, it wouldn't be shocking at all if this caused a
regression for someone. If there is a regression caused by this patch,
it's likely to be one of the cases talked about in [1]. As a "quick
fix", drivers involved in the regression could be fixed by changing
them to PROBE_FORCE_SYNCHRONOUS. That being said, the correct fix
would be to directly fix the problem that caused the issue with async
probe.

The approach here follows a similar approach that was used for the mmc
subsystem several years ago [2]. In fact, I ran nearly the same python
script to auto-generate the changes. The only thing I changed was to
search for "i2c_driver", "spmi_driver", and "spi_driver" in addition
to "platform_driver".

[1] https://lore.kernel.org/r/06db017f-e985-4434-8d1d-02ca2100cca0@sirena.org.uk
[2] https://lore.kernel.org/r/20200903232441.2694866-1-dianders@chromium.org/

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20230316125351.1.I2a4677392a38db5758dee0788b2cea5872562a82@changeid
Signed-off-by: Mark Brown <broonie@kernel.org>
114 files changed:
drivers/regulator/88pm800-regulator.c
drivers/regulator/88pm8607.c
drivers/regulator/aat2870-regulator.c
drivers/regulator/ab8500-ext.c
drivers/regulator/ab8500.c
drivers/regulator/act8865-regulator.c
drivers/regulator/act8945a-regulator.c
drivers/regulator/ad5398.c
drivers/regulator/anatop-regulator.c
drivers/regulator/arizona-ldo1.c
drivers/regulator/arizona-micsupp.c
drivers/regulator/as3711-regulator.c
drivers/regulator/as3722-regulator.c
drivers/regulator/axp20x-regulator.c
drivers/regulator/bcm590xx-regulator.c
drivers/regulator/bd9571mwv-regulator.c
drivers/regulator/cpcap-regulator.c
drivers/regulator/da903x-regulator.c
drivers/regulator/da9052-regulator.c
drivers/regulator/da9055-regulator.c
drivers/regulator/da9062-regulator.c
drivers/regulator/da9063-regulator.c
drivers/regulator/da9210-regulator.c
drivers/regulator/da9211-regulator.c
drivers/regulator/db8500-prcmu.c
drivers/regulator/dummy.c
drivers/regulator/fan53555.c
drivers/regulator/fixed.c
drivers/regulator/gpio-regulator.c
drivers/regulator/hi6421-regulator.c
drivers/regulator/hi6421v530-regulator.c
drivers/regulator/hi655x-regulator.c
drivers/regulator/isl6271a-regulator.c
drivers/regulator/isl9305.c
drivers/regulator/lm363x-regulator.c
drivers/regulator/lp3971.c
drivers/regulator/lp3972.c
drivers/regulator/lp872x.c
drivers/regulator/lp873x-regulator.c
drivers/regulator/lp8755.c
drivers/regulator/lp87565-regulator.c
drivers/regulator/lp8788-buck.c
drivers/regulator/lp8788-ldo.c
drivers/regulator/ltc3589.c
drivers/regulator/ltc3676.c
drivers/regulator/max14577-regulator.c
drivers/regulator/max1586.c
drivers/regulator/max77620-regulator.c
drivers/regulator/max77686-regulator.c
drivers/regulator/max77693-regulator.c
drivers/regulator/max77802-regulator.c
drivers/regulator/max8649.c
drivers/regulator/max8660.c
drivers/regulator/max8907-regulator.c
drivers/regulator/max8925-regulator.c
drivers/regulator/max8952.c
drivers/regulator/max8973-regulator.c
drivers/regulator/max8997-regulator.c
drivers/regulator/max8998.c
drivers/regulator/mc13783-regulator.c
drivers/regulator/mc13892-regulator.c
drivers/regulator/mt6311-regulator.c
drivers/regulator/mt6323-regulator.c
drivers/regulator/mt6380-regulator.c
drivers/regulator/mt6397-regulator.c
drivers/regulator/palmas-regulator.c
drivers/regulator/pbias-regulator.c
drivers/regulator/pcap-regulator.c
drivers/regulator/pcf50633-regulator.c
drivers/regulator/pfuze100-regulator.c
drivers/regulator/pv88060-regulator.c
drivers/regulator/pv88080-regulator.c
drivers/regulator/pv88090-regulator.c
drivers/regulator/pwm-regulator.c
drivers/regulator/qcom_rpm-regulator.c
drivers/regulator/qcom_smd-regulator.c
drivers/regulator/qcom_spmi-regulator.c
drivers/regulator/rc5t583-regulator.c
drivers/regulator/rk808-regulator.c
drivers/regulator/rn5t618-regulator.c
drivers/regulator/rt5033-regulator.c
drivers/regulator/s2mpa01.c
drivers/regulator/s2mps11.c
drivers/regulator/s5m8767.c
drivers/regulator/sky81452-regulator.c
drivers/regulator/stm32-vrefbuf.c
drivers/regulator/stw481x-vmmc.c
drivers/regulator/ti-abb-regulator.c
drivers/regulator/tps51632-regulator.c
drivers/regulator/tps6105x-regulator.c
drivers/regulator/tps62360-regulator.c
drivers/regulator/tps65023-regulator.c
drivers/regulator/tps6507x-regulator.c
drivers/regulator/tps65086-regulator.c
drivers/regulator/tps65090-regulator.c
drivers/regulator/tps65132-regulator.c
drivers/regulator/tps65217-regulator.c
drivers/regulator/tps65218-regulator.c
drivers/regulator/tps6524x-regulator.c
drivers/regulator/tps6586x-regulator.c
drivers/regulator/tps65910-regulator.c
drivers/regulator/tps65912-regulator.c
drivers/regulator/twl-regulator.c
drivers/regulator/twl6030-regulator.c
drivers/regulator/userspace-consumer.c
drivers/regulator/vctrl-regulator.c
drivers/regulator/vexpress-regulator.c
drivers/regulator/virtual.c
drivers/regulator/wm831x-dcdc.c
drivers/regulator/wm831x-isink.c
drivers/regulator/wm831x-ldo.c
drivers/regulator/wm8350-regulator.c
drivers/regulator/wm8400-regulator.c
drivers/regulator/wm8994-regulator.c

index d08ee81ed1ac59fdd7bc80b24f086d81516331cf..83e8860309dccf1ca8a52b4f7e53daa4001b8d8b 100644 (file)
@@ -274,6 +274,7 @@ static int pm800_regulator_probe(struct platform_device *pdev)
 static struct platform_driver pm800_regulator_driver = {
        .driver         = {
                .name   = "88pm80x-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = pm800_regulator_probe,
 };
index 1d1c4a7ec3e2fcc5b4713ec6bc23598537ea0aff..e6c436955e25177f5f408e84201b2b3d51d0cb04 100644 (file)
@@ -383,6 +383,7 @@ MODULE_DEVICE_TABLE(platform, pm8607_regulator_driver_ids);
 static struct platform_driver pm8607_regulator_driver = {
        .driver         = {
                .name   = "88pm860x-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = pm8607_regulator_probe,
        .id_table       = pm8607_regulator_driver_ids,
index d6ed5bf9235e52e85b59f8de3fc328953e085f5d..970d86f2bbb81154978d013be00e232cf9706cd0 100644 (file)
@@ -178,6 +178,7 @@ static int aat2870_regulator_probe(struct platform_device *pdev)
 static struct platform_driver aat2870_regulator_driver = {
        .driver = {
                .name   = "aat2870-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe  = aat2870_regulator_probe,
 };
index 4f26952caa560af828e4bf10483cf6fecb75939d..b9955aa4e0d1b0a5a617bd46593f344f2e2d16a6 100644 (file)
@@ -446,6 +446,7 @@ static struct platform_driver ab8500_ext_regulator_driver = {
        .probe = ab8500_ext_regulator_probe,
        .driver         = {
                .name   = "ab8500-ext-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 23a401734a9876620095e6ec19c74c47cff321cc..6b4a3a3d838513f8f871ec580e8a8f0624c98cbb 100644 (file)
@@ -1737,6 +1737,7 @@ static struct platform_driver ab8500_regulator_driver = {
        .probe = ab8500_regulator_probe,
        .driver         = {
                .name   = "ab8500-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 53f2c75cdeb41d6eba07c2b83234c7475a44a806..5c409ff4aa991bb65b494f293297b92f6ca4f2b3 100644 (file)
@@ -789,6 +789,7 @@ MODULE_DEVICE_TABLE(i2c, act8865_ids);
 static struct i2c_driver act8865_pmic_driver = {
        .driver = {
                .name   = "act8865",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe_new      = act8865_pmic_probe,
        .id_table       = act8865_ids,
index 1db1c6423779afdf757e269887cbd51c236649e0..e26264529b74ca9ca74d9e2329c887df1b750e6b 100644 (file)
@@ -348,6 +348,7 @@ static void act8945a_pmic_shutdown(struct platform_device *pdev)
 static struct platform_driver act8945a_pmic_driver = {
        .driver = {
                .name = "act8945a-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .pm = &act8945a_pm,
        },
        .probe = act8945a_pmic_probe,
index 2ba8ac1773d1b79dca56fdf4e05a345a80943870..c228cf6956d10aaffd0ded4cddaa659ffa347b83 100644 (file)
@@ -257,6 +257,7 @@ static struct i2c_driver ad5398_driver = {
        .probe_new = ad5398_probe,
        .driver         = {
                .name   = "ad5398",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .id_table       = ad5398_id,
 };
index f9856d4e295f8f7ae45ed81131695f50e8f746e8..700bd0343196a1a7337a0302eaefb94507ece9b5 100644 (file)
@@ -328,6 +328,7 @@ MODULE_DEVICE_TABLE(of, of_anatop_regulator_match_tbl);
 static struct platform_driver anatop_regulator_driver = {
        .driver = {
                .name   = "anatop_regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_anatop_regulator_match_tbl,
        },
        .probe  = anatop_regulator_probe,
index ade0bef4569d977d3fb235c9d8ab688dd4cf27ad..cabc9e6374a8aeb3e905640cc0e97e48a3ee49ae 100644 (file)
@@ -380,6 +380,7 @@ static struct platform_driver arizona_ldo1_driver = {
        .remove = arizona_ldo1_remove,
        .driver         = {
                .name   = "arizona-ldo1",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 596ecd8041cdc71e1fc6a32cfa1cf28f1b830f03..a9fdb342efcff39921488ac3c13ebdbcedd7a2f4 100644 (file)
@@ -365,6 +365,7 @@ static struct platform_driver arizona_micsupp_driver = {
        .probe = arizona_micsupp_probe,
        .driver         = {
                .name   = "arizona-micsupp",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index b6b9206969ae1cdfeb886f13dbd52c8b1df8a62f..0431a732cd785f27bb788c4d8ea23b557e31b8bf 100644 (file)
@@ -243,6 +243,7 @@ static int as3711_regulator_probe(struct platform_device *pdev)
 static struct platform_driver as3711_regulator_driver = {
        .driver = {
                .name   = "as3711-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = as3711_regulator_probe,
 };
index 7bebf9ce627199298d0b80182c19d09155439268..da378bfdba40662edcdaeb1b3a45c7ac86381d74 100644 (file)
@@ -831,6 +831,7 @@ MODULE_DEVICE_TABLE(of, of_as3722_regulator_match);
 static struct platform_driver as3722_regulator_driver = {
        .driver = {
                .name = "as3722-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_as3722_regulator_match,
        },
        .probe = as3722_regulator_probe,
index d260c442b788dd155e90fd25f1c744434a98ca86..943172b197226248c9a687038b7874e07729a287 100644 (file)
@@ -1364,6 +1364,7 @@ static struct platform_driver axp20x_regulator_driver = {
        .probe  = axp20x_regulator_probe,
        .driver = {
                .name           = "axp20x-regulator",
+               .probe_type     = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 65e23fc5f9c399fa15145c5534f57163decbeef4..9f0cda46b01506080ae5fa709104a8df4d174a8d 100644 (file)
@@ -354,6 +354,7 @@ static int bcm590xx_probe(struct platform_device *pdev)
 static struct platform_driver bcm590xx_regulator_driver = {
        .driver = {
                .name = "bcm590xx-vregs",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = bcm590xx_probe,
 };
index ba020a45f238e764e48a62af325329f34da81779..d469481d8442f1e5ed97baa9373aef052f3fb35d 100644 (file)
@@ -353,6 +353,7 @@ MODULE_DEVICE_TABLE(platform, bd9571mwv_regulator_id_table);
 static struct platform_driver bd9571mwv_regulator_driver = {
        .driver = {
                .name = "bd9571mwv-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .pm = DEV_PM_OPS,
        },
        .probe = bd9571mwv_regulator_probe,
index b0c225d98631c6b908cd04068cdcde0e596bf925..1fd79fb17303ce12e4ac45092747176718821937 100644 (file)
@@ -553,6 +553,7 @@ static struct platform_driver cpcap_regulator_driver = {
        .probe          = cpcap_regulator_probe,
        .driver         = {
                .name   = "cpcap-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(cpcap_regulator_id_table),
        },
 };
index 770e694824ac5e9d6d51150393e3faa41563e502..f79337079a456c3739c7b73e83e69927f6451a29 100644 (file)
@@ -471,6 +471,7 @@ static int da903x_regulator_probe(struct platform_device *pdev)
 static struct platform_driver da903x_regulator_driver = {
        .driver = {
                .name   = "da903x-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = da903x_regulator_probe,
 };
index 23fa429ebe760d71939624f7e017c50e2d89413a..ab6f5d61b17309d372e1924f3ed3f77cdbd73591 100644 (file)
@@ -438,6 +438,7 @@ static struct platform_driver da9052_regulator_driver = {
        .probe = da9052_regulator_probe,
        .driver = {
                .name = "da9052-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 73ff5fc7d8d76b2eb980422781ba3b0c2843ed85..8fd9ac7875888952c5184efa740afa249bbead9e 100644 (file)
@@ -576,6 +576,7 @@ static struct platform_driver da9055_regulator_driver = {
        .probe = da9055_regulator_probe,
        .driver = {
                .name = "da9055-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 1a6324001027522942a813efc8f67c4fbde5cd79..c28b061eef022a0fb74b9571b0bc9cd0c06ec849 100644 (file)
@@ -1033,6 +1033,7 @@ static int da9062_regulator_probe(struct platform_device *pdev)
 static struct platform_driver da9062_regulator_driver = {
        .driver = {
                .name = "da9062-regulators",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = da9062_regulator_probe,
 };
index 82f52a2a031ac597e1ac48a48e1182a3647ee527..e092e4df86ab1695cbc9542fe5dc6161c6f83a4c 100644 (file)
@@ -971,6 +971,7 @@ static int da9063_regulator_probe(struct platform_device *pdev)
 static struct platform_driver da9063_regulator_driver = {
        .driver = {
                .name = DA9063_DRVNAME_REGULATORS,
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = da9063_regulator_probe,
 };
index 7493af0b5c0403da71cdc11266514cfc296fdbe5..4332a3b8a6723cda46dc2e7527b864abebfefcd1 100644 (file)
@@ -221,6 +221,7 @@ MODULE_DEVICE_TABLE(i2c, da9210_i2c_id);
 static struct i2c_driver da9210_regulator_driver = {
        .driver = {
                .name = "da9210",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(da9210_dt_ids),
        },
        .probe_new = da9210_i2c_probe,
index 00828f5baa972a3d8bdf5f37583458fddd447009..a2b4f6f1e34b826bd14df7d6a71401a02a692ff7 100644 (file)
@@ -552,6 +552,7 @@ MODULE_DEVICE_TABLE(of, da9211_dt_ids);
 static struct i2c_driver da9211_regulator_driver = {
        .driver = {
                .name = "da9211",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(da9211_dt_ids),
        },
        .probe_new = da9211_i2c_probe,
index 0ce6ec4933af357bcd14dac88c7cb87dcb1ccdac..34c5e485d0af3a1a3b65f75dd64c09b927a18387 100644 (file)
@@ -479,6 +479,7 @@ static int db8500_regulator_remove(struct platform_device *pdev)
 static struct platform_driver db8500_regulator_driver = {
        .driver = {
                .name = "db8500-prcmu-regulators",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = db8500_regulator_probe,
        .remove = db8500_regulator_remove,
index 24e586f938554515b7fc1d33b444137d15fc9f2c..5b9b9e4e762d52151847bb1880377d51b04eeb9d 100644 (file)
@@ -60,6 +60,7 @@ static struct platform_driver dummy_regulator_driver = {
        .probe          = dummy_regulator_probe,
        .driver         = {
                .name           = "reg-dummy",
+               .probe_type     = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 529963a7e4f52b1e84ef3e51bfb05f461f40e320..d0c67876729407339884af547fa09fa3e678334c 100644 (file)
@@ -663,6 +663,7 @@ MODULE_DEVICE_TABLE(i2c, fan53555_id);
 static struct i2c_driver fan53555_regulator_driver = {
        .driver = {
                .name = "fan53555-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(fan53555_dt_ids),
        },
        .probe_new = fan53555_regulator_probe,
index 7c3add05be157bdafc4369f447d4e852360a8beb..e3436f49dea46b8878f24e342c8382f2ea722fb1 100644 (file)
@@ -334,6 +334,7 @@ static struct platform_driver regulator_fixed_voltage_driver = {
        .probe          = reg_fixed_voltage_probe,
        .driver         = {
                .name           = "reg-fixed-voltage",
+               .probe_type     = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(fixed_of_match),
        },
 };
index 7602d48609df8b232a2d320959266ed40997d08e..65927fa2ef161cdafef3f0334c6be6894b35fa4d 100644 (file)
@@ -368,6 +368,7 @@ static struct platform_driver gpio_regulator_driver = {
        .probe          = gpio_regulator_probe,
        .driver         = {
                .name           = "gpio-regulator",
+               .probe_type     = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(regulator_gpio_of_match),
        },
 };
index d144a4bdb76dabf15ba3f7386a3dabec59a42020..1b52423598d321e84760a1250dc47752e2ce220b 100644 (file)
@@ -579,6 +579,7 @@ static struct platform_driver hi6421_regulator_driver = {
        .id_table = hi6421_regulator_table,
        .driver = {
                .name   = "hi6421-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe  = hi6421_regulator_probe,
 };
index 988115f9b5949fcc87f280afd194c07ae0da7602..23924ff0c7b23390515999c86d44c69a7cf14f9f 100644 (file)
@@ -200,6 +200,7 @@ static struct platform_driver hi6421v530_regulator_driver = {
        .id_table = hi6421v530_regulator_table,
        .driver = {
                .name   = "hi6421v530-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe  = hi6421v530_regulator_probe,
 };
index 556bb73f33292b6136f712429d7f83f3bfdbf828..1d8211f635b771a147c6fd4d271d5ab6ecee23fd 100644 (file)
@@ -206,6 +206,7 @@ static struct platform_driver hi655x_regulator_driver = {
        .id_table = hi655x_regulator_table,
        .driver = {
                .name   = "hi655x-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe  = hi655x_regulator_probe,
 };
index b23b052eab10294157f766366ab8d217dce8a4f8..3c37c4de1d82105aa8c1cb3607a8c506e9294235 100644 (file)
@@ -147,6 +147,7 @@ MODULE_DEVICE_TABLE(i2c, isl6271a_id);
 static struct i2c_driver isl6271a_i2c_driver = {
        .driver = {
                .name = "isl6271a",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe_new = isl6271a_probe,
        .id_table = isl6271a_id,
index cfb765986d0d97d096b080e39a87bcf86c352b96..90bc8d054304a3adb30f21865314d75d7b4d6578 100644 (file)
@@ -195,6 +195,7 @@ MODULE_DEVICE_TABLE(i2c, isl9305_i2c_id);
 static struct i2c_driver isl9305_regulator_driver = {
        .driver = {
                .name = "isl9305",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(isl9305_dt_ids),
        },
        .probe_new = isl9305_i2c_probe,
index 4b9f618b07e971682a5704c83f78e5632952b6f8..7531b2c37f959b031a3f8ecf4714c4c818885e45 100644 (file)
@@ -355,6 +355,7 @@ static struct platform_driver lm363x_regulator_driver = {
        .probe = lm363x_regulator_probe,
        .driver = {
                .name = "lm363x-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 8be252f81b091c88282123d37c13a52a5007927e..e06f2a092b8935e49c701fe6f3b6d163d27bef37 100644 (file)
@@ -447,6 +447,7 @@ MODULE_DEVICE_TABLE(i2c, lp3971_i2c_id);
 static struct i2c_driver lp3971_i2c_driver = {
        .driver = {
                .name = "LP3971",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe_new = lp3971_i2c_probe,
        .id_table = lp3971_i2c_id,
index 27b216bf18fcac0edaa72be67e99cae57373ea4a..edacca8e14af6b29a886dece71343d9dc8707eda 100644 (file)
@@ -545,6 +545,7 @@ MODULE_DEVICE_TABLE(i2c, lp3972_i2c_id);
 static struct i2c_driver lp3972_i2c_driver = {
        .driver = {
                .name = "lp3972",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe_new = lp3972_i2c_probe,
        .id_table = lp3972_i2c_id,
index 26ed989460c07d44bf4b7e08192c6723bd436e2b..a8b0969d4f31e84f74810813b41c1f96280ebd69 100644 (file)
@@ -944,6 +944,7 @@ MODULE_DEVICE_TABLE(i2c, lp872x_ids);
 static struct i2c_driver lp872x_driver = {
        .driver = {
                .name = "lp872x",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(lp872x_dt_ids),
        },
        .probe_new = lp872x_probe,
index d6e597922cb5a71a5c18b3e1bcbadbc022487e03..8dfdd1db20709e18f1b20dda88f67a8d8e0560e0 100644 (file)
@@ -187,6 +187,7 @@ MODULE_DEVICE_TABLE(platform, lp873x_regulator_id_table);
 static struct platform_driver lp873x_regulator_driver = {
        .driver = {
                .name = "lp873x-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = lp873x_regulator_probe,
        .id_table = lp873x_regulator_id_table,
index 467dfdcebc9116eb24eb5418ff24b59c562899a9..37b51b94fb5a4bd9f67f8bfb65a0ea46edd912ec 100644 (file)
@@ -440,6 +440,7 @@ MODULE_DEVICE_TABLE(i2c, lp8755_id);
 static struct i2c_driver lp8755_i2c_driver = {
        .driver = {
                   .name = LP8755_NAME,
+                  .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                   },
        .probe_new = lp8755_probe,
        .remove = lp8755_remove,
index d059ae85047a08152d01db4aed255c3e7d2ee696..bdb60d8a7f3d24e6a6804d40a0f79c990393bf1a 100644 (file)
@@ -237,6 +237,7 @@ MODULE_DEVICE_TABLE(platform, lp87565_regulator_id_table);
 static struct platform_driver lp87565_regulator_driver = {
        .driver = {
                .name = "lp87565-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = lp87565_regulator_probe,
        .id_table = lp87565_regulator_id_table,
index 74b7b496b12d2cdbdcbc94a9df9729cfd9d09bc9..e97ade09dede4b4f900067e4d9b7b1efba9c58a6 100644 (file)
@@ -531,6 +531,7 @@ static struct platform_driver lp8788_buck_driver = {
        .probe = lp8788_buck_probe,
        .driver = {
                .name = LP8788_DEV_BUCK,
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 00e9bb92c326b223a769328713e533010f87bb3b..8e45b7b99556a6740ccf7ad9d0a35252269cab1c 100644 (file)
@@ -564,6 +564,7 @@ static struct platform_driver lp8788_dldo_driver = {
        .probe = lp8788_dldo_probe,
        .driver = {
                .name = LP8788_DEV_DLDO,
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
@@ -611,6 +612,7 @@ static struct platform_driver lp8788_aldo_driver = {
        .probe = lp8788_aldo_probe,
        .driver = {
                .name = LP8788_DEV_ALDO,
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 460d34c50fb0ac07308e6fe20032698d319ae58c..359b534d8c70f762e2e9170b2f2f6efb21351f0a 100644 (file)
@@ -474,6 +474,7 @@ MODULE_DEVICE_TABLE(of, ltc3589_of_match);
 static struct i2c_driver ltc3589_driver = {
        .driver = {
                .name = DRIVER_NAME,
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(ltc3589_of_match),
        },
        .probe_new = ltc3589_probe,
index eb3d6bed6d54cd94a208242e5a3c3ee0e924ef9f..a28e6c3460f167e3f6a8c57b321bfd6c9caed110 100644 (file)
@@ -371,6 +371,7 @@ MODULE_DEVICE_TABLE(of, ltc3676_of_match);
 static struct i2c_driver ltc3676_driver = {
        .driver = {
                .name = DRIVER_NAME,
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(ltc3676_of_match),
        },
        .probe_new = ltc3676_regulator_probe,
index e34face736f4876a2695ee610c810f7514cb4511..5e7171b9065ae7a2e82253ae3ac23ea99975fccc 100644 (file)
@@ -241,6 +241,7 @@ MODULE_DEVICE_TABLE(platform, max14577_regulator_id);
 static struct platform_driver max14577_regulator_driver = {
        .driver = {
                   .name = "max14577-regulator",
+                  .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                   },
        .probe          = max14577_regulator_probe,
        .id_table       = max14577_regulator_id,
index a00aa2e8ff3f3c87c5b21c665e1e1cd173cfb891..5d8852b2c168c1112ed78eb4f6ad575928509353 100644 (file)
@@ -292,6 +292,7 @@ static struct i2c_driver max1586_pmic_driver = {
        .probe_new = max1586_pmic_probe,
        .driver         = {
                .name   = "max1586",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(max1586_of_match),
        },
        .id_table       = max1586_id,
index 3cf8f085170a0a482e063855b40f9fe7e2f6b4a8..7bc87d8e9f686651067b443c06d0791557e1d1e6 100644 (file)
@@ -916,6 +916,7 @@ static struct platform_driver max77620_regulator_driver = {
        .id_table = max77620_regulator_devtype,
        .driver = {
                .name = "max77620-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .pm = &max77620_regulator_pm_ops,
        },
 };
index 55a07d3f3ee29fdc428fb94cf38bc76c5a939e9a..c7b270fd9e0cf28c764c03ec8434da6d451033d8 100644 (file)
@@ -525,6 +525,7 @@ MODULE_DEVICE_TABLE(platform, max77686_pmic_id);
 static struct platform_driver max77686_pmic_driver = {
        .driver = {
                .name = "max77686-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = max77686_pmic_probe,
        .id_table = max77686_pmic_id,
index 077ecbbfdf762904fe2663ee1bf01926eec3d011..72a67d0c5f1e892db0498f1e87ccaf8f6bfaa7bc 100644 (file)
@@ -281,6 +281,7 @@ MODULE_DEVICE_TABLE(platform, max77693_pmic_id);
 static struct platform_driver max77693_pmic_driver = {
        .driver = {
                   .name = "max77693-pmic",
+                  .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                   },
        .probe = max77693_pmic_probe,
        .id_table = max77693_pmic_id,
index befe5f319819bba12cf741fe4e7cdac16e808de2..69eb6abd255148af91f78506d0e918eaf74fbff6 100644 (file)
@@ -554,6 +554,7 @@ MODULE_DEVICE_TABLE(platform, max77802_pmic_id);
 static struct platform_driver max77802_pmic_driver = {
        .driver = {
                .name = "max77802-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = max77802_pmic_probe,
        .id_table = max77802_pmic_id,
index aed5443d88e1fcb82d82da977b5a500d92f21efd..a517fb4e3669b184716338ecbd3a9e0c9211f2e6 100644 (file)
@@ -249,6 +249,7 @@ static struct i2c_driver max8649_driver = {
        .probe_new      = max8649_regulator_probe,
        .driver         = {
                .name   = "max8649",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .id_table       = max8649_id,
 };
index 711623be8eb5c39f0ce6b0266d31d5554a7824fd..d6b89f07ae9ebab56ad6671b1819ab2742024f6a 100644 (file)
@@ -506,6 +506,7 @@ static struct i2c_driver max8660_driver = {
        .probe_new = max8660_probe,
        .driver         = {
                .name   = "max8660",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .id_table       = max8660_id,
 };
index 1a6fd68f3fb1c0ce2a6cd0cd6c995b45af7ea211..e59aa7a3ee5460f7c98153c47ec083afb456d0ee 100644 (file)
@@ -372,6 +372,7 @@ static int max8907_regulator_probe(struct platform_device *pdev)
 static struct platform_driver max8907_regulator_driver = {
        .driver = {
                   .name = "max8907-regulator",
+                  .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                   },
        .probe = max8907_regulator_probe,
 };
index d953b6b0db774bff19b66cab747c152bce6e4386..c1532db0a4ee43c2d9586c6736d7dedaedb462ef 100644 (file)
@@ -263,6 +263,7 @@ static int max8925_regulator_probe(struct platform_device *pdev)
 static struct platform_driver max8925_regulator_driver = {
        .driver         = {
                .name   = "max8925-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = max8925_regulator_probe,
 };
index 360a33ecc093d205e7e071dd14345be7ef066356..8ad8fe7fd263e85f89754a437287d5e526270103 100644 (file)
@@ -316,6 +316,7 @@ static struct i2c_driver max8952_pmic_driver = {
        .probe_new      = max8952_pmic_probe,
        .driver         = {
                .name   = "max8952",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(max8952_dt_match),
        },
        .id_table       = max8952_ids,
index 7e00a45db26a31cfb048c05c45a445b100919a8d..e6dc3d40da3d9883caec06db55f102f38439d015 100644 (file)
@@ -804,6 +804,7 @@ MODULE_DEVICE_TABLE(i2c, max8973_id);
 static struct i2c_driver max8973_i2c_driver = {
        .driver = {
                .name = "max8973",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_max8973_match_tbl,
        },
        .probe_new = max8973_probe,
index 829c3d9542afc96ebab7e2e9bde732916da3ffec..0b38eaa73597ebbecacbc5f6353308919504c637 100644 (file)
@@ -1197,6 +1197,7 @@ MODULE_DEVICE_TABLE(platform, max8997_pmic_id);
 static struct platform_driver max8997_pmic_driver = {
        .driver = {
                .name = "max8997-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = max8997_pmic_probe,
        .id_table = max8997_pmic_id,
index 7f254066237d72f97b9d18bc633466e1d14bfc64..fadb4717384ab6c8206004c4c7470d51f2407cee 100644 (file)
@@ -803,6 +803,7 @@ MODULE_DEVICE_TABLE(platform, max8998_pmic_id);
 static struct platform_driver max8998_pmic_driver = {
        .driver = {
                .name = "max8998-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = max8998_pmic_probe,
        .id_table = max8998_pmic_id,
index ab558b26cd7cf0badabee6b8625062fa0f465be7..fb3aa1cec1f29f796c2ed50e4744e30c6a09c044 100644 (file)
@@ -455,6 +455,7 @@ static int mc13783_regulator_probe(struct platform_device *pdev)
 static struct platform_driver mc13783_regulator_driver = {
        .driver = {
                .name   = "mc13783-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = mc13783_regulator_probe,
 };
index 5221f7a9df91c1644f986bcdf57b4af520516f50..b29cf6ba6f12cedc753e07aad2c4b8df5ce66e65 100644 (file)
@@ -629,6 +629,7 @@ err_unlock:
 static struct platform_driver mc13892_regulator_driver = {
        .driver = {
                .name   = "mc13892-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe  = mc13892_regulator_probe,
 };
index 69e6af3cd505f46eab87710065c78b7ea4dd89ec..a9f0c9f725d42f5e855343b10990634e4a488f2f 100644 (file)
@@ -151,6 +151,7 @@ MODULE_DEVICE_TABLE(of, mt6311_dt_ids);
 static struct i2c_driver mt6311_regulator_driver = {
        .driver = {
                .name = "mt6311",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(mt6311_dt_ids),
        },
        .probe_new = mt6311_i2c_probe,
index ff9016170db37482efe22115de0ef9fe64d76fe7..b43da848a06e5e221ea40ffd0ee5a6b715872d34 100644 (file)
@@ -409,6 +409,7 @@ MODULE_DEVICE_TABLE(platform, mt6323_platform_ids);
 static struct platform_driver mt6323_regulator_driver = {
        .driver = {
                .name = "mt6323-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = mt6323_regulator_probe,
        .id_table = mt6323_platform_ids,
index 43234296df369ffdb52ad19c8a4d4f38d4bb7855..83e50df7f7c3b43b29bb65d79f6bd812dcaa2d9e 100644 (file)
@@ -328,6 +328,7 @@ MODULE_DEVICE_TABLE(of, mt6380_of_match);
 static struct platform_driver mt6380_regulator_driver = {
        .driver = {
                .name = "mt6380-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(mt6380_of_match),
        },
        .probe = mt6380_regulator_probe,
index 526acc8fbe8076fa9b85b235751cd3683c0e3d8b..92a2d92f84f946a86c6f3675b555df5cc35ca358 100644 (file)
@@ -406,6 +406,7 @@ MODULE_DEVICE_TABLE(of, mt6397_of_match);
 static struct platform_driver mt6397_regulator_driver = {
        .driver = {
                .name = "mt6397-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(mt6397_of_match),
        },
        .probe = mt6397_regulator_probe,
index 337dd614695e4d14f0125841d0c7e7e02ed01a7e..076966366b60ba48d07a2cc142b391f7b7051887 100644 (file)
@@ -1666,6 +1666,7 @@ static int palmas_regulators_probe(struct platform_device *pdev)
 static struct platform_driver palmas_driver = {
        .driver = {
                .name = "palmas-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_palmas_match_tbl,
        },
        .probe = palmas_regulators_probe,
index 4eccf12f39de59c3ff49b5315a67bac333c6b2fc..0c9873e9abdcf4cdf5ce44a2078ee861b9929a68 100644 (file)
@@ -231,6 +231,7 @@ static struct platform_driver pbias_regulator_driver = {
        .probe          = pbias_regulator_probe,
        .driver         = {
                .name           = "pbias-regulator",
+               .probe_type     = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(pbias_of_match),
        },
 };
index 0345f38f6f78838e9141aff44c381fae1f6ea503..319a884121548c28fc5989315ccda6dd4fbd162d 100644 (file)
@@ -251,6 +251,7 @@ static int pcap_regulator_probe(struct platform_device *pdev)
 static struct platform_driver pcap_regulator_driver = {
        .driver = {
                .name   = "pcap-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe  = pcap_regulator_probe,
 };
index f40e3bb303d691b2fe683bc2001d748a7db2834c..9f08a62c800e2cc9532cde32e9324af4ba85dcab 100644 (file)
@@ -101,6 +101,7 @@ static int pcf50633_regulator_probe(struct platform_device *pdev)
 static struct platform_driver pcf50633_regulator_driver = {
        .driver = {
                .name = "pcf50633-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = pcf50633_regulator_probe,
 };
index 9ab604289b5cf32fbe50d08a896b042bdbf49a01..a9fcf6a41494a640357e31a09055ff3fc3358334 100644 (file)
@@ -845,6 +845,7 @@ static int pfuze100_regulator_probe(struct i2c_client *client)
 static struct i2c_driver pfuze_driver = {
        .driver = {
                .name = "pfuze100-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = pfuze_dt_ids,
        },
        .probe_new = pfuze100_regulator_probe,
index 48238846f45c8358ac5bb529ba82a602da6201bf..f170e0dd18198562c0e00a71ccf195a2ffc704e0 100644 (file)
@@ -376,6 +376,7 @@ MODULE_DEVICE_TABLE(of, pv88060_dt_ids);
 static struct i2c_driver pv88060_regulator_driver = {
        .driver = {
                .name = "pv88060",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(pv88060_dt_ids),
        },
        .probe_new = pv88060_i2c_probe,
index 15a67c05f519439511c4b356d6cde895a566ffb9..133b89d5215c0d42d0be7fe22957629ba3c65682 100644 (file)
@@ -557,6 +557,7 @@ MODULE_DEVICE_TABLE(i2c, pv88080_i2c_id);
 static struct i2c_driver pv88080_regulator_driver = {
        .driver = {
                .name = "pv88080",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(pv88080_dt_ids),
        },
        .probe_new = pv88080_i2c_probe,
index a80176bdf8ec0fec414352bf50965da83fd1a500..1bc33bc1099288caa595cc3e99aa748b0f73905b 100644 (file)
@@ -397,6 +397,7 @@ MODULE_DEVICE_TABLE(of, pv88090_dt_ids);
 static struct i2c_driver pv88090_regulator_driver = {
        .driver = {
                .name = "pv88090",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(pv88090_dt_ids),
        },
        .probe_new = pv88090_i2c_probe,
index 214ea866742d899619bd016516653569918a97ad..b64d99695b84dcb376fe7973676e1b433d322785 100644 (file)
@@ -393,6 +393,7 @@ MODULE_DEVICE_TABLE(of, pwm_of_match);
 static struct platform_driver pwm_regulator_driver = {
        .driver = {
                .name           = "pwm-regulator",
+               .probe_type     = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(pwm_of_match),
        },
        .probe = pwm_regulator_probe,
index 3c41b71a1f5298004ea7bceeb82d99ed2310ed23..f95bc9208c135302a5c35931e6f42e57a91a34c4 100644 (file)
@@ -991,6 +991,7 @@ static struct platform_driver rpm_reg_driver = {
        .probe          = rpm_reg_probe,
        .driver  = {
                .name  = "qcom_rpm_reg",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(rpm_of_match),
        },
 };
index 9f2b58458841e16ea508b9050ca6ba7be4f488b0..6f722b2d682ecbf8f2b7eec20b3c725635ea128e 100644 (file)
@@ -1440,6 +1440,7 @@ static struct platform_driver rpm_reg_driver = {
        .probe = rpm_reg_probe,
        .driver = {
                .name  = "qcom_rpm_smd_regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = rpm_of_match,
        },
 };
index 3e312729741e766b37859094e69694ad516d631a..c95f6e9c7ab5709ac297273f553c8dfbc654bb33 100644 (file)
@@ -2484,6 +2484,7 @@ static int qcom_spmi_regulator_probe(struct platform_device *pdev)
 static struct platform_driver qcom_spmi_regulator_driver = {
        .driver         = {
                .name   = "qcom-spmi-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = qcom_spmi_regulator_match,
        },
        .probe          = qcom_spmi_regulator_probe,
index 62641b08b88a6d05997350a36efd134c0fcf334c..a5afca73715dd8fd406cd80680345260b91b7d8b 100644 (file)
@@ -149,6 +149,7 @@ skip_ext_pwr_config:
 static struct platform_driver rc5t583_regulator_driver = {
        .driver = {
                .name   = "rc5t583-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = rc5t583_regulator_probe,
 };
index fa9fc1aa1ae3f9b44e984e3947085f155b81add4..3637e81654a8ecaa9b31db3ae2133a36f6aa52df 100644 (file)
@@ -1354,7 +1354,8 @@ static int rk808_regulator_probe(struct platform_device *pdev)
 static struct platform_driver rk808_regulator_driver = {
        .probe = rk808_regulator_probe,
        .driver = {
-               .name = "rk808-regulator"
+               .name = "rk808-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 5c12d57be0405dcf6da00f8d0e941d2dfc997293..91808e0735b32845fe13d7391e6b4f9ded2b828d 100644 (file)
@@ -143,6 +143,7 @@ static struct platform_driver rn5t618_regulator_driver = {
        .probe = rn5t618_regulator_probe,
        .driver = {
                .name   = "rn5t618-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index da4cf5a6acc20ff5864732fc554b8b079d37ccb3..2ba74f2055433915031d8f07c4cb87e9e2bdc459 100644 (file)
@@ -124,6 +124,7 @@ MODULE_DEVICE_TABLE(platform, rt5033_regulator_id);
 static struct platform_driver rt5033_regulator_driver = {
        .driver = {
                .name = "rt5033-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = rt5033_regulator_probe,
        .id_table       = rt5033_regulator_id,
index 28b424fe7bea7a4e5decab61577152da27a2664d..b147ff6a16b192bdde7afc7df547ac82cf314209 100644 (file)
@@ -376,6 +376,7 @@ MODULE_DEVICE_TABLE(platform, s2mpa01_pmic_id);
 static struct platform_driver s2mpa01_pmic_driver = {
        .driver = {
                .name = "s2mpa01-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = s2mpa01_pmic_probe,
        .id_table = s2mpa01_pmic_id,
index ebc67e3ddd4f6a3c1fa9aadc3a7155b748e78ef9..570b61420f3acb954c81ddf062eadc6b8e65f57f 100644 (file)
@@ -1238,6 +1238,7 @@ MODULE_DEVICE_TABLE(platform, s2mps11_pmic_id);
 static struct platform_driver s2mps11_pmic_driver = {
        .driver = {
                .name = "s2mps11-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = s2mps11_pmic_probe,
        .id_table = s2mps11_pmic_id,
index 3122ca7de8f5a8b02911f48cbd965626b25282c7..bfc0e143bf402336bf92d6e5d0f769af65a470eb 100644 (file)
@@ -999,6 +999,7 @@ MODULE_DEVICE_TABLE(platform, s5m8767_pmic_id);
 static struct platform_driver s5m8767_pmic_driver = {
        .driver = {
                .name = "s5m8767-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = s5m8767_pmic_probe,
        .id_table = s5m8767_pmic_id,
index 37658affe072de82affce1d68ee7a6e0ca6e5063..359e83e37d2d354ee64b9878c9e901905a5fc75c 100644 (file)
@@ -79,6 +79,7 @@ static int sky81452_reg_probe(struct platform_device *pdev)
 static struct platform_driver sky81452_reg_driver = {
        .driver = {
                .name = "sky81452-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = sky81452_reg_probe,
 };
index 7a454b7b6eab9958ad28ef2ba09739f3b893ce2c..f5ccc7dd309a24c8d64b6cd704a685386cef00fc 100644 (file)
@@ -285,6 +285,7 @@ static struct platform_driver stm32_vrefbuf_driver = {
        .remove = stm32_vrefbuf_remove,
        .driver = {
                .name  = "stm32-vrefbuf",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(stm32_vrefbuf_of_match),
                .pm = &stm32_vrefbuf_pm_ops,
        },
index 127ab43add496e0f666f4ffe9cfdc9ff50d36262..3958d906bd77bb6e8ae966163e43b962c2693a53 100644 (file)
@@ -95,6 +95,7 @@ static const struct of_device_id stw481x_vmmc_match[] = {
 static struct platform_driver stw481x_vmmc_regulator_driver = {
        .driver = {
                .name  = "stw481x-vmmc-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = stw481x_vmmc_match,
        },
        .probe = stw481x_vmmc_regulator_probe,
index 115345e9fdedcc46fb1c42d4fffbe217584485b2..86d2d80b4b41bc05fa719a03d353ada0a75fe368 100644 (file)
@@ -865,6 +865,7 @@ static struct platform_driver ti_abb_driver = {
        .probe = ti_abb_probe,
        .driver = {
                   .name = "ti_abb",
+                  .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                   .of_match_table = of_match_ptr(ti_abb_of_match),
                   },
 };
index 152c5ad6709c23dbf15f98763b5feaba2fea388b..9bd4e72914ed426d5ccb162e052d04fc58bb10df 100644 (file)
@@ -351,6 +351,7 @@ MODULE_DEVICE_TABLE(i2c, tps51632_id);
 static struct i2c_driver tps51632_i2c_driver = {
        .driver = {
                .name = "tps51632",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(tps51632_of_match),
        },
        .probe_new = tps51632_probe,
index a6469fe05635cf294bfa7112eea0018da9f14fc3..a09c6ae6a0cea2cc6bf5a2cc5970b0b8c0e9ca52 100644 (file)
@@ -93,6 +93,7 @@ static int tps6105x_regulator_probe(struct platform_device *pdev)
 static struct platform_driver tps6105x_regulator_driver = {
        .driver = {
                .name  = "tps6105x-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = tps6105x_regulator_probe,
 };
index a7019e869f5074741dc7d073d674ec690ab79cd0..65cc08d1a67d644d34cc0f39d5246995aa9f9a1f 100644 (file)
@@ -488,6 +488,7 @@ MODULE_DEVICE_TABLE(i2c, tps62360_id);
 static struct i2c_driver tps62360_i2c_driver = {
        .driver = {
                .name = "tps62360",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(tps62360_of_match),
        },
        .probe_new = tps62360_probe,
index 680a57ff0837c78bc33a54a057013bcfbdc12bf4..d87cac63f346a8af13b47c3e18ec005a8c414a06 100644 (file)
@@ -334,6 +334,7 @@ MODULE_DEVICE_TABLE(i2c, tps_65023_id);
 static struct i2c_driver tps_65023_i2c_driver = {
        .driver = {
                .name = "tps65023",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(tps65023_of_match),
        },
        .probe_new = tps_65023_probe,
index b83816ee6867852b27df8cae2dbbc7841e22a5c1..6655d9c31187e3ddeeec33e81b1c06cd3280f79c 100644 (file)
@@ -438,6 +438,7 @@ static int tps6507x_pmic_probe(struct platform_device *pdev)
 static struct platform_driver tps6507x_pmic_driver = {
        .driver = {
                .name = "tps6507x-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = tps6507x_pmic_probe,
 };
index f1bc54c825dd21a4f8154402d56284f3675a2d1b..663789198ba58bfc7b2c552f4a171391e34da2a0 100644 (file)
@@ -235,6 +235,7 @@ MODULE_DEVICE_TABLE(platform, tps65086_regulator_id_table);
 static struct platform_driver tps65086_regulator_driver = {
        .driver = {
                .name = "tps65086-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = tps65086_regulator_probe,
        .id_table = tps65086_regulator_id_table,
index 1d2e04f452d4408e009cb3036b4f6cdfaa92dec7..8f916ee366e5136a519e404462bf3c262baa0add 100644 (file)
@@ -511,6 +511,7 @@ static int tps65090_regulator_probe(struct platform_device *pdev)
 static struct platform_driver tps65090_regulator_driver = {
        .driver = {
                .name   = "tps65090-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = tps65090_regulator_probe,
 };
index 0edc83089ba2b524a70d4eabf9a2e84b820899c7..d4b02ee791d1386d0dce1ac2873e7cf87f28a29c 100644 (file)
@@ -270,6 +270,7 @@ MODULE_DEVICE_TABLE(i2c, tps65132_id);
 static struct i2c_driver tps65132_i2c_driver = {
        .driver = {
                .name = "tps65132",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe_new = tps65132_probe,
        .id_table = tps65132_id,
index 6bb5b02e19e259bcd8707ed4f007513e8df82973..b167ba22fe165e82b227c2cf56c8310dd29a2f39 100644 (file)
@@ -258,6 +258,7 @@ static int tps65217_regulator_probe(struct platform_device *pdev)
 static struct platform_driver tps65217_regulator_driver = {
        .driver = {
                .name = "tps65217-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = tps65217_regulator_probe,
 };
index 48809c3b3abc826f297133ebe8b8bb53c426294f..13985883e5f0591360bcbb24e8fdd6fc09217682 100644 (file)
@@ -349,6 +349,7 @@ MODULE_DEVICE_TABLE(platform, tps65218_regulator_id_table);
 static struct platform_driver tps65218_regulator_driver = {
        .driver = {
                .name = "tps65218-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = tps65218_regulator_probe,
        .id_table = tps65218_regulator_id_table,
index 740aeccdfb1ff53d0c0a77e685f9031b451eac0d..3fee7e38c68bc9b149ad07fab5c921fe1a92f9cf 100644 (file)
@@ -628,6 +628,7 @@ static struct spi_driver pmic_driver = {
        .probe          = pmic_probe,
        .driver         = {
                .name   = "tps6524x",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index 18bf4b885b0881cb9f3ad1fb3d1706734212245c..1ab5767590f39b735b0d0c2f40e450f82d4ff1ea 100644 (file)
@@ -520,6 +520,7 @@ static int tps6586x_regulator_probe(struct platform_device *pdev)
 static struct platform_driver tps6586x_regulator_driver = {
        .driver = {
                .name   = "tps6586x-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe          = tps6586x_regulator_probe,
 };
index 06cbe60c990f96bb569fe996092c9686c3aae709..2a0965ba1570db259deb292c074bf6fc5ab89c4d 100644 (file)
@@ -1255,6 +1255,7 @@ static void tps65910_shutdown(struct platform_device *pdev)
 static struct platform_driver tps65910_driver = {
        .driver = {
                .name = "tps65910-pmic",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = tps65910_probe,
        .shutdown = tps65910_shutdown,
index 76f90202ae0950c1b1450fff2fce20913f4c5cf3..7ff7877a2e09a9acdb73abadaee33b829635787a 100644 (file)
@@ -150,6 +150,7 @@ MODULE_DEVICE_TABLE(platform, tps65912_regulator_id_table);
 static struct platform_driver tps65912_regulator_driver = {
        .driver = {
                .name = "tps65912-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = tps65912_regulator_probe,
        .id_table = tps65912_regulator_id_table,
index e2a20d5121529b11ab80e364d481dd14e51cde9e..3e724f5345deb2e22cf314007bf3ec6b250b8fba 100644 (file)
@@ -656,6 +656,7 @@ static struct platform_driver twlreg_driver = {
         */
        .driver  = {
                .name  = "twl4030_reg",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(twl_of_match),
        },
 };
index d94e61aa1b84f2d998b61f00c9c5f7afd283e780..f9c695f9bde80ee86b74f67cc51232a7afeecce1 100644 (file)
@@ -765,6 +765,7 @@ static struct platform_driver twlreg_driver = {
         */
        .driver  = {
                .name  = "twl6030_reg",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(twl_of_match),
        },
 };
index 402c8037cf39f6a822314fd2e2fe3aea3a901bba..97f075ed68c95ad343823b197d87b691379d08da 100644 (file)
@@ -216,6 +216,7 @@ static struct platform_driver regulator_userspace_consumer_driver = {
        .remove         = regulator_userspace_consumer_remove,
        .driver         = {
                .name           = "reg-userspace-consumer",
+               .probe_type     = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = regulator_userspace_consumer_of_match,
        },
 };
index aac7be3b33f7c70119322edaf792376a40a0b79c..85dca90233f6ff223161d0770e9e097ab06bbb81 100644 (file)
@@ -543,6 +543,7 @@ static struct platform_driver vctrl_driver = {
        .probe          = vctrl_probe,
        .driver         = {
                .name           = "vctrl-regulator",
+               .probe_type     = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(vctrl_of_match),
        },
 };
index 5d39663efcaad1d86fd4d83f9b0f3c2d12381d47..b545dbc70a4d6f052a67872028a0c3eddc21e8b5 100644 (file)
@@ -88,6 +88,7 @@ static struct platform_driver vexpress_regulator_driver = {
        .probe = vexpress_regulator_probe,
        .driver = {
                .name = DRVNAME,
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = vexpress_regulator_of_match,
        },
 };
index 5d32628a5011d13b77ec7e0772a58b32369d8a9a..d5a160efdae64f2439ef17f0bba20b0dea7eccbe 100644 (file)
@@ -362,6 +362,7 @@ static struct platform_driver regulator_virtual_consumer_driver = {
        .remove         = regulator_virtual_remove,
        .driver         = {
                .name           = "reg-virt-consumer",
+               .probe_type     = PROBE_PREFER_ASYNCHRONOUS,
                .of_match_table = of_match_ptr(regulator_virtual_consumer_of_match),
        },
 };
index e43ed4d93f71afad8f40ae2047d65619ac5aa6e1..834d7c181971db53a0f2c9b723c9a6a273eceffb 100644 (file)
@@ -505,6 +505,7 @@ static struct platform_driver wm831x_buckv_driver = {
        .probe = wm831x_buckv_probe,
        .driver         = {
                .name   = "wm831x-buckv",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
@@ -632,6 +633,7 @@ static struct platform_driver wm831x_buckp_driver = {
        .probe = wm831x_buckp_probe,
        .driver         = {
                .name   = "wm831x-buckp",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
@@ -747,6 +749,7 @@ static struct platform_driver wm831x_boostp_driver = {
        .probe = wm831x_boostp_probe,
        .driver         = {
                .name   = "wm831x-boostp",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
@@ -822,6 +825,7 @@ static struct platform_driver wm831x_epe_driver = {
        .probe = wm831x_epe_probe,
        .driver         = {
                .name   = "wm831x-epe",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index eade3ae3e33317d0a4ff4057527f88f20b849391..ed5e191e8896b009fd06a01f33947f16759f093a 100644 (file)
@@ -189,6 +189,7 @@ static struct platform_driver wm831x_isink_driver = {
        .probe = wm831x_isink_probe,
        .driver         = {
                .name   = "wm831x-isink",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index e091b189ecc0200537a6c614091b43701cf85030..76b89b1cd519cbd744f9977f6f985bd7ac6a82c0 100644 (file)
@@ -303,6 +303,7 @@ static struct platform_driver wm831x_gp_ldo_driver = {
        .probe = wm831x_gp_ldo_probe,
        .driver         = {
                .name   = "wm831x-ldo",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
@@ -512,6 +513,7 @@ static struct platform_driver wm831x_aldo_driver = {
        .probe = wm831x_aldo_probe,
        .driver         = {
                .name   = "wm831x-aldo",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
@@ -645,6 +647,7 @@ static struct platform_driver wm831x_alive_ldo_driver = {
        .probe = wm831x_alive_ldo_probe,
        .driver         = {
                .name   = "wm831x-alive-ldo",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index b1d5aac8917de5c6a8a5d9bb46323845d6aa2170..1445bafcab40bf1f2ba3734ced51956c47964868 100644 (file)
@@ -1309,6 +1309,7 @@ static struct platform_driver wm8350_regulator_driver = {
        .remove = wm8350_regulator_remove,
        .driver         = {
                .name   = "wm8350-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };
 
index e9fd1370772131315dfe1222d18c8b5167f785a9..c4a229f66dec9014d6b50279338d8e51a29d6c85 100644 (file)
@@ -223,6 +223,7 @@ static int wm8400_regulator_probe(struct platform_device *pdev)
 static struct platform_driver wm8400_regulator_driver = {
        .driver = {
                .name = "wm8400-regulator",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
        .probe = wm8400_regulator_probe,
 };
index 40befdd9dfa922bf5878f2d46bc9bf6cec413223..8921051a00e92a2fd2b6a7250ba6f53bf4ca15c4 100644 (file)
@@ -227,6 +227,7 @@ static struct platform_driver wm8994_ldo_driver = {
        .probe = wm8994_ldo_probe,
        .driver         = {
                .name   = "wm8994-ldo",
+               .probe_type = PROBE_PREFER_ASYNCHRONOUS,
        },
 };