summaryrefslogtreecommitdiff
path: root/src/superio/ite/it8721f
diff options
context:
space:
mode:
authorArthur Heymans <arthur@aheymans.xyz>2018-08-20 00:12:31 +0200
committerPatrick Georgi <pgeorgi@google.com>2018-08-21 14:45:32 +0000
commit7200638b6dc436d922a26d4b175e8d818fc611d7 (patch)
tree7c4c3596af0f26c219a0cefde8cb5a4a7a319e02 /src/superio/ite/it8721f
parenteb6f2f55ff139268beaf7cd487d5e0ad5e632b9f (diff)
downloadcoreboot-7200638b6dc436d922a26d4b175e8d818fc611d7.tar.xz
superio/ite/it8721f: Add resources
There is no public datasheet available for this SuperIO so the resources are guessed by looking at other ITE SuperIO's and the register dumps while running vendor firmware. The only board with this SuperIO in the tree is the asus m5a88-v. Most of the devicetree entries would have been invalid here so one should not worry too much about regressions. Tested with Foxconn d41s. Change-Id: I6715c68b3aa9aebf6e292975cbf64ce905b30e8b Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/28225 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Diffstat (limited to 'src/superio/ite/it8721f')
-rw-r--r--src/superio/ite/it8721f/superio.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/superio/ite/it8721f/superio.c b/src/superio/ite/it8721f/superio.c
index 52a145632d..cf3ca3f99f 100644
--- a/src/superio/ite/it8721f/superio.c
+++ b/src/superio/ite/it8721f/superio.c
@@ -54,12 +54,22 @@ static struct device_operations ops = {
.ops_pnp_mode = &pnp_conf_mode_870155_aa,
};
-/* TODO: FDC, PP, EC, KBCM, IR. */
+/* Guessed */
static struct pnp_info pnp_dev_info[] = {
+ { NULL, IT8721F_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0
+ | PNP_MSC0 | PNP_MSC1, 0x0ff8, },
{ NULL, IT8721F_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
{ NULL, IT8721F_SP2, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1,
0x07f8, },
+ { NULL, IT8721F_PP, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_DRQ0 | PNP_MSC0,
+ 0x0ff8, 0x0ff8, },
+ { NULL, IT8721F_EC, PNP_IO0 | PNP_IO1 | PNP_IRQ0
+ | PNP_MSC0 | PNP_MSC1 | PNP_MSC2 | PNP_MSC3
+ | PNP_MSC4 | PNP_MSC5 | PNP_MSC6,
+ 0x0ff8, 0x0ff8, },
{ NULL, IT8721F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
+ { NULL, IT8721F_KBCM, PNP_IRQ0 | PNP_MSC0, },
+ { NULL, IT8721F_IR, },
};
static void enable_dev(struct device *dev)