Obam 37 5 мая, 2022 Опубликовано 5 мая, 2022 (изменено) · Жалоба Вроде ноуты уж с ОЛЕДами... медитировать над чем-то секретным на OLED, "Понесли кроссовки Митю"(с) Ежели в ригах-вильнюсах такое, то что уж о Средне-Русской возвышенности говорить... Изменено 5 мая, 2022 пользователем Obam Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 5 мая, 2022 Опубликовано 5 мая, 2022 · Жалоба 6 часов назад, repstosw сказал: Требуется выбрать файл из списка кнопками вверх/вниз и запустить. После этого дисплей будет не нужен. В таком случае можно ставить все, что угодно, лишь бы нужный текст влезал... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
repstosw 18 13 мая, 2022 Опубликовано 13 мая, 2022 (изменено) · Жалоба Накидал демку с кубиком для V3s. Сделал вначале с помощью TinyGL, но потом разочаровался - не поддерживается режим освещения граней вместе с текстурой: либо текстура без освещения, либо заливка в цвет с освещением. К тому же нет фильтрации текстур. В моём рендерере(не TinyGL!) есть всё: текстуры + фильтрация + освещение. TinyGL пролетает ))) - Полностью софтовый рендерер - Анимация засинхронизирована на кадровую развёртку (60 FPS) - Частота процессора: 1200 МГц - Частота памяти: 456 МГц - Разрешение экрана: 800x480 - Глубина цвета буфера: 16 BPP (RGB 5:6:5) - Размер текстур: 256x256 - Глубина цвета текстур: 24 BPP (RGB 8:8:8) - Освещение: диффузная и спекулятивная составляющие (вторая даёт глянец) - Отсечение невидимых граней Изменено 13 мая, 2022 пользователем repstosw Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 13 мая, 2022 Опубликовано 13 мая, 2022 · Жалоба 2 часа назад, repstosw сказал: Накидал демку с Плата в данном видео с чего грузится? сд карты вроде не заметил? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
repstosw 18 13 мая, 2022 Опубликовано 13 мая, 2022 · Жалоба 1 hour ago, mantech said: Плата в данном видео с чего грузится? сд карты вроде не заметил? Приложение грузится в DDR-память самописанным загрузчиком через USB-OTG. Текстуры куба - бинарно зашиты вместе с кодом приложения. Сам загрузчик записывается перед этим с помощью утилиты sunxi-fel. SD-карта не нужна. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 13 мая, 2022 Опубликовано 13 мая, 2022 · Жалоба 20 минут назад, repstosw сказал: Приложение грузится в DDR-память самописанным загрузчиком через USB-OTG. Не пробовали использовать SPI flash для загрузчика? Если да, есть отличие от записи бинаря на сд карту, там смещения и пр? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 13 мая, 2022 Опубликовано 13 мая, 2022 · Жалоба 6 minutes ago, mantech said: есть отличие от записи бинаря на сд карту, там смещения и пр? Смещение 0, формат тот же. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
repstosw 18 13 мая, 2022 Опубликовано 13 мая, 2022 (изменено) · Жалоба 45 minutes ago, mantech said: Не пробовали использовать SPI flash для загрузчика? Не пробовал. На плате Lichee Zero она не установлена, но подпаять можно. Пока не было необходимости. Отлаживаю через USB, релизы - на SD. Для home or office use идёт. Изменено 13 мая, 2022 пользователем repstosw Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 13 мая, 2022 Опубликовано 13 мая, 2022 · Жалоба 33 минуты назад, repstosw сказал: Не пробовал. Понятно, потом придется самому пробовать)) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
repstosw 18 13 мая, 2022 Опубликовано 13 мая, 2022 (изменено) · Жалоба 5 minutes ago, mantech said: Понятно, потом придется самому пробовать)) На предыдущем проекте с C6745 как раз была SPI-флеш 8-выводная. Зашивал загрузчик с помощью программатора AVR-dude и какой-то программы. Посекторно пишем просто бинарник частями с нулевого сектора, как уже сказал aaarrr: 1 hour ago, aaarrr said: Смещение 0, формат тот же. Изменено 13 мая, 2022 пользователем repstosw Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Obam 37 13 мая, 2022 Опубликовано 13 мая, 2022 · Жалоба www.youtube.com/embed/IdAw0YjbZ_8 Сыто... ((-8Ж Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 16 мая, 2022 Опубликовано 16 мая, 2022 (изменено) · Жалоба 13.05.2022 в 15:02, aaarrr сказал: Смещение 0, формат тот же. Приветствую. Попробовал записать загрузчик на spi флешку с 0го адреса - не стартует, хотя при загрузке того же самого файла по усб все запускается. По началу подумал, что КС не правильно рассчитывается, заменил 0ми, но усб загрузчик сразу указал на это, т.е. КС правильная. Сам контроллер после этого уже не запускает усб, т.е. от что-то там на флешке нашел, сигнатуру загрузчика или еще что - дебага загрузки из бутрома не предусмотрено. Кто знает может, в чем тут нюанс? PS. В процессе выяснения причины определил, что прога таки запускается, но настройка клоков при загрузке по усб и флешке разная, т.е. проц работает на разных частотах, плюс непонятно почему не инициализируется уарт0, хотя при загрузке по усб все нормально... Изменено 16 мая, 2022 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Niyaz 0 17 мая, 2022 Опубликовано 17 мая, 2022 (изменено) · Жалоба On 4/22/2022 at 11:49 AM, aaarrr said: Используйте dmabuf. Нужно немного заправить libcedarc, чтобы получить файловые дескрипторы: Reveal hidden contents diff --git a/include/sc_interface.h b/include/sc_interface.h index d240bcf..648efd5 100755 --- a/include/sc_interface.h +++ b/include/sc_interface.h @@ -62,6 +62,8 @@ struct ScMemOpsS void *(*palloc_secure)(int /*size*/, void*, void*); unsigned int (*get_ve_addr_offset)(void); + + int (*get_dmabuf_fd)(void *); }; static inline int CdcMemOpen(struct ScMemOpsS *memops) diff --git a/memory/ionMemory/ionAlloc.c b/memory/ionMemory/ionAlloc.c index f949a13..42c698d 100755 --- a/memory/ionMemory/ionAlloc.c +++ b/memory/ionMemory/ionAlloc.c @@ -957,6 +957,37 @@ unsigned int ion_alloc_get_ve_addr_offset() } } +int ion_get_dmabuf_fd(void *pbuf) +{ + unsigned long addr_vir = (unsigned long)pbuf; + buffer_node *tmp; + int fd = -1; + + if (0 == pbuf) { + loge("NULL pointer\n"); + return -1; + } + + pthread_mutex_lock(&g_mutex_alloc); + + if (g_alloc_context == NULL) { + loge("g_alloc_context missing\n"); + pthread_mutex_unlock(&g_mutex_alloc); + return -1; + } + + aw_mem_list_for_each_entry(tmp, &g_alloc_context->list, i_list) + { + if (tmp->vir == addr_vir) + { + fd = tmp->fd_data.aw_fd; + break; + } + } + + pthread_mutex_unlock(&g_mutex_alloc); + return fd; +} struct ScMemOpsS _ionMemOpsS = { @@ -977,7 +1008,8 @@ struct ScMemOpsS _ionMemOpsS = setup: ion_alloc_setup, shutdown: ion_alloc_shutdown, palloc_secure: ion_alloc_alloc_drm, - get_ve_addr_offset: ion_alloc_get_ve_addr_offset + get_ve_addr_offset: ion_alloc_get_ve_addr_offset, + get_dmabuf_fd: ion_get_dmabuf_fd }; struct ScMemOpsS* __GetIonMemOpsS() которые затем скармливаются v4l2. спасибо за патч, только пока не получилось поробовать. Если знаете подскажите, пожалуйста, я функцию ion_get_dmabuf_fd добавил в libavdevice/v4l2.c: Spoiler но она определена в библиотеке libcedarc, а эта библиотека открывается dlopen функцией, которая определена в файле omx.c ffmpeg-а и у меня не видится эта функция при компиляций Spoiler Изменено 17 мая, 2022 пользователем Niyaz Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 17 мая, 2022 Опубликовано 17 мая, 2022 · Жалоба Нужно сначала выделить буферы со стороны энкодера через AllocInputBuffer(), затем получить виртуальные адреса (GetOneAllocInputBuffer(), поле pAddrVirY полученного VencInputBuffer), далее: dmabuf_fd = base_info.memops->get_dmabuf_fd(pAddrVirY); (base_info - структура VencBaseConfig, использующаяся при инициализации энкодера) Не знаю, как все это подружить с libavdevice. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 17 мая, 2022 Опубликовано 17 мая, 2022 · Жалоба 16.05.2022 в 14:02, mantech сказал: Кто знает может, в чем тут нюанс? Вообщем такая шляпа, при загрузке по усб уарт0 нормально инициализируется по стандартному алгоритму из spl, но если эту же программу записать на spi флешку или сд карту, программа стартует, работает gpio таймеры, контроллер прерываний, но уарт напрочь отказывается работать, такое впечатление, что нет тактировки, но все включено. Вообщем лыжи не едут, даже не знаю, что тут предположить, очень печально. Никак не думал, что способы загрузки так отличаются... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться