Fra lavoro e altri impegni ho poco tempo a disposizione per cui se qualcun altro vuole provare e' benvenuto.
per non partire da zero spiego come funziona:
sulla flash spi da 64k 25ml512 ci sono uboot e 3 piccole partizioni dove la prima contiene le variabili necessarie ad uboot per l'avvio;
quando il dga ha avviato il bridge br-lan, sblocca i lreset al quantenna attraverso un gpio che non ho ancora localizzato, in teoria dovrebbe essere in /sys/classe/gpio ma trovi al suo posto /sys/class/led.
Il quantenna avvia uboot il quale carica in ram via tftp il file /tmp/qtn/qtn-linux.lzma, e infine avvia il kernel.
il file /tmp/qtn/qtn_prod.env contiene la configurazione dei due wifi, presumo che il quantenna prelevi questo file usando l2tftp e lo usi per configurare wifi0 e wifi1 ma non ho ancora verificato.
Se si vuole spostare eth5 su un secondo bridge come volevo fare, bisogna attendere che l'avvio sia completo e che la lettura di qtn_prod.env sia completata, ma creando un route statica fra i due bridge e una regola nel firewall dovrebbe essere ancora possibile controllare le impostazioni dalla pagina web.
Quindi sta tutto in qtn-linux.lzma , la cui posizione reale e' in /qtn/; potete strippare i primi 8192 bytes, decomprimere usando xz -d qtn-linux-cut.lzma e ottenere un'immagine decompressa.
Sul progetto asuswrt-merlin-master per l'ac87u trovate una immagine similare (edit: e' topaz-linux.lzma.img e se ne trovano in giro anche altre versioni), ho provato a rimpiazzarla ma noncapisco se si avvia perche dalla porta di seriale debug non vedo nulla.
Per catturare i messaggi daemon del quantenna occorre collegarsi alla porta seriale el broadcom sul pcb dove i messaggi dei due kernel vengoni mischiati a volte in maniera disordinata, ma si potrebbe provare a redirigere l'output su file, esempio aggiungere su rc.local o anche prima il comando "/bin/cat /dev/ttyS1 >/tmp/quantenna_daemon.log &" o mandando l'output da qualche altra parte.
L'immagine estratta e' di circa 14mb e non l'ho ancora esaminata, potrebbe essere una partizione (improbabile dato che non esistono /boot e /vmlinuz in radice) o qualcosa che contiene una combinazione di vmlinuz e initrd o una partizione che contegono la root; le altre due partizioni della piccola novram sono in jffs.
du non c'e' , df da' errore, mount da' solo / su /rootfs , in /proc non ho trovato info e sulle env di uboot non e' specificato un percorso della root per cui sa di hardcoded nel kernel.
Per ora mi sono fermato qui.
nota: almeno meta' di queste informazioni sono reperibili sul web e avrei potuto risparmiare un po' di tempo se le avessi trovate, il problema non e' cercare ma sapere cosa cercare.