Skip to content

Commit 39d0973

Browse files
austriancodersbabic
authored andcommitted
imx6: add Bachmann OT1200 board
This patch adds support for the OT1200 series of devices. Following components are used in u-boot: + ethernet + i2c + emmc + gpio For more details see README. Changes v1 > v2 - make use of enable_cspi_clock(..) - fix usage of OUTPUT_40OHM define - added README Changes v2 > v3 - improve spelling in README - added own copy of mx6q_4x_mt41j128.cfg Signed-off-by: Christian Gmeiner <[email protected]>
1 parent 252499e commit 39d0973

File tree

9 files changed

+682
-0
lines changed

9 files changed

+682
-0
lines changed

Diff for: arch/arm/Kconfig

+4
Original file line numberDiff line numberDiff line change
@@ -414,6 +414,9 @@ config TARGET_HUMMINGBOARD
414414
config TARGET_TQMA6
415415
bool "TQ Systems TQMa6 board"
416416

417+
config TARGET_OT1200
418+
bool "Bachmann OT1200"
419+
417420
config OMAP34XX
418421
bool "OMAP34XX SoC"
419422

@@ -577,6 +580,7 @@ source "board/atmel/at91sam9rlek/Kconfig"
577580
source "board/atmel/at91sam9x5ek/Kconfig"
578581
source "board/atmel/sama5d3_xplained/Kconfig"
579582
source "board/atmel/sama5d3xek/Kconfig"
583+
source "board/bachmann/ot1200/Kconfig"
580584
source "board/balloon3/Kconfig"
581585
source "board/barco/titanium/Kconfig"
582586
source "board/bluegiga/apx4devkit/Kconfig"

Diff for: board/bachmann/ot1200/Kconfig

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
if TARGET_OT1200
2+
3+
config SYS_CPU
4+
string
5+
default "armv7"
6+
7+
config SYS_BOARD
8+
string
9+
default "ot1200"
10+
11+
config SYS_VENDOR
12+
string
13+
default "bachmann"
14+
15+
config SYS_SOC
16+
string
17+
default "mx6"
18+
19+
config SYS_CONFIG_NAME
20+
string
21+
default "ot1200"
22+
23+
endif

Diff for: board/bachmann/ot1200/MAINTAINERS

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
BACHMANN ELECTRONIC OT1200 BOARD
2+
M: Christian Gmeiner <[email protected]>
3+
S: Maintained
4+
F: board/bachmann/ot1200
5+
F: include/configs/ot1200.h
6+
F: configs/ot1200*_defconfig

Diff for: board/bachmann/ot1200/Makefile

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#
2+
# Copyright (C) 2012-2013, Guennadi Liakhovetski <[email protected]>
3+
# (C) Copyright 2012-2013 Freescale Semiconductor, Inc.
4+
# Copyright (C) 2013, Boundary Devices <[email protected]>
5+
#
6+
# SPDX-License-Identifier: GPL-2.0+
7+
#
8+
9+
obj-y := ot1200.o

Diff for: board/bachmann/ot1200/README

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
U-Boot for the Bachmann electronic GmbH OT1200 devices
2+
3+
There are two different versions of the base board, which differ
4+
in the way ethernet is done. The variant detection is done during
5+
runtime based on the address of the found phy.
6+
7+
- "mr" variant
8+
FEC is connected directly to an ethernet switch (KSZ8895). The ethernet
9+
port is always up and auto-negotiation is not possible.
10+
11+
- normal variant
12+
FEC is connected to a normal phy and auto-negotiation is possible.
13+
14+
15+
The variant name is part of the dtb file name loaded by u-boot. This
16+
make is possible to boot the linux kernel and make use variant specific
17+
devicetree (fixed-phy link).
18+
19+
In order to support different display resoltuions/sizes the OT1200 devices
20+
are making use of EDID data stored in an i2c EEPROM.

Diff for: board/bachmann/ot1200/mx6q_4x_mt41j128.cfg

+169
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
/*
2+
* Copyright (C) 2011 Freescale Semiconductor, Inc.
3+
* Jason Liu <[email protected]>
4+
*
5+
* SPDX-License-Identifier: GPL-2.0+
6+
*
7+
* Refer doc/README.imximage for more details about how-to configure
8+
* and create imximage boot image
9+
*
10+
* The syntax is taken as close as possible with the kwbimage
11+
*/
12+
13+
/* image version */
14+
IMAGE_VERSION 2
15+
16+
/*
17+
* Boot Device : one of
18+
* spi, sd (the board has no nand neither onenand)
19+
*/
20+
BOOT_FROM sd
21+
22+
/*
23+
* Device Configuration Data (DCD)
24+
*
25+
* Each entry must have the format:
26+
* Addr-type Address Value
27+
*
28+
* where:
29+
* Addr-type register length (1,2 or 4 bytes)
30+
* Address absolute address of the register
31+
* value value to be stored in the register
32+
*/
33+
DATA 4 0x020e05a8 0x00000030
34+
DATA 4 0x020e05b0 0x00000030
35+
DATA 4 0x020e0524 0x00000030
36+
DATA 4 0x020e051c 0x00000030
37+
38+
DATA 4 0x020e0518 0x00000030
39+
DATA 4 0x020e050c 0x00000030
40+
DATA 4 0x020e05b8 0x00000030
41+
DATA 4 0x020e05c0 0x00000030
42+
43+
DATA 4 0x020e05ac 0x00020030
44+
DATA 4 0x020e05b4 0x00020030
45+
DATA 4 0x020e0528 0x00020030
46+
DATA 4 0x020e0520 0x00020030
47+
48+
DATA 4 0x020e0514 0x00020030
49+
DATA 4 0x020e0510 0x00020030
50+
DATA 4 0x020e05bc 0x00020030
51+
DATA 4 0x020e05c4 0x00020030
52+
53+
DATA 4 0x020e056c 0x00020030
54+
DATA 4 0x020e0578 0x00020030
55+
DATA 4 0x020e0588 0x00020030
56+
DATA 4 0x020e0594 0x00020030
57+
58+
DATA 4 0x020e057c 0x00020030
59+
DATA 4 0x020e0590 0x00003000
60+
DATA 4 0x020e0598 0x00003000
61+
DATA 4 0x020e058c 0x00000000
62+
63+
DATA 4 0x020e059c 0x00003030
64+
DATA 4 0x020e05a0 0x00003030
65+
DATA 4 0x020e0784 0x00000030
66+
DATA 4 0x020e0788 0x00000030
67+
68+
DATA 4 0x020e0794 0x00000030
69+
DATA 4 0x020e079c 0x00000030
70+
DATA 4 0x020e07a0 0x00000030
71+
DATA 4 0x020e07a4 0x00000030
72+
73+
DATA 4 0x020e07a8 0x00000030
74+
DATA 4 0x020e0748 0x00000030
75+
DATA 4 0x020e074c 0x00000030
76+
DATA 4 0x020e0750 0x00020000
77+
78+
DATA 4 0x020e0758 0x00000000
79+
DATA 4 0x020e0774 0x00020000
80+
DATA 4 0x020e078c 0x00000030
81+
DATA 4 0x020e0798 0x000C0000
82+
83+
DATA 4 0x021b081c 0x33333333
84+
DATA 4 0x021b0820 0x33333333
85+
DATA 4 0x021b0824 0x33333333
86+
DATA 4 0x021b0828 0x33333333
87+
88+
DATA 4 0x021b481c 0x33333333
89+
DATA 4 0x021b4820 0x33333333
90+
DATA 4 0x021b4824 0x33333333
91+
DATA 4 0x021b4828 0x33333333
92+
93+
DATA 4 0x021b0018 0x00081740
94+
95+
DATA 4 0x021b001c 0x00008000
96+
DATA 4 0x021b000c 0x555A7974
97+
DATA 4 0x021b0010 0xDB538F64
98+
DATA 4 0x021b0014 0x01FF00DB
99+
DATA 4 0x021b002c 0x000026D2
100+
101+
DATA 4 0x021b0030 0x005A1023
102+
DATA 4 0x021b0008 0x09444040
103+
DATA 4 0x021b0004 0x00025576
104+
DATA 4 0x021b0040 0x00000027
105+
DATA 4 0x021b0000 0x831A0000
106+
107+
DATA 4 0x021b001c 0x04088032
108+
DATA 4 0x021b001c 0x0408803A
109+
DATA 4 0x021b001c 0x00008033
110+
DATA 4 0x021b001c 0x0000803B
111+
DATA 4 0x021b001c 0x00428031
112+
DATA 4 0x021b001c 0x00428039
113+
DATA 4 0x021b001c 0x19308030
114+
DATA 4 0x021b001c 0x19308038
115+
116+
DATA 4 0x021b001c 0x04008040
117+
DATA 4 0x021b001c 0x04008048
118+
DATA 4 0x021b0800 0xA1380003
119+
DATA 4 0x021b4800 0xA1380003
120+
DATA 4 0x021b0020 0x00005800
121+
DATA 4 0x021b0818 0x00022227
122+
DATA 4 0x021b4818 0x00022227
123+
124+
DATA 4 0x021b083c 0x434B0350
125+
DATA 4 0x021b0840 0x034C0359
126+
DATA 4 0x021b483c 0x434B0350
127+
DATA 4 0x021b4840 0x03650348
128+
DATA 4 0x021b0848 0x4436383B
129+
DATA 4 0x021b4848 0x39393341
130+
DATA 4 0x021b0850 0x35373933
131+
DATA 4 0x021b4850 0x48254A36
132+
133+
DATA 4 0x021b080c 0x001F001F
134+
DATA 4 0x021b0810 0x001F001F
135+
136+
DATA 4 0x021b480c 0x00440044
137+
DATA 4 0x021b4810 0x00440044
138+
139+
DATA 4 0x021b08b8 0x00000800
140+
DATA 4 0x021b48b8 0x00000800
141+
142+
DATA 4 0x021b001c 0x00000000
143+
DATA 4 0x021b0404 0x00011006
144+
145+
/* set the default clock gate to save power */
146+
DATA 4 0x020c4068 0x00C03F3F
147+
DATA 4 0x020c406c 0x0030FC03
148+
DATA 4 0x020c4070 0x0FFFC000
149+
DATA 4 0x020c4074 0x3FF00000
150+
DATA 4 0x020c4078 0x00FFF300
151+
DATA 4 0x020c407c 0x0F0000C3
152+
DATA 4 0x020c4080 0x000003FF
153+
154+
/* enable AXI cache for VDOA/VPU/IPU */
155+
DATA 4 0x020e0010 0xF00000CF
156+
/* set IPU AXI-id0 Qos=0xf(bypass) AXI-id1 Qos=0x7 */
157+
DATA 4 0x020e0018 0x007F007F
158+
DATA 4 0x020e001c 0x007F007F
159+
160+
/*
161+
* Setup CCM_CCOSR register as follows:
162+
*
163+
* cko1_en = 1 --> CKO1 enabled
164+
* cko1_div = 111 --> divide by 8
165+
* cko1_sel = 1011 --> ahb_clk_root
166+
*
167+
* This sets CKO1 at ahb_clk_root/8 = 132/8 = 16.5 MHz
168+
*/
169+
DATA 4 0x020c4060 0x000000fb

0 commit comments

Comments
 (0)