For that sort of thing, I'd use a little PIC. They are cheaper than just about any other way to shoot an init string. They are way lower parts count and take up much less board space than any of the alternatives. Typically I just do it in a *very* stupid fashion:
1) Put a table into flash
2) Wake up the PIC on power up
3) Write a nibble from the table to the output port
4) Wait, then loop for next nibble
5) Put the pic to sleep when done
Not all of that is my idea. One of my guys came up with the "put it to sleep when done" thing back in 1994. We've used the approach a *lot* (millions of pieces shipped) on a variety of products. Yes you could go with a part that has a SPI port on it and do it all with a real port. Since it's output only / one time and done, keep it cheap and simple.
1) Put a table into flash
2) Wake up the PIC on power up
3) Write a nibble from the table to the output port
4) Wait, then loop for next nibble
5) Put the pic to sleep when done
Not all of that is my idea. One of my guys came up with the "put it to sleep when done" thing back in 1994. We've used the approach a *lot* (millions of pieces shipped) on a variety of products. Yes you could go with a part that has a SPI port on it and do it all with a real port. Since it's output only / one time and done, keep it cheap and simple.