Re: [PATCH v3 04/27] PCI: Add is_pci_*_resource_idx() helpers

2013-04-04 Thread Bjorn Helgaas
On Wed, Mar 13, 2013 at 5:27 PM, Yinghai Lu  wrote:
> According to resource pointer find out if the resource is some type resource
> like bridge, sriov, or std.
>
> Signed-off-by: Yinghai Lu 
> ---
>  include/linux/pci.h |   23 +++
>  1 file changed, 23 insertions(+)
>
> diff --git a/include/linux/pci.h b/include/linux/pci.h
> index 127a856..efb348b 100644
> --- a/include/linux/pci.h
> +++ b/include/linux/pci.h
> @@ -92,6 +92,29 @@ enum {
> DEVICE_COUNT_RESOURCE = PCI_NUM_RESOURCES,
>  };
>
> +static inline bool is_pci_std_resource_idx(int i)
> +{
> +   return i >= PCI_STD_RESOURCES && i <= PCI_STD_RESOURCE_END;
> +}
> +
> +static inline bool is_pci_rom_resource_idx(int i)
> +{
> +   return i == PCI_ROM_RESOURCE;
> +}
> +
> +static inline bool is_pci_iov_resource_idx(int i)
> +{
> +#ifdef CONFIG_PCI_IOV
> +   return i >= PCI_IOV_RESOURCES && i <= PCI_IOV_RESOURCE_END;
> +#endif
> +   return false;
> +}
> +
> +static inline bool is_pci_bridge_resource_idx(int i)
> +{
> +   return i >= PCI_BRIDGE_RESOURCES && i <= PCI_BRIDGE_RESOURCE_END;
> +}
> +
>  typedef int __bitwise pci_power_t;
>
>  #define PCI_D0 ((pci_power_t __force) 0)

1) I don't like adding more "_idx()" interfaces.

2) The only one of these that's even used is "is_pci_bridge_resource_idx()"

3) I think adding a wrapper struct with a "type" or "flags" field
would make this trivial, e.g., "pres->flags & PCI_RESOURCE_WINDOW" or
something.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v3 04/27] PCI: Add is_pci_*_resource_idx() helpers

2013-04-04 Thread Bjorn Helgaas
On Wed, Mar 13, 2013 at 5:27 PM, Yinghai Lu ying...@kernel.org wrote:
 According to resource pointer find out if the resource is some type resource
 like bridge, sriov, or std.

 Signed-off-by: Yinghai Lu ying...@kernel.org
 ---
  include/linux/pci.h |   23 +++
  1 file changed, 23 insertions(+)

 diff --git a/include/linux/pci.h b/include/linux/pci.h
 index 127a856..efb348b 100644
 --- a/include/linux/pci.h
 +++ b/include/linux/pci.h
 @@ -92,6 +92,29 @@ enum {
 DEVICE_COUNT_RESOURCE = PCI_NUM_RESOURCES,
  };

 +static inline bool is_pci_std_resource_idx(int i)
 +{
 +   return i = PCI_STD_RESOURCES  i = PCI_STD_RESOURCE_END;
 +}
 +
 +static inline bool is_pci_rom_resource_idx(int i)
 +{
 +   return i == PCI_ROM_RESOURCE;
 +}
 +
 +static inline bool is_pci_iov_resource_idx(int i)
 +{
 +#ifdef CONFIG_PCI_IOV
 +   return i = PCI_IOV_RESOURCES  i = PCI_IOV_RESOURCE_END;
 +#endif
 +   return false;
 +}
 +
 +static inline bool is_pci_bridge_resource_idx(int i)
 +{
 +   return i = PCI_BRIDGE_RESOURCES  i = PCI_BRIDGE_RESOURCE_END;
 +}
 +
  typedef int __bitwise pci_power_t;

  #define PCI_D0 ((pci_power_t __force) 0)

1) I don't like adding more _idx() interfaces.

2) The only one of these that's even used is is_pci_bridge_resource_idx()

3) I think adding a wrapper struct with a type or flags field
would make this trivial, e.g., pres-flags  PCI_RESOURCE_WINDOW or
something.
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/