LAN9512 - это аппаратное устройство, которое контролирует порты Ethernet и USB. Этот чип потребляет почти 200 мА, и будет очень полезно отключить его для экономии энергии, когда мне не нужен USB или Ethernet. Лист данных LAN9512 объясняет некоторые состояния устройства для экономии энергии - это режимы SUSPEND2, SUSPEND1 и SUSPEND0. Поэтому это кажется возможным.
Я уже нашел частичное решение:
echo 0x0 > /sys/devices/platform/bcm2708_usb/buspower
эффективно отключит устройство и снова разбудит его сecho 0x1
тем же файлом. Тем не менее, после того, как устройство было остановлено и запущено определенное количество раз, оно не проснется снова до следующей перезагрузки операционной системы.
Есть ли способ отключить LAN9512 и надежно запустить его снова? (Может быть, я могу перезагрузить драйвер, который управляет LAN9512?)
мотивация
Когда модель B Raspberry Pi бездействует, она потребляет 400 мА. Когда это подчеркнуто, 470 мА. Когда LAN9512 отключен, он потребляет 200 мА в режиме ожидания и 260 мА под напряжением.
другие
- Я проверил надежность отключения чипа через «buspower» с помощью скрипта, который отключает LAN9512, пытается подключить USB-устройство для проверки активности и перезагрузки. До сих пор Raspberry Pi перезагрузился 9222 раза без ошибок.
echo 1 > /sys/devices/platform/bcm2708_usb/bussuspend
Отключает LAN9512, но больше не разбудит его при работеecho 0
с тем же файлом. После его отключения raspberry pi работает очень медленно, сообщая о средней загрузке до 4.
usb
power-management
ethernet
aleixrocks
источник
источник
Ответы:
После некоторых собственных экспериментов я сделал следующее:
Кабель USB к TTL / Debug с 5 В через мультиметр.
Нормальная загрузка при входе в систему при подключенном питании и сети была около 420-380Ma
Сначала я отключил сетевое подключение,
/etc/init.d/networking stop
а затем чип,echo 0 > /sys/devices/platform/bcm2708_usb/buspower
и оно действительно снизилось до ~ 240Ma.Я также был в состоянии безуспешно пинговать Google! (И это хорошо)
Затем я снова включил его, указав 1 на шине питания и выполнив команду запуска сети. И снова я вернулся к 370-420мам. Пинг гугл тогда работал.
Затем я поместил это в файл SH, который зациклился, и это продолжалось более 10 раз без необходимости перезагрузки. В вашей команде я мог видеть, что она перезагружается каждый раз, независимо от того, что вы добавили команду перезагрузки.
Код для теста можно найти @ Ubuntu Вставить код автоматической перезагрузки.
Это можно просто использовать для остановки и запуска. Вы можете выполнить первую часть как команду остановки, а вторую - как команду запуска.
Я также сделал полное описание этого @ My Blog
источник
Функция отключения и включения корыта LAN9512:
Был отлажен на более новых ядрах и теперь работает без изменений. Я сделал пару скриптов, чтобы проверить это.
Цель первого - проверить отключение с помощью функции программного обеспечения. Сценарий отключает LAN9512 и пытается подключить USB-устройство. Если это возможно, то тест не пройден. Если нет, то тест пройден успешно. Наконец перезагружается и начинается снова. Скрипт работал в течение четырех дней и сообщил о 8039 перезагрузках без сбоев на raspbian 2013-9-25.
Второй скрипт предназначен для проверки включающей функции. Прежде всего, скрипт отключает LAN9512. Затем ждет несколько секунд, чтобы дать пи отдохнуть. Затем он включает LAN9512 и, наконец, пытается выполнить команду «lsusb». В нем перечислены все устройства USB. Если ядро может распознать все USB-устройства, то LAN9512 снова работает. Если нет, тест не пройден. Тест проводился в течение недели и показал 7209 петель без ошибок на raspbian 2013-9-25 и 5374 петли на raspbian 2014-1-7.
Ядра и прошивки
На распбиан 2014-1-7:
ядро: Linux raspberrypi 3.10.25+ # 622 PREEMPT пт 3 января 18:41:00 GMT 2014 прошивка armv6l для GNU / LINUX: b00bb3ae73bd2799df0e938b7a5f17f45303fb53 (чистый) (выпуск)
На распбиан 2013-9-25
ядро: Linux raspberrypi 3.6.11+ # 538 PREEMPT Пт 30 августа 20:42:08 BST 2013 armv61 Прошивка GNU / LINUX: 4f9d19896166f46a3255801bc1834561bf092732 (чистый) (выпуск)
источник
Приведенные выше ответы были правильными, когда предлагались, но в 2015 году Raspbian внес изменения, и заинтересованным пользователям пришлось искать соответствующие элементы управления.
Моя благодарность пользователю Adrian! https://raspberrypi.stackexchange.com/users/37611/adrian
источник