Age | Commit message (Collapse) | Author |
|
The behavior of of_get_mac_address() changed in kernel 5.2, it now
returns an error code and not NULL in case of an error.
This was changed in upstream kernel commit d01f449c008a
("of_net: add NVMEM support to of_get_mac_address")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This removes the removed driver CPTCFG_R8822BE and adds the newly added
drivers CPTCFG_MT7603E, CPTCFG_MT7615E and CPTCFG_RTW88
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
The functions provided by include/net/inet_frag.h are not used by any
code in backports any more and this file causes compile warnings
with kernel 3.16.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
ktime_t was converted from the union to s64 in kernel 4.10.
hrtimer_start() was already converted some time ago in backports, now
mac80211_hwsim uses hrtimer_start() together with the newly added
functions.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
In the current kernel napi_complete_done() returns a bool and this is
now used by the mt76 driver. Try to backport this functionality by
doing the check which makes the function return false already in
backports.
This was added in upstream kernel commit 364b6055738b ("net: busy-poll:
return busypolling status to drivers")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
mac80211_hwsim uses HRTIMER_MODE_ABS_SOFT and HRTIMER_MODE_REL_SOFT now.
These enum entries were added in commit 98ecadd4305d ("hrtimer: Add
clock bases and hrtimer mode for softirq context") in kernel 4.16.
This will execute the timers in hard interrupt context and not in soft
interrupt context like intended.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
The brcmfmac driver now uses new sdio_retune*() functions. They are
added with kernel 5.2-rc6 and are backported to kernel 4.19.56 and
5.1.15
sdio_retune_hold_now() and sdio_retune_release() should work like in the
upstream kernel, the implementation of mmc_retune_release() and
mmc_retune_hold() was copied to backports into these functions. On
kernel < 4.3 backporting this is not so easy, so just use an empty
implementation there.
It is not possible to backport sdio_retune_crc_disable() and
sdio_retune_crc_enable() because they need an additional member in a
structure, just add an empty implementation.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
ipv6_stubs.h was added in kernel commit 3616d08bcbb5 ("ipv6: Move ipv6
stubs to a separate header file").
Most of its content is from include/net/addrconf.h, so include that file
indirectly on older kernel versions.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This extends the backported netlink handling with strict parsing. the
struct gen_ops now supports the validate member and does the validation
inside the backport layer.
This is needed to use backports with kernel 5.2.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
[Hauke: Remove nla_validate_nested()]
[Hauke: Support struct genl_ops on older kernel versions]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
The cordic.c file was moved and the driver from drivers/staging/rtlwifi/
was removed in mainline kernel.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
include/linux/rhashtable.h now uses struct lockdep_map unconditionally
which is fine for upstream as lockdep.h defines an empty lockdep_map
structure if CONFIG_LOCKDEP is not set. However, that is only true
since kernel 4.15 so adding such definition in our lockdep.h to cover
older kernels.
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
|
|
We were not checking if the allocation failed in
backport_genl_register_family(), which could lead to NULL pointer
dereferences later. Fix that.
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
|
|
Include static inline functions that were added by commit
74de6960c99d ("rcu: Provide functions for determining if call_rcu()
has been invoked").
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
[Activate on < 4.20 only]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
smp_acquire__after_ctrl_dep() was introduced in kernel 4.8 in upstream
Linux commit 33ac279677d ("locking/barriers: Introduce
smp_acquire__after_ctrl_dep()") and is used by backports lib-refcount.c
implementation now.
This just adds the default implementation to backports.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
rhashtable_lookup_get_insert_fast() was added in kernel 4.12 in Linux
upstream commit f9fe1c12d12 ("rhashtable: Add
rhashtable_lookup_get_insert_fast") It is now used by mac80211.
For kernel < 4.9 we already backport the complete rhashtable
implementation, so this is only needed for kernels more recent than 4.9.
This is copied from upstreamn Linux kernel.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
Add new macros introduced from v5.1-rc1
23323289b154 netlink: reduce NLA_POLICY_NESTED{,_ARRAY} arguments
v3: Fix v4.20 compilation error
Signed-off-by: AceLan Kao <acelan.kao@canonical.com>
|
|
The iwlwifi driver now needs this function. Backport it.
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
|
|
If we fail to allocate extack, we fall back to the code path
that tries to send an error *with* extack, but that will
access our extack pointer. It also doesn't make sense, so just
return an error back to netlink immediately and let it handle
sending the error message to userspace.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
|
|
The patch that introduces nospec.h was cherry-picked for 4.15 only in
4.15.2, so we need to adjust the ifdefs of our stub.
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
|
|
At least one function, namely ftrace_print_array_seq(), still needs
the ftrace_event.h header file, otherwise sparse may warning that it
is declared as non-static without pre-declaration.
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
|
|
Now that 4.21 became 5.0, we need to update the Makefile accordingly.
Stop looking at 4.19 for the 4.* series and add 5.*.
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
|
|
Enable users to be able to conveniently select the Marvell wifi drivers that
they need.
Signed-off-by: Tamás Szűcs <tszucs@protonmail.ch>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
The name of this configuration option was changed in Linux commit
b7da53cd6cd1 ("qtnfmac_pcie: use single PCIe driver for all platforms").
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
dev_open() got the extra parameter extack in Linux commit 00f54e68924e
("net: core: dev: Add extack argument to dev_open()"), just ignore it on
older kernel versions. This is used by the hostap driver.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This was introduced in Linux commit 58d81d64e06f ("lib: cordic: Move
cordic macros and defines to header file") and is used by the b43 and
brcmsmac driver.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This was introduced in Linux commit 801f87469ee8 ("netlink: add
nl_set_extack_cookie_u64()") and is used by the wireless subsystem.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This was introduced in Linux commit a08f06bb7a07 ("seq_file: Introduce
DEFINE_SHOW_ATTRIBUTE() helper macro" and is used by the cw1200 and the
wil6210 driver.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
These functions are not used by any driver any more, remove them. They
were introduced for the frame vector code which was used by the media
subsystem. They also case some compile problems with kernel 4.4 which
get fixed by just removing this code.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
Add some new wifi drivers to the default configuration.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
The alx, igb and the media driver were removed some time ago, also
remove the default configurations.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This was added in upstream commit 4c96b7dc0d39 ("Add a matching set of
device_ functions for determining mac/phy") and is used by ath10k now.
In the mainline kernel it uses device_property_read_u8_array(), but that
was only introduced in kernel 3.18, use of_property_read_u8_array() only
on all kernel versions where this backport is needed which was added
much earlier.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This was introduced in kernel commit 8c2dd3e4a4b ("mm: rename
__alloc_page_frag to page_frag_alloc and __free_page_frag to
page_frag_free") and commit 44fdffd7050 ("mm: add support for releasing
multiple instances of a page") and is used by the mt76 driver.
Backporting it to kernel older than 4.2 is harder so just do it till
that version.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This was introduced in kernel commit fe896d18789 ("mm: introduce page
reference manipulation functions") and will be used by
__page_frag_cache_drain() in the next commit.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This was added in commit 32751c901728 ("backport: add crypto skcipher
interface"), but all the drivers which need it were deactivated in
commit cdcec8e6128 ("backports: disable things needing LIB80211 unless
SKCIPHER can exist") because it does not compile any more. Remove this
code now completely from the tree.
lib80211 does not use skcipher any more, but directly uses the crpyto
API. since kernel 4.20.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
This copies the pci_alloc_irq_vectors() function from kernel 4.9 and
replaces the __pci_enable_msi{x}_range() calls with calls to
pci_enable_msi{x}_range(), these were backported to kernel versions <
3.14, so no need to handle the older kernels specially here.
This also adds support for MSIx IRQs and adds the PCI_IRQ_* defines.
Fixes: 162a6b312f1b ("add support for pci_alloc_irq_vectors")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Cc: Omer Dagan <omer.dagan@tandemg.com>
|
|
pci_alloc_irq_vectors() needs to be wrapped in CONFIG_PCI and
CONFIG_PCI_MSI definition to avoid a function redefinition compiler
error.
Fixes: 162a6b312f1b ("add support for pci_alloc_irq_vectors")
Signed-off-by: Winnie Chang <winnie.chang@cypress.com>
Signed-off-by: Chi-Hsien Lin <chi-hsien.lin@cypress.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
add support for function in kernels under 4.8
function is a wrapper around 'pci_enable_msi_block' or
'pci_enable_msi_range' depending on the kernel version
the min\max number of interrupts was overridden to always use the
max number of interrupts which seems correct since it was not
supported in the old APIs
Signed-off-by: Omer Dagan <omer.dagan@tandemg.com>
[use GPL expert as everything in backports, remove unused ifdef]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
In the pre_doit and post_doit backports, we set the ops to our
backported version, so genetlink itself will always call it. But then
we don't check if the actual ops are set before calling them, which
causes a call to a NULL pointer. Fix this by checking if the ops are
actually set before calling them.
Fixes: ff6746638cf1 ("backports: genetlink: update completely")
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
Support xz compression in uninstall.
Also use compat.ko instead of mac80211.ko to detect
this, as compat is always compiled and mac80211 may
not be.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
Replace all the different nested versions of generic netlink
backport with a single one, covering from < 3.13 all the way
to the upcoming netlink policy improvements in 4.20.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
New API slated to show up in 4.20.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
Since 4.15 this no longer takes a family argument, so add that
to the backports instead of trying to work around the family
argument having changed type.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
Make all the magic variable argument calls inlines and
rename them so we can override them more easily later.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
This reverts commit 1b481348b4564970e3cfa04023f1cc22ce2b6931.
It actually broke the build to include this, as memneq.c is always
built for kernels < 3.13, and thus we get a duplicate symbol export
if we skip the backport definitions.
Easier than making the build system depend on the strange versions
is to just always use our backported version with symbol rename.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
If we don't include <linux/net.h> then __BACKPORT_NET_GET_RANDOM_ONCE
can never be defined, and we'll never get the compat code. Fix that.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
Ubuntu cherry-picked the patch that added
u64_stat_update_begin_irqsave() in their 4.15 kernel, so we get a
redefinition compilation error if we try to compile against that.
To solve this, check UTS_UBUNTU_RELEASE_ABI and don't define our
backported function if it's 33 or higher.
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
Just clean up the dependency list, skcipher is known to not
work, but we neither backport bluetooth now, nor does current
upstream bluetooth actually need skcipher.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
We can't really backport those, but add them anyway for compilation,
perhaps somebody doesn't want to suspend/resume?
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
With commit 3d6ce86ee794 ("drivers: remove force dma flag from buses")
in kernel 4.18 of_dma_configure() got the extra parameter force_dma.
This is backported by setting the force_dma member which was added in
commit d89e2378a97f ("drivers: flag buses which demand DMA
configuration") in kernel 4.15.
In older kernel versions we just ignore this parameter as the
of_dma_configure() function internally takes care of setting this
correctly.
Since commit 7b07cbefb68d ("iommu: of: Handle IOMMU lookup failure with
deferred probing or error") in kernel 4.12 this function returns int and
not void any more.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|