Mark Brown [off-list ref] 於 2020年8月20日 週四 下午7:45寫道:
On Thu, Aug 20, 2020 at 03:53:41PM +0800, Gene Chen wrote:
quoted
+ mrd->regmap = dev_get_regmap(pdev->dev.parent, NULL);
+ if (!mrd->regmap) {
+ dev_err(&pdev->dev, "Failed to get parent regmap\n");
+ return -ENODEV;
+ }
quoted
+static const struct of_device_id __maybe_unused mt6360_regulator_of_id[] = {
+ { .compatible = "mediatek,mt6360-regulator", },
+ {},
+};
+MODULE_DEVICE_TABLE(of, mt6360_regulator_of_id);
This device only exists in the context of a single parent device, there
should be no need for a compatible string here - this is just a detail
of how Linux does things. The MFD should just instntiate the platform
device.
Trying to autoload module without of_id_table will cause run-time error:
ueventd: LoadWithAliases was unable to load
of:NregulatorT(null)Cmediatek,mt6360-regulator
https://lore.kernel.org/patchwork/patch/726691/
According to this patch, autoload can't load module which doesn't
include add id_table or of_id_table in module.alias
So I need keep of_if_table for auto load success