I2S slave mode not working

I2S seems to be capable of a slave mode but not really...
Comment above the other version of I2S.begin() suggest initialization of I2S in slave mode.
I am using the SingleTone example with only changing the begin function. Checking the signals on an oscilloscope I can see the other device's (master's) CLK and WS signals, but the slave's data line is silent.

Could anyone please explain? Is my assumption incorrect, do I need to do something else before using I2S in slave mode... ?

I would spend a few hours and study the I2C specification. FYI I2S components operate in master mode only. It also operates in both directions: as a transmitter (Tx) and a receiver (Rx) . Note: Tx and Rx are independent byte streams. The byte streams are packed with the most significant byte first and the most significant bit in bit 7 of the first word.

Hi, @gilshultz I was hoping to get an advice from someone experienced and knowledgeable about the topic, but feel free to

spend a few hours and study the I2C specification

Here is a great start that explains the relationship between master and slave(s) https://www.sparkfun.com/datasheets/BreakoutBoards/I2SBUS.pdf
Here is a something from that document: In the I2S format, any device can act as the system master by
providing the necessary clock signals. A slave will usually derive its
internal clock signal from an external clock input.

Also in the source code, it is explicitly stated that the begin function without sampleRate parameter is initializing in slave mode https://github.com/arduino/ArduinoCore-samd/blob/89833081ef18aea430b8943ab653dbbd510d43ce/libraries/I2S/src/I2S.cpp#L56
You can take a look at the source code to understand it better.