This was supposed to be a simple little project to add network control and power management to an existing hardware seismic system.
The problem was that the two SPI interfaces were far from compatible. The network interface was the standard "send request - receive reply". The power management chip, though "worked through the idea that any request for data would cycle it's way through the registers in sequence. So when I was in the process of requesting the data from a register the chip was replying to the previous request. Sending a command and receiving data was interwoven!
A highly specific bit banging device driver was written that could inter-work between the two dissimilar interfaces. Once the timing issues were overcome then the overall operation was reliable.