sde_hwio.h 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
  4. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
  5. */
  6. #ifndef _SDE_HWIO_H
  7. #define _SDE_HWIO_H
  8. #include "sde_hw_util.h"
  9. /**
  10. * MDP TOP block Register and bit fields and defines
  11. */
  12. #define DISP_INTF_SEL 0x004
  13. #define INTR_EN 0x010
  14. #define INTR_STATUS 0x014
  15. #define INTR_CLEAR 0x018
  16. #define INTR2_EN 0x008
  17. #define INTR2_STATUS 0x00c
  18. #define INTR2_CLEAR 0x02c
  19. #define HIST_INTR_EN 0x01c
  20. #define HIST_INTR_STATUS 0x020
  21. #define HIST_INTR_CLEAR 0x024
  22. #define INTF_INTR_EN 0x1C0
  23. #define INTF_INTR_STATUS 0x1C4
  24. #define INTF_INTR_CLEAR 0x1C8
  25. #define SPLIT_DISPLAY_EN 0x2F4
  26. #define SPLIT_DISPLAY_UPPER_PIPE_CTRL 0x2F8
  27. #define DSPP_IGC_COLOR0_RAM_LUTN 0x300
  28. #define DSPP_IGC_COLOR1_RAM_LUTN 0x304
  29. #define DSPP_IGC_COLOR2_RAM_LUTN 0x308
  30. #define PPB0_CNTL 0x330
  31. #define PPB0_CONFIG 0x334
  32. #define PPB1_CNTL 0x338
  33. #define PPB1_CONFIG 0x33C
  34. #define PPB_FIFO_SIZE 0x350
  35. #define PPB2_CNTL 0x370
  36. #define PPB3_CNTL 0x374
  37. #define HW_EVENTS_CTL 0x37C
  38. #define CLK_CTRL3 0x3A8
  39. #define CLK_STATUS3 0x3AC
  40. #define CLK_CTRL4 0x3B0
  41. #define CLK_STATUS4 0x3B4
  42. #define CLK_CTRL5 0x3B8
  43. #define CLK_STATUS5 0x3BC
  44. #define CLK_CTRL7 0x3D0
  45. #define CLK_STATUS7 0x3D4
  46. #define SPLIT_DISPLAY_LOWER_PIPE_CTRL 0x3F0
  47. #define SPLIT_DISPLAY_TE_LINE_INTERVAL 0x3F4
  48. #define INTF_SW_RESET_MASK 0x3FC
  49. #define HDMI_DP_CORE_SELECT 0x408
  50. #define MDP_OUT_CTL_0 0x410
  51. #define MDP_VSYNC_SEL 0x414
  52. #define DCE_SEL 0x450
  53. #define DP_DHDR_MEM_POOL_0_DATA 0x46c
  54. #define DP_DHDR_MEM_POOL_1_DATA 0x470
  55. #define DP_DHDR_MEM_POOL_0_NUM_BYTES 0x47c
  56. #define DP_DHDR_MEM_POOL_1_NUM_BYTES 0x480
  57. #define DP_DHDR_MEM_POOL_0_DATA_4K 0x1004
  58. #define DP_DHDR_MEM_POOL_1_DATA_4K 0x2004
  59. #define DP_DHDR_MEM_POOL_0_NUM_BYTES_4K 0x100c
  60. #define DP_DHDR_MEM_POOL_1_NUM_BYTES_4K 0x200c
  61. /* SDE_SCALER_QSEED3 */
  62. #define QSEED3_COEF_LUT_OFF 0x100
  63. #define QSEED3_FILTERS 5
  64. #define QSEED3_LUT_REGIONS 4
  65. #define QSEED3_CIRCULAR_LUTS 9
  66. #define QSEED3_SEPARABLE_LUTS 10
  67. #define QSEED3_LUT_SIZE 60
  68. #define QSEED3_DIR_LUT_SIZE (200 * sizeof(u32))
  69. #define QSEED3_COEF_LUT_DIR_BIT 1
  70. #define QSEED3_COEF_LUT_Y_CIR_BIT 2
  71. #define QSEED3_COEF_LUT_UV_CIR_BIT 3
  72. #define QSEED3_COEF_LUT_Y_SEP_BIT 4
  73. #define QSEED3_COEF_LUT_UV_SEP_BIT 5
  74. #define QSEED3_CIR_LUT_SIZE \
  75. (QSEED3_LUT_SIZE * QSEED3_CIRCULAR_LUTS * sizeof(u32))
  76. #define QSEED3_SEP_LUT_SIZE \
  77. (QSEED3_LUT_SIZE * QSEED3_SEPARABLE_LUTS * sizeof(u32))
  78. /* SDE_SCALER_QSEED3LITE */
  79. #define QSEED3L_COEF_LUT_OFF 0x100
  80. #define QSEED3LITE_FILTERS 2
  81. #define QSEED3L_SEPARABLE_LUTS 10
  82. #define QSEED3L_LUT_SIZE 33
  83. #define QSEED3L_SEP_LUT_SIZE \
  84. (QSEED3L_LUT_SIZE * QSEED3L_SEPARABLE_LUTS * sizeof(u32))
  85. #endif /*_SDE_HWIO_H */