On Thu, May 23, 2024 at 12:05:28PM +0530, Vidya Sagar wrote: > For iommu_groups to form correctly, the ACS settings in the PCIe fabric > need to be setup early in the boot process, either via the BIOS or via > the kernel disable_acs_redir parameter. > > disable_acs_redir allows clearing the RR|CR|EC ACS flags, but the PCIe > spec Rev3.0 already defines 7 different ACS related flags with many more > useful combinations depending on the fabric design. > > For backward compatibility, leave the 'disable_acs_redir' as is and add > a new parameter 'config_acs'so that the user can directly specify the ACS > flags to set on a per-device basis. Use a similar syntax to the existing > 'resource_alignment' parameter by using the @ character and have the user > specify the ACS flags using a bit encoding. If both 'disable_acs_redir' and > 'config_acs' are specified for a particular device, configuration specified > through 'config_acs' takes precedence over the other. > > Signed-off-by: Vidya Sagar <vidyas@xxxxxxxxxx> > --- > v3: > * Fixed a documentation issue reported by kernel test bot > > v2: > * Refactored the code as per Jason's suggestion Reviewed-by: Jason Gunthorpe <jgg@xxxxxxxxxx> Jason