Skip to content

Commit d12d9d1

Browse files
committed
mb/msi/ms7e56/devicetree.cb: Add USB controller configuration
Add USB controller tuning settings and OC pin map based on registers dumped from vendor BIOS. Upstream-Status: Pending Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
1 parent 8a45749 commit d12d9d1

1 file changed

Lines changed: 154 additions & 0 deletions

File tree

src/mainboard/msi/ms7e56/devicetree.cb

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,160 @@ chip soc/amd/phoenix
4545

4646
register "pspp_policy" = "DXIO_PSPP_DISABLED"
4747

48+
register "usb_phy_custom" = "true"
49+
50+
register "usb_phy" = "{
51+
.Usb2PhyPort[0] = {
52+
.compdistune = 0x1,
53+
.pllbtune = 0x1,
54+
.pllitune = 0x0,
55+
.pllptune = 0xc,
56+
.sqrxtune = 0x2,
57+
.txfslstune = 0x1,
58+
.txpreempamptune = 0x3,
59+
.txpreemppulsetune = 0x0,
60+
.txrisetune = 0x1,
61+
.txvreftune = 0x3,
62+
.txhsxvtune = 0x3,
63+
.txrestune = 0x2,
64+
},
65+
.Usb2PhyPort[1] = {
66+
.compdistune = 0x1,
67+
.pllbtune = 0x1,
68+
.pllitune = 0x0,
69+
.pllptune = 0xc,
70+
.sqrxtune = 0x2,
71+
.txfslstune = 0x1,
72+
.txpreempamptune = 0x3,
73+
.txpreemppulsetune = 0x0,
74+
.txrisetune = 0x1,
75+
.txvreftune = 0x3,
76+
.txhsxvtune = 0x3,
77+
.txrestune = 0x2,
78+
},
79+
.Usb2PhyPort[2] = {
80+
.compdistune = 0x1,
81+
.pllbtune = 0x1,
82+
.pllitune = 0x0,
83+
.pllptune = 0xc,
84+
.sqrxtune = 0x2,
85+
.txfslstune = 0x1,
86+
.txpreempamptune = 0x3,
87+
.txpreemppulsetune = 0x0,
88+
.txrisetune = 0x1,
89+
.txvreftune = 0x3,
90+
.txhsxvtune = 0x3,
91+
.txrestune = 0x2,
92+
},
93+
.Usb2PhyPort[3] = {
94+
.compdistune = 0x1,
95+
.pllbtune = 0x1,
96+
.pllitune = 0x0,
97+
.pllptune = 0xc,
98+
.sqrxtune = 0x2,
99+
.txfslstune = 0x1,
100+
.txpreempamptune = 0x3,
101+
.txpreemppulsetune = 0x0,
102+
.txrisetune = 0x1,
103+
.txvreftune = 0x3,
104+
.txhsxvtune = 0x3,
105+
.txrestune = 0x2,
106+
},
107+
.Usb2PhyPort[4] = {
108+
.compdistune = 0x1,
109+
.pllbtune = 0x1,
110+
.pllitune = 0x0,
111+
.pllptune = 0xc,
112+
.sqrxtune = 0x2,
113+
.txfslstune = 0x1,
114+
.txpreempamptune = 0x3,
115+
.txpreemppulsetune = 0x0,
116+
.txrisetune = 0x1,
117+
.txvreftune = 0x3,
118+
.txhsxvtune = 0x3,
119+
.txrestune = 0x2,
120+
},
121+
.Usb2PhyPort[5] = {
122+
.compdistune = 0x1,
123+
.pllbtune = 0x1,
124+
.pllitune = 0x0,
125+
.pllptune = 0xc,
126+
.sqrxtune = 0x2,
127+
.txfslstune = 0x1,
128+
.txpreempamptune = 0x3,
129+
.txpreemppulsetune = 0x0,
130+
.txrisetune = 0x1,
131+
.txvreftune = 0x3,
132+
.txhsxvtune = 0x3,
133+
.txrestune = 0x2,
134+
},
135+
.Usb2PhyPort[6] = {
136+
.compdistune = 0x1,
137+
.pllbtune = 0x1,
138+
.pllitune = 0x0,
139+
.pllptune = 0xc,
140+
.sqrxtune = 0x2,
141+
.txfslstune = 0x1,
142+
.txpreempamptune = 0x3,
143+
.txpreemppulsetune = 0x0,
144+
.txrisetune = 0x1,
145+
.txvreftune = 0x3,
146+
.txhsxvtune = 0x3,
147+
.txrestune = 0x2,
148+
},
149+
.Usb2PhyPort[7] = {
150+
.compdistune = 0x1,
151+
.pllbtune = 0x1,
152+
.pllitune = 0x0,
153+
.pllptune = 0xc,
154+
.sqrxtune = 0x2,
155+
.txfslstune = 0x1,
156+
.txpreempamptune = 0x3,
157+
.txpreemppulsetune = 0x0,
158+
.txrisetune = 0x1,
159+
.txvreftune = 0x3,
160+
.txhsxvtune = 0x3,
161+
.txrestune = 0x2,
162+
},
163+
.Usb3PhyPort[0] = {
164+
.tx_term_ctrl = 0x2,
165+
.rx_term_ctrl = 0x2,
166+
.tx_vboost_lvl_en = 0x0,
167+
.tx_vboost_lvl = 0x5,
168+
},
169+
.Usb3PhyPort[1] = {
170+
.tx_term_ctrl = 0x2,
171+
.rx_term_ctrl = 0x2,
172+
.tx_vboost_lvl_en = 0x0,
173+
.tx_vboost_lvl = 0x5,
174+
},
175+
.Usb3PhyPort[2] = {
176+
.tx_term_ctrl = 0x2,
177+
.rx_term_ctrl = 0x2,
178+
.tx_vboost_lvl_en = 0x0,
179+
.tx_vboost_lvl = 0x5,
180+
},
181+
.ComboPhyStaticConfig[0] = USB_COMBO_PHY_MODE_USB_ONLY,
182+
.ComboPhyStaticConfig[1] = USB_COMBO_PHY_MODE_USB_ONLY,
183+
.ComboPhyStaticConfig[2] = USB_COMBO_PHY_MODE_USB_ONLY,
184+
}"
185+
186+
register "usb3_force_gen1" = "{
187+
.port0 = 1,
188+
.port2 = 1,
189+
}"
190+
191+
register "polarity_cfg_low" = "true"
192+
193+
register "usb2_oc_pins[0]" = "{ 0x2, 0x3, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf }"
194+
register "usb2_oc_pins[1]" = "{ 0x3, 0x3, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf }"
195+
register "usb2_oc_pins[2]" = "{ 0x1, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf }"
196+
register "usb2_oc_pins[3]" = "{ 0x1, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf }"
197+
register "usb3_oc_pins[0]" = "{ 0x2, 0x3, 0xf, 0xf }"
198+
register "usb3_oc_pins[1]" = "{ 0x3, 0xf, 0xf, 0xf }"
199+
register "usb3_oc_pins[2]" = "{ 0x1, 0xf, 0xf, 0xf }"
200+
register "usb3_oc_pins[3]" = "{ 0x1, 0xf, 0xf, 0xf }"
201+
48202
device domain 0 on
49203
device ref iommu on end
50204

0 commit comments

Comments
 (0)