On Thu Aug 27 15:33:35 2026 +0300, Antti Laakso wrote:
> The ipu7.5 mmu is different compared to ipu7.
> 
> Signed-off-by: Antti Laakso <[email protected]>
> Signed-off-by: Sakari Ailus <[email protected]>

Patch committed.

Thanks,
Sakari Ailus

 drivers/media/pci/intel/ipu6/ipu7-mmu-hw.c | 261 ++++++++++++++++++++++++++++-
 drivers/media/pci/intel/ipu6/ipu7-mmu-hw.h |  99 +++++++++++
 2 files changed, 359 insertions(+), 1 deletion(-)

---

diff --git a/drivers/media/pci/intel/ipu6/ipu7-mmu-hw.c 
b/drivers/media/pci/intel/ipu6/ipu7-mmu-hw.c
index 3cd9a818733c..c9b015e89ee6 100644
--- a/drivers/media/pci/intel/ipu6/ipu7-mmu-hw.c
+++ b/drivers/media/pci/intel/ipu6/ipu7-mmu-hw.c
@@ -431,6 +431,250 @@ static struct ipu7_mmu_hw ipu7_psys_mmu_hwdata[] = {
        },
 };
 
+static struct ipu7_mmu_hw ipu7p5_isys_mmu_hwdata[] = {
+       {
+               .name = "IS_FW_RD",
+               .offset = IPU7P5_IS_MMU_FW_RD_OFFSET,
+               .zlx_offset = IPU7P5_IS_ZLX_UC_RD_OFFSET,
+               .uao_offset = IPU7P5_IS_UAO_UC_RD_OFFSET,
+               .info_bits = 0x20005101,
+               .refill = 0x00002726,
+               .collapse_en_bitmap = 0x1,
+               .at_sp_arb_cfg = 0x1,
+               .l1_block = IPU7P5_IS_MMU_FW_RD_L1_BLOCKNR_REG,
+               .l2_block = IPU7P5_IS_MMU_FW_RD_L2_BLOCKNR_REG,
+               .nr_l1streams = IPU7P5_IS_MMU_FW_RD_STREAM_NUM,
+               .nr_l2streams = IPU7P5_IS_MMU_FW_RD_STREAM_NUM,
+               .l1_block_sz = { 0x0, 0x8, 0xa },
+               .l2_block_sz = { 0x0, 0x2, 0x4 },
+               .zlx_nr = IPU7P5_IS_ZLX_UC_RD_NUM,
+               .zlx_axi_pool = { 0x00000f30 },
+               .zlx_en = { 0, 1, 0, 0 },
+               .zlx_conf = { 0x0 },
+               .uao_p_num = IPU7P5_IS_UAO_UC_RD_PLANENUM,
+               .uao_p2tlb = { 0x49, 0x4c, 0x4d, 0x0 },
+       },
+       {
+               .name = "IS_FW_WR",
+               .offset = IPU7P5_IS_MMU_FW_WR_OFFSET,
+               .zlx_offset = IPU7P5_IS_ZLX_UC_WR_OFFSET,
+               .uao_offset = IPU7P5_IS_UAO_UC_WR_OFFSET,
+               .info_bits = 0x20005001,
+               .refill = 0x00002524,
+               .collapse_en_bitmap = 0x1,
+               .at_sp_arb_cfg = 0x1,
+               .l1_block = IPU7P5_IS_MMU_FW_WR_L1_BLOCKNR_REG,
+               .l2_block = IPU7P5_IS_MMU_FW_WR_L2_BLOCKNR_REG,
+               .nr_l1streams = IPU7P5_IS_MMU_FW_WR_STREAM_NUM,
+               .nr_l2streams = IPU7P5_IS_MMU_FW_WR_STREAM_NUM,
+               .l1_block_sz = { 0x0, 0x8, 0xa },
+               .l2_block_sz = { 0x0, 0x2, 0x4 },
+               .zlx_nr = IPU7P5_IS_ZLX_UC_WR_NUM,
+               .zlx_axi_pool = { 0x00000f20 },
+               .zlx_en = { 0, 1, 1, 0 },
+               .zlx_conf = { 0x0, 0x00010101, 0x00010101, 0x0 },
+               .uao_p_num = IPU7P5_IS_UAO_UC_WR_PLANENUM,
+               .uao_p2tlb = { 0x49, 0x4a, 0x4b, 0x0 },
+       },
+       {
+               .name = "IS_DATA_WR_ISOC",
+               .offset = IPU7P5_IS_MMU_M0_OFFSET,
+               .zlx_offset = IPU7P5_IS_ZLX_M0_OFFSET,
+               .uao_offset = IPU7P5_IS_UAO_M0_WR_OFFSET,
+               .info_bits = 0x20004e01,
+               .refill = 0x00002120,
+               .collapse_en_bitmap = 0x1,
+               .at_sp_arb_cfg = 0x1,
+               .l1_block = IPU7P5_IS_MMU_M0_L1_BLOCKNR_REG,
+               .l2_block = IPU7P5_IS_MMU_M0_L2_BLOCKNR_REG,
+               .nr_l1streams = IPU7P5_IS_MMU_M0_STREAM_NUM,
+               .nr_l2streams = IPU7P5_IS_MMU_M0_STREAM_NUM,
+               .l1_block_sz = { 0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10,
+                                0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x01e },
+               .l2_block_sz = { 0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10,
+                                0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e },
+               .zlx_nr = IPU7P5_IS_ZLX_M0_NUM,
+               .zlx_axi_pool = { 0x00000f10 },
+               .zlx_en = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
+               .zlx_conf = { 0x00010103, 0x00010103, 0x00010103, 0x00010103,
+                             0x00010103, 0x00010103, 0x00010103, 0x00010103,
+                             0x00010103, 0x00010103, 0x00010103, 0x00010103,
+                             0x00010103, 0x00010103, 0x00010103, 0x00010103 },
+               .uao_p_num = IPU7P5_IS_UAO_M0_WR_PLANENUM,
+               .uao_p2tlb = { 0x00000041, 0x00000042, 0x00000043, 0x00000044,
+                              0x00000041, 0x00000042, 0x00000043, 0x00000044,
+                              0x00000041, 0x00000042, 0x00000043, 0x00000044,
+                              0x00000041, 0x00000042, 0x00000043, 0x00000044 },
+       },
+       {
+               .name = "IS_DATA_WR_SNOOP",
+               .offset = IPU7P5_IS_MMU_M1_OFFSET,
+               .zlx_offset = IPU7P5_IS_ZLX_M1_OFFSET,
+               .uao_offset = IPU7P5_IS_UAO_M1_WR_OFFSET,
+               .info_bits = 0x20004f01,
+               .refill = 0x00002322,
+               .collapse_en_bitmap = 0x1,
+               .at_sp_arb_cfg = 0x1,
+               .l1_block = IPU7P5_IS_MMU_M1_L1_BLOCKNR_REG,
+               .l2_block = IPU7P5_IS_MMU_M1_L2_BLOCKNR_REG,
+               .nr_l1streams = IPU7P5_IS_MMU_M1_STREAM_NUM,
+               .nr_l2streams = IPU7P5_IS_MMU_M1_STREAM_NUM,
+               .l1_block_sz = { 0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10,
+                                0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e },
+               .l2_block_sz = { 0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10,
+                                0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e },
+               .zlx_nr = IPU7P5_IS_ZLX_M1_NUM,
+               .zlx_axi_pool = { 0x00000f20 },
+               .zlx_en = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
+               .zlx_conf = { 0x00010103, 0x00010103, 0x00010103, 0x00010103,
+                             0x00010103, 0x00010103, 0x00010103, 0x00010103,
+                             0x00010103, 0x00010103, 0x00010103, 0x00010103,
+                             0x00010103, 0x00010103, 0x00010103, 0x00010103 },
+               .uao_p_num = IPU7P5_IS_UAO_M1_WR_PLANENUM,
+               .uao_p2tlb = { 0x00000045, 0x00000046, 0x00000047, 0x00000048,
+                              0x00000045, 0x00000046, 0x00000047, 0x00000048,
+                              0x00000045, 0x00000046, 0x00000047, 0x00000048,
+                              0x00000045, 0x00000046, 0x00000047, 0x00000048 },
+       },
+};
+
+static struct ipu7_mmu_hw ipu7p5_psys_mmu_hwdata[] = {
+       {
+               .name = "PS_FW_RD",
+               .offset = IPU7P5_PS_MMU_FW_RD_OFFSET,
+               .zlx_offset = IPU7P5_PS_ZLX_FW_RD_OFFSET,
+               .uao_offset = IPU7P5_PS_UAO_FW_RD_OFFSET,
+               .info_bits = 0x20004001,
+               .refill = 0x00002726,
+               .collapse_en_bitmap = 0x1,
+               .at_sp_arb_cfg = 0x1,
+               .l1_block = IPU7P5_PS_MMU_FW_RD_L1_BLOCKNR_REG,
+               .l2_block = IPU7P5_PS_MMU_FW_RD_L2_BLOCKNR_REG,
+               .nr_l1streams = IPU7P5_PS_MMU_FW_RD_STREAM_NUM,
+               .nr_l2streams = IPU7P5_PS_MMU_FW_RD_STREAM_NUM,
+               .l1_block_sz = { 0x00, 0x08, 0x0a, 0x0c, 0x0d, 0x0f, 0x11,
+                                0x12, 0x13, 0x14, 0x16, 0x18, 0x19, 0x1a,
+                                0x1a, 0x1a },
+               .l2_block_sz = { 0x00, 0x02, 0x04, 0x06, 0x08, 0x0a, 0x0c,
+                                0x0e, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a,
+                                0x1c, 0x1e },
+               .zlx_nr = IPU7P5_PS_ZLX_FW_RD_NUM,
+               .zlx_axi_pool = { 0x00000f30 },
+               .zlx_en = { 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0 },
+               .zlx_conf = { 0x00000000, 0x00010101, 0x00000000, 0x00000000,
+                             0x00010101, 0x00010101, 0x00000000, 0x00000000,
+                             0x00000000, 0x00010101, 0x00010101, 0x00000000,
+                             0x00000000, 0x00000000, 0x00000000, 0x00000000 },
+               .uao_p_num = IPU7P5_PS_UAO_FW_RD_PLANENUM,
+               .uao_p2tlb = { 0x2e, 0x35, 0x36, 0x31, 0x37, 0x38, 0x39, 0x32,
+                              0x33, 0x3a, 0x3b, 0x3c, 0x34, 0x00, 0x00, 0x00 },
+       },
+       {
+               .name = "PS_FW_WR",
+               .offset = IPU7P5_PS_MMU_FW_WR_OFFSET,
+               .zlx_offset = IPU7P5_PS_ZLX_FW_WR_OFFSET,
+               .uao_offset = IPU7P5_PS_UAO_FW_WR_OFFSET,
+               .info_bits = 0x20003e01,
+               .refill = 0x00002322,
+               .collapse_en_bitmap = 0x1,
+               .at_sp_arb_cfg = 0x1,
+               .l1_block = IPU7P5_PS_MMU_FW_WR_L1_BLOCKNR_REG,
+               .l2_block = IPU7P5_PS_MMU_FW_WR_L2_BLOCKNR_REG,
+               .nr_l1streams = IPU7P5_PS_MMU_FW_WR_STREAM_NUM,
+               .nr_l2streams = IPU7P5_PS_MMU_FW_WR_STREAM_NUM,
+               .l1_block_sz = { 0x00, 0x08, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+                                0x10, 0x10 },
+               .l2_block_sz = { 0x00, 0x02, 0x04, 0x06, 0x08, 0x0a, 0x0c, 0x0e,
+                                0x10, 0x12 },
+               .zlx_nr = IPU7P5_PS_ZLX_FW_WR_NUM,
+               .zlx_axi_pool = { 0x00000f20 },
+               .zlx_en = { 0, 1, 1, 0, 0, 0, 0, 0, 0, 0 },
+               .zlx_conf = { 0x00000000, 0x00010101, 0x00010101, 0x00000000,
+                             0x00000000, 0x00000000, 0x00000000, 0x00000000,
+                             0x00000000, 0x00000000 },
+               .uao_p_num = IPU7P5_PS_UAO_FW_WR_PLANENUM,
+               .uao_p2tlb = { 0x0000002e, 0x0000002f, 0x00000030, 0x00000031,
+                              0x00000032, 0x00000033, 0x00000034, 0x00000000,
+                              0x00000000, 0x00000000 },
+       },
+       {
+               .name = "PS_DATA_RD",
+               .offset = IPU7P5_PS_MMU_SRT_RD_OFFSET,
+               .zlx_offset = IPU7P5_PS_ZLX_DATA_RD_OFFSET,
+               .uao_offset = IPU7P5_PS_UAO_SRT_RD_OFFSET,
+               .info_bits = 0x20003f01,
+               .refill = 0x00002524,
+               .collapse_en_bitmap = 0x1,
+               .at_sp_arb_cfg = 0x1,
+               .l1_block = IPU7P5_PS_MMU_SRT_RD_L1_BLOCKNR_REG,
+               .l2_block = IPU7P5_PS_MMU_SRT_RD_L2_BLOCKNR_REG,
+               .nr_l1streams = IPU7P5_PS_MMU_SRT_RD_STREAM_NUM,
+               .nr_l2streams = IPU7P5_PS_MMU_SRT_RD_STREAM_NUM,
+               .l1_block_sz = { 0x00, 0x04, 0x06, 0x08, 0x0b, 0x0d, 0x0f, 0x13,
+                                0x17, 0x19, 0x1b, 0x1d, 0x1f, 0x2b, 0x33, 0x3f,
+                                0x47, 0x49, 0x4b, 0x4c, 0x4d, 0x4e },
+               .l2_block_sz = { 0x00, 0x02, 0x04, 0x06, 0x08, 0x0a, 0x0c, 0x0e,
+                                0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e,
+                                0x20, 0x22, 0x24, 0x26, 0x28, 0x2a },
+               .zlx_nr = IPU7P5_PS_ZLX_DATA_RD_NUM,
+               .zlx_axi_pool = { 0x00000f30 },
+               .zlx_en = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+                           1, 1, 0, 0, 0, 0 },
+               .zlx_conf = { 0x00030303, 0x00010101, 0x00010101, 0x00030202,
+                             0x00010101, 0x00010101, 0x00030303, 0x00030303,
+                             0x00010101, 0x00030800, 0x00030500, 0x00020101,
+                             0x00042000, 0x00031000, 0x00042000, 0x00031000,
+                             0x00020400, 0x00010101, 0x00000000, 0x00000000,
+                             0x00000000, 0x00000000 },
+               .uao_p_num = IPU7P5_PS_UAO_SRT_RD_PLANENUM,
+               .uao_p2tlb = { 0x0000001c, 0x0000001d, 0x0000001e, 0x0000001f,
+                              0x00000020, 0x00000021, 0x00000022, 0x00000023,
+                              0x00000024, 0x00000025, 0x00000026, 0x00000027,
+                              0x00000028, 0x00000029, 0x0000002a, 0x0000002b,
+                              0x0000002c, 0x0000002d, 0x00000000, 0x00000000,
+                              0x00000000, 0x00000000 },
+       },
+       {
+               .name = "PS_DATA_WR",
+               .offset = IPU7P5_PS_MMU_SRT_WR_OFFSET,
+               .zlx_offset = IPU7P5_PS_ZLX_DATA_WR_OFFSET,
+               .uao_offset = IPU7P5_PS_UAO_SRT_WR_OFFSET,
+               .info_bits = 0x20003d01,
+               .refill = 0x00002120,
+               .collapse_en_bitmap = 0x1,
+               .at_sp_arb_cfg = 0x1,
+               .l1_block = IPU7P5_PS_MMU_SRT_WR_L1_BLOCKNR_REG,
+               .l2_block = IPU7P5_PS_MMU_SRT_WR_L2_BLOCKNR_REG,
+               .nr_l1streams = IPU7P5_PS_MMU_SRT_WR_STREAM_NUM,
+               .nr_l2streams = IPU7P5_PS_MMU_SRT_WR_STREAM_NUM,
+               .l1_block_sz = { 0x00, 0x02, 0x06, 0x0a, 0x0c, 0x0e, 0x10, 0x12,
+                                0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e, 0x20, 0x22,
+                                0x24, 0x28, 0x2a, 0x36, 0x3e, 0x40, 0x42, 0x4e,
+                                0x56, 0x5c, 0x68, 0x70, 0x76, 0x77, 0x78, 0x79 
},
+               .l2_block_sz = { 0x00, 0x02, 0x06, 0x0a, 0x0c, 0x0e, 0x10, 0x12,
+                                0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e, 0x20, 0x22,
+                                0x24, 0x28, 0x2a, 0x36, 0x3e, 0x40, 0x42, 0x4e,
+                                0x56, 0x5c, 0x68, 0x70, 0x76, 0x77, 0x78, 0x79 
},
+               .zlx_nr = IPU7P5_PS_ZLX_DATA_WR_NUM,
+               .zlx_axi_pool = { 0x00000f50 },
+               .zlx_en = { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1,
+                           1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0 },
+               .zlx_conf = { 0x00010102, 0x00030103, 0x00030103, 0x00010101,
+                             0x00010101, 0x00030101, 0x00010101, 0x38010101,
+                             0x00000000, 0x00000000, 0x38010101, 0x38010101,
+                             0x38010101, 0x38010101, 0x38010101, 0x38010101,
+                             0x00030303, 0x00010101, 0x00042000, 0x00031000,
+                             0x00010101, 0x00010101, 0x00042000, 0x00031000,
+                             0x00031000, 0x00042000, 0x00031000, 0x00031000,
+                             0x00000000, 0x00000000, 0x00000000, 0x00000000 },
+               .uao_p_num = IPU7P5_PS_UAO_SRT_WR_PLANENUM,
+               .uao_p2tlb = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+                              0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+                              0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+                              0x18, 0x19, 0x1a, 0x1b, 0x00, 0x00, 0x00, 0x00 },
+       },
+};
+
 static const struct ipu7_mmu_hwdata ipu7_mmu_hwdata_lookup[IPU_SUBSYS_NUM] = {
        [IPU_PSYS] = {
                .hwdata = ipu7_psys_mmu_hwdata,
@@ -442,6 +686,17 @@ static const struct ipu7_mmu_hwdata 
ipu7_mmu_hwdata_lookup[IPU_SUBSYS_NUM] = {
        },
 };
 
+static const struct ipu7_mmu_hwdata ipu7p5_mmu_hwdata_lookup[IPU_SUBSYS_NUM] = 
{
+       [IPU_PSYS] = {
+               .hwdata = ipu7p5_psys_mmu_hwdata,
+               .nr_mmus = ARRAY_SIZE(ipu7p5_psys_mmu_hwdata),
+       },
+       [IPU_ISYS] = {
+               .hwdata = ipu7p5_isys_mmu_hwdata,
+               .nr_mmus = ARRAY_SIZE(ipu7p5_isys_mmu_hwdata),
+       },
+};
+
 static void __ipu7_tlb_invalidate(struct ipu6_mmu *mmu)
 {
        struct ipu7_mmu_hw *mmu_hw = mmu->ipu7_mmu_hw;
@@ -561,13 +816,17 @@ static int __ipu7_mmu_hw_init(struct ipu6_mmu *mmu)
 static int __ipu7_mmu_init_hw_data(struct ipu6_mmu *mmu, struct device *dev,
                                   void __iomem *base)
 {
-       const struct ipu7_mmu_hwdata *lookup = ipu7_mmu_hwdata_lookup;
+       struct ipu6_device *isp = pci_get_drvdata(to_pci_dev(dev));
+       const struct ipu7_mmu_hwdata *lookup;
        struct ipu7_mmu_hw *mmu_hw, *src;
        unsigned int i, nr_mmus;
 
        if (mmu->mmid >= IPU_SUBSYS_NUM)
                return -EINVAL;
 
+       lookup = IS_IPU7P5(isp) ? ipu7p5_mmu_hwdata_lookup :
+                                 ipu7_mmu_hwdata_lookup;
+
        src = lookup[mmu->mmid].hwdata;
        nr_mmus = lookup[mmu->mmid].nr_mmus;
 
diff --git a/drivers/media/pci/intel/ipu6/ipu7-mmu-hw.h 
b/drivers/media/pci/intel/ipu6/ipu7-mmu-hw.h
index 68663057138a..ba31ed31b245 100644
--- a/drivers/media/pci/intel/ipu6/ipu7-mmu-hw.h
+++ b/drivers/media/pci/intel/ipu6/ipu7-mmu-hw.h
@@ -114,6 +114,105 @@
 #define IPU7_PS_ZLX_FW_RD_NUM                  16
 #define IPU7_PS_ZLX_FW_WR_NUM                  10
 
+/* IPU7P5 */
+/* IS MMU Cmd RD */
+#define IPU7P5_IS_MMU_FW_RD_OFFSET             0x274000
+#define IPU7P5_IS_MMU_FW_RD_STREAM_NUM         3
+#define IPU7P5_IS_MMU_FW_RD_L1_BLOCKNR_REG     0x54
+#define IPU7P5_IS_MMU_FW_RD_L2_BLOCKNR_REG     0x60
+
+/* IS MMU Cmd WR */
+#define IPU7P5_IS_MMU_FW_WR_OFFSET             0x275000
+#define IPU7P5_IS_MMU_FW_WR_STREAM_NUM         3
+#define IPU7P5_IS_MMU_FW_WR_L1_BLOCKNR_REG     0x54
+#define IPU7P5_IS_MMU_FW_WR_L2_BLOCKNR_REG     0x60
+
+/* IS MMU Data WR Snoop */
+#define IPU7P5_IS_MMU_M0_OFFSET                        0x276000
+#define IPU7P5_IS_MMU_M0_STREAM_NUM            16
+#define IPU7P5_IS_MMU_M0_L1_BLOCKNR_REG                0x54
+#define IPU7P5_IS_MMU_M0_L2_BLOCKNR_REG                0x94
+
+/* IS MMU Data WR ISOC */
+#define IPU7P5_IS_MMU_M1_OFFSET                        0x277000
+#define IPU7P5_IS_MMU_M1_STREAM_NUM            16
+#define IPU7P5_IS_MMU_M1_L1_BLOCKNR_REG                0x54
+#define IPU7P5_IS_MMU_M1_L2_BLOCKNR_REG                0x94
+
+/* PS MMU FW RD */
+#define IPU7P5_PS_MMU_FW_RD_OFFSET             0x148000
+#define IPU7P5_PS_MMU_FW_RD_STREAM_NUM         16
+#define IPU7P5_PS_MMU_FW_RD_L1_BLOCKNR_REG     0x54
+#define IPU7P5_PS_MMU_FW_RD_L2_BLOCKNR_REG     0x94
+
+/* PS MMU FW WR */
+#define IPU7P5_PS_MMU_FW_WR_OFFSET             0x149000
+#define IPU7P5_PS_MMU_FW_WR_STREAM_NUM         10
+#define IPU7P5_PS_MMU_FW_WR_L1_BLOCKNR_REG     0x54
+#define IPU7P5_PS_MMU_FW_WR_L2_BLOCKNR_REG     0x7c
+
+/* PS MMU FW Data RD VC0 */
+#define IPU7P5_PS_MMU_SRT_RD_OFFSET            0x14a000
+#define IPU7P5_PS_MMU_SRT_RD_STREAM_NUM                22
+#define IPU7P5_PS_MMU_SRT_RD_L1_BLOCKNR_REG    0x54
+#define IPU7P5_PS_MMU_SRT_RD_L2_BLOCKNR_REG    0xac
+
+/* PS MMU FW Data WR VC0 */
+#define IPU7P5_PS_MMU_SRT_WR_OFFSET            0x14b000
+#define IPU7P5_PS_MMU_SRT_WR_STREAM_NUM                32
+#define IPU7P5_PS_MMU_SRT_WR_L1_BLOCKNR_REG    0x54
+#define IPU7P5_PS_MMU_SRT_WR_L2_BLOCKNR_REG    0xd4
+
+/* IS UAO UC RD */
+#define IPU7P5_IS_UAO_UC_RD_OFFSET             0x27c000
+#define IPU7P5_IS_UAO_UC_RD_PLANENUM           4
+
+/* IS UAO UC WR */
+#define IPU7P5_IS_UAO_UC_WR_OFFSET             0x27d000
+#define IPU7P5_IS_UAO_UC_WR_PLANENUM           4
+
+/* IS UAO M0 WR */
+#define IPU7P5_IS_UAO_M0_WR_OFFSET             0x27e000
+#define IPU7P5_IS_UAO_M0_WR_PLANENUM           16
+
+/* IS UAO M1 WR */
+#define IPU7P5_IS_UAO_M1_WR_OFFSET             0x27f000
+#define IPU7P5_IS_UAO_M1_WR_PLANENUM           16
+
+/* PS UAO FW RD */
+#define IPU7P5_PS_UAO_FW_RD_OFFSET             0x156000
+#define IPU7P5_PS_UAO_FW_RD_PLANENUM           16
+
+/* PS UAO FW WR */
+#define IPU7P5_PS_UAO_FW_WR_OFFSET             0x157000
+#define IPU7P5_PS_UAO_FW_WR_PLANENUM           10
+
+/* PS UAO SRT RD */
+#define IPU7P5_PS_UAO_SRT_RD_OFFSET            0x154000
+#define IPU7P5_PS_UAO_SRT_RD_PLANENUM          22
+
+/* PS UAO SRT WR */
+#define IPU7P5_PS_UAO_SRT_WR_OFFSET            0x155000
+#define IPU7P5_PS_UAO_SRT_WR_PLANENUM          32
+
+#define IPU7P5_IS_ZLX_UC_RD_OFFSET             0x278000
+#define IPU7P5_IS_ZLX_UC_WR_OFFSET             0x279000
+#define IPU7P5_IS_ZLX_M0_OFFSET                        0x27a000
+#define IPU7P5_IS_ZLX_M1_OFFSET                        0x27b000
+#define IPU7P5_IS_ZLX_UC_RD_NUM                        4
+#define IPU7P5_IS_ZLX_UC_WR_NUM                        4
+#define IPU7P5_IS_ZLX_M0_NUM                   16
+#define IPU7P5_IS_ZLX_M1_NUM                   16
+
+#define IPU7P5_PS_ZLX_DATA_RD_OFFSET           0x14e000
+#define IPU7P5_PS_ZLX_DATA_WR_OFFSET           0x14f000
+#define IPU7P5_PS_ZLX_FW_RD_OFFSET             0x150000
+#define IPU7P5_PS_ZLX_FW_WR_OFFSET             0x151000
+#define IPU7P5_PS_ZLX_DATA_RD_NUM              22
+#define IPU7P5_PS_ZLX_DATA_WR_NUM              32
+#define IPU7P5_PS_ZLX_FW_RD_NUM                        16
+#define IPU7P5_PS_ZLX_FW_WR_NUM                        10
+
 struct ipu7_mmu_hw {
        char name[32];
 
_______________________________________________
linuxtv-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to