Re: [PATCH v1 5/9] PCI: microchip: Gather MSI information from hardware config registers

Bjorn Helgaas
2022-11-16T16:46:21Z

On Wed, Nov 16, 2022 at 01:55:00PM +0000, daire.mcnamara@microchip.com wrote:
> From: Daire McNamara <daire.mcnamara@microchip.com>
>
> The PCIe root complex on PolarFire SoC is configured at bitstream creation
> time using Libero. Key MSI-related parameters include the number of
> MSIs (1/2/4/8/16/32) and the MSI address. In the device driver, extract
> this information from hw registers at init time, and use it to configure
> MSI system, including configuring MSI capability structure correctly in
> configuration space.

Minor nits for v2.

> + /* fixup msi enable flag */

s/msi/MSI/ here and comments below to match other usage.

> + reg = readw_relaxed(ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_FLAGS);
> + reg |= PCI_MSI_FLAGS_ENABLE;
> + writew_relaxed(reg, ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_FLAGS);
> +
> + /* fixup msi queue flags */
> + queue_size = reg & PCI_MSI_FLAGS_QMASK;
> + queue_size >>= 1;
> + reg &= ~PCI_MSI_FLAGS_QSIZE;
> + reg |= queue_size << 4;
> + writew_relaxed(reg, ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_FLAGS);
> +
> + /* fixup msi addr fields */

> + /* allow enabling msi by disabling msi-x */

s/msi-x/MSI-X/