socノードの内部には、simple-mdfデバイスを持つ監視ノードがあります。
soc {
#address-cells = <2>;
#size-cells = <2>;
compatible = "simple-bus";
ranges;
toprgu: watchdog@10007000 {
compatible = "mediatek,mt6589-wdt", "syscon", "simple-mfd";
reg = <0 0x10017000 0 0x1000>;
...
reboot-mode {
compatible = "syscon-reboot-mode";
};
};
};
私の問題は、プロービング時に次のような結果が得られることです。
[ 0.105509] bus: 'platform': add driver simple-pm-bus
[ 0.105555] bus: 'platform': __driver_probe_device: matched device soc with driver simple-pm-bus
[ 0.105574] bus: 'platform': really_probe: probing driver simple-pm-bus with device soc
[ 0.105630] driver: 'simple-pm-bus': driver_bound: bound to device 'soc'
[ 0.105811] bus: 'platform': really_probe: bound device soc to driver simple-pm-bus
[ 0.105832] bus: 'platform': __driver_probe_device: matched device 10007000.watchdog with driver simple-pm-bus
[ 0.105846] bus: 'platform': really_probe: probing driver simple-pm-bus with device 10007000.watchdog
[ 0.105891] simple-pm-bus: probe of 10007000.watchdog rejects match -19
simple-pm-busドライバがcompatible = "foo", "syscon", "simple-mfd"
私のツリーのデバイスを拒否しているようです。これmt6589-wdt(foo)は罰金を検出し、さらに報告します。
mtk-wdt 10007000.watchdog: Watchdog enabled (timeout=10 sec, nowayout=0)
私を混乱させるのは、なぜsimple-pm-busがこのデバイスを拒否するのですか?私が逃した特別な属性はありますか?