Freescale MPC8360 UCC - HDLC Есть MPC8360, на нем бегает OpenWRT. UCC1 и UCC2 держат работающий ethernet. Пытаюсь заставить работать HDLC на другом UCC.
Дергал 'generic HDLC driver' в ядре, но от него пока только сообщение при загрузке "hdlc: HDLC support module revision 1.22" и все, больше никакого толку - ни новых устройств, ничего. Device tree использую следующий (импровизация, годных примеров не нашел):
ucc@2200 { device_type = "network"; compatible = "ucc_hdlc"; cell-index = <3>; reg = <0x2200 0x200>; interrupts = <34>; //0x22 interrupt-parent = <0x2>; rx-clock-name = "none"; tx-clock-name = "brgo2"; };Также пытался заставить HDLC работать в тупую, используя код из AppNote 4026. Скомпилировал, чуть изменив, как модуль ядра. В результате insmod мой.ko получаю лишь "Unable to handle kernel paging request for data at address ..." даже при попытке прочитать что-то из уже работающих UCC1 и 2. Засунул в ядро, чтобы запускалось при старте - тот же результат. Итак, 1) Можно ли использовать 'generic HDLC driver', или надо взять другой (какой?), или вообще писать свой? 2) Как же ему напрямую записать значение в регистры?