[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1457498184-4170-1-git-send-email-clintonsprain@gmail.com>
Date: Tue, 8 Mar 2016 22:36:24 -0600
From: Clinton Sprain <clintonsprain@...il.com>
To: olof@...om.net
Cc: gwendal@...omium.org, linux-kernel@...r.kernel.org,
Clinton Sprain <clintonsprain@...il.com>
Subject: [PATCH] platform/chrome: cros_ec_lightbar - use name instead of ID to hide lightbar attributes
Lightbar attributes are hidden if the ID of the device is not 0
(the assumption being that 0 = cros_ec = might have a lightbar,
1 = cros_pd = hide); however, sometimes these devices get IDs 1
and 2 (or something else) instead of IDs 0 and 1. This prevents
the lightbar attributes from appearing when they should.
Proposed change is to instead check whether the name assigned to
the device is CROS_EC_DEV_NAME (true for cros_ec, false for cros_pd).
Signed-off-by: Clinton Sprain <clintonsprain@...il.com>
---
drivers/platform/chrome/cros_ec_lightbar.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/platform/chrome/cros_ec_lightbar.c b/drivers/platform/chrome/cros_ec_lightbar.c
index ff76405..b6356b3 100644
--- a/drivers/platform/chrome/cros_ec_lightbar.c
+++ b/drivers/platform/chrome/cros_ec_lightbar.c
@@ -414,7 +414,12 @@ static umode_t cros_ec_lightbar_attrs_are_visible(struct kobject *kobj,
struct cros_ec_dev, class_dev);
struct platform_device *pdev = container_of(ec->dev,
struct platform_device, dev);
- if (pdev->id != 0)
+ struct cros_ec_platform *pdata = pdev->dev.platform_data;
+ int is_cros_ec;
+
+ is_cros_ec = strcmp(pdata->ec_name, CROS_EC_DEV_NAME);
+
+ if (is_cros_ec != 0)
return 0;
/* Only instantiate this stuff if the EC has a lightbar */
--
2.5.0
Powered by blists - more mailing lists