mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
Compare commits
559 Commits
v2019.07-r
...
v2019.07
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5aee22e4b | ||
|
|
0bd2a92f54 | ||
|
|
d24416c3fa | ||
|
|
84b2416b6a | ||
|
|
3c1ead9081 | ||
|
|
29e9363504 | ||
|
|
c2f3dade2a | ||
|
|
e597e5b6bc | ||
|
|
ace0d2ef2b | ||
|
|
a2c4ef0977 | ||
|
|
54869e0811 | ||
|
|
9814fb272f | ||
|
|
3b83829ed6 | ||
|
|
07e33711fe | ||
|
|
e445d46651 | ||
|
|
501547cec1 | ||
|
|
619f002db8 | ||
|
|
1f83431f00 | ||
|
|
de12148844 | ||
|
|
4d981f5f27 | ||
|
|
5b85858251 | ||
|
|
df51656986 | ||
|
|
6b573ed0bc | ||
|
|
b76ba47cce | ||
|
|
ba18fdb312 | ||
|
|
7e8c2190c7 | ||
|
|
ca4491f2d2 | ||
|
|
665ebcadd6 | ||
|
|
6f3af24fd9 | ||
|
|
d79036c22d | ||
|
|
e3f9a93e5a | ||
|
|
7e7f79207d | ||
|
|
590dc42620 | ||
|
|
45290847df | ||
|
|
d18ca747b6 | ||
|
|
5a6d960b22 | ||
|
|
a239b82dad | ||
|
|
8c2d42d526 | ||
|
|
5c74868c9f | ||
|
|
884512f7db | ||
|
|
4a94115206 | ||
|
|
69492fb4c5 | ||
|
|
e3d5d3ac5b | ||
|
|
3b7fc3ff31 | ||
|
|
139a94a986 | ||
|
|
3f0d299e88 | ||
|
|
caee7619a9 | ||
|
|
d5381853ad | ||
|
|
efcf0a1f56 | ||
|
|
0352e878d2 | ||
|
|
cb8cc1d8fb | ||
|
|
36cb793b35 | ||
|
|
1d3d87b41a | ||
|
|
b8e8fdff29 | ||
|
|
0ac662da35 | ||
|
|
f0be8ff45f | ||
|
|
86aa7103b6 | ||
|
|
9b352ae1ae | ||
|
|
26bb95f056 | ||
|
|
1d255904c3 | ||
|
|
6de4743406 | ||
|
|
5760069ae8 | ||
|
|
36adc9a06f | ||
|
|
936675c6f4 | ||
|
|
2c72ead738 | ||
|
|
33ca409684 | ||
|
|
ad371d8cd1 | ||
|
|
7c7ce3600a | ||
|
|
4977cf67de | ||
|
|
97d98e6bbf | ||
|
|
c997c0fc28 | ||
|
|
adde32d033 | ||
|
|
16b0dd4cd1 | ||
|
|
5e7216462b | ||
|
|
07586ee432 | ||
|
|
9f5a9f9ad3 | ||
|
|
1c281dc2ba | ||
|
|
2411c335b6 | ||
|
|
96070460c3 | ||
|
|
cca4f576d0 | ||
|
|
cc2cf69093 | ||
|
|
8f06f0cee3 | ||
|
|
8fc48229c8 | ||
|
|
57c4c5d336 | ||
|
|
348a0b7f9e | ||
|
|
c009aeb8ca | ||
|
|
3f0685ebcd | ||
|
|
661519e5c5 | ||
|
|
5eea874b5e | ||
|
|
c974a3d155 | ||
|
|
8b295a2026 | ||
|
|
7ce74b70b9 | ||
|
|
bdf97b5d39 | ||
|
|
271dc9ce7f | ||
|
|
f512851413 | ||
|
|
19b81032d6 | ||
|
|
d3329f09c7 | ||
|
|
5fafd7e35f | ||
|
|
d5e994fc55 | ||
|
|
46e765226c | ||
|
|
5845ac1271 | ||
|
|
4edfabd9e4 | ||
|
|
3d2ab90d16 | ||
|
|
7700b13ce9 | ||
|
|
f51d7fc8ce | ||
|
|
fb7b790a20 | ||
|
|
19495dd9b6 | ||
|
|
226a35ef0e | ||
|
|
8f89a574a9 | ||
|
|
a332f25198 | ||
|
|
428a470a27 | ||
|
|
ee88eacbdd | ||
|
|
fa390810e1 | ||
|
|
c974ab0ecb | ||
|
|
3b435c1193 | ||
|
|
3b2b2de8ee | ||
|
|
db311f0675 | ||
|
|
40c8f112f5 | ||
|
|
3c783bfbfb | ||
|
|
21b6b540d6 | ||
|
|
97cf20861a | ||
|
|
1f7a8b3389 | ||
|
|
997c2ce5cf | ||
|
|
3352b306bf | ||
|
|
2bc1821e86 | ||
|
|
a762311a6c | ||
|
|
656d8da9d2 | ||
|
|
894e235f14 | ||
|
|
f2f83b2fd0 | ||
|
|
131816415b | ||
|
|
d04ecc4c33 | ||
|
|
f643fb9f4c | ||
|
|
e8c185bb15 | ||
|
|
64fabed971 | ||
|
|
70833d530e | ||
|
|
1b14fb7be5 | ||
|
|
b89e3d9250 | ||
|
|
13c5e5bd6a | ||
|
|
15311c85db | ||
|
|
82c47a21e7 | ||
|
|
2b12f6cfe6 | ||
|
|
c16dfd016a | ||
|
|
63a4585791 | ||
|
|
7c65468346 | ||
|
|
de6e4a6f5c | ||
|
|
7350a75b51 | ||
|
|
da70f766dd | ||
|
|
d90c7ac7a9 | ||
|
|
196fa2efbe | ||
|
|
c3d141e03a | ||
|
|
d7a4ddd3b2 | ||
|
|
062d8148f8 | ||
|
|
0dd74ec2df | ||
|
|
fd90b6d5ab | ||
|
|
c34d8dcb3e | ||
|
|
73420f0220 | ||
|
|
7494232700 | ||
|
|
4da0e52c9d | ||
|
|
ab748801ef | ||
|
|
4514ccef91 | ||
|
|
293d75c0b1 | ||
|
|
f68ce9e9ac | ||
|
|
1dff14c87d | ||
|
|
85e5e21981 | ||
|
|
a1e126bf8d | ||
|
|
9029fa115a | ||
|
|
de0f9ad1de | ||
|
|
91f54e7c61 | ||
|
|
66fa035b55 | ||
|
|
087bfe67ac | ||
|
|
d17eb57dcf | ||
|
|
36f50b7523 | ||
|
|
123fbbbe84 | ||
|
|
3458a4198c | ||
|
|
1be0c66c79 | ||
|
|
72119aa14a | ||
|
|
5fa8fe105e | ||
|
|
29dff4d455 | ||
|
|
c3f43185ee | ||
|
|
c3e8aa1a9e | ||
|
|
77f6e2dd05 | ||
|
|
f681eacbfe | ||
|
|
8f93213227 | ||
|
|
8754656680 | ||
|
|
75846445ed | ||
|
|
d760a5efb9 | ||
|
|
c7110a0ad5 | ||
|
|
db4080d56d | ||
|
|
69264f4993 | ||
|
|
c78b5cb7d3 | ||
|
|
b618b37076 | ||
|
|
3f6bcdf6a5 | ||
|
|
3950f0f856 | ||
|
|
2ad238fcc4 | ||
|
|
c5b63bec2f | ||
|
|
e771b4b39e | ||
|
|
c77d8e9d89 | ||
|
|
17416eaff2 | ||
|
|
3796156a80 | ||
|
|
336476a959 | ||
|
|
0e22c7cbeb | ||
|
|
98967379b6 | ||
|
|
1d3e8dc792 | ||
|
|
200000387c | ||
|
|
e4afcb2876 | ||
|
|
0dfe442e87 | ||
|
|
a7e3dacbcb | ||
|
|
c81b1a8a71 | ||
|
|
52883bac27 | ||
|
|
94bb4492e1 | ||
|
|
6b371a7a4b | ||
|
|
ea349270e3 | ||
|
|
d6d383ca27 | ||
|
|
b861cfb53c | ||
|
|
220f655176 | ||
|
|
f23a87d581 | ||
|
|
cacb03e490 | ||
|
|
97a0c6ff57 | ||
|
|
25ee924649 | ||
|
|
634931fea5 | ||
|
|
88369d33e3 | ||
|
|
ea73ec08d1 | ||
|
|
32f70d67c7 | ||
|
|
e124759289 | ||
|
|
d5ded320a1 | ||
|
|
bb85afc7f3 | ||
|
|
63235bd077 | ||
|
|
524e98a712 | ||
|
|
a4298ddaf8 | ||
|
|
9a4b90015a | ||
|
|
698bc1f2e9 | ||
|
|
c2ea87883e | ||
|
|
38e58ff2b7 | ||
|
|
68a5110e86 | ||
|
|
143256b353 | ||
|
|
e4617bdb29 | ||
|
|
63860dbfdf | ||
|
|
60fe59355c | ||
|
|
478c563b40 | ||
|
|
4c2eecf244 | ||
|
|
b9308f2c05 | ||
|
|
2392289477 | ||
|
|
88fa32b849 | ||
|
|
fb94245534 | ||
|
|
2702646bc0 | ||
|
|
529faf80c3 | ||
|
|
68b90e57bc | ||
|
|
23612534fe | ||
|
|
940db3b410 | ||
|
|
a6c5509530 | ||
|
|
bf219a3602 | ||
|
|
aa3fba9753 | ||
|
|
c4a4346775 | ||
|
|
e0e5f6da6e | ||
|
|
16529ff255 | ||
|
|
75eba18321 | ||
|
|
1796e50939 | ||
|
|
c0df121a97 | ||
|
|
b5d97e10fa | ||
|
|
74ae372ae4 | ||
|
|
1558b27033 | ||
|
|
0e0d38f49b | ||
|
|
0495227cdb | ||
|
|
ac2b71f60b | ||
|
|
3fe3f02f06 | ||
|
|
6245170b67 | ||
|
|
4c05e966fd | ||
|
|
d57863087b | ||
|
|
6ad85a45e2 | ||
|
|
6757fa5756 | ||
|
|
8b23c17b82 | ||
|
|
a11c0f44b7 | ||
|
|
d2cc2e86f8 | ||
|
|
90f87fb525 | ||
|
|
33f794be36 | ||
|
|
42dc1230cd | ||
|
|
934f9a653c | ||
|
|
127fad57b2 | ||
|
|
76bebb37d6 | ||
|
|
e409aea085 | ||
|
|
9e03632c1f | ||
|
|
d2d1191843 | ||
|
|
a2cd5240d6 | ||
|
|
29e2def59d | ||
|
|
9579132201 | ||
|
|
59bc6a988b | ||
|
|
c585f8e273 | ||
|
|
3d60366500 | ||
|
|
74c0f5cd7c | ||
|
|
1da39d3ce8 | ||
|
|
16f8b84917 | ||
|
|
38d8955a98 | ||
|
|
bc527c6dfa | ||
|
|
3bb514adbf | ||
|
|
d73ce5e754 | ||
|
|
f4825ab643 | ||
|
|
c7aa64abcc | ||
|
|
2f1c06c762 | ||
|
|
8d1e95ac8d | ||
|
|
6b98b94ce2 | ||
|
|
c4e93f6aa6 | ||
|
|
b697ed098d | ||
|
|
11a3cae71d | ||
|
|
c72a23701b | ||
|
|
76ed1036c2 | ||
|
|
367f77adc5 | ||
|
|
a1513f2839 | ||
|
|
1d3b852e52 | ||
|
|
79fcbde8eb | ||
|
|
bc7c9ed33c | ||
|
|
3ad0d26878 | ||
|
|
7a3faf31a7 | ||
|
|
2b849e1f74 | ||
|
|
16c776d321 | ||
|
|
5ef237ad6f | ||
|
|
cc48c2a5cf | ||
|
|
9352c629b0 | ||
|
|
0050c929c2 | ||
|
|
198fee844b | ||
|
|
3a05eb8fee | ||
|
|
53bb233b8d | ||
|
|
f54dc48c5b | ||
|
|
5f6d90aade | ||
|
|
51f1357f34 | ||
|
|
5f6d63adb9 | ||
|
|
a73b4b60a3 | ||
|
|
08919d381c | ||
|
|
a3f358a227 | ||
|
|
0ab85fe68f | ||
|
|
0633e13478 | ||
|
|
4721d7d3b4 | ||
|
|
64c751f635 | ||
|
|
1023c8739b | ||
|
|
5d2cd9f117 | ||
|
|
b1f8242ede | ||
|
|
cd7e76ffbc | ||
|
|
8b98a4916f | ||
|
|
85cb2bc686 | ||
|
|
a443c8212c | ||
|
|
d3eaf95ec6 | ||
|
|
15bae9a86d | ||
|
|
7ce134b7c3 | ||
|
|
4c45e43a2a | ||
|
|
a9bcf937c9 | ||
|
|
fc6c0e29a2 | ||
|
|
7a69e97ba4 | ||
|
|
1e37be5e20 | ||
|
|
7eaa900e56 | ||
|
|
dfa306e442 | ||
|
|
daa3f8472a | ||
|
|
07798764c2 | ||
|
|
99e14d5249 | ||
|
|
eb53a18c9e | ||
|
|
d1505ad8c0 | ||
|
|
c1a3f1ee18 | ||
|
|
67adbaef5a | ||
|
|
f6fcad5f2a | ||
|
|
a1c178e4c7 | ||
|
|
85fa265530 | ||
|
|
5ccfb8a995 | ||
|
|
8dea61da19 | ||
|
|
65f88e0408 | ||
|
|
e4da4c2e0e | ||
|
|
6409c6103a | ||
|
|
76c82afef3 | ||
|
|
1a907e41dc | ||
|
|
6ea9395bf7 | ||
|
|
fabe6c4909 | ||
|
|
6f3ac07ea3 | ||
|
|
01ac1e19df | ||
|
|
d93fe31020 | ||
|
|
d896b7baa1 | ||
|
|
6622b3706c | ||
|
|
5973901826 | ||
|
|
6d277fb0ed | ||
|
|
a56149dd97 | ||
|
|
2577015dc5 | ||
|
|
dfe252b11e | ||
|
|
0a0f23142f | ||
|
|
219dee7e38 | ||
|
|
b275030e50 | ||
|
|
3bad256f5b | ||
|
|
f90b3f5b68 | ||
|
|
b4d4fe7b9e | ||
|
|
c8ef95376f | ||
|
|
ac2d4efb16 | ||
|
|
edacf26821 | ||
|
|
f6ccdda126 | ||
|
|
5bf11b58fe | ||
|
|
a2a89b2e21 | ||
|
|
248278d7f7 | ||
|
|
28c064e66b | ||
|
|
ca9c5dccb7 | ||
|
|
8c1007a2cb | ||
|
|
75500a4182 | ||
|
|
b3134ffbd9 | ||
|
|
e5c38fdd3a | ||
|
|
baf053f937 | ||
|
|
80dfdb9c97 | ||
|
|
1538e1a614 | ||
|
|
e6b7afe737 | ||
|
|
8f24b1a4a9 | ||
|
|
df23da5918 | ||
|
|
2643c85da2 | ||
|
|
208bd2b85e | ||
|
|
7f90cd6150 | ||
|
|
d319edcaee | ||
|
|
87471649a5 | ||
|
|
c4a739ad50 | ||
|
|
bc9487d4ab | ||
|
|
93ffa2ba80 | ||
|
|
89e4dd57bd | ||
|
|
9ed91550d5 | ||
|
|
0be07872e3 | ||
|
|
dbbb1c43f2 | ||
|
|
2253e40cae | ||
|
|
879a3bc1c2 | ||
|
|
1e669b4808 | ||
|
|
c79aa81dbc | ||
|
|
595ea7381b | ||
|
|
8317189737 | ||
|
|
a930a72742 | ||
|
|
74a50ac2a4 | ||
|
|
b571766453 | ||
|
|
34e12e03c7 | ||
|
|
ce353babdb | ||
|
|
a0dbc1314c | ||
|
|
8e90c8d64b | ||
|
|
836a56e729 | ||
|
|
f9ec2ec850 | ||
|
|
147fac6aef | ||
|
|
8f60d18f94 | ||
|
|
e19143b5eb | ||
|
|
07ea02bc2d | ||
|
|
1a869c703d | ||
|
|
9e57819294 | ||
|
|
b64e0b9231 | ||
|
|
e9c58f2bb8 | ||
|
|
bf468e5e1a | ||
|
|
bca7910b7d | ||
|
|
0c4e2658e8 | ||
|
|
ebf30e8451 | ||
|
|
ea41b15617 | ||
|
|
c5646270d1 | ||
|
|
072d1528fa | ||
|
|
1f12208c6a | ||
|
|
18517ab8a1 | ||
|
|
4fde31e482 | ||
|
|
33ac2b560b | ||
|
|
e3b7ff2476 | ||
|
|
b4d070fb5a | ||
|
|
2a766db938 | ||
|
|
4fddaf2b7d | ||
|
|
7a56c930e2 | ||
|
|
6d93d245c1 | ||
|
|
f944b15966 | ||
|
|
39494822e3 | ||
|
|
e64db0d92e | ||
|
|
cd6b6199ea | ||
|
|
eacf07e631 | ||
|
|
4b27a76132 | ||
|
|
f658c2e190 | ||
|
|
366161cf97 | ||
|
|
cee2cbc731 | ||
|
|
ffe8a92b4b | ||
|
|
a589107d4f | ||
|
|
8c1df09f07 | ||
|
|
9a67205228 | ||
|
|
23816322d5 | ||
|
|
dcd91a61bf | ||
|
|
42e6e8f348 | ||
|
|
5eb83c0ac1 | ||
|
|
e80474ad39 | ||
|
|
8190b4a3e0 | ||
|
|
94e6e55053 | ||
|
|
120ff7ba68 | ||
|
|
25e6fb5e93 | ||
|
|
22f23db428 | ||
|
|
6a853dbcc0 | ||
|
|
66ca24a9a0 | ||
|
|
b1ab892740 | ||
|
|
7505075dff | ||
|
|
38c2a8a001 | ||
|
|
55cae6458d | ||
|
|
7950e8e2eb | ||
|
|
7e572cf69d | ||
|
|
b4863baa68 | ||
|
|
755d42d420 | ||
|
|
b4c20f20ad | ||
|
|
776d39d9a1 | ||
|
|
3ef64444de | ||
|
|
a5e3d2350b | ||
|
|
49191d259f | ||
|
|
379af67ab3 | ||
|
|
b743bbd2eb | ||
|
|
5ec48e38ee | ||
|
|
38b9a79c63 | ||
|
|
656f17106b | ||
|
|
e6bcc35452 | ||
|
|
3c1889e639 | ||
|
|
a248bc8055 | ||
|
|
dae7ce451c | ||
|
|
399a39e34a | ||
|
|
e31b3b1622 | ||
|
|
b8abd743ff | ||
|
|
8eee1d3ec6 | ||
|
|
5b35093834 | ||
|
|
f09cea36ca | ||
|
|
8a802a2eef | ||
|
|
55955427cb | ||
|
|
d0b1f72a04 | ||
|
|
7336cf34d1 | ||
|
|
407544c2ef | ||
|
|
32f2880641 | ||
|
|
08e09c263f | ||
|
|
b1e81e67ee | ||
|
|
051c755075 | ||
|
|
f7cd37ff1c | ||
|
|
3e8fa6dd76 | ||
|
|
540c900dec | ||
|
|
001d6745e3 | ||
|
|
48b5c25f99 | ||
|
|
b238e4b00c | ||
|
|
2461543632 | ||
|
|
78a1ac33cb | ||
|
|
dee5ad5ae7 | ||
|
|
9828ed6259 | ||
|
|
e2822ccc2c | ||
|
|
93294caaeb | ||
|
|
2a221fb64e | ||
|
|
cd2d727fff | ||
|
|
9c709c7b41 | ||
|
|
a9f6706cf0 | ||
|
|
005a804d0f | ||
|
|
77934fdedf | ||
|
|
d7cc0e4d79 | ||
|
|
2aa20c43e4 | ||
|
|
899dd71e9f | ||
|
|
8c2644ca69 | ||
|
|
3b88579c64 | ||
|
|
5e92c6856b | ||
|
|
7a2b51e36f | ||
|
|
881ae794b9 | ||
|
|
0ea4fc4dcf | ||
|
|
d0cd30eb81 | ||
|
|
7b437807ee | ||
|
|
cd60ea71f3 | ||
|
|
430cfc861b | ||
|
|
593216f9cb | ||
|
|
7a6c6dba28 | ||
|
|
c5a120b3f0 | ||
|
|
112f2e1443 | ||
|
|
c9d7542bf3 | ||
|
|
f6ac3fab9b | ||
|
|
1cee54ebf3 | ||
|
|
bc2d313d68 | ||
|
|
2950c514e8 | ||
|
|
57fbd36c66 | ||
|
|
0c8baa619d |
@@ -50,6 +50,7 @@ install:
|
||||
- . /tmp/venv/bin/activate
|
||||
- pip install pytest==2.8.7
|
||||
- pip install python-subunit
|
||||
- pip install pyelftools
|
||||
- grub-mkimage -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
|
||||
- grub-mkimage -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
|
||||
- mkdir ~/grub2-arm
|
||||
@@ -183,6 +184,9 @@ matrix:
|
||||
- name: "buildman NXP AArch64 LS101x"
|
||||
env:
|
||||
- BUILDMAN="freescale&aarch64&ls101"
|
||||
- name: "buildman NXP AArch64 LS102x"
|
||||
env:
|
||||
- BUILDMAN="freescale&aarch64&ls102"
|
||||
- name: "buildman NXP AArch64 LS104x"
|
||||
env:
|
||||
- BUILDMAN="freescale&aarch64&ls104"
|
||||
@@ -192,6 +196,9 @@ matrix:
|
||||
- name: "buildman NXP AArch64 LS20xx"
|
||||
env:
|
||||
- BUILDMAN="freescale&aarch64&&ls20"
|
||||
- name: "buildman NXP AArch64 LX216x"
|
||||
env:
|
||||
- BUILDMAN="freescale&aarch64&lx216"
|
||||
- name: "buildman i.MX6 (non-NXP)"
|
||||
env:
|
||||
- BUILDMAN="mx6 -x freescale,toradex,boundary,engicam"
|
||||
|
||||
66
Documentation/devicetree/bindings/net/ethernet.txt
Normal file
66
Documentation/devicetree/bindings/net/ethernet.txt
Normal file
@@ -0,0 +1,66 @@
|
||||
The following properties are common to the Ethernet controllers:
|
||||
|
||||
NOTE: All 'phy*' properties documented below are Ethernet specific. For the
|
||||
generic PHY 'phys' property, see
|
||||
Documentation/devicetree/bindings/phy/phy-bindings.txt.
|
||||
|
||||
- local-mac-address: array of 6 bytes, specifies the MAC address that was
|
||||
assigned to the network device;
|
||||
- mac-address: array of 6 bytes, specifies the MAC address that was last used by
|
||||
the boot program; should be used in cases where the MAC address assigned to
|
||||
the device by the boot program is different from the "local-mac-address"
|
||||
property;
|
||||
- nvmem-cells: phandle, reference to an nvmem node for the MAC address;
|
||||
- nvmem-cell-names: string, should be "mac-address" if nvmem is to be used;
|
||||
- max-speed: number, specifies maximum speed in Mbit/s supported by the device;
|
||||
- max-frame-size: number, maximum transfer unit (IEEE defined MTU), rather than
|
||||
the maximum frame size (there's contradiction in the Devicetree
|
||||
Specification).
|
||||
- phy-mode: string, operation mode of the PHY interface. This is now a de-facto
|
||||
standard property; supported values are:
|
||||
* "internal"
|
||||
* "mii"
|
||||
* "gmii"
|
||||
* "sgmii"
|
||||
* "qsgmii"
|
||||
* "tbi"
|
||||
* "rev-mii"
|
||||
* "rmii"
|
||||
* "rgmii" (RX and TX delays are added by the MAC when required)
|
||||
* "rgmii-id" (RGMII with internal RX and TX delays provided by the PHY, the
|
||||
MAC should not add the RX or TX delays in this case)
|
||||
* "rgmii-rxid" (RGMII with internal RX delay provided by the PHY, the MAC
|
||||
should not add an RX delay in this case)
|
||||
* "rgmii-txid" (RGMII with internal TX delay provided by the PHY, the MAC
|
||||
should not add an TX delay in this case)
|
||||
* "rtbi"
|
||||
* "smii"
|
||||
* "xgmii"
|
||||
* "trgmii"
|
||||
* "2000base-x",
|
||||
* "2500base-x",
|
||||
* "rxaui"
|
||||
* "xaui"
|
||||
* "10gbase-kr" (10GBASE-KR, XFI, SFI)
|
||||
- phy-connection-type: the same as "phy-mode" property but described in the
|
||||
Devicetree Specification;
|
||||
- phy-handle: phandle, specifies a reference to a node representing a PHY
|
||||
device; this property is described in the Devicetree Specification and so
|
||||
preferred;
|
||||
- phy: the same as "phy-handle" property, not recommended for new bindings.
|
||||
- phy-device: the same as "phy-handle" property, not recommended for new
|
||||
bindings.
|
||||
- rx-fifo-depth: the size of the controller's receive fifo in bytes. This
|
||||
is used for components that can have configurable receive fifo sizes,
|
||||
and is useful for determining certain configuration settings such as
|
||||
flow control thresholds.
|
||||
- tx-fifo-depth: the size of the controller's transmit fifo in bytes. This
|
||||
is used for components that can have configurable fifo sizes.
|
||||
- managed: string, specifies the PHY management type. Supported values are:
|
||||
"auto", "in-band-status". "auto" is the default, it usess MDIO for
|
||||
management if fixed-link is not specified.
|
||||
|
||||
Child nodes of the Ethernet controller are typically the individual PHY devices
|
||||
connected via the MDIO bus (sometimes the MDIO bus controller is separate).
|
||||
They are described in the phy.txt file in this same directory.
|
||||
For non-MDIO PHY management see fixed-link.txt.
|
||||
32
Kconfig
32
Kconfig
@@ -20,6 +20,13 @@ config BROKEN
|
||||
This option cannot be enabled. It is used as dependency
|
||||
for broken and incomplete features.
|
||||
|
||||
config DEPRECATED
|
||||
bool
|
||||
help
|
||||
This option cannot be enabled. It it used as a dependency for
|
||||
code that relies on deprecated features that will be removed and
|
||||
the conversion deadline has passed.
|
||||
|
||||
config LOCALVERSION
|
||||
string "Local version - append to U-Boot release"
|
||||
help
|
||||
@@ -138,6 +145,8 @@ config SYS_MALLOC_F_LEN
|
||||
depends on SYS_MALLOC_F
|
||||
default 0x1000 if AM33XX
|
||||
default 0x2800 if SANDBOX
|
||||
default 0x2000 if (ARCH_IMX8 || ARCH_IMX8M || ARCH_MX7 || \
|
||||
ARCH_MX7ULP || ARCH_MX6 || ARCH_MX5)
|
||||
default 0x400
|
||||
help
|
||||
Before relocation, memory is very limited on many platforms. Still,
|
||||
@@ -241,7 +250,7 @@ config BUILD_TARGET
|
||||
default "u-boot-with-spl.sfp" if TARGET_SOCFPGA_GEN5
|
||||
default "u-boot-spl.kwb" if ARCH_MVEBU && SPL
|
||||
default "u-boot-elf.srec" if RCAR_GEN3
|
||||
default "u-boot.itb" if SPL_LOAD_FIT && ARCH_SUNXI
|
||||
default "u-boot.itb" if SPL_LOAD_FIT && (ROCKCHIP_RK3399 || ARCH_SUNXI)
|
||||
default "u-boot.kwb" if KIRKWOOD
|
||||
default "u-boot-with-spl.bin" if ARCH_AT91 && SPL_NAND_SUPPORT
|
||||
help
|
||||
@@ -251,6 +260,23 @@ config BUILD_TARGET
|
||||
special image will be automatically built upon calling
|
||||
make / buildman.
|
||||
|
||||
config SYS_CUSTOM_LDSCRIPT
|
||||
bool "Use a custom location for the U-Boot linker script"
|
||||
help
|
||||
Normally when linking U-Boot we will look in the board directory,
|
||||
the CPU directory and finally the "cpu" directory of the architecture
|
||||
for the ile "u-boot.lds" and use that as our linker. However, in
|
||||
some cases we need to provide a different linker script. To do so,
|
||||
enable this option and then provide the location under
|
||||
CONFIG_SYS_LDSCRIPT.
|
||||
|
||||
config SYS_LDSCRIPT
|
||||
depends on SYS_CUSTOM_LDSCRIPT
|
||||
string "Custom ldscript location"
|
||||
help
|
||||
Path within the source tree to the linker script to use for the
|
||||
main U-Boot binary.
|
||||
|
||||
endmenu # General setup
|
||||
|
||||
menu "Boot images"
|
||||
@@ -389,7 +415,7 @@ config SPL_FIT_SIGNATURE
|
||||
select SPL_RSA
|
||||
|
||||
config SPL_LOAD_FIT
|
||||
bool "Enable SPL loading U-Boot as a FIT"
|
||||
bool "Enable SPL loading U-Boot as a FIT (basic fitImage features)"
|
||||
select SPL_FIT
|
||||
help
|
||||
Normally with the SPL framework a legacy image is generated as part
|
||||
@@ -400,7 +426,7 @@ config SPL_LOAD_FIT
|
||||
and passing the correct one to U-Boot.
|
||||
|
||||
config SPL_LOAD_FIT_FULL
|
||||
bool "Enable SPL loading U-Boot as a FIT"
|
||||
bool "Enable SPL loading U-Boot as a FIT (full fitImage features)"
|
||||
select SPL_FIT
|
||||
help
|
||||
Normally with the SPL framework a legacy image is generated as part
|
||||
|
||||
115
MAINTAINERS
115
MAINTAINERS
@@ -55,7 +55,7 @@ M: Alexey Brodkin <alexey.brodkin@synopsys.com>
|
||||
M: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
|
||||
S: Maintained
|
||||
L: uboot-snps-arc@synopsys.com
|
||||
T: git git://git.denx.de/u-boot-arc.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-arc.git
|
||||
F: arch/arc/
|
||||
F: board/synopsys/
|
||||
|
||||
@@ -84,7 +84,7 @@ F: drivers/mmc/snps_dw_mmc.c
|
||||
ARM
|
||||
M: Albert Aribaud <albert.u.boot@aribaud.net>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-arm.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-arm.git
|
||||
F: arch/arm/
|
||||
F: cmd/arm/
|
||||
|
||||
@@ -92,14 +92,14 @@ ARM ALTERA SOCFPGA
|
||||
M: Marek Vasut <marex@denx.de>
|
||||
M: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
|
||||
S: Maintainted
|
||||
T: git git://git.denx.de/u-boot-socfpga.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-socfpga.git
|
||||
F: arch/arm/mach-socfpga/
|
||||
|
||||
ARM AMLOGIC SOC SUPPORT
|
||||
M: Neil Armstrong <narmstrong@baylibre.com>
|
||||
S: Maintained
|
||||
L: u-boot-amlogic@groups.io
|
||||
T: git git://git.denx.de/u-boot-amlogic.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-amlogic.git
|
||||
F: arch/arm/mach-meson/
|
||||
F: arch/arm/include/asm/arch-meson/
|
||||
F: drivers/clk/meson/
|
||||
@@ -153,10 +153,11 @@ M: Stefano Babic <sbabic@denx.de>
|
||||
M: Fabio Estevam <festevam@gmail.com>
|
||||
R: NXP i.MX U-Boot Team <uboot-imx@nxp.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-imx.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-imx.git
|
||||
F: arch/arm/cpu/arm1136/mx*/
|
||||
F: arch/arm/cpu/arm926ejs/mx*/
|
||||
F: arch/arm/cpu/armv7/vf610/
|
||||
F: arch/arm/dts/*imx*
|
||||
F: arch/arm/mach-imx/
|
||||
F: arch/arm/include/asm/arch-imx/
|
||||
F: arch/arm/include/asm/arch-mx*/
|
||||
@@ -173,7 +174,7 @@ F: arch/arm/include/asm/arch-hi6220/
|
||||
ARM MARVELL KIRKWOOD ARMADA-XP ARMADA-38X ARMADA-37XX ARMADA-7K/8K
|
||||
M: Stefan Roese <sr@denx.de>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-marvell.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-marvell.git
|
||||
F: arch/arm/mach-kirkwood/
|
||||
F: arch/arm/mach-mvebu/
|
||||
F: drivers/ata/ahci_mvebu.c
|
||||
@@ -187,7 +188,7 @@ F: drivers/watchdog/orion_wdt.c
|
||||
ARM MARVELL PXA
|
||||
M: Marek Vasut <marex@denx.de>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-pxa.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-pxa.git
|
||||
F: arch/arm/cpu/pxa/
|
||||
F: arch/arm/include/asm/arch-pxa/
|
||||
|
||||
@@ -216,7 +217,7 @@ N: mediatek
|
||||
ARM MICROCHIP/ATMEL AT91
|
||||
M: Eugen Hristev <eugen.hristev@microchip.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-atmel.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-atmel.git
|
||||
F: arch/arm/mach-at91/
|
||||
F: board/atmel/
|
||||
|
||||
@@ -233,7 +234,7 @@ ARM RENESAS RMOBILE/R-CAR
|
||||
M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
|
||||
M: Marek Vasut <marek.vasut+renesas@gmail.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-sh.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-sh.git
|
||||
F: arch/arm/mach-rmobile/
|
||||
|
||||
ARM ROCKCHIP
|
||||
@@ -241,7 +242,7 @@ M: Simon Glass <sjg@chromium.org>
|
||||
M: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
|
||||
M: Kever Yang <kever.yang@rock-chips.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-rockchip.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-rockchip.git
|
||||
F: arch/arm/include/asm/arch-rockchip/
|
||||
F: arch/arm/mach-rockchip/
|
||||
F: board/rockchip/
|
||||
@@ -263,13 +264,13 @@ F: tools/rkspi.c
|
||||
ARM SAMSUNG
|
||||
M: Minkyu Kang <mk7.kang@samsung.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-samsung.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-samsung.git
|
||||
F: arch/arm/mach-exynos/
|
||||
F: arch/arm/mach-s5pc1xx/
|
||||
F: arch/arm/cpu/armv7/s5p-common/
|
||||
|
||||
ARM SNAPDRAGON
|
||||
M: Ramon Fried <ramon.fried@gmail.com>
|
||||
M: Ramon Fried <rfried.dev@gmail.com>
|
||||
S: Maintained
|
||||
F: arch/arm/mach-snapdragon/
|
||||
F: drivers/gpio/msm_gpio.c
|
||||
@@ -288,13 +289,12 @@ F: arch/arm/include/asm/arch-sti*/
|
||||
ARM STM SPEAR
|
||||
#M: Vipin Kumar <vipin.kumar@st.com>
|
||||
S: Orphaned (Since 2016-02)
|
||||
T: git git://git.denx.de/u-boot-stm.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-stm.git
|
||||
F: arch/arm/cpu/arm926ejs/spear/
|
||||
F: arch/arm/include/asm/arch-spear/
|
||||
|
||||
ARM STM STM32MP
|
||||
M: Patrick Delaunay <patrick.delaunay@st.com>
|
||||
M: Christophe Kerello <christophe.kerello@st.com>
|
||||
M: Patrice Chotard <patrice.chotard@st.com>
|
||||
L: uboot-stm32@st-md-mailman.stormreply.com (moderated for non-subscribers)
|
||||
S: Maintained
|
||||
@@ -312,6 +312,8 @@ F: drivers/ram/stm32mp1/
|
||||
F: drivers/misc/stm32_rcc.c
|
||||
F: drivers/reset/stm32-reset.c
|
||||
F: drivers/spi/stm32_qspi.c
|
||||
F: drivers/spi/stm32_spi.c
|
||||
F: drivers/watchdog/stm32mp_wdt.c
|
||||
|
||||
ARM STM STV0991
|
||||
M: Vikas Manocha <vikas.manocha@st.com>
|
||||
@@ -323,7 +325,7 @@ ARM SUNXI
|
||||
M: Jagan Teki <jagan@amarulasolutions.com>
|
||||
M: Maxime Ripard <maxime.ripard@bootlin.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-sunxi.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-sunxi.git
|
||||
F: arch/arm/cpu/armv7/sunxi/
|
||||
F: arch/arm/include/asm/arch-sunxi/
|
||||
F: arch/arm/mach-sunxi/
|
||||
@@ -332,14 +334,14 @@ F: board/sunxi/
|
||||
ARM TEGRA
|
||||
M: Tom Warren <twarren@nvidia.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-tegra.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-tegra.git
|
||||
F: arch/arm/mach-tegra/
|
||||
F: arch/arm/include/asm/arch-tegra*/
|
||||
|
||||
ARM TI
|
||||
M: Tom Rini <trini@konsulko.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-ti.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-ti.git
|
||||
F: arch/arm/mach-davinci/
|
||||
F: arch/arm/mach-k3/
|
||||
F: arch/arm/mach-keystone/
|
||||
@@ -349,7 +351,7 @@ F: arch/arm/include/asm/ti-common/
|
||||
ARM UNIPHIER
|
||||
M: Masahiro Yamada <yamada.masahiro@socionext.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-uniphier.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-uniphier.git
|
||||
F: arch/arm/mach-uniphier/
|
||||
F: configs/uniphier_*_defconfig
|
||||
N: uniphier
|
||||
@@ -357,7 +359,7 @@ N: uniphier
|
||||
ARM VERSAL
|
||||
M: Michal Simek <michal.simek@xilinx.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-microblaze.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-microblaze.git
|
||||
F: arch/arm/mach-versal/
|
||||
|
||||
ARM VERSATILE EXPRESS DRIVERS
|
||||
@@ -370,7 +372,7 @@ N: vexpress
|
||||
ARM ZYNQ
|
||||
M: Michal Simek <monstr@monstr.eu>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-microblaze.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-microblaze.git
|
||||
F: arch/arm/mach-zynq/
|
||||
F: drivers/clk/clk_zynq.c
|
||||
F: drivers/fpga/zynqpl.c
|
||||
@@ -394,7 +396,7 @@ N: zynq
|
||||
ARM ZYNQMP
|
||||
M: Michal Simek <michal.simek@xilinx.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-microblaze.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-microblaze.git
|
||||
F: arch/arm/mach-zynqmp/
|
||||
F: drivers/clk/clk_zynqmp.c
|
||||
F: drivers/fpga/zynqpl.c
|
||||
@@ -420,7 +422,7 @@ N: zynqmp
|
||||
ARM ZYNQMP R5
|
||||
M: Michal Simek <michal.simek@xilinx.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-microblaze.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-microblaze.git
|
||||
F: arch/arm/mach-zynqmp-r5/
|
||||
|
||||
BINMAN
|
||||
@@ -436,7 +438,7 @@ F: tools/buildman/
|
||||
CFI FLASH
|
||||
M: Stefan Roese <sr@denx.de>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-cfi-flash.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-cfi-flash.git
|
||||
F: drivers/mtd/cfi_flash.c
|
||||
F: drivers/mtd/jedec_flash.c
|
||||
|
||||
@@ -444,13 +446,13 @@ COLDFIRE
|
||||
M: Huan Wang <alison.wang@nxp.com>
|
||||
M: Angelo Dureghello <angelo@sysam.it>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-coldfire.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-coldfire.git
|
||||
F: arch/m68k/
|
||||
|
||||
DFU
|
||||
M: Lukasz Majewski <lukma@denx.de>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-dfu.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-dfu.git
|
||||
F: cmd/dfu.c
|
||||
F: cmd/usb_*.c
|
||||
F: common/dfu.c
|
||||
@@ -462,7 +464,7 @@ F: drivers/usb/gadget/
|
||||
DRIVER MODEL
|
||||
M: Simon Glass <sjg@chromium.org>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-dm.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-dm.git
|
||||
F: drivers/core/
|
||||
F: include/dm/
|
||||
F: test/dm/
|
||||
@@ -471,10 +473,10 @@ EFI PAYLOAD
|
||||
M: Heinrich Schuchardt <xypron.glpk@gmx.de>
|
||||
R: Alexander Graf <agraf@csgraf.de>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-efi.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-efi.git
|
||||
F: doc/README.uefi
|
||||
F: doc/README.iscsi
|
||||
F: Documentation/efi.rst
|
||||
F: doc/efi.rst
|
||||
F: include/capitalization.h
|
||||
F: include/charset.h
|
||||
F: include/cp1250.h
|
||||
@@ -494,7 +496,7 @@ F: tools/file2include.c
|
||||
FPGA
|
||||
M: Michal Simek <michal.simek@xilinx.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-microblaze.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-microblaze.git
|
||||
F: drivers/fpga/
|
||||
F: cmd/fpga.c
|
||||
F: include/fpga.h
|
||||
@@ -502,7 +504,7 @@ F: include/fpga.h
|
||||
FLATTENED DEVICE TREE
|
||||
M: Simon Glass <sjg@chromium.org>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-fdt.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-fdt.git
|
||||
F: lib/fdtdec*
|
||||
F: lib/libfdt/
|
||||
F: include/fdt*
|
||||
@@ -513,24 +515,24 @@ F: common/fdt_support.c
|
||||
FREEBSD
|
||||
M: Rafal Jaworowski <raj@semihalf.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-freebsd.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-freebsd.git
|
||||
|
||||
FREESCALE QORIQ
|
||||
M: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-fsl-qoriq.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-fsl-qoriq.git
|
||||
F: drivers/watchdog/sp805_wdt.c
|
||||
|
||||
I2C
|
||||
M: Heiko Schocher <hs@denx.de>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-i2c.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-i2c.git
|
||||
F: drivers/i2c/
|
||||
|
||||
LOGGING
|
||||
M: Simon Glass <sjg@chromium.org>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot.git
|
||||
T: git https://gitlab.denx.de/u-boot/u-boot.git
|
||||
F: common/log.c
|
||||
F: cmd/log.c
|
||||
F: test/log/log_test.c
|
||||
@@ -546,7 +548,7 @@ F: drivers/i2c/i2c-versatile.c
|
||||
MICROBLAZE
|
||||
M: Michal Simek <monstr@monstr.eu>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-microblaze.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-microblaze.git
|
||||
F: arch/microblaze/
|
||||
F: cmd/mfsl.c
|
||||
F: drivers/gpio/xilinx_gpio.c
|
||||
@@ -561,7 +563,7 @@ N: xilinx
|
||||
MIPS
|
||||
M: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-mips.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-mips.git
|
||||
F: arch/mips/
|
||||
|
||||
MIPS MSCC
|
||||
@@ -592,38 +594,38 @@ F: arch/mips/mach-jz47xx/
|
||||
MMC
|
||||
M: Peng Fan <peng.fan@nxp.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-mmc.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-mmc.git
|
||||
F: drivers/mmc/
|
||||
|
||||
NAND FLASH
|
||||
#M: Scott Wood <oss@buserror.net>
|
||||
S: Orphaned (Since 2018-07)
|
||||
T: git git://git.denx.de/u-boot-nand-flash.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-nand-flash.git
|
||||
F: drivers/mtd/nand/raw/
|
||||
|
||||
NDS32
|
||||
M: Macpaul Lin <macpaul@andestech.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-nds32.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-nds32.git
|
||||
F: arch/nds32/
|
||||
|
||||
NETWORK
|
||||
M: Joe Hershberger <joe.hershberger@ni.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-net.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-net.git
|
||||
F: drivers/net/
|
||||
F: net/
|
||||
|
||||
NIOS
|
||||
M: Thomas Chou <thomas@wytron.com.tw>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-nios.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-nios.git
|
||||
F: arch/nios2/
|
||||
|
||||
ONENAND
|
||||
#M: Lukasz Majewski <l.majewski@majess.pl>
|
||||
S: Orphaned (Since 2017-01)
|
||||
T: git git://git.denx.de/u-boot-onenand.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-onenand.git
|
||||
F: drivers/mtd/onenand/
|
||||
|
||||
PATMAN
|
||||
@@ -634,7 +636,7 @@ F: tools/patman/
|
||||
POWER
|
||||
M: Jaehoon Chung <jh80.chung@samsung.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-pmic.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-pmic.git
|
||||
F: drivers/power/
|
||||
|
||||
POWERPC
|
||||
@@ -645,13 +647,13 @@ F: arch/powerpc/
|
||||
POWERPC MPC8XX
|
||||
M: Christophe Leroy <christophe.leroy@c-s.fr>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-mpc8xx.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-mpc8xx.git
|
||||
F: arch/powerpc/cpu/mpc8xx/
|
||||
|
||||
POWERPC MPC83XX
|
||||
M: Mario Six <mario.six@gdsys.cc>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-mpc83xx.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-mpc83xx.git
|
||||
F: drivers/ram/mpc83xx_sdram.c
|
||||
F: include/dt-bindings/memory/mpc83xx-sdram.h
|
||||
F: drivers/sysreset/sysreset_mpc83xx.c
|
||||
@@ -669,19 +671,19 @@ F: arch/powerpc/include/asm/arch-mpc83xx/
|
||||
POWERPC MPC85XX
|
||||
M: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-mpc85xx.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-mpc85xx.git
|
||||
F: arch/powerpc/cpu/mpc85xx/
|
||||
|
||||
POWERPC MPC86XX
|
||||
M: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-mpc86xx.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-mpc86xx.git
|
||||
F: arch/powerpc/cpu/mpc86xx/
|
||||
|
||||
RISC-V
|
||||
M: Rick Chen <rick@andestech.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-riscv.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-riscv.git
|
||||
F: arch/riscv/
|
||||
F: cmd/riscv/
|
||||
F: tools/prelink-riscv.c
|
||||
@@ -699,15 +701,16 @@ S: Maintained
|
||||
F: arch/sandbox/
|
||||
|
||||
SH
|
||||
M: Marek Vasut <marek.vasut+renesas@gmail.com>
|
||||
M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-sh.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-sh.git
|
||||
F: arch/sh/
|
||||
|
||||
SPI
|
||||
M: Jagan Teki <jagan@amarulasolutions.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-spi.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-spi.git
|
||||
F: drivers/spi/
|
||||
F: include/spi*
|
||||
|
||||
@@ -769,25 +772,25 @@ UBI
|
||||
M: Kyungmin Park <kmpark@infradead.org>
|
||||
M: Heiko Schocher <hs@denx.de>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-ubi.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-ubi.git
|
||||
F: drivers/mtd/ubi/
|
||||
|
||||
USB
|
||||
M: Marek Vasut <marex@denx.de>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-usb.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-usb.git
|
||||
F: drivers/usb/
|
||||
|
||||
USB xHCI
|
||||
M: Bin Meng <bmeng.cn@gmail.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-usb.git topic-xhci
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-usb.git topic-xhci
|
||||
F: drivers/usb/host/xhci*
|
||||
|
||||
VIDEO
|
||||
M: Anatolij Gustschin <agust@denx.de>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-video.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-video.git
|
||||
F: drivers/video/
|
||||
F: common/lcd*.c
|
||||
F: include/lcd*.h
|
||||
@@ -797,7 +800,7 @@ X86
|
||||
M: Simon Glass <sjg@chromium.org>
|
||||
M: Bin Meng <bmeng.cn@gmail.com>
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot-x86.git
|
||||
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-x86.git
|
||||
F: arch/x86/
|
||||
F: cmd/x86/
|
||||
|
||||
@@ -811,7 +814,7 @@ M: Tom Rini <trini@konsulko.com>
|
||||
L: u-boot@lists.denx.de
|
||||
Q: http://patchwork.ozlabs.org/project/uboot/list/
|
||||
S: Maintained
|
||||
T: git git://git.denx.de/u-boot.git
|
||||
T: git https://gitlab.denx.de/u-boot/u-boot.git
|
||||
F: configs/tools-only_defconfig
|
||||
F: *
|
||||
F: */
|
||||
|
||||
68
Makefile
68
Makefile
@@ -3,7 +3,7 @@
|
||||
VERSION = 2019
|
||||
PATCHLEVEL = 07
|
||||
SUBLEVEL =
|
||||
EXTRAVERSION = -rc3
|
||||
EXTRAVERSION =
|
||||
NAME =
|
||||
|
||||
# *DOCUMENTATION*
|
||||
@@ -168,7 +168,7 @@ MAKEFLAGS += --no-print-directory
|
||||
# Use 'make C=2' to enable checking of *all* source files, regardless
|
||||
# of whether they are re-compiled or not.
|
||||
#
|
||||
# See the file "Documentation/sparse.txt" for more details, including
|
||||
# See the file "doc/sparse.txt" for more details, including
|
||||
# where to get the "sparse" utility.
|
||||
|
||||
ifeq ("$(origin C)", "command line")
|
||||
@@ -337,6 +337,19 @@ endif
|
||||
# KBUILD_MODULES := 1
|
||||
#endif
|
||||
|
||||
define size_check
|
||||
actual=$$( wc -c $1 | awk '{print $$1}'); \
|
||||
limit=$$( printf "%d" $2 ); \
|
||||
if test $$actual -gt $$limit; then \
|
||||
echo "$1 exceeds file size limit:" >&2; \
|
||||
echo " limit: $$limit bytes" >&2; \
|
||||
echo " actual: $$actual bytes" >&2; \
|
||||
echo " excess: $$((actual - limit)) bytes" >&2; \
|
||||
exit 1; \
|
||||
fi
|
||||
endef
|
||||
export size_check
|
||||
|
||||
export KBUILD_MODULES KBUILD_BUILTIN
|
||||
export KBUILD_CHECKSRC KBUILD_SRC KBUILD_EXTMOD
|
||||
|
||||
@@ -778,20 +791,17 @@ LDPPFLAGS += \
|
||||
#########################################################################
|
||||
|
||||
ifneq ($(CONFIG_BOARD_SIZE_LIMIT),)
|
||||
BOARD_SIZE_CHECK = \
|
||||
@actual=`wc -c $@ | awk '{print $$1}'`; \
|
||||
limit=`printf "%d" $(CONFIG_BOARD_SIZE_LIMIT)`; \
|
||||
if test $$actual -gt $$limit; then \
|
||||
echo "$@ exceeds file size limit:" >&2 ; \
|
||||
echo " limit: $$limit bytes" >&2 ; \
|
||||
echo " actual: $$actual bytes" >&2 ; \
|
||||
echo " excess: $$((actual - limit)) bytes" >&2; \
|
||||
exit 1; \
|
||||
fi
|
||||
BOARD_SIZE_CHECK= @ $(call size_check,$@,$(CONFIG_BOARD_SIZE_LIMIT))
|
||||
else
|
||||
BOARD_SIZE_CHECK =
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_SPL_SIZE_LIMIT),0)
|
||||
SPL_SIZE_CHECK = @$(call size_check,$@,$$(tools/spl_size_limit))
|
||||
else
|
||||
SPL_SIZE_CHECK =
|
||||
endif
|
||||
|
||||
# Statically apply RELA-style relocations (currently arm64 only)
|
||||
# This is useful for arm64 where static relocation needs to be performed on
|
||||
# the raw binary, but certain simulators only accept an ELF file (but don't
|
||||
@@ -918,6 +928,14 @@ cmd_cfgcheck = $(srctree)/scripts/check-config.sh $2 \
|
||||
$(srctree)/scripts/config_whitelist.txt $(srctree)
|
||||
|
||||
all: $(ALL-y)
|
||||
ifeq ($(CONFIG_DEPRECATED),y)
|
||||
$(warning "You have deprecated configuration options enabled in your .config! Please check your configuration.")
|
||||
ifeq ($(CONFIG_SPI),y)
|
||||
ifneq ($(CONFIG_DM_SPI)$(CONFIG_OF_CONTROL),yy)
|
||||
$(warning "The relevant config item with associated code will remove in v2019.07 release.")
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
ifeq ($(CONFIG_DM_I2C_COMPAT)$(CONFIG_SANDBOX),y)
|
||||
@echo >&2 "===================== WARNING ======================"
|
||||
@echo >&2 "This board uses CONFIG_DM_I2C_COMPAT. Please remove"
|
||||
@@ -994,17 +1012,6 @@ ifeq ($(CONFIG_OF_EMBED),y)
|
||||
@echo >&2 "See doc/README.fdt-control for more info."
|
||||
@echo >&2 "===================================================="
|
||||
endif
|
||||
ifeq ($(CONFIG_SPI),y)
|
||||
ifneq ($(CONFIG_DM_SPI)$(CONFIG_OF_CONTROL),yy)
|
||||
@echo >&2 "===================== WARNING ======================"
|
||||
@echo >&2 "This board does not use CONFIG_DM_SPI. Please update"
|
||||
@echo >&2 "the board before v2019.04 for no dm conversion"
|
||||
@echo >&2 "and v2019.07 for partially dm converted drivers."
|
||||
@echo >&2 "Failure to update can lead to driver/board removal"
|
||||
@echo >&2 "See doc/driver-model/MIGRATION.txt for more info."
|
||||
@echo >&2 "===================================================="
|
||||
endif
|
||||
endif
|
||||
ifeq ($(CONFIG_SPI_FLASH),y)
|
||||
ifneq ($(CONFIG_DM_SPI_FLASH)$(CONFIG_OF_CONTROL),yy)
|
||||
@echo >&2 "===================== WARNING ======================"
|
||||
@@ -1077,6 +1084,10 @@ endif
|
||||
|
||||
u-boot.bin: u-boot-fit-dtb.bin FORCE
|
||||
$(call if_changed,copy)
|
||||
|
||||
u-boot-dtb.bin: u-boot-nodtb.bin dts/dt.dtb FORCE
|
||||
$(call if_changed,cat)
|
||||
|
||||
else ifeq ($(CONFIG_OF_SEPARATE),y)
|
||||
u-boot-dtb.bin: u-boot-nodtb.bin dts/dt.dtb FORCE
|
||||
$(call if_changed,cat)
|
||||
@@ -1090,6 +1101,7 @@ endif
|
||||
|
||||
%.imx: %.bin
|
||||
$(Q)$(MAKE) $(build)=arch/arm/mach-imx $@
|
||||
$(BOARD_SIZE_CHECK)
|
||||
|
||||
%.vyb: %.imx
|
||||
$(Q)$(MAKE) $(build)=arch/arm/cpu/armv7/vf610 $@
|
||||
@@ -1707,6 +1719,8 @@ u-boot.lds: $(LDSCRIPT) prepare FORCE
|
||||
|
||||
spl/u-boot-spl.bin: spl/u-boot-spl
|
||||
@:
|
||||
$(SPL_SIZE_CHECK)
|
||||
|
||||
spl/u-boot-spl: tools prepare \
|
||||
$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) \
|
||||
$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_TPL_OF_PLATDATA),dts/dt.dtb)
|
||||
@@ -1769,6 +1783,7 @@ checkarmreloc: u-boot
|
||||
envtools: scripts_basic $(version_h) $(timestamp_h)
|
||||
$(Q)$(MAKE) $(build)=tools/env
|
||||
|
||||
tools-only: export TOOLS_ONLY=y
|
||||
tools-only: scripts_basic $(version_h) $(timestamp_h)
|
||||
$(Q)$(MAKE) $(build)=tools
|
||||
|
||||
@@ -1832,7 +1847,8 @@ clean: $(clean-dirs)
|
||||
-o -name modules.builtin -o -name '.tmp_*.o.*' \
|
||||
-o -name 'dsdt.aml' -o -name 'dsdt.asl.tmp' -o -name 'dsdt.c' \
|
||||
-o -name '*.efi' -o -name '*.gcno' -o -name '*.so' \) \
|
||||
-type f -print | xargs rm -f
|
||||
-type f -print | xargs rm -f \
|
||||
bl31.c bl31.elf bl31_*.bin image.map
|
||||
|
||||
# mrproper - Delete all generated files, including .config
|
||||
#
|
||||
@@ -1901,7 +1917,7 @@ help:
|
||||
@echo ' coccicheck - Execute static code analysis with Coccinelle'
|
||||
@echo ''
|
||||
@echo 'Documentation targets:'
|
||||
@$(MAKE) -f $(srctree)/Documentation/Makefile dochelp
|
||||
@$(MAKE) -f $(srctree)/doc/Makefile dochelp
|
||||
@echo ''
|
||||
@echo ' make V=0|1 [targets] 0 => quiet build (default), 1 => verbose build'
|
||||
@echo ' make V=2 [targets] 2 => give reason for rebuild of target'
|
||||
@@ -1930,7 +1946,7 @@ DOC_TARGETS := xmldocs latexdocs pdfdocs htmldocs epubdocs cleandocs \
|
||||
linkcheckdocs dochelp refcheckdocs
|
||||
PHONY += $(DOC_TARGETS)
|
||||
$(DOC_TARGETS): scripts_basic FORCE
|
||||
$(Q)$(MAKE) $(build)=Documentation $@
|
||||
$(Q)$(MAKE) $(build)=doc $@
|
||||
|
||||
endif #ifeq ($(config-targets),1)
|
||||
endif #ifeq ($(mixed-targets),1)
|
||||
|
||||
7
README
7
README
@@ -486,10 +486,6 @@ The following options need to be configured:
|
||||
PBI commands can be used to configure SoC before it starts the execution.
|
||||
Please refer doc/README.pblimage for more details
|
||||
|
||||
CONFIG_SPL_FSL_PBL
|
||||
It adds a target to create boot binary having SPL binary in PBI format
|
||||
concatenated with u-boot binary.
|
||||
|
||||
CONFIG_SYS_FSL_DDR_BE
|
||||
Defines the DDR controller register space as Big Endian
|
||||
|
||||
@@ -2546,9 +2542,6 @@ FIT uImage format:
|
||||
Defines the size and behavior of the NAND that SPL uses
|
||||
to read U-Boot
|
||||
|
||||
CONFIG_SPL_NAND_BOOT
|
||||
Add support NAND boot
|
||||
|
||||
CONFIG_SYS_NAND_U_BOOT_OFFS
|
||||
Location in NAND to read U-Boot from
|
||||
|
||||
|
||||
@@ -101,6 +101,7 @@ config SANDBOX
|
||||
imply CMD_IOTRACE
|
||||
imply CMD_LZMADEC
|
||||
imply CMD_SATA
|
||||
imply CMD_SF
|
||||
imply CMD_SF_TEST
|
||||
imply CRC32_VERIFY
|
||||
imply FAT_WRITE
|
||||
@@ -147,6 +148,7 @@ config X86
|
||||
imply CMD_IO
|
||||
imply CMD_IRQ
|
||||
imply CMD_PCI
|
||||
imply CMD_SF
|
||||
imply CMD_SF_TEST
|
||||
imply CMD_ZBOOT
|
||||
imply DM_ETH
|
||||
|
||||
@@ -1406,14 +1406,24 @@ config TARGET_LS1046ARDB
|
||||
development platform that supports the QorIQ LS1046A
|
||||
Layerscape Architecture processor.
|
||||
|
||||
config TARGET_LS1046AFRWY
|
||||
bool "Support ls1046afrwy"
|
||||
select ARCH_LS1046A
|
||||
select ARM64
|
||||
select ARMV8_MULTIENTRY
|
||||
select BOARD_EARLY_INIT_F
|
||||
select BOARD_LATE_INIT
|
||||
select DM_SPI_FLASH if DM_SPI
|
||||
imply SCSI
|
||||
help
|
||||
Support for Freescale LS1046AFRWY platform.
|
||||
The LS1046A Freeway Board (FRWY) is a high-performance
|
||||
development platform that supports the QorIQ LS1046A
|
||||
Layerscape Architecture processor.
|
||||
config TARGET_H2200
|
||||
bool "Support h2200"
|
||||
select CPU_PXA
|
||||
|
||||
config TARGET_ZIPITZ2
|
||||
bool "Support zipitz2"
|
||||
select CPU_PXA
|
||||
|
||||
config TARGET_COLIBRI_PXA270
|
||||
bool "Support colibri_pxa270"
|
||||
select CPU_PXA
|
||||
@@ -1697,6 +1707,7 @@ source "board/freescale/ls1021aiot/Kconfig"
|
||||
source "board/freescale/ls1046aqds/Kconfig"
|
||||
source "board/freescale/ls1043ardb/Kconfig"
|
||||
source "board/freescale/ls1046ardb/Kconfig"
|
||||
source "board/freescale/ls1046afrwy/Kconfig"
|
||||
source "board/freescale/ls1012aqds/Kconfig"
|
||||
source "board/freescale/ls1012ardb/Kconfig"
|
||||
source "board/freescale/ls1012afrdm/Kconfig"
|
||||
@@ -1727,7 +1738,6 @@ source "board/woodburn/Kconfig"
|
||||
source "board/xilinx/Kconfig"
|
||||
source "board/xilinx/zynq/Kconfig"
|
||||
source "board/xilinx/zynqmp/Kconfig"
|
||||
source "board/zipitz2/Kconfig"
|
||||
|
||||
source "arch/arm/Kconfig.debug"
|
||||
|
||||
|
||||
@@ -107,6 +107,7 @@ config PSCI_RESET
|
||||
!TARGET_LS1028ARDB && !TARGET_LS1028AQDS && \
|
||||
!TARGET_LS1043ARDB && !TARGET_LS1043AQDS && \
|
||||
!TARGET_LS1046ARDB && !TARGET_LS1046AQDS && \
|
||||
!TARGET_LS1046AFRWY && \
|
||||
!TARGET_LS2081ARDB && !TARGET_LX2160ARDB && \
|
||||
!TARGET_LX2160AQDS && \
|
||||
!ARCH_UNIPHIER && !TARGET_S32V234EVB
|
||||
|
||||
@@ -48,6 +48,7 @@ config ARCH_LS1028A
|
||||
select SYS_I2C_MXC_I2C6
|
||||
select SYS_I2C_MXC_I2C7
|
||||
select SYS_I2C_MXC_I2C8
|
||||
select SYS_FSL_ERRATUM_A008997
|
||||
select SYS_FSL_ERRATUM_A009007
|
||||
select SYS_FSL_ERRATUM_A008514 if !TFABOOT
|
||||
select SYS_FSL_ERRATUM_A009663 if !TFABOOT
|
||||
|
||||
@@ -435,7 +435,7 @@ void ft_cpu_setup(void *blob, bd_t *bd)
|
||||
do_fixup_by_path_u32(blob, "/sysclk", "clock-frequency",
|
||||
CONFIG_SYS_CLK_FREQ, 1);
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
#ifdef CONFIG_PCI_LAYERSCAPE
|
||||
ft_pci_setup(blob, bd);
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright 2015 Freescale Semiconductor, Inc.
|
||||
* Copyright 2019 NXP.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
@@ -250,6 +251,7 @@ unsigned int mxc_get_clock(enum mxc_clock clk)
|
||||
return get_i2c_freq(0);
|
||||
#if defined(CONFIG_FSL_ESDHC)
|
||||
case MXC_ESDHC_CLK:
|
||||
case MXC_ESDHC2_CLK:
|
||||
return get_sdhc_freq(0);
|
||||
#endif
|
||||
case MXC_DSPI_CLK:
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright 2014-2015, Freescale Semiconductor, Inc.
|
||||
* Copyright 2019 NXP Semiconductors
|
||||
*
|
||||
* Derived from arch/power/cpu/mpc85xx/speed.c
|
||||
*/
|
||||
@@ -214,6 +215,7 @@ unsigned int mxc_get_clock(enum mxc_clock clk)
|
||||
return get_i2c_freq(0);
|
||||
#if defined(CONFIG_FSL_ESDHC)
|
||||
case MXC_ESDHC_CLK:
|
||||
case MXC_ESDHC2_CLK:
|
||||
return get_sdhc_freq(0);
|
||||
#endif
|
||||
case MXC_DSPI_CLK:
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* (C) Copyright 2014-2015 Freescale Semiconductor
|
||||
* Copyright 2019 NXP
|
||||
*
|
||||
* Extracted from armv8/start.S
|
||||
*/
|
||||
@@ -356,31 +357,22 @@ get_svr:
|
||||
|
||||
#if defined(CONFIG_SYS_FSL_HAS_CCN504) || defined(CONFIG_SYS_FSL_HAS_CCN508)
|
||||
hnf_pstate_poll:
|
||||
/* x0 has the desired status, return 0 for success, 1 for timeout
|
||||
* clobber x1, x2, x3, x4, x6, x7
|
||||
/* x0 has the desired status, return only if operation succeed
|
||||
* clobber x1, x2, x6
|
||||
*/
|
||||
mov x1, x0
|
||||
mov x7, #0 /* flag for timeout */
|
||||
mrs x3, cntpct_el0 /* read timer */
|
||||
add x3, x3, #1200 /* timeout after 100 microseconds */
|
||||
mov w6, #8 /* HN-F node count */
|
||||
mov x0, #0x18
|
||||
movk x0, #0x420, lsl #16 /* HNF0_PSTATE_STATUS */
|
||||
mov w6, #8 /* HN-F node count */
|
||||
1:
|
||||
ldr x2, [x0]
|
||||
cmp x2, x1 /* check status */
|
||||
b.eq 2f
|
||||
mrs x4, cntpct_el0
|
||||
cmp x4, x3
|
||||
b.ls 1b
|
||||
mov x7, #1 /* timeout */
|
||||
b 3f
|
||||
b 1b
|
||||
2:
|
||||
add x0, x0, #0x10000 /* move to next node */
|
||||
subs w6, w6, #1
|
||||
cbnz w6, 1b
|
||||
3:
|
||||
mov x0, x7
|
||||
ret
|
||||
|
||||
hnf_set_pstate:
|
||||
@@ -405,10 +397,8 @@ ENTRY(__asm_flush_l3_dcache)
|
||||
/*
|
||||
* Return status in x0
|
||||
* success 0
|
||||
* timeout 1 for setting SFONLY, 2 for FAM, 3 for both
|
||||
*/
|
||||
mov x29, lr
|
||||
mov x8, #0
|
||||
|
||||
dsb sy
|
||||
mov x0, #0x1 /* HNFPSTAT_SFONLY */
|
||||
@@ -416,19 +406,15 @@ ENTRY(__asm_flush_l3_dcache)
|
||||
|
||||
mov x0, #0x4 /* SFONLY status */
|
||||
bl hnf_pstate_poll
|
||||
cbz x0, 1f
|
||||
mov x8, #1 /* timeout */
|
||||
1:
|
||||
|
||||
dsb sy
|
||||
mov x0, #0x3 /* HNFPSTAT_FAM */
|
||||
bl hnf_set_pstate
|
||||
|
||||
mov x0, #0xc /* FAM status */
|
||||
bl hnf_pstate_poll
|
||||
cbz x0, 1f
|
||||
add x8, x8, #0x2
|
||||
1:
|
||||
mov x0, x8
|
||||
|
||||
mov x0, #0
|
||||
mov lr, x29
|
||||
ret
|
||||
ENDPROC(__asm_flush_l3_dcache)
|
||||
|
||||
@@ -22,6 +22,19 @@ static struct serdes_config serdes1_cfg_tbl[] = {
|
||||
{0xEBCC, {PCIE1, PCIE1, PCIE2, SATA1} },
|
||||
{0xCCCC, {PCIE1, PCIE1, PCIE2, PCIE2} },
|
||||
{0xDDDD, {PCIE1, PCIE1, PCIE1, PCIE1} },
|
||||
{0xE031, {SXGMII1, QXGMII2, NONE, SATA1} },
|
||||
{0xB991, {SXGMII1, SGMII1, SGMII2, PCIE1} },
|
||||
{0xBB31, {SXGMII1, QXGMII2, PCIE1, PCIE1} },
|
||||
{0xCC31, {SXGMII1, QXGMII2, PCIE2, PCIE2} },
|
||||
{0xBB51, {SXGMII1, QSGMII_B, PCIE2, PCIE1} },
|
||||
{0xBB38, {SGMII_T1, QXGMII2, PCIE2, PCIE1} },
|
||||
{0xCC38, {SGMII_T1, QXGMII2, PCIE2, PCIE2} },
|
||||
{0xBB58, {SGMII_T1, QSGMII_B, PCIE2, PCIE1} },
|
||||
{0xCC58, {SGMII_T1, QSGMII_B, PCIE2, PCIE2} },
|
||||
{0xCC8B, {PCIE1, SGMII_T1, PCIE2, PCIE2} },
|
||||
{0xEB58, {SGMII_T1, QSGMII_B, PCIE2, SATA1} },
|
||||
{0xEB8B, {PCIE1, SGMII_T1, PCIE2, SATA1} },
|
||||
{0xE8CC, {PCIE1, PCIE1, SGMII_T1, SATA1} },
|
||||
{}
|
||||
};
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright 2016 Freescale Semiconductor, Inc.
|
||||
* Copyright 2019 NXP
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
@@ -29,10 +30,11 @@ static struct serdes_config serdes1_cfg_tbl[] = {
|
||||
{0x1163, {XFI_FM1_MAC9, XFI_FM1_MAC10, PCIE1, SGMII_FM1_DTSEC6} },
|
||||
{0x2263, {SGMII_2500_FM1_DTSEC9, SGMII_2500_FM1_DTSEC10, PCIE1,
|
||||
SGMII_FM1_DTSEC6} },
|
||||
{0x3363, {SGMII_FM1_DTSEC5, SGMII_FM1_DTSEC6, PCIE1,
|
||||
{0x3363, {SGMII_FM1_DTSEC9, SGMII_FM1_DTSEC10, PCIE1,
|
||||
SGMII_FM1_DTSEC6} },
|
||||
{0x2223, {SGMII_2500_FM1_DTSEC9, SGMII_2500_FM1_DTSEC10,
|
||||
SGMII_2500_FM1_DTSEC5, SGMII_FM1_DTSEC6} },
|
||||
{0x3040, {SGMII_FM1_DTSEC9, NONE, QSGMII_FM1_A, NONE} },
|
||||
{}
|
||||
};
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright 2014-2015 Freescale Semiconductor
|
||||
* Copyright 2019 NXP
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
@@ -126,6 +127,10 @@ static void erratum_a008997(void)
|
||||
set_usb_pcstxswingfull(scfg, SCFG_USB3PRM2CR_USB2);
|
||||
set_usb_pcstxswingfull(scfg, SCFG_USB3PRM2CR_USB3);
|
||||
#endif
|
||||
#elif defined(CONFIG_ARCH_LS1028A)
|
||||
clrsetbits_le32(DCSR_BASE + DCSR_USB_IOCR1,
|
||||
0x7F << 11,
|
||||
DCSR_USB_PCSTXSWINGFULL << 11);
|
||||
#endif
|
||||
#endif /* CONFIG_SYS_FSL_ERRATUM_A008997 */
|
||||
}
|
||||
@@ -139,7 +144,8 @@ static void erratum_a008997(void)
|
||||
out_be16((phy) + SCFG_USB_PHY_RX_OVRD_IN_HI, USB_PHY_RX_EQ_VAL_3); \
|
||||
out_be16((phy) + SCFG_USB_PHY_RX_OVRD_IN_HI, USB_PHY_RX_EQ_VAL_4)
|
||||
|
||||
#elif defined(CONFIG_ARCH_LS2080A) || defined(CONFIG_ARCH_LS1088A)
|
||||
#elif defined(CONFIG_ARCH_LS2080A) || defined(CONFIG_ARCH_LS1088A) || \
|
||||
defined(CONFIG_ARCH_LS1028A)
|
||||
|
||||
#define PROGRAM_USB_PHY_RX_OVRD_IN_HI(phy) \
|
||||
out_le16((phy) + DCSR_USB_PHY_RX_OVRD_IN_HI, USB_PHY_RX_EQ_VAL_1); \
|
||||
@@ -163,7 +169,8 @@ static void erratum_a009007(void)
|
||||
usb_phy = (void __iomem *)SCFG_USB_PHY3;
|
||||
PROGRAM_USB_PHY_RX_OVRD_IN_HI(usb_phy);
|
||||
#endif
|
||||
#elif defined(CONFIG_ARCH_LS2080A) || defined(CONFIG_ARCH_LS1088A)
|
||||
#elif defined(CONFIG_ARCH_LS2080A) || defined(CONFIG_ARCH_LS1088A) || \
|
||||
defined(CONFIG_ARCH_LS1028A)
|
||||
void __iomem *dcsr = (void __iomem *)DCSR_BASE;
|
||||
|
||||
PROGRAM_USB_PHY_RX_OVRD_IN_HI(dcsr + DCSR_USB_PHY1);
|
||||
@@ -593,6 +600,9 @@ void fsl_lsch2_early_init_f(void)
|
||||
struct ccsr_cci400 *cci = (struct ccsr_cci400 *)(CONFIG_SYS_IMMR +
|
||||
CONFIG_SYS_CCI400_OFFSET);
|
||||
struct ccsr_scfg *scfg = (struct ccsr_scfg *)CONFIG_SYS_FSL_SCFG_ADDR;
|
||||
#if defined(CONFIG_FSL_QSPI) && defined(CONFIG_TFABOOT)
|
||||
enum boot_src src;
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_LAYERSCAPE_NS_ACCESS
|
||||
enable_layerscape_ns_access();
|
||||
@@ -602,8 +612,14 @@ void fsl_lsch2_early_init_f(void)
|
||||
init_early_memctl_regs(); /* tighten IFC timing */
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_FSL_QSPI) && defined(CONFIG_TFABOOT)
|
||||
src = get_boot_src();
|
||||
if (src != BOOT_SOURCE_QSPI_NOR)
|
||||
out_be32(&scfg->qspi_cfg, SCFG_QSPI_CLKSEL);
|
||||
#else
|
||||
#if defined(CONFIG_FSL_QSPI) && !defined(CONFIG_QSPI_BOOT)
|
||||
out_be32(&scfg->qspi_cfg, SCFG_QSPI_CLKSEL);
|
||||
#endif
|
||||
#endif
|
||||
/* Make SEC reads and writes snoopable */
|
||||
setbits_be32(&scfg->snpcnfgcr, SCFG_SNPCNFGCR_SECRDSNP |
|
||||
@@ -808,7 +824,11 @@ int board_late_init(void)
|
||||
* check if gd->env_addr is default_environment; then setenv bootcmd
|
||||
* and mcinitcmd.
|
||||
*/
|
||||
#if !defined(CONFIG_ENV_ADDR) || defined(ENV_IS_EMBEDDED)
|
||||
if (gd->env_addr == (ulong)&default_environment[0]) {
|
||||
#else
|
||||
if (gd->env_addr + gd->reloc_off == (ulong)&default_environment[0]) {
|
||||
#endif
|
||||
fsl_setenv_bootcmd();
|
||||
fsl_setenv_mcinitcmd();
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
.globl _start
|
||||
_start:
|
||||
#if defined(LINUX_KERNEL_IMAGE_HEADER)
|
||||
#if defined(CONFIG_LINUX_KERNEL_IMAGE_HEADER)
|
||||
#include <asm/boot0-linux-kernel-header.h>
|
||||
#elif defined(CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK)
|
||||
/*
|
||||
|
||||
@@ -93,7 +93,8 @@ dtb-$(CONFIG_ROCKCHIP_RK3288) += \
|
||||
rk3288-vyasa.dtb
|
||||
|
||||
dtb-$(CONFIG_ROCKCHIP_RK3328) += \
|
||||
rk3328-evb.dtb
|
||||
rk3328-evb.dtb \
|
||||
rk3328-rock64.dtb
|
||||
|
||||
dtb-$(CONFIG_ROCKCHIP_RK3368) += \
|
||||
rk3368-lion.dtb \
|
||||
@@ -108,11 +109,14 @@ dtb-$(CONFIG_ROCKCHIP_RK3399) += \
|
||||
rk3399-gru-bob.dtb \
|
||||
rk3399-nanopc-t4.dtb \
|
||||
rk3399-nanopi-m4.dtb \
|
||||
rk3399-nanopi-neo4.dtb \
|
||||
rk3399-orangepi.dtb \
|
||||
rk3399-puma-ddr1333.dtb \
|
||||
rk3399-puma-ddr1600.dtb \
|
||||
rk3399-puma-ddr1866.dtb \
|
||||
rk3399-rock-pi-4.dtb \
|
||||
rk3399-rock960.dtb \
|
||||
rk3399-rockpro64.dtb
|
||||
|
||||
dtb-$(CONFIG_ROCKCHIP_RV1108) += \
|
||||
rv1108-elgin-r1.dtb \
|
||||
@@ -339,6 +343,7 @@ dtb-$(CONFIG_FSL_LSCH2) += fsl-ls1043a-qds-duart.dtb \
|
||||
fsl-ls1046a-qds-duart.dtb \
|
||||
fsl-ls1046a-qds-lpuart.dtb \
|
||||
fsl-ls1046a-rdb.dtb \
|
||||
fsl-ls1046a-frwy.dtb \
|
||||
fsl-ls1012a-qds.dtb \
|
||||
fsl-ls1012a-rdb.dtb \
|
||||
fsl-ls1012a-2g5rdb.dtb \
|
||||
@@ -532,14 +537,14 @@ dtb-$(CONFIG_VF610) += vf500-colibri.dtb \
|
||||
vf610-bk4r1.dtb
|
||||
|
||||
dtb-$(CONFIG_MX53) += imx53-cx9020.dtb \
|
||||
imx53-kp.dtb
|
||||
imx53-kp.dtb \
|
||||
imx53-m53menlo.dtb
|
||||
|
||||
dtb-$(CONFIG_MX6Q) += \
|
||||
imx6-apalis.dtb \
|
||||
imx6q-display5.dtb \
|
||||
imx6q-logicpd.dtb
|
||||
|
||||
dtb-$(CONFIG_TARGET_TBS2910) += \
|
||||
imx6q-logicpd.dtb \
|
||||
imx6q-novena.dtb \
|
||||
imx6q-tbs2910.dtb
|
||||
|
||||
dtb-$(CONFIG_MX6QDL) += \
|
||||
@@ -547,19 +552,19 @@ dtb-$(CONFIG_MX6QDL) += \
|
||||
imx6dl-icore-mipi.dtb \
|
||||
imx6dl-icore-rqs.dtb \
|
||||
imx6dl-mamoj.dtb \
|
||||
imx6dl-sabreauto.dtb \
|
||||
imx6dl-sabresd.dtb \
|
||||
imx6dl-wandboard-revb1.dtb \
|
||||
imx6q-cm-fx6.dtb \
|
||||
imx6q-icore.dtb \
|
||||
imx6q-icore-mipi.dtb \
|
||||
imx6q-icore-rqs.dtb \
|
||||
imx6q-sabreauto.dtb \
|
||||
imx6q-sabresd.dtb \
|
||||
imx6dl-sabreauto.dtb \
|
||||
imx6dl-sabresd.dtb \
|
||||
imx6q-wandboard-revb1.dtb \
|
||||
imx6qp-sabreauto.dtb \
|
||||
imx6qp-sabresd.dtb
|
||||
|
||||
dtb-$(CONFIG_TARGET_WANDBOARD) += \
|
||||
imx6dl-wandboard-revb1.dtb
|
||||
imx6qp-sabresd.dtb \
|
||||
imx6qp-wandboard-revd1.dtb
|
||||
|
||||
dtb-$(CONFIG_MX6SL) += imx6sl-evk.dtb
|
||||
|
||||
@@ -567,7 +572,8 @@ dtb-$(CONFIG_MX6SLL) += imx6sll-evk.dtb
|
||||
|
||||
dtb-$(CONFIG_MX6SX) += \
|
||||
imx6sx-sabreauto.dtb \
|
||||
imx6sx-sdb.dtb
|
||||
imx6sx-sdb.dtb \
|
||||
imx6sx-softing-vining-2000.dtb
|
||||
|
||||
dtb-$(CONFIG_MX6UL) += \
|
||||
imx6ul-geam.dtb \
|
||||
@@ -585,10 +591,13 @@ dtb-$(CONFIG_MX6UL) += \
|
||||
dtb-$(CONFIG_MX6ULL) += \
|
||||
imx6ull-14x14-evk.dtb \
|
||||
imx6ull-colibri.dtb \
|
||||
imx6ull-phycore-segin.dtb \
|
||||
imx6ull-dart-6ul.dtb
|
||||
|
||||
dtb-$(CONFIG_ARCH_MX6) += \
|
||||
imx6-colibri.dtb
|
||||
imx6-apalis.dtb \
|
||||
imx6-colibri.dtb \
|
||||
imx6q-dhcom-pdk2.dtb
|
||||
|
||||
dtb-$(CONFIG_MX7) += imx7d-sdb.dtb \
|
||||
imx7d-sdb-qspi.dtb \
|
||||
@@ -602,8 +611,10 @@ dtb-$(CONFIG_MX7) += imx7d-sdb.dtb \
|
||||
dtb-$(CONFIG_ARCH_MX7ULP) += imx7ulp-evk.dtb
|
||||
|
||||
dtb-$(CONFIG_ARCH_IMX8) += \
|
||||
fsl-imx8qxp-mek.dtb \
|
||||
fsl-imx8qm-apalis.dtb \
|
||||
fsl-imx8qm-mek.dtb \
|
||||
fsl-imx8qxp-colibri.dtb \
|
||||
fsl-imx8qxp-mek.dtb
|
||||
|
||||
dtb-$(CONFIG_ARCH_IMX8M) += fsl-imx8mq-evk.dtb
|
||||
|
||||
@@ -726,14 +737,19 @@ dtb-$(CONFIG_TARGET_VINCO) += \
|
||||
at91-vinco.dtb
|
||||
|
||||
dtb-$(CONFIG_ARCH_BCM283X) += \
|
||||
bcm2835-rpi-a-plus.dtb \
|
||||
bcm2835-rpi-a.dtb \
|
||||
bcm2835-rpi-a-plus.dtb \
|
||||
bcm2835-rpi-b.dtb \
|
||||
bcm2835-rpi-b-plus.dtb \
|
||||
bcm2835-rpi-b-rev2.dtb \
|
||||
bcm2835-rpi-b.dtb \
|
||||
bcm2835-rpi-zero-w.dtb \
|
||||
bcm2835-rpi-cm1-io1.dtb \
|
||||
bcm2835-rpi-zero.dtb \
|
||||
bcm2835-rpi-zero-w.dtb\
|
||||
bcm2836-rpi-2-b.dtb \
|
||||
bcm2837-rpi-3-b.dtb
|
||||
bcm2837-rpi-3-a-plus.dtb \
|
||||
bcm2837-rpi-3-b.dtb \
|
||||
bcm2837-rpi-3-b-plus.dtb \
|
||||
bcm2837-rpi-cm3-io3.dtb
|
||||
|
||||
dtb-$(CONFIG_ARCH_BCM63158) += \
|
||||
bcm963158.dtb
|
||||
@@ -747,6 +763,7 @@ dtb-$(CONFIG_ARCH_STI) += stih410-b2260.dtb
|
||||
|
||||
dtb-$(CONFIG_TARGET_STM32MP1) += \
|
||||
stm32mp157a-dk1.dtb \
|
||||
stm32mp157a-avenger96.dtb \
|
||||
stm32mp157c-dk2.dtb \
|
||||
stm32mp157c-ed1.dtb \
|
||||
stm32mp157c-ev1.dtb
|
||||
|
||||
@@ -20,3 +20,7 @@
|
||||
status = "okay";
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&sdhci {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2835.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
@@ -9,12 +10,12 @@
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 47 0>;
|
||||
gpios = <&gpio 47 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
pwr {
|
||||
label = "PWR";
|
||||
gpios = <&gpio 35 0>;
|
||||
gpios = <&gpio 35 GPIO_ACTIVE_HIGH>;
|
||||
default-state = "keep";
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
@@ -30,8 +31,8 @@
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "SDA0",
|
||||
"SCL0",
|
||||
gpio-line-names = "ID_SDA",
|
||||
"ID_SCL",
|
||||
"SDA1",
|
||||
"SCL1",
|
||||
"GPIO_GCLK",
|
||||
@@ -100,6 +101,12 @@
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio14>;
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2835.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
@@ -9,7 +10,7 @@
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 16 1>;
|
||||
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -95,6 +96,12 @@
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio14>;
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2835.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
@@ -10,12 +11,12 @@
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 47 0>;
|
||||
gpios = <&gpio 47 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
pwr {
|
||||
label = "PWR";
|
||||
gpios = <&gpio 35 0>;
|
||||
gpios = <&gpio 35 GPIO_ACTIVE_HIGH>;
|
||||
default-state = "keep";
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
@@ -32,8 +33,8 @@
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "SDA0",
|
||||
"SCL0",
|
||||
gpio-line-names = "ID_SDA",
|
||||
"ID_SCL",
|
||||
"SDA1",
|
||||
"SCL1",
|
||||
"GPIO_GCLK",
|
||||
@@ -102,6 +103,12 @@
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio14>;
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2835.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
@@ -10,7 +11,7 @@
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 16 1>;
|
||||
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -92,7 +93,13 @@
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2835.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
@@ -10,7 +11,7 @@
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 16 1>;
|
||||
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -90,6 +91,12 @@
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio14>;
|
||||
|
||||
88
arch/arm/dts/bcm2835-rpi-cm1-io1.dts
Normal file
88
arch/arm/dts/bcm2835-rpi-cm1-io1.dts
Normal file
@@ -0,0 +1,88 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2835-rpi-cm1.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,compute-module", "brcm,bcm2835";
|
||||
model = "Raspberry Pi Compute Module IO board rev1";
|
||||
};
|
||||
|
||||
&gpio {
|
||||
/*
|
||||
* This is based on the official GPU firmware DT blob.
|
||||
*
|
||||
* Legend:
|
||||
* "NC" = not connected (no rail from the SoC)
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "GPIO0",
|
||||
"GPIO1",
|
||||
"GPIO2",
|
||||
"GPIO3",
|
||||
"GPIO4",
|
||||
"GPIO5",
|
||||
"GPIO6",
|
||||
"GPIO7",
|
||||
"GPIO8",
|
||||
"GPIO9",
|
||||
"GPIO10",
|
||||
"GPIO11",
|
||||
"GPIO12",
|
||||
"GPIO13",
|
||||
"GPIO14",
|
||||
"GPIO15",
|
||||
"GPIO16",
|
||||
"GPIO17",
|
||||
"GPIO18",
|
||||
"GPIO19",
|
||||
"GPIO20",
|
||||
"GPIO21",
|
||||
"GPIO22",
|
||||
"GPIO23",
|
||||
"GPIO24",
|
||||
"GPIO25",
|
||||
"GPIO26",
|
||||
"GPIO27",
|
||||
"GPIO28",
|
||||
"GPIO29",
|
||||
"GPIO30",
|
||||
"GPIO31",
|
||||
"GPIO32",
|
||||
"GPIO33",
|
||||
"GPIO34",
|
||||
"GPIO35",
|
||||
"GPIO36",
|
||||
"GPIO37",
|
||||
"GPIO38",
|
||||
"GPIO39",
|
||||
"GPIO40",
|
||||
"GPIO41",
|
||||
"GPIO42",
|
||||
"GPIO43",
|
||||
"GPIO44",
|
||||
"GPIO45",
|
||||
"HDMI_HPD_N",
|
||||
/* Also used as ACT LED */
|
||||
"EMMC_EN_N",
|
||||
/* Used by eMMC */
|
||||
"SD_CLK_R",
|
||||
"SD_CMD_R",
|
||||
"SD_DATA0_R",
|
||||
"SD_DATA1_R",
|
||||
"SD_DATA2_R",
|
||||
"SD_DATA3_R";
|
||||
|
||||
pinctrl-0 = <&gpioout &alt0>;
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio14>;
|
||||
status = "okay";
|
||||
};
|
||||
34
arch/arm/dts/bcm2835-rpi-cm1.dtsi
Normal file
34
arch/arm/dts/bcm2835-rpi-cm1.dtsi
Normal file
@@ -0,0 +1,34 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2835.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
|
||||
/ {
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 47 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
reg_3v3: fixed-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_1v8: fixed-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
|
||||
&sdhost {
|
||||
non-removable;
|
||||
vmmc-supply = <®_3v3>;
|
||||
vqmmc-supply = <®_1v8>;
|
||||
};
|
||||
@@ -1,26 +1,135 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2017 Stefan Wahren <stefan.wahren@i2se.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "bcm2835.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
#include "bcm283x-rpi-smsc9512.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
#include "bcm283x-rpi-usb-otg.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,model-zero-w", "brcm,bcm2835";
|
||||
model = "Raspberry Pi Zero W";
|
||||
|
||||
chosen {
|
||||
/* 8250 auxiliary UART instead of pl011 */
|
||||
stdout-path = "serial1:115200n8";
|
||||
};
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 47 0>;
|
||||
gpios = <&gpio 47 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
wifi_pwrseq: wifi-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart1_gpio14>;
|
||||
status = "okay";
|
||||
&gpio {
|
||||
/*
|
||||
* This is based on the official GPU firmware DT blob.
|
||||
*
|
||||
* Legend:
|
||||
* "NC" = not connected (no rail from the SoC)
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "ID_SDA",
|
||||
"ID_SCL",
|
||||
"SDA1",
|
||||
"SCL1",
|
||||
"GPIO_GCLK",
|
||||
"GPIO5",
|
||||
"GPIO6",
|
||||
"SPI_CE1_N",
|
||||
"SPI_CE0_N",
|
||||
"SPI_MISO",
|
||||
"SPI_MOSI",
|
||||
"SPI_SCLK",
|
||||
"GPIO12",
|
||||
"GPIO13",
|
||||
/* Serial port */
|
||||
"TXD0",
|
||||
"RXD0",
|
||||
"GPIO16",
|
||||
"GPIO17",
|
||||
"GPIO18",
|
||||
"GPIO19",
|
||||
"GPIO20",
|
||||
"GPIO21",
|
||||
"GPIO22",
|
||||
"GPIO23",
|
||||
"GPIO24",
|
||||
"GPIO25",
|
||||
"GPIO26",
|
||||
"GPIO27",
|
||||
"SDA0",
|
||||
"SCL0",
|
||||
"NC", /* GPIO30 */
|
||||
"NC", /* GPIO31 */
|
||||
"NC", /* GPIO32 */
|
||||
"NC", /* GPIO33 */
|
||||
"NC", /* GPIO34 */
|
||||
"NC", /* GPIO35 */
|
||||
"NC", /* GPIO36 */
|
||||
"NC", /* GPIO37 */
|
||||
"NC", /* GPIO38 */
|
||||
"NC", /* GPIO39 */
|
||||
"CAM_GPIO1", /* GPIO40 */
|
||||
"WL_ON", /* GPIO41 */
|
||||
"NC", /* GPIO42 */
|
||||
"WIFI_CLK", /* GPIO43 */
|
||||
"CAM_GPIO0", /* GPIO44 */
|
||||
"BT_ON", /* GPIO45 */
|
||||
"HDMI_HPD_N",
|
||||
"STATUS_LED_N",
|
||||
/* Used by SD Card */
|
||||
"SD_CLK_R",
|
||||
"SD_CMD_R",
|
||||
"SD_DATA0_R",
|
||||
"SD_DATA1_R",
|
||||
"SD_DATA2_R",
|
||||
"SD_DATA3_R";
|
||||
|
||||
pinctrl-0 = <&gpioout &alt0>;
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-0 = <&emmc_gpio34 &gpclk2_gpio43>;
|
||||
mmc-pwrseq = <&wifi_pwrseq>;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio32 &uart0_ctsrts_gpio30>;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
shutdown-gpios = <&gpio 45 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart1_gpio14>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
105
arch/arm/dts/bcm2835-rpi-zero.dts
Normal file
105
arch/arm/dts/bcm2835-rpi-zero.dts
Normal file
@@ -0,0 +1,105 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2016 Stefan Wahren <stefan.wahren@i2se.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "bcm2835.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
#include "bcm283x-rpi-usb-otg.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,model-zero", "brcm,bcm2835";
|
||||
model = "Raspberry Pi Zero";
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 47 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gpio {
|
||||
/*
|
||||
* This is based on the official GPU firmware DT blob.
|
||||
*
|
||||
* Legend:
|
||||
* "NC" = not connected (no rail from the SoC)
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "ID_SDA",
|
||||
"ID_SCL",
|
||||
"SDA1",
|
||||
"SCL1",
|
||||
"GPIO_GCLK",
|
||||
"GPIO5",
|
||||
"GPIO6",
|
||||
"SPI_CE1_N",
|
||||
"SPI_CE0_N",
|
||||
"SPI_MISO",
|
||||
"SPI_MOSI",
|
||||
"SPI_SCLK",
|
||||
"GPIO12",
|
||||
"GPIO13",
|
||||
/* Serial port */
|
||||
"TXD0",
|
||||
"RXD0",
|
||||
"GPIO16",
|
||||
"GPIO17",
|
||||
"GPIO18",
|
||||
"GPIO19",
|
||||
"GPIO20",
|
||||
"GPIO21",
|
||||
"GPIO22",
|
||||
"GPIO23",
|
||||
"GPIO24",
|
||||
"GPIO25",
|
||||
"GPIO26",
|
||||
"GPIO27",
|
||||
"SDA0",
|
||||
"SCL0",
|
||||
"NC", /* GPIO30 */
|
||||
"NC", /* GPIO31 */
|
||||
"CAM_GPIO1", /* GPIO32 */
|
||||
"NC", /* GPIO33 */
|
||||
"NC", /* GPIO34 */
|
||||
"NC", /* GPIO35 */
|
||||
"NC", /* GPIO36 */
|
||||
"NC", /* GPIO37 */
|
||||
"NC", /* GPIO38 */
|
||||
"NC", /* GPIO39 */
|
||||
"NC", /* GPIO40 */
|
||||
"CAM_GPIO0", /* GPIO41 */
|
||||
"NC", /* GPIO42 */
|
||||
"NC", /* GPIO43 */
|
||||
"NC", /* GPIO44 */
|
||||
"NC", /* GPIO45 */
|
||||
"HDMI_HPD_N",
|
||||
"STATUS_LED_N",
|
||||
/* Used by SD Card */
|
||||
"SD_CLK_R",
|
||||
"SD_CMD_R",
|
||||
"SD_DATA0_R",
|
||||
"SD_DATA1_R",
|
||||
"SD_DATA2_R",
|
||||
"SD_DATA3_R";
|
||||
|
||||
pinctrl-0 = <&gpioout &alt0 &i2s_alt0>;
|
||||
|
||||
/* I2S interface */
|
||||
i2s_alt0: i2s_alt0 {
|
||||
brcm,pins = <18 19 20 21>;
|
||||
brcm,function = <BCM2835_FSEL_ALT0>;
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio14>;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -1,7 +1,7 @@
|
||||
#include <dt-bindings/power/raspberrypi-power.h>
|
||||
|
||||
/ {
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0 0x10000000>;
|
||||
};
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
soc {
|
||||
firmware: firmware {
|
||||
compatible = "raspberrypi,bcm2835-firmware";
|
||||
compatible = "raspberrypi,bcm2835-firmware", "simple-bus";
|
||||
mboxes = <&mailbox>;
|
||||
};
|
||||
|
||||
@@ -27,6 +27,12 @@
|
||||
firmware = <&firmware>;
|
||||
#power-domain-cells = <1>;
|
||||
};
|
||||
|
||||
vchiq: mailbox@7e00b840 {
|
||||
compatible = "brcm,bcm2835-vchiq";
|
||||
reg = <0x7e00b840 0x3c>;
|
||||
interrupts = <0 2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -65,30 +71,20 @@
|
||||
&sdhci {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio48>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
};
|
||||
|
||||
&sdhost {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdhost_gpio48>;
|
||||
bus-width = <4>;
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
};
|
||||
|
||||
&usb {
|
||||
power-domains = <&power RPI_POWER_DOMAIN_USB>;
|
||||
};
|
||||
|
||||
&v3d {
|
||||
power-domains = <&power RPI_POWER_DOMAIN_V3D>;
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
power-domains = <&power RPI_POWER_DOMAIN_HDMI>;
|
||||
status = "okay";
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include "bcm283x.dtsi"
|
||||
|
||||
/ {
|
||||
@@ -17,10 +18,10 @@
|
||||
soc {
|
||||
ranges = <0x7e000000 0x20000000 0x02000000>;
|
||||
dma-ranges = <0x40000000 0x00000000 0x20000000>;
|
||||
};
|
||||
|
||||
arm-pmu {
|
||||
compatible = "arm,arm1176-pmu";
|
||||
};
|
||||
arm-pmu {
|
||||
compatible = "arm,arm1176-pmu";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2836.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
#include "bcm2836-rpi.dtsi"
|
||||
#include "bcm283x-rpi-smsc9514.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
|
||||
@@ -8,18 +9,18 @@
|
||||
compatible = "raspberrypi,2-model-b", "brcm,bcm2836";
|
||||
model = "Raspberry Pi 2 Model B";
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
reg = <0 0x40000000>;
|
||||
};
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 47 0>;
|
||||
gpios = <&gpio 47 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
pwr {
|
||||
label = "PWR";
|
||||
gpios = <&gpio 35 0>;
|
||||
gpios = <&gpio 35 GPIO_ACTIVE_HIGH>;
|
||||
default-state = "keep";
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
@@ -27,6 +28,72 @@
|
||||
};
|
||||
|
||||
&gpio {
|
||||
/*
|
||||
* Taken from rpi_SCH_2b_1p2_reduced.pdf and
|
||||
* the official GPU firmware DT blob.
|
||||
*
|
||||
* Legend:
|
||||
* "NC" = not connected (no rail from the SoC)
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "ID_SDA",
|
||||
"ID_SCL",
|
||||
"SDA1",
|
||||
"SCL1",
|
||||
"GPIO_GCLK",
|
||||
"GPIO5",
|
||||
"GPIO6",
|
||||
"SPI_CE1_N",
|
||||
"SPI_CE0_N",
|
||||
"SPI_MISO",
|
||||
"SPI_MOSI",
|
||||
"SPI_SCLK",
|
||||
"GPIO12",
|
||||
"GPIO13",
|
||||
/* Serial port */
|
||||
"TXD0",
|
||||
"RXD0",
|
||||
"GPIO16",
|
||||
"GPIO17",
|
||||
"GPIO18",
|
||||
"GPIO19",
|
||||
"GPIO20",
|
||||
"GPIO21",
|
||||
"GPIO22",
|
||||
"GPIO23",
|
||||
"GPIO24",
|
||||
"GPIO25",
|
||||
"GPIO26",
|
||||
"GPIO27",
|
||||
"SDA0",
|
||||
"SCL0",
|
||||
"", /* GPIO30 */
|
||||
"LAN_RUN",
|
||||
"CAM_GPIO1",
|
||||
"", /* GPIO33 */
|
||||
"", /* GPIO34 */
|
||||
"PWR_LOW_N",
|
||||
"", /* GPIO36 */
|
||||
"", /* GPIO37 */
|
||||
"USB_LIMIT",
|
||||
"", /* GPIO39 */
|
||||
"PWM0_OUT",
|
||||
"CAM_GPIO0",
|
||||
"SMPS_SCL",
|
||||
"SMPS_SDA",
|
||||
"ETHCLK",
|
||||
"PWM1_OUT",
|
||||
"HDMI_HPD_N",
|
||||
"STATUS_LED",
|
||||
/* Used by SD Card */
|
||||
"SD_CLK_R",
|
||||
"SD_CMD_R",
|
||||
"SD_DATA0_R",
|
||||
"SD_DATA1_R",
|
||||
"SD_DATA2_R",
|
||||
"SD_DATA3_R";
|
||||
|
||||
pinctrl-0 = <&gpioout &alt0 &i2s_alt0>;
|
||||
|
||||
/* I2S interface */
|
||||
@@ -40,6 +107,12 @@
|
||||
hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio14>;
|
||||
|
||||
6
arch/arm/dts/bcm2836-rpi.dtsi
Normal file
6
arch/arm/dts/bcm2836-rpi.dtsi
Normal file
@@ -0,0 +1,6 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
|
||||
&vchiq {
|
||||
compatible = "brcm,bcm2836-vchiq", "brcm,bcm2835-vchiq";
|
||||
};
|
||||
@@ -1,3 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include "bcm283x.dtsi"
|
||||
|
||||
/ {
|
||||
@@ -8,28 +9,28 @@
|
||||
<0x40000000 0x40000000 0x00001000>;
|
||||
dma-ranges = <0xc0000000 0x00000000 0x3f000000>;
|
||||
|
||||
local_intc: local_intc {
|
||||
local_intc: local_intc@40000000 {
|
||||
compatible = "brcm,bcm2836-l1-intc";
|
||||
reg = <0x40000000 0x100>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <1>;
|
||||
#interrupt-cells = <2>;
|
||||
interrupt-parent = <&local_intc>;
|
||||
};
|
||||
};
|
||||
|
||||
arm-pmu {
|
||||
compatible = "arm,cortex-a7-pmu";
|
||||
interrupt-parent = <&local_intc>;
|
||||
interrupts = <9>;
|
||||
};
|
||||
arm-pmu {
|
||||
compatible = "arm,cortex-a7-pmu";
|
||||
interrupt-parent = <&local_intc>;
|
||||
interrupts = <9 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
timer {
|
||||
compatible = "arm,armv7-timer";
|
||||
interrupt-parent = <&local_intc>;
|
||||
interrupts = <0>, // PHYS_SECURE_PPI
|
||||
<1>, // PHYS_NONSECURE_PPI
|
||||
<3>, // VIRT_PPI
|
||||
<2>; // HYP_PPI
|
||||
interrupts = <0 IRQ_TYPE_LEVEL_HIGH>, // PHYS_SECURE_PPI
|
||||
<1 IRQ_TYPE_LEVEL_HIGH>, // PHYS_NONSECURE_PPI
|
||||
<3 IRQ_TYPE_LEVEL_HIGH>, // VIRT_PPI
|
||||
<2 IRQ_TYPE_LEVEL_HIGH>; // HYP_PPI
|
||||
always-on;
|
||||
};
|
||||
|
||||
@@ -75,7 +76,7 @@
|
||||
compatible = "brcm,bcm2836-armctrl-ic";
|
||||
reg = <0x7e00b200 0x200>;
|
||||
interrupt-parent = <&local_intc>;
|
||||
interrupts = <8>;
|
||||
interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
&cpu_thermal {
|
||||
|
||||
175
arch/arm/dts/bcm2837-rpi-3-a-plus.dts
Normal file
175
arch/arm/dts/bcm2837-rpi-3-a-plus.dts
Normal file
@@ -0,0 +1,175 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2837.dtsi"
|
||||
#include "bcm2836-rpi.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,3-model-a-plus", "brcm,bcm2837";
|
||||
model = "Raspberry Pi 3 Model A+";
|
||||
|
||||
chosen {
|
||||
/* 8250 auxiliary UART instead of pl011 */
|
||||
stdout-path = "serial1:115200n8";
|
||||
};
|
||||
|
||||
memory@0 {
|
||||
reg = <0 0x20000000>;
|
||||
};
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 29 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
pwr {
|
||||
label = "PWR";
|
||||
gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&firmware {
|
||||
expgpio: gpio {
|
||||
compatible = "raspberrypi,firmware-gpio";
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-line-names = "",
|
||||
"BT_WL_ON",
|
||||
"STATUS_LED_R",
|
||||
"",
|
||||
"",
|
||||
"CAM_GPIO0",
|
||||
"CAM_GPIO1",
|
||||
"";
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&gpio {
|
||||
/*
|
||||
* This is mostly based on the official GPU firmware DT blob.
|
||||
*
|
||||
* Legend:
|
||||
* "NC" = not connected (no rail from the SoC)
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "ID_SDA",
|
||||
"ID_SCL",
|
||||
"SDA1",
|
||||
"SCL1",
|
||||
"GPIO_GCLK",
|
||||
"GPIO5",
|
||||
"GPIO6",
|
||||
"SPI_CE1_N",
|
||||
"SPI_CE0_N",
|
||||
"SPI_MISO",
|
||||
"SPI_MOSI",
|
||||
"SPI_SCLK",
|
||||
"GPIO12",
|
||||
"GPIO13",
|
||||
/* Serial port */
|
||||
"TXD1",
|
||||
"RXD1",
|
||||
"GPIO16",
|
||||
"GPIO17",
|
||||
"GPIO18",
|
||||
"GPIO19",
|
||||
"GPIO20",
|
||||
"GPIO21",
|
||||
"GPIO22",
|
||||
"GPIO23",
|
||||
"GPIO24",
|
||||
"GPIO25",
|
||||
"GPIO26",
|
||||
"GPIO27",
|
||||
"HDMI_HPD_N",
|
||||
"STATUS_LED_G",
|
||||
/* Used by BT module */
|
||||
"CTS0",
|
||||
"RTS0",
|
||||
"TXD0",
|
||||
"RXD0",
|
||||
/* Used by Wifi */
|
||||
"SD1_CLK",
|
||||
"SD1_CMD",
|
||||
"SD1_DATA0",
|
||||
"SD1_DATA1",
|
||||
"SD1_DATA2",
|
||||
"SD1_DATA3",
|
||||
"PWM0_OUT",
|
||||
"PWM1_OUT",
|
||||
"", /* GPIO42 */
|
||||
"WIFI_CLK",
|
||||
"SDA0",
|
||||
"SCL0",
|
||||
"SMPS_SCL",
|
||||
"SMPS_SDA",
|
||||
/* Used by SD Card */
|
||||
"SD_CLK_R",
|
||||
"SD_CMD_R",
|
||||
"SD_DATA0_R",
|
||||
"SD_DATA1_R",
|
||||
"SD_DATA2_R",
|
||||
"SD_DATA3_R";
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
hpd-gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio41>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/*
|
||||
* SDHCI is used to control the SDIO for wireless
|
||||
*
|
||||
* WL_REG_ON and BT_REG_ON of the CYW43455 Wifi/BT module are driven
|
||||
* by a single GPIO. We can't give GPIO control to one of the drivers,
|
||||
* otherwise the other part would get unexpectedly disturbed.
|
||||
*/
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio34>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
/* SDHOST is used to drive the SD card */
|
||||
&sdhost {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdhost_gpio48>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
};
|
||||
|
||||
/* uart0 communicates with the BT module */
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32 &gpclk2_gpio43>;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
};
|
||||
};
|
||||
|
||||
/* uart1 is mapped to the pin header */
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart1_gpio14>;
|
||||
status = "okay";
|
||||
};
|
||||
178
arch/arm/dts/bcm2837-rpi-3-b-plus.dts
Normal file
178
arch/arm/dts/bcm2837-rpi-3-b-plus.dts
Normal file
@@ -0,0 +1,178 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2837.dtsi"
|
||||
#include "bcm2836-rpi.dtsi"
|
||||
#include "bcm283x-rpi-lan7515.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,3-model-b-plus", "brcm,bcm2837";
|
||||
model = "Raspberry Pi 3 Model B+";
|
||||
|
||||
chosen {
|
||||
/* 8250 auxiliary UART instead of pl011 */
|
||||
stdout-path = "serial1:115200n8";
|
||||
};
|
||||
|
||||
memory@0 {
|
||||
reg = <0 0x40000000>;
|
||||
};
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 29 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
pwr {
|
||||
label = "PWR";
|
||||
gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
wifi_pwrseq: wifi-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
&firmware {
|
||||
expgpio: gpio {
|
||||
compatible = "raspberrypi,firmware-gpio";
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-line-names = "BT_ON",
|
||||
"WL_ON",
|
||||
"STATUS_LED_R",
|
||||
"LAN_RUN",
|
||||
"",
|
||||
"CAM_GPIO0",
|
||||
"CAM_GPIO1",
|
||||
"";
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&gpio {
|
||||
/*
|
||||
* Taken from rpi_SCH_3bplus_1p0_reduced.pdf and
|
||||
* the official GPU firmware DT blob.
|
||||
*
|
||||
* Legend:
|
||||
* "NC" = not connected (no rail from the SoC)
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "ID_SDA",
|
||||
"ID_SCL",
|
||||
"SDA1",
|
||||
"SCL1",
|
||||
"GPIO_GCLK",
|
||||
"GPIO5",
|
||||
"GPIO6",
|
||||
"SPI_CE1_N",
|
||||
"SPI_CE0_N",
|
||||
"SPI_MISO",
|
||||
"SPI_MOSI",
|
||||
"SPI_SCLK",
|
||||
"GPIO12",
|
||||
"GPIO13",
|
||||
/* Serial port */
|
||||
"TXD1",
|
||||
"RXD1",
|
||||
"GPIO16",
|
||||
"GPIO17",
|
||||
"GPIO18",
|
||||
"GPIO19",
|
||||
"GPIO20",
|
||||
"GPIO21",
|
||||
"GPIO22",
|
||||
"GPIO23",
|
||||
"GPIO24",
|
||||
"GPIO25",
|
||||
"GPIO26",
|
||||
"GPIO27",
|
||||
"HDMI_HPD_N",
|
||||
"STATUS_LED_G",
|
||||
/* Used by BT module */
|
||||
"CTS0",
|
||||
"RTS0",
|
||||
"TXD0",
|
||||
"RXD0",
|
||||
/* Used by Wifi */
|
||||
"SD1_CLK",
|
||||
"SD1_CMD",
|
||||
"SD1_DATA0",
|
||||
"SD1_DATA1",
|
||||
"SD1_DATA2",
|
||||
"SD1_DATA3",
|
||||
"PWM0_OUT",
|
||||
"PWM1_OUT",
|
||||
"ETHCLK",
|
||||
"WIFI_CLK",
|
||||
"SDA0",
|
||||
"SCL0",
|
||||
"SMPS_SCL",
|
||||
"SMPS_SDA",
|
||||
/* Used by SD Card */
|
||||
"SD_CLK_R",
|
||||
"SD_CMD_R",
|
||||
"SD_DATA0_R",
|
||||
"SD_DATA1_R",
|
||||
"SD_DATA2_R",
|
||||
"SD_DATA3_R";
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
hpd-gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio41>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* SDHCI is used to control the SDIO for wireless */
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio34>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
mmc-pwrseq = <&wifi_pwrseq>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
/* SDHOST is used to drive the SD card */
|
||||
&sdhost {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdhost_gpio48>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
};
|
||||
|
||||
/* uart0 communicates with the BT module */
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32 &gpclk2_gpio43>;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
/* uart1 is mapped to the pin header */
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart1_gpio14>;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -1,6 +1,7 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2837.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
#include "bcm2836-rpi.dtsi"
|
||||
#include "bcm283x-rpi-smsc9514.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
|
||||
@@ -8,15 +9,122 @@
|
||||
compatible = "raspberrypi,3-model-b", "brcm,bcm2837";
|
||||
model = "Raspberry Pi 3 Model B";
|
||||
|
||||
memory {
|
||||
chosen {
|
||||
/* 8250 auxiliary UART instead of pl011 */
|
||||
stdout-path = "serial1:115200n8";
|
||||
};
|
||||
|
||||
memory@0 {
|
||||
reg = <0 0x40000000>;
|
||||
};
|
||||
|
||||
leds {
|
||||
act {
|
||||
gpios = <&gpio 47 0>;
|
||||
gpios = <&expgpio 2 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
wifi_pwrseq: wifi-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
&firmware {
|
||||
expgpio: gpio {
|
||||
compatible = "raspberrypi,firmware-gpio";
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-line-names = "BT_ON",
|
||||
"WL_ON",
|
||||
"STATUS_LED",
|
||||
"LAN_RUN",
|
||||
"HDMI_HPD_N",
|
||||
"CAM_GPIO0",
|
||||
"CAM_GPIO1",
|
||||
"PWR_LOW_N";
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&gpio {
|
||||
/*
|
||||
* Taken from rpi_SCH_3b_1p2_reduced.pdf and
|
||||
* the official GPU firmware DT blob.
|
||||
*
|
||||
* Legend:
|
||||
* "NC" = not connected (no rail from the SoC)
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "ID_SDA",
|
||||
"ID_SCL",
|
||||
"SDA1",
|
||||
"SCL1",
|
||||
"GPIO_GCLK",
|
||||
"GPIO5",
|
||||
"GPIO6",
|
||||
"SPI_CE1_N",
|
||||
"SPI_CE0_N",
|
||||
"SPI_MISO",
|
||||
"SPI_MOSI",
|
||||
"SPI_SCLK",
|
||||
"GPIO12",
|
||||
"GPIO13",
|
||||
/* Serial port */
|
||||
"TXD1",
|
||||
"RXD1",
|
||||
"GPIO16",
|
||||
"GPIO17",
|
||||
"GPIO18",
|
||||
"GPIO19",
|
||||
"GPIO20",
|
||||
"GPIO21",
|
||||
"GPIO22",
|
||||
"GPIO23",
|
||||
"GPIO24",
|
||||
"GPIO25",
|
||||
"GPIO26",
|
||||
"GPIO27",
|
||||
"", /* GPIO 28 */
|
||||
"LAN_RUN_BOOT",
|
||||
/* Used by BT module */
|
||||
"CTS0",
|
||||
"RTS0",
|
||||
"TXD0",
|
||||
"RXD0",
|
||||
/* Used by Wifi */
|
||||
"SD1_CLK",
|
||||
"SD1_CMD",
|
||||
"SD1_DATA0",
|
||||
"SD1_DATA1",
|
||||
"SD1_DATA2",
|
||||
"SD1_DATA3",
|
||||
"PWM0_OUT",
|
||||
"PWM1_OUT",
|
||||
"ETHCLK",
|
||||
"WIFI_CLK",
|
||||
"SDA0",
|
||||
"SCL0",
|
||||
"SMPS_SCL",
|
||||
"SMPS_SDA",
|
||||
/* Used by SD Card */
|
||||
"SD_CLK_R",
|
||||
"SD_CMD_R",
|
||||
"SD_DATA0_R",
|
||||
"SD_DATA1_R",
|
||||
"SD_DATA2_R",
|
||||
"SD_DATA3_R";
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio41>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
hpd-gpios = <&expgpio 4 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
/* uart0 communicates with the BT module */
|
||||
@@ -24,6 +132,12 @@
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio32 &gpclk2_gpio43>;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
/* uart1 is mapped to the pin header */
|
||||
@@ -35,11 +149,19 @@
|
||||
|
||||
/* SDHCI is used to control the SDIO for wireless */
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio34>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
mmc-pwrseq = <&wifi_pwrseq>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
/* SDHOST is used to drive the SD card */
|
||||
|
||||
87
arch/arm/dts/bcm2837-rpi-cm3-io3.dts
Normal file
87
arch/arm/dts/bcm2837-rpi-cm3-io3.dts
Normal file
@@ -0,0 +1,87 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2837-rpi-cm3.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,3-compute-module", "brcm,bcm2837";
|
||||
model = "Raspberry Pi Compute Module 3 IO board V3.0";
|
||||
};
|
||||
|
||||
&gpio {
|
||||
/*
|
||||
* This is based on the official GPU firmware DT blob.
|
||||
*
|
||||
* Legend:
|
||||
* "NC" = not connected (no rail from the SoC)
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "GPIO0",
|
||||
"GPIO1",
|
||||
"GPIO2",
|
||||
"GPIO3",
|
||||
"GPIO4",
|
||||
"GPIO5",
|
||||
"GPIO6",
|
||||
"GPIO7",
|
||||
"GPIO8",
|
||||
"GPIO9",
|
||||
"GPIO10",
|
||||
"GPIO11",
|
||||
"GPIO12",
|
||||
"GPIO13",
|
||||
"GPIO14",
|
||||
"GPIO15",
|
||||
"GPIO16",
|
||||
"GPIO17",
|
||||
"GPIO18",
|
||||
"GPIO19",
|
||||
"GPIO20",
|
||||
"GPIO21",
|
||||
"GPIO22",
|
||||
"GPIO23",
|
||||
"GPIO24",
|
||||
"GPIO25",
|
||||
"GPIO26",
|
||||
"GPIO27",
|
||||
"GPIO28",
|
||||
"GPIO29",
|
||||
"GPIO30",
|
||||
"GPIO31",
|
||||
"GPIO32",
|
||||
"GPIO33",
|
||||
"GPIO34",
|
||||
"GPIO35",
|
||||
"GPIO36",
|
||||
"GPIO37",
|
||||
"GPIO38",
|
||||
"GPIO39",
|
||||
"GPIO40",
|
||||
"GPIO41",
|
||||
"GPIO42",
|
||||
"GPIO43",
|
||||
"GPIO44",
|
||||
"GPIO45",
|
||||
"GPIO46",
|
||||
"GPIO47",
|
||||
/* Used by eMMC */
|
||||
"SD_CLK_R",
|
||||
"SD_CMD_R",
|
||||
"SD_DATA0_R",
|
||||
"SD_DATA1_R",
|
||||
"SD_DATA2_R",
|
||||
"SD_DATA3_R";
|
||||
|
||||
pinctrl-0 = <&gpioout &alt0>;
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
hpd-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio14>;
|
||||
status = "okay";
|
||||
};
|
||||
52
arch/arm/dts/bcm2837-rpi-cm3.dtsi
Normal file
52
arch/arm/dts/bcm2837-rpi-cm3.dtsi
Normal file
@@ -0,0 +1,52 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2837.dtsi"
|
||||
#include "bcm2836-rpi.dtsi"
|
||||
|
||||
/ {
|
||||
memory@0 {
|
||||
reg = <0 0x40000000>;
|
||||
};
|
||||
|
||||
reg_3v3: fixed-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_1v8: fixed-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
|
||||
&firmware {
|
||||
expgpio: gpio {
|
||||
compatible = "raspberrypi,firmware-gpio";
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-line-names = "HDMI_HPD_N",
|
||||
"EMMC_EN_N",
|
||||
"NC",
|
||||
"NC",
|
||||
"NC",
|
||||
"NC",
|
||||
"NC",
|
||||
"NC";
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&sdhost {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdhost_gpio48>;
|
||||
bus-width = <4>;
|
||||
vmmc-supply = <®_3v3>;
|
||||
vqmmc-supply = <®_1v8>;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -8,22 +8,28 @@
|
||||
<0x40000000 0x40000000 0x00001000>;
|
||||
dma-ranges = <0xc0000000 0x00000000 0x3f000000>;
|
||||
|
||||
local_intc: local_intc {
|
||||
local_intc: local_intc@40000000 {
|
||||
compatible = "brcm,bcm2836-l1-intc";
|
||||
reg = <0x40000000 0x100>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <1>;
|
||||
#interrupt-cells = <2>;
|
||||
interrupt-parent = <&local_intc>;
|
||||
};
|
||||
};
|
||||
|
||||
arm-pmu {
|
||||
compatible = "arm,cortex-a53-pmu";
|
||||
interrupt-parent = <&local_intc>;
|
||||
interrupts = <9 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
timer {
|
||||
compatible = "arm,armv7-timer";
|
||||
interrupt-parent = <&local_intc>;
|
||||
interrupts = <0>, // PHYS_SECURE_PPI
|
||||
<1>, // PHYS_NONSECURE_PPI
|
||||
<3>, // VIRT_PPI
|
||||
<2>; // HYP_PPI
|
||||
interrupts = <0 IRQ_TYPE_LEVEL_HIGH>, // PHYS_SECURE_PPI
|
||||
<1 IRQ_TYPE_LEVEL_HIGH>, // PHYS_NONSECURE_PPI
|
||||
<3 IRQ_TYPE_LEVEL_HIGH>, // VIRT_PPI
|
||||
<2 IRQ_TYPE_LEVEL_HIGH>; // HYP_PPI
|
||||
always-on;
|
||||
};
|
||||
|
||||
@@ -73,7 +79,7 @@
|
||||
compatible = "brcm,bcm2836-armctrl-ic";
|
||||
reg = <0x7e00b200 0x200>;
|
||||
interrupt-parent = <&local_intc>;
|
||||
interrupts = <8>;
|
||||
interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
&cpu_thermal {
|
||||
|
||||
41
arch/arm/dts/bcm283x-rpi-lan7515.dtsi
Normal file
41
arch/arm/dts/bcm283x-rpi-lan7515.dtsi
Normal file
@@ -0,0 +1,41 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include <dt-bindings/net/microchip-lan78xx.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
ethernet0 = ðernet;
|
||||
};
|
||||
};
|
||||
|
||||
&usb {
|
||||
usb-port@1 {
|
||||
compatible = "usb424,2514";
|
||||
reg = <1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
usb-port@1 {
|
||||
compatible = "usb424,2514";
|
||||
reg = <1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethernet: ethernet@1 {
|
||||
compatible = "usb424,7800";
|
||||
reg = <1>;
|
||||
|
||||
mdio {
|
||||
#address-cells = <0x1>;
|
||||
#size-cells = <0x0>;
|
||||
eth_phy: ethernet-phy@1 {
|
||||
reg = <1>;
|
||||
microchip,led-modes = <
|
||||
LAN78XX_LINK_1000_ACTIVITY
|
||||
LAN78XX_LINK_10_100_ACTIVITY
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1,3 +1,4 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/ {
|
||||
aliases {
|
||||
ethernet0 = ðernet;
|
||||
|
||||
11
arch/arm/dts/bcm283x-rpi-usb-otg.dtsi
Normal file
11
arch/arm/dts/bcm283x-rpi-usb-otg.dtsi
Normal file
@@ -0,0 +1,11 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
&usb {
|
||||
dr_mode = "otg";
|
||||
g-rx-fifo-size = <256>;
|
||||
g-np-tx-fifo-size = <32>;
|
||||
/*
|
||||
* According to dwc2 the sum of all device EP
|
||||
* fifo sizes shouldn't exceed 3776 bytes.
|
||||
*/
|
||||
g-tx-fifo-size = <256 256 512 512 512 768 768>;
|
||||
};
|
||||
@@ -2,6 +2,8 @@
|
||||
#include <dt-bindings/clock/bcm2835.h>
|
||||
#include <dt-bindings/clock/bcm2835-aux.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/soc/bcm2835-pm.h>
|
||||
|
||||
/* firmware-provided startup stubs live here, where the secondary CPUs are
|
||||
* spinning.
|
||||
@@ -20,8 +22,13 @@
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
aliases {
|
||||
serial0 = &uart0;
|
||||
serial1 = &uart1;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "earlyprintk console=ttyAMA0";
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
thermal-zones {
|
||||
@@ -44,7 +51,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
soc: soc {
|
||||
soc {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
@@ -60,6 +67,12 @@
|
||||
clock-frequency = <1000000>;
|
||||
};
|
||||
|
||||
txp@7e004000 {
|
||||
compatible = "brcm,bcm2835-txp";
|
||||
reg = <0x7e004000 0x20>;
|
||||
interrupts = <1 11>;
|
||||
};
|
||||
|
||||
dma: dma@7e007000 {
|
||||
compatible = "brcm,bcm2835-dma";
|
||||
reg = <0x7e007000 0xf00>;
|
||||
@@ -108,9 +121,18 @@
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
watchdog@7e100000 {
|
||||
compatible = "brcm,bcm2835-pm-wdt";
|
||||
reg = <0x7e100000 0x28>;
|
||||
pm: watchdog@7e100000 {
|
||||
compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt";
|
||||
#power-domain-cells = <1>;
|
||||
#reset-cells = <1>;
|
||||
reg = <0x7e100000 0x114>,
|
||||
<0x7e00a000 0x24>;
|
||||
clocks = <&clocks BCM2835_CLOCK_V3D>,
|
||||
<&clocks BCM2835_CLOCK_PERI_IMAGE>,
|
||||
<&clocks BCM2835_CLOCK_H264>,
|
||||
<&clocks BCM2835_CLOCK_ISP>;
|
||||
clock-names = "v3d", "peri_image", "h264", "isp";
|
||||
system-power-controller;
|
||||
};
|
||||
|
||||
clocks: cprman@7e101000 {
|
||||
@@ -130,6 +152,7 @@
|
||||
rng@7e104000 {
|
||||
compatible = "brcm,bcm2835-rng";
|
||||
reg = <0x7e104000 0x10>;
|
||||
interrupts = <2 29>;
|
||||
};
|
||||
|
||||
mailbox: mailbox@7e00b880 {
|
||||
@@ -217,6 +240,7 @@
|
||||
gpclk2_gpio43: gpclk2_gpio43 {
|
||||
brcm,pins = <43>;
|
||||
brcm,function = <BCM2835_FSEL_ALT0>;
|
||||
brcm,pull = <BCM2835_PUD_OFF>;
|
||||
};
|
||||
|
||||
i2c0_gpio0: i2c0_gpio0 {
|
||||
@@ -329,10 +353,12 @@
|
||||
uart0_ctsrts_gpio30: uart0_ctsrts_gpio30 {
|
||||
brcm,pins = <30 31>;
|
||||
brcm,function = <BCM2835_FSEL_ALT3>;
|
||||
brcm,pull = <BCM2835_PUD_UP BCM2835_PUD_OFF>;
|
||||
};
|
||||
uart0_gpio32: uart0_gpio32 {
|
||||
brcm,pins = <32 33>;
|
||||
brcm,function = <BCM2835_FSEL_ALT3>;
|
||||
brcm,pull = <BCM2835_PUD_OFF BCM2835_PUD_UP>;
|
||||
};
|
||||
uart0_gpio36: uart0_gpio36 {
|
||||
brcm,pins = <36 37>;
|
||||
@@ -391,8 +417,8 @@
|
||||
|
||||
i2s: i2s@7e203000 {
|
||||
compatible = "brcm,bcm2835-i2s";
|
||||
reg = <0x7e203000 0x20>,
|
||||
<0x7e101098 0x02>;
|
||||
reg = <0x7e203000 0x24>;
|
||||
clocks = <&clocks BCM2835_CLOCK_PCM>;
|
||||
|
||||
dmas = <&dma 2>,
|
||||
<&dma 3>;
|
||||
@@ -432,6 +458,17 @@
|
||||
interrupts = <2 14>; /* pwa1 */
|
||||
};
|
||||
|
||||
dpi: dpi@7e208000 {
|
||||
compatible = "brcm,bcm2835-dpi";
|
||||
reg = <0x7e208000 0x8c>;
|
||||
clocks = <&clocks BCM2835_CLOCK_VPU>,
|
||||
<&clocks BCM2835_CLOCK_DPI>;
|
||||
clock-names = "core", "pixel";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
dsi0: dsi@7e209000 {
|
||||
compatible = "brcm,bcm2835-dsi0";
|
||||
reg = <0x7e209000 0x78>;
|
||||
@@ -459,7 +496,7 @@
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
aux: aux@0x7e215000 {
|
||||
aux: aux@7e215000 {
|
||||
compatible = "brcm,bcm2835-aux";
|
||||
#clock-cells = <1>;
|
||||
reg = <0x7e215000 0x8>;
|
||||
@@ -602,6 +639,7 @@
|
||||
compatible = "brcm,bcm2835-v3d";
|
||||
reg = <0x7ec00000 0x1000>;
|
||||
interrupts = <1 10>;
|
||||
power-domains = <&pm BCM2835_POWER_DOMAIN_GRAFX_V3D>;
|
||||
};
|
||||
|
||||
vc4: gpu {
|
||||
@@ -634,7 +672,6 @@
|
||||
|
||||
usbphy: phy {
|
||||
compatible = "usb-nop-xceiv";
|
||||
#phy-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
#include "bcm283x-uboot.dtsi"
|
||||
|
||||
128
arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
Normal file
128
arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
Normal file
@@ -0,0 +1,128 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2019 Toradex AG
|
||||
*/
|
||||
|
||||
&mu {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&clk {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio0 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio4 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio5 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio6 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio7 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_conn {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_conn_sdch0 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_conn_sdch1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_conn_sdch2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio0 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio4 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio5 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio6 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio7 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&lpuart0 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&lpuart1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&lpuart2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&lpuart3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
615
arch/arm/dts/fsl-imx8qm-apalis.dts
Normal file
615
arch/arm/dts/fsl-imx8qm-apalis.dts
Normal file
@@ -0,0 +1,615 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2017-2019 Toradex
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
/* First 128KB is for PSCI ATF. */
|
||||
/memreserve/ 0x80000000 0x00020000;
|
||||
|
||||
#include "fsl-imx8qm.dtsi"
|
||||
#include "fsl-imx8qm-apalis-u-boot.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Apalis iMX8QM";
|
||||
compatible = "toradex,apalis-imx8qm", "fsl,imx8qm";
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyLP1,115200 earlycon=lpuart32,0x5a070000,115200";
|
||||
stdout-path = &lpuart1;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_cam1_gpios>, <&pinctrl_dap1_gpios>,
|
||||
<&pinctrl_esai0_gpios>, <&pinctrl_fec2_gpios>,
|
||||
<&pinctrl_gpio12>, <&pinctrl_gpio34>, <&pinctrl_gpio56>,
|
||||
<&pinctrl_gpio7>, <&pinctrl_gpio8>, <&pinctrl_gpio_bkl_on>,
|
||||
<&pinctrl_gpio_keys>, <&pinctrl_gpio_pwm0>,
|
||||
<&pinctrl_gpio_pwm1>, <&pinctrl_gpio_pwm2>,
|
||||
<&pinctrl_gpio_pwm3>, <&pinctrl_gpio_pwm_bkl>,
|
||||
<&pinctrl_gpio_usbh_en>, <&pinctrl_gpio_usbh_oc_n>,
|
||||
<&pinctrl_gpio_usbo1_en>, <&pinctrl_gpio_usbo1_oc_n>,
|
||||
<&pinctrl_lpuart1ctrl>, <&pinctrl_lvds0_i2c0_gpio>,
|
||||
<&pinctrl_lvds1_i2c0_gpios>, <&pinctrl_mipi_dsi_0_1_en>,
|
||||
<&pinctrl_mipi_dsi1_gpios>, <&pinctrl_mlb_gpios>,
|
||||
<&pinctrl_qspi1a_gpios>, <&pinctrl_sata1_act>,
|
||||
<&pinctrl_sim0_gpios>, <&pinctrl_usdhc1_gpios>;
|
||||
|
||||
apalis-imx8qm {
|
||||
pinctrl_gpio12: gpio12grp {
|
||||
fsl,pins = <
|
||||
/* Apalis GPIO1 */
|
||||
SC_P_M40_GPIO0_00_LSIO_GPIO0_IO08 0x06000021
|
||||
/* Apalis GPIO2 */
|
||||
SC_P_M40_GPIO0_01_LSIO_GPIO0_IO09 0x06000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio34: gpio34grp {
|
||||
fsl,pins = <
|
||||
/* Apalis GPIO3 */
|
||||
SC_P_M41_GPIO0_00_LSIO_GPIO0_IO12 0x06000021
|
||||
/* Apalis GPIO4 */
|
||||
SC_P_M41_GPIO0_01_LSIO_GPIO0_IO13 0x06000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio56: gpio56grp {
|
||||
fsl,pins = <
|
||||
/* Apalis GPIO5 */
|
||||
SC_P_FLEXCAN2_RX_LSIO_GPIO4_IO01 0x06000021
|
||||
/* Apalis GPIO6 */
|
||||
SC_P_FLEXCAN2_TX_LSIO_GPIO4_IO02 0x06000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio7: gpio7 {
|
||||
fsl,pins = <
|
||||
/* Apalis GPIO7 */
|
||||
SC_P_MLB_SIG_LSIO_GPIO3_IO26 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio8: gpio8 {
|
||||
fsl,pins = <
|
||||
/* Apalis GPIO8 */
|
||||
SC_P_MLB_DATA_LSIO_GPIO3_IO28 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_keys: gpio-keys {
|
||||
fsl,pins = <
|
||||
/* Apalis WAKE1_MICO */
|
||||
SC_P_SPI3_CS0_LSIO_GPIO2_IO20 0x06000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_fec1: fec1grp {
|
||||
fsl,pins = <
|
||||
SC_P_COMP_CTL_GPIO_1V8_3V3_ENET_ENETB_PAD 0x000014a0 /* Use pads in 3.3V mode */
|
||||
SC_P_ENET0_MDC_CONN_ENET0_MDC 0x06000020
|
||||
SC_P_ENET0_MDIO_CONN_ENET0_MDIO 0x06000020
|
||||
SC_P_ENET0_RGMII_TX_CTL_CONN_ENET0_RGMII_TX_CTL 0x06000020
|
||||
SC_P_ENET0_RGMII_TXC_CONN_ENET0_RGMII_TXC 0x06000020
|
||||
SC_P_ENET0_RGMII_TXD0_CONN_ENET0_RGMII_TXD0 0x06000020
|
||||
SC_P_ENET0_RGMII_TXD1_CONN_ENET0_RGMII_TXD1 0x06000020
|
||||
SC_P_ENET0_RGMII_TXD2_CONN_ENET0_RGMII_TXD2 0x06000020
|
||||
SC_P_ENET0_RGMII_TXD3_CONN_ENET0_RGMII_TXD3 0x06000020
|
||||
SC_P_ENET0_RGMII_RXC_CONN_ENET0_RGMII_RXC 0x06000020
|
||||
SC_P_ENET0_RGMII_RX_CTL_CONN_ENET0_RGMII_RX_CTL 0x06000020
|
||||
SC_P_ENET0_RGMII_RXD0_CONN_ENET0_RGMII_RXD0 0x06000020
|
||||
SC_P_ENET0_RGMII_RXD1_CONN_ENET0_RGMII_RXD1 0x06000020
|
||||
SC_P_ENET0_RGMII_RXD2_CONN_ENET0_RGMII_RXD2 0x06000020
|
||||
SC_P_ENET0_RGMII_RXD3_CONN_ENET0_RGMII_RXD3 0x06000020
|
||||
SC_P_ENET0_REFCLK_125M_25M_CONN_ENET0_REFCLK_125M_25M 0x06000020
|
||||
/* ETH_RESET# */
|
||||
SC_P_LVDS1_GPIO01_LSIO_GPIO1_IO11 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_bkl_on: gpio-bkl-on {
|
||||
fsl,pins = <
|
||||
/* Apalis BKL_ON */
|
||||
SC_P_LVDS0_GPIO00_LSIO_GPIO1_IO04 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis I2C2 (DDC) */
|
||||
pinctrl_lpi2c0: lpi2c0grp {
|
||||
fsl,pins = <
|
||||
SC_P_HDMI_TX0_TS_SCL_DMA_I2C0_SCL 0x04000022
|
||||
SC_P_HDMI_TX0_TS_SDA_DMA_I2C0_SDA 0x04000022
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_cam1_gpios: cam1gpiosgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis CAM1_D7 */
|
||||
SC_P_MIPI_DSI1_I2C0_SCL_LSIO_GPIO1_IO20 0x00000021
|
||||
/* Apalis CAM1_D6 */
|
||||
SC_P_MIPI_DSI1_I2C0_SDA_LSIO_GPIO1_IO21 0x00000021
|
||||
/* Apalis CAM1_D5 */
|
||||
SC_P_ESAI0_TX0_LSIO_GPIO2_IO26 0x00000021
|
||||
/* Apalis CAM1_D4 */
|
||||
SC_P_ESAI0_TX1_LSIO_GPIO2_IO27 0x00000021
|
||||
/* Apalis CAM1_D3 */
|
||||
SC_P_ESAI0_TX2_RX3_LSIO_GPIO2_IO28 0x00000021
|
||||
/* Apalis CAM1_D2 */
|
||||
SC_P_ESAI0_TX3_RX2_LSIO_GPIO2_IO29 0x00000021
|
||||
/* Apalis CAM1_D1 */
|
||||
SC_P_ESAI0_TX4_RX1_LSIO_GPIO2_IO30 0x00000021
|
||||
/* Apalis CAM1_D0 */
|
||||
SC_P_ESAI0_TX5_RX0_LSIO_GPIO2_IO31 0x00000021
|
||||
/* Apalis CAM1_PCLK */
|
||||
SC_P_MCLK_IN0_LSIO_GPIO3_IO00 0x00000021
|
||||
/* Apalis CAM1_MCLK */
|
||||
SC_P_SPI3_SDO_LSIO_GPIO2_IO18 0x00000021
|
||||
/* Apalis CAM1_VSYNC */
|
||||
SC_P_ESAI0_SCKR_LSIO_GPIO2_IO24 0x00000021
|
||||
/* Apalis CAM1_HSYNC */
|
||||
SC_P_ESAI0_SCKT_LSIO_GPIO2_IO25 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_dap1_gpios: dap1gpiosgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis DAP1_MCLK */
|
||||
SC_P_SPI3_SDI_LSIO_GPIO2_IO19 0x00000021
|
||||
/* Apalis DAP1_D_OUT */
|
||||
SC_P_SAI1_RXC_LSIO_GPIO3_IO12 0x00000021
|
||||
/* Apalis DAP1_RESET */
|
||||
SC_P_ESAI1_SCKT_LSIO_GPIO2_IO07 0x00000021
|
||||
/* Apalis DAP1_BIT_CLK */
|
||||
SC_P_SPI0_CS1_LSIO_GPIO3_IO06 0x00000021
|
||||
/* Apalis DAP1_D_IN */
|
||||
SC_P_SAI1_RXFS_LSIO_GPIO3_IO14 0x00000021
|
||||
/* Apalis DAP1_SYNC */
|
||||
SC_P_SPI2_CS1_LSIO_GPIO3_IO11 0x00000021
|
||||
/* Wi-Fi_I2S_EN# */
|
||||
SC_P_ESAI1_TX5_RX0_LSIO_GPIO2_IO13 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_esai0_gpios: esai0gpiosgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis LCD1_G1 */
|
||||
SC_P_ESAI0_FSR_LSIO_GPIO2_IO22 0x00000021
|
||||
/* Apalis LCD1_G2 */
|
||||
SC_P_ESAI0_FST_LSIO_GPIO2_IO23 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_fec2_gpios: fec2gpiosgrp {
|
||||
fsl,pins = <
|
||||
SC_P_COMP_CTL_GPIO_1V8_3V3_ENET_ENETA_PAD 0x000014a0
|
||||
/* Apalis LCD1_R1 */
|
||||
SC_P_ENET1_MDC_LSIO_GPIO4_IO18 0x00000021
|
||||
/* Apalis LCD1_R0 */
|
||||
SC_P_ENET1_MDIO_LSIO_GPIO4_IO17 0x00000021
|
||||
/* Apalis LCD1_G0 */
|
||||
SC_P_ENET1_REFCLK_125M_25M_LSIO_GPIO4_IO16 0x00000021
|
||||
/* Apalis LCD1_R7 */
|
||||
SC_P_ENET1_RGMII_RX_CTL_LSIO_GPIO6_IO17 0x00000021
|
||||
/* Apalis LCD1_DE */
|
||||
SC_P_ENET1_RGMII_RXD0_LSIO_GPIO6_IO18 0x00000021
|
||||
/* Apalis LCD1_HSYNC */
|
||||
SC_P_ENET1_RGMII_RXD1_LSIO_GPIO6_IO19 0x00000021
|
||||
/* Apalis LCD1_VSYNC */
|
||||
SC_P_ENET1_RGMII_RXD2_LSIO_GPIO6_IO20 0x00000021
|
||||
/* Apalis LCD1_PCLK */
|
||||
SC_P_ENET1_RGMII_RXD3_LSIO_GPIO6_IO21 0x00000021
|
||||
/* Apalis LCD1_R6 */
|
||||
SC_P_ENET1_RGMII_TX_CTL_LSIO_GPIO6_IO11 0x00000021
|
||||
/* Apalis LCD1_R5 */
|
||||
SC_P_ENET1_RGMII_TXC_LSIO_GPIO6_IO10 0x00000021
|
||||
/* Apalis LCD1_R4 */
|
||||
SC_P_ENET1_RGMII_TXD0_LSIO_GPIO6_IO12 0x00000021
|
||||
/* Apalis LCD1_R3 */
|
||||
SC_P_ENET1_RGMII_TXD1_LSIO_GPIO6_IO13 0x00000021
|
||||
/* Apalis LCD1_R2 */
|
||||
SC_P_ENET1_RGMII_TXD2_LSIO_GPIO6_IO14 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lvds0_i2c0_gpio: lvds0i2c0gpio {
|
||||
fsl,pins = <
|
||||
/* Apalis TS_2 */
|
||||
SC_P_LVDS0_I2C0_SCL_LSIO_GPIO1_IO06 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lvds1_i2c0_gpios: lvds1i2c0gpiosgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis LCD1_G6 */
|
||||
SC_P_LVDS1_I2C0_SCL_LSIO_GPIO1_IO12 0x00000021
|
||||
/* Apalis LCD1_G7 */
|
||||
SC_P_LVDS1_I2C0_SDA_LSIO_GPIO1_IO13 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mipi_dsi1_gpios: mipidsi1gpiosgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis TS_4 */
|
||||
SC_P_MIPI_DSI1_GPIO0_00_LSIO_GPIO1_IO22 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mlb_gpios: mlbgpiosgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis TS_1 */
|
||||
SC_P_MLB_CLK_LSIO_GPIO3_IO27 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_qspi1a_gpios: qspi1agpiosgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis LCD1_B0 */
|
||||
SC_P_QSPI1A_DATA0_LSIO_GPIO4_IO26 0x00000021
|
||||
/* Apalis LCD1_B1 */
|
||||
SC_P_QSPI1A_DATA1_LSIO_GPIO4_IO25 0x00000021
|
||||
/* Apalis LCD1_B2 */
|
||||
SC_P_QSPI1A_DATA2_LSIO_GPIO4_IO24 0x00000021
|
||||
/* Apalis LCD1_B3 */
|
||||
SC_P_QSPI1A_DATA3_LSIO_GPIO4_IO23 0x00000021
|
||||
/* Apalis LCD1_B5 */
|
||||
SC_P_QSPI1A_DQS_LSIO_GPIO4_IO22 0x00000021
|
||||
/* Apalis LCD1_B7 */
|
||||
SC_P_QSPI1A_SCLK_LSIO_GPIO4_IO21 0x00000021
|
||||
/* Apalis LCD1_B4 */
|
||||
SC_P_QSPI1A_SS0_B_LSIO_GPIO4_IO19 0x00000021
|
||||
/* Apalis LCD1_B6 */
|
||||
SC_P_QSPI1A_SS1_B_LSIO_GPIO4_IO20 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sim0_gpios: sim0gpiosgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis LCD1_G5 */
|
||||
SC_P_SIM0_CLK_LSIO_GPIO0_IO00 0x00000021
|
||||
/* Apalis LCD1_G3 */
|
||||
SC_P_SIM0_GPIO0_00_LSIO_GPIO0_IO05 0x00000021
|
||||
/* Apalis TS_5 */
|
||||
SC_P_SIM0_IO_LSIO_GPIO0_IO02 0x00000021
|
||||
/* Apalis LCD1_G4 */
|
||||
SC_P_SIM0_RST_LSIO_GPIO0_IO01 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_gpios: usdhc1gpiosgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis TS_6 */
|
||||
SC_P_USDHC1_STROBE_LSIO_GPIO5_IO23 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mipi_dsi_0_1_en: mipi_dsi_0_1_en {
|
||||
fsl,pins = <
|
||||
/* Apalis TS_3 */
|
||||
SC_P_LVDS0_I2C0_SDA_LSIO_GPIO1_IO07 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
/* On-module I2C */
|
||||
pinctrl_lpi2c1: lpi2c1grp {
|
||||
fsl,pins = <
|
||||
SC_P_GPT0_CLK_DMA_I2C1_SCL 0x04000020
|
||||
SC_P_GPT0_CAPTURE_DMA_I2C1_SDA 0x04000020
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis I2C1 */
|
||||
pinctrl_lpi2c2: lpi2c2grp {
|
||||
fsl,pins = <
|
||||
SC_P_GPT1_CLK_DMA_I2C2_SCL 0x04000020
|
||||
SC_P_GPT1_CAPTURE_DMA_I2C2_SDA 0x04000020
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis I2C3 (CAM) */
|
||||
pinctrl_lpi2c3: lpi2c3grp {
|
||||
fsl,pins = <
|
||||
SC_P_SIM0_PD_DMA_I2C3_SCL 0x04000020
|
||||
SC_P_SIM0_POWER_EN_DMA_I2C3_SDA 0x04000020
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis UART3 */
|
||||
pinctrl_lpuart0: lpuart0grp {
|
||||
fsl,pins = <
|
||||
SC_P_UART0_RX_DMA_UART0_RX 0x06000020
|
||||
SC_P_UART0_TX_DMA_UART0_TX 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis UART1 */
|
||||
pinctrl_lpuart1: lpuart1grp {
|
||||
fsl,pins = <
|
||||
SC_P_UART1_RX_DMA_UART1_RX 0x06000020
|
||||
SC_P_UART1_TX_DMA_UART1_TX 0x06000020
|
||||
SC_P_UART1_CTS_B_DMA_UART1_CTS_B 0x06000020
|
||||
SC_P_UART1_RTS_B_DMA_UART1_RTS_B 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lpuart1ctrl: lpuart1ctrlgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis UART1_DTR */
|
||||
SC_P_M40_I2C0_SCL_LSIO_GPIO0_IO06 0x00000021
|
||||
/* Apalis UART1_DSR */
|
||||
SC_P_M40_I2C0_SDA_LSIO_GPIO0_IO07 0x00000021
|
||||
/* Apalis UART1_DCD */
|
||||
SC_P_M41_I2C0_SCL_LSIO_GPIO0_IO10 0x00000021
|
||||
/* Apalis UART1_RI */
|
||||
SC_P_M41_I2C0_SDA_LSIO_GPIO0_IO11 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis UART4 */
|
||||
pinctrl_lpuart2: lpuart2grp {
|
||||
fsl,pins = <
|
||||
SC_P_LVDS0_I2C1_SCL_DMA_UART2_TX 0x06000020
|
||||
SC_P_LVDS0_I2C1_SDA_DMA_UART2_RX 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis UART2 */
|
||||
pinctrl_lpuart3: lpuart3grp {
|
||||
fsl,pins = <
|
||||
SC_P_LVDS1_I2C1_SCL_DMA_UART3_TX 0x06000020
|
||||
SC_P_LVDS1_I2C1_SDA_DMA_UART3_RX 0x06000020
|
||||
SC_P_ENET1_RGMII_TXD3_DMA_UART3_RTS_B 0x06000020
|
||||
SC_P_ENET1_RGMII_RXC_DMA_UART3_CTS_B 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis PWM3 */
|
||||
pinctrl_gpio_pwm0: gpiopwm0grp {
|
||||
fsl,pins = <
|
||||
SC_P_UART0_RTS_B_LSIO_GPIO0_IO22 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis PWM4 */
|
||||
pinctrl_gpio_pwm1: gpiopwm1grp {
|
||||
fsl,pins = <
|
||||
SC_P_UART0_CTS_B_LSIO_GPIO0_IO23 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis PWM1 */
|
||||
pinctrl_gpio_pwm2: gpiopwm2grp {
|
||||
fsl,pins = <
|
||||
SC_P_GPT1_COMPARE_LSIO_GPIO0_IO19 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis PWM2 */
|
||||
pinctrl_gpio_pwm3: gpiopwm3grp {
|
||||
fsl,pins = <
|
||||
SC_P_GPT0_COMPARE_LSIO_GPIO0_IO16 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis BKL1_PWM */
|
||||
pinctrl_gpio_pwm_bkl: gpiopwmbklgrp {
|
||||
fsl,pins = <
|
||||
SC_P_LVDS1_GPIO00_LVDS1_GPIO0_IO00 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis USBH_EN */
|
||||
pinctrl_gpio_usbh_en: gpiousbhen {
|
||||
fsl,pins = <
|
||||
SC_P_USB_SS3_TC1_LSIO_GPIO4_IO04 0x06000060
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis USBH_OC# */
|
||||
pinctrl_gpio_usbh_oc_n: gpiousbhocn {
|
||||
fsl,pins = <
|
||||
SC_P_USB_SS3_TC3_LSIO_GPIO4_IO06 0x06000060
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis USBO1_EN */
|
||||
pinctrl_gpio_usbo1_en: gpiousbo1en {
|
||||
fsl,pins = <
|
||||
SC_P_USB_SS3_TC0_LSIO_GPIO4_IO03 0x06000060
|
||||
>;
|
||||
};
|
||||
|
||||
/* Apalis USBO1_OC# */
|
||||
pinctrl_gpio_usbo1_oc_n: gpiousbo1ocn {
|
||||
fsl,pins = <
|
||||
SC_P_USB_SS3_TC2_LSIO_GPIO4_IO05 0x06000060
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
SC_P_EMMC0_CLK_CONN_EMMC0_CLK 0x06000041
|
||||
SC_P_EMMC0_CMD_CONN_EMMC0_CMD 0x00000021
|
||||
SC_P_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000021
|
||||
SC_P_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000021
|
||||
SC_P_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000021
|
||||
SC_P_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000021
|
||||
SC_P_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000021
|
||||
SC_P_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000021
|
||||
SC_P_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000021
|
||||
SC_P_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000021
|
||||
SC_P_EMMC0_STROBE_CONN_EMMC0_STROBE 0x06000041
|
||||
SC_P_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sata1_act: sata1actgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis SATA1_ACT# */
|
||||
SC_P_ESAI1_TX0_LSIO_GPIO2_IO08 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mmc1_cd: mmc1cdgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis MMC1_CD# */
|
||||
SC_P_ESAI1_TX1_LSIO_GPIO2_IO09 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC1_CLK_CONN_USDHC1_CLK 0x06000041
|
||||
SC_P_USDHC1_CMD_CONN_USDHC1_CMD 0x00000021
|
||||
SC_P_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000021
|
||||
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000021
|
||||
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000021
|
||||
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000021
|
||||
SC_P_USDHC1_DATA4_CONN_USDHC1_DATA4 0x00000021
|
||||
SC_P_USDHC1_DATA5_CONN_USDHC1_DATA5 0x00000021
|
||||
SC_P_USDHC1_DATA6_CONN_USDHC1_DATA6 0x00000021
|
||||
SC_P_USDHC1_DATA7_CONN_USDHC1_DATA7 0x00000021
|
||||
/* On-module PMIC use */
|
||||
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sd1_cd: sd1cdgrp {
|
||||
fsl,pins = <
|
||||
/* Apalis SD1_CD# */
|
||||
SC_P_USDHC2_CD_B_LSIO_GPIO4_IO12 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3: usdhc3grp {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC2_CLK_CONN_USDHC2_CLK 0x06000041
|
||||
SC_P_USDHC2_CMD_CONN_USDHC2_CMD 0x00000021
|
||||
SC_P_USDHC2_DATA0_CONN_USDHC2_DATA0 0x00000021
|
||||
SC_P_USDHC2_DATA1_CONN_USDHC2_DATA1 0x00000021
|
||||
SC_P_USDHC2_DATA2_CONN_USDHC2_DATA2 0x00000021
|
||||
SC_P_USDHC2_DATA3_CONN_USDHC2_DATA3 0x00000021
|
||||
/* On-module PMIC use */
|
||||
SC_P_USDHC2_VSELECT_CONN_USDHC2_VSELECT 0x00000021
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&fec1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_fec1>;
|
||||
fsl,magic-packet;
|
||||
phy-handle = <ðphy0>;
|
||||
phy-mode = "rgmii";
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-gpios = <&gpio1 11 1>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy0: ethernet-phy@7 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <7>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* Apalis I2C2 (DDC) */
|
||||
&i2c0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpi2c0>;
|
||||
clock-frequency = <100000>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* On-module I2C */
|
||||
&i2c1 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpi2c1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis I2C1 */
|
||||
&i2c2 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpi2c2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis I2C3 (CAM) */
|
||||
&i2c3 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpi2c3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis UART3 */
|
||||
&lpuart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpuart0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis UART1 */
|
||||
&lpuart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpuart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis UART4 */
|
||||
&lpuart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpuart2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis UART2 */
|
||||
&lpuart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpuart3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* eMMC */
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
bus-width = <8>;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis MMC1 */
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_mmc1_cd>;
|
||||
bus-width = <8>;
|
||||
cd-gpios = <&gpio2 9 GPIO_ACTIVE_LOW>; /* Apalis MMC1_CD# */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis SD1 */
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>, <&pinctrl_sd1_cd>;
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpio4 12 GPIO_ACTIVE_LOW>; /* Apalis SD1_CD# */
|
||||
status = "okay";
|
||||
};
|
||||
@@ -22,9 +22,18 @@
|
||||
ethernet0 = &fec1;
|
||||
ethernet1 = &fec2;
|
||||
serial0 = &lpuart0;
|
||||
serial1 = &lpuart1;
|
||||
serial2 = &lpuart2;
|
||||
serial3 = &lpuart3;
|
||||
serial4 = &lpuart4;
|
||||
mmc0 = &usdhc1;
|
||||
mmc1 = &usdhc2;
|
||||
mmc2 = &usdhc3;
|
||||
i2c0 = &i2c0;
|
||||
i2c1 = &i2c1;
|
||||
i2c2 = &i2c2;
|
||||
i2c3 = &i2c3;
|
||||
i2c4 = &i2c4;
|
||||
};
|
||||
|
||||
memory@80000000 {
|
||||
@@ -193,9 +202,103 @@
|
||||
power-domains = <&pd_dma>;
|
||||
wakeup-irq = <345>;
|
||||
};
|
||||
pd_dma_lpuart1: PD_DMA_UART1 {
|
||||
reg = <SC_R_UART_1>;
|
||||
#power-domain-cells = <0>;
|
||||
power-domains = <&pd_dma>;
|
||||
wakeup-irq = <346>;
|
||||
};
|
||||
pd_dma_lpuart2: PD_DMA_UART2 {
|
||||
reg = <SC_R_UART_2>;
|
||||
#power-domain-cells = <0>;
|
||||
power-domains = <&pd_dma>;
|
||||
wakeup-irq = <347>;
|
||||
};
|
||||
pd_dma_lpuart3: PD_DMA_UART3 {
|
||||
reg = <SC_R_UART_3>;
|
||||
#power-domain-cells = <0>;
|
||||
power-domains = <&pd_dma>;
|
||||
wakeup-irq = <348>;
|
||||
};
|
||||
pd_dma_lpuart4: PD_DMA_UART4 {
|
||||
reg = <SC_R_UART_4>;
|
||||
#power-domain-cells = <0>;
|
||||
power-domains = <&pd_dma>;
|
||||
wakeup-irq = <349>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
i2c0: i2c@5a800000 {
|
||||
compatible = "fsl,imx8qm-lpi2c", "fsl,imx7ulp-lpi2c";
|
||||
reg = <0x0 0x5a800000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-parent = <&gic>;
|
||||
clocks = <&clk IMX8QM_I2C0_CLK>,
|
||||
<&clk IMX8QM_I2C0_IPG_CLK>;
|
||||
clock-names = "per", "ipg";
|
||||
assigned-clocks = <&clk IMX8QM_I2C0_CLK>;
|
||||
assigned-clock-rates = <24000000>;
|
||||
power-domains = <&pd_dma_lpi2c0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c1: i2c@5a810000 {
|
||||
compatible = "fsl,imx8qm-lpi2c", "fsl,imx7ulp-lpi2c";
|
||||
reg = <0x0 0x5a810000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-parent = <&gic>;
|
||||
clocks = <&clk IMX8QM_I2C1_CLK>,
|
||||
<&clk IMX8QM_I2C1_IPG_CLK>;
|
||||
clock-names = "per", "ipg";
|
||||
assigned-clocks = <&clk IMX8QM_I2C1_CLK>;
|
||||
assigned-clock-rates = <24000000>;
|
||||
power-domains = <&pd_dma_lpi2c1>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c2: i2c@5a820000 {
|
||||
compatible = "fsl,imx8qm-lpi2c", "fsl,imx7ulp-lpi2c";
|
||||
reg = <0x0 0x5a820000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-parent = <&gic>;
|
||||
clocks = <&clk IMX8QM_I2C2_CLK>,
|
||||
<&clk IMX8QM_I2C2_IPG_CLK>;
|
||||
clock-names = "per", "ipg";
|
||||
assigned-clocks = <&clk IMX8QM_I2C2_CLK>;
|
||||
assigned-clock-rates = <24000000>;
|
||||
power-domains = <&pd_dma_lpi2c2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c3: i2c@5a830000 {
|
||||
compatible = "fsl,imx8qm-lpi2c", "fsl,imx7ulp-lpi2c";
|
||||
reg = <0x0 0x5a830000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-parent = <&gic>;
|
||||
clocks = <&clk IMX8QM_I2C3_CLK>,
|
||||
<&clk IMX8QM_I2C3_IPG_CLK>;
|
||||
clock-names = "per", "ipg";
|
||||
assigned-clocks = <&clk IMX8QM_I2C3_CLK>;
|
||||
assigned-clock-rates = <24000000>;
|
||||
power-domains = <&pd_dma_lpi2c3>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c4: i2c@5a840000 {
|
||||
compatible = "fsl,imx8qm-lpi2c", "fsl,imx7ulp-lpi2c";
|
||||
reg = <0x0 0x5a840000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-parent = <&gic>;
|
||||
clocks = <&clk IMX8QM_I2C4_CLK>,
|
||||
<&clk IMX8QM_I2C4_IPG_CLK>;
|
||||
clock-names = "per", "ipg";
|
||||
assigned-clocks = <&clk IMX8QM_I2C4_CLK>;
|
||||
assigned-clock-rates = <24000000>;
|
||||
power-domains = <&pd_dma_lpi2c4>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
gpio0: gpio@5d080000 {
|
||||
compatible = "fsl,imx8qm-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x0 0x5d080000 0x0 0x10000>;
|
||||
@@ -297,6 +400,58 @@
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
lpuart1: serial@5a070000 {
|
||||
compatible = "fsl,imx8qm-lpuart";
|
||||
reg = <0x0 0x5a070000 0x0 0x1000>;
|
||||
interrupts = <GIC_SPI 346 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clk IMX8QM_UART1_CLK>,
|
||||
<&clk IMX8QM_UART1_IPG_CLK>;
|
||||
clock-names = "per", "ipg";
|
||||
assigned-clocks = <&clk IMX8QM_UART1_CLK>;
|
||||
assigned-clock-rates = <80000000>;
|
||||
power-domains = <&pd_dma_lpuart1>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
lpuart2: serial@5a080000 {
|
||||
compatible = "fsl,imx8qm-lpuart";
|
||||
reg = <0x0 0x5a080000 0x0 0x1000>;
|
||||
interrupts = <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clk IMX8QM_UART2_CLK>,
|
||||
<&clk IMX8QM_UART2_IPG_CLK>;
|
||||
clock-names = "per", "ipg";
|
||||
assigned-clocks = <&clk IMX8QM_UART2_CLK>;
|
||||
assigned-clock-rates = <80000000>;
|
||||
power-domains = <&pd_dma_lpuart2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
lpuart3: serial@5a090000 {
|
||||
compatible = "fsl,imx8qm-lpuart";
|
||||
reg = <0x0 0x5a090000 0x0 0x1000>;
|
||||
interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clk IMX8QM_UART3_CLK>,
|
||||
<&clk IMX8QM_UART3_IPG_CLK>;
|
||||
clock-names = "per", "ipg";
|
||||
assigned-clocks = <&clk IMX8QM_UART3_CLK>;
|
||||
assigned-clock-rates = <80000000>;
|
||||
power-domains = <&pd_dma_lpuart3>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
lpuart4: serial@5a0a0000 {
|
||||
compatible = "fsl,imx8qm-lpuart";
|
||||
reg = <0x0 0x5a0a0000 0x0 0x1000>;
|
||||
interrupts = <GIC_SPI 349 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clk IMX8QM_UART4_CLK>,
|
||||
<&clk IMX8QM_UART4_IPG_CLK>;
|
||||
clock-names = "per", "ipg";
|
||||
assigned-clocks = <&clk IMX8QM_UART4_CLK>;
|
||||
assigned-clock-rates = <80000000>;
|
||||
power-domains = <&pd_dma_lpuart4>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
usdhc1: usdhc@5b010000 {
|
||||
compatible = "fsl,imx8qm-usdhc", "fsl,imx6sl-usdhc";
|
||||
interrupt-parent = <&gic>;
|
||||
|
||||
117
arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
Normal file
117
arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
Normal file
@@ -0,0 +1,117 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2019 Toradex AG
|
||||
*/
|
||||
|
||||
&{/imx8qx-pm} {
|
||||
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&mu {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&clk {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio0 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio4 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio5 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio6 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_lsio_gpio7 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_conn {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_conn_sdch0 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_conn_sdch1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pd_conn_sdch2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio0 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio4 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio5 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio6 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio7 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&lpuart3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
328
arch/arm/dts/fsl-imx8qxp-colibri.dts
Normal file
328
arch/arm/dts/fsl-imx8qxp-colibri.dts
Normal file
@@ -0,0 +1,328 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2019 Toradex AG
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "fsl-imx8qxp.dtsi"
|
||||
#include "fsl-imx8qxp-colibri-u-boot.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Colibri iMX8QXP";
|
||||
compatible = "toradex,colibri-imx8qxp", "fsl,imx8qxp";
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyLP3,115200 earlycon=lpuart32,0x5a090000,115200";
|
||||
stdout-path = &lpuart3;
|
||||
};
|
||||
|
||||
reg_usbh_vbus: regulator-usbh-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1_reg>;
|
||||
regulator-name = "usbh_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio4 3 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog0>, <&pinctrl_hog1>, <&pinctrl_hog2>;
|
||||
|
||||
colibri-imx8qxp {
|
||||
pinctrl_lpuart0: lpuart0grp {
|
||||
fsl,pins = <
|
||||
SC_P_UART0_RX_ADMA_UART0_RX 0x06000020
|
||||
SC_P_UART0_TX_ADMA_UART0_TX 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lpuart3: lpuart3grp {
|
||||
fsl,pins = <
|
||||
SC_P_FLEXCAN2_RX_ADMA_UART3_RX 0x06000020
|
||||
SC_P_FLEXCAN2_TX_ADMA_UART3_TX 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lpuart3_ctrl: lpuart3ctrlgrp {
|
||||
fsl,pins = <
|
||||
SC_P_MIPI_DSI1_GPIO0_01_LSIO_GPIO2_IO00 0x00000020 /* DTR */
|
||||
SC_P_SAI1_RXD_LSIO_GPIO0_IO29 0x00000020 /* CTS */
|
||||
SC_P_SAI1_RXC_LSIO_GPIO0_IO30 0x00000020 /* RTS */
|
||||
SC_P_CSI_RESET_LSIO_GPIO3_IO03 0x00000020 /* DSR */
|
||||
SC_P_USDHC1_CD_B_LSIO_GPIO4_IO22 0x00000020 /* DCD */
|
||||
SC_P_CSI_EN_LSIO_GPIO3_IO02 0x00000020 /* RI */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_fec1: fec1grp {
|
||||
fsl,pins = <
|
||||
SC_P_COMP_CTL_GPIO_1V8_3V3_ENET_ENETB0_PAD 0x000014a0 /* Use pads in 3.3V mode */
|
||||
SC_P_COMP_CTL_GPIO_1V8_3V3_ENET_ENETB1_PAD 0x000014a0 /* Use pads in 3.3V mode */
|
||||
SC_P_ENET0_MDC_CONN_ENET0_MDC 0x06000020
|
||||
SC_P_ENET0_MDIO_CONN_ENET0_MDIO 0x06000020
|
||||
SC_P_ENET0_RGMII_TX_CTL_CONN_ENET0_RGMII_TX_CTL 0x00000061
|
||||
SC_P_ENET0_RGMII_TXC_CONN_ENET0_RCLK50M_OUT 0x06000061
|
||||
SC_P_ENET0_RGMII_TXD0_CONN_ENET0_RGMII_TXD0 0x00000061
|
||||
SC_P_ENET0_RGMII_TXD1_CONN_ENET0_RGMII_TXD1 0x00000061
|
||||
SC_P_ENET0_RGMII_RX_CTL_CONN_ENET0_RGMII_RX_CTL 0x00000061
|
||||
SC_P_ENET0_RGMII_RXD0_CONN_ENET0_RGMII_RXD0 0x00000061
|
||||
SC_P_ENET0_RGMII_RXD1_CONN_ENET0_RGMII_RXD1 0x00000061
|
||||
SC_P_ENET0_RGMII_RXD2_CONN_ENET0_RMII_RX_ER 0x00000061
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_bl_on: gpio-bl-on {
|
||||
fsl,pins = <
|
||||
SC_P_QSPI0A_DATA3_LSIO_GPIO3_IO12 0x00000040
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hog0: hog0grp {
|
||||
fsl,pins = <
|
||||
SC_P_COMP_CTL_GPIO_1V8_3V3_GPIORHB_PAD 0x000514a0 /* Use pads in 3.3V mode */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hog1: hog1grp {
|
||||
fsl,pins = <
|
||||
SC_P_QSPI0A_DATA1_LSIO_GPIO3_IO10 0x00000020 /* 45 */
|
||||
SC_P_ENET0_RGMII_TXD3_LSIO_GPIO5_IO02 0x06000020 /* 65 */
|
||||
SC_P_CSI_D07_CI_PI_D09 0x00000061
|
||||
SC_P_QSPI0A_DATA2_LSIO_GPIO3_IO11 0x00000020 /* 69 */
|
||||
SC_P_QSPI0A_DQS_LSIO_GPIO3_IO13 0x00000020 /* 73 */
|
||||
SC_P_SAI0_TXC_LSIO_GPIO0_IO26 0x00000020 /* 79 */
|
||||
SC_P_CSI_D02_CI_PI_D04 0x00000061
|
||||
SC_P_ENET0_RGMII_RXC_LSIO_GPIO5_IO03 0x06000020 /* 85 */
|
||||
SC_P_CSI_D06_CI_PI_D08 0x00000061
|
||||
SC_P_QSPI0B_SCLK_LSIO_GPIO3_IO17 0x00000020 /* 95 */
|
||||
SC_P_SAI0_RXD_LSIO_GPIO0_IO27 0x00000020 /* 97 */
|
||||
SC_P_CSI_D03_CI_PI_D05 0x00000061
|
||||
SC_P_QSPI0B_DATA0_LSIO_GPIO3_IO18 0x00000020 /* 99 */
|
||||
SC_P_SAI0_TXFS_LSIO_GPIO0_IO28 0x00000020 /* 101 */
|
||||
SC_P_CSI_D00_CI_PI_D02 0x00000061
|
||||
SC_P_SAI0_TXD_LSIO_GPIO0_IO25 0x00000020 /* 103 */
|
||||
SC_P_CSI_D01_CI_PI_D03 0x00000061
|
||||
SC_P_QSPI0B_DATA1_LSIO_GPIO3_IO19 0x00000020 /* 105 */
|
||||
SC_P_QSPI0B_DATA2_LSIO_GPIO3_IO20 0x00000020 /* 107 */
|
||||
SC_P_USB_SS3_TC2_LSIO_GPIO4_IO05 0x00000020 /* 127 */
|
||||
SC_P_USB_SS3_TC3_LSIO_GPIO4_IO06 0x00000020 /* 131 */
|
||||
SC_P_USB_SS3_TC1_LSIO_GPIO4_IO04 0x00000020 /* 133 */
|
||||
SC_P_CSI_PCLK_LSIO_GPIO3_IO00 0x00000020 /* 96 */
|
||||
SC_P_QSPI0B_DATA3_LSIO_GPIO3_IO21 0x00000020 /* 98 */
|
||||
SC_P_SAI1_RXFS_LSIO_GPIO0_IO31 0x00000020 /* 100 */
|
||||
SC_P_QSPI0B_DQS_LSIO_GPIO3_IO22 0x00000020 /* 102 */
|
||||
SC_P_QSPI0B_SS0_B_LSIO_GPIO3_IO23 0x00000020 /* 104 */
|
||||
SC_P_QSPI0B_SS1_B_LSIO_GPIO3_IO24 0x00000020 /* 106 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hog2: hog2grp {
|
||||
fsl,pins = <
|
||||
SC_P_CSI_MCLK_LSIO_GPIO3_IO01 0x00000020 /* 75 */
|
||||
SC_P_QSPI0A_SS0_B_LSIO_GPIO3_IO14 0x00000020 /* 77 */
|
||||
SC_P_QSPI0A_SS1_B_LSIO_GPIO3_IO15 0x00000020 /* 89 */
|
||||
SC_P_QSPI0A_SCLK_LSIO_GPIO3_IO16 0x00000020 /* 93 */
|
||||
>;
|
||||
};
|
||||
|
||||
/* Off Module I2C */
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
SC_P_MIPI_DSI0_GPIO0_00_ADMA_I2C1_SCL 0x06000021
|
||||
SC_P_MIPI_DSI0_GPIO0_01_ADMA_I2C1_SDA 0x06000021
|
||||
>;
|
||||
};
|
||||
|
||||
/*INT*/
|
||||
pinctrl_usb3503a: usb3503a-grp {
|
||||
fsl,pins = <
|
||||
SC_P_MIPI_CSI0_MCLK_OUT_LSIO_GPIO3_IO04 0x00000061
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbc_det: usbc-det {
|
||||
fsl,pins = <
|
||||
SC_P_ENET0_REFCLK_125M_25M_LSIO_GPIO5_IO09 0x06000040
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1_reg: usbh1-reg {
|
||||
fsl,pins = <
|
||||
SC_P_USB_SS3_TC0_LSIO_GPIO4_IO03 0x06000040
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
SC_P_EMMC0_CLK_CONN_EMMC0_CLK 0x06000041
|
||||
SC_P_EMMC0_CMD_CONN_EMMC0_CMD 0x00000021
|
||||
SC_P_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000021
|
||||
SC_P_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000021
|
||||
SC_P_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000021
|
||||
SC_P_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000021
|
||||
SC_P_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000021
|
||||
SC_P_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000021
|
||||
SC_P_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000021
|
||||
SC_P_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000021
|
||||
SC_P_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000041
|
||||
SC_P_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_100mhz: usdhc1grp100mhz {
|
||||
fsl,pins = <
|
||||
SC_P_EMMC0_CLK_CONN_EMMC0_CLK 0x06000041
|
||||
SC_P_EMMC0_CMD_CONN_EMMC0_CMD 0x00000021
|
||||
SC_P_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000021
|
||||
SC_P_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000021
|
||||
SC_P_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000021
|
||||
SC_P_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000021
|
||||
SC_P_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000021
|
||||
SC_P_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000021
|
||||
SC_P_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000021
|
||||
SC_P_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000021
|
||||
SC_P_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000041
|
||||
SC_P_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_200mhz: usdhc1grp200mhz {
|
||||
fsl,pins = <
|
||||
SC_P_EMMC0_CLK_CONN_EMMC0_CLK 0x06000041
|
||||
SC_P_EMMC0_CMD_CONN_EMMC0_CMD 0x00000021
|
||||
SC_P_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000021
|
||||
SC_P_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000021
|
||||
SC_P_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000021
|
||||
SC_P_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000021
|
||||
SC_P_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000021
|
||||
SC_P_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000021
|
||||
SC_P_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000021
|
||||
SC_P_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000021
|
||||
SC_P_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000041
|
||||
SC_P_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_gpio: usdhc2gpiogrp {
|
||||
fsl,pins = <
|
||||
SC_P_QSPI0A_DATA0_LSIO_GPIO3_IO09 0x06000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC1_CLK_CONN_USDHC1_CLK 0x06000041
|
||||
SC_P_USDHC1_CMD_CONN_USDHC1_CMD 0x00000021
|
||||
SC_P_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000021
|
||||
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000021
|
||||
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000021
|
||||
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000021
|
||||
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_100mhz: usdhc2grp100mhz {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC1_CLK_CONN_USDHC1_CLK 0x06000041
|
||||
SC_P_USDHC1_CMD_CONN_USDHC1_CMD 0x00000021
|
||||
SC_P_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000021
|
||||
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000021
|
||||
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000021
|
||||
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000021
|
||||
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_200mhz: usdhc2grp200mhz {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC1_CLK_CONN_USDHC1_CLK 0x06000041
|
||||
SC_P_USDHC1_CMD_CONN_USDHC1_CMD 0x00000021
|
||||
SC_P_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000021
|
||||
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000021
|
||||
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000021
|
||||
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000021
|
||||
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000021
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&lpuart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpuart0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&lpuart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpuart3>, <&pinctrl_lpuart3_ctrl>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec1 {
|
||||
phy-handle = <ðphy0>;
|
||||
phy-mode = "rmii";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_fec1>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy0: ethernet-phy@2 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
max-speed = <100>;
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
bus-width = <8>;
|
||||
non-removable;
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
|
||||
pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpio3 9 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
|
||||
pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
|
||||
pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -108,6 +108,17 @@
|
||||
0x82000000 0x0 0x40000000 0x88 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
|
||||
};
|
||||
|
||||
pcie@1f0000000 {
|
||||
compatible = "pci-host-ecam-generic";
|
||||
/* ECAM bus 0, HW has more space reserved but not populated */
|
||||
bus-range = <0x0 0x0>;
|
||||
reg = <0x01 0xf0000000 0x0 0x100000>;
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
device_type = "pci";
|
||||
ranges= <0x82000000 0x0 0x00000000 0x1 0xf8000000 0x0 0x160000>;
|
||||
};
|
||||
|
||||
i2c0: i2c@2000000 {
|
||||
compatible = "fsl,vf610-i2c";
|
||||
#address-cells = <1>;
|
||||
@@ -272,9 +283,10 @@
|
||||
|
||||
sata: sata@3200000 {
|
||||
compatible = "fsl,ls1028a-ahci";
|
||||
reg = <0x0 0x3200000 0x0 0x10000>;
|
||||
reg = <0x0 0x3200000 0x0 0x10000 /* ccsr sata base */
|
||||
0x7 0x100520 0x0 0x4>; /* ecc sata addr*/
|
||||
reg-names = "sata-base", "ecc-addr";
|
||||
interrupts = <0 133 4>;
|
||||
clocks = <&clockgen 4 1>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
||||
34
arch/arm/dts/fsl-ls1046a-frwy.dts
Normal file
34
arch/arm/dts/fsl-ls1046a-frwy.dts
Normal file
@@ -0,0 +1,34 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Device Tree Include file for NXP Layerscape-1046A family SoC.
|
||||
*
|
||||
* Copyright 2019 NXP
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
/include/ "fsl-ls1046a.dtsi"
|
||||
|
||||
/ {
|
||||
model = "LS1046A FRWY Board";
|
||||
|
||||
aliases {
|
||||
spi0 = &qspi;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&qspi {
|
||||
bus-num = <0>;
|
||||
status = "okay";
|
||||
|
||||
qflash0: mt25qu512abb8esf@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "spi-flash";
|
||||
spi-max-frequency = <50000000>;
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
@@ -15,3 +15,26 @@
|
||||
compatible = "fsl,lx2160aqds", "fsl,lx2160a";
|
||||
};
|
||||
|
||||
&esdhc0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&esdhc1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sata0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sata1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sata2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sata3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
132
arch/arm/dts/imx53-m53.dtsi
Normal file
132
arch/arm/dts/imx53-m53.dtsi
Normal file
@@ -0,0 +1,132 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/*
|
||||
* Copyright (C) 2014 Marek Vasut <marex@denx.de>
|
||||
*/
|
||||
|
||||
#include "imx53.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Aries/DENX M53";
|
||||
compatible = "aries,imx53-m53", "denx,imx53-m53", "fsl,imx53";
|
||||
|
||||
memory@70000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x70000000 0x20000000>,
|
||||
<0xb0000000 0x20000000>;
|
||||
};
|
||||
|
||||
regulators {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
reg_3p2v: regulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <0>;
|
||||
regulator-name = "3P2V";
|
||||
regulator-min-microvolt = <3200000>;
|
||||
regulator-max-microvolt = <3200000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_backlight: regulator@1 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <1>;
|
||||
regulator-name = "lcd-supply";
|
||||
regulator-min-microvolt = <3200000>;
|
||||
regulator-max-microvolt = <3200000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
clock-frequency = <400000>;
|
||||
status = "okay";
|
||||
|
||||
touchscreen@41 {
|
||||
compatible = "st,stmpe610";
|
||||
reg = <0x41>;
|
||||
id = <0>;
|
||||
blocks = <0x5>;
|
||||
interrupts = <6 0x0>;
|
||||
interrupt-parent = <&gpio7>;
|
||||
irq-trigger = <0x1>;
|
||||
|
||||
stmpe_touchscreen {
|
||||
compatible = "st,stmpe-ts";
|
||||
st,sample-time = <4>;
|
||||
st,mod-12b = <1>;
|
||||
st,ref-sel = <0>;
|
||||
st,adc-freq = <1>;
|
||||
st,ave-ctrl = <3>;
|
||||
st,touch-det-delay = <3>;
|
||||
st,settling = <4>;
|
||||
st,fraction-z = <7>;
|
||||
st,i-drive = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
eeprom: eeprom@50 {
|
||||
compatible = "atmel,24c128";
|
||||
reg = <0x50>;
|
||||
pagesize = <32>;
|
||||
};
|
||||
|
||||
rtc: rtc@68 {
|
||||
compatible = "st,m41t62";
|
||||
reg = <0x68>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
imx53-m53evk {
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_GPIO_0__CCM_SSI_EXT1_CLK 0x80000000
|
||||
MX53_PAD_EIM_EB3__GPIO2_31 0x80000000
|
||||
MX53_PAD_PATA_DA_0__GPIO7_6 0x80000000
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_EIM_D16__I2C2_SDA 0xc0000000
|
||||
MX53_PAD_EIM_EB2__I2C2_SCL 0xc0000000
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_nand: nandgrp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_NANDF_WE_B__EMI_NANDF_WE_B 0x4
|
||||
MX53_PAD_NANDF_RE_B__EMI_NANDF_RE_B 0x4
|
||||
MX53_PAD_NANDF_CLE__EMI_NANDF_CLE 0x4
|
||||
MX53_PAD_NANDF_ALE__EMI_NANDF_ALE 0x4
|
||||
MX53_PAD_NANDF_WP_B__EMI_NANDF_WP_B 0xe0
|
||||
MX53_PAD_NANDF_RB0__EMI_NANDF_RB_0 0xe0
|
||||
MX53_PAD_NANDF_CS0__EMI_NANDF_CS_0 0x4
|
||||
MX53_PAD_PATA_DATA0__EMI_NANDF_D_0 0xa4
|
||||
MX53_PAD_PATA_DATA1__EMI_NANDF_D_1 0xa4
|
||||
MX53_PAD_PATA_DATA2__EMI_NANDF_D_2 0xa4
|
||||
MX53_PAD_PATA_DATA3__EMI_NANDF_D_3 0xa4
|
||||
MX53_PAD_PATA_DATA4__EMI_NANDF_D_4 0xa4
|
||||
MX53_PAD_PATA_DATA5__EMI_NANDF_D_5 0xa4
|
||||
MX53_PAD_PATA_DATA6__EMI_NANDF_D_6 0xa4
|
||||
MX53_PAD_PATA_DATA7__EMI_NANDF_D_7 0xa4
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&nfc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_nand>;
|
||||
nand-bus-width = <8>;
|
||||
nand-ecc-mode = "hw";
|
||||
status = "okay";
|
||||
};
|
||||
42
arch/arm/dts/imx53-m53menlo-u-boot.dtsi
Normal file
42
arch/arm/dts/imx53-m53menlo-u-boot.dtsi
Normal file
@@ -0,0 +1,42 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (C) 2019 Marek Vasut <marex@denx.de>
|
||||
*/
|
||||
|
||||
/ {
|
||||
soc {
|
||||
u-boot,dm-pre-reloc;
|
||||
|
||||
aips@50000000 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio3 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio4 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio5 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio6 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio7 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
312
arch/arm/dts/imx53-m53menlo.dts
Normal file
312
arch/arm/dts/imx53-m53menlo.dts
Normal file
@@ -0,0 +1,312 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (C) 2019 Marek Vasut <marex@denx.de>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx53-m53.dtsi"
|
||||
#include "imx53-m53menlo-u-boot.dtsi"
|
||||
|
||||
/ {
|
||||
model = "MENLO M53 EMBEDDED DEVICE";
|
||||
compatible = "menlo,m53menlo", "fsl,imx53";
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_led>;
|
||||
|
||||
user1 {
|
||||
label = "TestLed601";
|
||||
gpios = <&gpio6 1 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "mmc0";
|
||||
};
|
||||
|
||||
user2 {
|
||||
label = "TestLed602";
|
||||
gpios = <&gpio6 2 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
|
||||
eth {
|
||||
label = "EthLedYe";
|
||||
gpios = <&gpio2 11 GPIO_ACTIVE_LOW>;
|
||||
linux,default-trigger = "none";
|
||||
};
|
||||
};
|
||||
|
||||
panel {
|
||||
compatible = "edt,etm070080dh6";
|
||||
enable-gpios = <&gpio6 0 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
port {
|
||||
panel_in: endpoint {
|
||||
remote-endpoint = <&lvds0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
reg_usbh1_vbus: regulator-usbh1-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
&can1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_can1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_can2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&clks {
|
||||
assigned-clocks = <&clks IMX5_CLK_CKO1_SEL>,
|
||||
<&clks IMX5_CLK_CKO1_PODF>,
|
||||
<&clks IMX5_CLK_CKO1>;
|
||||
assigned-clock-parents = <&clks IMX5_CLK_AHB>;
|
||||
assigned-clock-rates = <133333334>, <33333334>, <33333334>;
|
||||
};
|
||||
|
||||
&esdhc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_esdhc1>;
|
||||
cd-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
|
||||
wp-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_fec>;
|
||||
phy-mode = "rmii";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
status = "okay";
|
||||
|
||||
touchscreen@38 {
|
||||
compatible = "edt,edt-ft5x06";
|
||||
reg = <0x38>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_edt_ft5x06>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&gpio2 9 GPIO_ACTIVE_LOW>;
|
||||
wake-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
eeprom@50 {
|
||||
compatible = "atmel,24c64";
|
||||
reg = <0x50>;
|
||||
pagesize = <32>;
|
||||
};
|
||||
|
||||
dac@60 {
|
||||
compatible = "microchip,mcp4725";
|
||||
reg = <0x60>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
touchscreen@41 {
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
imx53-m53evk {
|
||||
hoggrp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_GPIO_0__CCM_SSI_EXT1_CLK 0x1c4
|
||||
MX53_PAD_EIM_EB3__GPIO2_31 0x1d5
|
||||
MX53_PAD_PATA_DA_0__GPIO7_6 0x1d5
|
||||
MX53_PAD_GPIO_19__CCM_CLKO 0x1d5
|
||||
MX53_PAD_CSI0_MCLK__CCM_CSI0_MCLK 0x1d5
|
||||
MX53_PAD_CSI0_DAT4__GPIO5_22 0x1d5
|
||||
MX53_PAD_CSI0_DAT5__GPIO5_23 0x1d5
|
||||
MX53_PAD_CSI0_DAT6__GPIO5_24 0x1d5
|
||||
MX53_PAD_CSI0_DAT7__GPIO5_25 0x1d5
|
||||
MX53_PAD_CSI0_DAT8__GPIO5_26 0x1d5
|
||||
MX53_PAD_CSI0_DAT9__GPIO5_27 0x1d5
|
||||
MX53_PAD_CSI0_DAT10__GPIO5_28 0x1d5
|
||||
MX53_PAD_CSI0_DAT11__GPIO5_29 0x1d5
|
||||
MX53_PAD_CSI0_DAT14__GPIO6_0 0x1d5
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_led: ledgrp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_CSI0_DAT15__GPIO6_1 0x1d5
|
||||
MX53_PAD_CSI0_DAT16__GPIO6_2 0x1d5
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can1: can1grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_GPIO_7__CAN1_TXCAN 0x1c4
|
||||
MX53_PAD_GPIO_8__CAN1_RXCAN 0x1c4
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can2: can2grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_KEY_COL4__CAN2_TXCAN 0x1c4
|
||||
MX53_PAD_KEY_ROW4__CAN2_RXCAN 0x1c4
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_display_gpio: display-gpiogrp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_CSI0_DAT12__GPIO5_30 0x1d5 /* Reset */
|
||||
MX53_PAD_CSI0_DAT13__GPIO5_31 0x1d5 /* Interrupt */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_edt_ft5x06: edt-ft5x06grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_PATA_DATA9__GPIO2_9 0x1d5 /* Reset */
|
||||
MX53_PAD_CSI0_DAT19__GPIO6_5 0x1d5 /* Interrupt */
|
||||
MX53_PAD_PATA_DATA10__GPIO2_10 0x1d5 /* Wake */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_esdhc1: esdhc1grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_SD1_DATA0__ESDHC1_DAT0 0x1d5
|
||||
MX53_PAD_SD1_DATA1__ESDHC1_DAT1 0x1d5
|
||||
MX53_PAD_SD1_DATA2__ESDHC1_DAT2 0x1d5
|
||||
MX53_PAD_SD1_DATA3__ESDHC1_DAT3 0x1d5
|
||||
MX53_PAD_SD1_CMD__ESDHC1_CMD 0x1d5
|
||||
MX53_PAD_SD1_CLK__ESDHC1_CLK 0x1d5
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_fec: fecgrp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_FEC_MDC__FEC_MDC 0x4
|
||||
MX53_PAD_FEC_MDIO__FEC_MDIO 0x1fc
|
||||
MX53_PAD_FEC_REF_CLK__FEC_TX_CLK 0x180
|
||||
MX53_PAD_FEC_RX_ER__FEC_RX_ER 0x180
|
||||
MX53_PAD_FEC_CRS_DV__FEC_RX_DV 0x180
|
||||
MX53_PAD_FEC_RXD1__FEC_RDATA_1 0x180
|
||||
MX53_PAD_FEC_RXD0__FEC_RDATA_0 0x180
|
||||
MX53_PAD_FEC_TX_EN__FEC_TX_EN 0x4
|
||||
MX53_PAD_FEC_TXD1__FEC_TDATA_1 0x4
|
||||
MX53_PAD_FEC_TXD0__FEC_TDATA_0 0x4
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_EIM_D21__I2C1_SCL 0x400001e4
|
||||
MX53_PAD_EIM_D28__I2C1_SDA 0x400001e4
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_GPIO_6__I2C3_SDA 0x400001e4
|
||||
MX53_PAD_GPIO_5__I2C3_SCL 0x400001e4
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lvds0: lvds0grp {
|
||||
/* LVDS pins only have pin mux configuration */
|
||||
fsl,pins = <
|
||||
MX53_PAD_LVDS0_CLK_P__LDB_LVDS0_CLK 0x80000000
|
||||
MX53_PAD_LVDS0_TX0_P__LDB_LVDS0_TX0 0x80000000
|
||||
MX53_PAD_LVDS0_TX1_P__LDB_LVDS0_TX1 0x80000000
|
||||
MX53_PAD_LVDS0_TX2_P__LDB_LVDS0_TX2 0x80000000
|
||||
MX53_PAD_LVDS0_TX3_P__LDB_LVDS0_TX3 0x80000000
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_PATA_DIOW__UART1_TXD_MUX 0x1e4
|
||||
MX53_PAD_PATA_DMACK__UART1_RXD_MUX 0x1e4
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_PATA_BUFFER_EN__UART2_RXD_MUX 0x1e4
|
||||
MX53_PAD_PATA_DMARQ__UART2_TXD_MUX 0x1e4
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usb: usbgrp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_GPIO_2__GPIO1_2 0x1d5
|
||||
MX53_PAD_GPIO_3__USBOH3_USBH1_OC 0x1d5
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ldb {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lvds0>;
|
||||
status = "okay";
|
||||
|
||||
lvds0: lvds-channel@0 {
|
||||
reg = <0>;
|
||||
fsl,data-mapping = "spwg";
|
||||
fsl,data-width = <18>;
|
||||
status = "okay";
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
|
||||
lvds0_out: endpoint {
|
||||
remote-endpoint = <&panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usb>;
|
||||
vbus-supply = <®_usbh1_vbus>;
|
||||
phy_type = "utmi";
|
||||
dr_mode = "peripheral";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
dr_mode = "peripheral";
|
||||
status = "okay";
|
||||
};
|
||||
@@ -1,17 +1,8 @@
|
||||
/*
|
||||
* Copyright 2016 Beckhoff Automation
|
||||
* Copyright 2011 Freescale Semiconductor, Inc.
|
||||
* Copyright 2011 Linaro Ltd.
|
||||
*
|
||||
* The code contained herein is licensed under the GNU General Public
|
||||
* License. You may obtain a copy of the GNU General Public License
|
||||
* Version 2 or later at the following locations:
|
||||
*
|
||||
* http://www.opensource.org/licenses/gpl-license.html
|
||||
* http://www.gnu.org/copyleft/gpl.html
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright 2011 Freescale Semiconductor, Inc.
|
||||
// Copyright 2011 Linaro Ltd.
|
||||
|
||||
#include "skeleton.dtsi"
|
||||
#include "imx53-pinfunc.h"
|
||||
#include <dt-bindings/clock/imx5-clock.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
@@ -19,8 +10,17 @@
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
|
||||
/ {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
/*
|
||||
* The decompressor and also some bootloaders rely on a
|
||||
* pre-existing /chosen node to be available to insert the
|
||||
* command line and merge other ATAGS info.
|
||||
*/
|
||||
chosen {};
|
||||
|
||||
aliases {
|
||||
serial1 = &uart2;
|
||||
ethernet0 = &fec;
|
||||
gpio0 = &gpio1;
|
||||
gpio1 = &gpio2;
|
||||
gpio2 = &gpio3;
|
||||
@@ -36,7 +36,45 @@
|
||||
mmc1 = &esdhc2;
|
||||
mmc2 = &esdhc3;
|
||||
mmc3 = &esdhc4;
|
||||
usb1 = &usbh1;
|
||||
serial0 = &uart1;
|
||||
serial1 = &uart2;
|
||||
serial2 = &uart3;
|
||||
serial3 = &uart4;
|
||||
serial4 = &uart5;
|
||||
spi0 = &ecspi1;
|
||||
spi1 = &ecspi2;
|
||||
spi2 = &cspi;
|
||||
};
|
||||
|
||||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
cpu0: cpu@0 {
|
||||
device_type = "cpu";
|
||||
compatible = "arm,cortex-a8";
|
||||
reg = <0x0>;
|
||||
clocks = <&clks IMX5_CLK_ARM>;
|
||||
clock-latency = <61036>;
|
||||
voltage-tolerance = <5>;
|
||||
operating-points = <
|
||||
/* kHz */
|
||||
166666 850000
|
||||
400000 900000
|
||||
800000 1050000
|
||||
1000000 1200000
|
||||
1200000 1300000
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
display-subsystem {
|
||||
compatible = "fsl,imx-display-subsystem";
|
||||
ports = <&ipu_di0>, <&ipu_di1>;
|
||||
};
|
||||
|
||||
capture_subsystem {
|
||||
compatible = "fsl,imx-capture-subsystem";
|
||||
ports = <&ipu_csi0>, <&ipu_csi1>;
|
||||
};
|
||||
|
||||
tzic: tz-interrupt-controller@fffc000 {
|
||||
@@ -46,13 +84,143 @@
|
||||
reg = <0x0fffc000 0x4000>;
|
||||
};
|
||||
|
||||
clocks {
|
||||
ckil {
|
||||
compatible = "fsl,imx-ckil", "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
};
|
||||
|
||||
ckih1 {
|
||||
compatible = "fsl,imx-ckih1", "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <22579200>;
|
||||
};
|
||||
|
||||
ckih2 {
|
||||
compatible = "fsl,imx-ckih2", "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <0>;
|
||||
};
|
||||
|
||||
osc {
|
||||
compatible = "fsl,imx-osc", "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <24000000>;
|
||||
};
|
||||
};
|
||||
|
||||
pmu: pmu {
|
||||
compatible = "arm,cortex-a8-pmu";
|
||||
interrupt-parent = <&tzic>;
|
||||
interrupts = <77>;
|
||||
};
|
||||
|
||||
usbphy0: usbphy-0 {
|
||||
compatible = "usb-nop-xceiv";
|
||||
clocks = <&clks IMX5_CLK_USB_PHY1_GATE>;
|
||||
clock-names = "main_clk";
|
||||
#phy-cells = <0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
usbphy1: usbphy-1 {
|
||||
compatible = "usb-nop-xceiv";
|
||||
clocks = <&clks IMX5_CLK_USB_PHY2_GATE>;
|
||||
clock-names = "main_clk";
|
||||
#phy-cells = <0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
soc {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "simple-bus";
|
||||
interrupt-parent = <&tzic>;
|
||||
ranges;
|
||||
u-boot,dm-pre-reloc;
|
||||
|
||||
sata: sata@10000000 {
|
||||
compatible = "fsl,imx53-ahci";
|
||||
reg = <0x10000000 0x1000>;
|
||||
interrupts = <28>;
|
||||
clocks = <&clks IMX5_CLK_SATA_GATE>,
|
||||
<&clks IMX5_CLK_SATA_REF>,
|
||||
<&clks IMX5_CLK_AHB>;
|
||||
clock-names = "sata", "sata_ref", "ahb";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
ipu: ipu@18000000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-ipu";
|
||||
reg = <0x18000000 0x08000000>;
|
||||
interrupts = <11 10>;
|
||||
clocks = <&clks IMX5_CLK_IPU_GATE>,
|
||||
<&clks IMX5_CLK_IPU_DI0_GATE>,
|
||||
<&clks IMX5_CLK_IPU_DI1_GATE>;
|
||||
clock-names = "bus", "di0", "di1";
|
||||
resets = <&src 2>;
|
||||
|
||||
ipu_csi0: port@0 {
|
||||
reg = <0>;
|
||||
|
||||
ipu_csi0_from_parallel_sensor: endpoint {
|
||||
};
|
||||
};
|
||||
|
||||
ipu_csi1: port@1 {
|
||||
reg = <1>;
|
||||
|
||||
ipu_csi1_from_parallel_sensor: endpoint {
|
||||
};
|
||||
};
|
||||
|
||||
ipu_di0: port@2 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <2>;
|
||||
|
||||
ipu_di0_disp0: endpoint@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
ipu_di0_lvds0: endpoint@1 {
|
||||
reg = <1>;
|
||||
remote-endpoint = <&lvds0_in>;
|
||||
};
|
||||
};
|
||||
|
||||
ipu_di1: port@3 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <3>;
|
||||
|
||||
ipu_di1_disp1: endpoint@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
ipu_di1_lvds1: endpoint@1 {
|
||||
reg = <1>;
|
||||
remote-endpoint = <&lvds1_in>;
|
||||
};
|
||||
|
||||
ipu_di1_tve: endpoint@2 {
|
||||
reg = <2>;
|
||||
remote-endpoint = <&tve_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
gpu: gpu@30000000 {
|
||||
compatible = "amd,imageon-200.0", "amd,imageon";
|
||||
reg = <0x30000000 0x20000>;
|
||||
reg-names = "kgsl_3d0_reg_memory";
|
||||
interrupts = <12>;
|
||||
interrupt-names = "kgsl_3d0_irq";
|
||||
clocks = <&clks IMX5_CLK_GPU3D_GATE>, <&clks IMX5_CLK_GARB_GATE>;
|
||||
clock-names = "core_clk", "mem_iface_clk";
|
||||
};
|
||||
|
||||
aips@50000000 { /* AIPS1 */
|
||||
compatible = "fsl,aips-bus", "simple-bus";
|
||||
@@ -92,6 +260,47 @@
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart3: serial@5000c000 {
|
||||
compatible = "fsl,imx53-uart", "fsl,imx21-uart";
|
||||
reg = <0x5000c000 0x4000>;
|
||||
interrupts = <33>;
|
||||
clocks = <&clks IMX5_CLK_UART3_IPG_GATE>,
|
||||
<&clks IMX5_CLK_UART3_PER_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 42 4 0>, <&sdma 43 4 0>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
ecspi1: spi@50010000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-ecspi", "fsl,imx51-ecspi";
|
||||
reg = <0x50010000 0x4000>;
|
||||
interrupts = <36>;
|
||||
clocks = <&clks IMX5_CLK_ECSPI1_IPG_GATE>,
|
||||
<&clks IMX5_CLK_ECSPI1_PER_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
ssi2: ssi@50014000 {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "fsl,imx53-ssi",
|
||||
"fsl,imx51-ssi",
|
||||
"fsl,imx21-ssi";
|
||||
reg = <0x50014000 0x4000>;
|
||||
interrupts = <30>;
|
||||
clocks = <&clks IMX5_CLK_SSI2_IPG_GATE>,
|
||||
<&clks IMX5_CLK_SSI2_ROOT_GATE>;
|
||||
clock-names = "ipg", "baud";
|
||||
dmas = <&sdma 24 1 0>,
|
||||
<&sdma 25 1 0>;
|
||||
dma-names = "rx", "tx";
|
||||
fsl,fifo-depth = <15>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
esdhc3: esdhc@50020000 {
|
||||
compatible = "fsl,imx53-esdhc";
|
||||
reg = <0x50020000 0x4000>;
|
||||
@@ -117,25 +326,18 @@
|
||||
};
|
||||
};
|
||||
|
||||
iomuxc: iomuxc@53fa8000 {
|
||||
compatible = "fsl,imx53-iomuxc";
|
||||
reg = <0x53fa8000 0x4000>;
|
||||
aipstz1: bridge@53f00000 {
|
||||
compatible = "fsl,imx53-aipstz";
|
||||
reg = <0x53f00000 0x60>;
|
||||
};
|
||||
|
||||
gpr: iomuxc-gpr@53fa8000 {
|
||||
compatible = "fsl,imx53-iomuxc-gpr", "syscon";
|
||||
reg = <0x53fa8000 0xc>;
|
||||
};
|
||||
|
||||
uart2: serial@53fc0000 {
|
||||
compatible = "fsl,imx7d-uart", "fsl,imx53-uart", "fsl,imx21-uart";
|
||||
reg = <0x53fc0000 0x4000>;
|
||||
interrupts = <32>;
|
||||
clocks = <&clks IMX5_CLK_UART2_IPG_GATE>,
|
||||
<&clks IMX5_CLK_UART2_PER_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 12 4 0>, <&sdma 13 4 0>;
|
||||
dma-names = "rx", "tx";
|
||||
usbotg: usb@53f80000 {
|
||||
compatible = "fsl,imx53-usb", "fsl,imx27-usb";
|
||||
reg = <0x53f80000 0x0200>;
|
||||
interrupts = <18>;
|
||||
clocks = <&clks IMX5_CLK_USBOH3_GATE>;
|
||||
fsl,usbmisc = <&usbmisc 0>;
|
||||
fsl,usbphy = <&usbphy0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@@ -144,15 +346,37 @@
|
||||
reg = <0x53f80200 0x0200>;
|
||||
interrupts = <14>;
|
||||
clocks = <&clks IMX5_CLK_USBOH3_GATE>;
|
||||
fsl,usbmisc = <&usbmisc 1>;
|
||||
fsl,usbphy = <&usbphy1>;
|
||||
dr_mode = "host";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
clks: ccm@53fd4000{
|
||||
compatible = "fsl,imx53-ccm";
|
||||
reg = <0x53fd4000 0x4000>;
|
||||
interrupts = <0 71 0x04 0 72 0x04>;
|
||||
#clock-cells = <1>;
|
||||
usbh2: usb@53f80400 {
|
||||
compatible = "fsl,imx53-usb", "fsl,imx27-usb";
|
||||
reg = <0x53f80400 0x0200>;
|
||||
interrupts = <16>;
|
||||
clocks = <&clks IMX5_CLK_USBOH3_GATE>;
|
||||
fsl,usbmisc = <&usbmisc 2>;
|
||||
dr_mode = "host";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
usbh3: usb@53f80600 {
|
||||
compatible = "fsl,imx53-usb", "fsl,imx27-usb";
|
||||
reg = <0x53f80600 0x0200>;
|
||||
interrupts = <17>;
|
||||
clocks = <&clks IMX5_CLK_USBOH3_GATE>;
|
||||
fsl,usbmisc = <&usbmisc 3>;
|
||||
dr_mode = "host";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
usbmisc: usbmisc@53f80800 {
|
||||
#index-cells = <1>;
|
||||
compatible = "fsl,imx53-usbmisc";
|
||||
reg = <0x53f80800 0x200>;
|
||||
clocks = <&clks IMX5_CLK_USBOH3_GATE>;
|
||||
};
|
||||
|
||||
gpio1: gpio@53f84000 {
|
||||
@@ -195,177 +419,56 @@
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
gpio5: gpio@53fdc000 {
|
||||
compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x53fdc000 0x4000>;
|
||||
interrupts = <103 104>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
gpio6: gpio@53fe0000 {
|
||||
compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x53fe0000 0x4000>;
|
||||
interrupts = <105 106>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
gpio7: gpio@53fe4000 {
|
||||
compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x53fe4000 0x4000>;
|
||||
interrupts = <107 108>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
i2c3: i2c@53fec000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
|
||||
reg = <0x53fec000 0x4000>;
|
||||
interrupts = <64>;
|
||||
clocks = <&clks IMX5_CLK_I2C3_GATE>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
aips@60000000 { /* AIPS2 */
|
||||
compatible = "fsl,aips-bus", "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
reg = <0x60000000 0x10000000>;
|
||||
ranges;
|
||||
|
||||
sdma: sdma@63fb0000 {
|
||||
compatible = "fsl,imx53-sdma", "fsl,imx35-sdma";
|
||||
reg = <0x63fb0000 0x4000>;
|
||||
interrupts = <6>;
|
||||
clocks = <&clks IMX5_CLK_SDMA_GATE>,
|
||||
<&clks IMX5_CLK_SDMA_GATE>;
|
||||
clock-names = "ipg", "ahb";
|
||||
#dma-cells = <3>;
|
||||
fsl,sdma-ram-script-name = "imx/sdma/sdma-imx53.bin";
|
||||
};
|
||||
|
||||
fec: ethernet@63fec000 {
|
||||
compatible = "fsl,imx53-fec", "fsl,imx25-fec";
|
||||
reg = <0x63fec000 0x4000>;
|
||||
interrupts = <87>;
|
||||
clocks = <&clks IMX5_CLK_FEC_GATE>,
|
||||
<&clks IMX5_CLK_FEC_GATE>,
|
||||
<&clks IMX5_CLK_FEC_GATE>;
|
||||
clock-names = "ipg", "ahb", "ptp";
|
||||
kpp: kpp@53f94000 {
|
||||
compatible = "fsl,imx53-kpp", "fsl,imx21-kpp";
|
||||
reg = <0x53f94000 0x4000>;
|
||||
interrupts = <60>;
|
||||
clocks = <&clks IMX5_CLK_DUMMY>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c2: i2c@63fc4000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
|
||||
reg = <0x63fc4000 0x4000>;
|
||||
interrupts = <63>;
|
||||
clocks = <&clks IMX5_CLK_I2C2_GATE>;
|
||||
wdog1: wdog@53f98000 {
|
||||
compatible = "fsl,imx53-wdt", "fsl,imx21-wdt";
|
||||
reg = <0x53f98000 0x4000>;
|
||||
interrupts = <58>;
|
||||
clocks = <&clks IMX5_CLK_DUMMY>;
|
||||
};
|
||||
|
||||
wdog2: wdog@53f9c000 {
|
||||
compatible = "fsl,imx53-wdt", "fsl,imx21-wdt";
|
||||
reg = <0x53f9c000 0x4000>;
|
||||
interrupts = <59>;
|
||||
clocks = <&clks IMX5_CLK_DUMMY>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c1: i2c@63fc8000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
|
||||
reg = <0x63fc8000 0x4000>;
|
||||
interrupts = <62>;
|
||||
clocks = <&clks IMX5_CLK_I2C1_GATE>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
ipu: ipu@18000000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-ipu";
|
||||
reg = <0x18000000 0x08000000>;
|
||||
interrupts = <11 10>;
|
||||
clocks = <&clks IMX5_CLK_IPU_GATE>,
|
||||
<&clks IMX5_CLK_IPU_DI0_GATE>,
|
||||
<&clks IMX5_CLK_IPU_DI1_GATE>;
|
||||
clock-names = "bus", "di0", "di1";
|
||||
resets = <&src 2>;
|
||||
u-boot,dm-pre-reloc;
|
||||
|
||||
ipu_csi0: port@0 {
|
||||
reg = <0>;
|
||||
gpt: timer@53fa0000 {
|
||||
compatible = "fsl,imx53-gpt", "fsl,imx31-gpt";
|
||||
reg = <0x53fa0000 0x4000>;
|
||||
interrupts = <39>;
|
||||
clocks = <&clks IMX5_CLK_GPT_IPG_GATE>,
|
||||
<&clks IMX5_CLK_GPT_HF_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
};
|
||||
|
||||
ipu_csi1: port@1 {
|
||||
reg = <1>;
|
||||
srtc: rtc@53fa4000 {
|
||||
compatible = "fsl,imx53-rtc";
|
||||
reg = <0x53fa4000 0x4000>;
|
||||
interrupts = <24>;
|
||||
clocks = <&clks IMX5_CLK_SRTC_GATE>;
|
||||
};
|
||||
|
||||
ipu_di0: port@2 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <2>;
|
||||
|
||||
ipu_di0_disp0: endpoint@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
ipu_di0_lvds0: endpoint@1 {
|
||||
reg = <1>;
|
||||
remote-endpoint = <&lvds0_in>;
|
||||
};
|
||||
iomuxc: iomuxc@53fa8000 {
|
||||
compatible = "fsl,imx53-iomuxc";
|
||||
reg = <0x53fa8000 0x4000>;
|
||||
};
|
||||
|
||||
ipu_di1: port@3 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <3>;
|
||||
|
||||
ipu_di1_disp1: endpoint@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
ipu_di1_lvds1: endpoint@1 {
|
||||
reg = <1>;
|
||||
remote-endpoint = <&lvds1_in>;
|
||||
};
|
||||
|
||||
ipu_di1_tve: endpoint@2 {
|
||||
reg = <2>;
|
||||
remote-endpoint = <&tve_in>;
|
||||
};
|
||||
gpr: iomuxc-gpr@53fa8000 {
|
||||
compatible = "fsl,imx53-iomuxc-gpr", "syscon";
|
||||
reg = <0x53fa8000 0xc>;
|
||||
};
|
||||
};
|
||||
|
||||
tve: tve@63ff0000 {
|
||||
compatible = "fsl,imx53-tve";
|
||||
reg = <0x63ff0000 0x1000>;
|
||||
interrupts = <92>;
|
||||
clocks = <&clks IMX5_CLK_TVE_GATE>,
|
||||
<&clks IMX5_CLK_IPU_DI1_SEL>;
|
||||
clock-names = "tve", "di_sel";
|
||||
status = "disabled";
|
||||
|
||||
port {
|
||||
tve_in: endpoint {
|
||||
remote-endpoint = <&ipu_di1_tve>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
src: src@53fd0000 {
|
||||
compatible = "fsl,imx53-src", "fsl,imx51-src";
|
||||
reg = <0x53fd0000 0x4000>;
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
ldb: ldb@53fa8008 {
|
||||
ldb: ldb@53fa8008 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-ldb";
|
||||
@@ -419,6 +522,334 @@
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
pwm1: pwm@53fb4000 {
|
||||
#pwm-cells = <2>;
|
||||
compatible = "fsl,imx53-pwm", "fsl,imx27-pwm";
|
||||
reg = <0x53fb4000 0x4000>;
|
||||
clocks = <&clks IMX5_CLK_PWM1_IPG_GATE>,
|
||||
<&clks IMX5_CLK_PWM1_HF_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
interrupts = <61>;
|
||||
};
|
||||
|
||||
pwm2: pwm@53fb8000 {
|
||||
#pwm-cells = <2>;
|
||||
compatible = "fsl,imx53-pwm", "fsl,imx27-pwm";
|
||||
reg = <0x53fb8000 0x4000>;
|
||||
clocks = <&clks IMX5_CLK_PWM2_IPG_GATE>,
|
||||
<&clks IMX5_CLK_PWM2_HF_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
interrupts = <94>;
|
||||
};
|
||||
|
||||
uart1: serial@53fbc000 {
|
||||
compatible = "fsl,imx53-uart", "fsl,imx21-uart";
|
||||
reg = <0x53fbc000 0x4000>;
|
||||
interrupts = <31>;
|
||||
clocks = <&clks IMX5_CLK_UART1_IPG_GATE>,
|
||||
<&clks IMX5_CLK_UART1_PER_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 18 4 0>, <&sdma 19 4 0>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart2: serial@53fc0000 {
|
||||
compatible = "fsl,imx53-uart", "fsl,imx21-uart";
|
||||
reg = <0x53fc0000 0x4000>;
|
||||
interrupts = <32>;
|
||||
clocks = <&clks IMX5_CLK_UART2_IPG_GATE>,
|
||||
<&clks IMX5_CLK_UART2_PER_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 12 4 0>, <&sdma 13 4 0>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
can1: can@53fc8000 {
|
||||
compatible = "fsl,imx53-flexcan", "fsl,imx25-flexcan";
|
||||
reg = <0x53fc8000 0x4000>;
|
||||
interrupts = <82>;
|
||||
clocks = <&clks IMX5_CLK_CAN1_IPG_GATE>,
|
||||
<&clks IMX5_CLK_CAN1_SERIAL_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
can2: can@53fcc000 {
|
||||
compatible = "fsl,imx53-flexcan", "fsl,imx25-flexcan";
|
||||
reg = <0x53fcc000 0x4000>;
|
||||
interrupts = <83>;
|
||||
clocks = <&clks IMX5_CLK_CAN2_IPG_GATE>,
|
||||
<&clks IMX5_CLK_CAN2_SERIAL_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
src: src@53fd0000 {
|
||||
compatible = "fsl,imx53-src", "fsl,imx51-src";
|
||||
reg = <0x53fd0000 0x4000>;
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
clks: ccm@53fd4000{
|
||||
compatible = "fsl,imx53-ccm";
|
||||
reg = <0x53fd4000 0x4000>;
|
||||
interrupts = <0 71 0x04 0 72 0x04>;
|
||||
#clock-cells = <1>;
|
||||
};
|
||||
|
||||
gpio5: gpio@53fdc000 {
|
||||
compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x53fdc000 0x4000>;
|
||||
interrupts = <103 104>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
gpio6: gpio@53fe0000 {
|
||||
compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x53fe0000 0x4000>;
|
||||
interrupts = <105 106>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
gpio7: gpio@53fe4000 {
|
||||
compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x53fe4000 0x4000>;
|
||||
interrupts = <107 108>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
i2c3: i2c@53fec000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
|
||||
reg = <0x53fec000 0x4000>;
|
||||
interrupts = <64>;
|
||||
clocks = <&clks IMX5_CLK_I2C3_GATE>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart4: serial@53ff0000 {
|
||||
compatible = "fsl,imx53-uart", "fsl,imx21-uart";
|
||||
reg = <0x53ff0000 0x4000>;
|
||||
interrupts = <13>;
|
||||
clocks = <&clks IMX5_CLK_UART4_IPG_GATE>,
|
||||
<&clks IMX5_CLK_UART4_PER_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 2 4 0>, <&sdma 3 4 0>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
aips@60000000 { /* AIPS2 */
|
||||
compatible = "fsl,aips-bus", "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
reg = <0x60000000 0x10000000>;
|
||||
ranges;
|
||||
|
||||
aipstz2: bridge@63f00000 {
|
||||
compatible = "fsl,imx53-aipstz";
|
||||
reg = <0x63f00000 0x60>;
|
||||
};
|
||||
|
||||
iim: iim@63f98000 {
|
||||
compatible = "fsl,imx53-iim", "fsl,imx27-iim";
|
||||
reg = <0x63f98000 0x4000>;
|
||||
interrupts = <69>;
|
||||
clocks = <&clks IMX5_CLK_IIM_GATE>;
|
||||
};
|
||||
|
||||
uart5: serial@63f90000 {
|
||||
compatible = "fsl,imx53-uart", "fsl,imx21-uart";
|
||||
reg = <0x63f90000 0x4000>;
|
||||
interrupts = <86>;
|
||||
clocks = <&clks IMX5_CLK_UART5_IPG_GATE>,
|
||||
<&clks IMX5_CLK_UART5_PER_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 16 4 0>, <&sdma 17 4 0>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
tigerp: tigerp@63fa0000 {
|
||||
compatible = "fsl,imx53-tigerp", "fsl,imx51-tigerp";
|
||||
reg = <0x63fa0000 0x28>;
|
||||
};
|
||||
|
||||
owire: owire@63fa4000 {
|
||||
compatible = "fsl,imx53-owire", "fsl,imx21-owire";
|
||||
reg = <0x63fa4000 0x4000>;
|
||||
clocks = <&clks IMX5_CLK_OWIRE_GATE>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
ecspi2: spi@63fac000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-ecspi", "fsl,imx51-ecspi";
|
||||
reg = <0x63fac000 0x4000>;
|
||||
interrupts = <37>;
|
||||
clocks = <&clks IMX5_CLK_ECSPI2_IPG_GATE>,
|
||||
<&clks IMX5_CLK_ECSPI2_PER_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
sdma: sdma@63fb0000 {
|
||||
compatible = "fsl,imx53-sdma", "fsl,imx35-sdma";
|
||||
reg = <0x63fb0000 0x4000>;
|
||||
interrupts = <6>;
|
||||
clocks = <&clks IMX5_CLK_SDMA_GATE>,
|
||||
<&clks IMX5_CLK_AHB>;
|
||||
clock-names = "ipg", "ahb";
|
||||
#dma-cells = <3>;
|
||||
fsl,sdma-ram-script-name = "imx/sdma/sdma-imx53.bin";
|
||||
};
|
||||
|
||||
cspi: spi@63fc0000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-cspi", "fsl,imx35-cspi";
|
||||
reg = <0x63fc0000 0x4000>;
|
||||
interrupts = <38>;
|
||||
clocks = <&clks IMX5_CLK_CSPI_IPG_GATE>,
|
||||
<&clks IMX5_CLK_CSPI_IPG_GATE>;
|
||||
clock-names = "ipg", "per";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c2: i2c@63fc4000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
|
||||
reg = <0x63fc4000 0x4000>;
|
||||
interrupts = <63>;
|
||||
clocks = <&clks IMX5_CLK_I2C2_GATE>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c1: i2c@63fc8000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
|
||||
reg = <0x63fc8000 0x4000>;
|
||||
interrupts = <62>;
|
||||
clocks = <&clks IMX5_CLK_I2C1_GATE>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
ssi1: ssi@63fcc000 {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "fsl,imx53-ssi", "fsl,imx51-ssi",
|
||||
"fsl,imx21-ssi";
|
||||
reg = <0x63fcc000 0x4000>;
|
||||
interrupts = <29>;
|
||||
clocks = <&clks IMX5_CLK_SSI1_IPG_GATE>,
|
||||
<&clks IMX5_CLK_SSI1_ROOT_GATE>;
|
||||
clock-names = "ipg", "baud";
|
||||
dmas = <&sdma 28 0 0>,
|
||||
<&sdma 29 0 0>;
|
||||
dma-names = "rx", "tx";
|
||||
fsl,fifo-depth = <15>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
audmux: audmux@63fd0000 {
|
||||
compatible = "fsl,imx53-audmux", "fsl,imx31-audmux";
|
||||
reg = <0x63fd0000 0x4000>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
nfc: nand@63fdb000 {
|
||||
compatible = "fsl,imx53-nand";
|
||||
reg = <0x63fdb000 0x1000 0xf7ff0000 0x10000>;
|
||||
interrupts = <8>;
|
||||
clocks = <&clks IMX5_CLK_NFC_GATE>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
ssi3: ssi@63fe8000 {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "fsl,imx53-ssi", "fsl,imx51-ssi",
|
||||
"fsl,imx21-ssi";
|
||||
reg = <0x63fe8000 0x4000>;
|
||||
interrupts = <96>;
|
||||
clocks = <&clks IMX5_CLK_SSI3_IPG_GATE>,
|
||||
<&clks IMX5_CLK_SSI3_ROOT_GATE>;
|
||||
clock-names = "ipg", "baud";
|
||||
dmas = <&sdma 46 0 0>,
|
||||
<&sdma 47 0 0>;
|
||||
dma-names = "rx", "tx";
|
||||
fsl,fifo-depth = <15>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
fec: ethernet@63fec000 {
|
||||
compatible = "fsl,imx53-fec", "fsl,imx25-fec";
|
||||
reg = <0x63fec000 0x4000>;
|
||||
interrupts = <87>;
|
||||
clocks = <&clks IMX5_CLK_FEC_GATE>,
|
||||
<&clks IMX5_CLK_FEC_GATE>,
|
||||
<&clks IMX5_CLK_FEC_GATE>;
|
||||
clock-names = "ipg", "ahb", "ptp";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
tve: tve@63ff0000 {
|
||||
compatible = "fsl,imx53-tve";
|
||||
reg = <0x63ff0000 0x1000>;
|
||||
interrupts = <92>;
|
||||
clocks = <&clks IMX5_CLK_TVE_GATE>,
|
||||
<&clks IMX5_CLK_IPU_DI1_SEL>;
|
||||
clock-names = "tve", "di_sel";
|
||||
status = "disabled";
|
||||
|
||||
port {
|
||||
tve_in: endpoint {
|
||||
remote-endpoint = <&ipu_di1_tve>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
vpu: vpu@63ff4000 {
|
||||
compatible = "fsl,imx53-vpu", "cnm,coda7541";
|
||||
reg = <0x63ff4000 0x1000>;
|
||||
interrupts = <9>;
|
||||
clocks = <&clks IMX5_CLK_VPU_REFERENCE_GATE>,
|
||||
<&clks IMX5_CLK_VPU_GATE>;
|
||||
clock-names = "per", "ahb";
|
||||
resets = <&src 1>;
|
||||
iram = <&ocram>;
|
||||
};
|
||||
|
||||
sahara: crypto@63ff8000 {
|
||||
compatible = "fsl,imx53-sahara";
|
||||
reg = <0x63ff8000 0x4000>;
|
||||
interrupts = <19 20>;
|
||||
clocks = <&clks IMX5_CLK_SAHARA_IPG_GATE>,
|
||||
<&clks IMX5_CLK_SAHARA_IPG_GATE>;
|
||||
clock-names = "ipg", "ahb";
|
||||
};
|
||||
};
|
||||
|
||||
ocram: sram@f8000000 {
|
||||
compatible = "mmio-sram";
|
||||
reg = <0xf8000000 0x20000>;
|
||||
clocks = <&clks IMX5_CLK_OCRAM>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,45 +1,6 @@
|
||||
/*
|
||||
* Copyright 2018 Logic PD, Inc.
|
||||
* Based on SabreSD, Copyright 2016 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* This file is dual-licensed: you can use it either under the terms
|
||||
* of the GPL or the X11 license, at your option. Note that this dual
|
||||
* licensing only applies to this file, and not this project as a
|
||||
* whole.
|
||||
*
|
||||
* a) This file is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This file is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* Or, alternatively,
|
||||
*
|
||||
* b) Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use,
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
//
|
||||
// Copyright (C) 2019 Logic PD, Inc.
|
||||
|
||||
/ {
|
||||
keyboard {
|
||||
@@ -68,6 +29,7 @@
|
||||
debounce-interval = <10>;
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
btn3 {
|
||||
gpios = <&pcf8575 3 GPIO_ACTIVE_LOW>;
|
||||
label = "btn3";
|
||||
@@ -81,7 +43,7 @@
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
gen_led0 {
|
||||
gen-led0 {
|
||||
label = "led0";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_led0>;
|
||||
@@ -89,25 +51,27 @@
|
||||
linux,default-trigger = "cpu0";
|
||||
};
|
||||
|
||||
gen_led1 {
|
||||
gen-led1 {
|
||||
label = "led1";
|
||||
gpios = <&pcf8575 8 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
gen_led2 {
|
||||
gen-led2 {
|
||||
label = "led2";
|
||||
gpios = <&pcf8575 9 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
|
||||
gen_led3 {
|
||||
gen-led3 {
|
||||
label = "led3";
|
||||
gpios = <&pcf8575 10 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-otg-vbus@0 {
|
||||
reg_usb_otg_vbus: regulator-otg-vbus {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_usb_otg>;
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
@@ -116,14 +80,19 @@
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_usb_h1_vbus: regulator-usbh1vbus@1 {
|
||||
reg_usb_h1_vbus: regulator-usb-h1-vbus {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_usb_h1_vbus>;
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio7 12 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <70000>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_3v3: regulator-3v3@2 {
|
||||
reg_3v3: regulator-3v3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_3v3>;
|
||||
compatible = "regulator-fixed";
|
||||
@@ -131,13 +100,14 @@
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio1 26 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <70000>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_enet: regulator-ethernet@3 {
|
||||
reg_enet: regulator-ethernet {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet_pwr>;
|
||||
pinctrl-0 = <&pinctrl_reg_enet>;
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "ethernet-supply";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
@@ -148,7 +118,7 @@
|
||||
vin-supply = <&sw4_reg>;
|
||||
};
|
||||
|
||||
reg_audio: regulator-audio@4 {
|
||||
reg_audio: regulator-audio {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_audio>;
|
||||
compatible = "regulator-fixed";
|
||||
@@ -157,11 +127,10 @@
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio1 29 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
vin-supply = <®_3v3>;
|
||||
};
|
||||
|
||||
reg_hdmi: regulator-hdmi@5 {
|
||||
reg_hdmi: regulator-hdmi {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_hdmi>;
|
||||
compatible = "regulator-fixed";
|
||||
@@ -173,7 +142,7 @@
|
||||
vin-supply = <®_3v3>;
|
||||
};
|
||||
|
||||
reg_uart3: regulator-uart3@6 {
|
||||
reg_uart3: regulator-uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_uart3>;
|
||||
compatible = "regulator-fixed";
|
||||
@@ -184,7 +153,7 @@
|
||||
vin-supply = <®_3v3>;
|
||||
};
|
||||
|
||||
reg_1v8: regulator-1v8@7 {
|
||||
reg_1v8: regulator-1v8 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_1v8>;
|
||||
compatible = "regulator-fixed";
|
||||
@@ -195,21 +164,21 @@
|
||||
vin-supply = <®_3v3>;
|
||||
};
|
||||
|
||||
reg_pcie: regulator@8 {
|
||||
reg_pcie: regulator-pcie {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pcie_reg>;
|
||||
regulator-name = "MPCIE_3V3";
|
||||
pinctrl-0 = <&pinctrl_reg_pcie>;
|
||||
regulator-name = "mpcie_3v3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio1 2 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
mipi_pwr: regulator@9 {
|
||||
reg_mipi: regulator-mipi {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_mipi_pwr>;
|
||||
pinctrl-0 = <&pinctrl_reg_mipi>;
|
||||
regulator-name = "mipi_pwr_en";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
@@ -221,7 +190,7 @@
|
||||
compatible = "fsl,imx-audio-wm8962";
|
||||
model = "wm8962-audio";
|
||||
ssi-controller = <&ssi2>;
|
||||
audio-codec = <&codec>;
|
||||
audio-codec = <&wm8962>;
|
||||
audio-routing =
|
||||
"Headphone Jack", "HPOUTL",
|
||||
"Headphone Jack", "HPOUTR",
|
||||
@@ -246,34 +215,10 @@
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&pwm3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
vbus-supply = <®_usb_otg_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-gpios = <&gpio1 24 GPIO_ACTIVE_LOW>;
|
||||
phy-supply = <®_enet>;
|
||||
@@ -282,23 +227,13 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
|
||||
pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
|
||||
no-1-8-v;
|
||||
keep-power-in-suspend;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
clock-frequency = <400000>;
|
||||
status = "okay";
|
||||
|
||||
codec: wm8962@1a {
|
||||
wm8962: audio-codec@1a {
|
||||
compatible = "wlf,wm8962";
|
||||
reg = <0x1a>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
@@ -330,9 +265,9 @@
|
||||
reg = <0x10>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
clock-names = "xclk";
|
||||
DOVDD-supply = <&mipi_pwr>;
|
||||
AVDD-supply = <&mipi_pwr>;
|
||||
DVDD-supply = <&mipi_pwr>;
|
||||
DOVDD-supply = <®_mipi>;
|
||||
AVDD-supply = <®_mipi>;
|
||||
DVDD-supply = <®_mipi>;
|
||||
reset-gpios = <&gpio3 26 GPIO_ACTIVE_LOW>;
|
||||
powerdown-gpios = <&gpio3 27 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
@@ -361,6 +296,11 @@
|
||||
};
|
||||
};
|
||||
|
||||
&ipu1_csi1_from_mipi_vc1 {
|
||||
clock-lanes = <0>;
|
||||
data-lanes = <1 2>;
|
||||
};
|
||||
|
||||
&mipi_csi {
|
||||
status = "okay";
|
||||
|
||||
@@ -379,17 +319,52 @@
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pcie>;
|
||||
reset-gpio = <&gpio1 9 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
vpcie-supply = <®_pcie>;
|
||||
/* fsl,max-link-speed = <2>; */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
};
|
||||
|
||||
&ssi2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
vbus-supply = <®_usb_otg_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
|
||||
pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
|
||||
vmmc-supply = <®_3v3>;
|
||||
no-1-8-v;
|
||||
keep-power-in-suspend;
|
||||
cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_audmux: audmuxgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT20__AUD4_TXC 0x130b0
|
||||
@@ -399,21 +374,49 @@
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1 {
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL0__ECSPI1_SCLK 0x100b1
|
||||
MX6QDL_PAD_KEY_ROW0__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_KEY_COL1__ECSPI1_MISO 0x100b1
|
||||
MX6QDL_PAD_KEY_ROW1__ECSPI1_SS0 0x100b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b8b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x100b0
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030
|
||||
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x13030
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x13030
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x13030
|
||||
MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b0b0 /* ENET_INT */
|
||||
MX6QDL_PAD_ENET_RX_ER__GPIO1_IO24 0x1b0b0 /* ETHR_nRST */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet_pwr: enet_pwr {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mipi_pwr: pwr_mipi {
|
||||
fsl,pins = <MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x1b0b1>;
|
||||
pinctrl_led0: led0grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ov5640: ov5640grp {
|
||||
@@ -423,12 +426,83 @@
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_hdmi: reg_hdmi {
|
||||
pinctrl_pcf8574: pcf8575grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_BCLK__GPIO6_IO31 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pcie: pciegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_1v8: reg1v8grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_3v3: reg3v3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_audio: reg-audiogrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_enet: reg-enetgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_hdmi: reg-hdmigrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D20__GPIO3_IO20 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_mipi: reg-mipigrp {
|
||||
fsl,pins = <MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x1b0b1>;
|
||||
};
|
||||
|
||||
pinctrl_reg_pcie: reg-pciegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_uart3: reguart3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_usb_h1_vbus: usbh1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_usb_otg: reg-usb-otggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart3: uart3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D23__UART3_CTS_B 0x1b0b1
|
||||
@@ -441,16 +515,6 @@
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0xd17059
|
||||
MX6QDL_PAD_KEY_ROW4__USB_OTG_PWR 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL0__ECSPI1_SCLK 0x100b1
|
||||
MX6QDL_PAD_KEY_ROW0__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_KEY_COL1__ECSPI1_MISO 0x100b1
|
||||
MX6QDL_PAD_KEY_ROW1__ECSPI1_SS0 0x100b1
|
||||
>;
|
||||
};
|
||||
|
||||
@@ -490,107 +554,4 @@
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b8b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x100b0
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030
|
||||
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x13030
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x13030
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x13030
|
||||
MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b0b0 /* ENET_INT */
|
||||
MX6QDL_PAD_ENET_RX_ER__GPIO1_IO24 0x1b0b0 /* ETHR_nRST */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_audio: audio-reg {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pcie: pcie {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pcie_reg: pciereggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pcf8574: pcf8575-pins {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_BCLK__GPIO6_IO31 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lcd: lcdgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x10 /* R_LCD_DCLK */
|
||||
MX6QDL_PAD_DI0_PIN15__GPIO4_IO17 0x100b0 /* R_LCD_PANEL_PWR */
|
||||
MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x10 /* R_LCD_HSYNC */
|
||||
MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x10 /* R_LCD_VSYNC */
|
||||
MX6QDL_PAD_DI0_PIN4__IPU1_DI0_PIN04 0x10 /* R_LCD_MDISP */
|
||||
MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x10
|
||||
MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x10
|
||||
MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x10
|
||||
MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x10
|
||||
MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x10
|
||||
MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x10
|
||||
MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x10
|
||||
MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x10
|
||||
MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x10
|
||||
MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x10
|
||||
MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x10
|
||||
MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x10
|
||||
MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x10
|
||||
MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x10
|
||||
MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x10
|
||||
MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x10
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_uart3: uart3reg {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_3v3: reg-3v3 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_1v8: reg-1v8 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_led0: led0 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x1b0b0
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,16 +1,6 @@
|
||||
/*
|
||||
* Copyright 2018 Logic PD
|
||||
* This file is adapted from imx6qdl-sabresd.dtsi.
|
||||
* Copyright 2012 Freescale Semiconductor, Inc.
|
||||
* Copyright 2011 Linaro Ltd.
|
||||
*
|
||||
* The code contained herein is licensed under the GNU General Public
|
||||
* License. You may obtain a copy of the GNU General Public License
|
||||
* Version 2 or later at the following locations:
|
||||
*
|
||||
* http://www.opensource.org/licenses/gpl-license.html
|
||||
* http://www.gnu.org/copyleft/gpl.html
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
//
|
||||
// Copyright (C) 2019 Logic PD, Inc.
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
@@ -20,7 +10,8 @@
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x80000000>;
|
||||
};
|
||||
|
||||
@@ -35,17 +26,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
/* Reroute power feeding the CPU to come from the external PMIC */
|
||||
®_arm
|
||||
{
|
||||
vin-supply = <&sw1a_reg>;
|
||||
};
|
||||
|
||||
®_soc
|
||||
{
|
||||
vin-supply = <&sw1c_reg>;
|
||||
};
|
||||
|
||||
&clks {
|
||||
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
|
||||
<&clks IMX6QDL_CLK_LDB_DI1_SEL>;
|
||||
@@ -56,8 +36,8 @@
|
||||
&gpmi {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpmi_nand>;
|
||||
status = "okay";
|
||||
nand-on-flash-bbt;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
@@ -66,7 +46,7 @@
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
status = "okay";
|
||||
|
||||
pmic: pfuze100@08 {
|
||||
pfuze100: pmic@8 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
|
||||
@@ -94,20 +74,19 @@
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-name = "gen_3v3";
|
||||
regulator-boot-on;
|
||||
/* regulator-always-on; */
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-min-microvolt = <1350000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-name = "sw3a_vddr";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3b_reg: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-min-microvolt = <1350000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-name = "sw3b_vddr";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
@@ -152,8 +131,8 @@
|
||||
|
||||
vgen3_reg: vgen3 {
|
||||
regulator-name = "gen_vadj_0";
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
@@ -164,8 +143,8 @@
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-name = "gen_adj_1";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-name = "gen_vadj_1";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
@@ -185,7 +164,15 @@
|
||||
};
|
||||
};
|
||||
|
||||
temp_sense0: tmp102@4a {
|
||||
temperature-sensor@49 {
|
||||
compatible = "ti,tmp102";
|
||||
reg = <0x49>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
|
||||
#thermal-sensor-cells = <1>;
|
||||
};
|
||||
|
||||
temperature-sensor@4a {
|
||||
compatible = "ti,tmp102";
|
||||
reg = <0x4a>;
|
||||
pinctrl-names = "default";
|
||||
@@ -195,34 +182,57 @@
|
||||
#thermal-sensor-cells = <1>;
|
||||
};
|
||||
|
||||
temp_sense1: tmp102@49 {
|
||||
compatible = "ti,tmp102";
|
||||
reg = <0x49>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
|
||||
#thermal-sensor-cells = <1>;
|
||||
};
|
||||
|
||||
mfg_eeprom: at24@51 {
|
||||
eeprom@51 {
|
||||
compatible = "atmel,24c64";
|
||||
pagesize = <32>;
|
||||
read-only;
|
||||
read-only; /* Manufacturing EEPROM programmed at factory */
|
||||
reg = <0x51>;
|
||||
};
|
||||
|
||||
user_eeprom: at24@52 {
|
||||
eeprom@52 {
|
||||
compatible = "atmel,24c64";
|
||||
pagesize = <32>;
|
||||
reg = <0x52>;
|
||||
};
|
||||
};
|
||||
|
||||
/* Reroute power feeding the CPU to come from the external PMIC */
|
||||
®_arm
|
||||
{
|
||||
vin-supply = <&sw1a_reg>;
|
||||
};
|
||||
|
||||
®_soc
|
||||
{
|
||||
vin-supply = <&sw1c_reg>;
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
pinctrl_hog: hoggrp {
|
||||
pinctrl_gpmi_nand: gpmi-nandgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_CLE__NAND_CLE 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_ALE__NAND_ALE 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0x0b000
|
||||
MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0x0b0b1
|
||||
MX6QDL_PAD_SD4_CMD__NAND_RE_B 0x0b0b1
|
||||
MX6QDL_PAD_SD4_CLK__NAND_WE_B 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D0__NAND_DATA00 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D1__NAND_DATA01 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D2__NAND_DATA02 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D3__NAND_DATA03 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D4__NAND_DATA04 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D5__NAND_DATA05 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D6__NAND_DATA06 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D7__NAND_DATA07 0x0b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = < /* Enable ARM Debugger */
|
||||
MX6QDL_PAD_CSI0_MCLK__ARM_TRACE_CTL 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_PIXCLK__ARM_EVENTO 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_VSYNC__ARM_TRACE00 0x1b0b0
|
||||
@@ -246,26 +256,6 @@
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpmi_nand: gpminandgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_CLE__NAND_CLE 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_ALE__NAND_ALE 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0x0b000
|
||||
MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0x0b0b1
|
||||
MX6QDL_PAD_SD4_CMD__NAND_RE_B 0x0b0b1
|
||||
MX6QDL_PAD_SD4_CLK__NAND_WE_B 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D0__NAND_DATA00 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D1__NAND_DATA01 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D2__NAND_DATA02 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D3__NAND_DATA03 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D4__NAND_DATA04 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D5__NAND_DATA05 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D6__NAND_DATA06 0x0b0b1
|
||||
MX6QDL_PAD_NANDF_D7__NAND_DATA07 0x0b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1
|
||||
@@ -273,6 +263,12 @@
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_tempsense: tempsensegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
|
||||
@@ -282,7 +278,7 @@
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_RST__GPIO7_IO08 0x13059 /* BT_EN */
|
||||
MX6QDL_PAD_SD3_RST__GPIO7_IO08 0x13059 /* BT_EN */
|
||||
MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD4_DAT5__UART2_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_SD4_DAT6__UART2_CTS_B 0x1b0b1
|
||||
@@ -313,12 +309,6 @@
|
||||
MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x17059 /* WLAN_EN */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_tempsense: tempsensegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x1b0b0 /* Temp Sense Alert */
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&snvs_poweroff {
|
||||
@@ -334,8 +324,9 @@
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
status = "okay";
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "ti,wl1837-st";
|
||||
enable-gpios = <&gpio7 8 GPIO_ACTIVE_HIGH>;
|
||||
@@ -347,9 +338,9 @@
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
non-removable;
|
||||
keep-power-in-suspend;
|
||||
enable-sdio-wakeup;
|
||||
status = "okay";
|
||||
wakeup-source;
|
||||
vmmc-supply = <&sw2_reg>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
@@ -360,9 +351,10 @@
|
||||
keep-power-in-suspend;
|
||||
wakeup-source;
|
||||
vmmc-supply = <®_wl18xx_vmmc>;
|
||||
status = "okay";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
wlcore: wlcore@2 {
|
||||
compatible = "ti,wl1837";
|
||||
reg = <2>;
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
compatible = "wand,imx6dl-wandboard", "fsl,imx6dl";
|
||||
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
};
|
||||
|
||||
151
arch/arm/dts/imx6q-dhcom-pdk2.dts
Normal file
151
arch/arm/dts/imx6q-dhcom-pdk2.dts
Normal file
@@ -0,0 +1,151 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+)
|
||||
/*
|
||||
* Copyright (C) 2015 DH electronics GmbH
|
||||
* Copyright (C) 2018 Marek Vasut <marex@denx.de>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6q-dhcom-som.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Freescale i.MX6 Quad DHCOM Premium Developer Kit (2)";
|
||||
compatible = "dh,imx6q-dhcom-pdk2", "dh,imx6q-dhcom-som", "fsl,imx6q";
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
clk_ext_audio_codec: clock-codec {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <24000000>;
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "fsl,imx-audio-sgtl5000";
|
||||
model = "imx-sgtl5000";
|
||||
ssi-controller = <&ssi1>;
|
||||
audio-codec = <&sgtl5000>;
|
||||
audio-routing =
|
||||
"MIC_IN", "Mic Jack",
|
||||
"Mic Jack", "Mic Bias",
|
||||
"LINE_IN", "Line In Jack",
|
||||
"Headphone Jack", "HP_OUT";
|
||||
mux-int-port = <1>;
|
||||
mux-ext-port = <3>;
|
||||
};
|
||||
};
|
||||
|
||||
&audmux {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_audmux_ext>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
ddc-i2c-bus = <&i2c2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
sgtl5000: codec@a {
|
||||
compatible = "fsl,sgtl5000";
|
||||
reg = <0x0a>;
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clk_ext_audio_codec>;
|
||||
VDDA-supply = <®_3p3v>;
|
||||
VDDIO-supply = <®_3p3v>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog_base &pinctrl_hog>;
|
||||
|
||||
pinctrl_hog: hog-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x400120b0
|
||||
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x400120b0
|
||||
MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x400120b0
|
||||
MX6QDL_PAD_CSI0_DAT17__GPIO6_IO03 0x400120b0
|
||||
MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x120b0
|
||||
MX6QDL_PAD_DI0_PIN4__GPIO4_IO20 0x400120b0
|
||||
MX6QDL_PAD_EIM_D27__GPIO3_IO27 0x120b0
|
||||
MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x120b0
|
||||
MX6QDL_PAD_KEY_COL1__GPIO4_IO08 0x400120b0
|
||||
MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x400120b0
|
||||
MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x400120b0
|
||||
MX6QDL_PAD_KEY_ROW1__GPIO4_IO09 0x400120b0
|
||||
MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x400120b0
|
||||
MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x400120b0
|
||||
MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x400120b0
|
||||
MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x400120b0
|
||||
MX6QDL_PAD_SD1_CMD__GPIO1_IO18 0x400120b0
|
||||
MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x400120b0
|
||||
MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x400120b0
|
||||
MX6QDL_PAD_SD1_DAT2__GPIO1_IO19 0x400120b0
|
||||
MX6QDL_PAD_SD1_CLK__GPIO1_IO20 0x400120b0
|
||||
MX6QDL_PAD_CSI0_PIXCLK__GPIO5_IO18 0x400120b0
|
||||
MX6QDL_PAD_CSI0_MCLK__GPIO5_IO19 0x400120b0
|
||||
MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x400120b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_audmux_ext: audmux-ext-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0
|
||||
MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0
|
||||
MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0
|
||||
MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet_1G: enet-1G-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x100b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x100b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x100b0
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x100b0
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x100b0
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0
|
||||
MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x000b0
|
||||
MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x000b1
|
||||
MX6QDL_PAD_EIM_D26__GPIO3_IO26 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pcie: pcie-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20 0x1b0b1
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pcie>;
|
||||
reset-gpio = <&gpio6 14 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssi1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sata {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
status = "okay";
|
||||
};
|
||||
477
arch/arm/dts/imx6q-dhcom-som.dtsi
Normal file
477
arch/arm/dts/imx6q-dhcom-som.dtsi
Normal file
@@ -0,0 +1,477 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+)
|
||||
/*
|
||||
* Copyright (C) 2015 DH electronics GmbH
|
||||
* Copyright (C) 2018 Marek Vasut <marex@denx.de>
|
||||
*/
|
||||
|
||||
#include "imx6q.dtsi"
|
||||
#include <dt-bindings/pwm/pwm.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/clock/imx6qdl-clock.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
mmc0 = &usdhc2;
|
||||
mmc1 = &usdhc3;
|
||||
mmc2 = &usdhc4;
|
||||
mmc3 = &usdhc1;
|
||||
};
|
||||
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
|
||||
reg_usb_h1_vbus: regulator-usb-h1-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 31 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_3p3v: regulator-3P3V {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3P3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
|
||||
&can1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ecspi1 {
|
||||
cs-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>, <&gpio4 11 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>;
|
||||
status = "okay";
|
||||
|
||||
flash@0 { /* S25FL116K */
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "jedec,spi-nor";
|
||||
spi-max-frequency = <50000000>;
|
||||
reg = <0>;
|
||||
m25p,fast-read;
|
||||
};
|
||||
};
|
||||
|
||||
&ecspi2 {
|
||||
cs-gpios = <&gpio5 29 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet_100M>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <ðphy0>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy0: ethernet-phy@0 { /* SMSC LAN8710Ai */
|
||||
reg = <0>;
|
||||
max-speed = <100>;
|
||||
reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
|
||||
reset-delay-us = <1000>;
|
||||
reset-post-delay-us = <1000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
status = "okay";
|
||||
|
||||
ltc3676: pmic@3c {
|
||||
compatible = "lltc,ltc3676";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pmic_hw300>;
|
||||
reg = <0x3c>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
|
||||
|
||||
regulators {
|
||||
sw1_reg: sw1 {
|
||||
regulator-min-microvolt = <787500>;
|
||||
regulator-max-microvolt = <1527272>;
|
||||
lltc,fb-voltage-divider = <100000 110000>;
|
||||
regulator-suspend-mem-microvolt = <1040000>;
|
||||
regulator-ramp-delay = <7000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw2_reg: sw2 {
|
||||
regulator-min-microvolt = <1885714>;
|
||||
regulator-max-microvolt = <3657142>;
|
||||
lltc,fb-voltage-divider = <100000 28000>;
|
||||
regulator-ramp-delay = <7000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3_reg: sw3 {
|
||||
regulator-min-microvolt = <787500>;
|
||||
regulator-max-microvolt = <1527272>;
|
||||
lltc,fb-voltage-divider = <100000 110000>;
|
||||
regulator-suspend-mem-microvolt = <980000>;
|
||||
regulator-ramp-delay = <7000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw4_reg: sw4 {
|
||||
regulator-min-microvolt = <855571>;
|
||||
regulator-max-microvolt = <1659291>;
|
||||
lltc,fb-voltage-divider = <100000 93100>;
|
||||
regulator-ramp-delay = <7000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo1_reg: ldo1 {
|
||||
regulator-min-microvolt = <3240306>;
|
||||
regulator-max-microvolt = <3240306>;
|
||||
lltc,fb-voltage-divider = <102000 29400>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
ldo2_reg: ldo2 {
|
||||
regulator-min-microvolt = <2484708>;
|
||||
regulator-max-microvolt = <2484708>;
|
||||
lltc,fb-voltage-divider = <100000 41200>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
touchscreen@49 { /* TSC2004 */
|
||||
compatible = "ti,tsc2004";
|
||||
reg = <0x49>;
|
||||
vio-supply = <®_3p3v>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_tsc2004_hw300>;
|
||||
interrupts-extended = <&gpio4 14 IRQ_TYPE_EDGE_FALLING>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
eeprom@50 {
|
||||
compatible = "atmel,24c02";
|
||||
reg = <0x50>;
|
||||
pagesize = <16>;
|
||||
};
|
||||
|
||||
rtc@56 {
|
||||
compatible = "rv3029c2";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_rtc_hw300>;
|
||||
reg = <0x56>;
|
||||
interrupt-parent = <&gpio7>;
|
||||
interrupts = <12 2>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog_base>;
|
||||
|
||||
pinctrl_hog_base: hog-base-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_A19__GPIO2_IO19 0x120b0
|
||||
MX6QDL_PAD_EIM_A23__GPIO6_IO06 0x120b0
|
||||
MX6QDL_PAD_EIM_A22__GPIO2_IO16 0x120b0
|
||||
MX6QDL_PAD_EIM_A16__GPIO2_IO22 0x120b0
|
||||
MX6QDL_PAD_EIM_A17__GPIO2_IO21 0x120b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi1: ecspi1-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
|
||||
MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
|
||||
MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x1b0b0
|
||||
MX6QDL_PAD_KEY_ROW2__GPIO4_IO11 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi2: ecspi2-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT10__ECSPI2_MISO 0x100b1
|
||||
MX6QDL_PAD_CSI0_DAT9__ECSPI2_MOSI 0x100b1
|
||||
MX6QDL_PAD_CSI0_DAT8__ECSPI2_SCLK 0x100b1
|
||||
MX6QDL_PAD_CSI0_DAT11__GPIO5_IO29 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet_100M: enet-100M-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0
|
||||
MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1b0b0
|
||||
MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0
|
||||
MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0
|
||||
MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0
|
||||
MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0
|
||||
MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
|
||||
MX6QDL_PAD_EIM_WAIT__GPIO5_IO00 0x000b0
|
||||
MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x000b1
|
||||
MX6QDL_PAD_GPIO_7__GPIO1_IO07 0x120b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan1: flexcan1-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_8__FLEXCAN1_RX 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan2: flexcan2-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_DAT0__FLEXCAN2_TX 0x1b0b0
|
||||
MX6QDL_PAD_SD3_DAT1__FLEXCAN2_RX 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pmic_hw300: pmic-hw300-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x1B0B0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_rtc_hw300: rtc-hw300-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x120B0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_tsc2004_hw300: tsc2004-hw300-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x120B0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D20__UART1_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D19__UART1_CTS_B 0x4001b0b1
|
||||
MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x4001b0b1
|
||||
MX6QDL_PAD_EIM_D24__GPIO3_IO24 0x4001b0b1
|
||||
MX6QDL_PAD_EIM_D25__GPIO3_IO25 0x4001b0b1
|
||||
MX6QDL_PAD_EIM_EB3__GPIO2_IO31 0x4001b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart4: uart4-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart5: uart5-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT14__UART5_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT15__UART5_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT18__UART5_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT19__UART5_CTS_B 0x4001b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1: usbh1-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x120B0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotg-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059
|
||||
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059
|
||||
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059
|
||||
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
|
||||
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
|
||||
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059
|
||||
MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x120B0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3: usdhc3-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
|
||||
MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
|
||||
MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
|
||||
MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
|
||||
MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
|
||||
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
|
||||
MX6QDL_PAD_SD3_RST__GPIO7_IO08 0x120B0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc4: usdhc4-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059
|
||||
MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059
|
||||
MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059
|
||||
MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059
|
||||
MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059
|
||||
MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059
|
||||
MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059
|
||||
MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059
|
||||
MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059
|
||||
MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
®_arm {
|
||||
vin-supply = <&sw3_reg>;
|
||||
};
|
||||
|
||||
®_soc {
|
||||
vin-supply = <&sw1_reg>;
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
uart-has-rtscts;
|
||||
dtr-gpios = <&gpio3 24 GPIO_ACTIVE_LOW>;
|
||||
dsr-gpios = <&gpio3 25 GPIO_ACTIVE_LOW>;
|
||||
dcd-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
|
||||
rng-gpios = <&gpio2 31 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart5 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart5>;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1>;
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
vbus-supply = <®_usb_otg_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
cd-gpios = <&gpio6 16 GPIO_ACTIVE_HIGH>;
|
||||
keep-power-in-suspend;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
cd-gpios = <&gpio7 8 GPIO_ACTIVE_LOW>;
|
||||
fsl,wp-controller;
|
||||
keep-power-in-suspend;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&usdhc4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc4>;
|
||||
non-removable;
|
||||
bus-width = <8>;
|
||||
no-1-8-v;
|
||||
keep-power-in-suspend;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -1,45 +1,6 @@
|
||||
/*
|
||||
* Copyright 2018 Logic PD, Inc.
|
||||
* Based on SabreSD, Copyright 2016 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* This file is dual-licensed: you can use it either under the terms
|
||||
* of the GPL or the X11 license, at your option. Note that this dual
|
||||
* licensing only applies to this file, and not this project as a
|
||||
* whole.
|
||||
*
|
||||
* a) This file is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This file is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* Or, alternatively,
|
||||
*
|
||||
* b) Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use,
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
//
|
||||
// Copyright (C) 2019 Logic PD, Inc.
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx6q.dtsi"
|
||||
@@ -47,10 +8,10 @@
|
||||
#include "imx6-logicpd-baseboard.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Logic PD i.MX6QD SOM-M3 (HDMI)";
|
||||
model = "Logic PD i.MX6QD SOM-M3";
|
||||
compatible = "fsl,imx6q";
|
||||
|
||||
backlight: backlight_lvds {
|
||||
backlight: backlight-lvds {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm3 0 20000>;
|
||||
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||
@@ -58,6 +19,16 @@
|
||||
power-supply = <®_lcd>;
|
||||
};
|
||||
|
||||
panel-lvds0 {
|
||||
compatible = "okaya,rs800480t-7x0gp";
|
||||
|
||||
port {
|
||||
panel_in_lvds0: endpoint {
|
||||
remote-endpoint = <&lvds0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
reg_lcd: regulator-lcd {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lcd_reg>;
|
||||
@@ -72,7 +43,7 @@
|
||||
startup-delay-us = <500000>;
|
||||
};
|
||||
|
||||
lcd_reset: lcd_reset {
|
||||
reg_lcd_reset: regulator-lcd-reset {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lcd_reset>;
|
||||
compatible = "regulator-fixed";
|
||||
@@ -84,57 +55,6 @@
|
||||
regulator-always-on;
|
||||
vin-supply = <®_lcd>;
|
||||
};
|
||||
|
||||
panel-lvds0 {
|
||||
compatible = "ampire,am800480b3tmqw";
|
||||
backlight = <&backlight>;
|
||||
|
||||
port {
|
||||
panel_in_lvds0: endpoint {
|
||||
remote-endpoint = <&lvds0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
ddc-i2c-bus = <&i2c3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
ili_touch: ilitouch@26 {
|
||||
compatible = "ili,ili2117a";
|
||||
reg = <0x26>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_touchscreen>;
|
||||
interrupts-extended = <&gpio1 6 IRQ_TYPE_EDGE_RISING>;
|
||||
ili2117a,poll-period = <10>;
|
||||
ili2117a,max-touch = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
®_hdmi {
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
&ldb {
|
||||
status = "okay";
|
||||
|
||||
lvds-channel@0 {
|
||||
fsl,data-mapping = "spwg";
|
||||
fsl,data-width = <24>;
|
||||
status = "okay";
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
|
||||
lvds0_out: endpoint {
|
||||
remote-endpoint = <&panel_in_lvds0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&clks {
|
||||
@@ -148,12 +68,35 @@
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD2_396M>;
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
ddc-i2c-bus = <&i2c3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ldb {
|
||||
status = "okay";
|
||||
|
||||
lvds-channel@0 {
|
||||
fsl,data-mapping = "spwg";
|
||||
fsl,data-width = <24>;
|
||||
status = "okay";
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
lvds0_out: endpoint {
|
||||
remote-endpoint = <&panel_in_lvds0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&pwm3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
®_hdmi {
|
||||
regulator-always-on; /* Without this, the level shifter on HDMI doesn't turn on */
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
@@ -165,7 +108,7 @@
|
||||
|
||||
pinctrl_lcd_reset: lcdreset {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x100b0 /* LCD_nRESET */
|
||||
MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x100b0 /* LCD_nRESET */
|
||||
>;
|
||||
};
|
||||
|
||||
@@ -175,4 +118,3 @@
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
797
arch/arm/dts/imx6q-novena.dts
Normal file
797
arch/arm/dts/imx6q-novena.dts
Normal file
@@ -0,0 +1,797 @@
|
||||
/*
|
||||
* Copyright 2015 Sutajio Ko-Usagi PTE LTD
|
||||
*
|
||||
* This file is dual-licensed: you can use it either under the terms
|
||||
* of the GPL or the X11 license, at your option. Note that this dual
|
||||
* licensing only applies to this file, and not this project as a
|
||||
* whole.
|
||||
*
|
||||
* a) This file is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This file is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public
|
||||
* License along with this file; if not, write to the Free
|
||||
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
|
||||
* MA 02110-1301 USA
|
||||
*
|
||||
* Or, alternatively,
|
||||
*
|
||||
* b) Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use,
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx6q.dtsi"
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
model = "Kosagi Novena Dual/Quad";
|
||||
compatible = "kosagi,imx6q-novena", "fsl,imx6q";
|
||||
|
||||
/* Will be filled by the bootloader */
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0>;
|
||||
};
|
||||
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc2;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart2;
|
||||
};
|
||||
|
||||
backlight: backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm1 0 10000000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_backlight_novena>;
|
||||
power-supply = <®_lvds_lcd>;
|
||||
brightness-levels = <0 3 6 12 16 24 32 48 64 96 128 192 255>;
|
||||
default-brightness-level = <12>;
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpio_keys_novena>;
|
||||
|
||||
user-button {
|
||||
label = "User Button";
|
||||
gpios = <&gpio4 14 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_POWER>;
|
||||
};
|
||||
|
||||
lid {
|
||||
label = "Lid";
|
||||
gpios = <&gpio4 12 GPIO_ACTIVE_LOW>;
|
||||
linux,input-type = <5>; /* EV_SW */
|
||||
linux,code = <0>; /* SW_LID */
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_leds_novena>;
|
||||
|
||||
heartbeat {
|
||||
label = "novena:white:panel";
|
||||
gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
};
|
||||
|
||||
panel: panel {
|
||||
compatible = "innolux,n133hse-ea1", "simple-panel";
|
||||
backlight = <&backlight>;
|
||||
};
|
||||
|
||||
reg_2p5v: regulator-2p5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "2P5V";
|
||||
regulator-min-microvolt = <2500000>;
|
||||
regulator-max-microvolt = <2500000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_3p3v: regulator-3p3v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3P3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_audio_codec: regulator-audio-codec {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "es8328-power";
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
startup-delay-us = <400000>;
|
||||
gpio = <&gpio5 17 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_display: regulator-display {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lcd-display-power";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
startup-delay-us = <200000>;
|
||||
gpio = <&gpio5 28 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_lvds_lcd: regulator-lvds-lcd {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lcd-lvds-power";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_pcie: regulator-pcie {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "pcie-bus-power";
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
gpio = <&gpio7 12 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_sata: regulator-sata {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "sata-power";
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
startup-delay-us = <10000>;
|
||||
gpio = <&gpio3 30 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "fsl,imx-audio-es8328";
|
||||
model = "imx-audio-es8328";
|
||||
ssi-controller = <&ssi1>;
|
||||
audio-codec = <&codec>;
|
||||
audio-amp-supply = <®_audio_codec>;
|
||||
jack-gpio = <&gpio5 15 GPIO_ACTIVE_HIGH>;
|
||||
audio-routing =
|
||||
"Speaker", "LOUT2",
|
||||
"Speaker", "ROUT2",
|
||||
"Speaker", "audio-amp",
|
||||
"Headphone", "ROUT1",
|
||||
"Headphone", "LOUT1",
|
||||
"LINPUT1", "Mic Jack",
|
||||
"RINPUT1", "Mic Jack",
|
||||
"Mic Jack", "Mic Bias";
|
||||
mux-int-port = <0x1>;
|
||||
mux-ext-port = <0x3>;
|
||||
};
|
||||
};
|
||||
|
||||
&audmux {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_audmux_novena>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ecspi3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi3_novena>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet_novena>;
|
||||
phy-mode = "rgmii";
|
||||
phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
|
||||
rxc-skew-ps = <3000>;
|
||||
rxdv-skew-ps = <0>;
|
||||
txc-skew-ps = <3000>;
|
||||
txen-skew-ps = <0>;
|
||||
rxd0-skew-ps = <0>;
|
||||
rxd1-skew-ps = <0>;
|
||||
rxd2-skew-ps = <0>;
|
||||
rxd3-skew-ps = <0>;
|
||||
txd0-skew-ps = <3000>;
|
||||
txd1-skew-ps = <3000>;
|
||||
txd2-skew-ps = <3000>;
|
||||
txd3-skew-ps = <3000>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hdmi_novena>;
|
||||
ddc-i2c-bus = <&i2c2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1_novena>;
|
||||
status = "okay";
|
||||
|
||||
accel: mma8452@1c {
|
||||
compatible = "fsl,mma8452";
|
||||
reg = <0x1c>;
|
||||
};
|
||||
|
||||
rtc: pcf8523@68 {
|
||||
compatible = "nxp,pcf8523";
|
||||
reg = <0x68>;
|
||||
};
|
||||
|
||||
sbs_battery: bq20z75@b {
|
||||
compatible = "sbs,sbs-battery";
|
||||
reg = <0x0b>;
|
||||
sbs,i2c-retry-count = <50>;
|
||||
};
|
||||
|
||||
touch: stmpe811@44 {
|
||||
compatible = "st,stmpe811";
|
||||
reg = <0x44>;
|
||||
irq-gpio = <&gpio5 13 GPIO_ACTIVE_HIGH>;
|
||||
id = <0>;
|
||||
blocks = <0x5>;
|
||||
irq-trigger = <0x1>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_stmpe_novena>;
|
||||
vio-supply = <®_3p3v>;
|
||||
vcc-supply = <®_3p3v>;
|
||||
|
||||
stmpe_touchscreen {
|
||||
compatible = "st,stmpe-ts";
|
||||
st,sample-time = <4>;
|
||||
st,mod-12b = <1>;
|
||||
st,ref-sel = <0>;
|
||||
st,adc-freq = <1>;
|
||||
st,ave-ctrl = <1>;
|
||||
st,touch-det-delay = <2>;
|
||||
st,settling = <2>;
|
||||
st,fraction-z = <7>;
|
||||
st,i-drive = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2_novena>;
|
||||
status = "okay";
|
||||
|
||||
pmic: pfuze100@8 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
|
||||
regulators {
|
||||
reg_sw1a: sw1a {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
reg_sw1c: sw1c {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_sw2: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_sw3a: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_sw3b: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_sw4: sw4 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
reg_swbst: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
reg_snvs: vsnvs {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vref: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen1: vgen1 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
reg_vgen2: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
reg_vgen3: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
reg_vgen4: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen5: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen6: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3_novena>;
|
||||
status = "okay";
|
||||
|
||||
codec: es8328@11 {
|
||||
compatible = "everest,es8328";
|
||||
reg = <0x11>;
|
||||
DVDD-supply = <®_audio_codec>;
|
||||
AVDD-supply = <®_audio_codec>;
|
||||
PVDD-supply = <®_audio_codec>;
|
||||
HPVDD-supply = <®_audio_codec>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_sound_novena>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO1>;
|
||||
assigned-clocks = <&clks IMX6QDL_CLK_CKO>,
|
||||
<&clks IMX6QDL_CLK_CKO1_SEL>,
|
||||
<&clks IMX6QDL_CLK_PLL4_AUDIO>,
|
||||
<&clks IMX6QDL_CLK_CKO1>;
|
||||
assigned-clock-parents = <&clks IMX6QDL_CLK_CKO1>,
|
||||
<&clks IMX6QDL_CLK_PLL4_AUDIO_DIV>,
|
||||
<&clks IMX6QDL_CLK_OSC>,
|
||||
<&clks IMX6QDL_CLK_CKO1_PODF>;
|
||||
assigned-clock-rates = <0 0 722534400 22579200>;
|
||||
};
|
||||
};
|
||||
|
||||
&kpp {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_kpp_novena>;
|
||||
linux,keymap = <
|
||||
MATRIX_KEY(1, 1, KEY_CONFIG)
|
||||
>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ldb {
|
||||
fsl,dual-channel;
|
||||
status = "okay";
|
||||
|
||||
lvds-channel@0 {
|
||||
fsl,data-mapping = "jeida";
|
||||
fsl,data-width = <24>;
|
||||
fsl,panel = <&panel>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pcie_novena>;
|
||||
reset-gpio = <&gpio3 29 GPIO_ACTIVE_LOW>;
|
||||
vpcie-supply = <®_pcie>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sata {
|
||||
target-supply = <®_sata>;
|
||||
fsl,transmit-level-mV = <1025>;
|
||||
fsl,transmit-boost-mdB = <0>;
|
||||
fsl,transmit-atten-16ths = <8>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssi1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2_novena>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3_novena>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart4_novena>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
vbus-supply = <®_usb_otg_vbus>;
|
||||
dr_mode = "otg";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg_novena>;
|
||||
disable-over-current;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_swbst>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2_novena>;
|
||||
cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
wp-gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
|
||||
bus-width = <4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3_novena>;
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_audmux_novena: audmuxgrp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0
|
||||
MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0
|
||||
MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0
|
||||
MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_backlight_novena: backlightgrp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT8__PWM1_OUT 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT10__GPIO5_IO28 0x1b0b1
|
||||
MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi3_novena: ecspi3grp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO 0x100b1
|
||||
MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI 0x100b1
|
||||
MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet_novena: enetgrp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b020
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b028
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b028
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b028
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b028
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b028
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
|
||||
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
|
||||
/* Ethernet reset */
|
||||
MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_fpga_gpio: fpgagpiogrp-novena {
|
||||
fsl,pins = <
|
||||
/* FPGA power */
|
||||
MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x1b0b1
|
||||
/* Reset */
|
||||
MX6QDL_PAD_DISP0_DAT13__GPIO5_IO07 0x1b0b1
|
||||
/* FPGA GPIOs */
|
||||
MX6QDL_PAD_EIM_DA0__GPIO3_IO00 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA1__GPIO3_IO01 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA2__GPIO3_IO02 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA3__GPIO3_IO03 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA4__GPIO3_IO04 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA5__GPIO3_IO05 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA6__GPIO3_IO06 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA7__GPIO3_IO07 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA8__GPIO3_IO08 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA10__GPIO3_IO10 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA11__GPIO3_IO11 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA12__GPIO3_IO12 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA13__GPIO3_IO13 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA14__GPIO3_IO14 0x1b0b1
|
||||
MX6QDL_PAD_EIM_DA15__GPIO3_IO15 0x1b0b1
|
||||
MX6QDL_PAD_EIM_A16__GPIO2_IO22 0x1b0b1
|
||||
MX6QDL_PAD_EIM_A17__GPIO2_IO21 0x1b0b1
|
||||
MX6QDL_PAD_EIM_A18__GPIO2_IO20 0x1b0b1
|
||||
MX6QDL_PAD_EIM_CS0__GPIO2_IO23 0x1b0b1
|
||||
MX6QDL_PAD_EIM_CS1__GPIO2_IO24 0x1b0b1
|
||||
MX6QDL_PAD_EIM_LBA__GPIO2_IO27 0x1b0b1
|
||||
MX6QDL_PAD_EIM_OE__GPIO2_IO25 0x1b0b1
|
||||
MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x1b0b1
|
||||
MX6QDL_PAD_EIM_WAIT__GPIO5_IO00 0x1b0b1
|
||||
MX6QDL_PAD_EIM_BCLK__GPIO6_IO31 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_fpga_eim: fpgaeimgrp-novena {
|
||||
fsl,pins = <
|
||||
/* FPGA power */
|
||||
MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x1b0b1
|
||||
/* Reset */
|
||||
MX6QDL_PAD_DISP0_DAT13__GPIO5_IO07 0x1b0b1
|
||||
/* FPGA GPIOs */
|
||||
MX6QDL_PAD_EIM_DA0__EIM_AD00 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA1__EIM_AD01 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA2__EIM_AD02 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA3__EIM_AD03 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA4__EIM_AD04 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA5__EIM_AD05 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA6__EIM_AD06 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA7__EIM_AD07 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA8__EIM_AD08 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA9__EIM_AD09 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA10__EIM_AD10 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA11__EIM_AD11 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA12__EIM_AD12 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA13__EIM_AD13 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA14__EIM_AD14 0xb0f1
|
||||
MX6QDL_PAD_EIM_DA15__EIM_AD15 0xb0f1
|
||||
MX6QDL_PAD_EIM_A16__EIM_ADDR16 0xb0f1
|
||||
MX6QDL_PAD_EIM_A17__EIM_ADDR17 0xb0f1
|
||||
MX6QDL_PAD_EIM_A18__EIM_ADDR18 0xb0f1
|
||||
MX6QDL_PAD_EIM_CS0__EIM_CS0_B 0xb0f1
|
||||
MX6QDL_PAD_EIM_CS1__EIM_CS1_B 0xb0f1
|
||||
MX6QDL_PAD_EIM_LBA__EIM_LBA_B 0xb0f1
|
||||
MX6QDL_PAD_EIM_OE__EIM_OE_B 0xb0f1
|
||||
MX6QDL_PAD_EIM_RW__EIM_RW 0xb0f1
|
||||
MX6QDL_PAD_EIM_WAIT__EIM_WAIT_B 0xb0f1
|
||||
MX6QDL_PAD_EIM_BCLK__EIM_BCLK 0xb0f1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_keys_novena: gpiokeysgrp-novena {
|
||||
fsl,pins = <
|
||||
/* User button */
|
||||
MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x1b0b0
|
||||
/* PCIe Wakeup */
|
||||
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1f0e0
|
||||
/* Lid switch */
|
||||
MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hdmi_novena: hdmigrp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0
|
||||
MX6QDL_PAD_EIM_A24__GPIO5_IO04 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_novena: i2c1grp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2_novena: i2c2grp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D16__I2C2_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_novena: i2c3grp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_kpp_novena: kppgrp-novena {
|
||||
fsl,pins = <
|
||||
/* Front panel button */
|
||||
MX6QDL_PAD_KEY_ROW1__KEY_ROW1 0x1b0b1
|
||||
/* Fake column driver, not connected */
|
||||
MX6QDL_PAD_KEY_COL1__KEY_COL1 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_leds_novena: ledsgrp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pcie_novena: pciegrp-novena {
|
||||
fsl,pins = <
|
||||
/* Reset */
|
||||
MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x1b0b1
|
||||
/* Power On */
|
||||
MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b0b1
|
||||
/* Wifi kill */
|
||||
MX6QDL_PAD_EIM_A22__GPIO2_IO16 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sata_novena: satagrp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_senoko_novena: senokogrp-novena {
|
||||
fsl,pins = <
|
||||
/* Senoko IRQ line */
|
||||
MX6QDL_PAD_SD1_CLK__GPIO1_IO20 0x13048
|
||||
/* Senoko reset line */
|
||||
MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sound_novena: soundgrp-novena {
|
||||
fsl,pins = <
|
||||
/* Audio power regulator */
|
||||
MX6QDL_PAD_DISP0_DAT23__GPIO5_IO17 0x1b0b1
|
||||
/* Headphone plug */
|
||||
MX6QDL_PAD_DISP0_DAT21__GPIO5_IO15 0x1b0b1
|
||||
MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x000b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_stmpe_novena: stmpegrp-novena {
|
||||
fsl,pins = <
|
||||
/* Touchscreen interrupt */
|
||||
MX6QDL_PAD_DISP0_DAT19__GPIO5_IO13 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2_novena: uart2grp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart3_novena: uart3grp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart4_novena: uart4grp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg_novena: usbotggrp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_novena: usdhc2grp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170f9
|
||||
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100f9
|
||||
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170f9
|
||||
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170f9
|
||||
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170f9
|
||||
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170f9
|
||||
/* Write protect */
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b1
|
||||
/* Card detect */
|
||||
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3_novena: usdhc3grp-novena {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170f9
|
||||
MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100f9
|
||||
MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170f9
|
||||
MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170f9
|
||||
MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170f9
|
||||
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170f9
|
||||
>;
|
||||
};
|
||||
};
|
||||
23
arch/arm/dts/imx6q-wandboard-revb1.dts
Normal file
23
arch/arm/dts/imx6q-wandboard-revb1.dts
Normal file
@@ -0,0 +1,23 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright 2013 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* Author: Fabio Estevam <fabio.estevam@freescale.com>
|
||||
*/
|
||||
/dts-v1/;
|
||||
#include "imx6q.dtsi"
|
||||
#include "imx6qdl-wandboard-revb1.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Wandboard i.MX6 Quad Board rev B1";
|
||||
compatible = "wand,imx6q-wandboard", "fsl,imx6q";
|
||||
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x80000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&sata {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -4,6 +4,10 @@
|
||||
*/
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
usb0 = &usbotg;
|
||||
};
|
||||
|
||||
soc {
|
||||
u-boot,dm-spl;
|
||||
|
||||
|
||||
@@ -1,13 +1,8 @@
|
||||
/*
|
||||
* Copyright 2013 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* Author: Fabio Estevam <fabio.estevam@freescale.com>
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
//
|
||||
// Copyright 2013 Freescale Semiconductor, Inc.
|
||||
//
|
||||
// Author: Fabio Estevam <fabio.estevam@freescale.com>
|
||||
|
||||
#include "imx6qdl-wandboard.dtsi"
|
||||
|
||||
|
||||
195
arch/arm/dts/imx6qdl-wandboard-revd1.dtsi
Normal file
195
arch/arm/dts/imx6qdl-wandboard-revd1.dtsi
Normal file
@@ -0,0 +1,195 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
//
|
||||
// Copyright 2013 Freescale Semiconductor, Inc.
|
||||
//
|
||||
// Author: Fabio Estevam <fabio.estevam@freescale.com>
|
||||
|
||||
#include "imx6qdl-wandboard.dtsi"
|
||||
|
||||
/ {
|
||||
reg_eth_phy: regulator-eth-phy {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "ETH_PHY";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio7 13 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
ddc-i2c-bus = <&i2c2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
status = "okay";
|
||||
|
||||
pmic: pfuze100@8 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
|
||||
regulators {
|
||||
sw1a_reg: sw1ab {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw1c_reg: sw1c {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw2_reg: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3b_reg: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw4_reg: sw4 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
swbst_reg: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
};
|
||||
|
||||
snvs_reg: vsnvs {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vref_reg: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen1_reg: vgen1 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen2_reg: vgen2 {
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen3_reg: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen6_reg: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&fec {
|
||||
phy-supply = <®_eth_phy>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
imx6qdl-wandboard {
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D22__USB_OTG_PWR 0x80000000 /* USB Power Enable */
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 /* USDHC1 CD */
|
||||
MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x80000000 /* uSDHC3 CD */
|
||||
MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x1f0b1 /* RGMII PHY reset */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
|
||||
MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_GPIO_16__I2C3_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_spdif: spdifgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_19__SPDIF_OUT 0x1b0b0
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
bus-width = <4>;
|
||||
no-1-8-v;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -8,6 +8,14 @@
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "fsl,imx6-wandboard-sgtl5000",
|
||||
"fsl,imx-audio-sgtl5000";
|
||||
@@ -90,107 +98,6 @@
|
||||
VDDIO-supply = <®_3p3v>;
|
||||
lrclk-strength = <3>;
|
||||
};
|
||||
|
||||
pmic: pfuze100@8 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
|
||||
regulators {
|
||||
sw1a_reg: sw1ab {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw1c_reg: sw1c {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw2_reg: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3b_reg: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw4_reg: sw4 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
swbst_reg: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
};
|
||||
|
||||
snvs_reg: vsnvs {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vref_reg: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen1_reg: vgen1 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen2_reg: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen3_reg: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen6_reg: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
@@ -321,7 +228,7 @@
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio3 29 GPIO_ACTIVE_LOW>;
|
||||
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
23
arch/arm/dts/imx6qp-wandboard-revd1.dts
Normal file
23
arch/arm/dts/imx6qp-wandboard-revd1.dts
Normal file
@@ -0,0 +1,23 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright 2013 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* Author: Fabio Estevam <fabio.estevam@freescale.com>
|
||||
*/
|
||||
/dts-v1/;
|
||||
#include "imx6qp.dtsi"
|
||||
#include "imx6qdl-wandboard-revd1.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Wandboard i.MX6 QuadPlus Board revD1";
|
||||
compatible = "wand,imx6qp-wandboard", "fsl,imx6qp";
|
||||
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x80000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&sata {
|
||||
status = "okay";
|
||||
};
|
||||
578
arch/arm/dts/imx6sx-softing-vining-2000.dts
Normal file
578
arch/arm/dts/imx6sx-softing-vining-2000.dts
Normal file
@@ -0,0 +1,578 @@
|
||||
/*
|
||||
* Copyright (C) 2016 Christoph Fritz <chf.fritz@googlemail.com>
|
||||
*
|
||||
* 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 <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include "imx6sx.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Softing VIN|ING 2000";
|
||||
compatible = "samtec,imx6sx-vining-2000", "fsl,imx6sx";
|
||||
|
||||
aliases {
|
||||
mmc0 = &usdhc4;
|
||||
mmc1 = &usdhc2;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
memory@80000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x80000000 0x40000000>;
|
||||
};
|
||||
|
||||
reg_usb_otg1_vbus: regulator-usb_otg1_vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg1_vbus";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usb_otg1>;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_peri_3v3: regulator-peri_3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "peri_3v3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
pwmleds {
|
||||
compatible = "pwm-leds";
|
||||
|
||||
red {
|
||||
label = "red";
|
||||
max-brightness = <255>;
|
||||
pwms = <&pwm6 0 50000>;
|
||||
};
|
||||
|
||||
green {
|
||||
label = "green";
|
||||
max-brightness = <255>;
|
||||
pwms = <&pwm2 0 50000>;
|
||||
};
|
||||
|
||||
blue {
|
||||
label = "blue";
|
||||
max-brightness = <255>;
|
||||
pwms = <&pwm1 0 50000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&adc1 {
|
||||
vref-supply = <®_peri_3v3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&cpu0 {
|
||||
/*
|
||||
* This board has a shared rail of reg_arm and reg_soc (supplied by
|
||||
* sw1a_reg) which is modeled below, but still this module behaves
|
||||
* unstable without higher voltages. Hence, set higher voltages here.
|
||||
*/
|
||||
operating-points = <
|
||||
/* kHz uV */
|
||||
996000 1250000
|
||||
792000 1175000
|
||||
396000 1175000
|
||||
198000 1175000
|
||||
>;
|
||||
fsl,soc-operating-points = <
|
||||
/* ARM kHz SOC uV */
|
||||
996000 1250000
|
||||
792000 1175000
|
||||
396000 1175000
|
||||
198000 1175000
|
||||
>;
|
||||
};
|
||||
|
||||
&ecspi4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi4>;
|
||||
cs-gpios = <&gpio7 4 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet1>;
|
||||
phy-supply = <®_peri_3v3>;
|
||||
phy-reset-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <5>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <ðphy0>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy0: ethernet0-phy@0 {
|
||||
reg = <0>;
|
||||
max-speed = <100>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&fec2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet2>;
|
||||
phy-supply = <®_peri_3v3>;
|
||||
phy-reset-gpios = <&gpio5 21 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <5>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <ðphy1>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy1: ethernet1-phy@0 {
|
||||
reg = <0>;
|
||||
max-speed = <100>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <19 IRQ_TYPE_LEVEL_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&flexcan1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&flexcan2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
status = "okay";
|
||||
|
||||
proximity: sx9500@28 {
|
||||
compatible = "semtech,sx9500";
|
||||
reg = <0x28>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_sx9500>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
|
||||
reset-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
pmic: pfuze100@8 {
|
||||
compatible = "fsl,pfuze200";
|
||||
reg = <0x08>;
|
||||
|
||||
regulators {
|
||||
sw1a_reg: sw1ab {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw2_reg: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3b_reg: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
snvs_reg: vsnvs {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vref_reg: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen1_reg: vgen1 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen2_reg: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen3_reg: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen6_reg: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpios>;
|
||||
|
||||
pinctrl_ecspi4: ecspi4grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_SD3_CLK__ECSPI4_SCLK 0x130b1
|
||||
MX6SX_PAD_SD3_DATA3__ECSPI4_MISO 0x130b1
|
||||
MX6SX_PAD_SD3_CMD__ECSPI4_MOSI 0x130b1
|
||||
MX6SX_PAD_SD3_DATA2__GPIO7_IO_4 0x30b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet1: enet1grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_RGMII1_RD0__ENET1_RX_DATA_0 0x30c1
|
||||
MX6SX_PAD_RGMII1_RD1__ENET1_RX_DATA_1 0x30c1
|
||||
MX6SX_PAD_RGMII1_TD0__ENET1_TX_DATA_0 0xa0f9
|
||||
MX6SX_PAD_RGMII1_TD1__ENET1_TX_DATA_1 0xa0f9
|
||||
MX6SX_PAD_RGMII1_RX_CTL__ENET1_RX_EN 0x30c1
|
||||
MX6SX_PAD_RGMII1_TX_CTL__ENET1_TX_EN 0xa0f9
|
||||
MX6SX_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4000a038
|
||||
/* LAN8720 PHY Reset */
|
||||
MX6SX_PAD_RGMII1_TD3__GPIO5_IO_9 0x10b0
|
||||
/* MDIO */
|
||||
MX6SX_PAD_ENET1_MDC__ENET1_MDC 0xa0f9
|
||||
MX6SX_PAD_ENET1_MDIO__ENET1_MDIO 0xa0f9
|
||||
/* IRQ from PHY */
|
||||
MX6SX_PAD_KEY_ROW2__GPIO2_IO_17 0x10b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet2: enet2grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_RGMII2_TD0__ENET2_TX_DATA_0 0x1b0b0
|
||||
MX6SX_PAD_RGMII2_TD1__ENET2_TX_DATA_1 0x1b0b0
|
||||
MX6SX_PAD_RGMII2_RD0__ENET2_RX_DATA_0 0x1b0b0
|
||||
MX6SX_PAD_RGMII2_RD1__ENET2_RX_DATA_1 0x1b0b0
|
||||
MX6SX_PAD_RGMII2_RX_CTL__ENET2_RX_EN 0x1b0b0
|
||||
MX6SX_PAD_RGMII2_TX_CTL__ENET2_TX_EN 0x1b0b0
|
||||
MX6SX_PAD_ENET2_TX_CLK__ENET2_REF_CLK2 0x4000a038
|
||||
/* LAN8720 PHY Reset */
|
||||
MX6SX_PAD_RGMII2_TD3__GPIO5_IO_21 0x10b0
|
||||
/* MDIO */
|
||||
MX6SX_PAD_ENET1_COL__ENET2_MDC 0xa0f9
|
||||
MX6SX_PAD_ENET1_CRS__ENET2_MDIO 0xa0f9
|
||||
/* IRQ from PHY */
|
||||
MX6SX_PAD_KEY_ROW4__GPIO2_IO_19 0x10b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan1: flexcan1grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_QSPI1B_DQS__CAN1_TX 0x1b0b0
|
||||
MX6SX_PAD_QSPI1A_SS1_B__CAN1_RX 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan2: flexcan2grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_QSPI1B_SS1_B__CAN2_RX 0x1b0b0
|
||||
MX6SX_PAD_QSPI1A_DQS__CAN2_TX 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpios: gpiosgrp {
|
||||
fsl,pins = <
|
||||
/* reset external uC */
|
||||
MX6SX_PAD_QSPI1A_DATA3__GPIO4_IO_19 0x10b0
|
||||
/* IRQ from external uC */
|
||||
MX6SX_PAD_KEY_ROW0__GPIO2_IO_15 0x10b0
|
||||
/* overcurrent detection */
|
||||
MX6SX_PAD_GPIO1_IO08__GPIO1_IO_8 0x10b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_GPIO1_IO01__I2C1_SDA 0x4001b8b1
|
||||
MX6SX_PAD_GPIO1_IO00__I2C1_SCL 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_NAND_ALE__I2C3_SDA 0x4001b8b1
|
||||
MX6SX_PAD_NAND_CLE__I2C3_SCL 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm1: pwm1grp-1 {
|
||||
fsl,pins = <
|
||||
/* blue LED */
|
||||
MX6SX_PAD_RGMII2_RD3__PWM1_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm2: pwm2grp-1 {
|
||||
fsl,pins = <
|
||||
/* green LED */
|
||||
MX6SX_PAD_RGMII2_RD2__PWM2_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm6: pwm6grp-1 {
|
||||
fsl,pins = <
|
||||
/* red LED */
|
||||
MX6SX_PAD_RGMII2_TD2__PWM6_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sx9500: sx9500grp {
|
||||
fsl,pins = <
|
||||
/* Reset */
|
||||
MX6SX_PAD_KEY_COL0__GPIO2_IO_10 0x838
|
||||
/* IRQ */
|
||||
MX6SX_PAD_KEY_ROW1__GPIO2_IO_16 0x70e0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_GPIO1_IO04__UART1_TX 0x1b0b1
|
||||
MX6SX_PAD_GPIO1_IO05__UART1_RX 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_GPIO1_IO06__UART2_TX 0x1b0b1
|
||||
MX6SX_PAD_GPIO1_IO07__UART2_RX 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usb_otg1: usbotg1grp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_GPIO1_IO09__GPIO1_IO_9 0x10b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usb_otg1_id: usbotg1idgrp {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_GPIO1_IO10__ANATOP_OTG1_ID 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_50mhz: usdhc2grp-50mhz {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_SD2_CLK__USDHC2_CLK 0x10059
|
||||
MX6SX_PAD_SD2_CMD__USDHC2_CMD 0x17059
|
||||
MX6SX_PAD_SD2_DATA0__USDHC2_DATA0 0x17059
|
||||
MX6SX_PAD_SD2_DATA1__USDHC2_DATA1 0x17059
|
||||
MX6SX_PAD_SD2_DATA2__USDHC2_DATA2 0x17059
|
||||
MX6SX_PAD_SD2_DATA3__USDHC2_DATA3 0x17059
|
||||
MX6SX_PAD_LCD1_VSYNC__GPIO3_IO_28 0x1b000
|
||||
MX6SX_PAD_LCD1_HSYNC__GPIO3_IO_26 0x10b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_100mhz: usdhc2grp-100mhz {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_SD2_CLK__USDHC2_CLK 0x100b9
|
||||
MX6SX_PAD_SD2_CMD__USDHC2_CMD 0x170b9
|
||||
MX6SX_PAD_SD2_DATA0__USDHC2_DATA0 0x170b9
|
||||
MX6SX_PAD_SD2_DATA1__USDHC2_DATA1 0x170b9
|
||||
MX6SX_PAD_SD2_DATA2__USDHC2_DATA2 0x170b9
|
||||
MX6SX_PAD_SD2_DATA3__USDHC2_DATA3 0x170b9
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_200mhz: usdhc2grp-200mhz {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_SD2_CLK__USDHC2_CLK 0x100f9
|
||||
MX6SX_PAD_SD2_CMD__USDHC2_CMD 0x170f9
|
||||
MX6SX_PAD_SD2_DATA0__USDHC2_DATA0 0x170f9
|
||||
MX6SX_PAD_SD2_DATA1__USDHC2_DATA1 0x170f9
|
||||
MX6SX_PAD_SD2_DATA2__USDHC2_DATA2 0x170f9
|
||||
MX6SX_PAD_SD2_DATA3__USDHC2_DATA3 0x170f9
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc4_50mhz: usdhc4grp-50mhz {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_SD4_CLK__USDHC4_CLK 0x10059
|
||||
MX6SX_PAD_SD4_CMD__USDHC4_CMD 0x17059
|
||||
MX6SX_PAD_SD4_DATA0__USDHC4_DATA0 0x17059
|
||||
MX6SX_PAD_SD4_DATA1__USDHC4_DATA1 0x17059
|
||||
MX6SX_PAD_SD4_DATA2__USDHC4_DATA2 0x17059
|
||||
MX6SX_PAD_SD4_DATA3__USDHC4_DATA3 0x17059
|
||||
MX6SX_PAD_SD4_DATA4__USDHC4_DATA4 0x17059
|
||||
MX6SX_PAD_SD4_DATA5__USDHC4_DATA5 0x17059
|
||||
MX6SX_PAD_SD4_DATA6__USDHC4_DATA6 0x17059
|
||||
MX6SX_PAD_SD4_DATA7__USDHC4_DATA7 0x17059
|
||||
MX6SX_PAD_SD4_RESET_B__USDHC4_RESET_B 0x17068
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc4_100mhz: usdhc4-100mhz {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_SD4_CLK__USDHC4_CLK 0x100b9
|
||||
MX6SX_PAD_SD4_CMD__USDHC4_CMD 0x170b9
|
||||
MX6SX_PAD_SD4_DATA0__USDHC4_DATA0 0x170b9
|
||||
MX6SX_PAD_SD4_DATA1__USDHC4_DATA1 0x170b9
|
||||
MX6SX_PAD_SD4_DATA2__USDHC4_DATA2 0x170b9
|
||||
MX6SX_PAD_SD4_DATA3__USDHC4_DATA3 0x170b9
|
||||
MX6SX_PAD_SD4_DATA4__USDHC4_DATA4 0x170b9
|
||||
MX6SX_PAD_SD4_DATA5__USDHC4_DATA5 0x170b9
|
||||
MX6SX_PAD_SD4_DATA6__USDHC4_DATA6 0x170b9
|
||||
MX6SX_PAD_SD4_DATA7__USDHC4_DATA7 0x170b9
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc4_200mhz: usdhc4-200mhz {
|
||||
fsl,pins = <
|
||||
MX6SX_PAD_SD4_CLK__USDHC4_CLK 0x100f9
|
||||
MX6SX_PAD_SD4_CMD__USDHC4_CMD 0x170f9
|
||||
MX6SX_PAD_SD4_DATA0__USDHC4_DATA0 0x170f9
|
||||
MX6SX_PAD_SD4_DATA1__USDHC4_DATA1 0x170f9
|
||||
MX6SX_PAD_SD4_DATA2__USDHC4_DATA2 0x170f9
|
||||
MX6SX_PAD_SD4_DATA3__USDHC4_DATA3 0x170f9
|
||||
MX6SX_PAD_SD4_DATA4__USDHC4_DATA4 0x170f9
|
||||
MX6SX_PAD_SD4_DATA5__USDHC4_DATA5 0x170f9
|
||||
MX6SX_PAD_SD4_DATA6__USDHC4_DATA6 0x170f9
|
||||
MX6SX_PAD_SD4_DATA7__USDHC4_DATA7 0x170f9
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&pwm1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm6 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm6>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
®_arm {
|
||||
vin-supply = <&sw1a_reg>;
|
||||
};
|
||||
|
||||
®_soc {
|
||||
vin-supply = <&sw1a_reg>;
|
||||
};
|
||||
|
||||
&snvs_poweroff {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg1 {
|
||||
vbus-supply = <®_usb_otg1_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usb_otg1_id>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg2 {
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc2_50mhz>;
|
||||
pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
|
||||
pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
|
||||
cd-gpios = <&gpio3 28 GPIO_ACTIVE_LOW>;
|
||||
keep-power-in-suspend;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc4 {
|
||||
/* hs200-mode is currently unsupported because Vccq is on 3.1V, but
|
||||
* not on necessary 1.8V.
|
||||
*/
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc4_50mhz>;
|
||||
pinctrl-1 = <&pinctrl_usdhc4_100mhz>;
|
||||
pinctrl-2 = <&pinctrl_usdhc4_200mhz>;
|
||||
bus-width = <8>;
|
||||
keep-power-in-suspend;
|
||||
non-removable;
|
||||
cap-mmc-hw-reset;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -16,7 +16,8 @@
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6ul-pcl063.dtsi"
|
||||
#include "imx6ul.dtsi"
|
||||
#include "pcl063-common.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Phytec phyBOARD-i.MX6UL-Segin SBC";
|
||||
@@ -24,6 +25,10 @@
|
||||
"fsl,imx6ul";
|
||||
};
|
||||
|
||||
&gpmi {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
i2c_rtc: rtc@68 {
|
||||
compatible = "microcrystal,rv4162";
|
||||
|
||||
@@ -220,7 +220,7 @@
|
||||
|
||||
/* Colibri USBC */
|
||||
&usbotg1 {
|
||||
dr_mode = "otg";
|
||||
dr_mode = "host";
|
||||
srp-disable;
|
||||
hnp-disable;
|
||||
adp-disable;
|
||||
|
||||
70
arch/arm/dts/imx6ull-phycore-segin.dts
Normal file
70
arch/arm/dts/imx6ull-phycore-segin.dts
Normal file
@@ -0,0 +1,70 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2019 Parthiban Nallathambi <parthitce@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6ull.dtsi"
|
||||
#include "pcl063-common.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Phytec phyBOARD-i.MX6ULL-Segin SBC";
|
||||
compatible = "phytec,phyboard-imx6ull-segin", "phytec,imx6ull-pcl063",
|
||||
"fsl,imx6ull";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
i2c_rtc: rtc@68 {
|
||||
compatible = "microcrystal,rv4162";
|
||||
reg = <0x68>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&uart5 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart5>;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usb_otg1_id>;
|
||||
dr_mode = "otg";
|
||||
srp-disable;
|
||||
hnp-disable;
|
||||
adp-disable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg2 {
|
||||
dr_mode = "host";
|
||||
disable-over-current;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
|
||||
pinctrl_uart5: uart5grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART5_TX_DATA__UART5_DCE_TX 0x1b0b1
|
||||
MX6UL_PAD_UART5_RX_DATA__UART5_DCE_RX 0x1b0b1
|
||||
MX6UL_PAD_GPIO1_IO08__UART5_DCE_RTS 0x1b0b1
|
||||
MX6UL_PAD_GPIO1_IO09__UART5_DCE_CTS 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usb_otg1_id: usbotg1idgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO00__ANATOP_OTG1_ID 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
};
|
||||
34
arch/arm/dts/imx6ull-u-boot.dtsi
Normal file
34
arch/arm/dts/imx6ull-u-boot.dtsi
Normal file
@@ -0,0 +1,34 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2019 Parthiban Nallathambi <parthitce@gmail.com>
|
||||
*/
|
||||
|
||||
/ {
|
||||
soc {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
};
|
||||
|
||||
&aips1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&aips2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&aips3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio4 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
@@ -11,13 +11,34 @@
|
||||
compatible = "toradex,imx7d-colibri-emmc", "fsl,imx7d";
|
||||
|
||||
aliases {
|
||||
u-boot,dm-pre-reloc;
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc1;
|
||||
display1 = &lcdif;
|
||||
usb0 = &usbotg1; /* required for ums */
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
reg_5v0: regulator-5v0 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "5V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
|
||||
reg_usbh_vbus: regulator-usbh-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh_reg>;
|
||||
regulator-name = "VCC_USB[1-4]";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
|
||||
vin-supply = <®_5v0>;
|
||||
};
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
@@ -44,4 +65,30 @@
|
||||
MX7D_PAD_SD3_STROBE__SD3_STROBE 0x19
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh_reg: gpio-usbh-vbus {
|
||||
fsl,pins = <
|
||||
MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
/* Colibri USBC */
|
||||
&usbotg1 {
|
||||
/*
|
||||
* usbotg1 on Colibri iMX7 can function in both host/otg modes.
|
||||
* Gadget stack currently does not look at this at all while
|
||||
* the host stack refuses to bind/load if it is not set to host
|
||||
* (it obviously won't be enumerated during usb start invocation
|
||||
* if dr_mode = "otg")
|
||||
*/
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri USBH */
|
||||
&usbotg2 {
|
||||
dr_mode = "host";
|
||||
vbus-supply = <®_usbh_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -13,6 +13,28 @@
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
aliases {
|
||||
usb0 = &usbotg1; /* required for ums */
|
||||
};
|
||||
|
||||
reg_5v0: regulator-5v0 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "5V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
|
||||
reg_usbh_vbus: regulator-usbh-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh_reg>;
|
||||
regulator-name = "VCC_USB[1-4]";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
|
||||
vin-supply = <®_5v0>;
|
||||
};
|
||||
};
|
||||
|
||||
&gpmi {
|
||||
@@ -43,4 +65,30 @@
|
||||
MX7D_PAD_SD3_DATA7__NAND_DATA07 0x71
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh_reg: gpio-usbh-vbus {
|
||||
fsl,pins = <
|
||||
MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
/* Colibri USBC */
|
||||
&usbotg1 {
|
||||
/*
|
||||
* usbotg1 on Colibri iMX7 can function in both host/otg modes.
|
||||
* Gadget stack currently does not look at this at all while
|
||||
* the host stack refuses to bind/load if it is not set to host
|
||||
* (it obviously won't be enumerated during usb start invocation
|
||||
* if dr_mode = "otg")
|
||||
*/
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri USBH */
|
||||
&usbotg2 {
|
||||
dr_mode = "host";
|
||||
vbus-supply = <®_usbh_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -111,3 +111,31 @@
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&lcdif {
|
||||
u-boot,dm-pre-reloc;
|
||||
status = "okay";
|
||||
|
||||
display-timings {
|
||||
native-mode = <&timing_vga>;
|
||||
|
||||
/* Standard VGA timing */
|
||||
timing_vga: 640x480 {
|
||||
u-boot,dm-pre-reloc;
|
||||
clock-frequency = <25175000>;
|
||||
hactive = <640>;
|
||||
vactive = <480>;
|
||||
hback-porch = <48>;
|
||||
hfront-porch = <16>;
|
||||
vback-porch = <33>;
|
||||
vfront-porch = <10>;
|
||||
hsync-len = <96>;
|
||||
vsync-len = <2>;
|
||||
|
||||
de-active = <1>;
|
||||
hsync-active = <0>;
|
||||
vsync-active = <0>;
|
||||
pixelclk-active = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -406,8 +406,7 @@
|
||||
|
||||
sata: sata@3200000 {
|
||||
compatible = "fsl,ls1021a-ahci";
|
||||
reg = <0x0 0x3200000 0x0 0x10000 /* ccsr sata base */
|
||||
0x0 0x20220520 0x0 0x4>; /* ecc sata addr*/
|
||||
reg = <0x3200000 0x10000 0x20220520 0x4>;
|
||||
reg-names = "sata-base", "ecc-addr";
|
||||
interrupts = <0 101 4>;
|
||||
status = "disabled";
|
||||
|
||||
216
arch/arm/dts/meson-g12a-u-boot.dtsi
Normal file
216
arch/arm/dts/meson-g12a-u-boot.dtsi
Normal file
@@ -0,0 +1,216 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2019 BayLibre, SAS.
|
||||
* Author: Neil Armstrong <narmstrong@baylibre.com>
|
||||
*/
|
||||
|
||||
/ {
|
||||
soc {
|
||||
ethmac: ethernet@ff3f0000 {
|
||||
compatible = "amlogic,meson-axg-dwmac", "snps,dwmac-3.710",
|
||||
"snps,dwmac";
|
||||
reg = <0x0 0xff3f0000 0x0 0x10000
|
||||
0x0 0xff634540 0x0 0x8>;
|
||||
interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "macirq";
|
||||
clocks = <&clkc CLKID_ETH>,
|
||||
<&clkc CLKID_FCLK_DIV2>,
|
||||
<&clkc CLKID_MPLL2>;
|
||||
clock-names = "stmmaceth", "clkin0", "clkin1";
|
||||
status = "disabled";
|
||||
|
||||
mdio0: mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "snps,dwmac-mdio";
|
||||
};
|
||||
};
|
||||
|
||||
sd_emmc_a: sd@ffe03000 {
|
||||
compatible = "amlogic,meson-axg-mmc";
|
||||
reg = <0x0 0xffe03000 0x0 0x800>;
|
||||
interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "disabled";
|
||||
clocks = <&clkc CLKID_SD_EMMC_A>,
|
||||
<&clkc CLKID_SD_EMMC_A_CLK0>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
resets = <&reset RESET_SD_EMMC_A>;
|
||||
};
|
||||
|
||||
sd_emmc_b: sd@ffe05000 {
|
||||
compatible = "amlogic,meson-axg-mmc";
|
||||
reg = <0x0 0xffe05000 0x0 0x800>;
|
||||
interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "disabled";
|
||||
clocks = <&clkc CLKID_SD_EMMC_B>,
|
||||
<&clkc CLKID_SD_EMMC_B_CLK0>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
resets = <&reset RESET_SD_EMMC_B>;
|
||||
};
|
||||
|
||||
sd_emmc_c: mmc@ffe07000 {
|
||||
compatible = "amlogic,meson-axg-mmc";
|
||||
reg = <0x0 0xffe07000 0x0 0x800>;
|
||||
interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "disabled";
|
||||
clocks = <&clkc CLKID_SD_EMMC_C>,
|
||||
<&clkc CLKID_SD_EMMC_C_CLK0>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
resets = <&reset RESET_SD_EMMC_C>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&periphs_pinctrl {
|
||||
emmc_pins: emmc {
|
||||
mux {
|
||||
groups = "emmc_nand_d0",
|
||||
"emmc_nand_d1",
|
||||
"emmc_nand_d2",
|
||||
"emmc_nand_d3",
|
||||
"emmc_nand_d4",
|
||||
"emmc_nand_d5",
|
||||
"emmc_nand_d6",
|
||||
"emmc_nand_d7",
|
||||
"emmc_clk",
|
||||
"emmc_cmd";
|
||||
function = "emmc";
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
emmc_ds_pins: emmc-ds {
|
||||
mux {
|
||||
groups = "emmc_nand_ds";
|
||||
function = "emmc";
|
||||
bias-pull-down;
|
||||
};
|
||||
};
|
||||
|
||||
emmc_clk_gate_pins: emmc_clk_gate {
|
||||
mux {
|
||||
groups = "BOOT_8";
|
||||
function = "gpio_periphs";
|
||||
bias-pull-down;
|
||||
};
|
||||
};
|
||||
|
||||
eth_leds_pins: eth-leds {
|
||||
mux {
|
||||
groups = "eth_link_led",
|
||||
"eth_act_led";
|
||||
function = "eth";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
eth_rmii_pins: eth-rmii {
|
||||
mux {
|
||||
groups = "eth_mdio",
|
||||
"eth_mdc",
|
||||
"eth_rgmii_rx_clk",
|
||||
"eth_rx_dv",
|
||||
"eth_rxd0",
|
||||
"eth_rxd1",
|
||||
"eth_txen",
|
||||
"eth_txd0",
|
||||
"eth_txd1";
|
||||
function = "eth";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
eth_rgmii_pins: eth-rgmii {
|
||||
mux {
|
||||
groups = "eth_rxd2_rgmii",
|
||||
"eth_rxd3_rgmii",
|
||||
"eth_rgmii_tx_clk",
|
||||
"eth_txd2_rgmii",
|
||||
"eth_txd3_rgmii";
|
||||
function = "eth";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
sdcard_c_pins: sdcard_c {
|
||||
mux {
|
||||
groups = "sdcard_d0_c",
|
||||
"sdcard_d1_c",
|
||||
"sdcard_d2_c",
|
||||
"sdcard_d3_c",
|
||||
"sdcard_cmd_c",
|
||||
"sdcard_clk_c";
|
||||
function = "sdcard";
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
sdcard_clk_gate_c_pins: sdcard_clk_gate_c {
|
||||
mux {
|
||||
groups = "GPIOC_4";
|
||||
function = "gpio_periphs";
|
||||
bias-pull-down;
|
||||
};
|
||||
};
|
||||
|
||||
sdcard_z_pins: sdcard_z {
|
||||
mux {
|
||||
groups = "sdcard_d0_z",
|
||||
"sdcard_d1_z",
|
||||
"sdcard_d2_z",
|
||||
"sdcard_d3_z",
|
||||
"sdcard_cmd_z",
|
||||
"sdcard_clk_z";
|
||||
function = "sdcard";
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
sdcard_clk_gate_z_pins: sdcard_clk_gate_z {
|
||||
mux {
|
||||
groups = "GPIOZ_6";
|
||||
function = "gpio_periphs";
|
||||
bias-pull-down;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&periphs {
|
||||
eth_phy: mdio-multiplexer@4c000 {
|
||||
compatible = "amlogic,g12a-mdio-mux";
|
||||
reg = <0x0 0x4c000 0x0 0xa4>;
|
||||
clocks = <&clkc CLKID_ETH_PHY>,
|
||||
<&xtal>,
|
||||
<&clkc CLKID_MPLL_5OM>;
|
||||
clock-names = "pclk", "clkin0", "clkin1";
|
||||
mdio-parent-bus = <&mdio0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ext_mdio: mdio@0 {
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
int_mdio: mdio@1 {
|
||||
reg = <1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
internal_ephy: ethernet_phy@8 {
|
||||
compatible = "ethernet-phy-id0180.3300",
|
||||
"ethernet-phy-ieee802.3-c22";
|
||||
reg = <8>;
|
||||
max-speed = <100>;
|
||||
|
||||
/* FIXME: Add irq support */
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
63
arch/arm/dts/meson-g12a-u200-u-boot.dtsi
Normal file
63
arch/arm/dts/meson-g12a-u200-u-boot.dtsi
Normal file
@@ -0,0 +1,63 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2019 BayLibre, SAS.
|
||||
* Author: Neil Armstrong <narmstrong@baylibre.com>
|
||||
*/
|
||||
|
||||
#include "meson-g12a-u-boot.dtsi"
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
ethernet0 = ðmac;
|
||||
};
|
||||
|
||||
emmc_pwrseq: emmc-pwrseq {
|
||||
compatible = "mmc-pwrseq-emmc";
|
||||
reset-gpios = <&gpio BOOT_12 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
ðmac {
|
||||
status = "okay";
|
||||
pinctrl-0 = <ð_leds_pins>;
|
||||
pinctrl-names = "default";
|
||||
phy-handle = <&internal_ephy>;
|
||||
phy-mode = "rmii";
|
||||
};
|
||||
|
||||
|
||||
/* SD card */
|
||||
&sd_emmc_b {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&sdcard_c_pins>;
|
||||
pinctrl-1 = <&sdcard_clk_gate_c_pins>;
|
||||
pinctrl-names = "default", "clk-gate";
|
||||
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
max-frequency = <50000000>;
|
||||
disable-wp;
|
||||
|
||||
cd-gpios = <&gpio GPIOC_6 GPIO_ACTIVE_LOW>;
|
||||
vmmc-supply = <&vddao_3v3>;
|
||||
vqmmc-supply = <&vddao_3v3>;
|
||||
};
|
||||
|
||||
/* eMMC */
|
||||
&sd_emmc_c {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
|
||||
pinctrl-1 = <&emmc_clk_gate_pins>;
|
||||
pinctrl-names = "default", "clk-gate";
|
||||
|
||||
bus-width = <8>;
|
||||
cap-mmc-highspeed;
|
||||
mmc-ddr-1_8v;
|
||||
mmc-hs200-1_8v;
|
||||
max-frequency = <200000000>;
|
||||
disable-wp;
|
||||
|
||||
mmc-pwrseq = <&emmc_pwrseq>;
|
||||
vmmc-supply = <&vcc_3v3>;
|
||||
vqmmc-supply = <&flash_1v8>;
|
||||
};
|
||||
@@ -6,6 +6,8 @@
|
||||
/dts-v1/;
|
||||
|
||||
#include "meson-g12a.dtsi"
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/gpio/meson-g12a-gpio.h>
|
||||
|
||||
/ {
|
||||
compatible = "amlogic,u200", "amlogic,g12a";
|
||||
@@ -21,9 +23,154 @@
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x0 0x0 0x40000000>;
|
||||
};
|
||||
|
||||
cvbs-connector {
|
||||
compatible = "composite-video-connector";
|
||||
|
||||
port {
|
||||
cvbs_connector_in: endpoint {
|
||||
remote-endpoint = <&cvbs_vdac_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
flash_1v8: regulator-flash_1v8 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "FLASH_1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
vin-supply = <&vcc_3v3>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
hdmi-connector {
|
||||
compatible = "hdmi-connector";
|
||||
type = "a";
|
||||
|
||||
port {
|
||||
hdmi_connector_in: endpoint {
|
||||
remote-endpoint = <&hdmi_tx_tmds_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
main_12v: regulator-main_12v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "12V";
|
||||
regulator-min-microvolt = <12000000>;
|
||||
regulator-max-microvolt = <12000000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vcc_1v8: regulator-vcc_1v8 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VCC_1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
vin-supply = <&vcc_3v3>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vcc_3v3: regulator-vcc_3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VCC_3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <&vddao_3v3>;
|
||||
regulator-always-on;
|
||||
/* FIXME: actually controlled by VDDCPU_B_EN */
|
||||
};
|
||||
|
||||
vcc_5v: regulator-vcc_5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VCC_5V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <&main_12v>;
|
||||
|
||||
gpio = <&gpio GPIOH_8 GPIO_OPEN_DRAIN>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
usb_pwr_en: regulator-usb_pwr_en {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "USB_PWR_EN";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <&vcc_5v>;
|
||||
|
||||
gpio = <&gpio GPIOH_6 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
vddao_1v8: regulator-vddao_1v8 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VDDAO_1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
vin-supply = <&vddao_3v3>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vddao_3v3: regulator-vddao_3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VDDAO_3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <&main_12v>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&cec_AO {
|
||||
pinctrl-0 = <&cec_ao_a_h_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "disabled";
|
||||
hdmi-phandle = <&hdmi_tx>;
|
||||
};
|
||||
|
||||
&cecb_AO {
|
||||
pinctrl-0 = <&cec_ao_b_h_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
hdmi-phandle = <&hdmi_tx>;
|
||||
};
|
||||
|
||||
&cvbs_vdac_port {
|
||||
cvbs_vdac_out: endpoint {
|
||||
remote-endpoint = <&cvbs_connector_in>;
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi_tx {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&hdmitx_hpd_pins>, <&hdmitx_ddc_pins>;
|
||||
pinctrl-names = "default";
|
||||
hdmi-supply = <&vcc_5v>;
|
||||
};
|
||||
|
||||
&hdmi_tx_tmds_port {
|
||||
hdmi_tx_tmds_out: endpoint {
|
||||
remote-endpoint = <&hdmi_connector_in>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart_AO {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&uart_ao_a_pins>;
|
||||
pinctrl-names = "default";
|
||||
};
|
||||
|
||||
&usb {
|
||||
status = "okay";
|
||||
vbus-supply = <&usb_pwr_en>;
|
||||
};
|
||||
|
||||
&usb2_phy0 {
|
||||
phy-supply = <&vcc_5v>;
|
||||
};
|
||||
|
||||
&usb2_phy1 {
|
||||
phy-supply = <&vcc_5v>;
|
||||
};
|
||||
|
||||
@@ -3,9 +3,13 @@
|
||||
* Copyright (c) 2018 Amlogic, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <dt-bindings/phy/phy.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/clock/g12a-clkc.h>
|
||||
#include <dt-bindings/clock/g12a-aoclkc.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/reset/amlogic,meson-g12a-reset.h>
|
||||
|
||||
/ {
|
||||
compatible = "amlogic,g12a";
|
||||
@@ -55,6 +59,14 @@
|
||||
};
|
||||
};
|
||||
|
||||
efuse: efuse {
|
||||
compatible = "amlogic,meson-gxbb-efuse";
|
||||
clocks = <&clkc CLKID_EFUSE>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
psci {
|
||||
compatible = "arm,psci-1.0";
|
||||
method = "smc";
|
||||
@@ -70,6 +82,18 @@
|
||||
reg = <0x0 0x05000000 0x0 0x300000>;
|
||||
no-map;
|
||||
};
|
||||
|
||||
linux,cma {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x0 0x10000000>;
|
||||
alignment = <0x0 0x400000>;
|
||||
linux,cma-default;
|
||||
};
|
||||
};
|
||||
|
||||
sm: secure-monitor {
|
||||
compatible = "amlogic,meson-gxbb-sm";
|
||||
};
|
||||
|
||||
soc {
|
||||
@@ -85,12 +109,177 @@
|
||||
#size-cells = <2>;
|
||||
ranges = <0x0 0x0 0x0 0xff600000 0x0 0x200000>;
|
||||
|
||||
hdmi_tx: hdmi-tx@0 {
|
||||
compatible = "amlogic,meson-g12a-dw-hdmi";
|
||||
reg = <0x0 0x0 0x0 0x10000>;
|
||||
interrupts = <GIC_SPI 57 IRQ_TYPE_EDGE_RISING>;
|
||||
resets = <&reset RESET_HDMITX_CAPB3>,
|
||||
<&reset RESET_HDMITX_PHY>,
|
||||
<&reset RESET_HDMITX>;
|
||||
reset-names = "hdmitx_apb", "hdmitx", "hdmitx_phy";
|
||||
clocks = <&clkc CLKID_HDMI>,
|
||||
<&clkc CLKID_HTX_PCLK>,
|
||||
<&clkc CLKID_VPU_INTR>;
|
||||
clock-names = "isfr", "iahb", "venci";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "disabled";
|
||||
|
||||
/* VPU VENC Input */
|
||||
hdmi_tx_venc_port: port@0 {
|
||||
reg = <0>;
|
||||
|
||||
hdmi_tx_in: endpoint {
|
||||
remote-endpoint = <&hdmi_tx_out>;
|
||||
};
|
||||
};
|
||||
|
||||
/* TMDS Output */
|
||||
hdmi_tx_tmds_port: port@1 {
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
periphs: bus@34400 {
|
||||
compatible = "simple-bus";
|
||||
reg = <0x0 0x34400 0x0 0x400>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges = <0x0 0x0 0x0 0x34400 0x0 0x400>;
|
||||
|
||||
periphs_pinctrl: pinctrl@40 {
|
||||
compatible = "amlogic,meson-g12a-periphs-pinctrl";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
gpio: bank@40 {
|
||||
reg = <0x0 0x40 0x0 0x4c>,
|
||||
<0x0 0xe8 0x0 0x18>,
|
||||
<0x0 0x120 0x0 0x18>,
|
||||
<0x0 0x2c0 0x0 0x40>,
|
||||
<0x0 0x340 0x0 0x1c>;
|
||||
reg-names = "gpio",
|
||||
"pull",
|
||||
"pull-enable",
|
||||
"mux",
|
||||
"ds";
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-ranges = <&periphs_pinctrl 0 0 86>;
|
||||
};
|
||||
|
||||
cec_ao_a_h_pins: cec_ao_a_h {
|
||||
mux {
|
||||
groups = "cec_ao_a_h";
|
||||
function = "cec_ao_a_h";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
cec_ao_b_h_pins: cec_ao_b_h {
|
||||
mux {
|
||||
groups = "cec_ao_b_h";
|
||||
function = "cec_ao_b_h";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
hdmitx_ddc_pins: hdmitx_ddc {
|
||||
mux {
|
||||
groups = "hdmitx_sda",
|
||||
"hdmitx_sck";
|
||||
function = "hdmitx";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
hdmitx_hpd_pins: hdmitx_hpd {
|
||||
mux {
|
||||
groups = "hdmitx_hpd_in";
|
||||
function = "hdmitx";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
uart_a_pins: uart-a {
|
||||
mux {
|
||||
groups = "uart_a_tx",
|
||||
"uart_a_rx";
|
||||
function = "uart_a";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
uart_a_cts_rts_pins: uart-a-cts-rts {
|
||||
mux {
|
||||
groups = "uart_a_cts",
|
||||
"uart_a_rts";
|
||||
function = "uart_a";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
uart_b_pins: uart-b {
|
||||
mux {
|
||||
groups = "uart_b_tx",
|
||||
"uart_b_rx";
|
||||
function = "uart_b";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
uart_c_pins: uart-c {
|
||||
mux {
|
||||
groups = "uart_c_tx",
|
||||
"uart_c_rx";
|
||||
function = "uart_c";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
uart_c_cts_rts_pins: uart-c-cts-rts {
|
||||
mux {
|
||||
groups = "uart_c_cts",
|
||||
"uart_c_rts";
|
||||
function = "uart_c";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
usb2_phy0: phy@36000 {
|
||||
compatible = "amlogic,g12a-usb2-phy";
|
||||
reg = <0x0 0x36000 0x0 0x2000>;
|
||||
clocks = <&xtal>;
|
||||
clock-names = "xtal";
|
||||
resets = <&reset RESET_USB_PHY20>;
|
||||
reset-names = "phy";
|
||||
#phy-cells = <0>;
|
||||
};
|
||||
|
||||
dmc: bus@38000 {
|
||||
compatible = "simple-bus";
|
||||
reg = <0x0 0x38000 0x0 0x400>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges = <0x0 0x0 0x0 0x38000 0x0 0x400>;
|
||||
|
||||
canvas: video-lut@48 {
|
||||
compatible = "amlogic,canvas";
|
||||
reg = <0x0 0x48 0x0 0x14>;
|
||||
};
|
||||
};
|
||||
|
||||
usb2_phy1: phy@3a000 {
|
||||
compatible = "amlogic,g12a-usb2-phy";
|
||||
reg = <0x0 0x3a000 0x0 0x2000>;
|
||||
clocks = <&xtal>;
|
||||
clock-names = "xtal";
|
||||
resets = <&reset RESET_USB_PHY21>;
|
||||
reset-names = "phy";
|
||||
#phy-cells = <0>;
|
||||
};
|
||||
|
||||
hiu: bus@3c000 {
|
||||
@@ -113,6 +302,18 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
usb3_pcie_phy: phy@46000 {
|
||||
compatible = "amlogic,g12a-usb3-pcie-phy";
|
||||
reg = <0x0 0x46000 0x0 0x2000>;
|
||||
clocks = <&clkc CLKID_PCIE_PLL>;
|
||||
clock-names = "ref_clk";
|
||||
resets = <&reset RESET_PCIE_PHY>;
|
||||
reset-names = "phy";
|
||||
assigned-clocks = <&clkc CLKID_PCIE_PLL>;
|
||||
assigned-clock-rates = <100000000>;
|
||||
#phy-cells = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
aobus: bus@ff800000 {
|
||||
@@ -122,6 +323,128 @@
|
||||
#size-cells = <2>;
|
||||
ranges = <0x0 0x0 0x0 0xff800000 0x0 0x100000>;
|
||||
|
||||
rti: sys-ctrl@0 {
|
||||
compatible = "amlogic,meson-gx-ao-sysctrl",
|
||||
"simple-mfd", "syscon";
|
||||
reg = <0x0 0x0 0x0 0x100>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges = <0x0 0x0 0x0 0x0 0x0 0x100>;
|
||||
|
||||
clkc_AO: clock-controller {
|
||||
compatible = "amlogic,meson-g12a-aoclkc";
|
||||
#clock-cells = <1>;
|
||||
#reset-cells = <1>;
|
||||
clocks = <&xtal>, <&clkc CLKID_CLK81>;
|
||||
clock-names = "xtal", "mpeg-clk";
|
||||
};
|
||||
|
||||
pwrc_vpu: power-controller-vpu {
|
||||
compatible = "amlogic,meson-g12a-pwrc-vpu";
|
||||
#power-domain-cells = <0>;
|
||||
amlogic,hhi-sysctrl = <&hhi>;
|
||||
resets = <&reset RESET_VIU>,
|
||||
<&reset RESET_VENC>,
|
||||
<&reset RESET_VCBUS>,
|
||||
<&reset RESET_BT656>,
|
||||
<&reset RESET_RDMA>,
|
||||
<&reset RESET_VENCI>,
|
||||
<&reset RESET_VENCP>,
|
||||
<&reset RESET_VDAC>,
|
||||
<&reset RESET_VDI6>,
|
||||
<&reset RESET_VENCL>,
|
||||
<&reset RESET_VID_LOCK>;
|
||||
clocks = <&clkc CLKID_VPU>,
|
||||
<&clkc CLKID_VAPB>;
|
||||
clock-names = "vpu", "vapb";
|
||||
/*
|
||||
* VPU clocking is provided by two identical clock paths
|
||||
* VPU_0 and VPU_1 muxed to a single clock by a glitch
|
||||
* free mux to safely change frequency while running.
|
||||
* Same for VAPB but with a final gate after the glitch free mux.
|
||||
*/
|
||||
assigned-clocks = <&clkc CLKID_VPU_0_SEL>,
|
||||
<&clkc CLKID_VPU_0>,
|
||||
<&clkc CLKID_VPU>, /* Glitch free mux */
|
||||
<&clkc CLKID_VAPB_0_SEL>,
|
||||
<&clkc CLKID_VAPB_0>,
|
||||
<&clkc CLKID_VAPB_SEL>; /* Glitch free mux */
|
||||
assigned-clock-parents = <&clkc CLKID_FCLK_DIV3>,
|
||||
<0>, /* Do Nothing */
|
||||
<&clkc CLKID_VPU_0>,
|
||||
<&clkc CLKID_FCLK_DIV4>,
|
||||
<0>, /* Do Nothing */
|
||||
<&clkc CLKID_VAPB_0>;
|
||||
assigned-clock-rates = <0>, /* Do Nothing */
|
||||
<666666666>,
|
||||
<0>, /* Do Nothing */
|
||||
<0>, /* Do Nothing */
|
||||
<250000000>,
|
||||
<0>; /* Do Nothing */
|
||||
};
|
||||
|
||||
ao_pinctrl: pinctrl@14 {
|
||||
compatible = "amlogic,meson-g12a-aobus-pinctrl";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
gpio_ao: bank@14 {
|
||||
reg = <0x0 0x14 0x0 0x8>,
|
||||
<0x0 0x1c 0x0 0x8>,
|
||||
<0x0 0x24 0x0 0x14>;
|
||||
reg-names = "mux",
|
||||
"ds",
|
||||
"gpio";
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-ranges = <&ao_pinctrl 0 0 15>;
|
||||
};
|
||||
|
||||
uart_ao_a_pins: uart-a-ao {
|
||||
mux {
|
||||
groups = "uart_ao_a_tx",
|
||||
"uart_ao_a_rx";
|
||||
function = "uart_ao_a";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
uart_ao_a_cts_rts_pins: uart-ao-a-cts-rts {
|
||||
mux {
|
||||
groups = "uart_ao_a_cts",
|
||||
"uart_ao_a_rts";
|
||||
function = "uart_ao_a";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
cec_AO: cec@100 {
|
||||
compatible = "amlogic,meson-gx-ao-cec";
|
||||
reg = <0x0 0x00100 0x0 0x14>;
|
||||
interrupts = <GIC_SPI 199 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&clkc_AO CLKID_AO_CEC>;
|
||||
clock-names = "core";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
sec_AO: ao-secure@140 {
|
||||
compatible = "amlogic,meson-gx-ao-secure", "syscon";
|
||||
reg = <0x0 0x140 0x0 0x140>;
|
||||
amlogic,has-chip-id;
|
||||
};
|
||||
|
||||
cecb_AO: cec@280 {
|
||||
compatible = "amlogic,meson-g12a-ao-cec";
|
||||
reg = <0x0 0x00280 0x0 0x1c>;
|
||||
interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&clkc_AO CLKID_AO_CTS_OSCIN>;
|
||||
clock-names = "oscin";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart_AO: serial@3000 {
|
||||
compatible = "amlogic,meson-gx-uart",
|
||||
"amlogic,meson-ao-uart";
|
||||
@@ -141,6 +464,46 @@
|
||||
clock-names = "xtal", "pclk", "baud";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
saradc: adc@9000 {
|
||||
compatible = "amlogic,meson-g12a-saradc",
|
||||
"amlogic,meson-saradc";
|
||||
reg = <0x0 0x9000 0x0 0x48>;
|
||||
#io-channel-cells = <1>;
|
||||
interrupts = <GIC_SPI 200 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&xtal>,
|
||||
<&clkc_AO CLKID_AO_SAR_ADC>,
|
||||
<&clkc_AO CLKID_AO_SAR_ADC_CLK>,
|
||||
<&clkc_AO CLKID_AO_SAR_ADC_SEL>;
|
||||
clock-names = "clkin", "core", "adc_clk", "adc_sel";
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
vpu: vpu@ff900000 {
|
||||
compatible = "amlogic,meson-g12a-vpu";
|
||||
reg = <0x0 0xff900000 0x0 0x100000>,
|
||||
<0x0 0xff63c000 0x0 0x1000>;
|
||||
reg-names = "vpu", "hhi";
|
||||
interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
amlogic,canvas = <&canvas>;
|
||||
power-domains = <&pwrc_vpu>;
|
||||
|
||||
/* CVBS VDAC output port */
|
||||
cvbs_vdac_port: port@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
/* HDMI-TX output port */
|
||||
hdmi_tx_port: port@1 {
|
||||
reg = <1>;
|
||||
|
||||
hdmi_tx_out: endpoint {
|
||||
remote-endpoint = <&hdmi_tx_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
gic: interrupt-controller@ffc01000 {
|
||||
@@ -163,10 +526,112 @@
|
||||
#size-cells = <2>;
|
||||
ranges = <0x0 0x0 0x0 0xffd00000 0x0 0x100000>;
|
||||
|
||||
reset: reset-controller@1004 {
|
||||
compatible = "amlogic,meson-g12a-reset",
|
||||
"amlogic,meson-axg-reset";
|
||||
reg = <0x0 0x1004 0x0 0x9c>;
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
clk_msr: clock-measure@18000 {
|
||||
compatible = "amlogic,meson-g12a-clk-measure";
|
||||
reg = <0x0 0x18000 0x0 0x10>;
|
||||
};
|
||||
|
||||
uart_C: serial@22000 {
|
||||
compatible = "amlogic,meson-gx-uart";
|
||||
reg = <0x0 0x22000 0x0 0x18>;
|
||||
interrupts = <GIC_SPI 93 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&xtal>, <&clkc CLKID_UART2>, <&xtal>;
|
||||
clock-names = "xtal", "pclk", "baud";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart_B: serial@23000 {
|
||||
compatible = "amlogic,meson-gx-uart";
|
||||
reg = <0x0 0x23000 0x0 0x18>;
|
||||
interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>;
|
||||
clock-names = "xtal", "pclk", "baud";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart_A: serial@24000 {
|
||||
compatible = "amlogic,meson-gx-uart";
|
||||
reg = <0x0 0x24000 0x0 0x18>;
|
||||
interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>;
|
||||
clock-names = "xtal", "pclk", "baud";
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
usb: usb@ffe09000 {
|
||||
status = "disabled";
|
||||
compatible = "amlogic,meson-g12a-usb-ctrl";
|
||||
reg = <0x0 0xffe09000 0x0 0xa0>;
|
||||
interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
clocks = <&clkc CLKID_USB>;
|
||||
resets = <&reset RESET_USB>;
|
||||
|
||||
dr_mode = "otg";
|
||||
|
||||
phys = <&usb2_phy0>, <&usb2_phy1>,
|
||||
<&usb3_pcie_phy PHY_TYPE_USB3>;
|
||||
phy-names = "usb2-phy0", "usb2-phy1", "usb3-phy0";
|
||||
|
||||
dwc2: usb@ff400000 {
|
||||
compatible = "amlogic,meson-g12a-usb", "snps,dwc2";
|
||||
reg = <0x0 0xff400000 0x0 0x40000>;
|
||||
interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clkc CLKID_USB1_DDR_BRIDGE>;
|
||||
clock-names = "ddr";
|
||||
phys = <&usb2_phy1>;
|
||||
dr_mode = "peripheral";
|
||||
g-rx-fifo-size = <192>;
|
||||
g-np-tx-fifo-size = <128>;
|
||||
g-tx-fifo-size = <128 128 16 16 16>;
|
||||
};
|
||||
|
||||
dwc3: usb@ff500000 {
|
||||
compatible = "snps,dwc3";
|
||||
reg = <0x0 0xff500000 0x0 0x100000>;
|
||||
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
|
||||
dr_mode = "host";
|
||||
snps,dis_u2_susphy_quirk;
|
||||
snps,quirk-frame-length-adjustment;
|
||||
};
|
||||
};
|
||||
|
||||
mali: gpu@ffe40000 {
|
||||
compatible = "amlogic,meson-g12a-mali", "arm,mali-bifrost";
|
||||
reg = <0x0 0xffe40000 0x0 0x40000>;
|
||||
interrupt-parent = <&gic>;
|
||||
interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "gpu", "mmu", "job";
|
||||
clocks = <&clkc CLKID_MALI>;
|
||||
resets = <&reset RESET_DVALIN_CAPB3>, <&reset RESET_DVALIN>;
|
||||
|
||||
/*
|
||||
* Mali clocking is provided by two identical clock paths
|
||||
* MALI_0 and MALI_1 muxed to a single clock by a glitch
|
||||
* free mux to safely change frequency while running.
|
||||
*/
|
||||
assigned-clocks = <&clkc CLKID_MALI_0_SEL>,
|
||||
<&clkc CLKID_MALI_0>,
|
||||
<&clkc CLKID_MALI>; /* Glitch free mux */
|
||||
assigned-clock-parents = <&clkc CLKID_FCLK_DIV2P5>,
|
||||
<0>, /* Do Nothing */
|
||||
<&clkc CLKID_MALI_0>;
|
||||
assigned-clock-rates = <0>, /* Do Nothing */
|
||||
<800000000>,
|
||||
<0>; /* Do Nothing */
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -7,10 +7,6 @@
|
||||
* Author: Christian Hemp <c.hemp@phytec.de>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6ul.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Phytec phyCORE-i.MX6 Ultra Lite SOM";
|
||||
compatible = "phytec,imx6ul-pcl063", "fsl,imx6ul";
|
||||
@@ -47,7 +43,7 @@
|
||||
pinctrl-0 = <&pinctrl_gpmi_nand>;
|
||||
nand-on-flash-bbt;
|
||||
fsl,no-blockmark-swap;
|
||||
status = "okay";
|
||||
status = "disabled";
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
@@ -99,6 +95,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
u-boot,dm-spl;
|
||||
u-boot,dm-pre-reloc;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
bus-width = <8>;
|
||||
no-1-8-v;
|
||||
non-removable;
|
||||
keep-power-in-suspend;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
|
||||
@@ -170,4 +178,19 @@
|
||||
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x170f9
|
||||
MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x100f9
|
||||
MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x170f9
|
||||
MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x170f9
|
||||
MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x170f9
|
||||
MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x170f9
|
||||
MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x170f9
|
||||
MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x170f9
|
||||
MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x170f9
|
||||
MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x170f9
|
||||
>;
|
||||
};
|
||||
};
|
||||
54
arch/arm/dts/rk3288-tinker-u-boot.dtsi
Normal file
54
arch/arm/dts/rk3288-tinker-u-boot.dtsi
Normal file
@@ -0,0 +1,54 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2019 Rockchip Electronics Co., Ltd
|
||||
*/
|
||||
|
||||
#include "rk3288-u-boot.dtsi"
|
||||
|
||||
&pinctrl {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&sdmmc {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&emmc {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio3 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio8 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&pcfg_pull_none_drv_8ma {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&pcfg_pull_up_drv_8ma {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&sdmmc_bus4 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&sdmmc_clk {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&sdmmc_cmd {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&sdmmc_pwr {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
@@ -28,8 +28,6 @@
|
||||
|
||||
|
||||
&pinctrl {
|
||||
u-boot,dm-pre-reloc;
|
||||
|
||||
usb {
|
||||
host_vbus_drv: host-vbus-drv {
|
||||
rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
@@ -42,7 +40,6 @@
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
u-boot,dm-pre-reloc;
|
||||
reg-shift = <2>;
|
||||
};
|
||||
|
||||
@@ -51,22 +48,6 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdmmc {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&emmc {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio3 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpio8 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
m24c08@50 {
|
||||
compatible = "at,24c08", "i2c-eeprom";
|
||||
|
||||
36
arch/arm/dts/rk3288-u-boot.dtsi
Normal file
36
arch/arm/dts/rk3288-u-boot.dtsi
Normal file
@@ -0,0 +1,36 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2019 Rockchip Electronics Co., Ltd
|
||||
*/
|
||||
|
||||
&dmc {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&pmu {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&sgrf {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&cru {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&grf {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&vopb {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&vopl {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&noc {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
@@ -3,6 +3,8 @@
|
||||
* Copyright 2015 Google, Inc
|
||||
*/
|
||||
|
||||
#include "rk3288-u-boot.dtsi"
|
||||
|
||||
&dmc {
|
||||
rockchip,pctl-timing = <0x215 0xc8 0x0 0x35 0x26 0x2 0x70 0x2000d
|
||||
0x6 0x0 0x8 0x4 0x17 0x24 0xd 0x6
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
* Copyright (C) 2017 Jagan Teki <jagan@amarulasolutions.com>
|
||||
*/
|
||||
|
||||
#include "rk3288-u-boot.dtsi"
|
||||
|
||||
&dmc {
|
||||
rockchip,pctl-timing = <0x29a 0xc8 0x1f8 0x42 0x4e 0x4 0xea 0xa
|
||||
0x5 0x0 0xa 0x7 0x19 0x24 0xa 0x7
|
||||
|
||||
@@ -468,7 +468,6 @@
|
||||
};
|
||||
|
||||
dmc: dmc@ff610000 {
|
||||
u-boot,dm-pre-reloc;
|
||||
compatible = "rockchip,rk3288-dmc", "syscon";
|
||||
rockchip,cru = <&cru>;
|
||||
rockchip,grf = <&grf>;
|
||||
@@ -584,13 +583,11 @@
|
||||
};
|
||||
|
||||
pmu: power-management@ff730000 {
|
||||
u-boot,dm-pre-reloc;
|
||||
compatible = "rockchip,rk3288-pmu", "syscon";
|
||||
reg = <0xff730000 0x100>;
|
||||
};
|
||||
|
||||
sgrf: syscon@ff740000 {
|
||||
u-boot,dm-pre-reloc;
|
||||
compatible = "rockchip,rk3288-sgrf", "syscon";
|
||||
reg = <0xff740000 0x1000>;
|
||||
};
|
||||
@@ -599,7 +596,6 @@
|
||||
compatible = "rockchip,rk3288-cru";
|
||||
reg = <0xff760000 0x1000>;
|
||||
rockchip,grf = <&grf>;
|
||||
u-boot,dm-pre-reloc;
|
||||
#clock-cells = <1>;
|
||||
#reset-cells = <1>;
|
||||
assigned-clocks = <&cru PLL_GPLL>, <&cru PLL_CPLL>,
|
||||
@@ -615,7 +611,6 @@
|
||||
};
|
||||
|
||||
grf: syscon@ff770000 {
|
||||
u-boot,dm-pre-reloc;
|
||||
compatible = "rockchip,rk3288-grf", "syscon";
|
||||
reg = <0xff770000 0x1000>;
|
||||
};
|
||||
@@ -660,7 +655,6 @@
|
||||
};
|
||||
|
||||
vopb: vop@ff930000 {
|
||||
u-boot,dm-pre-reloc;
|
||||
compatible = "rockchip,rk3288-vop";
|
||||
reg = <0xff930000 0x19c>;
|
||||
interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
|
||||
@@ -715,7 +709,6 @@
|
||||
iommus = <&vopl_mmu>;
|
||||
power-domains = <&power RK3288_PD_VIO>;
|
||||
status = "disabled";
|
||||
u-boot,dm-pre-reloc;
|
||||
vopl_out: port {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
@@ -911,7 +904,6 @@
|
||||
};
|
||||
|
||||
noc: syscon@ffac0000 {
|
||||
u-boot,dm-pre-reloc;
|
||||
compatible = "rockchip,rk3288-noc", "syscon";
|
||||
reg = <0xffac0000 0x2000>;
|
||||
};
|
||||
|
||||
34
arch/arm/dts/rk3328-rock64-u-boot.dtsi
Normal file
34
arch/arm/dts/rk3328-rock64-u-boot.dtsi
Normal file
@@ -0,0 +1,34 @@
|
||||
/*
|
||||
* (C) Copyright 2018 Rockchip Electronics Co., Ltd
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+
|
||||
*/
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
mmc0 = &emmc;
|
||||
mmc1 = &sdmmc;
|
||||
};
|
||||
|
||||
chosen {
|
||||
u-boot,spl-boot-order = &emmc, &sdmmc;
|
||||
};
|
||||
};
|
||||
|
||||
&cru {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&emmc {
|
||||
u-boot,dm-pre-reloc;
|
||||
fifo-mode;
|
||||
};
|
||||
|
||||
&sdmmc {
|
||||
u-boot,dm-pre-reloc;
|
||||
fifo-mode;
|
||||
};
|
||||
294
arch/arm/dts/rk3328-rock64.dts
Normal file
294
arch/arm/dts/rk3328-rock64.dts
Normal file
@@ -0,0 +1,294 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2017 PINE64
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "rk3328.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Pine64 Rock64";
|
||||
compatible = "pine64,rock64", "rockchip,rk3328";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial2:1500000n8";
|
||||
};
|
||||
|
||||
gmac_clkin: external-gmac-clock {
|
||||
compatible = "fixed-clock";
|
||||
clock-frequency = <125000000>;
|
||||
clock-output-names = "gmac_clkin";
|
||||
#clock-cells = <0>;
|
||||
};
|
||||
|
||||
vcc_sd: sdmmc-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdmmc0m1_gpio>;
|
||||
regulator-name = "vcc_sd";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <&vcc_io>;
|
||||
};
|
||||
|
||||
vcc_host_5v: vcc-host-5v-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&usb30_host_drv>;
|
||||
regulator-name = "vcc_host_5v";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc_sys>;
|
||||
};
|
||||
|
||||
vcc_host1_5v: vcc_otg_5v: vcc-host1-5v-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&usb20_host_drv>;
|
||||
regulator-name = "vcc_host1_5v";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc_sys>;
|
||||
};
|
||||
|
||||
vcc_sys: vcc-sys {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc_sys";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&cpu0 {
|
||||
cpu-supply = <&vdd_arm>;
|
||||
};
|
||||
|
||||
&cpu1 {
|
||||
cpu-supply = <&vdd_arm>;
|
||||
};
|
||||
|
||||
&cpu2 {
|
||||
cpu-supply = <&vdd_arm>;
|
||||
};
|
||||
|
||||
&cpu3 {
|
||||
cpu-supply = <&vdd_arm>;
|
||||
};
|
||||
|
||||
&emmc {
|
||||
bus-width = <8>;
|
||||
cap-mmc-highspeed;
|
||||
mmc-hs200-1_8v;
|
||||
non-removable;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
|
||||
vmmc-supply = <&vcc_io>;
|
||||
vqmmc-supply = <&vcc18_emmc>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gmac2io {
|
||||
assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
|
||||
assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
|
||||
clock_in_out = "input";
|
||||
phy-supply = <&vcc_io>;
|
||||
phy-mode = "rgmii";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&rgmiim1_pins>;
|
||||
snps,force_thresh_dma_mode;
|
||||
snps,reset-gpio = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
|
||||
snps,reset-active-low;
|
||||
snps,reset-delays-us = <0 10000 50000>;
|
||||
tx_delay = <0x24>;
|
||||
rx_delay = <0x18>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
status = "okay";
|
||||
|
||||
rk805: rk805@18 {
|
||||
compatible = "rockchip,rk805";
|
||||
reg = <0x18>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
|
||||
#clock-cells = <1>;
|
||||
clock-output-names = "xin32k", "rk805-clkout2";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pmic_int_l>;
|
||||
rockchip,system-power-controller;
|
||||
wakeup-source;
|
||||
|
||||
vcc1-supply = <&vcc_sys>;
|
||||
vcc2-supply = <&vcc_sys>;
|
||||
vcc3-supply = <&vcc_sys>;
|
||||
vcc4-supply = <&vcc_sys>;
|
||||
vcc5-supply = <&vcc_io>;
|
||||
vcc6-supply = <&vcc_sys>;
|
||||
|
||||
regulators {
|
||||
vdd_logic: DCDC_REG1 {
|
||||
regulator-name = "vdd_logic";
|
||||
regulator-min-microvolt = <712500>;
|
||||
regulator-max-microvolt = <1450000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1000000>;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_arm: DCDC_REG2 {
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-min-microvolt = <712500>;
|
||||
regulator-max-microvolt = <1450000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <950000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_ddr: DCDC_REG3 {
|
||||
regulator-name = "vcc_ddr";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_io: DCDC_REG4 {
|
||||
regulator-name = "vcc_io";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <3300000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_18: LDO_REG1 {
|
||||
regulator-name = "vdd_18";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc18_emmc: LDO_REG2 {
|
||||
regulator-name = "vcc_18emmc";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_10: LDO_REG3 {
|
||||
regulator-name = "vdd_10";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1000000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&io_domains {
|
||||
status = "okay";
|
||||
|
||||
vccio1-supply = <&vcc_io>;
|
||||
vccio2-supply = <&vcc18_emmc>;
|
||||
vccio3-supply = <&vcc_io>;
|
||||
vccio4-supply = <&vcc_18>;
|
||||
vccio5-supply = <&vcc_io>;
|
||||
vccio6-supply = <&vcc_io>;
|
||||
pmuio-supply = <&vcc_io>;
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
pmic {
|
||||
pmic_int_l: pmic-int-l {
|
||||
rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
usb2 {
|
||||
usb20_host_drv: usb20-host-drv {
|
||||
rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
usb3 {
|
||||
usb30_host_drv: usb30-host-drv {
|
||||
rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&sdmmc {
|
||||
bus-width = <4>;
|
||||
cap-mmc-highspeed;
|
||||
cap-sd-highspeed;
|
||||
disable-wp;
|
||||
max-frequency = <150000000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
|
||||
vmmc-supply = <&vcc_sd>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
spiflash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
|
||||
/* maximum speed for Rockchip SPI */
|
||||
spi-max-frequency = <50000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb20_otg {
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host0_ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host0_ohci {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -629,7 +629,6 @@ ap_i2c_audio: &i2c8 {
|
||||
|
||||
&uart2 {
|
||||
status = "okay";
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&usb_host0_ohci {
|
||||
|
||||
6
arch/arm/dts/rk3399-nanopi-neo4-u-boot.dtsi
Normal file
6
arch/arm/dts/rk3399-nanopi-neo4-u-boot.dtsi
Normal file
@@ -0,0 +1,6 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2019 Jagan Teki <jagan@amarulasolutions.com>
|
||||
*/
|
||||
|
||||
#include "rk3399-nanopi4-u-boot.dtsi"
|
||||
50
arch/arm/dts/rk3399-nanopi-neo4.dts
Normal file
50
arch/arm/dts/rk3399-nanopi-neo4.dts
Normal file
@@ -0,0 +1,50 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (C) 2019 Amarula Solutions B.V.
|
||||
* Author: Jagan Teki <jagan@amarulasolutions.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "rk3399-nanopi4.dtsi"
|
||||
|
||||
/ {
|
||||
model = "FriendlyARM NanoPi NEO4";
|
||||
compatible = "friendlyarm,nanopi-neo4", "rockchip,rk3399";
|
||||
|
||||
vdd_5v: vdd-5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vdd_5v";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vcc5v0_core: vcc5v0-core {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc5v0_core";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vdd_5v>;
|
||||
};
|
||||
|
||||
vcc5v0_usb1: vcc5v0-usb1 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc5v0_usb1";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
};
|
||||
};
|
||||
|
||||
&vcc3v3_sys {
|
||||
vin-supply = <&vcc5v0_core>;
|
||||
};
|
||||
|
||||
&u2phy0_host {
|
||||
phy-supply = <&vcc5v0_usb1>;
|
||||
};
|
||||
|
||||
&vbus_typec {
|
||||
regulator-always-on;
|
||||
vin-supply = <&vdd_5v>;
|
||||
};
|
||||
@@ -639,7 +639,6 @@
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
u-boot,dm-pre-reloc;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_xfer &uart0_cts>;
|
||||
status = "okay";
|
||||
|
||||
6
arch/arm/dts/rk3399-rock-pi-4-u-boot.dtsi
Normal file
6
arch/arm/dts/rk3399-rock-pi-4-u-boot.dtsi
Normal file
@@ -0,0 +1,6 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2019 Jagan Teki <jagan@amarulasolutions.com>
|
||||
*/
|
||||
|
||||
#include "rk3399-u-boot.dtsi"
|
||||
606
arch/arm/dts/rk3399-rock-pi-4.dts
Normal file
606
arch/arm/dts/rk3399-rock-pi-4.dts
Normal file
@@ -0,0 +1,606 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2019 Akash Gajjar <Akash_Gajjar@mentor.com>
|
||||
* Copyright (c) 2019 Pragnesh Patel <Pragnesh_Patel@mentor.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <dt-bindings/input/linux-event-codes.h>
|
||||
#include <dt-bindings/pwm/pwm.h>
|
||||
#include "rk3399.dtsi"
|
||||
#include "rk3399-opp.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Radxa ROCK Pi 4";
|
||||
compatible = "radxa,rockpi4", "rockchip,rk3399";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial2:1500000n8";
|
||||
};
|
||||
|
||||
clkin_gmac: external-gmac-clock {
|
||||
compatible = "fixed-clock";
|
||||
clock-frequency = <125000000>;
|
||||
clock-output-names = "clkin_gmac";
|
||||
#clock-cells = <0>;
|
||||
};
|
||||
|
||||
vcc12v_dcin: dc-12v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc12v_dcin";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <12000000>;
|
||||
regulator-max-microvolt = <12000000>;
|
||||
};
|
||||
|
||||
vcc5v0_sys: vcc-sys {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc5v0_sys";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <&vcc12v_dcin>;
|
||||
};
|
||||
|
||||
vcc3v3_pcie: vcc3v3-pcie-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pcie_pwr_en>;
|
||||
regulator-name = "vcc3v3_pcie";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
};
|
||||
|
||||
vcc3v3_sys: vcc3v3-sys {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc3v3_sys";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
};
|
||||
|
||||
vcc5v0_host: vcc5v0-host-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vcc5v0_host_en>;
|
||||
regulator-name = "vcc5v0_host";
|
||||
regulator-always-on;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
};
|
||||
|
||||
vcc5v0_typec: vcc5v0-typec-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vcc5v0_typec_en>;
|
||||
regulator-name = "vcc5v0_typec";
|
||||
regulator-always-on;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
};
|
||||
|
||||
vcc_lan: vcc3v3-phy-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc_lan";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_log: vdd-log {
|
||||
compatible = "pwm-regulator";
|
||||
pwms = <&pwm2 0 25000 1>;
|
||||
regulator-name = "vdd_log";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1400000>;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
};
|
||||
};
|
||||
|
||||
&cpu_l0 {
|
||||
cpu-supply = <&vdd_cpu_l>;
|
||||
};
|
||||
|
||||
&cpu_l1 {
|
||||
cpu-supply = <&vdd_cpu_l>;
|
||||
};
|
||||
|
||||
&cpu_l2 {
|
||||
cpu-supply = <&vdd_cpu_l>;
|
||||
};
|
||||
|
||||
&cpu_l3 {
|
||||
cpu-supply = <&vdd_cpu_l>;
|
||||
};
|
||||
|
||||
&cpu_b0 {
|
||||
cpu-supply = <&vdd_cpu_b>;
|
||||
};
|
||||
|
||||
&cpu_b1 {
|
||||
cpu-supply = <&vdd_cpu_b>;
|
||||
};
|
||||
|
||||
&emmc_phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gmac {
|
||||
assigned-clocks = <&cru SCLK_RMII_SRC>;
|
||||
assigned-clock-parents = <&clkin_gmac>;
|
||||
clock_in_out = "input";
|
||||
phy-supply = <&vcc_lan>;
|
||||
phy-mode = "rgmii";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&rgmii_pins>;
|
||||
snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
|
||||
snps,reset-active-low;
|
||||
snps,reset-delays-us = <0 10000 50000>;
|
||||
tx_delay = <0x28>;
|
||||
rx_delay = <0x11>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hdmi_cec>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
clock-frequency = <400000>;
|
||||
i2c-scl-rising-time-ns = <168>;
|
||||
i2c-scl-falling-time-ns = <4>;
|
||||
status = "okay";
|
||||
|
||||
rk808: pmic@1b {
|
||||
compatible = "rockchip,rk808";
|
||||
reg = <0x1b>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
|
||||
#clock-cells = <1>;
|
||||
clock-output-names = "xin32k", "rk808-clkout2";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pmic_int_l>;
|
||||
rockchip,system-power-controller;
|
||||
wakeup-source;
|
||||
|
||||
vcc1-supply = <&vcc5v0_sys>;
|
||||
vcc2-supply = <&vcc5v0_sys>;
|
||||
vcc3-supply = <&vcc5v0_sys>;
|
||||
vcc4-supply = <&vcc5v0_sys>;
|
||||
vcc6-supply = <&vcc5v0_sys>;
|
||||
vcc7-supply = <&vcc5v0_sys>;
|
||||
vcc8-supply = <&vcc3v3_sys>;
|
||||
vcc9-supply = <&vcc5v0_sys>;
|
||||
vcc10-supply = <&vcc5v0_sys>;
|
||||
vcc11-supply = <&vcc5v0_sys>;
|
||||
vcc12-supply = <&vcc3v3_sys>;
|
||||
vddio-supply = <&vcc_1v8>;
|
||||
|
||||
regulators {
|
||||
vdd_center: DCDC_REG1 {
|
||||
regulator-name = "vdd_center";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <750000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-ramp-delay = <6001>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_cpu_l: DCDC_REG2 {
|
||||
regulator-name = "vdd_cpu_l";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <750000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-ramp-delay = <6001>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_ddr: DCDC_REG3 {
|
||||
regulator-name = "vcc_ddr";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_1v8: DCDC_REG4 {
|
||||
regulator-name = "vcc_1v8";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc1v8_codec: LDO_REG1 {
|
||||
regulator-name = "vcc1v8_codec";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc1v8_hdmi: LDO_REG2 {
|
||||
regulator-name = "vcc1v8_hdmi";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcca_1v8: LDO_REG3 {
|
||||
regulator-name = "vcca_1v8";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_sdio: LDO_REG4 {
|
||||
regulator-name = "vcc_sdio";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <3000000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcca3v0_codec: LDO_REG5 {
|
||||
regulator-name = "vcca3v0_codec";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_1v5: LDO_REG6 {
|
||||
regulator-name = "vcc_1v5";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1500000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc0v9_hdmi: LDO_REG7 {
|
||||
regulator-name = "vcc0v9_hdmi";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <900000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_3v0: LDO_REG8 {
|
||||
regulator-name = "vcc_3v0";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <3000000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_cam: SWITCH_REG1 {
|
||||
regulator-name = "vcc_cam";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_mipi: SWITCH_REG2 {
|
||||
regulator-name = "vcc_mipi";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
vdd_cpu_b: regulator@40 {
|
||||
compatible = "silergy,syr827";
|
||||
reg = <0x40>;
|
||||
fcs,suspend-voltage-selector = <1>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vsel1_gpio>;
|
||||
regulator-name = "vdd_cpu_b";
|
||||
regulator-min-microvolt = <712500>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-ramp-delay = <1000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_gpu: regulator@41 {
|
||||
compatible = "silergy,syr828";
|
||||
reg = <0x41>;
|
||||
fcs,suspend-voltage-selector = <1>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vsel2_gpio>;
|
||||
regulator-name = "vdd_gpu";
|
||||
regulator-min-microvolt = <712500>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-ramp-delay = <1000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
i2c-scl-rising-time-ns = <300>;
|
||||
i2c-scl-falling-time-ns = <15>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
i2c-scl-rising-time-ns = <450>;
|
||||
i2c-scl-falling-time-ns = <15>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c4 {
|
||||
i2c-scl-rising-time-ns = <600>;
|
||||
i2c-scl-falling-time-ns = <20>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2s0 {
|
||||
rockchip,playback-channels = <8>;
|
||||
rockchip,capture-channels = <8>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2s1 {
|
||||
rockchip,playback-channels = <2>;
|
||||
rockchip,capture-channels = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2s2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&io_domains {
|
||||
status = "okay";
|
||||
|
||||
bt656-supply = <&vcc_3v0>;
|
||||
audio-supply = <&vcc_3v0>;
|
||||
sdmmc-supply = <&vcc_sdio>;
|
||||
gpio1830-supply = <&vcc_3v0>;
|
||||
};
|
||||
|
||||
&pmu_io_domains {
|
||||
status = "okay";
|
||||
|
||||
pmu1830-supply = <&vcc_3v0>;
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
pcie {
|
||||
pcie_pwr_en: pcie-pwr-en {
|
||||
rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
pmic {
|
||||
pmic_int_l: pmic-int-l {
|
||||
rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
|
||||
vsel1_gpio: vsel1-gpio {
|
||||
rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||
};
|
||||
|
||||
vsel2_gpio: vsel2-gpio {
|
||||
rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||
};
|
||||
};
|
||||
|
||||
usb-typec {
|
||||
vcc5v0_typec_en: vcc5v0-typec-en {
|
||||
rockchip,pins = <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
usb2 {
|
||||
vcc5v0_host_en: vcc5v0-host-en {
|
||||
rockchip,pins = <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pwm2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&saradc {
|
||||
status = "okay";
|
||||
|
||||
vref-supply = <&vcc_1v8>;
|
||||
};
|
||||
|
||||
&sdmmc {
|
||||
bus-width = <4>;
|
||||
cap-mmc-highspeed;
|
||||
cap-sd-highspeed;
|
||||
cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
|
||||
disable-wp;
|
||||
max-frequency = <150000000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdmmc_clk &sdmmc_cd &sdmmc_cmd &sdmmc_bus4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdhci {
|
||||
bus-width = <8>;
|
||||
mmc-hs400-1_8v;
|
||||
mmc-hs400-enhanced-strobe;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tcphy0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tcphy1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tsadc {
|
||||
status = "okay";
|
||||
|
||||
/* tshut mode 0:CRU 1:GPIO */
|
||||
rockchip,hw-tshut-mode = <1>;
|
||||
/* tshut polarity 0:LOW 1:HIGH */
|
||||
rockchip,hw-tshut-polarity = <1>;
|
||||
};
|
||||
|
||||
&u2phy0 {
|
||||
status = "okay";
|
||||
|
||||
u2phy0_otg: otg-port {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
u2phy0_host: host-port {
|
||||
phy-supply = <&vcc5v0_host>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&u2phy1 {
|
||||
status = "okay";
|
||||
|
||||
u2phy1_otg: otg-port {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
u2phy1_host: host-port {
|
||||
phy-supply = <&vcc5v0_host>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host0_ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host0_ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host1_ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host1_ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd3_0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_0 {
|
||||
status = "okay";
|
||||
dr_mode = "otg";
|
||||
};
|
||||
|
||||
&usbdrd3_1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_1 {
|
||||
status = "okay";
|
||||
dr_mode = "host";
|
||||
};
|
||||
|
||||
&vopb {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vopb_mmu {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vopl {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vopl_mmu {
|
||||
status = "okay";
|
||||
};
|
||||
10
arch/arm/dts/rk3399-rockpro64-u-boot.dtsi
Normal file
10
arch/arm/dts/rk3399-rockpro64-u-boot.dtsi
Normal file
@@ -0,0 +1,10 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2019 Jagan Teki <jagan@amarulasolutions.com>
|
||||
*/
|
||||
|
||||
#include "rk3399-u-boot.dtsi"
|
||||
|
||||
&vdd_log {
|
||||
regulator-init-microvolt = <950000>;
|
||||
};
|
||||
712
arch/arm/dts/rk3399-rockpro64.dts
Normal file
712
arch/arm/dts/rk3399-rockpro64.dts
Normal file
@@ -0,0 +1,712 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd.
|
||||
* Copyright (c) 2018 Akash Gajjar <Akash_Gajjar@mentor.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <dt-bindings/input/linux-event-codes.h>
|
||||
#include <dt-bindings/pwm/pwm.h>
|
||||
#include "rk3399.dtsi"
|
||||
#include "rk3399-opp.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Pine64 RockPro64";
|
||||
compatible = "pine64,rockpro64", "rockchip,rk3399";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial2:1500000n8";
|
||||
};
|
||||
|
||||
clkin_gmac: external-gmac-clock {
|
||||
compatible = "fixed-clock";
|
||||
clock-frequency = <125000000>;
|
||||
clock-output-names = "clkin_gmac";
|
||||
#clock-cells = <0>;
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
autorepeat;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwrbtn>;
|
||||
|
||||
power {
|
||||
debounce-interval = <100>;
|
||||
gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
|
||||
label = "GPIO Key Power";
|
||||
linux,code = <KEY_POWER>;
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&work_led_gpio>, <&diy_led_gpio>;
|
||||
|
||||
work-led {
|
||||
label = "work";
|
||||
default-state = "on";
|
||||
gpios = <&gpio0 RK_PB3 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
diy-led {
|
||||
label = "diy";
|
||||
default-state = "off";
|
||||
gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
sdio_pwrseq: sdio-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
clocks = <&rk808 1>;
|
||||
clock-names = "ext_clock";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&wifi_enable_h>;
|
||||
|
||||
/*
|
||||
* On the module itself this is one of these (depending
|
||||
* on the actual card populated):
|
||||
* - SDIO_RESET_L_WL_REG_ON
|
||||
* - PDN (power down when low)
|
||||
*/
|
||||
reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
vcc12v_dcin: vcc12v-dcin {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc12v_dcin";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <12000000>;
|
||||
regulator-max-microvolt = <12000000>;
|
||||
};
|
||||
|
||||
/* switched by pmic_sleep */
|
||||
vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc1v8_s3";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
vin-supply = <&vcc_1v8>;
|
||||
};
|
||||
|
||||
vcc3v3_pcie: vcc3v3-pcie-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pcie_pwr_en>;
|
||||
regulator-name = "vcc3v3_pcie";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc12v_dcin>;
|
||||
};
|
||||
|
||||
vcc3v3_sys: vcc3v3-sys {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc3v3_sys";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
};
|
||||
|
||||
/* Actually 3 regulators (host0, 1, 2) controlled by the same gpio */
|
||||
vcc5v0_host: vcc5v0-host-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vcc5v0_host_en>;
|
||||
regulator-name = "vcc5v0_host";
|
||||
regulator-always-on;
|
||||
vin-supply = <&vcc5v0_usb>;
|
||||
};
|
||||
|
||||
vcc5v0_typec: vcc5v0-typec-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vcc5v0_typec_en>;
|
||||
regulator-name = "vcc5v0_typec";
|
||||
regulator-always-on;
|
||||
vin-supply = <&vcc5v0_usb>;
|
||||
};
|
||||
|
||||
vcc5v0_sys: vcc5v0-sys {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc5v0_sys";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <&vcc12v_dcin>;
|
||||
};
|
||||
|
||||
vcc5v0_usb: vcc5v0-usb {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc5v0_usb";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <&vcc12v_dcin>;
|
||||
};
|
||||
|
||||
vdd_log: vdd-log {
|
||||
compatible = "pwm-regulator";
|
||||
pwms = <&pwm2 0 25000 1>;
|
||||
regulator-name = "vdd_log";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1400000>;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
};
|
||||
};
|
||||
|
||||
&cpu_l0 {
|
||||
cpu-supply = <&vdd_cpu_l>;
|
||||
};
|
||||
|
||||
&cpu_l1 {
|
||||
cpu-supply = <&vdd_cpu_l>;
|
||||
};
|
||||
|
||||
&cpu_l2 {
|
||||
cpu-supply = <&vdd_cpu_l>;
|
||||
};
|
||||
|
||||
&cpu_l3 {
|
||||
cpu-supply = <&vdd_cpu_l>;
|
||||
};
|
||||
|
||||
&cpu_b0 {
|
||||
cpu-supply = <&vdd_cpu_b>;
|
||||
};
|
||||
|
||||
&cpu_b1 {
|
||||
cpu-supply = <&vdd_cpu_b>;
|
||||
};
|
||||
|
||||
&emmc_phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gmac {
|
||||
assigned-clocks = <&cru SCLK_RMII_SRC>;
|
||||
assigned-clock-parents = <&clkin_gmac>;
|
||||
clock_in_out = "input";
|
||||
phy-supply = <&vcc_lan>;
|
||||
phy-mode = "rgmii";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&rgmii_pins>;
|
||||
snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
|
||||
snps,reset-active-low;
|
||||
snps,reset-delays-us = <0 10000 50000>;
|
||||
tx_delay = <0x28>;
|
||||
rx_delay = <0x11>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
ddc-i2c-bus = <&i2c3>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hdmi_cec>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpu {
|
||||
mali-supply = <&vdd_gpu>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
clock-frequency = <400000>;
|
||||
i2c-scl-rising-time-ns = <168>;
|
||||
i2c-scl-falling-time-ns = <4>;
|
||||
status = "okay";
|
||||
|
||||
rk808: pmic@1b {
|
||||
compatible = "rockchip,rk808";
|
||||
reg = <0x1b>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
|
||||
#clock-cells = <1>;
|
||||
clock-output-names = "xin32k", "rk808-clkout2";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pmic_int_l>;
|
||||
rockchip,system-power-controller;
|
||||
wakeup-source;
|
||||
|
||||
vcc1-supply = <&vcc5v0_sys>;
|
||||
vcc2-supply = <&vcc5v0_sys>;
|
||||
vcc3-supply = <&vcc5v0_sys>;
|
||||
vcc4-supply = <&vcc5v0_sys>;
|
||||
vcc6-supply = <&vcc5v0_sys>;
|
||||
vcc7-supply = <&vcc5v0_sys>;
|
||||
vcc8-supply = <&vcc3v3_sys>;
|
||||
vcc9-supply = <&vcc5v0_sys>;
|
||||
vcc10-supply = <&vcc5v0_sys>;
|
||||
vcc11-supply = <&vcc5v0_sys>;
|
||||
vcc12-supply = <&vcc3v3_sys>;
|
||||
vddio-supply = <&vcca_1v8>;
|
||||
|
||||
regulators {
|
||||
vdd_center: DCDC_REG1 {
|
||||
regulator-name = "vdd_center";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <750000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-ramp-delay = <6001>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_cpu_l: DCDC_REG2 {
|
||||
regulator-name = "vdd_cpu_l";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <750000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-ramp-delay = <6001>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_ddr: DCDC_REG3 {
|
||||
regulator-name = "vcc_ddr";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_1v8: DCDC_REG4 {
|
||||
regulator-name = "vcc_1v8";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc1v8_dvp: LDO_REG1 {
|
||||
regulator-name = "vcc1v8_dvp";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc3v0_touch: LDO_REG2 {
|
||||
regulator-name = "vcc3v0_touch";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcca_1v8: LDO_REG3 {
|
||||
regulator-name = "vcca_1v8";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_sdio: LDO_REG4 {
|
||||
regulator-name = "vcc_sdio";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <3000000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcca3v0_codec: LDO_REG5 {
|
||||
regulator-name = "vcca3v0_codec";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_1v5: LDO_REG6 {
|
||||
regulator-name = "vcc_1v5";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1500000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcca1v8_codec: LDO_REG7 {
|
||||
regulator-name = "vcca1v8_codec";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_3v0: LDO_REG8 {
|
||||
regulator-name = "vcc_3v0";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <3000000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc3v3_s3: vcc_lan: SWITCH_REG1 {
|
||||
regulator-name = "vcc3v3_s3";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc3v3_s0: SWITCH_REG2 {
|
||||
regulator-name = "vcc3v3_s0";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
vdd_cpu_b: regulator@40 {
|
||||
compatible = "silergy,syr827";
|
||||
reg = <0x40>;
|
||||
fcs,suspend-voltage-selector = <1>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vsel1_gpio>;
|
||||
regulator-name = "vdd_cpu_b";
|
||||
regulator-min-microvolt = <712500>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-ramp-delay = <1000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_gpu: regulator@41 {
|
||||
compatible = "silergy,syr828";
|
||||
reg = <0x41>;
|
||||
fcs,suspend-voltage-selector = <1>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vsel2_gpio>;
|
||||
regulator-name = "vdd_gpu";
|
||||
regulator-min-microvolt = <712500>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-ramp-delay = <1000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
i2c-scl-rising-time-ns = <300>;
|
||||
i2c-scl-falling-time-ns = <15>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
i2c-scl-rising-time-ns = <450>;
|
||||
i2c-scl-falling-time-ns = <15>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c4 {
|
||||
i2c-scl-rising-time-ns = <600>;
|
||||
i2c-scl-falling-time-ns = <20>;
|
||||
status = "okay";
|
||||
|
||||
fusb0: typec-portc@22 {
|
||||
compatible = "fcs,fusb302";
|
||||
reg = <0x22>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&fusb0_int>;
|
||||
vbus-supply = <&vcc5v0_typec>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&i2s0 {
|
||||
rockchip,playback-channels = <8>;
|
||||
rockchip,capture-channels = <8>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2s1 {
|
||||
rockchip,playback-channels = <2>;
|
||||
rockchip,capture-channels = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2s2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&io_domains {
|
||||
status = "okay";
|
||||
|
||||
bt656-supply = <&vcc1v8_dvp>;
|
||||
audio-supply = <&vcca1v8_codec>;
|
||||
sdmmc-supply = <&vcc_sdio>;
|
||||
gpio1830-supply = <&vcc_3v0>;
|
||||
};
|
||||
|
||||
&pmu_io_domains {
|
||||
pmu1830-supply = <&vcc_3v0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
buttons {
|
||||
pwrbtn: pwrbtn {
|
||||
rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
fusb302x {
|
||||
fusb0_int: fusb0-int {
|
||||
rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
work_led_gpio: work_led-gpio {
|
||||
rockchip,pins = <0 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
|
||||
diy_led_gpio: diy_led-gpio {
|
||||
rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
pcie {
|
||||
pcie_pwr_en: pcie-pwr-en {
|
||||
rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
pmic {
|
||||
pmic_int_l: pmic-int-l {
|
||||
rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
|
||||
vsel1_gpio: vsel1-gpio {
|
||||
rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||
};
|
||||
|
||||
vsel2_gpio: vsel2-gpio {
|
||||
rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||
};
|
||||
};
|
||||
|
||||
sdio-pwrseq {
|
||||
wifi_enable_h: wifi-enable-h {
|
||||
rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
usb-typec {
|
||||
vcc5v0_typec_en: vcc5v0_typec_en {
|
||||
rockchip,pins = <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
usb2 {
|
||||
vcc5v0_host_en: vcc5v0-host-en {
|
||||
rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pwm0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&saradc {
|
||||
vref-supply = <&vcca1v8_s3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdmmc {
|
||||
bus-width = <4>;
|
||||
cap-mmc-highspeed;
|
||||
cap-sd-highspeed;
|
||||
cd-gpios = <&gpio0 7 GPIO_ACTIVE_LOW>;
|
||||
disable-wp;
|
||||
max-frequency = <150000000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdhci {
|
||||
bus-width = <8>;
|
||||
mmc-hs400-1_8v;
|
||||
mmc-hs400-enhanced-strobe;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tcphy0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tcphy1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tsadc {
|
||||
/* tshut mode 0:CRU 1:GPIO */
|
||||
rockchip,hw-tshut-mode = <1>;
|
||||
/* tshut polarity 0:LOW 1:HIGH */
|
||||
rockchip,hw-tshut-polarity = <1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy0 {
|
||||
status = "okay";
|
||||
|
||||
u2phy0_otg: otg-port {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
u2phy0_host: host-port {
|
||||
phy-supply = <&vcc5v0_host>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&u2phy1 {
|
||||
status = "okay";
|
||||
|
||||
u2phy1_otg: otg-port {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
u2phy1_host: host-port {
|
||||
phy-supply = <&vcc5v0_host>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_xfer &uart0_cts>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host0_ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host0_ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host1_ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host1_ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd3_0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_0 {
|
||||
status = "okay";
|
||||
dr_mode = "otg";
|
||||
};
|
||||
|
||||
&usbdrd3_1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_1 {
|
||||
status = "okay";
|
||||
dr_mode = "host";
|
||||
};
|
||||
|
||||
&vopb {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vopb_mmu {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vopl {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vopl_mmu {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -10,3 +10,11 @@
|
||||
&spi1 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user