History log of /freebsd/sys/arm64/arm64/nexus.c (Results 1 – 25 of 83)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# bf6c4ee6 24-Jan-2025 John Baldwin <jhb@FreeBSD.org>

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

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

show more ...


# 18250ec6 06-Dec-2024 John Baldwin <jhb@FreeBSD.org>

Replace calls to bus_generic_attach with bus_attach_children

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D47675


# 723da5d9 06-Dec-2024 John Baldwin <jhb@FreeBSD.org>

Replace calls to bus_generic_probe with bus_identify_children

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D47674


Revision tags: release/14.2.0
# 60344d7e 29-Oct-2024 Andrew Turner <andrew@FreeBSD.org>

arm64: Use the common activate function in nexus

For non-memory and non-ioport spaces use the common
bus_generic_rman_activate_resource function in the arm64 nexus. We
can't currently use it for mem

arm64: Use the common activate function in nexus

For non-memory and non-ioport spaces use the common
bus_generic_rman_activate_resource function in the arm64 nexus. We
can't currently use it for memory types as it doesn't support
non-posted memory.

Reviewed by: jhb
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D47283

show more ...


Revision tags: release/13.4.0, release/14.1.0
# 2baed46e 13-Mar-2024 John Baldwin <jhb@FreeBSD.org>

new-bus: Remove the 'rid' and 'type' arguments from BUS_*ACTIVATE_RESOURCE

The public bus_activate/deactivate_resource() API still accepts both
forms, but the internal kobj methods no longer pass th

new-bus: Remove the 'rid' and 'type' arguments from BUS_*ACTIVATE_RESOURCE

The public bus_activate/deactivate_resource() API still accepts both
forms, but the internal kobj methods no longer pass the arguments.
Implementations which need the rid or type now use rman_get_rid() or
rman_get_type() to fetch the value from the allocated resource.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D44130

show more ...


# d77f2092 13-Mar-2024 John Baldwin <jhb@FreeBSD.org>

new-bus: Remove the 'type' argument from BUS_MAP/UNMAP_RESOURCE

The public bus_map/unmap_resource() API still accepts both forms, but
the internal kobj methods no longer pass the argument.
Implement

new-bus: Remove the 'type' argument from BUS_MAP/UNMAP_RESOURCE

The public bus_map/unmap_resource() API still accepts both forms, but
the internal kobj methods no longer pass the argument.
Implementations which need the type now use rman_get_type() to fetch
the value from the allocated resource.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D44129

show more ...


Revision tags: release/13.3.0
# fdafd315 24-Nov-2023 Warner Losh <imp@FreeBSD.org>

sys: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remov

sys: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix

show more ...


# 5622f52c 24-Nov-2023 John Baldwin <jhb@FreeBSD.org>

aarch64 nexus: Fix a mismerge in nexus_activate_resource

Fixes: 658501d25930 aarch64 nexus: Use bus_generic_rman_*_resource


# 658501d2 24-Nov-2023 John Baldwin <jhb@FreeBSD.org>

aarch64 nexus: Use bus_generic_rman_*_resource

Custom activate/deactivate_resource methods are still needed to handle
IRQ resources.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.

aarch64 nexus: Use bus_generic_rman_*_resource

Custom activate/deactivate_resource methods are still needed to handle
IRQ resources.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D42741

show more ...


# 71cfd330 23-Nov-2023 John Baldwin <jhb@FreeBSD.org>

arm64/riscv nexus: Implement bus_unmap_resource

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D42725


# b887b665 23-Nov-2023 John Baldwin <jhb@FreeBSD.org>

nexus: Use resource_validate_map_request

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D42724


# ecf2106c 22-Nov-2023 John Baldwin <jhb@FreeBSD.org>

arm64/amd64/riscv nexus: Use bus_generic_rl_*

Reviewed by: mhorne, imp
Differential Revision: https://reviews.freebsd.org/D42716


# b2921fdc 11-Nov-2023 Andrew Gallatin <gallatin@FreeBSD.org>

arm64: Implement bus_get_resource and bus_delete_resource.

These devmethods were not defined, leading to the surprising result
of using bus_set_resource(), and then immediately turning around
and ge

arm64: Implement bus_get_resource and bus_delete_resource.

These devmethods were not defined, leading to the surprising result
of using bus_set_resource(), and then immediately turning around
and getting zeros back from bus_get_resource(). These are now
simply passed through to the generic definitions, since there
is no need for them to be arm64 specific.

Note that jhb plans to replace most of the devmethods with
the generic versions.

Suggested by: jhb
Sponsored by: Netflix

show more ...


Revision tags: release/14.0.0
# 685dc743 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 7623cc8f 23-Apr-2023 Mark Johnston <markj@FreeBSD.org>

arm64: Implement bus_describe_intr() for nexus

Prompted by a compiler warning introduced by
e582d4a2b09e ("arm64: nexus code tidy-up").

Reviewed by: mhorne, andrew
MFC after: 1 week
Differential Re

arm64: Implement bus_describe_intr() for nexus

Prompted by a compiler warning introduced by
e582d4a2b09e ("arm64: nexus code tidy-up").

Reviewed by: mhorne, andrew
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D39749

show more ...


Revision tags: release/13.2.0
# e582d4a2 10-Feb-2023 Mitchell Horne <mhorne@FreeBSD.org>

arm64: nexus code tidy-up

Make a pass at the various nexus implementations, fixing some very minor
style issues, obsolete comments, etc.

The method declaration section has become unwieldy in many r

arm64: nexus code tidy-up

Make a pass at the various nexus implementations, fixing some very minor
style issues, obsolete comments, etc.

The method declaration section has become unwieldy in many respects.
Attempt to tame it by:
- Using generated method typedefs
- Grouping methods roughly by category, and then alphabetically.

Reviewed by: jhb
Differential Revision: https://reviews.freebsd.org/D38495

show more ...


# ef9f49a2 20-Mar-2023 Dmitry Mikushin <dmitry@kernelgen.org>

arm64: Adding a missing include file

Adding a missing include file, which provides the definition of
SYSCTL_INT.

Reviewed by: andrew
Differential Revision: https://reviews.freebsd.org/D39149


# f7acb7ed 16-Mar-2023 Andrew Turner <andrew@FreeBSD.org>

Allow forcing non-posted memory on arm64

To allow for debugging after changing the arm64 VM_MEMATTR_DEVICE
memory type add a new set of tunables to tell the kernel to use
non-posted memory.

This ad

Allow forcing non-posted memory on arm64

To allow for debugging after changing the arm64 VM_MEMATTR_DEVICE
memory type add a new set of tunables to tell the kernel to use
non-posted memory.

This adds the following tunables:
- kern.force_nonposted: When set to non-zero the kernel will use
non-posted memory for all device allocations.
- hint.<dev>.<unit>.force_nonposted: As above, however only forces
non-posted memory on the named device.

Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D38944

show more ...


# ae60314c 06-Mar-2023 Andrew Turner <andrew@FreeBSD.org>

Fix the ofw parent check in arm64 nexus

OF_parent returns 0 for no parent. Fix the check in teh arm64
nexus_fdt_activate_resource.

Sponsored by: Arm Ltd


# 5a915294 05-Mar-2023 Andrew Turner <andrew@FreeBSD.org>

Support non-posted MMIO on arm64 with FDT

To allow hardware to work around a broken memory bus where we need to
support the nonposted-mmio flag.

Reviewed by: kevans
Differential Revision: https://r

Support non-posted MMIO on arm64 with FDT

To allow hardware to work around a broken memory bus where we need to
support the nonposted-mmio flag.

Reviewed by: kevans
Differential Revision: https://reviews.freebsd.org/D34333

show more ...


# f9bdaab9 08-Feb-2023 Elliott Mitchell <ehem+freebsd@m5p.com>

ofwbus: remove handling of resources from ofwbus

The architecture nexus should handle allocation and release of memory and
interrupts. This is to ensure that system-wide resources such as these
are

ofwbus: remove handling of resources from ofwbus

The architecture nexus should handle allocation and release of memory and
interrupts. This is to ensure that system-wide resources such as these
are available to all devices, not just children of ofwbus0.

On powerpc this moves the ownership of these resources up one level,
from ofwbus0 to nexus0. Other architectures already have the required
logic in their nexus implementation, so this eliminates the duplication
of resources. An implementation of nexus_adjust_resource() is added for
arm, arm64, and riscv.

As noted by ian@ in the review, resource handling was the main bit of
logic distinguishing ofwbus from simplebus. With some attention to
detail, it should be possible to merge the two in the future.

Co-authored by: mhorne
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D30554

show more ...


Revision tags: release/12.4.0, release/13.1.0
# bb62bc22 09-May-2022 John Baldwin <jhb@FreeBSD.org>

arm64: Remove unused devclass arguments to DRIVER_MODULE.


Revision tags: release/12.3.0
# 17f790f4 07-Oct-2021 Mitchell Horne <mhorne@FreeBSD.org>

arm, arm64, riscv: adjust top-level nexus comment

These platforms don't manage resources for DMA request lines or I/O
ports, this is specific to x86. Remove the references from the comments.

Review

arm, arm64, riscv: adjust top-level nexus comment

These platforms don't manage resources for DMA request lines or I/O
ports, this is specific to x86. Remove the references from the comments.

Reviewed by: imp, jhb
MFC after: 3 days
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D32358

show more ...


# fe382249 10-Apr-2021 Andrew Turner <andrew@FreeBSD.org>

Implement bus_map_resource on arm64

This will allow us to allocate an unmapped memory resource, then
later map it with a specific memory attribute.

This is also needed for virtio with the modern PC

Implement bus_map_resource on arm64

This will allow us to allocate an unmapped memory resource, then
later map it with a specific memory attribute.

This is also needed for virtio with the modern PCI attachment.

Reviewed by: kib (via D29723)
Sponsored by: Innovate UK
Differential Revision: https://reviews.freebsd.org/D29694

show more ...


Revision tags: release/13.0.0, release/12.2.0
# 50cedfed 01-Sep-2020 Mateusz Guzik <mjg@FreeBSD.org>

arm64: clean up empty lines in .c and .h files


1234