History log of /src/sys/kern/subr_devmap.c (Results 1 – 25 of 58)
Revision Date Author Comments
# ebeeeae6 15-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Implement pmap_mapdev with pmap_mapdev_attr

We can now support pmap_mapdev_attr on arm. Switch to use this to
implement pmap_mapdev to reduce duplicate code.

Reviewed by: mhorne, mmel

subr_devmap: Implement pmap_mapdev with pmap_mapdev_attr

We can now support pmap_mapdev_attr on arm. Switch to use this to
implement pmap_mapdev to reduce duplicate code.

Reviewed by: mhorne, mmel
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50309

show more ...


# 66886d9d 15-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Add the function name to KASSERT

These messages are almost identical, other than one has " 2" appended.
Change this to include the function name at the start to make it more
obvious whi

subr_devmap: Add the function name to KASSERT

These messages are almost identical, other than one has " 2" appended.
Change this to include the function name at the start to make it more
obvious which function the KASSERT is from.

Reviewed by: mhorne, emaste
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50308

show more ...


# a5d9ecfa 02-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Reduce the use of the static devmap

We only create the static devmap on arm. Stop building this code on
other architectures.

Reviewed by: mhorne, imp
Sponsored by: Arm Ltd
Differential

subr_devmap: Reduce the use of the static devmap

We only create the static devmap on arm. Stop building this code on
other architectures.

Reviewed by: mhorne, imp
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50016

show more ...


# 789aed31 02-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Make devmap_ptov static

The devmap_ptov and devmap_vtop functions are only used in this file.

Reviewed by: mhorne
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.o

subr_devmap: Make devmap_ptov static

The devmap_ptov and devmap_vtop functions are only used in this file.

Reviewed by: mhorne
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50015

show more ...


# d90e3482 02-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Use the arm L1_S macro

These check if we can should use a superpage to create the static map.
As it is arm specific we can use an arm-specific macro here.

Reviewed by: mhorne
Sponsored

subr_devmap: Use the arm L1_S macro

These check if we can should use a superpage to create the static map.
As it is arm specific we can use an arm-specific macro here.

Reviewed by: mhorne
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50013

show more ...


# 5df74441 04-Jun-2024 Mitchell Horne <mhorne@FreeBSD.org>

devmap: eliminate unused arguments

The optional 'table' pointer is a legacy part of the interface, which
has been replaced by devmap_register_table()/devmap_add_entry(). The few
in-tree callers have

devmap: eliminate unused arguments

The optional 'table' pointer is a legacy part of the interface, which
has been replaced by devmap_register_table()/devmap_add_entry(). The few
in-tree callers have already adapted to this, so it can be removed.

The 'l1pt' argument is already entirely unused within the function.

Reviewed by: andrew, markj
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D45319

show more ...


# e0388a90 30-Mar-2024 Alan Cox <alc@FreeBSD.org>

arm64: enable superpage mappings by pmap_mapdev{,_attr}()

In order for pmap_kenter{,_device}() to create superpage mappings,
either 64 KB or 2 MB, pmap_mapdev{,_attr}() must request appropriately
al

arm64: enable superpage mappings by pmap_mapdev{,_attr}()

In order for pmap_kenter{,_device}() to create superpage mappings,
either 64 KB or 2 MB, pmap_mapdev{,_attr}() must request appropriately
aligned virtual addresses.

Reviewed by: markj
Tested by: gallatin
Differential Revision: https://reviews.freebsd.org/D42737

show more ...


# 685dc743 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

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

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


# 9d4cff78 05-Oct-2022 Andrew Turner <andrew@FreeBSD.org>

Remove pre-armv6 support from devmap

Remove an old code path that was used used by Armv4/5 so is unused now.

Sponsored by: The FreeBSD Foundation


# 7ae99f80 22-Sep-2022 John Baldwin <jhb@FreeBSD.org>

pmap_unmapdev/bios: Accept a pointer instead of a vm_offset_t.

This matches the return type of pmap_mapdev/bios.

Reviewed by: kib, markj
Sponsored by: DARPA
Differential Revision: https://reviews.f

pmap_unmapdev/bios: Accept a pointer instead of a vm_offset_t.

This matches the return type of pmap_mapdev/bios.

Reviewed by: kib, markj
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D36548

show more ...


# 8e9ca137 11-Aug-2022 Andrew Turner <andrew@FreeBSD.org>

Adjust function definition in subr_devmap.c to avoid clang 15 warning

With clang 15, the following -Werror warning is produced:

sys/kern/subr_devmap.c:87:19: error: a function declaration witho

Adjust function definition in subr_devmap.c to avoid clang 15 warning

With clang 15, the following -Werror warning is produced:

sys/kern/subr_devmap.c:87:19: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
devmap_print_table()
^
void

This is because devmap_print_table() and devmap_lastaddr() are declared
with a (void) argument list, but defined with an empty argument list.
Make the definition match the declaration.

Sponsored by: The FreeBSD Foundation

show more ...


# ea8f128c 28-Jul-2022 John Baldwin <jhb@FreeBSD.org>

pmap_mapdev: Consistently use vm_paddr_t for the first argument.

The devmap variants used vm_offset_t for some reason, and a few places
explicitly cast bus addresses to vm_offset_t. (Probably those

pmap_mapdev: Consistently use vm_paddr_t for the first argument.

The devmap variants used vm_offset_t for some reason, and a few places
explicitly cast bus addresses to vm_offset_t. (Probably those casts
along with similar casts for vm_size_t should just be removed and
instead permit the compiler to DTRT.)

Reviewed by: markj
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D35961

show more ...


# c84c5e00 18-Jul-2022 Mitchell Horne <mhorne@FreeBSD.org>

ddb: annotate some commands with DB_CMD_MEMSAFE

This is not completely exhaustive, but covers a large majority of
commands in the tree.

Reviewed by: markj
Sponsored by: Juniper Networks, Inc.
Spons

ddb: annotate some commands with DB_CMD_MEMSAFE

This is not completely exhaustive, but covers a large majority of
commands in the tree.

Reviewed by: markj
Sponsored by: Juniper Networks, Inc.
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D35583

show more ...


# 682c00a6 17-Oct-2021 Jessica Clarke <jrtc27@FreeBSD.org>

riscv: Implement pmap_mapdev_attr

This is needed for LinuxKPI's _ioremap_attr. This reuses the generic
implementation introduced for aarch64, and itself requires implementing
pmap_kenter, which is t

riscv: Implement pmap_mapdev_attr

This is needed for LinuxKPI's _ioremap_attr. This reuses the generic
implementation introduced for aarch64, and itself requires implementing
pmap_kenter, which is trivial to do given riscv currently treats all
mapping attributes the same due to the Svpbmt extension not yet being
ratified and in hardware.

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

show more ...


# 9976b42b 11-Jan-2021 Thomas Skibo <thomas-bsd@skibo.net>

ddb: fix show devmap output on 32-bit arm

The output has been broken since 1b6dd6d772ca. Casting to uintmax_t
before the call to printf is necessary to ensure that 32-bit addresses
are interpreted c

ddb: fix show devmap output on 32-bit arm

The output has been broken since 1b6dd6d772ca. Casting to uintmax_t
before the call to printf is necessary to ensure that 32-bit addresses
are interpreted correctly.

PR: 243236
MFC after: 3 days

show more ...


# 818390ce 13-Jan-2021 Mitchell Horne <mhorne@FreeBSD.org>

arm64: fix early devmap assertion

The purpose of this KASSERT is to ensure that we do not run out of space
in the early devmap. However, the devmap grew beyond its initial size of
2MB in r336519, an

arm64: fix early devmap assertion

The purpose of this KASSERT is to ensure that we do not run out of space
in the early devmap. However, the devmap grew beyond its initial size of
2MB in r336519, and this assertion did not grow with it.

A devmap mapping of a 1080p framebuffer requires 1920x1080 bytes, or
1.977 MB, so it is just barely able to fit without triggering the
assertion, provided no other devices are mapped before it. With the
addition of `options GDB` in GENERIC by bbfa199cbc16, the uart is now
mapped for the purposes of a debug port, before mapping the framebuffer.
The presence of both these conditions pushes the selected virtual
address just below the threshold, triggering the assertion.

To fix this, use the correct size of the devmap, defined by
PMAP_MAPDEV_EARLY_SIZE. Since this code is shared with RISC-V, define
it for that platform as well (although it is a different size).

PR: 25241
Reported by: gbe
MFC after: 3 days
Sponsored by: The FreeBSD Foundation

show more ...


# 6fed89b1 01-Sep-2020 Mateusz Guzik <mjg@FreeBSD.org>

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


# 1b6dd6d7 20-Dec-2019 Philip Paeps <philip@FreeBSD.org>

Print upper 32 bits in devmap table entries

If the devmap entry uses the upper 32 bits they wouldn't be printed in
devmap_dump_table(). This fixes that.

Submitted by: Nicholas O'Brien <nickisobri

Print upper 32 bits in devmap table entries

If the devmap entry uses the upper 32 bits they wouldn't be printed in
devmap_dump_table(). This fixes that.

Submitted by: Nicholas O'Brien <nickisobrien_gmail.com>
Sponsored by: Axiado

show more ...


# 1d954438 15-Oct-2019 Kristof Provost <kp@FreeBSD.org>

Generalize ARM specific comments in devmap

The comments in devmap are very ARM specific, this generalizes them for other
architectures.

Submitted by: Nicholas O'Brien <nickisobrien_gmail.com>
Revie

Generalize ARM specific comments in devmap

The comments in devmap are very ARM specific, this generalizes them for other
architectures.

Submitted by: Nicholas O'Brien <nickisobrien_gmail.com>
Reviewed by: manu, philip
Sponsored by: Axiado
Differential Revision: https://reviews.freebsd.org/D22035

show more ...


# ebeeeae6 15-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Implement pmap_mapdev with pmap_mapdev_attr

We can now support pmap_mapdev_attr on arm. Switch to use this to
implement pmap_mapdev to reduce duplicate code.

Reviewed by: mhorne, mmel

subr_devmap: Implement pmap_mapdev with pmap_mapdev_attr

We can now support pmap_mapdev_attr on arm. Switch to use this to
implement pmap_mapdev to reduce duplicate code.

Reviewed by: mhorne, mmel
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50309

show more ...


# 66886d9d 15-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Add the function name to KASSERT

These messages are almost identical, other than one has " 2" appended.
Change this to include the function name at the start to make it more
obvious whi

subr_devmap: Add the function name to KASSERT

These messages are almost identical, other than one has " 2" appended.
Change this to include the function name at the start to make it more
obvious which function the KASSERT is from.

Reviewed by: mhorne, emaste
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50308

show more ...


# a5d9ecfa 02-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Reduce the use of the static devmap

We only create the static devmap on arm. Stop building this code on
other architectures.

Reviewed by: mhorne, imp
Sponsored by: Arm Ltd
Differential

subr_devmap: Reduce the use of the static devmap

We only create the static devmap on arm. Stop building this code on
other architectures.

Reviewed by: mhorne, imp
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50016

show more ...


# 789aed31 02-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Make devmap_ptov static

The devmap_ptov and devmap_vtop functions are only used in this file.

Reviewed by: mhorne
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.o

subr_devmap: Make devmap_ptov static

The devmap_ptov and devmap_vtop functions are only used in this file.

Reviewed by: mhorne
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50015

show more ...


# d90e3482 02-May-2025 Andrew Turner <andrew@FreeBSD.org>

subr_devmap: Use the arm L1_S macro

These check if we can should use a superpage to create the static map.
As it is arm specific we can use an arm-specific macro here.

Reviewed by: mhorne
Sponsored

subr_devmap: Use the arm L1_S macro

These check if we can should use a superpage to create the static map.
As it is arm specific we can use an arm-specific macro here.

Reviewed by: mhorne
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D50013

show more ...


# 5df74441 04-Jun-2024 Mitchell Horne <mhorne@FreeBSD.org>

devmap: eliminate unused arguments

The optional 'table' pointer is a legacy part of the interface, which
has been replaced by devmap_register_table()/devmap_add_entry(). The few
in-tree callers have

devmap: eliminate unused arguments

The optional 'table' pointer is a legacy part of the interface, which
has been replaced by devmap_register_table()/devmap_add_entry(). The few
in-tree callers have already adapted to this, so it can be removed.

The 'l1pt' argument is already entirely unused within the function.

Reviewed by: andrew, markj
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D45319

show more ...


123