Vlastně je tu jedna možnost, jak získat autonomní HW řadič I2C, patrně včetně interruptu, na LPC: použít k tomu nějaký "embedded controller" na LPC. To je blízký příbuzný SuperIO švába, který ovšem obsahuje autonomní MCU jádro, tradičně 80C51, nebo nověji nějaký malý ARM. Používá se to v noteboocích / tabletech a odvozených embedded boardech. Ale prakticky veškerá dokumentace je pod NDA :-( Takového švába těžko seženete volně sypaného, a pokud ho někde uloupnete ze šrotu, tak k němu nebudete mít dokumentaci ani další podporu (nebudete vědět jak si napsat do něj firmware, ani nebudete mít example od výrobce čipu).
Takhle jsem videl reseno legacy veci v notebooku (at uz Apple nebo PC svet), MCU s LPC rozhranim a pak to preklada I2C touchpad na jine API (nejspise PS2 mouse) a z GPIO matice to dela klasickou klavesnici. Taky nevim o dokumentovanych obvodech, ale treba ITE ma relativne slusnou podporu a k toolum/zdrojakum se da dostat i pro evropana.
Ohledne platform devices a device tree - me prijde ze je to jedno a to same, a s tim prave delam na embedded ARMech, dokazal bych si predstavit i pouziti prave v PC svete, kdybych mel jistotu, ze se urcity radic objevi na fixni adrese (k cemuz by mel napomoct fixni adresni prostor v LPC).
Osobne bych asi sel cestou FPGA na LPC a pak skrze device tree si tam naveset drivery k periferiim, to by mohlo dat docela transparentni reseni, se stejnymi ovladacema pro ARM i PC.
Pracovat s USB je docela opruz byt to muj custom touch panel ma. S I2C se daji delat kouzla a la gesta k zapnuti zarizeni, protoze muzu mit nezavisle v provozu jen touch naveseny na obycejnem MCU, ktery se pak ze zbernice odmlci. USB neumi multi-master. Jinak veskere touch reseni napr. v mobilech jsou I2C - holt to je rozhrani ktere je stabilni a nerekne ne, USB ma tendence vytuhnout - coz v externim zarizeni jednoduse odpojite, ale interne to je priserny jak to nejde softwarove poradne restartovat.