[ Resending to Bjorn's current address. ] On Wed, Aug 17, 2022 at 08:15:10PM -0700, Bjorn Andersson wrote: > The PMIC GLINK service runs on one of the co-processors of some modern > Qualcomm platforms and implements USB-C and battery managements. It uses > a message based protocol over GLINK for communication with the OS, hence > the name. > > The driver implemented provides the rpmsg device for communication and > uses auxilirary bus to spawn off individual devices in respsective > subsystem. The auxilirary devices are spawned off from a > platform_device, so that the drm_bridge is available early, to allow the > DisplayPort driver to probe even before the remoteproc has spun up. > > Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > --- > drivers/soc/qcom/Kconfig | 14 ++ > drivers/soc/qcom/Makefile | 1 + > drivers/soc/qcom/pmic_glink.c | 336 ++++++++++++++++++++++++++++ > include/linux/soc/qcom/pmic_glink.h | 32 +++ > 4 files changed, 383 insertions(+) > create mode 100644 drivers/soc/qcom/pmic_glink.c > create mode 100644 include/linux/soc/qcom/pmic_glink.h > > diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig > index e0d7a5459562..2289f5e0d5ad 100644 > --- a/drivers/soc/qcom/Kconfig > +++ b/drivers/soc/qcom/Kconfig > @@ -91,6 +91,20 @@ config QCOM_PDR_HELPERS > tristate > select QCOM_QMI_HELPERS > > +config QCOM_PMIC_GLINK > + tristate "Qualcomm PMIC GLINK driver" > + depends on RPMSG > + depends on TYPEC > + depends on DRM You should add select AUXILIARY_BUS here as this driver will not compile without it. Then you can drop the corresponding select from the battery driver. > + select QCOM_PDR_HELPERS > + help > + The Qualcomm PMIC GLINK driver provides access, over GLINK, to the > + USB and battery firmware running on one of the coprocessors in > + several modern Qualcomm platforms. > + > + Say yes here to support USB-C and battery status on modern Qualcomm > + platforms. Johan