Skip to content

Commit c66520c

Browse files
Wolfram Sangwsakernel
authored andcommitted
i2c: gpio: move to per-adapter debugfs directory
The I2C core now provides a per-adapter debugfs directory. Use it instead of creating a custom one. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: Wolfram Sang <wsa@kernel.org>
1 parent 73febd7 commit c66520c

1 file changed

Lines changed: 6 additions & 28 deletions

File tree

drivers/i2c/busses/i2c-gpio.c

Lines changed: 6 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ struct i2c_gpio_private_data {
2525
struct i2c_algo_bit_data bit_data;
2626
struct i2c_gpio_platform_data pdata;
2727
#ifdef CONFIG_I2C_GPIO_FAULT_INJECTOR
28-
struct dentry *debug_dir;
2928
/* these must be protected by bus lock */
3029
struct completion scl_irq_completion;
3130
u64 scl_irq_data;
@@ -72,7 +71,6 @@ static int i2c_gpio_getscl(void *data)
7271
}
7372

7473
#ifdef CONFIG_I2C_GPIO_FAULT_INJECTOR
75-
static struct dentry *i2c_gpio_debug_dir;
7674

7775
#define setsda(bd, val) ((bd)->setsda((bd)->data, val))
7876
#define setscl(bd, val) ((bd)->setscl((bd)->data, val))
@@ -258,41 +256,23 @@ static void i2c_gpio_fault_injector_init(struct platform_device *pdev)
258256
{
259257
struct i2c_gpio_private_data *priv = platform_get_drvdata(pdev);
260258

261-
/*
262-
* If there will be a debugfs-dir per i2c adapter somewhen, put the
263-
* 'fault-injector' dir there. Until then, we have a global dir with
264-
* all adapters as subdirs.
265-
*/
266-
if (!i2c_gpio_debug_dir)
267-
i2c_gpio_debug_dir = debugfs_create_dir("i2c-fault-injector", NULL);
268-
269-
priv->debug_dir = debugfs_create_dir(pdev->name, i2c_gpio_debug_dir);
270-
271259
init_completion(&priv->scl_irq_completion);
272260

273-
debugfs_create_file_unsafe("incomplete_address_phase", 0200, priv->debug_dir,
261+
debugfs_create_file_unsafe("incomplete_address_phase", 0200, priv->adap.debugfs,
274262
priv, &fops_incomplete_addr_phase);
275-
debugfs_create_file_unsafe("incomplete_write_byte", 0200, priv->debug_dir,
263+
debugfs_create_file_unsafe("incomplete_write_byte", 0200, priv->adap.debugfs,
276264
priv, &fops_incomplete_write_byte);
277265
if (priv->bit_data.getscl) {
278-
debugfs_create_file_unsafe("inject_panic", 0200, priv->debug_dir,
266+
debugfs_create_file_unsafe("inject_panic", 0200, priv->adap.debugfs,
279267
priv, &fops_inject_panic);
280-
debugfs_create_file_unsafe("lose_arbitration", 0200, priv->debug_dir,
268+
debugfs_create_file_unsafe("lose_arbitration", 0200, priv->adap.debugfs,
281269
priv, &fops_lose_arbitration);
282270
}
283-
debugfs_create_file_unsafe("scl", 0600, priv->debug_dir, priv, &fops_scl);
284-
debugfs_create_file_unsafe("sda", 0600, priv->debug_dir, priv, &fops_sda);
285-
}
286-
287-
static void i2c_gpio_fault_injector_exit(struct platform_device *pdev)
288-
{
289-
struct i2c_gpio_private_data *priv = platform_get_drvdata(pdev);
290-
291-
debugfs_remove_recursive(priv->debug_dir);
271+
debugfs_create_file_unsafe("scl", 0600, priv->adap.debugfs, priv, &fops_scl);
272+
debugfs_create_file_unsafe("sda", 0600, priv->adap.debugfs, priv, &fops_sda);
292273
}
293274
#else
294275
static inline void i2c_gpio_fault_injector_init(struct platform_device *pdev) {}
295-
static inline void i2c_gpio_fault_injector_exit(struct platform_device *pdev) {}
296276
#endif /* CONFIG_I2C_GPIO_FAULT_INJECTOR*/
297277

298278
/* Get i2c-gpio properties from DT or ACPI table */
@@ -475,8 +455,6 @@ static void i2c_gpio_remove(struct platform_device *pdev)
475455
struct i2c_gpio_private_data *priv;
476456
struct i2c_adapter *adap;
477457

478-
i2c_gpio_fault_injector_exit(pdev);
479-
480458
priv = platform_get_drvdata(pdev);
481459
adap = &priv->adap;
482460

0 commit comments

Comments
 (0)