bool program_deskew_time;
bool raw_violation_fixup;
bool update_fc_timer;
+ bool has_cache_bars;
struct {
struct {
u32 rp_ectl_2_r1;
afi_writel(pcie, 0, AFI_AXI_BAR5_SZ);
afi_writel(pcie, 0, AFI_FPCI_BAR5);
- /* map all upstream transactions as uncached */
- afi_writel(pcie, 0, AFI_CACHE_BAR0_ST);
- afi_writel(pcie, 0, AFI_CACHE_BAR0_SZ);
- afi_writel(pcie, 0, AFI_CACHE_BAR1_ST);
- afi_writel(pcie, 0, AFI_CACHE_BAR1_SZ);
+ if (pcie->soc->has_cache_bars) {
+ /* map all upstream transactions as uncached */
+ afi_writel(pcie, 0, AFI_CACHE_BAR0_ST);
+ afi_writel(pcie, 0, AFI_CACHE_BAR0_SZ);
+ afi_writel(pcie, 0, AFI_CACHE_BAR1_ST);
+ afi_writel(pcie, 0, AFI_CACHE_BAR1_SZ);
+ }
/* MSI translations are setup only when needed */
afi_writel(pcie, 0, AFI_MSI_FPCI_BAR_ST);
.program_deskew_time = false,
.raw_violation_fixup = false,
.update_fc_timer = false,
+ .has_cache_bars = true,
.ectl.enable = false,
};
.program_deskew_time = false,
.raw_violation_fixup = false,
.update_fc_timer = false,
+ .has_cache_bars = false,
.ectl.enable = false,
};
.program_deskew_time = false,
.raw_violation_fixup = true,
.update_fc_timer = false,
+ .has_cache_bars = false,
.ectl.enable = false,
};
.program_deskew_time = true,
.raw_violation_fixup = false,
.update_fc_timer = true,
+ .has_cache_bars = false,
.ectl = {
.regs = {
.rp_ectl_2_r1 = 0x0000000f,
.program_deskew_time = false,
.raw_violation_fixup = false,
.update_fc_timer = false,
+ .has_cache_bars = false,
.ectl.enable = false,
};