#
80446fc7 |
| 08-Dec-2023 |
Jean-Sébastien Pédron <dumbbell@FreeBSD.org> |
linuxkpi: Move `struct kobject` code to `linux_kobject.c`
[Why] `linux_compat.c` is already too long. I will need to add `struct kset` in a follow-up commit, so let's move the existing `struct kobje
linuxkpi: Move `struct kobject` code to `linux_kobject.c`
[Why] `linux_compat.c` is already too long. I will need to add `struct kset` in a follow-up commit, so let's move the existing `struct kobject` code to its own file.
Reviewed by: manu Approved by: manu Differential Revision: https://reviews.freebsd.org/D43019
show more ...
|
Revision tags: release/14.0.0 |
|
#
031beb4e |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line sh pattern
Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
|
Revision tags: release/13.2.0, release/12.4.0 |
|
#
514fb387 |
| 23-Sep-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: define LINUXKPI_INCLUDES for module builds as well
While for in-kernel we already have LINUXKPI_INCLUDES in kern.pre.mk for kmod builds we've not had a common define to use leading to vari
LinuxKPI: define LINUXKPI_INCLUDES for module builds as well
While for in-kernel we already have LINUXKPI_INCLUDES in kern.pre.mk for kmod builds we've not had a common define to use leading to various spellings of include paths.
In order for the include list to be expanded more easily in the future, e.g., adding the "dummy" includes (for all) and to harmonize code, duplicate LINUXKPI_INCLUDES to kmod.mk and use it for all module Makefiles.
MFC after: 1 week Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D36683
show more ...
|
#
f697b943 |
| 20-Sep-2022 |
Jake Freeland <jfree@FreeBSD.org> |
linuxkpi: drm-kmod debugfs support
This diff extends LinuxKPI to support simple attribute files in debugfs. These simple attributes are an essential component for compiling drm-kmod with CONFIG_DEBU
linuxkpi: drm-kmod debugfs support
This diff extends LinuxKPI to support simple attribute files in debugfs. These simple attributes are an essential component for compiling drm-kmod with CONFIG_DEBUG_FS enabled. This will allow for easier graphics driver debugging using Intel's igt-gpu-tools.
Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D35883 Sponsored by: Google, Inc. (GSoC 2022)
show more ...
|
Revision tags: release/13.1.0, release/12.3.0 |
|
#
fdc18947 |
| 01-May-2021 |
Tijl Coosemans <tijl@FreeBSD.org> |
linuxkpi: on i386 only use first_msi_irq if apic is in kernel config
|
#
f5a2e7b0 |
| 10-Mar-2022 |
Eugene Grosbein <eugen@FreeBSD.org> |
linuxkpi: fix module build outside of kernel build environment
MFC after: 3 days
|
#
1961a14a |
| 04-Nov-2021 |
Emmanuel Vadot <manu@FreeBSD.org> |
linuxkpi: Add i2c support
Add i2c support to linuxkpi. This is needed by drm-kmod. For every i2c_adapter added by i2c_add_adapter we add a child to the device named "lkpi_iic". This child handle the
linuxkpi: Add i2c support
Add i2c support to linuxkpi. This is needed by drm-kmod. For every i2c_adapter added by i2c_add_adapter we add a child to the device named "lkpi_iic". This child handle the conversion between Linux i2c_msgs to FreeBSD iic_msgs. For every i2c_adapter added by i2c_bit_add_bus we add a child to the device named "lkpi_iicbb". This child handle the conversion between Linux i2c_msgs to FreeBSD iic_msgs. With the help of iic(4), this expose the i2c controller to userspace allowing a user to query DDC information from a monitor. e.g.: i2c -f /dev/iic0 -a 0x28 -c 128 -d r will query the standard EDID from the monitor if plugged.
The bitbang part (lkpi_iicbb) isn't tested at all for now as I don't have compatible hardware (all my hardware have native i2c controller).
Tested on: Intel (SandyBridge, Skylake, ApolloLake) Tested on: AMD (Picasso, Polaris (amd64 and arm64))
MFC after: 1 month Reviewed by: hselasky Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D33053
show more ...
|
#
d1058958 |
| 26-Dec-2021 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: import beginning of a new version of netdevice.h
Import a netdevice update complementing the last remaining bits of the old ifnet derived implementation. Along add a (for now) task based
LinuxKPI: import beginning of a new version of netdevice.h
Import a netdevice update complementing the last remaining bits of the old ifnet derived implementation. Along add a (for now) task based NAPI implementation.
This is the minimal set of chnages which are needed for the initial support of wireless drivers. The NAPI implementation has an option to still switch to "direct dispatch" as it had been used by these drivers before not relying on a deferred context along with some printf tracing. This has been helpful in the last weeks for debugging and will be cleaned once we have had broader testing and are sure this is fine as-is. Should we need a more time-sensitive or load-sensitive response in the future we can always switch to something more sophisticated.
Sponsored by: The FreeBSD Foundation MFC after: 3 days X-Differential Revision: D33075 (abandoned without feedback a while ago)
show more ...
|
#
49ed6e97 |
| 26-Dec-2021 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: add a work-in-progress skbuff implementation
This is a work-in-progress implementation of sk_buff compat code used for wireless drivers only currently. Bring in this version of the code as
LinuxKPI: add a work-in-progress skbuff implementation
This is a work-in-progress implementation of sk_buff compat code used for wireless drivers only currently. Bring in this version of the code as it has proven to be good enough to have packets going for a few months.
The current implementation has several drawbacks including the need for us to copy data between sk_buffs and mbufs. Do not rely on the internals of this implementation. They are highly likely to change as we will improve the integration to FreeBSD mbufs.
Sponsored by: The FreeBSD Foundation MFC after: 3 days
show more ...
|
#
5bb3134a |
| 07-Nov-2021 |
Konstantin Belousov <kib@FreeBSD.org> |
Fix some modules to export more used symbols
and remove non-present symbols that are now reported by kmod_syms.awk.
Reviewed by: emaste Sponsored by: The FreeBSD Foundation MFC after: 1 week Differ
Fix some modules to export more used symbols
and remove non-present symbols that are now reported by kmod_syms.awk.
Reviewed by: emaste Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D32878
show more ...
|
#
66ea3906 |
| 29-Sep-2021 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
LinuxKPI: Remove FreeBSD struct resource from all LKPI headers
except linux/pci.h to avoid conflicts with Linux version. This allows to #define resource in drm-kmod globally and strip some #ifdef-s
LinuxKPI: Remove FreeBSD struct resource from all LKPI headers
except linux/pci.h to avoid conflicts with Linux version. This allows to #define resource in drm-kmod globally and strip some #ifdef-s
Reviewed by: hselasky, manu MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D31673
show more ...
|
#
469884cf |
| 31-Jul-2021 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
LinuxKPI: Make FPU sections thread-safe and use the NOCTX flag.
Reviewed by: kib Submitted by: greg@unrelenting.technology Differential Revision: https://reviews.freebsd.org/D29921 MFC after: 1 week
LinuxKPI: Make FPU sections thread-safe and use the NOCTX flag.
Reviewed by: kib Submitted by: greg@unrelenting.technology Differential Revision: https://reviews.freebsd.org/D29921 MFC after: 1 week Sponsored by: NVIDIA Networking
show more ...
|
Revision tags: release/13.0.0 |
|
#
ebe5cf35 |
| 05-Mar-2021 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Implement basic support for allocating memory from a specific numa node in the LinuxKPI.
Differential Revision: https://reviews.freebsd.org/D29077 Reviewed by: markj@ and kib@ MFC after: 1 week Spon
Implement basic support for allocating memory from a specific numa node in the LinuxKPI.
Differential Revision: https://reviews.freebsd.org/D29077 Reviewed by: markj@ and kib@ MFC after: 1 week Sponsored by: Mellanox Technologies // NVIDIA Networking
show more ...
|
#
fa765ca7 |
| 28-Jan-2021 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: implement devres() framework parts and two examples
This code implements a version of the devres framework found working for various iwlwifi use cases and also providing functions for ttm_
LinuxKPI: implement devres() framework parts and two examples
This code implements a version of the devres framework found working for various iwlwifi use cases and also providing functions for ttm_page_alloc_dma.c from DRM.
Part of the framework replicates the consumed KPI, while others are internal helper functions.
In addition the simple devm_k*malloc() consumers were implemented and kvasprintf() was enhanced to also work for the devm_kasprintf() case. Addmittingly lkpi_devm_kmalloc_release() could be avoided but for the overall understanding of the code and possible memory tracing it may still be helpful.
Further devsres consumer are implemented for iwlwifi but will follow later as the main reason for this change is to sort out overlap with DRM.
Sponsored-by: The FreeBSD Foundation Obtained-from: bz_iwlwifi MFC After: 3 days Reviewed-by: hselasky, manu Differential Revision: https://reviews.freebsd.org/D28189
show more ...
|
#
a6c2507d |
| 28-Jan-2021 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: add firmware loading support
Implement linux firmware KPI compat code. This includes: request_firmware() request_firmware_nowait(), request_firmware_direct(), firmware_request_nowarn(), an
LinuxKPI: add firmware loading support
Implement linux firmware KPI compat code. This includes: request_firmware() request_firmware_nowait(), request_firmware_direct(), firmware_request_nowarn(), and release_firmware().
Given we will try to map requested names from natively ported or full-linuxkpi-using drivers to a firmware(9) auto-loading name format (.ko file name and image name matching), we quieten firmware(9) and print success or failure (unless the _nowarn() version was called) in the linuxkpi implementation. At the moment we try up-to 4 different naming combinations, with path stripped, original name, and requested name with '/' or '.' replaced.
We do not currently defer loading in the "nowait" case.
Sponsored-by: The FreeBSD Foundation Sponsored-by: Rubicon Communications, LLC ("Netgate") (firmware(9) nowarn update from D27413) MFC after: 3 days Reviewed by: kib, manu (looked at older versions) Differential Revision: https://reviews.freebsd.org/D27414
show more ...
|
#
11d62b6f |
| 12-Jan-2021 |
Emmanuel Vadot <manu@FreeBSD.org> |
linuxkpi: add kernel_fpu_begin/kernel_fpu_end
With newer AMD GPUs (>=Navi,Renoir) there is FPU context usage in the amdgpu driver. The `kernel_fpu_begin/end` implementations in drm did not even allo
linuxkpi: add kernel_fpu_begin/kernel_fpu_end
With newer AMD GPUs (>=Navi,Renoir) there is FPU context usage in the amdgpu driver. The `kernel_fpu_begin/end` implementations in drm did not even allow nested begin-end blocks.
Submitted by: Greg V Reviewed By: manu, hselasky Differential Revision: https://reviews.freebsd.org/D28061
show more ...
|
#
2c95fb75 |
| 22-Dec-2020 |
Emmanuel Vadot <manu@FreeBSD.org> |
linuxkpi: Add shrinker support
A driver can register a shrinker that will be called when the kernel wants to free some memory. Add support for that in linuxkpi and call the registered shrinkers when
linuxkpi: Add shrinker support
A driver can register a shrinker that will be called when the kernel wants to free some memory. Add support for that in linuxkpi and call the registered shrinkers when the lowmem event is triggered.
Reviewed by: bz Differential Revision: https://reviews.freebsd.org/D27728
show more ...
|
#
db4df563 |
| 18-Nov-2020 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Add missing header file when building the LinuxKPI module separately.
MFC after: 1 week Sponsored by: Mellanox Technologies // NVIDIA Networking
|
#
dab39c11 |
| 09-Nov-2020 |
Emmanuel Vadot <manu@FreeBSD.org> |
LinuxKPI: Implement ACPI bits required by drm-kmod in base system
It includes:
ACPI_HANDLE() implementation. AC and VIDEO ACPI events notification support. Replacement of hand-rolled GPLed _DSM met
LinuxKPI: Implement ACPI bits required by drm-kmod in base system
It includes:
ACPI_HANDLE() implementation. AC and VIDEO ACPI events notification support. Replacement of hand-rolled GPLed _DSM method evaluation helpers with in-base ones.
Submitted by: wulf Differential Revision: https://reviews.freebsd.org/D26603
show more ...
|
Revision tags: release/12.2.0 |
|
#
a91b408a |
| 02-Oct-2020 |
Emmanuel Vadot <manu@FreeBSD.org> |
linuxkpi: Add dmi_* function
dmi function are used to get smbios values. The DRM subsystem and drivers use it to enabled (or not) quirks.
Reviewed by: hselasky Sponsored by: The FreeBSD Foundation
linuxkpi: Add dmi_* function
dmi function are used to get smbios values. The DRM subsystem and drivers use it to enabled (or not) quirks.
Reviewed by: hselasky Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D26046
show more ...
|
#
e2515283 |
| 27-Aug-2020 |
Glen Barber <gjb@FreeBSD.org> |
MFH
Sponsored by: Rubicon Communications, LLC (netgate.com)
|
#
d96e5996 |
| 27-Aug-2020 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Implement extensible arrays API using the existing radix tree implementation in the LinuxKPI.
Differential Revision: https://reviews.freebsd.org/D25101 Reviewed by: kib @ MFC after: 1 week Sponsored
Implement extensible arrays API using the existing radix tree implementation in the LinuxKPI.
Differential Revision: https://reviews.freebsd.org/D25101 Reviewed by: kib @ MFC after: 1 week Sponsored by: Mellanox Technologies
show more ...
|
Revision tags: release/11.4.0 |
|
#
15fe2513 |
| 20-Mar-2020 |
Konstantin Belousov <kib@FreeBSD.org> |
Introduce LINUXKPI_GENSRCS.
Centralize the list of generated files required by linuxkpi consumers, into the common variable. This way, consumers that use the variable are insulated from possible ch
Introduce LINUXKPI_GENSRCS.
Centralize the list of generated files required by linuxkpi consumers, into the common variable. This way, consumers that use the variable are insulated from possible changes in the list.
Reviewed by: hselasky, imp Sponsored by: Mellanox Technologies MFC after: 1 week Differential revision: https://reviews.freebsd.org/D24137
show more ...
|
#
84b3c454 |
| 18-Mar-2020 |
Konstantin Belousov <kib@FreeBSD.org> |
Add pci_iov_if.h header as a dependency for Linuxkpi consumers.
Sponsored by: Mellanox Technologies MFC after: 2 weeks
|
#
24a22d1d |
| 22-Feb-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge r358179 through r358238.
PR: 244251
|