/linux/drivers/spi/ |
H A D | spi-qup.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2008-2014, The Linux foundation. All rights reserved. 8 #include <linux/dma-mapping.h> 118 #define SPI_MAX_XFER (SZ_64K - 64) 165 u32 opflag = readl_relaxed(controller->base + QUP_OPERATIONAL); in spi_qup_is_flag_set() 181 return controller->n_words * controller->w_size; in spi_qup_len() 186 u32 opstate = readl_relaxed(controller->base + QUP_STATE); in spi_qup_is_valid_state() 196 if (controller->bw_speed_hz == speed_hz) in spi_qup_vote_bw() 200 ret = icc_set_bw(controller->icc_path, 0, needed_peak_bw); in spi_qup_vote_bw() 204 controller->bw_speed_hz = speed_hz; in spi_qup_vote_bw() [all …]
|
H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 6 ccflags-$(CONFIG_SPI_DEBUG) := -DDEBUG 8 # small core, mostly translating board-specific 9 # config declarations into driver model code 10 obj-$(CONFIG_SPI_MASTER) += spi.o 11 obj-$(CONFIG_SPI_MEM) += spi-mem.o 12 obj-$(CONFIG_SPI_MUX) += spi-mux.o 13 obj-$(CONFIG_SPI_SPIDEV) += spidev.o 14 obj-$(CONFIG_SPI_LOOPBACK_TEST) += spi-loopback-test.o 17 obj-$(CONFIG_SPI_AIROHA_SNFI) += spi-airoha-snfi.o [all …]
|
H A D | spi-geni-qcom.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // Copyright (c) 2017-2018, The Linux foundation. All rights reserved. 6 #include <linux/dma-mapping.h> 7 #include <linux/dma/qcom-gpi-dma.h> 16 #include <linux/soc/qcom/geni-se.h> 108 struct geni_se *se = &mas->se; in spi_slv_setup() 110 writel(SPI_SLAVE_EN, se->base + SE_SPI_SLAVE_EN); in spi_slv_setup() 111 writel(GENI_IO_MUX_0_EN, se->base + GENI_OUTPUT_CTRL); in spi_slv_setup() 112 writel(START_TRIGGER, se->base + SE_GENI_CFG_SEQ_START); in spi_slv_setup() 113 dev_dbg(mas->dev, "spi slave setup done\n"); in spi_slv_setup() [all …]
|
/linux/arch/arm64/boot/dts/qcom/ |
H A D | sm8450.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 6 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #include <dt-bindings/clock/qcom,gcc-sm8450.h> 8 #include <dt-bindings/clock/qcom,rpmh.h> 9 #include <dt-bindings/clock/qcom,sm8450-camcc.h> 10 #include <dt-bindings/clock/qcom,sm8450-dispcc.h> 11 #include <dt-bindings/clock/qcom,sm8450-gpucc.h> 12 #include <dt-bindings/clock/qcom,sm8450-videocc.h> 13 #include <dt-bindings/dma/qcom-gpi.h> 14 #include <dt-bindings/firmware/qcom,scm.h> [all …]
|
H A D | sc7280.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 5 * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved. 7 #include <dt-bindings/clock/qcom,camcc-sc7280.h> 8 #include <dt-bindings/clock/qcom,dispcc-sc7280.h> 9 #include <dt-bindings/clock/qcom,gcc-sc7280.h> 10 #include <dt-bindings/clock/qcom,gpucc-sc7280.h> 11 #include <dt-bindings/clock/qcom,lpassaudiocc-sc7280.h> 12 #include <dt-bindings/clock/qcom,lpasscorecc-sc7280.h> 13 #include <dt-bindings/clock/qcom,rpmh.h> 14 #include <dt-bindings/clock/qcom,videocc-sc7280.h> [all …]
|
H A D | x1e80100.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 6 #include <dt-bindings/clock/qcom,rpmh.h> 7 #include <dt-bindings/clock/qcom,sc8280xp-lpasscc.h> 8 #include <dt-bindings/clock/qcom,x1e80100-dispcc.h> 9 #include <dt-bindings/clock/qcom,x1e80100-gcc.h> 10 #include <dt-bindings/clock/qcom,x1e80100-gpucc.h> 11 #include <dt-bindings/clock/qcom,x1e80100-tcsr.h> 12 #include <dt-bindings/dma/qcom-gpi.h> 13 #include <dt-bindings/interconnect/qcom,icc.h> 14 #include <dt-bindings/interconnect/qcom,x1e80100-rpmh.h> [all …]
|
H A D | sdm670.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 9 #include <dt-bindings/clock/qcom,dispcc-sdm845.h> 10 #include <dt-bindings/clock/qcom,gcc-sdm845.h> 11 #include <dt-bindings/clock/qcom,rpmh.h> 12 #include <dt-bindings/dma/qcom-gpi.h> 13 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/interconnect/qcom,osm-l3.h> 15 #include <dt-bindings/interconnect/qcom,sdm670-rpmh.h> 16 #include <dt-bindings/interrupt-controller/arm-gic.h> 17 #include <dt-bindings/phy/phy-qcom-qusb2.h> [all …]
|
H A D | sdm845.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 8 #include <dt-bindings/clock/qcom,camcc-sdm845.h> 9 #include <dt-bindings/clock/qcom,dispcc-sdm845.h> 10 #include <dt-bindings/clock/qcom,gcc-sdm845.h> 11 #include <dt-bindings/clock/qcom,gpucc-sdm845.h> 12 #include <dt-bindings/clock/qcom,lpass-sdm845.h> 13 #include <dt-bindings/clock/qcom,rpmh.h> 14 #include <dt-bindings/clock/qcom,videocc-sdm845.h> 15 #include <dt-bindings/dma/qcom-gpi.h> 16 #include <dt-bindings/firmware/qcom,scm.h> [all …]
|
H A D | sc7180.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 5 * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved. 8 #include <dt-bindings/clock/qcom,dispcc-sc7180.h> 9 #include <dt-bindings/clock/qcom,gcc-sc7180.h> 10 #include <dt-bindings/clock/qcom,gpucc-sc7180.h> 11 #include <dt-bindings/clock/qcom,lpasscorecc-sc7180.h> 12 #include <dt-bindings/clock/qcom,rpmh.h> 13 #include <dt-bindings/clock/qcom,videocc-sc7180.h> 14 #include <dt-bindings/firmware/qcom,scm.h> 15 #include <dt-bindings/interconnect/qcom,icc.h> [all …]
|
H A D | sc8280xp.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 7 #include <dt-bindings/clock/qcom,dispcc-sc8280xp.h> 8 #include <dt-bindings/clock/qcom,gcc-sc8280xp.h> 9 #include <dt-bindings/clock/qcom,gpucc-sc8280xp.h> 10 #include <dt-bindings/clock/qcom,rpmh.h> 11 #include <dt-bindings/clock/qcom,sc8280xp-camcc.h> 12 #include <dt-bindings/clock/qcom,sc8280xp-lpasscc.h> 13 #include <dt-bindings/interconnect/qcom,osm-l3.h> 14 #include <dt-bindings/interconnect/qcom,sc8280xp.h> 15 #include <dt-bindings/interrupt-controller/arm-gic.h> [all …]
|
H A D | qdu1000.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 6 #include <dt-bindings/clock/qcom,qdu1000-gcc.h> 7 #include <dt-bindings/clock/qcom,rpmh.h> 8 #include <dt-bindings/dma/qcom-gpi.h> 9 #include <dt-bindings/gpio/gpio.h> 10 #include <dt-bindings/interconnect/qcom,icc.h> 11 #include <dt-bindings/interconnect/qcom,qdu1000-rpmh.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/power/qcom-rpmpd.h> 14 #include <dt-bindings/soc/qcom,rpmh-rsc.h> [all …]
|
H A D | sm6350.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 7 #include <dt-bindings/clock/qcom,dispcc-sm6350.h> 8 #include <dt-bindings/clock/qcom,gcc-sm6350.h> 9 #include <dt-bindings/clock/qcom,gpucc-sm6350.h> 10 #include <dt-bindings/clock/qcom,rpmh.h> 11 #include <dt-bindings/clock/qcom,sm6350-camcc.h> 12 #include <dt-bindings/dma/qcom-gpi.h> 13 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/interconnect/qcom,icc.h> 15 #include <dt-bindings/interconnect/qcom,osm-l3.h> [all …]
|
H A D | ipq8074.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 6 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #include <dt-bindings/clock/qcom,gcc-ipq8074.h> 10 #address-cells = <2>; 11 #size-cells = <2>; 15 interrupt-parent = <&intc>; 19 compatible = "fixed-clock"; 20 clock-frequency = <32768>; 21 #clock-cells = <0>; 25 compatible = "fixed-clock"; [all …]
|
H A D | sc7280-qcard.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 14 #include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h> 15 #include <dt-bindings/iio/qcom,spmi-adc7-pmr735a.h> 16 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 17 #include <dt-bindings/regulator/qcom,rpmh-regulator.h> 34 wcd9385: audio-codec-1 { 35 compatible = "qcom,wcd9385-codec"; 36 pinctrl-names = "default", "sleep"; 37 pinctrl-0 = <&wcd_reset_n>, <&us_euro_hs_sel>; 38 pinctrl-1 = <&wcd_reset_n_sleep>, <&us_euro_hs_sel>; [all …]
|
/linux/Documentation/devicetree/bindings/i2c/ |
H A D | qcom,i2c-geni-qcom.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/i2c/qcom,i2c-geni-qcom.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm Geni based QUP I2C Controller 10 - Andy Gross <agross@kernel.org> 11 - Bjorn Andersson <bjorn.andersson@linaro.org> 16 - qcom,geni-i2c 17 - qcom,geni-i2c-master-hub 23 clock-names: [all …]
|
/linux/Documentation/devicetree/bindings/spi/ |
H A D | qcom,spi-geni-qcom.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/spi/qcom,spi-geni-qcom.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: GENI based Qualcomm Universal Peripheral (QUP) Serial Peripheral Interface (SPI) 10 - Andy Gross <agross@kernel.org> 11 - Bjorn Andersson <bjorn.andersson@linaro.org> 12 - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 15 The QUP v3 core is a GENI based AHB slave that provides a common data path 17 mini-core. [all …]
|
/linux/Documentation/devicetree/bindings/serial/ |
H A D | qcom,serial-geni-qcom.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/serial/qcom,serial-geni-qcom.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm Geni based QUP UART interface 10 - Andy Gross <agross@kernel.org> 11 - Bjorn Andersson <bjorn.andersson@linaro.org> 14 - $ref: /schemas/serial/serial.yaml# 19 - qcom,geni-uart 20 - qcom,geni-debug-uart [all …]
|
/linux/drivers/soc/qcom/ |
H A D | qcom-geni-se.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. 10 #include <linux/dma-mapping.h> 17 #include <linux/soc/qcom/geni-se.h> 23 * to manage GENI firmware based Qualcomm Universal Peripheral (QUP) Wrapper 24 * controller. QUP Wrapper is designed to support various serial bus protocols 31 * GENI based QUP is a highly-flexible and programmable module for supporting 33 * QUP module can provide upto 8 serial interfaces, using its internal 41 * +-----------------------------------------+ 42 * |QUP Wrapper | [all …]
|
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 7 config QCOM_AOSS_QMP 15 the low-power state for resources related to the remoteproc 19 config QCOM_COMMAND_DB 26 resource on a RPM-hardened platform must use this database to get 29 config QCOM_GENI_SE 34 Qualcomm Technologies, Inc. Universal Peripheral (QUP) Wrapper. This 36 Engines present in the QUP. 38 config QCOM_GSBI 47 config QCOM_LLCC [all …]
|
/linux/arch/arm/boot/dts/qcom/ |
H A D | qcom-ipq4019.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 6 /dts-v1/; 8 #include <dt-bindings/clock/qcom,gcc-ipq4019.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/interrupt-controller/irq.h> 13 #address-cells = <1>; 14 #size-cells = <1>; 18 interrupt-parent = <&intc>; 20 reserved-memory { 21 #address-cells = <0x1>; [all …]
|
H A D | qcom-msm8960.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/clock/qcom,gcc-msm8960.h> 6 #include <dt-bindings/reset/qcom,gcc-msm8960.h> 7 #include <dt-bindings/clock/qcom,lcc-msm8960.h> 8 #include <dt-bindings/mfd/qcom-rpm.h> 9 #include <dt-bindings/soc/qcom,gsbi.h> 12 #address-cells = <1>; 13 #size-cells = <1>; [all …]
|
/linux/drivers/i2c/busses/ |
H A D | i2c-qcom-geni.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. 7 #include <linux/dma-mapping.h> 8 #include <linux/dma/qcom-gpi-dma.h> 17 #include <linux/soc/qcom/geni-se.h> 117 [GP_IRQ0] = {-EIO, "Unknown I2C err GP_IRQ0"}, 118 [NACK] = {-ENXIO, "NACK: slv unresponsive, check its power/reset-ln"}, 119 [GP_IRQ2] = {-EIO, "Unknown I2C err GP IRQ2"}, 120 [BUS_PROTO] = {-EPROTO, "Bus proto err, noisy/unexpected start/stop"}, 121 [ARB_LOST] = {-EAGAIN, "Bus arbitration lost, clock line undriveable"}, [all …]
|
/linux/drivers/interconnect/qcom/ |
H A D | sc7180.c | 1 // SPDX-License-Identifier: GPL-2.0 9 #include <linux/interconnect-provider.h> 13 #include <dt-bindings/interconnect/qcom,sc7180.h> 15 #include "bcm-voter.h" 16 #include "icc-rpmh.h" 1780 { .compatible = "qcom,sc7180-aggre1-noc", 1782 { .compatible = "qcom,sc7180-aggre2-noc", 1784 { .compatible = "qcom,sc7180-camnoc-virt", 1786 { .compatible = "qcom,sc7180-compute-noc", 1788 { .compatible = "qcom,sc7180-config-noc", [all …]
|
H A D | sc8180x.c | 1 // SPDX-License-Identifier: GPL-2.0 8 #include <linux/interconnect-provider.h> 13 #include <dt-bindings/interconnect/qcom,sc8180x.h> 15 #include "bcm-voter.h" 16 #include "icc-rpmh.h" 1875 { .compatible = "qcom,sc8180x-aggre1-noc", .data = &sc8180x_aggre1_noc }, 1876 { .compatible = "qcom,sc8180x-aggre2-noc", .data = &sc8180x_aggre2_noc }, 1877 { .compatible = "qcom,sc8180x-camnoc-virt", .data = &sc8180x_camnoc_virt }, 1878 { .compatible = "qcom,sc8180x-compute-noc", .data = &sc8180x_compute_noc, }, 1879 { .compatible = "qcom,sc8180x-config-noc", .data = &sc8180x_config_noc }, [all …]
|
H A D | sm8250.c | 1 // SPDX-License-Identifier: GPL-2.0 9 #include <linux/interconnect-provider.h> 13 #include <dt-bindings/interconnect/qcom,sm8250.h> 15 #include "bcm-voter.h" 16 #include "icc-rpmh.h" 1966 { .compatible = "qcom,sm8250-aggre1-noc", 1968 { .compatible = "qcom,sm8250-aggre2-noc", 1970 { .compatible = "qcom,sm8250-compute-noc", 1972 { .compatible = "qcom,sm8250-config-noc", 1974 { .compatible = "qcom,sm8250-dc-noc", [all …]
|