pci: layerscape: Fixup PCIe EP mode DT nodes for LX2160A rev2
LX2160A rev2 uses different PCIe controller, so EP mode DT nodes also need to be fixed up. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
This commit is contained in:
		
							parent
							
								
									6fe7743d05
								
							
						
					
					
						commit
						8ec619f8fd
					
				| 
						 | 
					@ -41,6 +41,8 @@ int lx2_board_fix_fdt(void *fdt)
 | 
				
			||||||
		{ "config_axi_slave", "config" }
 | 
							{ "config_axi_slave", "config" }
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
	int off = -1, i;
 | 
						int off = -1, i;
 | 
				
			||||||
 | 
						const fdt32_t *prop;
 | 
				
			||||||
 | 
						u32 ob_wins, ib_wins;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	off = fdt_node_offset_by_compatible(fdt, -1, "fsl,lx2160a-pcie");
 | 
						off = fdt_node_offset_by_compatible(fdt, -1, "fsl,lx2160a-pcie");
 | 
				
			||||||
	while (off != -FDT_ERR_NOTFOUND) {
 | 
						while (off != -FDT_ERR_NOTFOUND) {
 | 
				
			||||||
| 
						 | 
					@ -86,6 +88,30 @@ int lx2_board_fix_fdt(void *fdt)
 | 
				
			||||||
		off = fdt_node_offset_by_compatible(fdt, off,
 | 
							off = fdt_node_offset_by_compatible(fdt, off,
 | 
				
			||||||
						    "fsl,lx2160a-pcie");
 | 
											    "fsl,lx2160a-pcie");
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* Fixup PCIe EP nodes */
 | 
				
			||||||
 | 
						off = -1;
 | 
				
			||||||
 | 
						off = fdt_node_offset_by_compatible(fdt, off, "fsl,lx2160a-pcie-ep");
 | 
				
			||||||
 | 
						while (off != -FDT_ERR_NOTFOUND) {
 | 
				
			||||||
 | 
							fdt_setprop_string(fdt, off, "compatible",
 | 
				
			||||||
 | 
									   "fsl,lx2160ar2-pcie-ep");
 | 
				
			||||||
 | 
							prop = fdt_getprop(fdt, off, "apio-wins", NULL);
 | 
				
			||||||
 | 
							if (!prop) {
 | 
				
			||||||
 | 
								printf("%s: Failed to fixup PCIe EP node @0x%x\n",
 | 
				
			||||||
 | 
								       __func__, off);
 | 
				
			||||||
 | 
								continue;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							ob_wins = fdt32_to_cpu(*prop);
 | 
				
			||||||
 | 
							ib_wins = (ob_wins == 256) ? 24 : 8;
 | 
				
			||||||
 | 
							fdt_setprop_u32(fdt, off, "num-ib-windows", ib_wins);
 | 
				
			||||||
 | 
							fdt_setprop_u32(fdt, off, "num-ob-windows", ob_wins);
 | 
				
			||||||
 | 
							fdt_delprop(fdt, off, "apio-wins");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							off = fdt_node_offset_by_compatible(fdt, off,
 | 
				
			||||||
 | 
											    "fsl,lx2160a-pcie-ep");
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue