I created a small init.d script that initializes the modem via the AT interface.
I named it S21_modem_init, it does run at the designated point in time (after S20network), my only problem is that pppd starts earlier then this script is actually finished. This only runs at boot(), so no state handling like service_start() or anything like that is introduced.
So the question is, how can I make an Init.d script depend or wait for on another Init.d script to finish? Atm I use a PPPD parameter to wait a fixed 10 seconds, but that is not going to be a long term solution once this is switched to QMI or MM.