From 0859614c3d30183906765b64ea07c7331078c33e Mon Sep 17 00:00:00 2001 From: Chun XU Date: Mon, 4 Jul 2016 17:16:44 +0800 Subject: [PATCH] misc: tegra-cec: add /sys/devices/platform symlink Create a symlink for tegra_cec if it is not under platform bus or it has been created with different name. Bug 200214224 Bug 200185815 Bug 1764073 Change-Id: Ib2f89db016982ca916894c37e47bbdf177fb617e Signed-off-by: Chun XU Reviewed-on: http://git-master/r/1175137 (cherry picked from commit 506e6370d234c4770afb22372ef1955faa7822cf) --- drivers/misc/tegra-cec/tegra_cec.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/misc/tegra-cec/tegra_cec.c b/drivers/misc/tegra-cec/tegra_cec.c index db2b2d28..70b40879 100644 --- a/drivers/misc/tegra-cec/tegra_cec.c +++ b/drivers/misc/tegra-cec/tegra_cec.c @@ -536,6 +536,18 @@ static int tegra_cec_probe(struct platform_device *pdev) goto cec_error; } + /* + * Create a symlink for tegra_cec if it is not under platform bus or + * it has been created with different name. + */ + if ((pdev->dev.parent != &platform_bus) || + strcmp(dev_name(&pdev->dev), TEGRA_CEC_NAME)) { + ret = sysfs_create_link(&platform_bus.kobj, + &pdev->dev.kobj, TEGRA_CEC_NAME); + if (ret) + dev_warn(&pdev->dev, "Could not create sysfs link.\n"); + } + ret = sysfs_create_file( &pdev->dev.kobj, &dev_attr_cec_logical_addr_config.attr); dev_info(&pdev->dev, "cec_add_sysfs ret=%d\n", ret);