util/superiotool: Add ITE IT8616E/IT8656E support

Datasheet is not publicly available. Derive which registers to dump from
IT8625E, since there are mainboards that can use either chip depending
on BOM configuration. Default values are taken from an HP 280 G2 running
a coreboot build that does not configure the Super I/O.

Change-Id: Icc8c56e9cd19e940e85176ac51b8ef978275eb71
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/50457
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Michael Niewöhner <foss@mniewoehner.de>
diff --git a/util/superiotool/ite.c b/util/superiotool/ite.c
index 074d320..9b29ceb 100644
--- a/util/superiotool/ite.c
+++ b/util/superiotool/ite.c
@@ -402,6 +402,44 @@
 			{0x30,0x60,0x61,0x70,0xf0,EOT},
 			{0x00,0x03,0x10,0x0b,0x06,EOT}},
 		{EOT}}},
+	{0x8616, "IT8616E/IT8656E", {
+		/* Derived from IT8625E, defaults dumped from hardware */
+		{NOLDN, NULL,
+			{0x20,0x21,0x22,0x23,0x24,EOT},
+			{0x86,0x16,MISC,0x40,0x00,EOT}},
+		{0x3, "Parallel port (unusable)",
+			{0x30,0x60,0x61,0x62,0x63,0x70,0x71,0x72,0x73,0x74,0xf0,EOT},
+			{0x00,0x03,0x78,0x07,0x78,0x07,0x02,0x00,0x00,0x04,0x0b,EOT}},
+		{0x4, "Environment controller",
+			{0x30,0x60,0x61,0x62,0x63,0x70,0xf0,0xf1,0xf2,
+			 0xf3,0xf4,0xf5,0xf6,0xf9,0xfa,0xfb,0xfc,0xfd,EOT},
+			{0x00,0x02,0x90,0x02,0x30,0x09,0x00,0x00,0x00,
+			 0x00,0xe0,0x00,NANA,0x48,0x00,0x00,0x00,0x40,EOT}},
+		{0x5, "Keyboard",
+			{0x30,0x60,0x61,0x62,0x63,0x70,0x71,0xf0,EOT},
+			{0x01,0x00,0x60,0x00,0x64,0x01,0x02,0x48,EOT}},
+		{0x6, "Mouse",
+			{0x30,0x70,0x71,0xf0,EOT},
+			{0x00,0x0c,0x02,0x00,EOT}},
+		{0x7, "GPIO",
+			{0x25,0x26,0x27,0x28,0x29,0x2a,0x2b,0x2c,0x2d,0x60,
+			 0x61,0x62,0x63,0x70,0x71,0x72,0x73,0x74,0xb0,0xb1,
+			 0xb2,0xb3,0xb4,0xb5,0xb8,0xba,0xbb,0xbc,0xbd,0xc0,
+			 0xc1,0xc2,0xc3,0xc4,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,
+			 0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0xd5,0xd6,0xd7,
+			 0xd8,0xd9,0xe0,0xe1,0xe2,0xe3,0xe4,0xec,0xf0,0xf1,
+			 0xf2,0xf3,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,EOT},
+			{0x00,0xf3,0x00,0x00,0x00,0x01,0x48,0x01,0x00,0x00,
+			 0x00,0x00,0x00,0x00,0x00,MISC,0x38,0x00,0x00,0x00,
+			 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0x03,0x01,
+			 0x00,0x00,0x40,0x00,0x01,0x00,0x00,0x00,0x00,0x00,
+			 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x17,0x00,0x00,
+			 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+			 0x00,0x00,0x00,0x00,0x0e,0x00,0x00,0x00,0x00,0x00,EOT}},
+		{0xa, "Consumer IR",
+			{0x30,0x60,0x61,0x70,0xf0,EOT},
+			{0x00,0x03,0x10,0x0b,0x06,EOT}},
+		{EOT}}},
 	{0x8623, "IT8623E", {
 		/* Defaults are not specified as no datasheet available */
 		{NOLDN, NULL,