Skip to contentSkip to conversation

drivers/misc: Add driver for Aspeed PECI

PATCH In review Jae Hyun Yoo 1 participant 1 message Dec 6, 2017

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 3/6 drivers/misc: Add driver for Aspeed PECI

This commit adds driver implementation for Aspeed PECI.

---
 drivers/misc/Kconfig                   |    7 +
 drivers/misc/Makefile                  |    1 +
 drivers/misc/aspeed-peci.c             | 1113 ++++++++++++++++++++++++++++++++
 include/misc/aspeed_peci.h             |   19 +
 include/uapi/linux/Kbuild              |    1 +
 include/uapi/linux/aspeed_peci_ioctl.h |  281 ++++++++
 6 files changed, 1422 insertions(+)
 create mode 100644 drivers/misc/aspeed-peci.c
 create mode 100644 include/misc/aspeed_peci.h
 create mode 100644 include/uapi/linux/aspeed_peci_ioctl.h
drivers/misc/Kconfig +7 -0
index 02ffdd1fdeaf..d1779d7c4bc7 100644
@@ -782,6 +782,13 @@ config ASPEED_LPC_SNOOP
 	  allows the BMC to listen on and save the data written by
 	  the host to an arbitrary LPC I/O port.
 
+config ASPEED_PECI
+	tristate "Aspeed AST2400/AST2500 PECI support"
+	depends on (ARCH_ASPEED || COMPILE_TEST) && REGMAP && MFD_SYSCON && CRC8
+	help
+	  Driver for Platform Environment Control Interface (PECI) controller
+	  on Aspeed SoC.
+
 source "drivers/misc/c2port/Kconfig"
 source "drivers/misc/eeprom/Kconfig"
 source "drivers/misc/cb710/Kconfig"
drivers/misc/Makefile +1 -0
index ab8af76991d7..8a224558e1a8 100644
@@ -55,6 +55,7 @@ obj-$(CONFIG_CXL_BASE)		+= cxl/
 obj-$(CONFIG_PANEL)             += panel.o
 obj-$(CONFIG_ASPEED_LPC_CTRL)	+= aspeed-lpc-ctrl.o
 obj-$(CONFIG_ASPEED_LPC_SNOOP)	+= aspeed-lpc-snoop.o
+obj-$(CONFIG_ASPEED_PECI)       += aspeed-peci.o
 
 lkdtm-$(CONFIG_LKDTM)		+= lkdtm_core.o
 lkdtm-$(CONFIG_LKDTM)		+= lkdtm_bugs.o
drivers/misc/aspeed-peci.c new file +1113 -0

1,113 lines not on this page · raw message

include/misc/aspeed_peci.h new file +19 -0
new file mode 100644
index 000000000000..468d5f6200f9
@@ -0,0 +1,19 @@
+/*
+ * Aspeed 24XX/25XX PECI Controller.
+ *
+ * Copyright (c) 2017 Intel Corporation
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ */
+
+#ifndef __ASPEED_PECI_H
+#define __ASPEED_PECI_H
+
+#include <linux/aspeed_peci_ioctl.h>
+
+long aspeed_peci_ioctl(struct file *filp, unsigned int cmd, unsigned long arg);
+
+#endif /* __ASPEED_PECI_H */
include/uapi/linux/Kbuild +1 -0
index f330ba4547cf..f849f409dabb 100644
@@ -39,6 +39,7 @@ header-y += aio_abi.h
 header-y += am437x-vpfe.h
 header-y += apm_bios.h
 header-y += arcfb.h
+header-y += aspeed_peci_ioctl.h
 header-y += atalk.h
 header-y += atmapi.h
 header-y += atmarp.h
include/uapi/linux/aspeed_peci_ioctl.h new file +281 -0

281 lines not on this page · raw message

Signature · 1 line
2.15.1