Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
kernel_linux
提交
7b27fa25
K
kernel_linux
项目概览
OpenHarmony
/
kernel_linux
上一次同步 4 年多
通知
15
Star
8
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kernel_linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
7b27fa25
编写于
10月 01, 2012
作者:
O
Olof Johansson
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'next/dt2' into HEAD
Conflicts: arch/arm/mach-exynos/clock-exynos5.c
上级
a8e1ceb7
6fd9b70e
变更
12
隐藏空白更改
内联
并排
Showing
12 changed file
with
644 addition
and
326 deletion
+644
-326
arch/arm/boot/dts/exynos4.dtsi
arch/arm/boot/dts/exynos4.dtsi
+248
-0
arch/arm/boot/dts/exynos4210-origen.dts
arch/arm/boot/dts/exynos4210-origen.dts
+7
-56
arch/arm/boot/dts/exynos4210-smdkv310.dts
arch/arm/boot/dts/exynos4210-smdkv310.dts
+5
-49
arch/arm/boot/dts/exynos4210-trats.dts
arch/arm/boot/dts/exynos4210-trats.dts
+237
-0
arch/arm/boot/dts/exynos4210.dtsi
arch/arm/boot/dts/exynos4210.dtsi
+5
-181
arch/arm/boot/dts/exynos5250-smdk5250.dts
arch/arm/boot/dts/exynos5250-smdk5250.dts
+58
-1
arch/arm/boot/dts/exynos5250.dtsi
arch/arm/boot/dts/exynos5250.dtsi
+32
-0
arch/arm/mach-exynos/Makefile.boot
arch/arm/mach-exynos/Makefile.boot
+1
-1
arch/arm/mach-exynos/clock-exynos5.c
arch/arm/mach-exynos/clock-exynos5.c
+16
-29
arch/arm/mach-exynos/include/mach/map.h
arch/arm/mach-exynos/include/mach/map.h
+4
-0
arch/arm/mach-exynos/mach-exynos4-dt.c
arch/arm/mach-exynos/mach-exynos4-dt.c
+23
-9
arch/arm/mach-exynos/mach-exynos5-dt.c
arch/arm/mach-exynos/mach-exynos5-dt.c
+8
-0
未找到文件。
arch/arm/boot/dts/exynos4.dtsi
0 → 100644
浏览文件 @
7b27fa25
/*
* Samsung's Exynos4 SoC series common device tree source
*
* Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
* http://www.samsung.com
* Copyright (c) 2010-2011 Linaro Ltd.
* www.linaro.org
*
* Samsung's Exynos4 SoC series device nodes are listed in this file. Particular
* SoCs from Exynos4 series can include this file and provide values for SoCs
* specfic bindings.
*
* Note: This file does not include device nodes for all the controllers in
* Exynos4 SoCs. As device tree coverage for Exynos4 increases, additional
* nodes can be added to this file.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
/include/ "skeleton.dtsi"
/ {
interrupt-parent = <&gic>;
aliases {
spi0 = &spi_0;
spi1 = &spi_1;
spi2 = &spi_2;
};
gic:interrupt-controller@10490000 {
compatible = "arm,cortex-a9-gic";
#interrupt-cells = <3>;
interrupt-controller;
reg = <0x10490000 0x1000>, <0x10480000 0x100>;
};
combiner:interrupt-controller@10440000 {
compatible = "samsung,exynos4210-combiner";
#interrupt-cells = <2>;
interrupt-controller;
reg = <0x10440000 0x1000>;
};
watchdog@10060000 {
compatible = "samsung,s3c2410-wdt";
reg = <0x10060000 0x100>;
interrupts = <0 43 0>;
status = "disabled";
};
rtc@10070000 {
compatible = "samsung,s3c6410-rtc";
reg = <0x10070000 0x100>;
interrupts = <0 44 0>, <0 45 0>;
status = "disabled";
};
keypad@100A0000 {
compatible = "samsung,s5pv210-keypad";
reg = <0x100A0000 0x100>;
interrupts = <0 109 0>;
status = "disabled";
};
sdhci@12510000 {
compatible = "samsung,exynos4210-sdhci";
reg = <0x12510000 0x100>;
interrupts = <0 73 0>;
status = "disabled";
};
sdhci@12520000 {
compatible = "samsung,exynos4210-sdhci";
reg = <0x12520000 0x100>;
interrupts = <0 74 0>;
status = "disabled";
};
sdhci@12530000 {
compatible = "samsung,exynos4210-sdhci";
reg = <0x12530000 0x100>;
interrupts = <0 75 0>;
status = "disabled";
};
sdhci@12540000 {
compatible = "samsung,exynos4210-sdhci";
reg = <0x12540000 0x100>;
interrupts = <0 76 0>;
status = "disabled";
};
serial@13800000 {
compatible = "samsung,exynos4210-uart";
reg = <0x13800000 0x100>;
interrupts = <0 52 0>;
status = "disabled";
};
serial@13810000 {
compatible = "samsung,exynos4210-uart";
reg = <0x13810000 0x100>;
interrupts = <0 53 0>;
status = "disabled";
};
serial@13820000 {
compatible = "samsung,exynos4210-uart";
reg = <0x13820000 0x100>;
interrupts = <0 54 0>;
status = "disabled";
};
serial@13830000 {
compatible = "samsung,exynos4210-uart";
reg = <0x13830000 0x100>;
interrupts = <0 55 0>;
status = "disabled";
};
i2c@13860000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "samsung,s3c2440-i2c";
reg = <0x13860000 0x100>;
interrupts = <0 58 0>;
status = "disabled";
};
i2c@13870000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "samsung,s3c2440-i2c";
reg = <0x13870000 0x100>;
interrupts = <0 59 0>;
status = "disabled";
};
i2c@13880000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "samsung,s3c2440-i2c";
reg = <0x13880000 0x100>;
interrupts = <0 60 0>;
status = "disabled";
};
i2c@13890000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "samsung,s3c2440-i2c";
reg = <0x13890000 0x100>;
interrupts = <0 61 0>;
status = "disabled";
};
i2c@138A0000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "samsung,s3c2440-i2c";
reg = <0x138A0000 0x100>;
interrupts = <0 62 0>;
status = "disabled";
};
i2c@138B0000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "samsung,s3c2440-i2c";
reg = <0x138B0000 0x100>;
interrupts = <0 63 0>;
status = "disabled";
};
i2c@138C0000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "samsung,s3c2440-i2c";
reg = <0x138C0000 0x100>;
interrupts = <0 64 0>;
status = "disabled";
};
i2c@138D0000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "samsung,s3c2440-i2c";
reg = <0x138D0000 0x100>;
interrupts = <0 65 0>;
status = "disabled";
};
spi_0: spi@13920000 {
compatible = "samsung,exynos4210-spi";
reg = <0x13920000 0x100>;
interrupts = <0 66 0>;
tx-dma-channel = <&pdma0 7>; /* preliminary */
rx-dma-channel = <&pdma0 6>; /* preliminary */
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
spi_1: spi@13930000 {
compatible = "samsung,exynos4210-spi";
reg = <0x13930000 0x100>;
interrupts = <0 67 0>;
tx-dma-channel = <&pdma1 7>; /* preliminary */
rx-dma-channel = <&pdma1 6>; /* preliminary */
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
spi_2: spi@13940000 {
compatible = "samsung,exynos4210-spi";
reg = <0x13940000 0x100>;
interrupts = <0 68 0>;
tx-dma-channel = <&pdma0 9>; /* preliminary */
rx-dma-channel = <&pdma0 8>; /* preliminary */
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
amba {
#address-cells = <1>;
#size-cells = <1>;
compatible = "arm,amba-bus";
interrupt-parent = <&gic>;
ranges;
pdma0: pdma@12680000 {
compatible = "arm,pl330", "arm,primecell";
reg = <0x12680000 0x1000>;
interrupts = <0 35 0>;
};
pdma1: pdma@12690000 {
compatible = "arm,pl330", "arm,primecell";
reg = <0x12690000 0x1000>;
interrupts = <0 36 0>;
};
};
};
arch/arm/boot/dts/exynos4210-origen.dts
浏览文件 @
7b27fa25
...
...
@@ -40,6 +40,7 @@
<&gpk2 4 2 3 3>,
<&gpk2 5 2 3 3>,
<&gpk2 6 2 3 3>;
status = "okay";
};
sdhci@12510000 {
...
...
@@ -53,6 +54,7 @@
<&gpk0 4 2 3 3>,
<&gpk0 5 2 3 3>,
<&gpk0 6 2 3 3>;
status = "okay";
};
gpio_keys {
...
...
@@ -64,30 +66,35 @@
label = "Up";
gpios = <&gpx2 0 0 0x10000 2>;
linux,code = <103>;
gpio-key,wakeup;
};
down {
label = "Down";
gpios = <&gpx2 1 0 0x10000 2>;
linux,code = <108>;
gpio-key,wakeup;
};
back {
label = "Back";
gpios = <&gpx1 7 0 0x10000 2>;
linux,code = <158>;
gpio-key,wakeup;
};
home {
label = "Home";
gpios = <&gpx1 6 0 0x10000 2>;
linux,code = <102>;
gpio-key,wakeup;
};
menu {
label = "Menu";
gpios = <&gpx1 5 0 0x10000 2>;
linux,code = <139>;
gpio-key,wakeup;
};
};
...
...
@@ -98,60 +105,4 @@
linux,default-trigger = "heartbeat";
};
};
keypad@100A0000 {
status = "disabled";
};
sdhci@12520000 {
status = "disabled";
};
sdhci@12540000 {
status = "disabled";
};
i2c@13860000 {
status = "disabled";
};
i2c@13870000 {
status = "disabled";
};
i2c@13880000 {
status = "disabled";
};
i2c@13890000 {
status = "disabled";
};
i2c@138A0000 {
status = "disabled";
};
i2c@138B0000 {
status = "disabled";
};
i2c@138C0000 {
status = "disabled";
};
i2c@138D0000 {
status = "disabled";
};
spi_0: spi@13920000 {
status = "disabled";
};
spi_1: spi@13930000 {
status = "disabled";
};
spi_2: spi@13940000 {
status = "disabled";
};
};
arch/arm/boot/dts/exynos4210-smdkv310.dts
浏览文件 @
7b27fa25
...
...
@@ -26,7 +26,7 @@
};
chosen {
bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC
1
,115200 init=/linuxrc";
bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC
2
,115200 init=/linuxrc";
};
sdhci@12530000 {
...
...
@@ -40,6 +40,7 @@
<&gpk2 4 2 3 3>,
<&gpk2 5 2 3 3>,
<&gpk2 6 2 3 3>;
status = "okay";
};
keypad@100A0000 {
...
...
@@ -47,6 +48,7 @@
samsung,keypad-num-columns = <8>;
linux,keypad-no-autorepeat;
linux,keypad-wakeup;
status = "okay";
row-gpios = <&gpx2 0 3 3 0>,
<&gpx2 1 3 3 0>;
...
...
@@ -128,6 +130,7 @@
samsung,i2c-max-bus-freq = <20000>;
gpios = <&gpd1 0 2 3 0>,
<&gpd1 1 2 3 0>;
status = "okay";
eeprom@50 {
compatible = "samsung,24ad0xd1";
...
...
@@ -140,58 +143,11 @@
};
};
sdhci@12510000 {
status = "disabled";
};
sdhci@12520000 {
status = "disabled";
};
sdhci@12540000 {
status = "disabled";
};
i2c@13870000 {
status = "disabled";
};
i2c@13880000 {
status = "disabled";
};
i2c@13890000 {
status = "disabled";
};
i2c@138A0000 {
status = "disabled";
};
i2c@138B0000 {
status = "disabled";
};
i2c@138C0000 {
status = "disabled";
};
i2c@138D0000 {
status = "disabled";
};
spi_0: spi@13920000 {
status = "disabled";
};
spi_1: spi@13930000 {
status = "disabled";
};
spi_2: spi@13940000 {
gpios = <&gpc1 1 5 3 0>,
<&gpc1 3 5 3 0>,
<&gpc1 4 5 3 0>;
status = "okay";
w25x80@0 {
#address-cells = <1>;
...
...
arch/arm/boot/dts/exynos4210-trats.dts
0 → 100644
浏览文件 @
7b27fa25
/*
*
Samsung
's Exynos4210 based Trats board device tree source
*
* Copyright (c) 2012 Samsung Electronics Co., Ltd.
* http://www.samsung.com
*
* Device tree source file for Samsung'
s
Trats
board
which
is
based
on
*
Samsung
's Exynos4210 SoC.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
/dts-v1/;
/include/ "exynos4210.dtsi"
/ {
model = "Samsung Trats based on Exynos4210";
compatible = "samsung,trats", "samsung,exynos4210";
memory {
reg = <0x40000000 0x20000000
0x60000000 0x20000000>;
};
chosen {
bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5";
};
vemmc_reg: voltage-regulator@0 {
compatible = "regulator-fixed";
regulator-name = "VMEM_VDD_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
gpio = <&gpk0 2 1 0 0>;
enable-active-high;
};
sdhci_emmc: sdhci@12510000 {
bus-width = <8>;
non-removable;
broken-voltage;
gpios = <&gpk0 0 2 0 3>,
<&gpk0 1 2 0 3>,
<&gpk0 3 2 2 3>,
<&gpk0 4 2 2 3>,
<&gpk0 5 2 2 3>,
<&gpk0 6 2 2 3>,
<&gpk1 3 3 3 3>,
<&gpk1 4 3 3 3>,
<&gpk1 5 3 3 3>,
<&gpk1 6 3 3 3>;
vmmc-supply = <&vemmc_reg>;
status = "okay";
};
serial@13800000 {
status = "okay";
};
serial@13810000 {
status = "okay";
};
serial@13820000 {
status = "okay";
};
serial@13830000 {
status = "okay";
};
i2c@138B0000 {
samsung,i2c-sda-delay = <100>;
samsung,i2c-slave-addr = <0x10>;
samsung,i2c-max-bus-freq = <100000>;
gpios = <&gpb 6 3 3 0>,
<&gpb 7 3 3 0>;
status = "okay";
max8997_pmic@66 {
compatible = "maxim,max8997-pmic";
reg = <0x66>;
max8997,pmic-buck1-uses-gpio-dvs;
max8997,pmic-buck2-uses-gpio-dvs;
max8997,pmic-buck5-uses-gpio-dvs;
max8997,pmic-ignore-gpiodvs-side-effect;
max8997,pmic-buck125-default-dvs-idx = <0>;
max8997,pmic-buck125-dvs-gpios = <&gpx0 5 1 0 0>,
<&gpx0 6 1 0 0>,
<&gpl0 0 1 0 0>;
max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
<1250000>, <1200000>,
<1150000>, <1100000>,
<1000000>, <950000>;
max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>,
<950000>, <900000>,
<1100000>, <1000000>,
<950000>, <900000>;
max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>,
<1200000>, <1200000>,
<1200000>, <1200000>,
<1200000>, <1200000>;
regulators {
valive_reg: LDO2 {
regulator-name = "VALIVE_1.1V_C210";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
regulator-always-on;
};
vusb_reg: LDO3 {
regulator-name = "VUSB_1.1V_C210";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
};
vmipi_reg: LDO4 {
regulator-name = "VMIPI_1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
vpda_reg: LDO6 {
regulator-name = "VCC_1.8V_PDA";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vcam_reg: LDO7 {
regulator-name = "CAM_ISP_1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
vusbdac_reg: LDO8 {
regulator-name = "VUSB/VDAC_3.3V_C210";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
vccpda_reg: LDO9 {
regulator-name = "VCC_2.8V_PDA";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-always-on;
};
vpll_reg: LDO10 {
regulator-name = "VPLL_1.1V_C210";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
regulator-always-on;
};
vcclcd_reg: LDO13 {
regulator-name = "VCC_3.3V_LCD";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
vlcd_reg: LDO15 {
regulator-name = "VLCD_2.2V";
regulator-min-microvolt = <2200000>;
regulator-max-microvolt = <2200000>;
};
camsensor_reg: LDO16 {
regulator-name = "CAM_SENSOR_IO_1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
vddq_reg: LDO21 {
regulator-name = "VDDQ_M1M2_1.2V";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-always-on;
};
varm_breg: BUCK1 {
regulator-name = "VARM_1.2V_C210";
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <1350000>;
regulator-always-on;
};
vint_breg: BUCK2 {
regulator-name = "VINT_1.1V_C210";
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <1100000>;
regulator-always-on;
};
camisp_breg: BUCK4 {
regulator-name = "CAM_ISP_CORE_1.2V";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
};
vmem_breg: BUCK5 {
regulator-name = "VMEM_1.2V_C210";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-always-on;
};
vccsub_breg: BUCK7 {
regulator-name = "VCC_SUB_2.0V";
regulator-min-microvolt = <2000000>;
regulator-max-microvolt = <2000000>;
regulator-always-on;
};
safe1_sreg: ESAFEOUT1 {
regulator-name = "SAFEOUT1";
regulator-always-on;
};
safe2_sreg: ESAFEOUT2 {
regulator-name = "SAFEOUT2";
regulator-boot-on;
};
};
};
};
};
arch/arm/boot/dts/exynos4210.dtsi
浏览文件 @
7b27fa25
...
...
@@ -19,35 +19,23 @@
* published by the Free Software Foundation.
*/
/include/ "
skeleton
.dtsi"
/include/ "
exynos4
.dtsi"
/include/ "exynos4210-pinctrl.dtsi"
/ {
compatible = "samsung,exynos4210";
interrupt-parent = <&gic>;
aliases {
spi0 = &spi_0;
spi1 = &spi_1;
spi2 = &spi_2;
pinctrl0 = &pinctrl_0;
pinctrl1 = &pinctrl_1;
pinctrl2 = &pinctrl_2;
};
gic:interrupt-controller@10490000 {
compatible = "arm,cortex-a9-gic";
#interrupt-cells = <3>;
interrupt-controller;
cpu-offset = <0x8000>;
reg = <0x10490000 0x1000>, <0x10480000 0x100>;
};
combiner:interrupt-controller@10440000 {
compatible = "samsung,exynos4210-combiner";
#interrupt-cells = <2>;
interrupt-controller;
reg = <0x10440000 0x1000>;
interrupts = <0 0 0>, <0 1 0>, <0 2 0>, <0 3 0>,
<0 4 0>, <0 5 0>, <0 6 0>, <0 7 0>,
<0 8 0>, <0 9 0>, <0 10 0>, <0 11 0>,
...
...
@@ -75,10 +63,10 @@
interrupt-controller;
#interrupt-cells = <2>;
interrupts = <0 16 0>, <0 17 0>, <0 18 0>, <0 19 0>,
<0 20 0>, <0 21 0>, <0 22 0>, <0 23 0>,
<0 24 0>, <0 25 0>, <0 26 0>, <0 27 0>,
<0 28 0>, <0 29 0>, <0 30 0>, <0 31 0>,
<0 32 0>;
<0 20 0>, <0 21 0>, <0 22 0>, <0 23 0>,
<0 24 0>, <0 25 0>, <0 26 0>, <0 27 0>,
<0 28 0>, <0 29 0>, <0 30 0>, <0 31 0>,
<0 32 0>;
};
};
...
...
@@ -87,170 +75,6 @@
reg = <0x03860000 0x1000>;
};
watchdog@10060000 {
compatible = "samsung,s3c2410-wdt";
reg = <0x10060000 0x100>;
interrupts = <0 43 0>;
};
rtc@10070000 {
compatible = "samsung,s3c6410-rtc";
reg = <0x10070000 0x100>;
interrupts = <0 44 0>, <0 45 0>;
};
keypad@100A0000 {
compatible = "samsung,s5pv210-keypad";
reg = <0x100A0000 0x100>;
interrupts = <0 109 0>;
};
sdhci@12510000 {
compatible = "samsung,exynos4210-sdhci";
reg = <0x12510000 0x100>;
interrupts = <0 73 0>;
};
sdhci@12520000 {
compatible = "samsung,exynos4210-sdhci";
reg = <0x12520000 0x100>;
interrupts = <0 74 0>;
};
sdhci@12530000 {
compatible = "samsung,exynos4210-sdhci";
reg = <0x12530000 0x100>;
interrupts = <0 75 0>;
};
sdhci@12540000 {
compatible = "samsung,exynos4210-sdhci";
reg = <0x12540000 0x100>;
interrupts = <0 76 0>;
};
serial@13800000 {
compatible = "samsung,exynos4210-uart";
reg = <0x13800000 0x100>;
interrupts = <0 52 0>;
};
serial@13810000 {
compatible = "samsung,exynos4210-uart";
reg = <0x13810000 0x100>;
interrupts = <0 53 0>;
};
serial@13820000 {
compatible = "samsung,exynos4210-uart";
reg = <0x13820000 0x100>;
interrupts = <0 54 0>;
};
serial@13830000 {
compatible = "samsung,exynos4210-uart";
reg = <0x13830000 0x100>;
interrupts = <0 55 0>;
};
i2c@13860000 {
compatible = "samsung,s3c2440-i2c";
reg = <0x13860000 0x100>;
interrupts = <0 58 0>;
};
i2c@13870000 {
compatible = "samsung,s3c2440-i2c";
reg = <0x13870000 0x100>;
interrupts = <0 59 0>;
};
i2c@13880000 {
compatible = "samsung,s3c2440-i2c";
reg = <0x13880000 0x100>;
interrupts = <0 60 0>;
};
i2c@13890000 {
compatible = "samsung,s3c2440-i2c";
reg = <0x13890000 0x100>;
interrupts = <0 61 0>;
};
i2c@138A0000 {
compatible = "samsung,s3c2440-i2c";
reg = <0x138A0000 0x100>;
interrupts = <0 62 0>;
};
i2c@138B0000 {
compatible = "samsung,s3c2440-i2c";
reg = <0x138B0000 0x100>;
interrupts = <0 63 0>;
};
i2c@138C0000 {
compatible = "samsung,s3c2440-i2c";
reg = <0x138C0000 0x100>;
interrupts = <0 64 0>;
};
i2c@138D0000 {
compatible = "samsung,s3c2440-i2c";
reg = <0x138D0000 0x100>;
interrupts = <0 65 0>;
};
spi_0: spi@13920000 {
compatible = "samsung,exynos4210-spi";
reg = <0x13920000 0x100>;
interrupts = <0 66 0>;
tx-dma-channel = <&pdma0 7>; /* preliminary */
rx-dma-channel = <&pdma0 6>; /* preliminary */
#address-cells = <1>;
#size-cells = <0>;
};
spi_1: spi@13930000 {
compatible = "samsung,exynos4210-spi";
reg = <0x13930000 0x100>;
interrupts = <0 67 0>;
tx-dma-channel = <&pdma1 7>; /* preliminary */
rx-dma-channel = <&pdma1 6>; /* preliminary */
#address-cells = <1>;
#size-cells = <0>;
};
spi_2: spi@13940000 {
compatible = "samsung,exynos4210-spi";
reg = <0x13940000 0x100>;
interrupts = <0 68 0>;
tx-dma-channel = <&pdma0 9>; /* preliminary */
rx-dma-channel = <&pdma0 8>; /* preliminary */
#address-cells = <1>;
#size-cells = <0>;
};
amba {
#address-cells = <1>;
#size-cells = <1>;
compatible = "arm,amba-bus";
interrupt-parent = <&gic>;
ranges;
pdma0: pdma@12680000 {
compatible = "arm,pl330", "arm,primecell";
reg = <0x12680000 0x1000>;
interrupts = <0 35 0>;
};
pdma1: pdma@12690000 {
compatible = "arm,pl330", "arm,primecell";
reg = <0x12690000 0x1000>;
interrupts = <0 36 0>;
};
};
gpio-controllers {
#address-cells = <1>;
#size-cells = <1>;
...
...
arch/arm/boot/dts/exynos5250-smdk5250.dts
浏览文件 @
7b27fa25
...
...
@@ -16,12 +16,19 @@
model
=
"SAMSUNG SMDK5250 board based on EXYNOS5250"
;
compatible
=
"samsung,smdk5250"
,
"samsung,exynos5250"
;
aliases
{
mshc0
=
&
dwmmc_0
;
mshc1
=
&
dwmmc_1
;
mshc2
=
&
dwmmc_2
;
mshc3
=
&
dwmmc_3
;
};
memory
{
reg
=
<
0x40000000
0x80000000
>;
};
chosen
{
bootargs
=
"root=/dev/ram0 rw ramdisk=8192
console=ttySAC1,115200
"
;
bootargs
=
"root=/dev/ram0 rw ramdisk=8192
initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc
"
;
};
i2c
@
12
C60000
{
...
...
@@ -72,6 +79,56 @@
status
=
"disabled"
;
};
dwmmc_0
:
dwmmc0
@
12200000
{
num
-
slots
=
<
1
>;
supports
-
highspeed
;
broken
-
cd
;
fifo
-
depth
=
<
0x80
>;
card
-
detect
-
delay
=
<
200
>;
samsung
,
dw
-
mshc
-
ciu
-
div
=
<
3
>;
samsung
,
dw
-
mshc
-
sdr
-
timing
=
<
2
3
3
>;
samsung
,
dw
-
mshc
-
ddr
-
timing
=
<
1
2
3
>;
slot
@
0
{
reg
=
<
0
>;
bus
-
width
=
<
8
>;
gpios
=
<&
gpc0
0
2
0
3
>,
<&
gpc0
1
2
0
3
>,
<&
gpc1
0
2
3
3
>,
<&
gpc1
1
2
3
3
>,
<&
gpc1
2
2
3
3
>,
<&
gpc1
3
2
3
3
>,
<&
gpc0
3
2
3
3
>,
<&
gpc0
4
2
3
3
>,
<&
gpc0
5
2
3
3
>,
<&
gpc0
6
2
3
3
>;
};
};
dwmmc_1
:
dwmmc1
@
12210000
{
status
=
"disabled"
;
};
dwmmc_2
:
dwmmc2
@
12220000
{
num
-
slots
=
<
1
>;
supports
-
highspeed
;
fifo
-
depth
=
<
0x80
>;
card
-
detect
-
delay
=
<
200
>;
samsung
,
dw
-
mshc
-
ciu
-
div
=
<
3
>;
samsung
,
dw
-
mshc
-
sdr
-
timing
=
<
2
3
3
>;
samsung
,
dw
-
mshc
-
ddr
-
timing
=
<
1
2
3
>;
slot
@
0
{
reg
=
<
0
>;
bus
-
width
=
<
4
>;
samsung
,
cd
-
pinmux
-
gpio
=
<&
gpc3
2
2
3
3
>;
gpios
=
<&
gpc3
0
2
0
3
>,
<&
gpc3
1
2
0
3
>,
<&
gpc3
3
2
3
3
>,
<&
gpc3
4
2
3
3
>,
<&
gpc3
5
2
3
3
>,
<&
gpc3
6
2
3
3
>,
<&
gpc4
3
3
3
3
>,
<&
gpc4
3
3
3
3
>,
<&
gpc4
5
3
3
3
>,
<&
gpc4
6
3
3
3
>;
};
};
dwmmc_3
:
dwmmc3
@
12230000
{
status
=
"disabled"
;
};
spi_0
:
spi
@
12
d20000
{
status
=
"disabled"
;
};
...
...
arch/arm/boot/dts/exynos5250.dtsi
浏览文件 @
7b27fa25
...
...
@@ -186,6 +186,38 @@
#size-cells = <0>;
};
dwmmc0@12200000 {
compatible = "samsung,exynos5250-dw-mshc";
reg = <0x12200000 0x1000>;
interrupts = <0 75 0>;
#address-cells = <1>;
#size-cells = <0>;
};
dwmmc1@12210000 {
compatible = "samsung,exynos5250-dw-mshc";
reg = <0x12210000 0x1000>;
interrupts = <0 76 0>;
#address-cells = <1>;
#size-cells = <0>;
};
dwmmc2@12220000 {
compatible = "samsung,exynos5250-dw-mshc";
reg = <0x12220000 0x1000>;
interrupts = <0 77 0>;
#address-cells = <1>;
#size-cells = <0>;
};
dwmmc3@12230000 {
compatible = "samsung,exynos5250-dw-mshc";
reg = <0x12230000 0x1000>;
interrupts = <0 78 0>;
#address-cells = <1>;
#size-cells = <0>;
};
amba {
#address-cells = <1>;
#size-cells = <1>;
...
...
arch/arm/mach-exynos/Makefile.boot
浏览文件 @
7b27fa25
zreladdr-y
+=
0x40008000
params_phys-y
:=
0x40000100
dtb-$(CONFIG_MACH_EXYNOS4_DT)
+=
exynos4210-origen.dtb exynos4210-smdkv310.dtb
dtb-$(CONFIG_MACH_EXYNOS4_DT)
+=
exynos4210-origen.dtb exynos4210-smdkv310.dtb
exynos4210-trats.dtb
dtb-$(CONFIG_MACH_EXYNOS5_DT)
+=
exynos5250-smdk5250.dtb
arch/arm/mach-exynos/clock-exynos5.c
浏览文件 @
7b27fa25
...
...
@@ -626,34 +626,29 @@ static struct clk exynos5_init_clocks_off[] = {
.
enable
=
exynos5_clk_ip_peris_ctrl
,
.
ctrlbit
=
(
1
<<
19
),
},
{
.
name
=
"
hsmmc"
,
.
devname
=
"
exynos4-sdhci
.0"
,
.
name
=
"
biu"
,
/* bus interface unit clock */
.
devname
=
"
dw_mmc
.0"
,
.
parent
=
&
exynos5_clk_aclk_200
.
clk
,
.
enable
=
exynos5_clk_ip_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
12
),
},
{
.
name
=
"
hsmmc
"
,
.
devname
=
"
exynos4-sdhci
.1"
,
.
name
=
"
biu
"
,
.
devname
=
"
dw_mmc
.1"
,
.
parent
=
&
exynos5_clk_aclk_200
.
clk
,
.
enable
=
exynos5_clk_ip_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
13
),
},
{
.
name
=
"
hsmmc
"
,
.
devname
=
"
exynos4-sdhci
.2"
,
.
name
=
"
biu
"
,
.
devname
=
"
dw_mmc
.2"
,
.
parent
=
&
exynos5_clk_aclk_200
.
clk
,
.
enable
=
exynos5_clk_ip_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
14
),
},
{
.
name
=
"
hsmmc
"
,
.
devname
=
"
exynos4-sdhci
.3"
,
.
name
=
"
biu
"
,
.
devname
=
"
dw_mmc
.3"
,
.
parent
=
&
exynos5_clk_aclk_200
.
clk
,
.
enable
=
exynos5_clk_ip_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
15
),
},
{
.
name
=
"dwmci"
,
.
parent
=
&
exynos5_clk_aclk_200
.
clk
,
.
enable
=
exynos5_clk_ip_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
16
),
},
{
.
name
=
"sata"
,
.
devname
=
"ahci"
,
...
...
@@ -1095,8 +1090,8 @@ static struct clksrc_clk exynos5_clk_sclk_uart3 = {
static
struct
clksrc_clk
exynos5_clk_sclk_mmc0
=
{
.
clk
=
{
.
name
=
"
sclk_mmc"
,
.
devname
=
"
exynos4-sdhci
.0"
,
.
name
=
"
ciu"
,
/* card interface unit clock */
.
devname
=
"
dw_mmc
.0"
,
.
parent
=
&
exynos5_clk_dout_mmc0
.
clk
,
.
enable
=
exynos5_clksrc_mask_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
0
),
...
...
@@ -1106,8 +1101,8 @@ static struct clksrc_clk exynos5_clk_sclk_mmc0 = {
static
struct
clksrc_clk
exynos5_clk_sclk_mmc1
=
{
.
clk
=
{
.
name
=
"
sclk_mmc
"
,
.
devname
=
"
exynos4-sdhci
.1"
,
.
name
=
"
ciu
"
,
.
devname
=
"
dw_mmc
.1"
,
.
parent
=
&
exynos5_clk_dout_mmc1
.
clk
,
.
enable
=
exynos5_clksrc_mask_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
4
),
...
...
@@ -1117,8 +1112,8 @@ static struct clksrc_clk exynos5_clk_sclk_mmc1 = {
static
struct
clksrc_clk
exynos5_clk_sclk_mmc2
=
{
.
clk
=
{
.
name
=
"
sclk_mmc
"
,
.
devname
=
"
exynos4-sdhci
.2"
,
.
name
=
"
ciu
"
,
.
devname
=
"
dw_mmc
.2"
,
.
parent
=
&
exynos5_clk_dout_mmc2
.
clk
,
.
enable
=
exynos5_clksrc_mask_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
8
),
...
...
@@ -1128,8 +1123,8 @@ static struct clksrc_clk exynos5_clk_sclk_mmc2 = {
static
struct
clksrc_clk
exynos5_clk_sclk_mmc3
=
{
.
clk
=
{
.
name
=
"
sclk_mmc
"
,
.
devname
=
"
exynos4-sdhci
.3"
,
.
name
=
"
ciu
"
,
.
devname
=
"
dw_mmc
.3"
,
.
parent
=
&
exynos5_clk_dout_mmc3
.
clk
,
.
enable
=
exynos5_clksrc_mask_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
12
),
...
...
@@ -1214,14 +1209,6 @@ struct clksrc_clk exynos5_clk_sclk_fimd1 = {
static
struct
clksrc_clk
exynos5_clksrcs
[]
=
{
{
.
clk
=
{
.
name
=
"sclk_dwmci"
,
.
parent
=
&
exynos5_clk_dout_mmc4
.
clk
,
.
enable
=
exynos5_clksrc_mask_fsys_ctrl
,
.
ctrlbit
=
(
1
<<
16
),
},
.
reg_div
=
{
.
reg
=
EXYNOS5_CLKDIV_FSYS3
,
.
shift
=
8
,
.
size
=
8
},
},
{
.
clk
=
{
.
name
=
"aclk_266_gscl"
,
},
...
...
arch/arm/mach-exynos/include/mach/map.h
浏览文件 @
7b27fa25
...
...
@@ -177,6 +177,10 @@
#define EXYNOS4_PA_HSMMC(x) (0x12510000 + ((x) * 0x10000))
#define EXYNOS4_PA_DWMCI 0x12550000
#define EXYNOS5_PA_DWMCI0 0x12200000
#define EXYNOS5_PA_DWMCI1 0x12210000
#define EXYNOS5_PA_DWMCI2 0x12220000
#define EXYNOS5_PA_DWMCI3 0x12230000
#define EXYNOS4_PA_HSOTG 0x12480000
#define EXYNOS4_PA_USB_HSPHY 0x125B0000
...
...
arch/arm/mach-exynos/mach-exynos4-dt.c
浏览文件 @
7b27fa25
/*
* Samsung's E
xynos4210
flattened device tree enabled machine
* Samsung's E
XYNOS4
flattened device tree enabled machine
*
* Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
* http://www.samsung.com
...
...
@@ -36,7 +36,7 @@
* at some point, the drivers should be capable of parsing all the platform
* data from the device tree.
*/
static
const
struct
of_dev_auxdata
exynos4
210
_auxdata_lookup
[]
__initconst
=
{
static
const
struct
of_dev_auxdata
exynos4_auxdata_lookup
[]
__initconst
=
{
OF_DEV_AUXDATA
(
"samsung,exynos4210-uart"
,
EXYNOS4_PA_UART0
,
"exynos4210-uart.0"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,exynos4210-uart"
,
EXYNOS4_PA_UART1
,
...
...
@@ -55,6 +55,20 @@ static const struct of_dev_auxdata exynos4210_auxdata_lookup[] __initconst = {
"exynos4-sdhci.3"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,s3c2440-i2c"
,
EXYNOS4_PA_IIC
(
0
),
"s3c2440-i2c.0"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,s3c2440-i2c"
,
EXYNOS4_PA_IIC
(
1
),
"s3c2440-i2c.1"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,s3c2440-i2c"
,
EXYNOS4_PA_IIC
(
2
),
"s3c2440-i2c.2"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,s3c2440-i2c"
,
EXYNOS4_PA_IIC
(
3
),
"s3c2440-i2c.3"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,s3c2440-i2c"
,
EXYNOS4_PA_IIC
(
4
),
"s3c2440-i2c.4"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,s3c2440-i2c"
,
EXYNOS4_PA_IIC
(
5
),
"s3c2440-i2c.5"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,s3c2440-i2c"
,
EXYNOS4_PA_IIC
(
6
),
"s3c2440-i2c.6"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,s3c2440-i2c"
,
EXYNOS4_PA_IIC
(
7
),
"s3c2440-i2c.7"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,exynos4210-spi"
,
EXYNOS4_PA_SPI0
,
"exynos4210-spi.0"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,exynos4210-spi"
,
EXYNOS4_PA_SPI1
,
...
...
@@ -66,19 +80,19 @@ static const struct of_dev_auxdata exynos4210_auxdata_lookup[] __initconst = {
{},
};
static
void
__init
exynos4
210
_dt_map_io
(
void
)
static
void
__init
exynos4_dt_map_io
(
void
)
{
exynos_init_io
(
NULL
,
0
);
s3c24xx_init_clocks
(
24000000
);
}
static
void
__init
exynos4
210
_dt_machine_init
(
void
)
static
void
__init
exynos4_dt_machine_init
(
void
)
{
of_platform_populate
(
NULL
,
of_default_bus_match_table
,
exynos4
210
_auxdata_lookup
,
NULL
);
exynos4_auxdata_lookup
,
NULL
);
}
static
char
const
*
exynos4
210
_dt_compat
[]
__initdata
=
{
static
char
const
*
exynos4_dt_compat
[]
__initdata
=
{
"samsung,exynos4210"
,
NULL
};
...
...
@@ -86,11 +100,11 @@ static char const *exynos4210_dt_compat[] __initdata = {
DT_MACHINE_START
(
EXYNOS4210_DT
,
"Samsung Exynos4 (Flattened Device Tree)"
)
/* Maintainer: Thomas Abraham <thomas.abraham@linaro.org> */
.
init_irq
=
exynos4_init_irq
,
.
map_io
=
exynos4
210
_dt_map_io
,
.
map_io
=
exynos4_dt_map_io
,
.
handle_irq
=
gic_handle_irq
,
.
init_machine
=
exynos4
210
_dt_machine_init
,
.
init_machine
=
exynos4_dt_machine_init
,
.
init_late
=
exynos_init_late
,
.
timer
=
&
exynos4_timer
,
.
dt_compat
=
exynos4
210
_dt_compat
,
.
dt_compat
=
exynos4_dt_compat
,
.
restart
=
exynos4_restart
,
MACHINE_END
arch/arm/mach-exynos/mach-exynos5-dt.c
浏览文件 @
7b27fa25
...
...
@@ -47,6 +47,14 @@ static const struct of_dev_auxdata exynos5250_auxdata_lookup[] __initconst = {
"s3c2440-i2c.0"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,s3c2440-i2c"
,
EXYNOS5_PA_IIC
(
1
),
"s3c2440-i2c.1"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,exynos5250-dw-mshc"
,
EXYNOS5_PA_DWMCI0
,
"dw_mmc.0"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,exynos5250-dw-mshc"
,
EXYNOS5_PA_DWMCI1
,
"dw_mmc.1"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,exynos5250-dw-mshc"
,
EXYNOS5_PA_DWMCI2
,
"dw_mmc.2"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,exynos5250-dw-mshc"
,
EXYNOS5_PA_DWMCI3
,
"dw_mmc.3"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,exynos4210-spi"
,
EXYNOS5_PA_SPI0
,
"exynos4210-spi.0"
,
NULL
),
OF_DEV_AUXDATA
(
"samsung,exynos4210-spi"
,
EXYNOS5_PA_SPI1
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录