119024c09SMauro Carvalho Chehab==================================
219024c09SMauro Carvalho ChehabSD and MMC Block Device Attributes
319024c09SMauro Carvalho Chehab==================================
419024c09SMauro Carvalho Chehab
519024c09SMauro Carvalho ChehabThese attributes are defined for the block devices associated with the
619024c09SMauro Carvalho ChehabSD or MMC device.
719024c09SMauro Carvalho Chehab
819024c09SMauro Carvalho ChehabThe following attributes are read/write.
919024c09SMauro Carvalho Chehab
1019024c09SMauro Carvalho Chehab	========		===============================================
1119024c09SMauro Carvalho Chehab	force_ro		Enforce read-only access even if write protect 					switch is off.
1219024c09SMauro Carvalho Chehab	========		===============================================
1319024c09SMauro Carvalho Chehab
1419024c09SMauro Carvalho ChehabSD and MMC Device Attributes
1519024c09SMauro Carvalho Chehab============================
1619024c09SMauro Carvalho Chehab
1719024c09SMauro Carvalho ChehabAll attributes are read-only.
1819024c09SMauro Carvalho Chehab
1919024c09SMauro Carvalho Chehab	======================	===============================================
2019024c09SMauro Carvalho Chehab	cid			Card Identification Register
2119024c09SMauro Carvalho Chehab	csd			Card Specific Data Register
2219024c09SMauro Carvalho Chehab	scr			SD Card Configuration Register (SD only)
2319024c09SMauro Carvalho Chehab	date			Manufacturing Date (from CID Register)
2419024c09SMauro Carvalho Chehab	fwrev			Firmware/Product Revision (from CID Register)
2519024c09SMauro Carvalho Chehab				(SD and MMCv1 only)
2619024c09SMauro Carvalho Chehab	hwrev			Hardware/Product Revision (from CID Register)
2719024c09SMauro Carvalho Chehab				(SD and MMCv1 only)
2819024c09SMauro Carvalho Chehab	manfid			Manufacturer ID (from CID Register)
2919024c09SMauro Carvalho Chehab	name			Product Name (from CID Register)
3019024c09SMauro Carvalho Chehab	oemid			OEM/Application ID (from CID Register)
3119024c09SMauro Carvalho Chehab	prv			Product Revision (from CID Register)
3219024c09SMauro Carvalho Chehab				(SD and MMCv4 only)
3319024c09SMauro Carvalho Chehab	serial			Product Serial Number (from CID Register)
3419024c09SMauro Carvalho Chehab	erase_size		Erase group size
3519024c09SMauro Carvalho Chehab	preferred_erase_size	Preferred erase size
3619024c09SMauro Carvalho Chehab	raw_rpmb_size_mult	RPMB partition size
3719024c09SMauro Carvalho Chehab	rel_sectors		Reliable write sector count
3819024c09SMauro Carvalho Chehab	ocr 			Operation Conditions Register
3919024c09SMauro Carvalho Chehab	dsr			Driver Stage Register
4019024c09SMauro Carvalho Chehab	cmdq_en			Command Queue enabled:
4119024c09SMauro Carvalho Chehab
4219024c09SMauro Carvalho Chehab					1 => enabled, 0 => not enabled
4319024c09SMauro Carvalho Chehab	======================	===============================================
4419024c09SMauro Carvalho Chehab
4519024c09SMauro Carvalho ChehabNote on Erase Size and Preferred Erase Size:
4619024c09SMauro Carvalho Chehab
4719024c09SMauro Carvalho Chehab	"erase_size" is the  minimum size, in bytes, of an erase
4819024c09SMauro Carvalho Chehab	operation.  For MMC, "erase_size" is the erase group size
4919024c09SMauro Carvalho Chehab	reported by the card.  Note that "erase_size" does not apply
5019024c09SMauro Carvalho Chehab	to trim or secure trim operations where the minimum size is
5119024c09SMauro Carvalho Chehab	always one 512 byte sector.  For SD, "erase_size" is 512
5219024c09SMauro Carvalho Chehab	if the card is block-addressed, 0 otherwise.
5319024c09SMauro Carvalho Chehab
5419024c09SMauro Carvalho Chehab	SD/MMC cards can erase an arbitrarily large area up to and
5519024c09SMauro Carvalho Chehab	including the whole card.  When erasing a large area it may
5619024c09SMauro Carvalho Chehab	be desirable to do it in smaller chunks for three reasons:
5719024c09SMauro Carvalho Chehab
5819024c09SMauro Carvalho Chehab	     1. A single erase command will make all other I/O on
5919024c09SMauro Carvalho Chehab		the card wait.  This is not a problem if the whole card
6019024c09SMauro Carvalho Chehab		is being erased, but erasing one partition will make
6119024c09SMauro Carvalho Chehab		I/O for another partition on the same card wait for the
6219024c09SMauro Carvalho Chehab		duration of the erase - which could be a several
6319024c09SMauro Carvalho Chehab		minutes.
6419024c09SMauro Carvalho Chehab	     2. To be able to inform the user of erase progress.
6519024c09SMauro Carvalho Chehab	     3. The erase timeout becomes too large to be very
6619024c09SMauro Carvalho Chehab		useful.  Because the erase timeout contains a margin
6719024c09SMauro Carvalho Chehab		which is multiplied by the size of the erase area,
6819024c09SMauro Carvalho Chehab		the value can end up being several minutes for large
6919024c09SMauro Carvalho Chehab		areas.
7019024c09SMauro Carvalho Chehab
7119024c09SMauro Carvalho Chehab	"erase_size" is not the most efficient unit to erase
7219024c09SMauro Carvalho Chehab	(especially for SD where it is just one sector),
7319024c09SMauro Carvalho Chehab	hence "preferred_erase_size" provides a good chunk
7419024c09SMauro Carvalho Chehab	size for erasing large areas.
7519024c09SMauro Carvalho Chehab
7619024c09SMauro Carvalho Chehab	For MMC, "preferred_erase_size" is the high-capacity
7719024c09SMauro Carvalho Chehab	erase size if a card specifies one, otherwise it is
7819024c09SMauro Carvalho Chehab	based on the capacity of the card.
7919024c09SMauro Carvalho Chehab
8019024c09SMauro Carvalho Chehab	For SD, "preferred_erase_size" is the allocation unit
8119024c09SMauro Carvalho Chehab	size specified by the card.
8219024c09SMauro Carvalho Chehab
8319024c09SMauro Carvalho Chehab	"preferred_erase_size" is in bytes.
8419024c09SMauro Carvalho Chehab
8519024c09SMauro Carvalho ChehabNote on raw_rpmb_size_mult:
8619024c09SMauro Carvalho Chehab
8719024c09SMauro Carvalho Chehab	"raw_rpmb_size_mult" is a multiple of 128kB block.
8819024c09SMauro Carvalho Chehab
8919024c09SMauro Carvalho Chehab	RPMB size in byte is calculated by using the following equation:
9019024c09SMauro Carvalho Chehab
9119024c09SMauro Carvalho Chehab		RPMB partition size = 128kB x raw_rpmb_size_mult
92