Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4236793pxj; Tue, 25 May 2021 03:30:28 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzK+m6gePL0rDIh1oNCrT2MlzPoQebjdnO4Q6l7G9ytx3JGoHa4O3P/DdiksXf1WrCorCAy X-Received: by 2002:a17:906:b30f:: with SMTP id n15mr11355497ejz.406.1621938628651; Tue, 25 May 2021 03:30:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621938628; cv=none; d=google.com; s=arc-20160816; b=fSr89Fgf1Ojq53IVc8lK7xXTTLIMmcNY4N1d2C+bmGFS4SbJS1/VRKFfU4E9DzJ4E7 ChFWx0rcLixFq8hbNEY82tNDEuAcNwNjwzx+jDS8ou/NGAwz6XqGI1KPbUDAUUNe625a 2A8KO1vYmtw91poEIMQDu3E24gLMbND0fWkDxaCQfs1FFrw0P+lLBLN2fWR4Z8x54SZs zxJXYGEIoVmE4gLdth2cS4ucOJ0MCGDtNImiYFxx6iiiASfkh/huH6xiRmQuyxhlSBpU D5aAk5/2JfgTZMujIKlMJD2vwR6bxQoXLqdVK/rchGk19MmfRzH0DWgQkH8BlJm0LD+m T2dw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:subject:cc:to:from; bh=HDiebvBHKCflt8ifa5XFTBLLHT7AumqutjXoJMGkMsU=; b=fHwJlrf9jo305brEMehzTrWX2N7QnoCwwtghzcVfWd1r8qQKc29SBeAqQsgRqsDPqx 71+lcAlh3uMY1klglCdBTQ3M8UdU+aNAGLezOjJw41ROHRdVuPOC6SImgY891Dp57LF0 I5kN6QrRYfXlZNGIe6lo+eO6JejkJqeZkNEZQSUeXYpLUIrM28i6lG0OtwLcXFGpg4Ed sPOR9tRQzJL5onDBXBd26xvNzZJsqPPiBJ6bQR0+NxBWH7OqvOFcstk01YYAAv3l66FZ DI5jQfXx2XKssD9/lFGuFtazVGcpamlHUYc5kx39w0N1Ag+jKhhHPSiuIn0Ku6GOKR7F qqEw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n24si14958109eds.571.2021.05.25.03.30.06; Tue, 25 May 2021 03:30:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232210AbhEYIyr (ORCPT + 99 others); Tue, 25 May 2021 04:54:47 -0400 Received: from mailgw02.mediatek.com ([1.203.163.81]:17662 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S230415AbhEYIyq (ORCPT ); Tue, 25 May 2021 04:54:46 -0400 X-UUID: 96d7248d572949e88ed084d68da836ce-20210525 X-UUID: 96d7248d572949e88ed084d68da836ce-20210525 Received: from mtkcas36.mediatek.inc [(172.27.4.253)] by mailgw02.mediatek.com (envelope-from ) (mailgw01.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 1221224435; Tue, 25 May 2021 16:53:12 +0800 Received: from MTKCAS06.mediatek.inc (172.21.101.30) by MTKMBS31N2.mediatek.inc (172.27.4.87) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Tue, 25 May 2021 16:53:09 +0800 Received: from localhost.localdomain (10.17.3.153) by MTKCAS06.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Tue, 25 May 2021 16:53:08 +0800 From: Chunfeng Yun To: Greg Kroah-Hartman , Heikki Krogerus CC: Matthias Brugger , Chunfeng Yun , Thierry Reding , Paul Cercueil , Lee Jones , Guenter Roeck , Hans de Goede , , , , Subject: [PATCH 1/2] usb: roles: add helper usb_role_string() Date: Tue, 25 May 2021 16:53:05 +0800 Message-ID: <1621932786-9335-1-git-send-email-chunfeng.yun@mediatek.com> X-Mailer: git-send-email 1.8.1.1.dirty MIME-Version: 1.0 Content-Type: text/plain X-TM-SNTS-SMTP: 9D3C1B779BF25D9D23F9965EFEF3D524173D86C78AC011EFF27669269D1E0E2E2000:8 X-MTK: N Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Introduces usb_role_string() function, which returns a human-readable name of provided usb role, it's useful to make the log readable. Signed-off-by: Chunfeng Yun --- drivers/usb/roles/class.c | 9 +++++++++ include/linux/usb/role.h | 6 ++++++ 2 files changed, 15 insertions(+) diff --git a/drivers/usb/roles/class.c b/drivers/usb/roles/class.c index 33b637d0d8d9..dfaed7eee94f 100644 --- a/drivers/usb/roles/class.c +++ b/drivers/usb/roles/class.c @@ -214,6 +214,15 @@ static const char * const usb_roles[] = { [USB_ROLE_DEVICE] = "device", }; +const char *usb_role_string(enum usb_role role) +{ + if (role < 0 || role >= ARRAY_SIZE(usb_roles)) + return "unknown"; + + return usb_roles[role]; +} +EXPORT_SYMBOL_GPL(usb_role_string); + static ssize_t role_show(struct device *dev, struct device_attribute *attr, char *buf) { diff --git a/include/linux/usb/role.h b/include/linux/usb/role.h index 0164fed31b06..031f148ab373 100644 --- a/include/linux/usb/role.h +++ b/include/linux/usb/role.h @@ -65,6 +65,7 @@ void usb_role_switch_unregister(struct usb_role_switch *sw); void usb_role_switch_set_drvdata(struct usb_role_switch *sw, void *data); void *usb_role_switch_get_drvdata(struct usb_role_switch *sw); +const char *usb_role_string(enum usb_role role); #else static inline int usb_role_switch_set_role(struct usb_role_switch *sw, enum usb_role role) @@ -109,6 +110,11 @@ static inline void *usb_role_switch_get_drvdata(struct usb_role_switch *sw) return NULL; } +static inline const char *usb_role_string(enum usb_role role) +{ + return "unknown"; +} + #endif #endif /* __LINUX_USB_ROLE_H */ -- 2.18.0