Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:2
Поисковых ботовПоисковых ботов:2
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Отладочные платы » Sunshine-A20(-Lite)
Смена разрешения на лету
xaba
Добавлено 01.04.2016 20:05
0
Сообщение: 1
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
Существует ли возможность менять разрешение экрана на лету?
С помощью X сервера возможно или только при загрузке?
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 01.04.2016 20:14 Сообщение: 2
Pavel Ivanchenko
Admin
4.39

Пункты: 91424
Регистрация: 24.03.2009
Пол: Мужчина
Дык попробуйте - /sys/class/graphics/mode (если правильно помню)
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 01.04.2016 21:14 Редактировалось 01.04.2016 21:17 Сообщение: 3
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Дык попробуйте - /sys/class/graphics/mode (если правильно помню)

помнишь правильно.. с одним ньюансом - путь..
/sys/class/graphics/fb0/mode
для fb0, и fbX для фремйбуфера Х..

еще можно через fbset
еще, если видеодрайвер поддерживает, через выгрузку драйвера и загрузку с новыми параметрами

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
xaba
Добавлено 02.04.2016 00:23 Редактировалось 02.04.2016 12:39 Сообщение: 4
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
Круто, так просто все.
НО НО НО не выходит.

смотрю что есть:
cat /sys/class/graphics/fb0/modes
U:1280x720p-60

те он понимает только один режим? где прописать? /boot/script.bin или прописывать в /etc/fb.modes ?

если юзать script.bin, то этот мануал(ХЕЛП) актуален для этой платы?

Пробую ставить так: echo "D:1920x1980p-60" > /sys/class/graphics/fb0/mode
sh: write error: invalid argument

не понимает(((

пробую так. прописал режим в файл fb.modes (не уверен в таймингах)

mode "1920x1080-60"
geometry 1920 1080 1920 2160 32
timings 6734 148 88 36 4 44 5
accel false
rgba 8/16,8/8,8/0,8/24
endmode

fbset 1920x1080-60

итог:
ядро выплевывает Oops: Modules linked in: mali ump ...
блаблабла...

ладно, иду дальше...
Правлю hdmi.fex
...
[disp_init]
disp_mode = 4 ---- что соответсвует clone(screen0, screen1, fb0)
screen0_output_mode = 10 ---- разрешение 1080p60

выставляю в uEnv.txt ..... disp.screen0_output_mode=EDID:1920x1080p60

перезагрузка и ....вуааля... Разрешение как было... не разрешение изменилось на нет не изменилось.

Хм...что происходит))
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 02.04.2016 12:16 Сообщение: 5
Pavel Ivanchenko
Admin
4.39

Пункты: 91424
Регистрация: 24.03.2009
Пол: Мужчина
Цитата
смотрю что есть:
cat /sys/class/graphics/fb0/modes
U:1280x720p-60

Дык это он не сам придумал, это ему монитор ответил ...
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 02.04.2016 12:23 Сообщение: 6
Pavel Ivanchenko
Admin
4.39

Пункты: 91424
Регистрация: 24.03.2009
Пол: Мужчина
Вот пример, что у меня:
Код
# cat /sys/class/graphics/fb0/modes
D:720x480p-59
D:720x576p-50
D:1280x720p-50
U:1440x900p-60
S:1280x1024p-60
V:1152x864p-75
V:1280x1024p-75
V:1024x768p-70
V:1024x768p-60
V:800x600p-75
V:800x600p-72
V:800x600p-60
V:800x600p-56
V:640x480p-75
V:640x480p-72
V:640x480p-60
D:1280x720p-60
D:1920x1080p-60

# fbset

mode "1920x1080-60"
# D: 148,500 MHz, H: 67,500 kHz, V: 60,000 Hz
geometry 1920 1080 1920 2160 32
timings 6734 148 88 36 4 44 5
accel false
rgba 8/16,8/8,8/0,8/24
endmode

# echo D:1280x720p-60 > /sys/class/graphics/fb0/mode
# fbset

mode "1280x720-60"
# D: 74,250 MHz, H: 45,000 kHz, V: 60,000 Hz
geometry 1280 720 1280 1440 32
timings 13468 220 110 20 5 40 5
accel false
rgba 8/16,8/8,8/0,8/24
endmode
Режим переключился без проблем.
Спуститься к концу Подняться к началу
Персональная информация
xaba
Добавлено 02.04.2016 12:48 Сообщение: 7
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
Интересно.
На телеке несколько входов HDMI.
Втыкаю в другой и вижу картину которая нарисовалась у вас)

Я понял в чем дело.

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

Как исправить есть мысли?
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 02.04.2016 12:49 Сообщение: 8
Pavel Ivanchenko
Admin
4.39

Пункты: 91424
Регистрация: 24.03.2009
Пол: Мужчина
Правда, есть и странности ...
Я показал результат на плате Sunshine-A20, при загрузке с NAND, если загрузиться с SD карты, режимы так же определяются и переключаются, НО, кроме переключения на D:1920x1080p-60 - после переключения на него отображение на мониторе уже не работает.
А вот при загрузке системы с NAND, переключение на все режимы проходят без проблем.
Скорее всего, где то "закрались" отличия в настройках или еще более вероятно это следствие различных аргументов запуска ядра
При загрузке с SD:
Цитата
Kernel command line: console=ttyS0,115200 root=/dev/mmcblk0p1 rootwait loglevel=8 panic=10

При загрузке с NAND:
Цитата
Kernel command line: console=ttyS0,115200 root=/dev/nandb consoleblank=0 hdmi.audio=EDID:0 disp.screen0_output_mode=EDID:1280x720p60 rootwait panic=10 rootfstype=ext4 rootflags=discard
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 02.04.2016 13:00 Редактировалось 04.04.2016 10:06 Сообщение: 9
Pavel Ivanchenko
Admin
4.39

Пункты: 91424
Регистрация: 24.03.2009
Пол: Мужчина
Цитата
Я понял в чем дело.

Если монитор подключен и включен изначально при загрузке, то режим будет 1. Если разъем выткнуть а потом воткнуть то все заработает.
Не подтверждаю.
Кабель подключен к монитору, монитор выключен, загружаюсь:
Цитата
# cat /sys/class/graphics/fb0/modes
D:720x480p-59
D:720x576p-50
D:1280x720p-50
U:1440x900p-60
S:1280x1024p-60
V:1152x864p-75
V:1280x1024p-75
V:1024x768p-70
V:1024x768p-60
V:800x600p-75
V:800x600p-72
V:800x600p-60
V:800x600p-56
V:640x480p-75
V:640x480p-72
V:640x480p-60
D:1280x720p-60
D:1920x1080p-60


Выдергиваю кабель, перезагружаюсь:
Цитата
# cat /sys/class/graphics/fb0/modes
U:1280x720p-60

Подключаю кабель (монитор по прежнему выключен):
Цитата
# cat /sys/class/graphics/fb0/modes
D:720x480p-59
D:720x576p-50
D:1280x720p-50
U:1440x900p-60
S:1280x1024p-60
V:1152x864p-75
V:1280x1024p-75
V:1024x768p-70
V:1024x768p-60
V:800x600p-75
V:800x600p-72
V:800x600p-60
V:800x600p-56
V:640x480p-75
V:640x480p-72
V:640x480p-60
D:1280x720p-60
D:1920x1080p-60

Вывод - зависит от телевизора-монитора.
Спуститься к концу Подняться к началу
Персональная информация
xaba
Добавлено 02.04.2016 13:06 Редактировалось 02.04.2016 13:26 Сообщение: 10
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
У меня кернел паник при смене на некоторые режимы((
Помогает только перезагрузка. точнее выключение питания)

При смене на такой режим D:1920x1080p-60

Я вот не пойму.
При загрузке параметры из файла uEnv.txt не влияют.
Вот что там:
extraargs=consoleblank=0 hdmi.audio=EDID:0 disp.screen0_output_mode=EDID:1280x720p60 rootwait panic=10 rootfstype=ext4 rootflags=discard

Ядро грузит свои:
Kernel command line: console=ttyS0,115200 root=/dev/mmcblk0p1 rootwait loglevel=8 panic=10
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » Sunshine-A20(-Lite)