Editando uma árvore de dispositivos para desativar o carregamento do driver

3

Abaixo está uma seção da árvore de dispositivos.

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>;
            } ;
    } ;
} ;

Isso mostra que o SO estará carregando um driver para ethernet. Eu quero parar o sistema operacional de fazer isso. Quando eu simplesmente comentei o bloco inteiro, faça erros reportados. Então, como edito a árvore de dispositivos para que a ethernet seja desativada e não seja carregado nenhum drievr?

    
por gpuguy 29.03.2014 / 11:22

1 resposta

2

Você pode desativar um nó de dispositivo adicionando:

ps7_ethernet_0: ps7-ethernet@e000b000 {
    ...
    status = "disabled";
};

Dependendo da estrutura de inclusão da árvore de dispositivos, você deve adicionar isso no nível de especificação da placa. Caso contrário, pode haver uma chance de que status = "disabled"; seja substituído por um status = "okay"; em algum lugar.

    
por 12.02.2016 / 14:35