SDMMC Subsystem Test
##################

This test is designed to verify the SD subsystem stack implementation,
and run stress tests to verify large data transfers succeed using the
subsystem. Due to the differences between underlying SD host controller drivers,
this test also serves as a complete test for the SDHC driver implementation in
use. It requires an SD card be connected to the board to pass, and will
perform destructive I/O on the card, wiping any data present. The test has
the following phases:

* Init test: verify the SD host controller can detect card presence, and
  test the initialization flow of the SDMMC subsystem to verify that the stack
  can correctly initialize an SD card.

* IOCTL test: verify the SD subsystem correctly implements IOCTL calls required
  for block devices in Zephyr.

* Read test: verify that single block reads work, followed by multiple
  block reads. Ensure the subsystem will reject reads beyond the end of
  the card's stated size.

* Write test: verify that single block writes work, followed by multiple
  block writes. Ensure the subsystem will reject writes beyond the end of
  the card's stated size.

* R/W test: write data to the SD card, and verify that it is able
  to be read back without error. Perform this R/W combination at several
  sector locations across the SD card.
