LINUX.ORG.RU

История изменений

Исправление AiFiLTr0, (текущая версия) :

Такс, глянул исходник. Таки там специальный блок таки для этого, а не голый gpio. И в принципе быстрее будет, чем всырую, хотя вкрячить туда RC5 таки реально. в самом начале можешь увидеть регистровую карту. Судя по всему, там блок тупо делает замеры времени между фронтами в fifo, по заполнении которого дергает прерывание. Прерывание всасывает данные из аппаратуры в буфер, по стопбиту

	if(intsta & IR_RXINTS_RXPE)	 /*Packet End*/

оно пытается его декодировать, используя ir_packet_handler. Соотсветвенно, если ты шлешь данные RC5, то он ими набивает буфер до стопбита, но декодировать не может, так как NEC. Так что если хочешь поддержки своего пульта, можешь либо переписать ir_packet_handler на RC5. Имея под рукой времянки это не так сложно. Либо забить, и поднять gpio-ir-recv. Он будет отжирать на порядок больше процессорного времени, ибо одна посылка от пульта, как я и говорит тебе будет дергать порядка 30 раз прерывание, если не больше. Вроде как там эта пина смультиплекшена с gpio. Если gpio этот умеет дергать прерывание, то можно даже ничего не перевешивать.

Исходная версия AiFiLTr0, :

Такс, глянул исходник. Таки там специальный блок, а не gpio. И в принципе быстрее будет, чем всырую, хотя вкрячить туда RC5 таки реально. в самом начале можешь увидеть регистровую карту. Судя по всему, там блок тупо делает замеры времени между фронтами в fifo, по заполнении которого дергает прерывание. Прерывание всасывает данные из аппаратуры в буфер, по стопбиту

	if(intsta & IR_RXINTS_RXPE)	 /*Packet End*/

оно пытается его декодировать, используя ir_packet_handler. Соотсветвенно, если ты шлешь данные RC5, то он ими набивает буфер до стопбита, но декодировать не может, так как NEC. Так что если хочешь поддержки своего пульта, можешь либо переписать ir_packet_handler на RC5. Имея под рукой времянки это не так сложно. Либо забить, и поднять gpio-ir-recv. Он будет отжирать на порядок больше процессорного времени, ибо одна посылка от пульта, как я и говорит тебе будет дергать порядка 30 раз прерывание, если не больше. Вроде как там эта пина смультиплекшена с gpio. Если gpio этот умеет дергать прерывание, то можно даже ничего не перевешивать.