Re: [PATCH 14/20] alpha/PCI: Add static PCI resource attribute macros

Ilpo Järvinen <[email protected]>
Newsgroups org.kernel.vger.linux-alpha,org.kernel.vger.linux-pci,org.ozlabs.lists.linuxppc-dev
Message-ID <[email protected]>
On Fri, 10 Apr 2026, Krzysztof Wilczyński wrote:

> Add macros for declaring static binary attributes for Alpha's PCI
> resource files:
> 
>   - pci_dev_resource_attr(),        for dense/BWX systems (mmap dense)
>   - pci_dev_resource_sparse_attr(), for sparse systems (mmap sparse)
>   - pci_dev_resource_dense_attr(),  for dense companion files (mmap dense)
> 
> Each macro creates a const bin_attribute with the BAR index stored in
> the .private property and the appropriate .mmap callback.
> 
> Signed-off-by: Krzysztof Wilczyński <[email protected]>
> ---
>  arch/alpha/kernel/pci-sysfs.c | 20 ++++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/arch/alpha/kernel/pci-sysfs.c b/arch/alpha/kernel/pci-sysfs.c
> index 867199b988de..0e016b597b06 100644
> --- a/arch/alpha/kernel/pci-sysfs.c
> +++ b/arch/alpha/kernel/pci-sysfs.c
> @@ -104,6 +104,26 @@ static int pci_mmap_resource_dense(struct file *filp, struct kobject *kobj,
>  	return pci_mmap_resource(kobj, attr, vma, 0);
>  }
>  
> +#define __pci_dev_resource_attr(_bar, _name, _suffix, _mmap)		\
> +static const struct bin_attribute					\
> +pci_dev_resource##_bar##_suffix##_attr = {				\
> +	.attr = { .name = __stringify(_name), .mode = 0600 },		\
> +	.private = (void *)(unsigned long)(_bar),			\
> +	.mmap = (_mmap),						\
> +}
> +
> +#define pci_dev_resource_attr(_bar)					\
> +	__pci_dev_resource_attr(_bar, resource##_bar,,			\
> +			    pci_mmap_resource_dense)
> +
> +#define pci_dev_resource_sparse_attr(_bar)				\
> +	__pci_dev_resource_attr(_bar, resource##_bar##_sparse, _sparse,	\
> +			    pci_mmap_resource_sparse)
> +
> +#define pci_dev_resource_dense_attr(_bar)				\
> +	__pci_dev_resource_attr(_bar, resource##_bar##_dense, _dense,	\
> +			    pci_mmap_resource_dense)
> +
>  /**
>   * pci_remove_resource_files - cleanup resource files
>   * @pdev: pci_dev to cleanup
> 

Wouldn't this belong together with the next patch, or is there some good 
reason why you added them separately?

-- 
 i.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.