以下はデバイスツリーの一部です。
ps7_ethernet_0: ps7-ethernet@e000b000 {
#address-cells = <1>;
#size-cells = <0>;
clock-names = "ref_clk", "aper_clk";
clocks = <&clkc 13>, <&clkc 30>;
/* compatible = "xlnx,ps7-ethernet-1.00.a";*/
interrupt-parent = <&ps7_scugic_0>;
interrupts = <0 22 4>;
local-mac-address = [ 00 0a 35 00 6a 3e ];
phy-handle = <&phy0>;
phy-mode = "rgmii-id";
reg = <0xe000b000 0x1000>;
xlnx,enet-reset = "MIO 11";
xlnx,eth-mode = <0x1>;
xlnx,has-mdio = <0x1>;
xlnx,ptp-enet-clock = <111111115>;
mdio {
#address-cells = <1>;
#size-cells = <0>;
phy0: phy@7 {
compatible = "marvell,88e1116r";
device_type = "ethernet-phy";
reg = <7>;
} ;
} ;
} ;
これは、オペレーティングシステムがイーサネットドライバをロードすることを示します。オペレーティングシステムがこのようなことをしないようにしたいと思います。単にブロック全体に注釈を付けるだけでエラーを報告します。では、イーサネットが無効になり、ドライバがロードされないようにデバイスツリーをどのように編集しますか?
答え1
以下を追加してデバイスノードを無効にできます。
ps7_ethernet_0: ps7-ethernet@e000b000 {
...
status = "disabled";
};
デバイスツリーの埋め込み構造に応じて、ボードの仕様レベルで追加する必要があります。それ以外の場合は、status = "disabled";
どこかに上書きできます status = "okay";
。