<p>Lubomir Rintel has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/22253">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">util/superiotool: recognize a VT1211 LPC superio<br><br>Change-Id: I2c24c347c3e044397944ca2abbceb36f83483daf<br>Signed-off-by: Lubomir Rintel <lkundrak@v3.sk><br>---<br>M 3rdparty/libgfxinit<br>M 3rdparty/libhwbase<br>M 3rdparty/vboot<br>M util/superiotool/superiotool.h<br>M util/superiotool/via.c<br>5 files changed, 40 insertions(+), 20 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/53/22253/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">diff --git a/3rdparty/libgfxinit b/3rdparty/libgfxinit<br>index 3a0e2a0..fb4f8ce 160000<br>--- a/3rdparty/libgfxinit<br>+++ b/3rdparty/libgfxinit<br>@@ -1 +1 @@<br>-Subproject commit 3a0e2a08f5489f3bb5c6e9f97b903e6e10c31a6c<br>+Subproject commit fb4f8ce26a05c2304367c066b806519941658373<br>diff --git a/3rdparty/libhwbase b/3rdparty/libhwbase<br>index 6685971..3bf6759 160000<br>--- a/3rdparty/libhwbase<br>+++ b/3rdparty/libhwbase<br>@@ -1 +1 @@<br>-Subproject commit 66859712e4817288591908d737dbf41ddea31c3a<br>+Subproject commit 3bf6759dc09d27c06b3533fd536e667356853d3d<br>diff --git a/3rdparty/vboot b/3rdparty/vboot<br>index 3b80572..3d25d2b 160000<br>--- a/3rdparty/vboot<br>+++ b/3rdparty/vboot<br>@@ -1 +1 @@<br>-Subproject commit 3b805725c15022783f0737a72b4f27962abf48cd<br>+Subproject commit 3d25d2b4ba7886244176aa8c429fdac2acf7db3e<br>diff --git a/util/superiotool/superiotool.h b/util/superiotool/superiotool.h<br>index 58a9d61..01237a5 100644<br>--- a/util/superiotool/superiotool.h<br>+++ b/util/superiotool/superiotool.h<br>@@ -249,7 +249,7 @@<br> {probe_idregs_smsc, {0x2e, 0x4e, 0x162e, 0x164e, 0x3f0, 0x370, EOT}},<br> {probe_idregs_winbond, {0x2e, 0x4e, 0x3f0, 0x370, 0x250, EOT}},<br> #ifdef PCI_SUPPORT<br>- {probe_idregs_via, {0x3f0, EOT}},<br>+ {probe_idregs_via, {0x2e, 0x4e, 0x3f0, EOT}},<br> /* in fact read the BASE from HW */<br> {probe_idregs_amd, {0xaa, EOT}},<br> #endif<br>diff --git a/util/superiotool/via.c b/util/superiotool/via.c<br>index b71d43c..4a97336 100644<br>--- a/util/superiotool/via.c<br>+++ b/util/superiotool/via.c<br>@@ -19,8 +19,11 @@<br> #define DEVICE_ID_VT82C686_REG 0xe0<br> #define DEVICE_REV_VT82C686_REG 0xe1<br> <br>+#define DEVICE_ID_VT1211_REG 0x20<br>+#define DEVICE_REV_VT1211_REG 0x21<br>+<br> static const struct superio_registers reg_table[] = {<br>- {0x3c, "VT82C686A/VT82C686B", {<br>+ {0x3c, "VT82C686A/VT82C686B/VT1211", {<br> {EOT}}},<br> {EOT}<br> };<br>@@ -74,26 +77,43 @@<br> uint16_t id;<br> uint8_t rev;<br> <br>- probing_for("VIA", "", port);<br>+ if (port == 0x3f0) {<br>+ probing_for("VIA", "(init=vt82c686)", port);<br>+ if (enter_conf_mode_via_vt82c686())<br>+ return;<br> <br>- if (enter_conf_mode_via_vt82c686())<br>- return;<br>+ id = regval(port, DEVICE_ID_VT82C686_REG);<br>+ rev = regval(port, DEVICE_REV_VT82C686_REG);<br> <br>- id = regval(port, DEVICE_ID_VT82C686_REG);<br>- rev = regval(port, DEVICE_REV_VT82C686_REG);<br>-<br>- if (superio_unknown(reg_table, id)) {<br>- if (verbose)<br>- printf(NOTFOUND "id=0x%04x, rev=0x%02x\n", id, rev);<br>+ if (superio_unknown(reg_table, id)) {<br>+ if (verbose)<br>+ printf(NOTFOUND "id=0x%04x, rev=0x%02x\n", id, rev);<br>+ } else {<br>+ printf("Found VIA %s (id=0x%04x, rev=0x%02x) at 0x%x\n",<br>+ get_superio_name(reg_table, id), id, rev, port);<br>+ chip_found = 1;<br>+ }<br> exit_conf_mode_via_vt82c686();<br>- return;<br>+ if (chip_found)<br>+ return;<br>+ } else {<br>+ probing_for("VIA", "(init=0x87,0x87)", port);<br>+ enter_conf_mode_winbond_fintek_ite_8787(port);<br>+<br>+ id = regval(port, DEVICE_ID_VT1211_REG);<br>+ rev = regval(port, DEVICE_REV_VT1211_REG);<br>+<br>+ if (superio_unknown(reg_table, id)) {<br>+ if (verbose)<br>+ printf(NOTFOUND "id=0x%04x, rev=0x%02x\n", id, rev);<br>+ } else {<br>+ printf("Found VIA %s (id=0x%04x, rev=0x%02x) at 0x%x\n",<br>+ get_superio_name(reg_table, id), id, rev, port);<br>+ chip_found = 1;<br>+ }<br> }<br> <br>- printf("Found VIA %s (id=0x%04x, rev=0x%02x) at 0x%x\n",<br>- get_superio_name(reg_table, id), id, rev, port);<br>- chip_found = 1;<br>-<br>- exit_conf_mode_via_vt82c686();<br>+ exit_conf_mode_winbond_fintek_ite_8787(port);<br> }<br> <br> void print_via_chips(void)<br></pre><p>To view, visit <a href="https://review.coreboot.org/22253">change 22253</a>. To unsubscribe, visit <a href="https://review.coreboot.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://review.coreboot.org/22253"/><meta itemprop="name" content="View Change"/></div></div>
<div style="display:none"> Gerrit-Project: coreboot </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I2c24c347c3e044397944ca2abbceb36f83483daf </div>
<div style="display:none"> Gerrit-Change-Number: 22253 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Lubomir Rintel <lkundrak@v3.sk> </div>