On 08/11/2019 15:16, Will Deacon wrote:
+MODULE_DEVICE_TABLE(of, arm_smmu_of_match);
Hi Will,
 static struct platform_driver arm_smmu_driver = {
ÂÂÂÂÂ .driverÂÂÂ = {
ÂÂÂÂÂÂÂÂÂ .nameÂÂÂÂÂÂÂ = "arm-smmu-v3",
ÂÂÂÂÂÂÂÂÂ .of_match_tableÂÂÂ = of_match_ptr(arm_smmu_of_match),
-ÂÂÂÂÂÂÂ .suppress_bind_attrs = true,
Does this mean that we can now manually unbind this driver from the SMMU device?
Seems dangerous. Here's what happens for me:
root@ubuntu:/sys# cd ./bus/platform/drivers/arm-smmu-v3
ind @ubuntu:/sys/bus/platform/drivers/arm-smmu-v3# echo arm-smmu-v3.0.auto > unbind
[ÂÂ 77.580351] hisi_sas_v2_hw HISI0162:01: CQE_AXI_W_ERR (0x800) found!
ho [ÂÂ 78.635473] platform arm-smmu-v3.0.auto: CMD_SYNC timeout at 0x00000146 [hwprod 0x00000146, hwcons 0x00000000]
ÂÂÂÂÂ },
ÂÂÂÂÂ .probeÂÂÂ = arm_smmu_device_probe,
+ÂÂÂ .removeÂÂÂ = arm_smmu_device_remove,
ÂÂÂÂÂ .shutdown = arm_smmu_device_shutdown,
 };
-builtin_platform_driver(arm_smmu_driver);
+module_platform_driver(arm_smmu_driver);
+