PCI: Add macros for legacy I/O and memory address space sizes

Add defines for the standard PCI legacy address space sizes, replacing the
raw literals used by the legacy sysfs attributes.

Then, replace open-coded values with the newly added macros.

No functional changes intended.

Suggested-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Tested-by: Shivaprasad G Bhat <sbhat@linux.ibm.com>
Link: https://patch.msgid.link/20260508043543.217179-20-kwilczynski@kernel.org
This commit is contained in:
Krzysztof Wilczyński 2026-05-08 04:35:38 +00:00 committed by Bjorn Helgaas
parent b45bebbfa0
commit e52e497e37
2 changed files with 7 additions and 2 deletions

View File

@ -1019,7 +1019,7 @@ void pci_create_legacy_files(struct pci_bus *b)
sysfs_bin_attr_init(b->legacy_io);
b->legacy_io->attr.name = "legacy_io";
b->legacy_io->size = 0xffff;
b->legacy_io->size = PCI_LEGACY_IO_SIZE;
b->legacy_io->attr.mode = 0600;
b->legacy_io->read = pci_read_legacy_io;
b->legacy_io->write = pci_write_legacy_io;
@ -1036,7 +1036,7 @@ void pci_create_legacy_files(struct pci_bus *b)
b->legacy_mem = b->legacy_io + 1;
sysfs_bin_attr_init(b->legacy_mem);
b->legacy_mem->attr.name = "legacy_mem";
b->legacy_mem->size = 1024*1024;
b->legacy_mem->size = PCI_LEGACY_MEM_SIZE;
b->legacy_mem->attr.mode = 0600;
b->legacy_mem->mmap = pci_mmap_legacy_mem;
/* See pci_create_attr() for motivation */

View File

@ -27,6 +27,7 @@
#include <linux/mod_devicetable.h>
#include <linux/types.h>
#include <linux/sizes.h>
#include <linux/init.h>
#include <linux/ioport.h>
#include <linux/list.h>
@ -1169,6 +1170,10 @@ enum {
/* These external functions are only available when PCI support is enabled */
#ifdef CONFIG_PCI
/* PCI legacy I/O port and memory address space sizes. */
#define PCI_LEGACY_IO_SIZE (SZ_64K - 1)
#define PCI_LEGACY_MEM_SIZE SZ_1M
extern unsigned int pci_flags;
static inline void pci_set_flags(int flags) { pci_flags = flags; }