Ник:
Пароль:

Контакты

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

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Отладочные платы » SK-iMX53
[iMX535] - видеоподсистема
sasamy
Добавлено 10.02.2012 16:31 Сообщение: 11
sasamy
4.70

Пункты: 77331
Регистрация: 14.08.2009
Цитата

Расшифруйте, пожалуйста, значения в массиве.


Ну вы даете :)
http://lxr.free-electrons.com/source/include/linux/fb.h?v=2.6.35;a=arm#L1110
Спуститься к концу Подняться к началу
Персональная информация
SimpleSoft
Добавлено 14.02.2012 09:41 Сообщение: 12
SimpleSoft
0

Пункты: 2505
Регистрация: 23.03.2011
Я имел ввиду по отношению к iMX53 IPUv3 регистрам. fb.h посмотрел давно, а толку?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 14.02.2012 11:12 Сообщение: 13
sasamy
4.70

Пункты: 77331
Регистрация: 14.08.2009
Цитата

Я имел ввиду по отношению к iMX53 IPUv3 регистрам.


Смотрите исходники - драйверы для Linux готовые, мне например не было необходимости опускаться до регистров - там их много :)
drivers/video/mxc/mxc_ipuv3_fb.c

if (ipu_init_sync_panel(mxc_fbi->ipu_di,
(PICOS2KHZ(fbi->var.pixclock)) * 1000UL,
fbi->var.xres, fbi->var.yres,
out_pixel_fmt,
fbi->var.left_margin,
fbi->var.hsync_len,
fbi->var.right_margin,
fbi->var.upper_margin,
fbi->var.vsync_len,
fbi->var.lower_margin,
0, sig_cfg) != 0) {

drivers/mxc/ipu/ipu_disp.c

int32_t ipu_init_sync_panel(int disp, uint32_t pixel_clk,
uint16_t width, uint16_t height,
uint32_t pixel_fmt,
uint16_t h_start_width, uint16_t h_sync_width,
uint16_t h_end_width, uint16_t v_start_width,
uint16_t v_sync_width, uint16_t v_end_width,
uint32_t v_to_h_sync, ipu_di_signal_cfg_t sig)
{

ну и в том же файле непосредственно ф-ция записи в регистры

static void _ipu_di_sync_config(int di, int wave_gen,
int run_count, int run_src,
int offset_count, int offset_src,
int repeat_count, int cnt_clr_src,
int cnt_polarity_gen_en,
int cnt_polarity_clr_src,
int cnt_polarity_trigger_src,
int cnt_up, int cnt_down)
{

регистры - IPU_DI0_SW_GEN0, IPU_DI0_SW_GEN1, IPU_DI0_STP_REP и аналогичные для DI1
Спуститься к концу Подняться к началу
Персональная информация
SimpleSoft
Добавлено 14.02.2012 11:25 Сообщение: 14
SimpleSoft
0

Пункты: 2505
Регистрация: 23.03.2011
Спасибо. Думаю этого достаточно
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 24.04.2012 22:59 Сообщение: 15
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
к киту подключены 2 дисплея:
- по lvds 1280x800-18bpp
- по RGB 480x272-16bpp
строка загрузки
Код
setenv bootargs 'console=ttymxc0,115200 rw rootwait ldb=split,di=0,ch0_map=SPWG,ch1_map=SPWG video=mxcdi1fb:RGB888,SK-480x272 video=mxcdi0fb:RGB666,WXGA di0_primary root=/dev/sda2'

прописал режимы в /etc/fb.modes
при загрузке активен первый дисплей. могу командой fbset "480x272-60" переключить вывод на маленький. раньше (пока чего-то не накрутил) мог и обратно вернуть изображение на "большой" экран..
похоже - это режим SPLIT
подрежимы DUAL и SEPARATE по прежнему не включить, или наглухо виснет или ничего любопытного не происходит..
полагаю, что надо как-то проинтить "второй" фреймбуфер через файл борды..
переключение видеорежима:
Код
root§imx535:ß# fbset

mode "1280x800-48"
# D: 64.998 MHz, H: 40.624 kHz, V: 48.477 Hz
geometry 1280 800 1280 2400 16
timings 15385 220 40 21 7 60 10
rgba 5/11,6/5,5/0,0/0
endmode

root§imx535:ß# fbset "480x272-60"
root§imx535:ß# fbset

mode "480x272-33"
# D: 6.667 MHz, H: 10.417 kHz, V: 32.860 Hz
geometry 480 272 480 816 16
timings 150000 48 16 33 10 96 2
accel true
rgba 5/11,6/5,5/0,0/0
endmode

root§imx535:ß# fbset "1280x800-60"
root§imx535:ß# fbset

mode "1280x800-57"
# D: 69.156 MHz, H: 48.025 kHz, V: 56.835 Hz
geometry 1280 800 1280 2400 16
timings 14460 48 16 33 10 96 2
accel true
rgba 5/11,6/5,5/0,0/0
endmode

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 25.04.2012 11:01 Сообщение: 16
sasamy
4.70

Пункты: 77331
Регистрация: 14.08.2009
mx53_linux.pdf

Цитата

Here is the command line the user may use on PDK to unblank the secondary display
device in an ordinary case:

echo 0 > /sys/class/graphics/fb1/blank


к сожалению мне не на чем проверять как это все работает - нет пока дисплея с lvds. Зависание ядра с режимами DUAL и SEPARATE - это видел, надо там разбираться с модулем ldb - там где-то баг, не помню, помоему даже находил как это исправить.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 25.04.2012 12:37 Сообщение: 17
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
echo 0 > /sys/class/graphics/fb1/blank

к сожалению мне не на чем проверять как это все работает - нет пока дисплея с lvds. Зависание ядра с режимами DUAL и SEPARATE - это видел, надо там разбираться с модулем ldb - там где-то баг, не помню, помоему даже находил как это исправить.

о, пасиб, Саша..
я вчера ближе к ночи нашел схожий документ, прочитал оттуда много полезного (понял какой я осел), сегодня (по возможности ) попробую перепрописать и "поэхать"..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 26.04.2012 00:37 Сообщение: 18
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
к сожалению мне не на чем проверять как это все работает - нет пока дисплея с lvds.

при нынешнем обилие ноутов тебе обязательно попадется тушка на донорский экран, скорее всего с lvds..

Цитата
попробую перепрописать и "поэхать"

как-то пока "не очень" - теперь нормально переключаю экраны через fbset, а через echo что-то "мыргает" и не работает, как задумано в даташите.. позже поковыряю..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 27.01.2013 15:21 Сообщение: 19
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
снова результат положительный. короче, наберу статистику и отпишусь по этому поводу..

год прошел - встряхну ка тему :)
подключенный на короткий шлейф 7" mtf-t070acslp, почти под 100 циклов включение/выключение НИ РАЗУ развертка не слетела, всегда показывает ожидаемое разрешение..
кстати, с таймингами не все правильно - вывод контрольной картинки показал недовывод самого правого столбика пикселей, слева сверху и снизу нормально..

два варианта - укороченный шлейф или кривое декабрьское ядро..

беглый просмотр 5000 страничного даташита и не смог найти блок регистров для коррекции.. в отличии от дотошного Атымеля или аскетичного Нувотона фрийскейловцы подошли очень сумбурно к доке..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
MTh
Добавлено 29.04.2014 11:28 Сообщение: 20
MTh
0

Пункты: 921
Регистрация: 19.09.2010
Вставлю свои 5 копеек.

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

С заводкой была пара проблем.
На виртуальной машине на ФТП в конфиге ядра по умолчанию стояла галка об использовании строки инициализаци из конфига ядра.
В остальном как написал Юрий выше - проблем особо не было.
Еще бы калькулятор какой-нить накопать, чтобы тайминги считал...
:)
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » SK-iMX53