From 87170d10b36903a866087786317294667b62eb12 Mon Sep 17 00:00:00 2001 From: Mukesh Kumar Savaliya Date: Mon, 13 Apr 2020 23:42:53 +0530 Subject: [PATCH] platform : msm-geni-se: fix voting unit for bus bandwidth Bandwidth vote values were being applied as Bytes-per-second but the interconnect framework expects Kilobytes-per-second units. Fix the error by using unit conversion macros provided by the interconnect interface. Change-Id: If2e921b7213e7f61459930b9739c6fa0c0257bf9 Signed-off-by: Mukesh Kumar Savaliya Signed-off-by: Akash Asthana --- drivers/i2c/busses/i2c-msm-geni.c | 1 - drivers/i3c/master/i3c-master-msm-geni.c | 3 --- drivers/platform/msm/msm-geni-se.c | 3 +-- drivers/spi/spi-msm-geni.c | 3 +-- drivers/tty/serial/msm_geni_serial.c | 2 -- include/linux/msm-geni-se.h | 8 +++++++- 6 files changed, 9 insertions(+), 11 deletions(-) diff --git a/drivers/i2c/busses/i2c-msm-geni.c b/drivers/i2c/busses/i2c-msm-geni.c index da616c37d6c0..a71dcbbd5ec5 100644 --- a/drivers/i2c/busses/i2c-msm-geni.c +++ b/drivers/i2c/busses/i2c-msm-geni.c @@ -50,7 +50,6 @@ #define SLV_ADDR_SHFT (9) #define I2C_PACK_EN (BIT(0) | BIT(1)) -#define I2C_CORE2X_VOTE (960) #define GP_IRQ0 0 #define GP_IRQ1 1 #define GP_IRQ2 2 diff --git a/drivers/i3c/master/i3c-master-msm-geni.c b/drivers/i3c/master/i3c-master-msm-geni.c index 8c03c1851923..b69e8ea977d5 100644 --- a/drivers/i3c/master/i3c-master-msm-geni.c +++ b/drivers/i3c/master/i3c-master-msm-geni.c @@ -189,9 +189,6 @@ enum geni_i3c_err_code { #define PACKING_BYTES_PW 4 #define XFER_TIMEOUT HZ #define DFS_INDEX_MAX 7 -#define I3C_CORE2X_VOTE (960) -#define DEFAULT_BUS_WIDTH (4) -#define DEFAULT_SE_CLK (19200000) #define I3C_DDR_READ_CMD BIT(7) #define I3C_ADDR_MASK 0x7f diff --git a/drivers/platform/msm/msm-geni-se.c b/drivers/platform/msm/msm-geni-se.c index d0df2021e9a1..3437be6ac037 100644 --- a/drivers/platform/msm/msm-geni-se.c +++ b/drivers/platform/msm/msm-geni-se.c @@ -29,8 +29,7 @@ #define GENI_SE_DMA_PTR_H(ptr) 0 #endif -/* Convert BCM threshold to actual frequency x 4 */ -#define CONV_TO_BW(x) (x*20000*4) +#define CONV_TO_BW(x) (x*4) #define NUM_LOG_PAGES 2 #define MAX_CLK_PERF_LEVEL 32 static unsigned long default_bus_bw_set[] = {0, 19200000, 50000000, diff --git a/drivers/spi/spi-msm-geni.c b/drivers/spi/spi-msm-geni.c index b58cf69bfec9..bbea33938fb3 100644 --- a/drivers/spi/spi-msm-geni.c +++ b/drivers/spi/spi-msm-geni.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. + * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. */ @@ -83,7 +83,6 @@ #define TIMESTAMP_AFTER BIT(3) #define POST_CMD_DELAY BIT(4) -#define SPI_CORE2X_VOTE (5000) /* GSI CONFIG0 TRE Params */ /* Flags bit fields */ #define GSI_LOOPBACK_EN (BIT(0)) diff --git a/drivers/tty/serial/msm_geni_serial.c b/drivers/tty/serial/msm_geni_serial.c index 28014d0e904b..0f43b939a4db 100644 --- a/drivers/tty/serial/msm_geni_serial.c +++ b/drivers/tty/serial/msm_geni_serial.c @@ -106,8 +106,6 @@ #define DEF_FIFO_DEPTH_WORDS (16) #define DEF_TX_WM (2) #define DEF_FIFO_WIDTH_BITS (32) -#define UART_CORE2X_VOTE (5000) -#define UART_CONSOLE_CORE2X_VOTE (960) #define WAKEBYTE_TIMEOUT_MSEC (2000) #define WAIT_XFER_MAX_ITER (2) diff --git a/include/linux/msm-geni-se.h b/include/linux/msm-geni-se.h index 40f4d672449a..9689d0c2c075 100644 --- a/include/linux/msm-geni-se.h +++ b/include/linux/msm-geni-se.h @@ -336,7 +336,6 @@ struct se_geni_rsc { #define RX_GENI_GP_IRQ_EXT (GENMASK(13, 12)) #define DEFAULT_BUS_WIDTH (4) -#define DEFAULT_SE_CLK (19200000) /* GSI TRE fields */ /* Packing fields */ @@ -366,6 +365,13 @@ if (print) { \ } \ } while (0) +/* In KHz */ +#define DEFAULT_SE_CLK 19200 +#define I2C_CORE2X_VOTE 19200 +#define I3C_CORE2X_VOTE 19200 +#define SPI_CORE2X_VOTE 100000 +#define UART_CORE2X_VOTE 100000 +#define UART_CONSOLE_CORE2X_VOTE 19200 #if IS_ENABLED(CONFIG_MSM_GENI_SE) /**