As the 40-pin GPIO header is compatible with the Raspberry Pi, why not try to interface FXO/FXS modules from switchpi.com like that one with the BananaPi R2 or R64 boards?
Obviously the original DAHDI driver made by SwitchPi specifically for the Raspberry boards will not work as it is quite tied to the Broadcom/RasbPi platform:
With proper subsystem drivers and bindings for SPI, I2S and some GPIOs in device tree it should be possible to simplify this existing driver and make it work on any router platform offering the RasbPi 40-pin header (e.g. Allwinner A20 sun7i BPi-R1 board).
I’ve ordered one OAKR2 to toy around with will keep you updated.
I wonder if the FXS_100 and FXO_100 modules made by SinoVoip are compatible with the pinout of the OAKR2 carrier board… The PCIe cards could obviously also be connected using mPCIe -> PCIe adapter, but it’s a bit of an overkill for just 1 channel FXS…
Asterisk runs quite smoothly on OpenWrt and DAHDI drivers integrate well with that. Other people are using freeswitch, kamailo or yate and that also seems to work for them.
For that OAKR2 module sitting on the 40-pin header to work I’ll just have to change to driver so that it grabs the right resources from device tree (instead of hard-coding RasbPi/Broadcom stuff there) and then provide DT overlay for R2, R64 and maybe R2 Pro in future.