[Gta04-owner] Has dss 'name' attribute fix been discussed upstream.

NeilBrown neilb at suse.de
Tue Feb 24 04:10:29 CET 2015


Hi Nikolaus,
 I note you have a patch in your tree:

commit 31d50da901ea07db434ca0a299bf13372b8b5534
Author: H. Nikolaus Schaller <hns at goldelico.com>
Date:   Thu May 22 14:22:27 2014 +0200

    dss: restore compatibility to pre-3.13 xorg systems by partially reverting 3
    
    Signed-off-by: H. Nikolaus Schaller <hns at goldelico.com>


I would like to get a fix for this issue upstream.
Have you discussed this issue at all with Tomi?

I'm happy to start a discussion, but if something has already been said I'd
like to know all the background before I blunder in.

my proposed patch is below.

Thanks,
NeilBrown

From: NeilBrown <neilb at suse.de>
Date: Mon, 23 Feb 2015 16:10:55 +1100
Subject: [PATCH] OMAPDSS: restore "name" sysfs entry.

commit 303e4697e762dc92a40405f4e4b8aac02cd0d70b
Author: Tomi Valkeinen <tomi.valkeinen at ti.com>
Date:   Tue Sep 24 17:00:14 2013 +0300

    OMAPDSS: rename display-sysfs 'name' entry

Broke the X server on my device as it couldn't find the display
any more.

That commit claim that 'name' is not compatible with i2c or spi.
i2c does register it own 'name' file, but spi does not, hence my
problem.

So create a special case for i2c: add the name attribute for non-i2c
devices.

Signed-off-by: NeilBrown <neilb at suse.de>

diff --git a/drivers/video/fbdev/omap2/dss/display-sysfs.c b/drivers/video/fbdev/omap2/dss/display-sysfs.c
index 5a2095a98ed8..dff6c6764eec 100644
--- a/drivers/video/fbdev/omap2/dss/display-sysfs.c
+++ b/drivers/video/fbdev/omap2/dss/display-sysfs.c
@@ -24,6 +24,7 @@
 #include <linux/module.h>
 #include <linux/platform_device.h>
 #include <linux/sysfs.h>
+#include <linux/i2c.h>
 
 #include <video/omapdss.h>
 #include "dss.h"
@@ -278,6 +279,7 @@ static ssize_t display_wss_store(struct device *dev,
 }
 
 static DEVICE_ATTR(display_name, S_IRUGO, display_name_show, NULL);
+static DEVICE_ATTR(name, S_IRUGO, display_name_show, NULL);
 static DEVICE_ATTR(enabled, S_IRUGO|S_IWUSR,
 		display_enabled_show, display_enabled_store);
 static DEVICE_ATTR(tear_elim, S_IRUGO|S_IWUSR,
@@ -315,6 +317,17 @@ int display_init_sysfs(struct platform_device *pdev)
 			DSSERR("failed to create sysfs files\n");
 			goto err;
 		}
+		if (!i2c_verify_client(dssdev->dev)) {
+			/*
+			 * Add 'name' file - not compatible with i2c, but
+			 * need by Xorg for other devices.
+			 */
+			r = sysfs_create_file(kobj, &dev_attr_name.attr);
+			if (r) {
+				DSSERR("fail to create 'name' sysfs file\n");
+				goto err;
+			}
+		}
 
 		r = sysfs_create_link(&pdev->dev.kobj, kobj, dssdev->alias);
 		if (r) {
@@ -341,5 +354,7 @@ void display_uninit_sysfs(struct platform_device *pdev)
 		sysfs_remove_link(&pdev->dev.kobj, dssdev->alias);
 		sysfs_remove_files(&dssdev->dev->kobj,
 				display_sysfs_attrs);
+		sysfs_remove_file(&dssdev->dev->kobj,
+				  &dev_attr_name.attr);
 	}
 }
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 811 bytes
Desc: OpenPGP digital signature
URL: <http://lists.goldelico.com/pipermail/gta04-owner/attachments/20150224/c42d283b/attachment.asc>


More information about the Gta04-owner mailing list