1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2
3 #include <device/device.h>
4 #include <device/pnp.h>
5
6 #include "pc87384.h"
7
8 static struct device_operations ops = {
9 .read_resources = pnp_read_resources,
10 .set_resources = pnp_set_resources,
11 .enable_resources = pnp_enable_resources,
12 .enable = pnp_enable,
13 };
14
15 static struct pnp_info pnp_dev_info[] = {
16 { NULL, PC87384_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8 },
17 { NULL, PC87384_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8 },
18 { NULL, PC87384_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8 },
19 { NULL, PC87384_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff0 },
20 };
21
enable_dev(struct device * dev)22 static void enable_dev(struct device *dev)
23 {
24 pnp_enable_devices(dev, &ops, ARRAY_SIZE(pnp_dev_info), pnp_dev_info);
25 }
26
27 struct chip_operations superio_nsc_pc87384_ops = {
28 .name = "NSC PC87384 Super I/O",
29 .enable_dev = enable_dev,
30 };
31