On Wed, Nov 29, 2023 at 8:41 AM Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> wrote: > > Add a driver for managing NoC providers on SM6115. > > Signed-off-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> > --- > drivers/interconnect/qcom/Kconfig | 9 + > drivers/interconnect/qcom/Makefile | 2 + > drivers/interconnect/qcom/sm6115.c | 1427 ++++++++++++++++++++++++++++++++++++ > 3 files changed, 1438 insertions(+) > > diff --git a/drivers/interconnect/qcom/Kconfig b/drivers/interconnect/qcom/Kconfig > index 4d15ce2dab16..697f96c49f6f 100644 > --- a/drivers/interconnect/qcom/Kconfig > +++ b/drivers/interconnect/qcom/Kconfig > @@ -191,6 +191,15 @@ config INTERCONNECT_QCOM_SDX75 > This is a driver for the Qualcomm Network-on-Chip on sdx75-based > platforms. > > +config INTERCONNECT_QCOM_SM6115 > + tristate "Qualcomm SM6115 interconnect driver" > + depends on INTERCONNECT_QCOM > + depends on QCOM_SMD_RPM > + select INTERCONNECT_QCOM_SMD_RPM > + help > + This is a driver for the Qualcomm Network-on-Chip on sm6115-based > + platforms. > + > config INTERCONNECT_QCOM_SM6350 > tristate "Qualcomm SM6350 interconnect driver" > depends on INTERCONNECT_QCOM_RPMH_POSSIBLE > diff --git a/drivers/interconnect/qcom/Makefile b/drivers/interconnect/qcom/Makefile > index 3a8a6ef67543..704846165022 100644 > --- a/drivers/interconnect/qcom/Makefile > +++ b/drivers/interconnect/qcom/Makefile > @@ -24,6 +24,7 @@ qnoc-sdm845-objs := sdm845.o > qnoc-sdx55-objs := sdx55.o > qnoc-sdx65-objs := sdx65.o > qnoc-sdx75-objs := sdx75.o > +qnoc-sm6115-objs := sm6115.o > qnoc-sm6350-objs := sm6350.o > qnoc-sm8150-objs := sm8150.o > qnoc-sm8250-objs := sm8250.o > @@ -55,6 +56,7 @@ obj-$(CONFIG_INTERCONNECT_QCOM_SDM845) += qnoc-sdm845.o > obj-$(CONFIG_INTERCONNECT_QCOM_SDX55) += qnoc-sdx55.o > obj-$(CONFIG_INTERCONNECT_QCOM_SDX65) += qnoc-sdx65.o > obj-$(CONFIG_INTERCONNECT_QCOM_SDX75) += qnoc-sdx75.o > +obj-$(CONFIG_INTERCONNECT_QCOM_SM6115) += qnoc-sm6115.o > obj-$(CONFIG_INTERCONNECT_QCOM_SM6350) += qnoc-sm6350.o > obj-$(CONFIG_INTERCONNECT_QCOM_SM8150) += qnoc-sm8150.o > obj-$(CONFIG_INTERCONNECT_QCOM_SM8250) += qnoc-sm8250.o > diff --git a/drivers/interconnect/qcom/sm6115.c b/drivers/interconnect/qcom/sm6115.c > new file mode 100644 > index 000000000000..c49a83c87739 > --- /dev/null > +++ b/drivers/interconnect/qcom/sm6115.c > @@ -0,0 +1,1427 @@ > +// SPDX-License-Identifier: GPL-2.0-only > +/* > + * Copyright (c) 2021, The Linux Foundation. All rights reserved. > + * Copyright (c) 2022, Qualcomm Innovation Center, Inc. All rights reserved. > + * Copyright (c) 2023, Linaro Limited > + */ > + > +#include <dt-bindings/interconnect/qcom,sm6115.h> > +#include <linux/clk.h> > +#include <linux/device.h> > +#include <linux/interconnect-provider.h> > +#include <linux/io.h> > +#include <linux/module.h> > +#include <linux/of_device.h> You probably don't need this header and the implicit includes it makes are dropped now in linux-next. Please check what you actually need and make them explicit. > +#include <linux/of_platform.h> Also probably not needed. Please double check. Rob