Re: [PATCH pciutils 3/4] libpci: Add support for filling bridge resources

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi!

> +      else if (i < 7+6+4)
> +        {
> +          /*
> +           * If kernel was compiled without CONFIG_PCI_IOV option then after
> +           * the ROM line for configured bridge device (that which had set
> +           * subordinary bus number to non-zero value) are four additional lines
> +           * which describe resources behind bridge. For PCI-to-PCI bridges they
> +           * are: IO, MEM, PREFMEM and empty. For CardBus bridges they are: IO0,
> +           * IO1, MEM0 and MEM1. For unconfigured bridges and other devices
> +           * there is no additional line after the ROM line. If kernel was
> +           * compiled with CONFIG_PCI_IOV option then after the ROM line and
> +           * before the first bridge resource line are six additional lines
> +           * which describe IOV resources. Read all remaining lines in resource
> +           * file and based on the number of remaining lines (0, 4, 6, 10) parse
> +           * resources behind bridge.
> +           */
> +          lines[i-7].flags = flags;
> +          lines[i-7].base_addr = start;
> +          lines[i-7].size = size;
> +        }
> +    }
> +  if (i == 7+4 || i == 7+6+4)

This looks crazy: is there any other way how to tell what the bridge entries mean?
Checking the number of entries looks very brittle.

				Martin



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux