Follow

OSHWA has come out with a set of recommendations for replacing master/slave terminology in SPI:
oshwa.org/a-resolution-to-rede
Don't let the door hit you on the way out, MOSI/MISO.

@amsomniac exactly! If I could alter this proposal at all it would be to change COPI/CIPO to COPI/POCI; it's way easier to distinguish consonant swaps than vowel swaps

@phooky I don't like that they're banking so hard on SDO and SDI. One of the things I liked about SPI is that you just connect the pins with the same name together and it works. I don't like how on UART, you're just supposed to know that Rx means receiver and Tx means transmitter, and SDO/SDI seems to be going in that direction.
COPI/CIPO seems reasonable though.

@phooky linux$ git grep -i master -- Documentation/spi Documentation/devicetree/bindings/spi drivers/spi/ | wc -l
3774
linux$ git grep -i slave -- Documentation/spi Documentation/devicetree/bindings/spi drivers/spi/ | wc -l
909

@geert
$ sed 's/master/controller/g' -i Documentation/spi
$ sed 's/master/controller/g' -i Documentation/devicetree/bindings/spi
$ sed 's/master/controller/g' -i drivers/spi/

$ sed 's/slave/peripheral/g' -i Documentation/spi
$ sed 's/slave/peripheral/g' -i Documentation/devicetree/bindings/spi
$ sed 's/slave/peripheral/g' -i drivers/spi/

@spacekatia Actually "spi_controller" is already the canonical name, since the addition of slave^Wperipheral support.
But that means "controller" is the neutral name that fits both roles, at least in Linux.
So we need a third name...

@phooky Besides COPI/CIPO, the rest was already used by lots of SPI devices anyways...

@x44203 yep. it's a small change, but one that had been discussed for a while. It's a good prompt to be more thoughtful about language.

@phooky Hm yes, though I kinda wonder who thought that the old terminology was a good idea in the first place...
Like Controller-Peripheral even makes much more sense...

Sign in to participate in the conversation
Octodon

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!