|
@@ -259,11 +259,11 @@ static int rockchip_efuse_probe(struct platform_device *pdev)
|
|
|
struct resource *res;
|
|
|
struct nvmem_device *nvmem;
|
|
|
struct rockchip_efuse_chip *efuse;
|
|
|
- const struct of_device_id *match;
|
|
|
+ const void *data;
|
|
|
struct device *dev = &pdev->dev;
|
|
|
|
|
|
- match = of_match_device(dev->driver->of_match_table, dev);
|
|
|
- if (!match || !match->data) {
|
|
|
+ data = of_device_get_match_data(dev);
|
|
|
+ if (!data) {
|
|
|
dev_err(dev, "failed to get match data\n");
|
|
|
return -EINVAL;
|
|
|
}
|
|
@@ -286,7 +286,7 @@ static int rockchip_efuse_probe(struct platform_device *pdev)
|
|
|
if (of_property_read_u32(dev->of_node, "rockchip,efuse-size",
|
|
|
&econfig.size))
|
|
|
econfig.size = resource_size(res);
|
|
|
- econfig.reg_read = match->data;
|
|
|
+ econfig.reg_read = data;
|
|
|
econfig.priv = efuse;
|
|
|
econfig.dev = efuse->dev;
|
|
|
nvmem = devm_nvmem_register(dev, &econfig);
|