mt8173-mmsys.h 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. #ifndef __SOC_MEDIATEK_MT8173_MMSYS_H
  3. #define __SOC_MEDIATEK_MT8173_MMSYS_H
  4. #define MT8173_DISP_REG_CONFIG_DISP_OVL0_MOUT_EN 0x040
  5. #define MT8173_DISP_REG_CONFIG_DISP_OVL1_MOUT_EN 0x044
  6. #define MT8173_DISP_REG_CONFIG_DISP_OD_MOUT_EN 0x048
  7. #define MT8173_DISP_REG_CONFIG_DISP_GAMMA_MOUT_EN 0x04c
  8. #define MT8173_DISP_REG_CONFIG_DISP_UFOE_MOUT_EN 0x050
  9. #define MT8173_DISP_REG_CONFIG_DISP_COLOR0_SEL_IN 0x084
  10. #define MT8173_DISP_REG_CONFIG_DISP_COLOR1_SEL_IN 0x088
  11. #define MT8173_DISP_REG_CONFIG_DISP_AAL_SEL_IN 0x08c
  12. #define MT8173_DISP_REG_CONFIG_DISP_UFOE_SEL_IN 0x0a0
  13. #define MT8173_DISP_REG_CONFIG_DSI0_SEL_IN 0x0a4
  14. #define MT8173_DISP_REG_CONFIG_DPI_SEL_IN 0x0ac
  15. #define MT8173_DISP_REG_CONFIG_DISP_RDMA0_SOUT_SEL_IN 0x0b0
  16. #define MT8173_DISP_REG_CONFIG_DISP_RDMA1_SOUT_EN 0x0c8
  17. #define MT8173_DISP_REG_CONFIG_DISP_COLOR0_SOUT_SEL_IN 0x0bc
  18. #define MT8173_AAL_SEL_IN_MERGE BIT(0)
  19. #define MT8173_COLOR0_SEL_IN_OVL0 BIT(0)
  20. #define MT8173_COLOR0_SOUT_MERGE BIT(0)
  21. #define MT8173_DPI0_SEL_IN_MASK GENMASK(1, 0)
  22. #define MT8173_DPI0_SEL_IN_RDMA1 BIT(0)
  23. #define MT8173_DSI0_SEL_IN_UFOE BIT(0)
  24. #define MT8173_GAMMA_MOUT_EN_RDMA1 BIT(0)
  25. #define MT8173_OD0_MOUT_EN_RDMA0 BIT(0)
  26. #define MT8173_OVL0_MOUT_EN_COLOR0 BIT(0)
  27. #define MT8173_OVL1_MOUT_EN_COLOR1 BIT(0)
  28. #define MT8173_UFOE_MOUT_EN_DSI0 BIT(0)
  29. #define MT8173_UFOE_SEL_IN_RDMA0 BIT(0)
  30. #define MT8173_RDMA0_SOUT_COLOR0 BIT(0)
  31. static const struct mtk_mmsys_routes mt8173_mmsys_routing_table[] = {
  32. MMSYS_ROUTE(OVL0, COLOR0,
  33. MT8173_DISP_REG_CONFIG_DISP_OVL0_MOUT_EN, MT8173_OVL0_MOUT_EN_COLOR0,
  34. MT8173_OVL0_MOUT_EN_COLOR0),
  35. MMSYS_ROUTE(OD0, RDMA0,
  36. MT8173_DISP_REG_CONFIG_DISP_OD_MOUT_EN, MT8173_OD0_MOUT_EN_RDMA0,
  37. MT8173_OD0_MOUT_EN_RDMA0),
  38. MMSYS_ROUTE(UFOE, DSI0,
  39. MT8173_DISP_REG_CONFIG_DISP_UFOE_MOUT_EN, MT8173_UFOE_MOUT_EN_DSI0,
  40. MT8173_UFOE_MOUT_EN_DSI0),
  41. MMSYS_ROUTE(COLOR0, AAL0,
  42. MT8173_DISP_REG_CONFIG_DISP_COLOR0_SOUT_SEL_IN, MT8173_COLOR0_SOUT_MERGE,
  43. 0 /* SOUT to AAL */),
  44. MMSYS_ROUTE(RDMA0, UFOE,
  45. MT8173_DISP_REG_CONFIG_DISP_RDMA0_SOUT_SEL_IN, MT8173_RDMA0_SOUT_COLOR0,
  46. 0 /* SOUT to UFOE */),
  47. MMSYS_ROUTE(OVL0, COLOR0,
  48. MT8173_DISP_REG_CONFIG_DISP_COLOR0_SEL_IN, MT8173_COLOR0_SEL_IN_OVL0,
  49. MT8173_COLOR0_SEL_IN_OVL0),
  50. MMSYS_ROUTE(AAL0, COLOR0,
  51. MT8173_DISP_REG_CONFIG_DISP_AAL_SEL_IN, MT8173_AAL_SEL_IN_MERGE,
  52. 0 /* SEL_IN from COLOR0 */),
  53. MMSYS_ROUTE(RDMA0, UFOE,
  54. MT8173_DISP_REG_CONFIG_DISP_UFOE_SEL_IN, MT8173_UFOE_SEL_IN_RDMA0,
  55. 0 /* SEL_IN from RDMA0 */),
  56. MMSYS_ROUTE(UFOE, DSI0,
  57. MT8173_DISP_REG_CONFIG_DSI0_SEL_IN, MT8173_DSI0_SEL_IN_UFOE,
  58. 0 /* SEL_IN from UFOE */),
  59. MMSYS_ROUTE(OVL1, COLOR1,
  60. MT8173_DISP_REG_CONFIG_DISP_OVL1_MOUT_EN, MT8173_OVL1_MOUT_EN_COLOR1,
  61. MT8173_OVL1_MOUT_EN_COLOR1),
  62. MMSYS_ROUTE(GAMMA, RDMA1,
  63. MT8173_DISP_REG_CONFIG_DISP_GAMMA_MOUT_EN, MT8173_GAMMA_MOUT_EN_RDMA1,
  64. MT8173_GAMMA_MOUT_EN_RDMA1),
  65. MMSYS_ROUTE(RDMA1, DPI0,
  66. MT8173_DISP_REG_CONFIG_DISP_RDMA1_SOUT_EN, RDMA1_SOUT_MASK,
  67. RDMA1_SOUT_DPI0),
  68. MMSYS_ROUTE(OVL1, COLOR1,
  69. MT8173_DISP_REG_CONFIG_DISP_COLOR1_SEL_IN, COLOR1_SEL_IN_OVL1,
  70. COLOR1_SEL_IN_OVL1),
  71. MMSYS_ROUTE(RDMA1, DPI0,
  72. MT8173_DISP_REG_CONFIG_DPI_SEL_IN, MT8173_DPI0_SEL_IN_MASK,
  73. MT8173_DPI0_SEL_IN_RDMA1),
  74. };
  75. #endif /* __SOC_MEDIATEK_MT8173_MMSYS_H */