Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) * Atmel High Speed MultiMedia Card Interface
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) This controller on atmel products provides an interface for MMC, SD and SDIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) types of memory cards.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) This file documents differences between the core properties described
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) by mmc.txt and the properties used by the atmel-mci driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) 1) MCI node
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) - compatible: should be "atmel,hsmci"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) - #address-cells: should be one. The cell is the slot id.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) - #size-cells: should be zero.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) - at least one slot node
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) - clock-names: tuple listing input clock names.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) 	Required elements: "mci_clk"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - clocks: phandles to input clocks.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) The node contains child nodes for each slot that the platform uses
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) Example MCI node:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) mmc0: mmc@f0008000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 	compatible = "atmel,hsmci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 	reg = <0xf0008000 0x600>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 	interrupts = <12 4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 	#address-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 	#size-cells = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 	clock-names = "mci_clk";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	clocks = <&mci0_clk>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 	[ child node definitions...]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 2) slot nodes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) - reg: should contain the slot id.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) - bus-width: number of data lines connected to the controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) Optional properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) - cd-gpios: specify GPIOs for card detection
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) - cd-inverted: invert the value of external card detect gpio line
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) - wp-gpios: specify GPIOs for write protection
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) Example slot node:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) slot@0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 	reg = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) 	bus-width = <4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 	cd-gpios = <&pioD 15 0>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) 	cd-inverted;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) Example full MCI node:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) mmc0: mmc@f0008000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) 	compatible = "atmel,hsmci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) 	reg = <0xf0008000 0x600>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) 	interrupts = <12 4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) 	#address-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) 	#size-cells = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) 	slot@0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) 		reg = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) 		bus-width = <4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) 		cd-gpios = <&pioD 15 0>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) 		cd-inverted;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) 	slot@1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) 		reg = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) 		bus-width = <4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) };