2013-08-22 3 views
5

Robert Nelson의 최신 커널로 데비안 wheezy 파일 시스템을 사용하고 있습니다. 장치 트리 오버레이를 사용하여 LED 하트 비트를 비활성화하고 싶습니다.장치 트리 오버레이로 beaglebone 검은 색으로 뒤덮인 소리를 변경하십시오.

이 작업을 수행하는 더 쉬운 방법이 있다는 것을 알고 있지만 오버레이를 사용하여 응답 한 하트 비트를 비활성화하는 데에만 관심이 있습니다. 나는 이것을 달성 할 수

한 가지 방법은 GPIO-LED를, am335x-boneblack.dts에서 LED0 잎 에서 변경하는 것입니다 : = "하트 비트" 리눅스, 기본 트리거를; ~ linux, default-trigger = "none";

그런 다음 장치 트리를 컴파일하고 다시 부팅하십시오.

그러나 다음 오버레이를 사용하여 동일한 것을 구현하려고하면 echo> $ SLOTS 오버레이를 성공적으로 적용한 후에 하트 비트가 계속 깜박입니다.
내가 뭘 잘못하고 있니?

/dts-v1/; 
/plugin/; 
/
{ 
    compatible = "ti,beaglebone", "ti,beaglebone-black"; 
part-number = "pru"; 
version = "00A0"; 
[email protected] 
{ 
    target = <&ocp>; 
    __overlay__ 
    { 
     gpio-leds 
     { 
      compatible = "gpio-leds"; 
      pinctrl-names = "default"; 
      pinctrl-0 = <0x3>; 
      led0 
      { 
       label = "beaglebone:green:usr0"; 
       gpios = <0x5 0x15 0x0>; 
       linux,default-trigger = "none"; 
       default-state = "off"; 
      }; 
     }; 
    }; 
}; 
}; 

답변

0

이 장치의 장치 트리 설정을 무시하는 이유는 무엇인지 알고있는 시스템 서비스 인 leds.service가 있습니다.

실행, 서비스의 상태를 확인하려면

이 서비스 스크립트에 있다고 볼 수있다 "로드"필드를 살펴보면 출력

leds.service - Angstrom LED config 
      Loaded: loaded (/lib/systemd/system/leds.service; enabled) 
      Active: active (exited) since Sat 2000-01-01 18:33:24 UTC; 13 years 7 months ago 
      Process: 125 ExecStart=/usr/bin/led-config start (code=exited, status=0/SUCCESS) 
      CGroup: name=systemd:/system/leds.service 

을 제공

[email protected]:~# systemctl status leds.service 

/lib/systemd/system/leds.service이고 "Process"필드에는이 서비스가 "/ usr/bin/led-config start"명령을 실행한다고 표시됩니다. 그래서

#file format: name trigger 
beaglebone::usr0 heartbeat 

:이 파일 "은/usr/빈/LED-설정"당신이 파일 "을/etc/기본/LED"를에서 기본값을로드 쉘 스크립트의 것을 볼 수 있습니다 보면

당신은 오버레이로 하트 비트를 사용하지 않으려면 혼자 장치 트리 파일을 떠나 여기에 기본값을 설정하거나

systemctl disable leds.service 
+0

감사합니다. 그러나 leds.service 데몬은 debian에서 실행되지 않습니다. 둘째 장치 트리를 다시 컴파일하고 재부팅 할 때 LED가 작동하지 않는 이유를 이해하려고 시도하지만 장치 트리 오버레이에서 동일한 코드를 사용하면 작동하지 않습니다. – Ray

0

으로이 서비스를 비활성화 할 수있는 것은 내 의견에 매우 비효율적이다! 대신 bash 명령을 입력 해보십시오 : "echo none> /sys/devices/ocp.3/gpio-leds.8/beaglebone::green\:usr0/trigger"그런 다음 'echo "하트 비트를 다시 켜십시오. "> 트리거 (파일 경로를 먼저 확인하십시오) - 데비안에서 테스트 됨 Wheezy A5A

관련 문제