From: Chaoyi Chen <kernel@airkyi.com>
To: Heikki Krogerus <heikki.krogerus@linux.intel.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>, Vinod Koul <vkoul@kernel.org>,
Kishon Vijay Abraham I <kishon@kernel.org>,
Heiko Stuebner <heiko@sntech.de>,
Sandy Huang <hjc@rock-chips.com>,
Andy Yan <andy.yan@rock-chips.com>,
Yubing Zhang <yubing.zhang@rock-chips.com>,
Frank Wang <frank.wang@rock-chips.com>,
Andrzej Hajda <andrzej.hajda@intel.com>,
Neil Armstrong <neil.armstrong@linaro.org>,
Robert Foss <rfoss@kernel.org>,
Laurent Pinchart <Laurent.pinchart@ideasonboard.com>,
Jonas Karlman <jonas@kwiboo.se>,
Jernej Skrabec <jernej.skrabec@gmail.com>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Maxime Ripard <mripard@kernel.org>,
Thomas Zimmermann <tzimmermann@suse.de>,
David Airlie <airlied@gmail.com>, Simona Vetter <simona@ffwll.ch>,
Amit Sunil Dhamne <amitsd@google.com>,
Chaoyi Chen <chaoyi.chen@rock-chips.com>,
Dragan Simic <dsimic@manjaro.org>,
Johan Jonker <jbx6244@gmail.com>,
Diederik de Haas <didi.debian@cknow.org>,
Peter Robinson <pbrobinson@gmail.com>
Cc: linux-usb@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-phy@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org,
dri-devel@lists.freedesktop.org
Subject: [PATCH v8 02/10] usb: typec: Export all typec device types
Date: Wed, 29 Oct 2025 15:14:27 +0800 [thread overview]
Message-ID: <20251029071435.88-3-kernel@airkyi.com> (raw)
In-Reply-To: <20251029071435.88-1-kernel@airkyi.com>
From: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Export all typec device types for identification.
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
---
drivers/usb/typec/class.c | 4 ++++
drivers/usb/typec/class.h | 10 ----------
include/linux/usb/typec.h | 10 ++++++++++
3 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/drivers/usb/typec/class.c b/drivers/usb/typec/class.c
index 51e971bc68d1..04b55f066b06 100644
--- a/drivers/usb/typec/class.c
+++ b/drivers/usb/typec/class.c
@@ -793,6 +793,7 @@ const struct device_type typec_partner_dev_type = {
.groups = typec_partner_groups,
.release = typec_partner_release,
};
+EXPORT_SYMBOL_GPL(typec_partner_dev_type);
static void typec_partner_link_device(struct typec_partner *partner, struct device *dev)
{
@@ -1147,6 +1148,7 @@ const struct device_type typec_plug_dev_type = {
.groups = typec_plug_groups,
.release = typec_plug_release,
};
+EXPORT_SYMBOL_GPL(typec_plug_dev_type);
/**
* typec_plug_set_num_altmodes - Set the number of available plug altmodes
@@ -1295,6 +1297,7 @@ const struct device_type typec_cable_dev_type = {
.groups = typec_cable_groups,
.release = typec_cable_release,
};
+EXPORT_SYMBOL_GPL(typec_cable_dev_type);
/**
* typec_cable_get - Get a reference to the USB Type-C cable
@@ -2034,6 +2037,7 @@ const struct device_type typec_port_dev_type = {
.uevent = typec_uevent,
.release = typec_release,
};
+EXPORT_SYMBOL_GPL(typec_port_dev_type);
/* --------------------------------------- */
/* Driver callbacks to report role updates */
diff --git a/drivers/usb/typec/class.h b/drivers/usb/typec/class.h
index db2fe96c48ff..f04f6987bed8 100644
--- a/drivers/usb/typec/class.h
+++ b/drivers/usb/typec/class.h
@@ -87,16 +87,6 @@ struct typec_port {
#define to_typec_cable(_dev_) container_of(_dev_, struct typec_cable, dev)
#define to_typec_partner(_dev_) container_of(_dev_, struct typec_partner, dev)
-extern const struct device_type typec_partner_dev_type;
-extern const struct device_type typec_cable_dev_type;
-extern const struct device_type typec_plug_dev_type;
-extern const struct device_type typec_port_dev_type;
-
-#define is_typec_partner(dev) ((dev)->type == &typec_partner_dev_type)
-#define is_typec_cable(dev) ((dev)->type == &typec_cable_dev_type)
-#define is_typec_plug(dev) ((dev)->type == &typec_plug_dev_type)
-#define is_typec_port(dev) ((dev)->type == &typec_port_dev_type)
-
extern const struct class typec_mux_class;
extern const struct class retimer_class;
extern const struct class typec_class;
diff --git a/include/linux/usb/typec.h b/include/linux/usb/typec.h
index 309251572e2e..02fed8293415 100644
--- a/include/linux/usb/typec.h
+++ b/include/linux/usb/typec.h
@@ -56,6 +56,16 @@ enum typec_role {
TYPEC_SOURCE,
};
+extern const struct device_type typec_partner_dev_type;
+extern const struct device_type typec_cable_dev_type;
+extern const struct device_type typec_plug_dev_type;
+extern const struct device_type typec_port_dev_type;
+
+#define is_typec_partner(dev) ((dev)->type == &typec_partner_dev_type)
+#define is_typec_cable(dev) ((dev)->type == &typec_cable_dev_type)
+#define is_typec_plug(dev) ((dev)->type == &typec_plug_dev_type)
+#define is_typec_port(dev) ((dev)->type == &typec_port_dev_type)
+
static inline int is_sink(enum typec_role role)
{
return role == TYPEC_SINK;
--
2.49.0
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
next prev parent reply other threads:[~2025-10-29 7:16 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-29 7:14 [PATCH v8 00/10] Add Type-C DP support for RK3399 EVB IND board Chaoyi Chen
2025-10-29 7:14 ` [PATCH v8 01/10] usb: typec: Add notifier functions Chaoyi Chen
2025-10-31 13:39 ` Heikki Krogerus
2025-11-03 1:11 ` Chaoyi Chen
2025-10-29 7:14 ` Chaoyi Chen [this message]
2025-10-31 13:49 ` [PATCH v8 02/10] usb: typec: Export all typec device types Heikki Krogerus
2025-10-29 7:14 ` [PATCH v8 03/10] drm/bridge: Implement generic USB Type-C DP HPD bridge Chaoyi Chen
2025-10-31 13:58 ` Heikki Krogerus
2025-11-03 1:15 ` Chaoyi Chen
2025-11-03 4:00 ` Dmitry Baryshkov
2025-11-03 6:24 ` Chaoyi Chen
2025-11-03 13:48 ` Heikki Krogerus
2025-11-04 1:18 ` Chaoyi Chen
2025-11-06 3:06 ` Chaoyi Chen
2025-10-29 7:14 ` [PATCH v8 04/10] dt-bindings: phy: rockchip: rk3399-typec-phy: Support mode-switch Chaoyi Chen
2025-10-29 7:14 ` [PATCH v8 05/10] phy: rockchip: phy-rockchip-typec: Add typec_mux/typec_switch support Chaoyi Chen
2025-10-29 7:14 ` [PATCH v8 06/10] phy: rockchip: phy-rockchip-typec: Add DRM AUX bridge Chaoyi Chen
2025-10-29 7:14 ` [PATCH v8 07/10] drm/rockchip: cdn-dp: Support handle lane info without extcon Chaoyi Chen
2025-10-29 7:14 ` [PATCH v8 08/10] drm/rockchip: cdn-dp: Add multiple bridges to support PHY port selection Chaoyi Chen
2025-10-29 7:14 ` [PATCH v8 09/10] arm64: dts: rockchip: Add missing dp_out port for RK3399 CDN-DP Chaoyi Chen
2025-10-29 7:14 ` [PATCH v8 10/10] arm64: dts: rockchip: rk3399-evb-ind: Add support for DisplayPort Chaoyi Chen
2025-10-29 9:45 ` Peter Chen
2025-10-29 10:21 ` Chaoyi Chen
2025-10-29 10:31 ` Chaoyi Chen
2025-10-30 1:34 ` Peter Chen
2025-10-30 2:16 ` Chaoyi Chen
2025-10-30 2:50 ` Peter Chen
2025-10-30 3:13 ` Chaoyi Chen
2025-10-30 6:13 ` Peter Chen
2025-10-30 6:50 ` Chaoyi Chen
2025-10-31 2:57 ` Peter Chen (CIX)
2025-10-31 3:08 ` Chaoyi Chen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251029071435.88-3-kernel@airkyi.com \
--to=kernel@airkyi.com \
--cc=Laurent.pinchart@ideasonboard.com \
--cc=airlied@gmail.com \
--cc=amitsd@google.com \
--cc=andrzej.hajda@intel.com \
--cc=andy.yan@rock-chips.com \
--cc=chaoyi.chen@rock-chips.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=didi.debian@cknow.org \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=dsimic@manjaro.org \
--cc=frank.wang@rock-chips.com \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=heiko@sntech.de \
--cc=hjc@rock-chips.com \
--cc=jbx6244@gmail.com \
--cc=jernej.skrabec@gmail.com \
--cc=jonas@kwiboo.se \
--cc=kishon@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-usb@vger.kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=neil.armstrong@linaro.org \
--cc=pbrobinson@gmail.com \
--cc=rfoss@kernel.org \
--cc=robh@kernel.org \
--cc=simona@ffwll.ch \
--cc=tzimmermann@suse.de \
--cc=vkoul@kernel.org \
--cc=yubing.zhang@rock-chips.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).