What is the purpose of ldio and stio when compared with IORD and IOWR?
As far as I am aware, the IORD and IOWR functions do bypass the cache when reading/writing a peripheral. In that case what is the purpose of the ldio and stio functions? Or is my understanding of the IORD and IOWR wrong?
Also, when writing to a memory mapped peripheral, what does it mean for the data to be cached, does it mean that it is only written into the peripheral once some maximum number of bytes are available? If this data is for a special purpose register in the peripheral to make it do something and is not written immediately, this may cause the peripheral to not work in a timely fashion.