Messages in this thread | | | From | Akash Asthana <> | Subject | [PATCH V8 0/8] Add interconnect support to QSPI and QUP drivers | Date | Tue, 23 Jun 2020 16:08:49 +0530 |
| |
This patch series is based on tag "next-20200622" of linux-next tree.
High level design: - QUP wrapper/common driver. Vote for QUP core on behalf of earlycon from probe. Remove BW vote during earlycon exit call
- SERIAL driver. Vote only for CPU/CORE path because driver is in FIFO mode only Vote/unvote from qcom_geni_serial_pm func. Bump up the CPU vote from set_termios call based on real time need
- I2C driver. Vote for CORE/CPU/DDR path Vote/unvote from runtime resume/suspend callback As bus speed for I2C is fixed from probe itself no need for bump up.
- SPI QUP driver. Vote only for CPU/CORE path because driver is in FIFO mode only Vote/unvote from runtime resume/suspend callback Bump up CPU vote based on real time need per transfer.
- QSPI driver. Vote only for CPU path Vote/unvote from runtime resume/suspend callback Bump up CPU vote based on real time need per transfer.
Changes in V2: - Add devm_of_icc_get() API interconnect core. - Add ICC support to common driver to fix earlyconsole crash.
Changes in V3: - Define common ICC APIs in geni-se driver and use it across geni based I2C,SPI and UART driver.
Changes in V4: - Add a patch to ICC core to scale peak requirement as twice of average if it is not mentioned explicilty.
Changes in V5: - As per Georgi's suggestion removed patch from ICC core for assuming peak_bw as twice of average when it's not mentioned, instead assume it equall to avg_bw and keep this assumption in ICC client itself. - As per Matthias suggestion use enum for GENI QUP ICC paths.
Changes in V6: - No Major change
Changes in V7: - As per Matthias's comment removed usage of peak_bw variable because we don't have explicit peak requirement, we were voting peak = avg and this can be tracked using single variable for avg bw. - As per Matthias's comment improved print log.
Changes in V8: - Add [PATCH V8 5/8] to factor out common code for clock setting. - Combine ICC voting and clock setting to single API. [PATCH V8 6/8] - Add ICC voting per transfer because in case of multi message, transfer frequency can vary for each message/transfer.[PATCH V8 6/8]
Akash Asthana (7): soc: qcom: geni: Support for ICC voting soc: qcom-geni-se: Add interconnect support to fix earlycon crash i2c: i2c-qcom-geni: Add interconnect support tty: serial: qcom_geni_serial: Add interconnect support spi: spi-geni-qcom: Add interconnect support spi: spi-qcom-qspi: Add interconnect support arm64: dts: sc7180: Add interconnect for QUP and QSPI
Douglas Anderson (1): spi: spi-geni-qcom: Combine the clock setting code
arch/arm64/boot/dts/qcom/sc7180.dtsi | 127 ++++++++++++++++++++++++++++ drivers/i2c/busses/i2c-qcom-geni.c | 26 +++++- drivers/soc/qcom/qcom-geni-se.c | 150 ++++++++++++++++++++++++++++++++++ drivers/spi/spi-geni-qcom.c | 100 +++++++++++++++-------- drivers/spi/spi-qcom-qspi.c | 56 ++++++++++++- drivers/tty/serial/qcom_geni_serial.c | 38 ++++++++- include/linux/qcom-geni-se.h | 40 +++++++++ 7 files changed, 496 insertions(+), 41 deletions(-)
-- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,\na Linux Foundation Collaborative Project
| |