From patchwork Wed Dec 5 19:50:48 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 152952 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp9695510ljp; Wed, 5 Dec 2018 11:51:31 -0800 (PST) X-Google-Smtp-Source: AFSGD/VYB6lNlMw6KB95K+5SOjLnWEwjZBzw+ppSiSU4x1Mb0bwlbw3yCTkf9Z9AsOtyp5734lt9 X-Received: by 2002:a17:902:5588:: with SMTP id g8mr25577702pli.22.1544039491382; Wed, 05 Dec 2018 11:51:31 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544039491; cv=none; d=google.com; s=arc-20160816; b=UhckSA7v8L1/pHIbyhaOc+o31nfb8VUzeXbU2Hz/Fb4cIQRKtOykleh1UtQXG96LOM UH6ypGePjMTAHejpoepo3BFZOipWB27JNemR9AYA36nn1tW298XE1gLyxLTxp7Rm0fae AkIqeiBi3LVwxrccaxuj2p6sE0iYYonSCfGweLFo9tDQM2EM+vTGQQZhCGwhS/ghGfpn ooQqj4WDuxoDI75qO3c13LZ/KcldSobpoyvqLpJ/2q0rzDwPMiYzyZ/93R6o+5C5dXES ZEtnpQh/R0TIEzFBV3X/8MMmjXLok1K5MRtuoHyadXRgOq/tcsaZpU8cKm1X+h8d2mZy U+dg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=QICrhOBU8T2PisormMUNd01epFjj+h80GHQhRmRoAOU=; b=sqxu6bYude2sp+sjWxnSaL9yptysCJgQbFr4sUR3//ox0q98ukBUQSyXPeh6BTs1m1 jIKJTmz8StGANPbKL8p4rp5hDCwwFxCDDBNAl9/5BF018KourCYsh0o1elGheScbeHy+ oC6QwLMppnueA7uLfMD26OtL4gO/nLg8cATwUUE1AZbwN3a4BnMGXBTiESWgmDa/th4X JDOyn9mHAReFlJNlMZyoT+L2ce9DE1464alL59jhsnkof2ztKR+oc1WiL151aDJOWJ/v p2JV5xFhdo5zTPI9v1SUgSgFWLZwzyzni40Ufh4XCa/Dh+9QX9KbL3YhRtjwdn1TftVx mrjQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of devicetree-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d65si21029708pfc.201.2018.12.05.11.51.31; Wed, 05 Dec 2018 11:51:31 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of devicetree-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of devicetree-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728872AbeLETva (ORCPT + 6 others); Wed, 5 Dec 2018 14:51:30 -0500 Received: from mail-oi1-f194.google.com ([209.85.167.194]:46320 "EHLO mail-oi1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728867AbeLETv2 (ORCPT ); Wed, 5 Dec 2018 14:51:28 -0500 Received: by mail-oi1-f194.google.com with SMTP id x202so18596761oif.13; Wed, 05 Dec 2018 11:51:27 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=QICrhOBU8T2PisormMUNd01epFjj+h80GHQhRmRoAOU=; b=cefk/od7hNGM7Oz+w9f6dxybGA7YsSfNg94broDlA1Eje2ExEMmiFgxZ7aanqCsGiC VjMCAZ/zuWCY7SQkbMEvotL1f7IKCyUtYwJnHXlQ0xV34P8UAlia8kjR+wjFnpzi9yqn KeZVZScEqdj8VIl0MC5HM8tv6sinbIP4C8tqWErW392fEeV9FwoJnW/CQeLhl+MpeNH0 wFP//d0XfYE6lJSb7yh/2fjXBdoPGZaHrfZykzxSEHbO1gNJ4KmvpDYiWoZEY3g7QoYH /nEJn+zqXu231Dq7gSs4LozLbt9DFk4rJctu9KPNdwxqNXR512FhcfL2G2jfhOOzVIfC e4Gw== X-Gm-Message-State: AA+aEWbP/LIf8OBqOKZDFkAAyjwt+Ctt3OYNmc9VcF6biC3ORwoAM6y9 q1ltrf/BL5QFF/aAOzB5xVmICDw6Cw== X-Received: by 2002:aca:4282:: with SMTP id p124mr15080611oia.327.1544039487106; Wed, 05 Dec 2018 11:51:27 -0800 (PST) Received: from xps15.herring.priv (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.googlemail.com with ESMTPSA id k13sm25759879otj.19.2018.12.05.11.51.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 05 Dec 2018 11:51:26 -0800 (PST) From: Rob Herring To: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Johannes Berg , Jaroslav Kysela , Takashi Iwai , linuxppc-dev@lists.ozlabs.org, alsa-devel@alsa-project.org Subject: [PATCH] ALSA: soundbus: Remove direct OF name and type accesses Date: Wed, 5 Dec 2018 13:50:48 -0600 Message-Id: <20181205195050.4759-32-robh@kernel.org> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Convert soundbus uevent and sysfs OF node name and device type usage to use printf specifier and helper functions instead of directly accessing the name and type pointers. This will allow the eventual removal of the pointers. Cc: Johannes Berg Cc: Jaroslav Kysela Cc: Takashi Iwai Cc: linuxppc-dev@lists.ozlabs.org Cc: alsa-devel@alsa-project.org Signed-off-by: Rob Herring --- sound/aoa/soundbus/core.c | 2 +- sound/aoa/soundbus/sysfs.c | 34 +++++++++++++++++++++------------- 2 files changed, 22 insertions(+), 14 deletions(-) -- 2.19.1 diff --git a/sound/aoa/soundbus/core.c b/sound/aoa/soundbus/core.c index f3076a3f7f2f..065d3a55725e 100644 --- a/sound/aoa/soundbus/core.c +++ b/sound/aoa/soundbus/core.c @@ -74,7 +74,7 @@ static int soundbus_uevent(struct device *dev, struct kobj_uevent_env *env) of = &soundbus_dev->ofdev; /* stuff we want to pass to /sbin/hotplug */ - retval = add_uevent_var(env, "OF_NAME=%s", of->dev.of_node->name); + retval = add_uevent_var(env, "OF_NAME=%pOFn", of->dev.of_node); if (retval) return retval; diff --git a/sound/aoa/soundbus/sysfs.c b/sound/aoa/soundbus/sysfs.c index 81da020bddef..a2d55e15afbb 100644 --- a/sound/aoa/soundbus/sysfs.c +++ b/sound/aoa/soundbus/sysfs.c @@ -1,18 +1,10 @@ // SPDX-License-Identifier: GPL-2.0 #include +#include #include /* FIX UP */ #include "soundbus.h" -#define soundbus_config_of_attr(field, format_string) \ -static ssize_t \ -field##_show (struct device *dev, struct device_attribute *attr, \ - char *buf) \ -{ \ - struct soundbus_dev *mdev = to_soundbus_device (dev); \ - return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \ -} - static ssize_t modalias_show(struct device *dev, struct device_attribute *attr, char *buf) { @@ -25,17 +17,33 @@ static ssize_t modalias_show(struct device *dev, struct device_attribute *attr, strcat(buf, "\n"); length = strlen(buf); } else { - length = sprintf(buf, "of:N%sT%s\n", - of->dev.of_node->name, of->dev.of_node->type); + length = sprintf(buf, "of:N%pOFn%c%s\n", + of->dev.of_node, 'T', + of_node_get_device_type(of->dev.of_node)); } return length; } static DEVICE_ATTR_RO(modalias); -soundbus_config_of_attr (name, "%s\n"); +static ssize_t name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct soundbus_dev *sdev = to_soundbus_device(dev); + struct platform_device *of = &sdev->ofdev; + + return sprintf(buf, "%pOFn\n", of->dev.of_node); +} static DEVICE_ATTR_RO(name); -soundbus_config_of_attr (type, "%s\n"); + +static ssize_t type_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct soundbus_dev *sdev = to_soundbus_device(dev); + struct platform_device *of = &sdev->ofdev; + + return sprintf(buf, "%s\n", of_node_get_device_type(of->dev.of_node)); +} static DEVICE_ATTR_RO(type); struct attribute *soundbus_dev_attrs[] = {