2014-04-15 30 views
5

próbuję eksportować pin (nr 110). Stosując następujące w systemie Linux:
echo 110 > /sys/class/gpio/exportstanie wyeksportować pin GPIO

Kiedy próbuję to zrobić, ja getthe komunikat o błędzie
ash: write error: Device or resource busy

Zgodnie z moją wiedzą pinezka nie jest używana przez żaden moduł, ale mogę się mylić. Miałem przeskanowaną linię sprzętową i napięcie się zmienia, procesor wydaje się jechać czymś do linii.
Sworzeń zgodnie z instrukcją użytkownika nie jest multipleksowany i jest "powszechnie dostępny".

Odpowiedz

2

Sworzeń zgodnie z instrukcją użytkownika nie jest multipleksowany i jest "powszechnie dostępny".

Najwyraźniej masz na myśli instrukcję SoC.
Takie oświadczenie będzie oznaczać, że pinezka nie ma dedykowanej aplikacji zintegrowanego urządzenia peryferyjnego (dostarczanego przez producenta SoC).
To stwierdzenie jest nieważne, gdy SoC jest zaprojektowany do obwodu i/lub zainstalowany na płycie.

Dokumentem, który należy naprawdę sprawdzić, jest instrukcja obsługi lub schemat płyty głównej.
Powinna to być dokładna dokumentacja, w jaki sposób projektant płyt wykorzystał dostępne szpilki GPIO w tej konkretnej aplikacji.

Kiedy próbuję to zrobić, ja getthe komunikat o błędzie ...

Na szczęście dla ciebie, że sterownik urządzenia nie używać tego kołka (że chcesz używać) został prawidłowo wykonał GPIO rezerwuj/zadzwoń, aby zapobiec przejęciu.
Zapobiegło to awariom innych sterowników i/lub awarii urządzenia/płyty.

Zgodnie z moją wiedzą pin nie jest używany przez każdego modułu, ale może się mylę

Jak osiągnąć tę „wiedzę”?
Czy skanowałeś pliki .dts i .dtsi używane na płycie głównej?
Czy sprawdziłeś kod źródłowy każdego sterownika urządzenia używanego przez Twoją tablicę?

+0

Też mam ten problem. Sprawdziłem .dtsi na mojej tablicy i znalazłem 'gpiokey_pins: gpiokey_pinmux { \t \t \t \t pins =" ​​gpio26 "; \t \t \t \t funkcja = "domyślna"; \t \t \t polaryzacja; \t \t \t \t wyjście-wyłączone; \t \t \t}; '' – tarabyte