Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Jan 2025 23:28:07 GMT
From:      John Baldwin <jhb@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: bf6c4ee6f0c8 - main - arm64 nexus: Remove support for I/O port resources
Message-ID:  <202501232328.50NNS7GG099219@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=bf6c4ee6f0c8d0b9025207cde648427b749d8420

commit bf6c4ee6f0c8d0b9025207cde648427b749d8420
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2025-01-23 23:27:48 +0000
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: 2025-01-23 23:27:48 +0000

    arm64 nexus: Remove support for I/O port resources
    
    arm64 doesn't natively support I/O port resources.  PCI I/O port BARs
    are remapped to memory resources by PCI bridge drivers before the
    request is passed up to the nexus layer.
    
    Reviewed by:    imp, markj
    Differential Revision:  https://reviews.freebsd.org/D48581
---
 sys/arm64/arm64/nexus.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/sys/arm64/arm64/nexus.c b/sys/arm64/arm64/nexus.c
index 8d7489b844ae..2de996447edd 100644
--- a/sys/arm64/arm64/nexus.c
+++ b/sys/arm64/arm64/nexus.c
@@ -221,7 +221,6 @@ nexus_get_rman(device_t bus, int type, u_int flags)
 	case SYS_RES_IRQ:
 		return (&irq_rman);
 	case SYS_RES_MEMORY:
-	case SYS_RES_IOPORT:
 		return (&mem_rman);
 	default:
 		return (NULL);
@@ -334,7 +333,6 @@ nexus_activate_resource_flags(device_t bus, device_t child, struct resource *r,
 	 * If this is a memory resource, map it into the kernel.
 	 */
 	switch (rman_get_type(r)) {
-	case SYS_RES_IOPORT:
 	case SYS_RES_MEMORY:
 		if ((err = rman_activate_resource(r)) != 0)
 			return (err);
@@ -390,9 +388,8 @@ nexus_map_resource(device_t bus, device_t child, struct resource *r,
 	if ((rman_get_flags(r) & RF_ACTIVE) == 0)
 		return (ENXIO);
 
-	/* Mappings are only supported on I/O and memory resources. */
+	/* Mappings are only supported on memory resources. */
 	switch (rman_get_type(r)) {
-	case SYS_RES_IOPORT:
 	case SYS_RES_MEMORY:
 		break;
 	default:
@@ -422,7 +419,6 @@ nexus_unmap_resource(device_t bus, device_t child, struct resource *r,
 
 	switch (rman_get_type(r)) {
 	case SYS_RES_MEMORY:
-	case SYS_RES_IOPORT:
 		pmap_unmapdev(map->r_vaddr, map->r_size);
 		return (0);
 	default:
@@ -480,7 +476,6 @@ nexus_fdt_activate_resource(device_t bus, device_t child, struct resource *r)
 	flags = 0;
 	switch (rman_get_type(r)) {
 	case SYS_RES_MEMORY:
-	case SYS_RES_IOPORT:
 		/*
 		 * If the fdt parent has the nonposted-mmio property we
 		 * need to use non-posted IO to access the device. When



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202501232328.50NNS7GG099219>