SD Specifications
Part 1
Physical Layer
Simplified Specification
Version 4.10
https://www.sdcard.org/downloads/pls/simplified_specs/part1_410.pdf
page 38
4.3.5 Erase
It is desirable to erase many write blocks simultaneously in order to enhance the data
throughput. Identification of these write blocks is accomplished with the
ERASE_WR_BLK_START (CMD32), ERASE_WR_BLK_END (CMD33) commands.
The host should adhere to the following command sequence: ERASE_WR_BLK_START,
ERASE_WR_BLK_END and ERASE (CMD38).
So there's something like trim, but trim is an ATA command. But I don't know
whether this is what mkfs.btrfs is using, or if it's asking some other library to do
it, and it's that library that differentiates and mkfs.btrfs has no idea. And then
whether fstrim is using some other library and hence the difference.
Rabbit hole.
Chris Murphy