The STM32F405RG datasheet says that full duplex I2S is supported, but the I2S::new_full_duplex() method isn't enabled in Embassy. It looks like it is gated on the spi_v4 || spi_v5 config attributes, so maybe one of these is being set incorrectly for this chip? (Sorry, I wasn't able to figure out how these configs get set or I would have sent a PR!)
On a slightly different topic (and maybe a better issue for embassy_stm32), it seems like the mck output pin is not required for I2S rx/full_duplex operation, but it is required by the API. Is there a reason for this?