1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */ 244262327SAhmed Mansour /* 344262327SAhmed Mansour * Copyright 2017 NXP 444262327SAhmed Mansour */ 544262327SAhmed Mansour 644262327SAhmed Mansour #ifndef __FSL_QBMAN_H__ 744262327SAhmed Mansour #define __FSL_QBMAN_H__ 844262327SAhmed Mansour void fdt_fixup_qportals(void *blob); 944262327SAhmed Mansour void fdt_fixup_bportals(void *blob); 1044262327SAhmed Mansour void inhibit_portals(void __iomem *addr, int max_portals, 1144262327SAhmed Mansour int arch_max_portals, int portal_cinh_size); 1244262327SAhmed Mansour void setup_qbman_portals(void); 1344262327SAhmed Mansour 1444262327SAhmed Mansour struct ccsr_qman { 1544262327SAhmed Mansour #ifdef CONFIG_SYS_FSL_QMAN_V3 1644262327SAhmed Mansour u8 res0[0x200]; 1744262327SAhmed Mansour #else 1844262327SAhmed Mansour struct { 1944262327SAhmed Mansour u32 qcsp_lio_cfg; /* 0x0 - SW Portal n LIO cfg */ 2044262327SAhmed Mansour u32 qcsp_io_cfg; /* 0x4 - SW Portal n IO cfg */ 2144262327SAhmed Mansour u32 res; 2244262327SAhmed Mansour u32 qcsp_dd_cfg; /* 0xc - SW Portal Dynamic Debug cfg */ 2344262327SAhmed Mansour } qcsp[32]; 2444262327SAhmed Mansour #endif 2544262327SAhmed Mansour /* Not actually reserved, but irrelevant to u-boot */ 2644262327SAhmed Mansour u8 res[0xbf8 - 0x200]; 2744262327SAhmed Mansour u32 ip_rev_1; 2844262327SAhmed Mansour u32 ip_rev_2; 2944262327SAhmed Mansour u32 fqd_bare; /* FQD Extended Base Addr Register */ 3044262327SAhmed Mansour u32 fqd_bar; /* FQD Base Addr Register */ 3144262327SAhmed Mansour u8 res1[0x8]; 3244262327SAhmed Mansour u32 fqd_ar; /* FQD Attributes Register */ 3344262327SAhmed Mansour u8 res2[0xc]; 3444262327SAhmed Mansour u32 pfdr_bare; /* PFDR Extended Base Addr Register */ 3544262327SAhmed Mansour u32 pfdr_bar; /* PFDR Base Addr Register */ 3644262327SAhmed Mansour u8 res3[0x8]; 3744262327SAhmed Mansour u32 pfdr_ar; /* PFDR Attributes Register */ 3844262327SAhmed Mansour u8 res4[0x4c]; 3944262327SAhmed Mansour u32 qcsp_bare; /* QCSP Extended Base Addr Register */ 4044262327SAhmed Mansour u32 qcsp_bar; /* QCSP Base Addr Register */ 4144262327SAhmed Mansour u8 res5[0x78]; 4244262327SAhmed Mansour u32 ci_sched_cfg; /* Initiator Scheduling Configuration */ 4344262327SAhmed Mansour u32 srcidr; /* Source ID Register */ 4444262327SAhmed Mansour u32 liodnr; /* LIODN Register */ 4544262327SAhmed Mansour u8 res6[4]; 4644262327SAhmed Mansour u32 ci_rlm_cfg; /* Initiator Read Latency Monitor Cfg */ 4744262327SAhmed Mansour u32 ci_rlm_avg; /* Initiator Read Latency Monitor Avg */ 4844262327SAhmed Mansour u8 res7[0x2e8]; 4944262327SAhmed Mansour #ifdef CONFIG_SYS_FSL_QMAN_V3 5044262327SAhmed Mansour struct { 5144262327SAhmed Mansour u32 qcsp_lio_cfg; /* 0x0 - SW Portal n LIO cfg */ 5244262327SAhmed Mansour u32 qcsp_io_cfg; /* 0x4 - SW Portal n IO cfg */ 5344262327SAhmed Mansour u32 res; 5444262327SAhmed Mansour u32 qcsp_dd_cfg; /* 0xc - SW Portal n Dynamic Debug cfg*/ 5544262327SAhmed Mansour } qcsp[50]; 5644262327SAhmed Mansour #endif 5744262327SAhmed Mansour }; 5844262327SAhmed Mansour 5944262327SAhmed Mansour struct ccsr_bman { 6044262327SAhmed Mansour /* Not actually reserved, but irrelevant to u-boot */ 6144262327SAhmed Mansour u8 res[0xbf8]; 6244262327SAhmed Mansour u32 ip_rev_1; 6344262327SAhmed Mansour u32 ip_rev_2; 6444262327SAhmed Mansour u32 fbpr_bare; /* FBPR Extended Base Addr Register */ 6544262327SAhmed Mansour u32 fbpr_bar; /* FBPR Base Addr Register */ 6644262327SAhmed Mansour u8 res1[0x8]; 6744262327SAhmed Mansour u32 fbpr_ar; /* FBPR Attributes Register */ 6844262327SAhmed Mansour u8 res2[0xf0]; 6944262327SAhmed Mansour u32 srcidr; /* Source ID Register */ 7044262327SAhmed Mansour u32 liodnr; /* LIODN Register */ 7144262327SAhmed Mansour u8 res7[0x2f4]; 7244262327SAhmed Mansour }; 7344262327SAhmed Mansour 7444262327SAhmed Mansour #endif /* __FSL_QBMAN_H__ */ 75