|
|
(не показаны 24 промежуточные версии 4 участников) |
Строка 1: |
Строка 1: |
| <languages/>
| | пакет hubpower из нашего репозитория. |
| <translate>
| |
| <!--T:1-->
| |
| == Wiren Board 7 ==
| |
| [[Image: wb7.2-7.3 usb power disable.png |300px|thumb|right| Отключение USB-порта в контроллерах Wiren Board 7]]
| |
| Прежде, чем использовать этот метод в своих проектах, важно понять две вещи:
| |
| # При обычной эксплуатации потребности отключать питание USB-порта нет.
| |
| # Метод не переносим между ревизиями контроллеров и может в любом момент сломаться. Если вам очень надо на это завязаться и использовать в своих скриптах — напишите нам и мы подумаем, как это сделать нормально.
| |
|
| |
|
| Linux сам управляет питанием USB-портов, поэтому ручки «Отключить питание USB» нет, но есть обходное решение.
| | Работа: |
| | |
| В процессоре A40i, к одному физическому порту подключено два контроллера: OHCI (1Mbit, 12Mbit) и EHCI (480MBit), которые друг с другом договариваются и передают устройство на правильный. В системе это выглядит как два порта, что видно в lsusb.
| |
| | |
| Чтобы выключить питание на порту, нужно отключить этот порт от обоих контроллеров. А так как питание больше никто не будет запрашивать, Linux его отключит.
| |
| | |
| Отключить:
| |
| <syntaxhighlight lang="bash">
| |
| echo 1c14400.usb > /sys/bus/platform/drivers/ohci-platform/unbind
| |
| | |
| echo 1c14000.usb > /sys/bus/platform/drivers/ehci-platform/unbind
| |
| </syntaxhighlight>
| |
| | |
| Включить:
| |
| <syntaxhighlight lang="bash">
| |
| echo 1c14400.usb > /sys/bus/platform/drivers/ohci-platform/bind
| |
| | |
| echo 1c14000.usb > /sys/bus/platform/drivers/ehci-platform/bind
| |
| </syntaxhighlight>
| |
| | |
| == Wiren Board 6 == <!--T:4-->
| |
| | |
| <!--T:5-->
| |
| Второй внешний USB-порт:
| |
| | |
| <!--T:6-->
| |
| <syntaxhighlight lang="bash">
| |
| # выключить
| |
| $ hubpower `lsusb | grep "0424:2514" | sed 's/^Bus 0*\([[:digit:]]*\) Device 0*\([[:digit:]]*\).*$/\1:\2/g'` power 4 off
| |
| # включить
| |
| $ hubpower `lsusb | grep "0424:2514" | sed 's/^Bus 0*\([[:digit:]]*\) Device 0*\([[:digit:]]*\).*$/\1:\2/g'` power 4 on
| |
| </syntaxhighlight>
| |
| | |
| <!--T:7-->
| |
| Модуль Wi-Fi:
| |
| | |
| <!--T:8-->
| |
| <syntaxhighlight lang="bash">
| |
| # выключить
| |
| $ hubpower `lsusb | grep "0424:2514" | sed 's/^Bus 0*\([[:digit:]]*\) Device 0*\([[:digit:]]*\).*$/\1:\2/g'` power 1 off
| |
| # включить
| |
| $ hubpower `lsusb | grep "0424:2514" | sed 's/^Bus 0*\([[:digit:]]*\) Device 0*\([[:digit:]]*\).*$/\1:\2/g'` power 1 on
| |
| </syntaxhighlight>
| |
| | |
| Вместо
| |
| <syntaxhighlight lang="bash">
| |
| $ hubpower `lsusb | grep "0424:2514" | sed 's/^Bus 0*\([[:digit:]]*\) Device 0*\([[:digit:]]*\).*$/\1:\2/g'` ...
| |
| </syntaxhighlight>
| |
| | |
| в большинстве случаев можно писать
| |
| | |
| <syntaxhighlight lang="bash">
| |
| $ hubpower 2:2 ...
| |
| </syntaxhighlight>
| |
| | |
| == Wiren Board 5 == <!--T:9-->
| |
| | |
| <!--T:10-->
| |
| Внешний USB-порт:
| |
| | |
| <!--T:11-->
| |
| <pre> | | <pre> |
| # выключить | | root@wirenboard:~# hubpower 1:2 status |
| $ hubpower 1:1 power 1 off
| | Port 1 status: 0503 High-Speed Power-On Enabled Connected |
| # включить
| | Port 2 status: 0100 Power-On |
| $ hubpower 1:1 power 1 on
| | Port 3 status: 0100 Power-On |
| | Port 4 status: 0100 Power-On |
| | Port 5 status: 0503 High-Speed Power-On Enabled Connected |
| </pre> | | </pre> |
|
| |
|
| <!--T:12-->
| | Включение/выключение порта: |
| Модуль Wi-Fi:
| |
| | |
| <!--T:13-->
| |
| <pre> | | <pre> |
| # выключить | | root@wirenboard:~# hubpower 1:2 power 4 off |
| $ hubpower 2:1 power 1 off
| | Port 4 status: 0000 Power-Off |
| # включить | | root@wirenboard:~# hubpower 1:2 power 4 on |
| $ hubpower 2:1 power 1 on
| | Port 4 status: 0100 Power-On |
| </pre> | | </pre> |
|
| |
|
| == Wiren Board 4 == <!--T:14-->
| | == Wiren Board Smart Home rev. 3.5 == |
| | |
| <!--T:15-->
| |
| Номера портов (для управления питанием):
| |
| <pre>
| |
| 4 - встроенный WiFi
| |
| 3 - порты USB-Hub, выход 5V
| |
| 1 - EThernet-часть LAN9514
| |
| </pre>
| |
| | |
| <!--T:16-->
| |
| Пример (отключение Wi-Fi):
| |
| | |
| <!--T:17-->
| |
| <pre>
| |
| hubpower 1:2 power 4 off
| |
| </pre>
| |
| | |
| == Wiren Board Smart Home rev. 3.5 == <!--T:18--> | |
| | |
| <!--T:19-->
| |
| Номера портов (для управления питанием): | | Номера портов (для управления питанием): |
| <pre> | | <pre> |
Строка 114: |
Строка 26: |
| 1 - EThernet-часть LAN9514 | | 1 - EThernet-часть LAN9514 |
| </pre> | | </pre> |
| </translate>
| |
пакет hubpower из нашего репозитория.
Работа:
root@wirenboard:~# hubpower 1:2 status
Port 1 status: 0503 High-Speed Power-On Enabled Connected
Port 2 status: 0100 Power-On
Port 3 status: 0100 Power-On
Port 4 status: 0100 Power-On
Port 5 status: 0503 High-Speed Power-On Enabled Connected
Включение/выключение порта:
root@wirenboard:~# hubpower 1:2 power 4 off
Port 4 status: 0000 Power-Off
root@wirenboard:~# hubpower 1:2 power 4 on
Port 4 status: 0100 Power-On
Wiren Board Smart Home rev. 3.5
Номера портов (для управления питанием):
4 - встроенный WiFi
3 - порты USB-Hub
1 - EThernet-часть LAN9514