ARM: dts: meson: add the SDHC MMC controller
Meson6, Meson8, Meson8b and Meson8m2 are using a similar SDHC controller IP which typically connects to an eMMC chip (because unlike the SDIO controller the SDHC controller has an 8-bit bus interface). On Meson8, Meson8b and Meson8m2 the clock inputs are all the same. However, Meson8m2 seems to have an improved version of the SHDC controller IP which doesn't require the driver to wait manually for a flush of a DMA transfer. Thus every SoC has it's own compatible string so if more difference are discovered they can be implemented. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com> Link: https://lore.kernel.org/r/20200620163654.37207-2-martin.blumenstingl@googlemail.com
This commit is contained in:
		
							parent
							
								
									9960cacbae
								
							
						
					
					
						commit
						73106f75bf
					
				| @ -140,6 +140,13 @@ | ||||
| 				status = "disabled"; | ||||
| 			}; | ||||
| 
 | ||||
| 			sdhc: mmc@8e00 { | ||||
| 				compatible = "amlogic,meson-mx-sdhc"; | ||||
| 				reg = <0x8e00 0x42>; | ||||
| 				interrupts = <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>; | ||||
| 				status = "disabled"; | ||||
| 			}; | ||||
| 
 | ||||
| 			gpio_intc: interrupt-controller@9880 { | ||||
| 				compatible = "amlogic,meson-gpio-intc"; | ||||
| 				reg = <0x9880 0x10>; | ||||
|  | ||||
| @ -386,6 +386,15 @@ | ||||
| 			}; | ||||
| 		}; | ||||
| 
 | ||||
| 		sdxc_b_pins: sdxc-b { | ||||
| 			mux { | ||||
| 				groups = "sdxc_d0_b", "sdxc_d13_b", | ||||
| 					 "sdxc_clk_b", "sdxc_cmd_b"; | ||||
| 				function = "sdxc_b"; | ||||
| 				bias-pull-up; | ||||
| 			}; | ||||
| 		}; | ||||
| 
 | ||||
| 		spi_nor_pins: nor { | ||||
| 			mux { | ||||
| 				groups = "nor_d", "nor_q", "nor_c", "nor_cs"; | ||||
| @ -560,6 +569,16 @@ | ||||
| 	nvmem-cell-names = "temperature_calib"; | ||||
| }; | ||||
| 
 | ||||
| &sdhc { | ||||
| 	compatible = "amlogic,meson8-sdhc", "amlogic,meson-mx-sdhc"; | ||||
| 	clocks = <&xtal>, | ||||
| 		 <&clkc CLKID_FCLK_DIV4>, | ||||
| 		 <&clkc CLKID_FCLK_DIV3>, | ||||
| 		 <&clkc CLKID_FCLK_DIV5>, | ||||
| 		 <&clkc CLKID_SDHC>; | ||||
| 	clock-names = "clkin0", "clkin1", "clkin2", "clkin3", "pclk"; | ||||
| }; | ||||
| 
 | ||||
| &sdio { | ||||
| 	compatible = "amlogic,meson8-sdio", "amlogic,meson-mx-sdio"; | ||||
| 	clocks = <&clkc CLKID_SDIO>, <&clkc CLKID_CLK81>; | ||||
|  | ||||
| @ -363,6 +363,16 @@ | ||||
| 			}; | ||||
| 		}; | ||||
| 
 | ||||
| 		sdxc_c_pins: sdxc-c { | ||||
| 			mux { | ||||
| 				groups = "sdxc_d0_c", "sdxc_d13_c", | ||||
| 					 "sdxc_d47_c", "sdxc_clk_c", | ||||
| 					 "sdxc_cmd_c"; | ||||
| 				function = "sdxc_c"; | ||||
| 				bias-pull-up; | ||||
| 			}; | ||||
| 		}; | ||||
| 
 | ||||
| 		pwm_c1_pins: pwm-c1 { | ||||
| 			mux { | ||||
| 				groups = "pwm_c1"; | ||||
| @ -554,6 +564,16 @@ | ||||
| 	nvmem-cell-names = "temperature_calib"; | ||||
| }; | ||||
| 
 | ||||
| &sdhc { | ||||
| 	compatible = "amlogic,meson8-sdhc", "amlogic,meson-mx-sdhc"; | ||||
| 	clocks = <&xtal>, | ||||
| 		 <&clkc CLKID_FCLK_DIV4>, | ||||
| 		 <&clkc CLKID_FCLK_DIV3>, | ||||
| 		 <&clkc CLKID_FCLK_DIV5>, | ||||
| 		 <&clkc CLKID_SDHC>; | ||||
| 	clock-names = "clkin0", "clkin1", "clkin2", "clkin3", "pclk"; | ||||
| }; | ||||
| 
 | ||||
| &sdio { | ||||
| 	compatible = "amlogic,meson8b-sdio", "amlogic,meson-mx-sdio"; | ||||
| 	clocks = <&clkc CLKID_SDIO>, <&clkc CLKID_CLK81>; | ||||
|  | ||||
| @ -84,6 +84,10 @@ | ||||
| 	compatible = "amlogic,meson8m2-saradc", "amlogic,meson-saradc"; | ||||
| }; | ||||
| 
 | ||||
| &sdhc { | ||||
| 	compatible = "amlogic,meson8m2-sdhc", "amlogic,meson-mx-sdhc"; | ||||
| }; | ||||
| 
 | ||||
| &usb0_phy { | ||||
| 	compatible = "amlogic,meson8m2-usb2-phy", "amlogic,meson-mx-usb2-phy"; | ||||
| }; | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user