Верно. Немного курил я описания контроллеров. Там вообще до маразма доходит. У некоторых ARM контроллеров внутри EHCI хостовые контроллеры и мост PCI<-> AHB. Офигеть можно! Совсем универсальный HAL средствами C создать довольно сложно, а вот докручиваемый кодогератор на каком-нибудь шаблонизаторе - вполне.