Do you need to implement multiple access to spi and i2c buses yourself?
The drivers already exist but they are addressed with different methods.
For I2C, each device has its own ID that can be used to control it. You can’t have more than 1 device on the same bus with the same ID.
With SPI you control each device with a GPIO pin to enable it during SPI read and write. There is no limit to the number of the same device other than the limit of available GPIO pins or some other method of controlling the ENABLE pin (e.g. bus expander)
i mean software driver
The drivers are included with TinyCLR2.0 and also with the older NETMF. A driver for a particular IC is likely to be down to yourself unless you can find something in NUGET.
What are you actually looking for?
i’m talking about thread safe bus access
You would have to implement this by yourself. In our drivers, we have used locks.