summaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpio-mockup.c
diff options
context:
space:
mode:
authorBartosz Golaszewski <brgl@bgdev.pl>2017-11-27 11:48:45 +0100
committerLinus Walleij <linus.walleij@linaro.org>2017-12-02 22:42:27 +0100
commitca8792af40afb1e83e6910eac1bc48a91694fba3 (patch)
treea97b42041cacefedfab06628afb94a2f79af3454 /drivers/gpio/gpio-mockup.c
parentgpio: mockup: pass the named_lines parameter over platform_data (diff)
downloadlinux-ca8792af40afb1e83e6910eac1bc48a91694fba3.tar.xz
linux-ca8792af40afb1e83e6910eac1bc48a91694fba3.zip
gpio: mockup: extend the debugfs layout
Currently each chip has a dedicated directory in debugfs for event triggers. We use the chip's label for the directory name, but the user can't really associate these directories with chip names without parsing the relevant sysfs entries. Use chip names for directory names. For backward compatibility: create links pointing to the actual directories named using the chip labels. Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to '')
-rw-r--r--drivers/gpio/gpio-mockup.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/gpio/gpio-mockup.c b/drivers/gpio/gpio-mockup.c
index 9da90ad87030..9a880e15ea0b 100644
--- a/drivers/gpio/gpio-mockup.c
+++ b/drivers/gpio/gpio-mockup.c
@@ -196,17 +196,23 @@ static void gpio_mockup_debugfs_setup(struct device *dev,
struct gpio_mockup_chip *chip)
{
struct gpio_mockup_dbgfs_private *priv;
- struct dentry *evfile;
+ struct dentry *evfile, *link;
struct gpio_chip *gc;
+ const char *devname;
char *name;
int i;
gc = &chip->gc;
+ devname = dev_name(&gc->gpiodev->dev);
- chip->dbg_dir = debugfs_create_dir(gc->label, gpio_mockup_dbg_dir);
+ chip->dbg_dir = debugfs_create_dir(devname, gpio_mockup_dbg_dir);
if (!chip->dbg_dir)
goto err;
+ link = debugfs_create_symlink(gc->label, gpio_mockup_dbg_dir, devname);
+ if (!link)
+ goto err;
+
for (i = 0; i < gc->ngpio; i++) {
name = devm_kasprintf(dev, GFP_KERNEL, "%d", i);
if (!name)