Return-Path: Received: from mail-it0-x244.google.com (mail-it0-x244.google.com [IPv6:2607:f8b0:4001:c0b::244]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3sznhd6XP7zDt2h for ; Thu, 20 Oct 2016 10:09:53 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b=i87IrxqB; dkim-atps=neutral Received: by mail-it0-x244.google.com with SMTP id 66so3131638itl.3 for ; Wed, 19 Oct 2016 16:09:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=K3fTJrdyzT7h+kStPLVUlg/ayQvOw8y3pGZvpxmcrrM=; b=i87IrxqBQGr00glChK6VWJL+3d0+76DqzwnDqjCyj61Jauk4igvJKznX/yHW07HrJ1 dXYQLZFM0lXuge1+KqiOibGgYYdXOiYmsTg6ELEtfJnZNsaJRGkkKfM+CX/t2jCq2noI Q/Bo0yHiKVkeMH3qmpUPnta6bQHPOLFzh9JZEyxRCg0glLhowoPF9EaHikfnHZ0DRQPF bAI/hIIcCHG0ehUKo7EBMYd+kWWMqHcytZZW7tRESbxSJrN8rWnquuHZa8pbEYoGN/5E j1SosikgK/EKomlULfidvDjrRjjffodGkAYW0S5enmXunKzxAQE1z/aZHE06PYR+nEC7 aqRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=K3fTJrdyzT7h+kStPLVUlg/ayQvOw8y3pGZvpxmcrrM=; b=JM5dv1ygFOmIDNs5jD3LfVusu4E8DEnV8paQwZ1I//tkhlac65X3ukjX6heGUKBcKS pIIp+DC5kzqnxU920+47eymUiM3um72V4pvswO0yAgORPXr1IQNR9wMcoAklnQJIxcEo qk2NsevcOxps42XkY6b4vbv2ErWT2vPTrhfM6+1zREODfxE7l3v/oGR42t+gavP5TT0X cnXawtWiv84pC8jiveEUnUQ8Huqj9UV7WHM7f8efxwmlXczKoZ0KbcFCrH7oSXXG6Ic4 0iG9UgpNdXiQa6duIFse4ynQoytRndyQs6v1xGaZjspefA8uC/Gv+76mlyGiXonhIn4O ewDA== X-Gm-Message-State: AA6/9Rn01E3q7f+LlqKO5M0odu1fY1fcs7TdxEiK+Bj2yYmhT+EGkwwyHooP5FKlOMeoBg== X-Received: by 10.157.48.3 with SMTP id d3mr4972260otc.204.1476918592062; Wed, 19 Oct 2016 16:09:52 -0700 (PDT) Received: from Christophers-MacBook-Pro.local.com (45-20-192-79.lightspeed.austtx.sbcglobal.net. [45.20.192.79]) by smtp.gmail.com with ESMTPSA id n196sm15487618oig.8.2016.10.19.16.09.51 (version=TLS1 cipher=AES128-SHA bits=128/128); Wed, 19 Oct 2016 16:09:51 -0700 (PDT) From: christopher.lee.bostic@gmail.com To: openbmc@lists.ozlabs.org Cc: joel@jms.id.au, zahrens@us.ibm.com, xxpetri@de.ibm.com, Jeremy Kerr Subject: [PATCH linux v5 01/18] fsi: Add empty fsi bus definitions Date: Wed, 19 Oct 2016 18:09:29 -0500 Message-Id: <1476918586-13475-2-git-send-email-christopher.lee.bostic@gmail.com> X-Mailer: git-send-email 2.7.4 (Apple Git-66) In-Reply-To: <1476918586-13475-1-git-send-email-christopher.lee.bostic@gmail.com> References: <1476918586-13475-1-git-send-email-christopher.lee.bostic@gmail.com> X-BeenThere: openbmc@lists.ozlabs.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Development list for OpenBMC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Oct 2016 23:09:54 -0000 X-List-Received-Date: Wed, 19 Oct 2016 23:09:54 -0000 From: Jeremy Kerr This change adds the initial (empty) fsi bus definition, and introduces drivers/fsi/. Signed-off-by: Jeremy Kerr --- drivers/Kconfig | 2 ++ drivers/Makefile | 1 + drivers/fsi/Kconfig | 12 ++++++++++++ drivers/fsi/Makefile | 2 ++ drivers/fsi/fsi-core.c | 38 ++++++++++++++++++++++++++++++++++++++ include/linux/fsi.h | 23 +++++++++++++++++++++++ 6 files changed, 78 insertions(+) create mode 100644 drivers/fsi/Kconfig create mode 100644 drivers/fsi/Makefile create mode 100644 drivers/fsi/fsi-core.c create mode 100644 include/linux/fsi.h diff --git a/drivers/Kconfig b/drivers/Kconfig index e1e2066..117ca14c 100644 --- a/drivers/Kconfig +++ b/drivers/Kconfig @@ -202,4 +202,6 @@ source "drivers/hwtracing/intel_th/Kconfig" source "drivers/fpga/Kconfig" +source "drivers/fsi/Kconfig" + endmenu diff --git a/drivers/Makefile b/drivers/Makefile index 0b6f3d6..7a1c96f 100644 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -173,3 +173,4 @@ obj-$(CONFIG_STM) += hwtracing/stm/ obj-$(CONFIG_ANDROID) += android/ obj-$(CONFIG_NVMEM) += nvmem/ obj-$(CONFIG_FPGA) += fpga/ +obj-$(CONFIG_FSI) += fsi/ diff --git a/drivers/fsi/Kconfig b/drivers/fsi/Kconfig new file mode 100644 index 0000000..04c1a0e --- /dev/null +++ b/drivers/fsi/Kconfig @@ -0,0 +1,12 @@ +# +# FSI subsystem +# + +menu "FSI support" + +config FSI + tristate "FSI support" + ---help--- + FSI - the FRU Support Interface - is a simple bus for low-level + access to POWER-based hardware. +endmenu diff --git a/drivers/fsi/Makefile b/drivers/fsi/Makefile new file mode 100644 index 0000000..db0e5e7 --- /dev/null +++ b/drivers/fsi/Makefile @@ -0,0 +1,2 @@ + +obj-$(CONFIG_FSI) += fsi-core.o diff --git a/drivers/fsi/fsi-core.c b/drivers/fsi/fsi-core.c new file mode 100644 index 0000000..3e45306 --- /dev/null +++ b/drivers/fsi/fsi-core.c @@ -0,0 +1,38 @@ +/* + * FSI core driver + * + * Copyright (C) IBM Corporation 2016 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include +#include + +/* FSI core & Linux bus type definitions */ + +struct bus_type fsi_bus_type = { + .name = "fsi", +}; +EXPORT_SYMBOL_GPL(fsi_bus_type); + +static int fsi_init(void) +{ + return bus_register(&fsi_bus_type); +} + +static void fsi_exit(void) +{ + bus_unregister(&fsi_bus_type); +} + +module_init(fsi_init); +module_exit(fsi_exit); diff --git a/include/linux/fsi.h b/include/linux/fsi.h new file mode 100644 index 0000000..8e8bdea --- /dev/null +++ b/include/linux/fsi.h @@ -0,0 +1,23 @@ +/* + * FSI device & driver interfaces + * + * Copyright (C) IBM Corporation 2016 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef LINUX_FSI_H +#define LINUX_FSI_H + +#include + +extern struct bus_type fsi_bus_type; + +#endif /* LINUX_FSI_H */ -- 1.8.2.2