Skip to content

Commit 650e2c3

Browse files
Shyam Sundar S KAndi Shyti
authored andcommitted
i2c: piix4: Move i2c_piix4 macros and structures to common header
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>
1 parent 9d9929e commit 650e2c3

3 files changed

Lines changed: 41 additions & 21 deletions

File tree

MAINTAINERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10723,7 +10723,7 @@ F: drivers/i2c/busses/i2c-i801.c
1072310723
F: drivers/i2c/busses/i2c-isch.c
1072410724
F: drivers/i2c/busses/i2c-nforce2-s4985.c
1072510725
F: drivers/i2c/busses/i2c-nforce2.c
10726-
F: drivers/i2c/busses/i2c-piix4.c
10726+
F: drivers/i2c/busses/i2c-piix4.*
1072710727
F: drivers/i2c/busses/i2c-sis5595.c
1072810728
F: drivers/i2c/busses/i2c-sis630.c
1072910729
F: drivers/i2c/busses/i2c-sis96x.c

drivers/i2c/busses/i2c-piix4.c

Lines changed: 1 addition & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -35,20 +35,7 @@
3535
#include <linux/acpi.h>
3636
#include <linux/io.h>
3737

38-
39-
/* PIIX4 SMBus address offsets */
40-
#define SMBHSTSTS (0 + piix4_smba)
41-
#define SMBHSLVSTS (1 + piix4_smba)
42-
#define SMBHSTCNT (2 + piix4_smba)
43-
#define SMBHSTCMD (3 + piix4_smba)
44-
#define SMBHSTADD (4 + piix4_smba)
45-
#define SMBHSTDAT0 (5 + piix4_smba)
46-
#define SMBHSTDAT1 (6 + piix4_smba)
47-
#define SMBBLKDAT (7 + piix4_smba)
48-
#define SMBSLVCNT (8 + piix4_smba)
49-
#define SMBSHDWCMD (9 + piix4_smba)
50-
#define SMBSLVEVT (0xA + piix4_smba)
51-
#define SMBSLVDAT (0xC + piix4_smba)
38+
#include "i2c-piix4.h"
5239

5340
/* count for request_region */
5441
#define SMBIOSIZE 9
@@ -70,7 +57,6 @@
7057
#define PIIX4_BYTE 0x04
7158
#define PIIX4_BYTE_DATA 0x08
7259
#define PIIX4_WORD_DATA 0x0C
73-
#define PIIX4_BLOCK_DATA 0x14
7460

7561
/* Multi-port constants */
7662
#define PIIX4_MAX_ADAPTERS 4
@@ -160,11 +146,6 @@ static const char *piix4_main_port_names_sb800[PIIX4_MAX_ADAPTERS] = {
160146
};
161147
static const char *piix4_aux_port_name_sb800 = " port 1";
162148

163-
struct sb800_mmio_cfg {
164-
void __iomem *addr;
165-
bool use_mmio;
166-
};
167-
168149
struct i2c_piix4_adapdata {
169150
unsigned short smba;
170151

drivers/i2c/busses/i2c-piix4.h

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
/* SPDX-License-Identifier: GPL-2.0-or-later */
2+
/*
3+
* PIIX4/SB800 SMBus Interfaces
4+
*
5+
* Copyright (c) 2024, Advanced Micro Devices, Inc.
6+
* All Rights Reserved.
7+
*
8+
* Authors: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
9+
* Sanket Goswami <Sanket.Goswami@amd.com>
10+
*/
11+
12+
#ifndef I2C_PIIX4_H
13+
#define I2C_PIIX4_H
14+
15+
#include <linux/types.h>
16+
17+
/* PIIX4 SMBus address offsets */
18+
#define SMBHSTSTS (0x00 + piix4_smba)
19+
#define SMBHSLVSTS (0x01 + piix4_smba)
20+
#define SMBHSTCNT (0x02 + piix4_smba)
21+
#define SMBHSTCMD (0x03 + piix4_smba)
22+
#define SMBHSTADD (0x04 + piix4_smba)
23+
#define SMBHSTDAT0 (0x05 + piix4_smba)
24+
#define SMBHSTDAT1 (0x06 + piix4_smba)
25+
#define SMBBLKDAT (0x07 + piix4_smba)
26+
#define SMBSLVCNT (0x08 + piix4_smba)
27+
#define SMBSHDWCMD (0x09 + piix4_smba)
28+
#define SMBSLVEVT (0x0A + piix4_smba)
29+
#define SMBSLVDAT (0x0C + piix4_smba)
30+
31+
/* PIIX4 constants */
32+
#define PIIX4_BLOCK_DATA 0x14
33+
34+
struct sb800_mmio_cfg {
35+
void __iomem *addr;
36+
bool use_mmio;
37+
};
38+
39+
#endif /* I2C_PIIX4_H */

0 commit comments

Comments
 (0)