Ethernet Arduino and SPI

I'm looking at the Ethernet Arduino datasheet here;

http://arduino.cc/en/Main/arduinoBoardEthernet

And in the first section it says the pins 10, 11, 12, and 13 are reserved for the ethernet communications.

Than down in the Input/Ouput section is says that those same pins can be used for SPI communications.

I'd like to use this board with a MCP23S17 so I can use the MCP library which emulates regular port writing on the Arduino. Is this possible on the ethernet Arduino (I have a rev 3 board)? What about using the ICSP pins? Can I just repurpose those pins to be MOSI/MISO/SS/SCK for the MCP library, if so, how would I go about doing that?

Thanks in advance.

The SPI is a bus, it can be use for a number of SPI devices. Every device should have its own ChipSelect, and every library should use the ChipSelect in a proper way for every device.

  • make chip select active (active is low)
  • do spi communication with the device (SPI.transfer)
  • make chip select inactive