mirror of https://gitee.com/openkylin/linux.git
Actions Semi ARM64 changes for v5.5:
Most of the basic infrastructure is completed for the ARM64 S900 SoC. It can now boot a distro from eMMC/uSD with mainline kernel. Below are the changes for this cycle (only S900): - Added MMC controller support for S900 SoC. There are 4 controllers in this SoC, each capable of accessing MMC cards as well as SDIO. - Added onboard eMMC and uSD support for 96Boards Bubblegum96 board based on S900. Since the MMC driver is not capable of supporting SDIO currently, it is not enabled for now. And with the absence of PMIC support, fixed regulators are used to model the power supply. -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEZ6VDKoFIy9ikWCeXVZ8R5v6RzvUFAl2vFLgACgkQVZ8R5v6R zvWvLAf+PU1sBy9Z97OiFKOhUooDXX8g1dKnQU7KbYKcGlbUSohxyrByblXBzxon 2b85Q8xE63eelDpRq5tCtQk6mry2q48FNltQxCj8meTipF9l+vsDSVijOPc+llCA b8GE+xwl6FEP7mLcuJQmUmrYspSeeAi+bGWakj/8yp1wwwX+M89NvD7odBdNFpq9 +hEkgyxC4wtKhz2142ZaxlFleTAorsnrgSicOm4VtHZwbWmjgoYH0X4D9nSyWbcT 5nJZ6R6igi+BwZ683Lq87Z7NC4XebXuYmK4xYvqDPAzBwg76Jj/fgxOZsWoZMoON +vO0tw6/EwGg1pKRWu259t0ytTwzEQ== =f4lh -----END PGP SIGNATURE----- Merge tag 'actions-arm64-dt-for-v5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/mani/linux-actions into arm/dt Actions Semi ARM64 changes for v5.5: Most of the basic infrastructure is completed for the ARM64 S900 SoC. It can now boot a distro from eMMC/uSD with mainline kernel. Below are the changes for this cycle (only S900): - Added MMC controller support for S900 SoC. There are 4 controllers in this SoC, each capable of accessing MMC cards as well as SDIO. - Added onboard eMMC and uSD support for 96Boards Bubblegum96 board based on S900. Since the MMC driver is not capable of supporting SDIO currently, it is not enabled for now. And with the absence of PMIC support, fixed regulators are used to model the power supply. * tag 'actions-arm64-dt-for-v5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/mani/linux-actions: arm64: dts: actions: Add uSD and eMMC support for Bubblegum96 arm64: dts: actions: Add MMC controller support for S900 Link: https://lore.kernel.org/r/20191022145012.GB3601@Mani-XPS-13-9360 Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
commit
a9d21d1517
|
@ -12,6 +12,9 @@ / {
|
|||
model = "Bubblegum-96";
|
||||
|
||||
aliases {
|
||||
mmc0 = &mmc0;
|
||||
mmc1 = &mmc1;
|
||||
mmc2 = &mmc2;
|
||||
serial5 = &uart5;
|
||||
};
|
||||
|
||||
|
@ -23,6 +26,24 @@ memory@0 {
|
|||
device_type = "memory";
|
||||
reg = <0x0 0x0 0x0 0x80000000>;
|
||||
};
|
||||
|
||||
/* Fixed regulator used in the absence of PMIC */
|
||||
vcc_3v1: vcc-3v1 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "fixed-3.1V";
|
||||
regulator-min-microvolt = <3100000>;
|
||||
regulator-max-microvolt = <3100000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
/* Fixed regulator used in the absence of PMIC */
|
||||
sd_vcc: sd-vcc {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "fixed-3.1V";
|
||||
regulator-min-microvolt = <3100000>;
|
||||
regulator-max-microvolt = <3100000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
|
@ -241,6 +262,47 @@ pinconf {
|
|||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
mmc0_default: mmc0_default {
|
||||
pinmux {
|
||||
groups = "sd0_d0_mfp", "sd0_d1_mfp", "sd0_d2_d3_mfp",
|
||||
"sd0_cmd_mfp", "sd0_clk_mfp";
|
||||
function = "sd0";
|
||||
};
|
||||
};
|
||||
|
||||
mmc2_default: mmc2_default {
|
||||
pinmux {
|
||||
groups = "nand0_d0_ceb3_mfp";
|
||||
function = "sd2";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* uSD */
|
||||
&mmc0 {
|
||||
status = "okay";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&mmc0_default>;
|
||||
no-sdio;
|
||||
no-mmc;
|
||||
no-1-8-v;
|
||||
cd-gpios = <&pinctrl 120 GPIO_ACTIVE_LOW>;
|
||||
bus-width = <4>;
|
||||
vmmc-supply = <&sd_vcc>;
|
||||
vqmmc-supply = <&sd_vcc>;
|
||||
};
|
||||
|
||||
/* eMMC */
|
||||
&mmc2 {
|
||||
status = "okay";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&mmc2_default>;
|
||||
no-sdio;
|
||||
no-sd;
|
||||
non-removable;
|
||||
bus-width = <8>;
|
||||
vmmc-supply = <&vcc_3v1>;
|
||||
};
|
||||
|
||||
&timer {
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
*/
|
||||
|
||||
#include <dt-bindings/clock/actions,s900-cmu.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/reset/actions,s900-reset.h>
|
||||
|
||||
|
@ -284,5 +285,49 @@ dma: dma-controller@e0260000 {
|
|||
dma-requests = <46>;
|
||||
clocks = <&cmu CLK_DMAC>;
|
||||
};
|
||||
|
||||
mmc0: mmc@e0330000 {
|
||||
compatible = "actions,owl-mmc";
|
||||
reg = <0x0 0xe0330000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&cmu CLK_SD0>;
|
||||
resets = <&cmu RESET_SD0>;
|
||||
dmas = <&dma 2>;
|
||||
dma-names = "mmc";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
mmc1: mmc@e0334000 {
|
||||
compatible = "actions,owl-mmc";
|
||||
reg = <0x0 0xe0334000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&cmu CLK_SD1>;
|
||||
resets = <&cmu RESET_SD1>;
|
||||
dmas = <&dma 3>;
|
||||
dma-names = "mmc";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
mmc2: mmc@e0338000 {
|
||||
compatible = "actions,owl-mmc";
|
||||
reg = <0x0 0xe0338000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&cmu CLK_SD2>;
|
||||
resets = <&cmu RESET_SD2>;
|
||||
dmas = <&dma 4>;
|
||||
dma-names = "mmc";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
mmc3: mmc@e033c000 {
|
||||
compatible = "actions,owl-mmc";
|
||||
reg = <0x0 0xe033c000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&cmu CLK_SD3>;
|
||||
resets = <&cmu RESET_SD3>;
|
||||
dmas = <&dma 46>;
|
||||
dma-names = "mmc";
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue