Неофициальный клуб пользователей HD видео плеера WD TV


»Юзер: »Пароль:   Запомнить? 
WDTV Forum / Форум про WD TV Live / Полезная информация / Полное отключение питания WD на прошивке 1.02.21-WDLXTV-0.4.7.3
Написано:  23 Авг 2012 18:24   Отредактировано: DJArty
Полное (почти) отключение питания WD на прошивке 1.02.21-WDLXTV-0.4.7.3. Почти полное потому как переводит процессор в режим Stanby, тушит usb и ethernet соединения. При этом энергопотребление падает, проц и корпус не греются. Исходя из чьих то измерений в первоисточнике разница в потреблении весьма мала - в активном состоянии до 7Ватт а в стэндбае 2Ватта.. Т.е. скорее для параноиков решение и имеет отрицательные моменты, но всё же озвучим
1) Только для прошивки 1.02.21-WDLXTV-0.4.7.3 (и соответственно ядра 2.6.22.19-19-4 #7).

2) Всё изначально было бы просто, если бы именно в этой прошивке сборщики не допустили маленькой ошибки. Для отработки действий по нажатию кнопки Power необходим файл /bin/power.monitor вот ему то забыли поставить признак исполняемости, потому POWER_DOWN_ACTION не срабатывают. Эту оплошность пробуем устранить навечно следующим шаманством.
Соединяемся по ssh или telnet с WD (если не знаем что это и как то можем не продолжать дальше) и создаем пользовательский скрипт S99user-script который будет исполняться при каждой загрузке и исправлять права на power.monitor:
запустили редактор
Код:

nano /conf/S99user-script

если скрипт уже существовал то увидим его содержимое и добавим нужные строки, если не существовал то будет пустым - заполняем командами:
Код:

#!/bin/sh
cp /bin/power.monitor /tmp
chmod +x /tmp/power.monitor
mount -o bind /tmp/power.monitor /bin/power.monitor

Запоминаем записанное Ctrl+O, и выходим из редактора Ctrl+X
Делаем скрипт исполняемым
Код:

chmod +x S99user-script

После перезагрузок теперь команды для выключения должны срабатывать нормально.

3) Теперь подаем в терминале сами команды исполняемые при нажатии кнопки Power при выключении питания.
Код:

config_tool -c POWER_DOWN_ACTION94='cp /bin/busybox /tmp; sync'

config_tool -c POWER_DOWN_ACTION95='/tmp/busybox sh  -c "/tmp/busybox echo standby > /proc/tangoxfreq/standby; /tmp/busybox sleep 3; /tmp/busybox reboot -f"'

config_tool -s

перечисленные команды прописывают две записи в конфиг которые манипулируют с бузибоксом, дают команду процу на стэндбай, и дополнительно дают перегруз при "включении". Почему так: если взять только однострочный вариант (из первоисточника) то при включении из стендбая не восстановится работа WDTVExt и UMSP плугинов если таковые были на юсб носителях, если нет такого, то можно видимо и однострочным вариантом пользоваться. А если использовать указанный вариант то для восстановления работоспособности всего и вся делается ребут "перед" включением. Т.е. при включении ВД как новенький, т.е. почти такой же как при полном выключении/включении в сеть.

Побочные эффекты:
1)Включается девайс дольше - как и при полном ребуте (потому как именно он и делается по команде)
2)Потеря точек останова фильмов (поскольку ведь ребут делается) так же как и при отключении питания.
Положительные моменты:
1)Экономится аж 5Ватт
2)Уж так то юсб-винты скорее всего будут молчать намертво (не проверял - нету уже). Дополнительно можно проставить USB_POWER_OFF.

В общем пробуйте и решайте а нужно ли оно вам - такая экономия при потере некоторых удобностей.

P.S. WD можно из стендбая разбудить технологией wake-on-lan посылкой мэджик пакета (для своих операционок ищите решение своё), при этом просыпание как будто нажали кнопку Power, опять же с перегрузом.
__________________
WD TV Live (1.02.21-..-0.4.7.3)
Для пива: WM R161810775332(руб);WM Z114867333413($);WM U219453404899(грн); Я.Money:410011402801986
Filmsonline, русский поиск ->Мэйл<- IPTV
Написано:  23 Авг 2012 20:01
Спасибо за описание.
Тот первоисточник тоже изучал. И забил.. на 4.5.3 все работает и так. Без какого-либо геморроя и побочных эффектов.
__________________
Philips 32PFL9604H/60 + Panasonic TX-PR42V10 + WD TV Gen1 + WD TV Live + ПДУ Logitech Harmony One
Написано:  23 Авг 2012 20:06
Так делается только один раз и навсегда..
__________________
WD TV Live (1.02.21-..-0.4.7.3)
Для пива: WM R161810775332(руб);WM Z114867333413($);WM U219453404899(грн); Я.Money:410011402801986
Filmsonline, русский поиск ->Мэйл<- IPTV
Написано:  23 Авг 2012 21:55
DJArty
Да, один раз. Но вот авторебут при включении все прелести гробит. Получаем в итоге то же самое, что дает параметр USB_POWER_OFF_DEEP_SLEEP = Deep Sleep на прошивках 0.5.x
__________________
Philips 32PFL9604H/60 + Panasonic TX-PR42V10 + WD TV Gen1 + WD TV Live + ПДУ Logitech Harmony One
Написано:  23 Авг 2012 22:51   Отредактировано: DJArty
Так это и есть аналог дипслипа.. люди ж хотели что б проц не грелся - вот вариант.  Можно ребут и убрать, при условии что не используются WDTVExt плугины или UMSP плугины с флэшки. Но всеравно надо перепроверять всё ли ок при таком возврате из стэндбая. Т.е. если плеер используется только как плеер, без излишеств, возможно вот так вот и засыпать серьезно будет и просыпаться без ребута.. Такой то вариант управляемого выключения всё же получше выдёргивания из розетки (которым видимо страдают некоторые экономисты поначалу).
А если речь только о выключении шумного кручения шпинделя юсб-винта то тут просто сделать к примеру
Код:

config_tool -c POWER_DOWN_ACTION93='sdparm --command=stop /dev/sda'

Проблема была только в том что эта прошивка получается по умолчанию не слушалась команд на выключение. (пунктом 2 выше мы это вылечили).
__________________
WD TV Live (1.02.21-..-0.4.7.3)
Для пива: WM R161810775332(руб);WM Z114867333413($);WM U219453404899(грн); Я.Money:410011402801986
Filmsonline, русский поиск ->Мэйл<- IPTV
Написано:  24 Авг 2012 06:57   Отредактировано: DenKa
DJArty
Можно ребут и убрать, при условии что не используются WDTVExt плугины или UMSP плугины с флэшки

Вот в том и дело, что ни понос, так золотуха. После 4.5.3 полноценных решений отключения питания USB нет.
В свое время я потратил уйму времени на это. Пробовал все брадовские прошивки до одной. Итог всегда был один: на всех прошивках 4.7.3. и выше устройство либо по минуте-полторы включается после нажатия на Power On на пульте, либо пропадают все "удовольствия". Брад объясняет это продвинотостью kernel/ Риторический, понятно, вопрос: ну, а зафига тогда такая продвинутость нужна?
__________________
Philips 32PFL9604H/60 + Panasonic TX-PR42V10 + WD TV Gen1 + WD TV Live + ПДУ Logitech Harmony One
Написано:  24 Авг 2012 07:13   Отредактировано: PrMoriarty
Для тех кто еще хочет поиграть в энергосбережение


NOTICE: This document contains Sigma Designs (“Sigma”) confidential and proprietary information, and is provided to authorized developers under the terms of an executed Non-Disclosure Agreement (NDA). This document may not be provided to any third-party not covered by the NDA without express written permission of Sigma. The information is deemed to be reliable, but Sigma shall not be responsible for errors or omissions.
SMP8634 Power Saving Guide

Chips     SMP8634, SMP8635
Abstract     Power Saving Guide (suspend, resume) for SMP8634
Keywords     linux, system
06/19/2007 -- initial document

Introduction

With 2.6.15 kernel, a facility of frequency scaling is introduced. Along with other updated components (such like various microcodes and IRQ handler running from DSP, RISC engines as well as XPU), the runtime system can changed the operating frequencies on the fly. Hence the goal of power saving can be achieved. The purpose of this document is to explain the steps to achieve this.
In turn of the power saving, there are two different modes that are supported at this point, one is lowering the frequency (typically to 80MHz) while keeping everything running. For example, all peripheral devices are still in the working condition. Video decoder is also working (but may not have enough processing power for higher bitrate stream). The second mode is deeper sleep (typically 54MHz). Under this mode most of devices are not functioning, and only few devices are active (e.g. IR, Front Panel, or SMP863x built-in ethernet). The purpose is for those devices to listen for "wake-up" event and resume the system in full operational mode.
By using Sigma's Vantage reference board, the power usage of SMP8634 measured is about 1.14W under normal condition, about 0.54W with frequency scaled to 80MHz, and 0.35W in standby mode. However, these figures can be varied on different environment.
proc interface

As in traditional Linux system, proc interface is used for accessing kernel internals, which also includes lots of other subsystems as well as device drivers. For example, setting kernel networking operating parameters, retrieving and setting status for various devices (provided the device driver implemented this interface). More details can be found in any Linux kernel related materials.
The frequency scaling facility referred here is implemented as a pseudo device driver. Once installed and activated, a set of operations is avaliable from user level. The details will be illustrated in further sections.
Configuring the kernel

In order to make use of this facility, first thing is to configure the kernel so this facility is either included in the kernel (e.g. statically linked to the kernel), or build this facility as kernel module (to be loaded later). Under Linux kernel's configuration menu, under "Machine selection", "Allow dynamic frequency control" can be enabled (static linked, or modularized). An experimental feature call "standby mode", can also be selected.
If the "standby mode" is selected, few more options will be available. For example, what is the device to be used for listening to "wake-up" event? Currently only three devices are available: IR (Infra Red), FIP (Front Panel), and SMP863x built-in Ethernet. If IR or FIP is selected, the table size (default 128, which allows for 32 buttons or keys) needs to be defined. This table is used to store the value of buttons (to be defined by user application) so that only when these buttons are pressed the wake-up event is recognized. For Ethernet, the wake-up event is delivered with Magic Packet (defined by AMD, http://en.wikipedia.org/wiki/Wake-on-LAN#Magic_Packet).
Enabling the facility

If the facility is enabled statically linked to the kernel, there's nothing to be done to enable it during runtime. However, if the facility is enabled as kernel module, then the kernel module needs to be loaded. The following commands can be used as example on how this can be done.

$ modprobe fctrl
or,

$ insmod fctrl.ko
tangox freq proc interface

Once the facility is enabled at the runtime, few entries under /proc will be added. Bellows are the list:
/proc/tangoxfreq/freq -- Read-Only, to display the operating frequencies of PLLs, CPU, System, as well as DSP.
Example:

$ cat /proc/tangoxfreq/freq
PLL0: 297000000Hz
PLL1: 405000000Hz
PLL2: 0Hz
PLL3: 594000000Hz
SYS: 198000000Hz
CPU: 297000000Hz
DSP: 297000000Hz
The above example indicates the frequencies of PLLs, CPU, System, and DSP.
/proc/tangoxfreq/mux -- Read-Writable, display the mux setting and provide a way to change this setting (division from PLL3).
Example:

$ cat /proc/tangoxfreq/mux
PLL3: 594000000Hz
   0 (SYS/CPU/DSP: 2/2/2)
   1 (SYS/CPU/DSP: 4/2/4)
   2 (SYS/CPU/DSP: 3/2/3)
   3 (SYS/CPU/DSP: 3/3/3)
   4 (SYS/CPU/DSP: 3/3/3)
   5 (SYS/CPU/DSP: 3/2/3)
   6 (SYS/CPU/DSP: 3/3/2)
*  7 (SYS/CPU/DSP: 3/2/2)
   8 (SYS/CPU/DSP: 4/4/4)
   9 (SYS/CPU/DSP: 4/2/4)
   10 (SYS/CPU/DSP: 4/4/2)
   11 (SYS/CPU/DSP: 4/2/2)
The above command shows that source frequency (PLL3: 594MHz) and the allow-able dividers. Currently the mux is set to 7, so the System frequency is 594/3 = 198MHz, and CPU/DSP frequcney is 594/2 = 297MHz.
Example:

$ echo 3 > /proc/tangoxfreq/mux
The above command changed the mux setting to 3, so System, CPU, DSP are all running at the same frequency (594/3 = 198MHz).
/proc/tangoxfreq/pll0 -- Read-Writable, to display or change the PLL0 operating frequency.
Example:

$ cat /proc/tangoxfreq/pll0
PLL0: 297000000Hz
Displaying the operating frequency of PLL0.
Example:

$ echo 300000000 > /proc/tangoxfreq/pll0
Changing the operating frequency of PLL0 to 300MHz.
/proc/tangoxfreq/pll1 -- Read-Writable, to display or change the PLL1 operating frequency (usage similar to PLL0 above).
/proc/tangoxfreq/pll2 -- Read-Writable, to display or change the PLL2 operating frequency (usage similar to PLL0 above).
/proc/tangoxfreq/pll3 -- Read-Writable, to display or change the PLL3 operating frequency (usage similar to PLL0 above).
/proc/tangoxfreq/profile -- Read-Writable, user can defined a profile, which includes a set of parameters for this facility to fall on. Typically, profile 0 is the orginal settings, profile 1 is customer defined that can be retrieved from XENV. profile 2-6 is used for references.
Example:

$ cat /proc/tangoxfreq/profile
* 0: ORIGINAL
  1: PS XENV
  2: SYS/CPU/DSP 80/80/80
  3: SYS/CPU/DSP 100/150/150
  4: SYS/CPU/DSP 133/200/200
  5: SYS/CPU/DSP 166/250/250
  6: SYS/CPU/DSP 200/300/300
Displaying the profiles which are available. Currently the profile in used is 0.
Example:

$ echo 2 > /proc/tangoxfreq/profile
Changing the operating profile to 2. That is, CPU, System, and DSP all running the same frequency 80MHz.
/proc/tangoxfreq/standby -- Write-Only, this entry will be available only when "standby mode" is enabled (please see above). Please also note that this feature is highly experimental at this point.
Example:

$ echo standby > /proc/tangoxfreq/standby
For the system to enter "standby mode". Depends on the devices to enabled (IR, FIP, Ethernet), the system will be listening to "wake-up" event to resume operation.
/proc/tangoxfreq/ir_table -- Read-Write, this entry will be available only when "standby mode" is enabled and IR is enabled (please see above). It can be used to retrieve and set the list of value of buttons that to be used for "wake-up" from IR remote.
Example:

$ cat /proc/tangoxfreq/ir_table
To dump the buttons (or keys) defined in the table.
Example:

$ echo "0x12345678 0x2223444 0x6789" > /proc/tangoxfreq/ir_table
Set the list of buttons according to the list given.
/proc/tangoxfreq/fip_table -- Read-Write, this entry will be available only when "standby mode" is enabled and FIP is enabled (please see above). It can be used to retrieve and set the list of value of buttons that to be used for "wake-up" from Front Panel. The usage is similar to ir_table entry above.
Related XENV keys

More details can be found in XENVGuide. The following keys defined the profile 1 as shown above.

# configuration used for power saving mode (e.g. low frequency mode)
a.ps.pll3 = 0x0110009e
a.ps.pll2 = 0x202
a.ps.pll1 = 0
a.ps.pll0 = 0x202
a.ps.mux = 0x301
a.ps.d0cfg = 0xf21111ba
a.ps.d1cfg = 0xf21111ba
a.ps.d0delay = 0x88888
a.ps.d1delay = 0x88888

The keys above define the configuration to be used when power saving mode (e.g. low frequency mode) is applied. The example above defined the operating frequency of 80/80/80MHz (CPU/SYS/DSP) as well as DRAM0/1 configuration running at the same frequency (CL:2, CCL:2.5). PLL1 value is optional. Care must be taken as the PLL can be acted as the source of clean dividers. So changing the frequency of the PLL will affect the frequencies output from the clean dividers.
The following keys defined the parameters to be used in the standby mode.
# configuration used for standby mode (e.g. sleep mode)
a.standby.pll3 = 0x0119006a
a.standby.pll2 = 0x202
a.standby.pll1 = 0x202
a.standby.pll0 = 0x202
a.standby.mux = 0x1
a.standby.d0cfg = 0xf21111ba
a.standby.d1cfg = 0xf21111ba
a.standby.d0delay = 0x88888
a.standby.d1delay = 0x88888

The keys above define the configuration to be used when standby mode (e.g. sleep mode) is applied. The example above defined the operating frequency of 54/54/54MHz (CPU/SYS/DSP) as well as DRAM0/1 configuration running at the same frequency (CL:2, CCL:2.5). PLL1 value is optional. Similar to power saving mode, care must be taken as the PLL can be acted as the source of clean dividers. So changing the frequency of the PLL will affect the frequencies output from the clean dividers.
In addition, please also note these settings are highly dependent to the operating environment as well as hardware. For example, different hardware component (e.g. DRAM) or layout may affect the parameters. So it is recommended that customer to performance some analysis and evaluation before they settle down with the final values. The values defined above works with Sigma's reference board, however.
-- 08 Aug 2007 - 14:25

Пробовал разгонять выставив Mux в 0 - зависает девайс
...

Поделитесь со своими друзьями в соцсетях:

WDTV Forum / Форум про WD TV Live / Полезная информация / Полное отключение питания WD на прошивке 1.02.21-WDLXTV-0.4.7.3