]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
i2c: piix4: Move i2c_piix4 macros and structures to common header
authorShyam Sundar S K <Shyam-sundar.S-k@amd.com>
Mon, 23 Sep 2024 08:03:55 +0000 (13:33 +0530)
committerAndi Shyti <andi.shyti@kernel.org>
Wed, 13 Nov 2024 22:29:46 +0000 (23:29 +0100)
Add a separate header file to relocate the common code from the i2c_piix4
driver, allowing the AMD ASF driver to utilize the same code.

Update the MAINTAINERS file to include information about the new common
header file.

Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Co-developed-by: Sanket Goswami <Sanket.Goswami@amd.com>
Signed-off-by: Sanket Goswami <Sanket.Goswami@amd.com>
Signed-off-by: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
MAINTAINERS
drivers/i2c/busses/i2c-piix4.c
drivers/i2c/busses/i2c-piix4.h [new file with mode: 0644]

index 21fdaa19229ae84d8befc4ed0eed1a2167eb0687..221c0dbc92b065fbcd3f5454a5448020f0bf0e57 100644 (file)
@@ -10723,7 +10723,7 @@ F:      drivers/i2c/busses/i2c-i801.c
 F:     drivers/i2c/busses/i2c-isch.c
 F:     drivers/i2c/busses/i2c-nforce2-s4985.c
 F:     drivers/i2c/busses/i2c-nforce2.c
-F:     drivers/i2c/busses/i2c-piix4.c
+F:     drivers/i2c/busses/i2c-piix4.*
 F:     drivers/i2c/busses/i2c-sis5595.c
 F:     drivers/i2c/busses/i2c-sis630.c
 F:     drivers/i2c/busses/i2c-sis96x.c
index 5ff7e608afb99c3d907d90d3f8c75fb60f1da56b..bd9d9ea43394e75aef9e8bd6678a18e600f99c6d 100644 (file)
 #include <linux/acpi.h>
 #include <linux/io.h>
 
-
-/* PIIX4 SMBus address offsets */
-#define SMBHSTSTS      (0 + piix4_smba)
-#define SMBHSLVSTS     (1 + piix4_smba)
-#define SMBHSTCNT      (2 + piix4_smba)
-#define SMBHSTCMD      (3 + piix4_smba)
-#define SMBHSTADD      (4 + piix4_smba)
-#define SMBHSTDAT0     (5 + piix4_smba)
-#define SMBHSTDAT1     (6 + piix4_smba)
-#define SMBBLKDAT      (7 + piix4_smba)
-#define SMBSLVCNT      (8 + piix4_smba)
-#define SMBSHDWCMD     (9 + piix4_smba)
-#define SMBSLVEVT      (0xA + piix4_smba)
-#define SMBSLVDAT      (0xC + piix4_smba)
+#include "i2c-piix4.h"
 
 /* count for request_region */
 #define SMBIOSIZE      9
@@ -70,7 +57,6 @@
 #define PIIX4_BYTE             0x04
 #define PIIX4_BYTE_DATA                0x08
 #define PIIX4_WORD_DATA                0x0C
-#define PIIX4_BLOCK_DATA       0x14
 
 /* Multi-port constants */
 #define PIIX4_MAX_ADAPTERS     4
@@ -160,11 +146,6 @@ static const char *piix4_main_port_names_sb800[PIIX4_MAX_ADAPTERS] = {
 };
 static const char *piix4_aux_port_name_sb800 = " port 1";
 
-struct sb800_mmio_cfg {
-       void __iomem *addr;
-       bool use_mmio;
-};
-
 struct i2c_piix4_adapdata {
        unsigned short smba;
 
diff --git a/drivers/i2c/busses/i2c-piix4.h b/drivers/i2c/busses/i2c-piix4.h
new file mode 100644 (file)
index 0000000..32da914
--- /dev/null
@@ -0,0 +1,39 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * PIIX4/SB800 SMBus Interfaces
+ *
+ * Copyright (c) 2024, Advanced Micro Devices, Inc.
+ * All Rights Reserved.
+ *
+ * Authors: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
+ *         Sanket Goswami <Sanket.Goswami@amd.com>
+ */
+
+#ifndef I2C_PIIX4_H
+#define I2C_PIIX4_H
+
+#include <linux/types.h>
+
+/* PIIX4 SMBus address offsets */
+#define SMBHSTSTS      (0x00 + piix4_smba)
+#define SMBHSLVSTS     (0x01 + piix4_smba)
+#define SMBHSTCNT      (0x02 + piix4_smba)
+#define SMBHSTCMD      (0x03 + piix4_smba)
+#define SMBHSTADD      (0x04 + piix4_smba)
+#define SMBHSTDAT0     (0x05 + piix4_smba)
+#define SMBHSTDAT1     (0x06 + piix4_smba)
+#define SMBBLKDAT      (0x07 + piix4_smba)
+#define SMBSLVCNT      (0x08 + piix4_smba)
+#define SMBSHDWCMD     (0x09 + piix4_smba)
+#define SMBSLVEVT      (0x0A + piix4_smba)
+#define SMBSLVDAT      (0x0C + piix4_smba)
+
+/* PIIX4 constants */
+#define PIIX4_BLOCK_DATA       0x14
+
+struct sb800_mmio_cfg {
+       void __iomem *addr;
+       bool use_mmio;
+};
+
+#endif /* I2C_PIIX4_H */