add release to local version to fix release updates [release 5.10.33-3mamba;Sat May 01 2021]

This commit is contained in:
Silvan Calarco 2024-01-06 01:25:18 +01:00
parent e69bb0ae32
commit 421a6d2838
22 changed files with 16882 additions and 20492 deletions

View File

@ -1,10 +0,0 @@
--- a/drivers/net/atlx/atl1.c 2008-09-29 04:19:40.000000000 +0200
+++ b/drivers/net/atlx/atl1.c 2008-09-29 04:19:47.000000000 +0200
@@ -3019,7 +3019,6 @@
netdev->features = NETIF_F_HW_CSUM;
netdev->features |= NETIF_F_SG;
netdev->features |= (NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX);
- netdev->features |= NETIF_F_TSO;
netdev->features |= NETIF_F_LLTX;
/*

View File

@ -1,21 +0,0 @@
--- kernel-2.6.26mamba.orig/kernel/rcupreempt.c 2008-07-13 23:51:29.000000000 +0200
+++ kernel-2.6.26mamba/kernel/rcupreempt.c 2008-09-15 01:42:19.000000000 +0200
@@ -281,7 +281,7 @@
local_irq_restore(flags);
}
}
-EXPORT_SYMBOL_GPL(__rcu_read_lock);
+EXPORT_SYMBOL(__rcu_read_lock);
void __rcu_read_unlock(void)
{
@@ -351,7 +351,7 @@
local_irq_restore(flags);
}
}
-EXPORT_SYMBOL_GPL(__rcu_read_unlock);
+EXPORT_SYMBOL(__rcu_read_unlock);
/*
* If a global counter flip has occurred since the last time that we

View File

@ -1,11 +0,0 @@
--- arch/x86/mm/tlb.c~ 2009-02-21 19:00:33.000000000 +0100
+++ arch/x86/mm/tlb.c 2009-02-21 19:01:01.000000000 +0100
@@ -268,6 +268,8 @@
preempt_enable();
}
+/* Missing flush_tlb_page error fix */
+EXPORT_SYMBOL(flush_tlb_page);
static void do_flush_tlb_all(void *info)
{

View File

@ -1,33 +0,0 @@
diff --git a/drivers/platform/x86/wmi.c b/drivers/platform/x86/wmi.c
index 21aa70a..d03e30a 100644
--- a/drivers/platform/x86/wmi.c
+++ b/drivers/platform/x86/wmi.c
@@ -299,7 +299,7 @@ u32 method_id, const struct acpi_buffer *in, struct acpi_buffer *out)
acpi_status status;
struct acpi_object_list input;
union acpi_object params[3];
- char method[4] = "WM";
+ char method[5] = "WM";
if (!find_guid(guid_string, &wblock))
return AE_ERROR;
@@ -357,8 +357,8 @@ struct acpi_buffer *out)
acpi_status status, wc_status = AE_ERROR;
struct acpi_object_list input, wc_input;
union acpi_object wc_params[1], wq_params[1];
- char method[4];
- char wc_method[4] = "WC";
+ char method[5];
+ char wc_method[5] = "WC";
if (!guid_string || !out)
return AE_BAD_PARAMETER;
@@ -439,7 +439,7 @@ const struct acpi_buffer *in)
acpi_handle handle;
struct acpi_object_list input;
union acpi_object params[2];
- char method[4] = "WS";
+ char method[5] = "WS";
if (!guid_string || !in)
return AE_BAD_DATA;

View File

@ -1,11 +0,0 @@
--- kernel-2.6.33mamba-ppc.orig/fs/cifs/dns_resolve.h 2010-08-16 22:56:17.470128075 +0200
+++ kernel-2.6.33mamba-ppc/fs/cifs/dns_resolve.h 2010-08-16 22:52:41.522253342 +0200
@@ -23,6 +23,8 @@
#ifndef _DNS_RESOLVE_H
#define _DNS_RESOLVE_H
+#include <linux/module.h>
+
#ifdef __KERNEL__
extern int __init cifs_init_dns_resolver(void);
extern void cifs_exit_dns_resolver(void);

View File

@ -1,11 +0,0 @@
--- a/usr/Kconfig
+++ b/usr/Kconfig
@@ -75,7 +75,7 @@ config RD_LZMA
config RD_LZO
bool "Support initial ramdisks compressed using LZO" if EMBEDDED
default !EMBEDDED
- depends on BLK_DEV_INITRD
+ depends on BLK_DEV_INITRD && HAVE_KERNEL_LZO
select DECOMPRESS_LZO
help
Support loading of a LZO encoded initial ramdisk or cpio buffer

View File

@ -1,37 +0,0 @@
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index 77cfe7a..ace7a3e 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -163,9 +163,11 @@ drivers-$(CONFIG_OPROFILE) += arch/powerpc/oprofile/
# Default to zImage, override when needed
all: zImage
-BOOT_TARGETS = zImage zImage.initrd uImage zImage% dtbImage% treeImage.% cuImage.% simpleImage.%
+# With make 3.82 we cannot mix normal and wildcard targets
+BOOT_TARGETS1 := zImage zImage.initrd uImaged
+BOOT_TARGETS2 := zImage% dtbImage% treeImage.% cuImage.% simpleImage.%
-PHONY += $(BOOT_TARGETS)
+PHONY += $(BOOT_TARGETS1) $(BOOT_TARGETS2)
boot := arch/$(ARCH)/boot
@@ -180,10 +182,16 @@ relocs_check: arch/powerpc/relocs_check.pl vmlinux
zImage: relocs_check
endif
-$(BOOT_TARGETS): vmlinux
+$(BOOT_TARGETS1): vmlinux
+ $(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
+$(BOOT_TARGETS2): vmlinux
+ $(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
+
+
+bootwrapper_install:
$(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
-bootwrapper_install %.dtb:
+%.dtb:
$(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
define archhelp

View File

@ -1,17 +0,0 @@
--- a/include/scsi/scsi.h
+++ b/include/scsi/scsi.h
@@ -149,10 +149,10 @@ struct scsi_cmnd;
/* defined in T10 SCSI Primary Commands-2 (SPC2) */
struct scsi_varlen_cdb_hdr {
- u8 opcode; /* opcode always == VARIABLE_LENGTH_CMD */
- u8 control;
- u8 misc[5];
- u8 additional_cdb_length; /* total cdb length - 8 */
+ __u8 opcode; /* opcode always == VARIABLE_LENGTH_CMD */
+ __u8 control;
+ __u8 misc[5];
+ __u8 additional_cdb_length; /* total cdb length - 8 */
__be16 service_action;
/* service specific data follows */
};

File diff suppressed because it is too large Load Diff

View File

@ -1,71 +0,0 @@
From 5ea0727b163cb5575e36397a12eade68a1f35f24 Mon Sep 17 00:00:00 2001
From: Thomas Garnier <thgarnie@google.com>
Date: Wed, 14 Jun 2017 18:12:01 -0700
Subject: x86/syscalls: Check address limit on user-mode return
Ensure the address limit is a user-mode segment before returning to
user-mode. Otherwise a process can corrupt kernel-mode memory and elevate
privileges [1].
The set_fs function sets the TIF_SETFS flag to force a slow path on
return. In the slow path, the address limit is checked to be USER_DS if
needed.
The addr_limit_user_check function is added as a cross-architecture
function to check the address limit.
[1] https://bugs.chromium.org/p/project-zero/issues/detail?id=990
Signed-off-by: Thomas Garnier <thgarnie@google.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: kernel-hardening@lists.openwall.com
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Miroslav Benes <mbenes@suse.cz>
Cc: Chris Metcalf <cmetcalf@mellanox.com>
Cc: Pratyush Anand <panand@redhat.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Petr Mladek <pmladek@suse.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: Will Drewry <wad@chromium.org>
Cc: linux-api@vger.kernel.org
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Link: http://lkml.kernel.org/r/20170615011203.144108-1-thgarnie@google.com
---
arch/x86/include/asm/uaccess.h | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
(limited to 'arch/x86/include/asm/uaccess.h')
diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h
index a059aac..11433f9 100644
--- a/arch/x86/include/asm/uaccess.h
+++ b/arch/x86/include/asm/uaccess.h
@@ -26,7 +26,12 @@
#define get_ds() (KERNEL_DS)
#define get_fs() (current->thread.addr_limit)
-#define set_fs(x) (current->thread.addr_limit = (x))
+static inline void set_fs(mm_segment_t fs)
+{
+ current->thread.addr_limit = fs;
+ /* On user-mode return, check fs is correct */
+ set_thread_flag(TIF_FSCHECK);
+}
#define segment_eq(a, b) ((a).seg == (b).seg)
--
cgit v1.1

View File

@ -1,377 +0,0 @@
We added acpi_gpiochip_pin_to_gpio_offset() because there was a need to
translate from ACPI GpioIo/GpioInt number to Linux GPIO number in the
Cherryview pinctrl driver. This translation is necessary because
Cherryview has gaps in the pin list and the driver used continuous GPIO
number space in Linux side as follows:
created GPIO range 0->7 ==> INT33FF:03 PIN 0->7
created GPIO range 8->19 ==> INT33FF:03 PIN 15->26
created GPIO range 20->25 ==> INT33FF:03 PIN 30->35
created GPIO range 26->33 ==> INT33FF:03 PIN 45->52
created GPIO range 34->43 ==> INT33FF:03 PIN 60->69
created GPIO range 44->54 ==> INT33FF:03 PIN 75->85
For example when ACPI GpioInt resource refers to GPIO 81 (SDMMC3_CD_B)
we translate from pin 81 to the corresponding Linux GPIO number, which
is 50. This number is then used when the GPIO is accessed through gpiolib.
It turns out, this is not necessary at all. We can just pass 1:1 mapping
between Linux GPIO numbers and pin numbers (including gaps) and the
pinctrl core handles all the details automatically:
created GPIO range 0->7 ==> INT33FF:03 PIN 0->7
created GPIO range 15->26 ==> INT33FF:03 PIN 15->26
created GPIO range 30->35 ==> INT33FF:03 PIN 30->35
created GPIO range 45->52 ==> INT33FF:03 PIN 45->52
created GPIO range 60->69 ==> INT33FF:03 PIN 60->69
created GPIO range 75->85 ==> INT33FF:03 PIN 75->85
Here GPIO 81 is exactly same than the hardware pin 81 (SDMMC3_CD_B).
As an added bonus this simplifies both the ACPI GPIO core code and the
Cherryview pinctrl driver.
Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
---
drivers/gpio/gpiolib-acpi.c | 75 +-----------------------------
drivers/pinctrl/intel/pinctrl-cherryview.c | 59 ++++++++---------------
2 files changed, 22 insertions(+), 112 deletions(-)
diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c
index eb4528c87c0b..b77c544bf7e2 100644
--- a/drivers/gpio/gpiolib-acpi.c
+++ b/drivers/gpio/gpiolib-acpi.c
@@ -58,58 +58,6 @@ static int acpi_gpiochip_find(struct gpio_chip *gc, void *data)
return ACPI_HANDLE(gc->parent) == data;
}
-#ifdef CONFIG_PINCTRL
-/**
- * acpi_gpiochip_pin_to_gpio_offset() - translates ACPI GPIO to Linux GPIO
- * @gdev: GPIO device
- * @pin: ACPI GPIO pin number from GpioIo/GpioInt resource
- *
- * Function takes ACPI GpioIo/GpioInt pin number as a parameter and
- * translates it to a corresponding offset suitable to be passed to a
- * GPIO controller driver.
- *
- * Typically the returned offset is same as @pin, but if the GPIO
- * controller uses pin controller and the mapping is not contiguous the
- * offset might be different.
- */
-static int acpi_gpiochip_pin_to_gpio_offset(struct gpio_device *gdev, int pin)
-{
- struct gpio_pin_range *pin_range;
-
- /* If there are no ranges in this chip, use 1:1 mapping */
- if (list_empty(&gdev->pin_ranges))
- return pin;
-
- list_for_each_entry(pin_range, &gdev->pin_ranges, node) {
- const struct pinctrl_gpio_range *range = &pin_range->range;
- int i;
-
- if (range->pins) {
- for (i = 0; i < range->npins; i++) {
- if (range->pins[i] == pin)
- return range->base + i - gdev->base;
- }
- } else {
- if (pin >= range->pin_base &&
- pin < range->pin_base + range->npins) {
- unsigned gpio_base;
-
- gpio_base = range->base - gdev->base;
- return gpio_base + pin - range->pin_base;
- }
- }
- }
-
- return -EINVAL;
-}
-#else
-static inline int acpi_gpiochip_pin_to_gpio_offset(struct gpio_device *gdev,
- int pin)
-{
- return pin;
-}
-#endif
-
/**
* acpi_get_gpiod() - Translate ACPI GPIO pin to GPIO descriptor usable with GPIO API
* @path: ACPI GPIO controller full path name, (e.g. "\\_SB.GPO1")
@@ -125,7 +73,6 @@ static struct gpio_desc *acpi_get_gpiod(char *path, int pin)
struct gpio_chip *chip;
acpi_handle handle;
acpi_status status;
- int offset;
status = acpi_get_handle(NULL, path, &handle);
if (ACPI_FAILURE(status))
@@ -135,11 +82,7 @@ static struct gpio_desc *acpi_get_gpiod(char *path, int pin)
if (!chip)
return ERR_PTR(-EPROBE_DEFER);
- offset = acpi_gpiochip_pin_to_gpio_offset(chip->gpiodev, pin);
- if (offset < 0)
- return ERR_PTR(offset);
-
- return gpiochip_get_desc(chip, offset);
+ return gpiochip_get_desc(chip, pin);
}
static irqreturn_t acpi_gpio_irq_handler(int irq, void *data)
@@ -216,10 +159,6 @@ static acpi_status acpi_gpiochip_request_interrupt(struct acpi_resource *ares,
if (!handler)
return AE_OK;
- pin = acpi_gpiochip_pin_to_gpio_offset(chip->gpiodev, pin);
- if (pin < 0)
- return AE_BAD_PARAMETER;
-
desc = gpiochip_request_own_desc(chip, pin, "ACPI:Event");
if (IS_ERR(desc)) {
dev_err(chip->parent, "Failed to request GPIO\n");
@@ -852,12 +791,6 @@ acpi_gpio_adr_space_handler(u32 function, acpi_physical_address address,
struct gpio_desc *desc;
bool found;
- pin = acpi_gpiochip_pin_to_gpio_offset(chip->gpiodev, pin);
- if (pin < 0) {
- status = AE_BAD_PARAMETER;
- goto out;
- }
-
mutex_lock(&achip->conn_lock);
found = false;
@@ -990,11 +923,7 @@ static struct gpio_desc *acpi_gpiochip_parse_own_gpio(
if (ret < 0)
return ERR_PTR(ret);
- ret = acpi_gpiochip_pin_to_gpio_offset(chip->gpiodev, gpios[0]);
- if (ret < 0)
- return ERR_PTR(ret);
-
- desc = gpiochip_get_desc(chip, ret);
+ desc = gpiochip_get_desc(chip, gpios[0]);
if (IS_ERR(desc))
return desc;
--- kernel-4.14.7mamba-x86_64/drivers/pinctrl/intel/pinctrl-cherryview.c.orig 2017-12-17 15:08:14.000000000 +0100
+++ kernel-4.14.7mamba-x86_64/drivers/pinctrl/intel/pinctrl-cherryview.c 2017-12-20 00:27:52.151288530 +0100
@@ -131,10 +131,8 @@
* @ngroups: Number of groups
* @functions: All functions in this community
* @nfunctions: Number of functions
- * @ngpios: Number of GPIOs in this community
* @gpio_ranges: An array of GPIO ranges in this community
* @ngpio_ranges: Number of GPIO ranges
- * @ngpios: Total number of GPIOs in this community
* @nirqs: Total number of IRQs this community can generate
*/
struct chv_community {
@@ -147,7 +145,6 @@
size_t nfunctions;
const struct chv_gpio_pinrange *gpio_ranges;
size_t ngpio_ranges;
- size_t ngpios;
size_t nirqs;
acpi_adr_space_type acpi_space_id;
};
@@ -399,7 +396,6 @@
.nfunctions = ARRAY_SIZE(southwest_functions),
.gpio_ranges = southwest_gpio_ranges,
.ngpio_ranges = ARRAY_SIZE(southwest_gpio_ranges),
- .ngpios = ARRAY_SIZE(southwest_pins),
/*
* Southwest community can benerate GPIO interrupts only for the
* first 8 interrupts. The upper half (8-15) can only be used to
@@ -489,7 +485,6 @@
.npins = ARRAY_SIZE(north_pins),
.gpio_ranges = north_gpio_ranges,
.ngpio_ranges = ARRAY_SIZE(north_gpio_ranges),
- .ngpios = ARRAY_SIZE(north_pins),
/*
* North community can benerate GPIO interrupts only for the first
* 8 interrupts. The upper half (8-15) can only be used to trigger
@@ -538,7 +533,6 @@
.npins = ARRAY_SIZE(east_pins),
.gpio_ranges = east_gpio_ranges,
.ngpio_ranges = ARRAY_SIZE(east_gpio_ranges),
- .ngpios = ARRAY_SIZE(east_pins),
.nirqs = 16,
.acpi_space_id = 0x93,
};
@@ -665,7 +659,6 @@
.nfunctions = ARRAY_SIZE(southeast_functions),
.gpio_ranges = southeast_gpio_ranges,
.ngpio_ranges = ARRAY_SIZE(southeast_gpio_ranges),
- .ngpios = ARRAY_SIZE(southeast_pins),
.nirqs = 16,
.acpi_space_id = 0x94,
};
@@ -1253,21 +1246,14 @@
.owner = THIS_MODULE,
};
-static unsigned chv_gpio_offset_to_pin(struct chv_pinctrl *pctrl,
- unsigned offset)
-{
- return pctrl->community->pins[offset].number;
-}
-
static int chv_gpio_get(struct gpio_chip *chip, unsigned offset)
{
struct chv_pinctrl *pctrl = gpiochip_get_data(chip);
- int pin = chv_gpio_offset_to_pin(pctrl, offset);
unsigned long flags;
u32 ctrl0, cfg;
raw_spin_lock_irqsave(&chv_lock, flags);
- ctrl0 = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0));
+ ctrl0 = readl(chv_padreg(pctrl, offset, CHV_PADCTRL0));
raw_spin_unlock_irqrestore(&chv_lock, flags);
cfg = ctrl0 & CHV_PADCTRL0_GPIOCFG_MASK;
@@ -1281,14 +1267,13 @@
static void chv_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
{
struct chv_pinctrl *pctrl = gpiochip_get_data(chip);
- unsigned pin = chv_gpio_offset_to_pin(pctrl, offset);
unsigned long flags;
void __iomem *reg;
u32 ctrl0;
raw_spin_lock_irqsave(&chv_lock, flags);
- reg = chv_padreg(pctrl, pin, CHV_PADCTRL0);
+ reg = chv_padreg(pctrl, offset, CHV_PADCTRL0);
ctrl0 = readl(reg);
if (value)
@@ -1304,12 +1289,11 @@
static int chv_gpio_get_direction(struct gpio_chip *chip, unsigned offset)
{
struct chv_pinctrl *pctrl = gpiochip_get_data(chip);
- unsigned pin = chv_gpio_offset_to_pin(pctrl, offset);
u32 ctrl0, direction;
unsigned long flags;
raw_spin_lock_irqsave(&chv_lock, flags);
- ctrl0 = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0));
+ ctrl0 = readl(chv_padreg(pctrl, offset, CHV_PADCTRL0));
raw_spin_unlock_irqrestore(&chv_lock, flags);
direction = ctrl0 & CHV_PADCTRL0_GPIOCFG_MASK;
@@ -1345,7 +1329,7 @@
{
struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
struct chv_pinctrl *pctrl = gpiochip_get_data(gc);
- int pin = chv_gpio_offset_to_pin(pctrl, irqd_to_hwirq(d));
+ int pin = irqd_to_hwirq(d);
u32 intr_line;
raw_spin_lock(&chv_lock);
@@ -1362,7 +1346,7 @@
{
struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
struct chv_pinctrl *pctrl = gpiochip_get_data(gc);
- int pin = chv_gpio_offset_to_pin(pctrl, irqd_to_hwirq(d));
+ int pin = irqd_to_hwirq(d);
u32 value, intr_line;
unsigned long flags;
@@ -1407,8 +1391,7 @@
if (irqd_get_trigger_type(d) == IRQ_TYPE_NONE) {
struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
struct chv_pinctrl *pctrl = gpiochip_get_data(gc);
- unsigned offset = irqd_to_hwirq(d);
- int pin = chv_gpio_offset_to_pin(pctrl, offset);
+ unsigned pin = irqd_to_hwirq(d);
irq_flow_handler_t handler;
unsigned long flags;
u32 intsel, value;
@@ -1426,7 +1409,7 @@
if (!pctrl->intr_lines[intsel]) {
irq_set_handler_locked(d, handler);
- pctrl->intr_lines[intsel] = offset;
+ pctrl->intr_lines[intsel] = pin;
}
raw_spin_unlock_irqrestore(&chv_lock, flags);
}
@@ -1439,8 +1422,7 @@
{
struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
struct chv_pinctrl *pctrl = gpiochip_get_data(gc);
- unsigned offset = irqd_to_hwirq(d);
- int pin = chv_gpio_offset_to_pin(pctrl, offset);
+ unsigned pin = irqd_to_hwirq(d);
unsigned long flags;
u32 value;
@@ -1486,7 +1468,7 @@
value &= CHV_PADCTRL0_INTSEL_MASK;
value >>= CHV_PADCTRL0_INTSEL_SHIFT;
- pctrl->intr_lines[value] = offset;
+ pctrl->intr_lines[value] = pin;
if (type & IRQ_TYPE_EDGE_BOTH)
irq_set_handler_locked(d, handle_edge_irq);
@@ -1576,12 +1558,12 @@
const struct chv_gpio_pinrange *range;
struct gpio_chip *chip = &pctrl->chip;
bool need_valid_mask = !dmi_check_system(chv_no_valid_mask);
- int ret, i, offset;
- int irq_base;
+ const struct chv_community *community = pctrl->community;
+ int ret, i, irq_base;
*chip = chv_gpio_chip;
- chip->ngpio = pctrl->community->ngpios;
+ chip->ngpio = community->pins[community->npins - 1].number + 1;
chip->label = dev_name(pctrl->dev);
chip->parent = pctrl->dev;
chip->base = -1;
@@ -1593,30 +1575,29 @@
return ret;
}
- for (i = 0, offset = 0; i < pctrl->community->ngpio_ranges; i++) {
- range = &pctrl->community->gpio_ranges[i];
- ret = gpiochip_add_pin_range(chip, dev_name(pctrl->dev), offset,
- range->base, range->npins);
+ for (i = 0; i < community->ngpio_ranges; i++) {
+ range = &community->gpio_ranges[i];
+ ret = gpiochip_add_pin_range(chip, dev_name(pctrl->dev),
+ range->base, range->base,
+ range->npins);
if (ret) {
dev_err(pctrl->dev, "failed to add GPIO pin range\n");
return ret;
}
-
- offset += range->npins;
}
/* Do not add GPIOs that can only generate GPEs to the IRQ domain */
- for (i = 0; i < pctrl->community->npins; i++) {
+ for (i = 0; i < community->npins; i++) {
const struct pinctrl_pin_desc *desc;
u32 intsel;
- desc = &pctrl->community->pins[i];
+ desc = &community->pins[i];
intsel = readl(chv_padreg(pctrl, desc->number, CHV_PADCTRL0));
intsel &= CHV_PADCTRL0_INTSEL_MASK;
intsel >>= CHV_PADCTRL0_INTSEL_SHIFT;
- if (need_valid_mask && intsel >= pctrl->community->nirqs)
+ if (need_valid_mask && intsel >= community->nirqs)
clear_bit(i, chip->irq_valid_mask);
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,199 +0,0 @@
From 1a32e7b57b0b37cab6845093920b4d1ff94d3bf4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Viktor=20J=C3=A4gersk=C3=BCpper?=
<viktor_jaegerskuepper@freenet.de>
Date: Wed, 1 Jul 2020 23:32:28 +0200
Subject: Revert "ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This reverts commit 2bbcaaee1fcb ("ath9k: Fix general protection fault
in ath9k_hif_usb_rx_cb") because the driver gets stuck like this:
[ 5.778803] usb 1-5: Manufacturer: ATHEROS
[ 21.697488] usb 1-5: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested
[ 21.701377] usbcore: registered new interface driver ath9k_htc
[ 22.053705] usb 1-5: ath9k_htc: Transferred FW: ath9k_htc/htc_9271-1.4.0.fw, size: 51008
[ 22.306182] ath9k_htc 1-5:1.0: ath9k_htc: HTC initialized with 33 credits
[ 115.708513] ath9k_htc: Failed to initialize the device
[ 115.708683] usb 1-5: ath9k_htc: USB layer deinitialized
Reported-by: Roman Mamedov <rm@romanrm.net>
Ref: https://bugzilla.kernel.org/show_bug.cgi?id=208251
Fixes: 2bbcaaee1fcb ("ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb")
Tested-by: Viktor Jägersküpper <viktor_jaegerskuepper@freenet.de>
Signed-off-by: Viktor Jägersküpper <viktor_jaegerskuepper@freenet.de>
---
drivers/net/wireless/ath/ath9k/hif_usb.c | 48 ++++++++------------------------
drivers/net/wireless/ath/ath9k/hif_usb.h | 5 ----
2 files changed, 11 insertions(+), 42 deletions(-)
diff --git a/drivers/net/wireless/ath/ath9k/hif_usb.c b/drivers/net/wireless/ath/ath9k/hif_usb.c
index 4ed21dad6a8e..6049d3766c64 100644
--- a/drivers/net/wireless/ath/ath9k/hif_usb.c
+++ b/drivers/net/wireless/ath/ath9k/hif_usb.c
@@ -643,9 +643,9 @@ err:
static void ath9k_hif_usb_rx_cb(struct urb *urb)
{
- struct rx_buf *rx_buf = (struct rx_buf *)urb->context;
- struct hif_device_usb *hif_dev = rx_buf->hif_dev;
- struct sk_buff *skb = rx_buf->skb;
+ struct sk_buff *skb = (struct sk_buff *) urb->context;
+ struct hif_device_usb *hif_dev =
+ usb_get_intfdata(usb_ifnum_to_if(urb->dev, 0));
int ret;
if (!skb)
@@ -685,15 +685,14 @@ resubmit:
return;
free:
kfree_skb(skb);
- kfree(rx_buf);
}
static void ath9k_hif_usb_reg_in_cb(struct urb *urb)
{
- struct rx_buf *rx_buf = (struct rx_buf *)urb->context;
- struct hif_device_usb *hif_dev = rx_buf->hif_dev;
- struct sk_buff *skb = rx_buf->skb;
+ struct sk_buff *skb = (struct sk_buff *) urb->context;
struct sk_buff *nskb;
+ struct hif_device_usb *hif_dev =
+ usb_get_intfdata(usb_ifnum_to_if(urb->dev, 0));
int ret;
if (!skb)
@@ -751,7 +750,6 @@ resubmit:
return;
free:
kfree_skb(skb);
- kfree(rx_buf);
urb->context = NULL;
}
@@ -797,7 +795,7 @@ static int ath9k_hif_usb_alloc_tx_urbs(struct hif_device_usb *hif_dev)
init_usb_anchor(&hif_dev->mgmt_submitted);
for (i = 0; i < MAX_TX_URB_NUM; i++) {
- tx_buf = kzalloc(sizeof(*tx_buf), GFP_KERNEL);
+ tx_buf = kzalloc(sizeof(struct tx_buf), GFP_KERNEL);
if (!tx_buf)
goto err;
@@ -834,9 +832,8 @@ static void ath9k_hif_usb_dealloc_rx_urbs(struct hif_device_usb *hif_dev)
static int ath9k_hif_usb_alloc_rx_urbs(struct hif_device_usb *hif_dev)
{
- struct rx_buf *rx_buf = NULL;
- struct sk_buff *skb = NULL;
struct urb *urb = NULL;
+ struct sk_buff *skb = NULL;
int i, ret;
init_usb_anchor(&hif_dev->rx_submitted);
@@ -844,12 +841,6 @@ static int ath9k_hif_usb_alloc_rx_urbs(struct hif_device_usb *hif_dev)
for (i = 0; i < MAX_RX_URB_NUM; i++) {
- rx_buf = kzalloc(sizeof(*rx_buf), GFP_KERNEL);
- if (!rx_buf) {
- ret = -ENOMEM;
- goto err_rxb;
- }
-
/* Allocate URB */
urb = usb_alloc_urb(0, GFP_KERNEL);
if (urb == NULL) {
@@ -864,14 +855,11 @@ static int ath9k_hif_usb_alloc_rx_urbs(struct hif_device_usb *hif_dev)
goto err_skb;
}
- rx_buf->hif_dev = hif_dev;
- rx_buf->skb = skb;
-
usb_fill_bulk_urb(urb, hif_dev->udev,
usb_rcvbulkpipe(hif_dev->udev,
USB_WLAN_RX_PIPE),
skb->data, MAX_RX_BUF_SIZE,
- ath9k_hif_usb_rx_cb, rx_buf);
+ ath9k_hif_usb_rx_cb, skb);
/* Anchor URB */
usb_anchor_urb(urb, &hif_dev->rx_submitted);
@@ -897,8 +885,6 @@ err_submit:
err_skb:
usb_free_urb(urb);
err_urb:
- kfree(rx_buf);
-err_rxb:
ath9k_hif_usb_dealloc_rx_urbs(hif_dev);
return ret;
}
@@ -910,21 +896,14 @@ static void ath9k_hif_usb_dealloc_reg_in_urbs(struct hif_device_usb *hif_dev)
static int ath9k_hif_usb_alloc_reg_in_urbs(struct hif_device_usb *hif_dev)
{
- struct rx_buf *rx_buf = NULL;
- struct sk_buff *skb = NULL;
struct urb *urb = NULL;
+ struct sk_buff *skb = NULL;
int i, ret;
init_usb_anchor(&hif_dev->reg_in_submitted);
for (i = 0; i < MAX_REG_IN_URB_NUM; i++) {
- rx_buf = kzalloc(sizeof(*rx_buf), GFP_KERNEL);
- if (!rx_buf) {
- ret = -ENOMEM;
- goto err_rxb;
- }
-
/* Allocate URB */
urb = usb_alloc_urb(0, GFP_KERNEL);
if (urb == NULL) {
@@ -939,14 +918,11 @@ static int ath9k_hif_usb_alloc_reg_in_urbs(struct hif_device_usb *hif_dev)
goto err_skb;
}
- rx_buf->hif_dev = hif_dev;
- rx_buf->skb = skb;
-
usb_fill_int_urb(urb, hif_dev->udev,
usb_rcvintpipe(hif_dev->udev,
USB_REG_IN_PIPE),
skb->data, MAX_REG_IN_BUF_SIZE,
- ath9k_hif_usb_reg_in_cb, rx_buf, 1);
+ ath9k_hif_usb_reg_in_cb, skb, 1);
/* Anchor URB */
usb_anchor_urb(urb, &hif_dev->reg_in_submitted);
@@ -972,8 +948,6 @@ err_submit:
err_skb:
usb_free_urb(urb);
err_urb:
- kfree(rx_buf);
-err_rxb:
ath9k_hif_usb_dealloc_reg_in_urbs(hif_dev);
return ret;
}
diff --git a/drivers/net/wireless/ath/ath9k/hif_usb.h b/drivers/net/wireless/ath/ath9k/hif_usb.h
index 5985aa15ca93..a94e7e1c86e9 100644
--- a/drivers/net/wireless/ath/ath9k/hif_usb.h
+++ b/drivers/net/wireless/ath/ath9k/hif_usb.h
@@ -86,11 +86,6 @@ struct tx_buf {
struct list_head list;
};
-struct rx_buf {
- struct sk_buff *skb;
- struct hif_device_usb *hif_dev;
-};
-
#define HIF_USB_TX_STOP BIT(0)
#define HIF_USB_TX_FLUSH BIT(1)
--
cgit v1.2.3-1-gf6bb5

View File

@ -1,71 +0,0 @@
diff --git a/drivers/pwm/Kconfig b/drivers/pwm/Kconfig
index bf01288..cda31ea 100644
--- a/drivers/pwm/Kconfig
+++ b/drivers/pwm/Kconfig
@@ -240,28 +240,22 @@ config PWM_LPC32XX
will be called pwm-lpc32xx.
config PWM_LPSS
- tristate
+ bool
config PWM_LPSS_PCI
- tristate "Intel LPSS PWM PCI driver"
+ bool "Intel LPSS PWM PCI driver"
depends on X86 && PCI
select PWM_LPSS
help
The PCI driver for Intel Low Power Subsystem PWM controller.
- To compile this driver as a module, choose M here: the module
- will be called pwm-lpss-pci.
-
config PWM_LPSS_PLATFORM
- tristate "Intel LPSS PWM platform driver"
+ bool "Intel LPSS PWM platform driver"
depends on X86 && ACPI
select PWM_LPSS
help
The platform driver for Intel Low Power Subsystem PWM controller.
- To compile this driver as a module, choose M here: the module
- will be called pwm-lpss-platform.
-
config PWM_MESON
tristate "Amlogic Meson PWM driver"
depends on ARCH_MESON
diff --git a/drivers/pwm/pwm-lpss.c b/drivers/pwm/pwm-lpss.c
index 72c0bce..b4d8835 100644
--- a/drivers/pwm/pwm-lpss.c
+++ b/drivers/pwm/pwm-lpss.c
@@ -161,6 +161,12 @@ static const struct pwm_ops pwm_lpss_ops = {
.owner = THIS_MODULE,
};
+/* PWM consumed by the Intel GFX */
+static struct pwm_lookup pwm_lpss_lookup[] = {
+ PWM_LOOKUP("pwm-lpss", 0, "0000:00:02.0", "pwm_backlight", 0,
+ PWM_POLARITY_NORMAL),
+};
+
struct pwm_lpss_chip *pwm_lpss_probe(struct device *dev, struct resource *r,
const struct pwm_lpss_boardinfo *info)
{
@@ -193,12 +199,17 @@ struct pwm_lpss_chip *pwm_lpss_probe(struct device *dev, struct resource *r,
return ERR_PTR(ret);
}
+ /* Add lookup table for pwm_backlight */
+ pwm_lpss_lookup[0].provider = dev_name(dev);
+ pwm_add_table(pwm_lpss_lookup, ARRAY_SIZE(pwm_lpss_lookup));
+
return lpwm;
}
EXPORT_SYMBOL_GPL(pwm_lpss_probe);
int pwm_lpss_remove(struct pwm_lpss_chip *lpwm)
{
+ pwm_remove_table(pwm_lpss_lookup, ARRAY_SIZE(pwm_lpss_lookup));
return pwmchip_remove(&lpwm->chip);
}
EXPORT_SYMBOL_GPL(pwm_lpss_remove);

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
# openmamba kernel specfile # openmamba kernel specfile
# Copyright (C) 2004-2020 by Silvan Calarco # Copyright (C) 2004-2021 by Silvan Calarco
# Copyright (C) 2004-2006 by Davide Madrisan # Copyright (C) 2004-2006 by Davide Madrisan
# released under the GPL version 3 license # released under the GPL version 3 license
# #
@ -18,10 +18,6 @@
%define kernel_pl %(echo %version | cut -d. -f3) %define kernel_pl %(echo %version | cut -d. -f3)
%endif %endif
%define USE_DISTCC 0 %define USE_DISTCC 0
%define reiser4_ver 2.6.38
%define xen_patchver 1
%define rt_ver 3.10.6-rt3
%define maj_rt_ver %(echo %rt_ver | cut -d. -f1-2)
%if "%{USE_DISTCC}" == "1" %if "%{USE_DISTCC}" == "1"
%define DISTCC CC="ccache distcc" -j 12 %define DISTCC CC="ccache distcc" -j 12
@ -31,14 +27,27 @@
%if "%{?KERNEL_TARGET}" == "" %if "%{?KERNEL_TARGET}" == ""
%ifarch x86_64 %ifarch x86_64
%define KERNEL_TARGET mamba-x86_64 %define KERNEL_TARGET mamba-x86_64
%else %define localver_append -x86_64
%define KERNEL_TARGET mamba %endif
%ifarch %{ix86}
%define KERNEL_TARGET mamba-64GB
%define localver_append -64GB
%endif
%ifarch arm
%define KERNEL_TARGET mamba-arm
%define localver_append -arm
%endif
%ifarch aarch64
%define KERNEL_TARGET mamba-aarch64
%define localver_append -aarch64
%endif %endif
%endif %endif
# define short kernel target name for Lilo # define short kernel target name for Lilo
%define KERNEL_TARGET_SHORT %{KERNEL_TARGET} %define KERNEL_TARGET_SHORT %{KERNEL_TARGET}
%define KERNEL_LOCALVER -%{release}%{?localver_append}
%define target_cpu %{_target_cpu} %define target_cpu %{_target_cpu}
%define DEPMOD /sbin/depmod %define DEPMOD /sbin/depmod
@ -65,6 +74,11 @@
%endif %endif
%endif %endif
%if "%{_target_cpu}" == "aarch64"
%define KIMAGE arch/arm64/boot/Image.gz
%define target_cpu arm64
%endif
%if "%{_target_cpu}" == "ppc" %if "%{_target_cpu}" == "ppc"
%define KIMAGE vmlinux %define KIMAGE vmlinux
%define target_cpu powerpc %define target_cpu powerpc
@ -74,67 +88,36 @@
%define _use_internal_dependency_generator 1 %define _use_internal_dependency_generator 1
Name: kernel Name: kernel
Version: 5.4.53 Version: 5.10.33
Release: 1mamba Release: 3mamba
Summary: The Linux Kernel, the operating system core itself Summary: The Linux Kernel, the operating system core itself
Group: System/Kernel and Hardware Group: System/Kernel and Hardware
Vendor: openmamba Vendor: openmamba
Distribution: openmamba Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it> Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
#%if "%{?kernel_longterm}" == ""
Source0: https://cdn.kernel.org/pub/linux/kernel/v%{kernel_MAJver}.x/linux-%{kernel_ver}.tar.xz Source0: https://cdn.kernel.org/pub/linux/kernel/v%{kernel_MAJver}.x/linux-%{kernel_ver}.tar.xz
#%if "%{?kernel_pl}" != ""
#Source1: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.xz
#%endif
#%else
#Source0: http://www.kernel.org/pub/linux/kernel/v2.6/longterm/v%{kernel_ver}/linux-%{version}.tar.bz2
#%endif
Source7: %{name}-rt-i586-config
Source9: %{name}-custom-i586-config
Source11: %{name}-%{kernel_majver}-mamba-config Source11: %{name}-%{kernel_majver}-mamba-config
Source12: %{name}-%{kernel_majver}.31-mamba-x86_64-config Source12: %{name}-%{kernel_majver}-mamba-x86_64-config
Source13: %{name}-%{kernel_majver}-mamba-64GB-config Source13: %{name}-%{kernel_majver}-mamba-64GB-config
Source15: %{name}-%{kernel_majver}-mamba-arm-config Source15: %{name}-%{kernel_majver}-mamba-arm-config
Source20: %{name}-%{kernel_majver}-mamba-arm-dove-config Source21: %{name}-%{kernel_majver}-mamba-aarch64-config
Patch0: kernel-2.6.35-430-scsi_header_fix.patch
# Ingo Molnar's RT patch
Patch11: kernel-3.2.1-8139cp.patch Patch11: kernel-3.2.1-8139cp.patch
Patch24: kernel-2.6.35-usbstorage-disable_delay_use.patch Patch24: kernel-2.6.35-usbstorage-disable_delay_use.patch
Patch32: kernel-2.6.26-fglrx_disable_gpl_check.patch
Patch33: kernel-2.6.26-atl1_disable_TSO.patch
Patch36: kernel-2.6.30-fglrx_flush_tlb_page.patch
Patch37: kernel-2.6.30-wmi_fix.patch
#Patch38: http://gentoo-xen-kernel.googlecode.com/files/xen-patches-%{kernel_ver}-%{xen_patchver}.tar.bz2
Patch39: kernel-3.2.1-rtl8139too.patch Patch39: kernel-3.2.1-rtl8139too.patch
Patch40: %{name}-2.6.33-lzo_decompressor_fix.patch
Patch52: %{name}-2.6.33.7-make-3.82.patch
Patch53: %{name}-2.6.33-dns_resolve_include.patch
Patch59: %{name}-2.6.35-vga_dont_ask.patch Patch59: %{name}-2.6.35-vga_dont_ask.patch
Patch77: kernel-baytrail-4.9.9-pwm-lpss.patch
Patch78: kernel-4.14.1-x86-uaccess-static-inline-set_fs.patch
Patch79: kernel-4.14.7-Cherrytrail_ACPI_Drop_nnecessary_ACPI_GPIO_to_Linux_GPIO_translation.patch
# https://dev.openwrt.org/browser/trunk/target/linux/generic/patches-3.12/100-overlayfs.patch?order=name
Patch100: kernel-3.14.2-overlayfs.patch
Patch101: kernel-5.4.53-revert-to-fix-ath9k_htc.patch
URL: http://www.kernel.org URL: http://www.kernel.org
License: GPL License: GPL
## AUTOBUILDREQ-BEGIN ## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel BuildRequires: glibc-devel
BuildRequires: ldconfig
BuildRequires: libelf-devel
BuildRequires: libopenssl-devel BuildRequires: libopenssl-devel
BuildRequires: libperl BuildRequires: libperl
BuildRequires: libyaml-devel BuildRequires: libyaml-devel
BuildRequires: perl-devel BuildRequires: perl-devel
## AUTOBUILDREQ-END ## AUTOBUILDREQ-END
#BuildRequires: /bin/bash /bin/sh
#BuildRequires: module-init-tools >= 3.1
%if "%{USE_DISTCC}" == "1" %if "%{USE_DISTCC}" == "1"
BuildRequires: distcc ccache BuildRequires: distcc ccache
%endif %endif
BuildRequires: bison >= 3.4.1 BuildRequires: bison >= 3.4.1
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%define buildroot %{_tmppath}/%{name}-%{KERNEL_TARGET}-build
%description %description
The Linux Kernel, the operating system core itself. The Linux Kernel, the operating system core itself.
@ -152,21 +135,17 @@ Requires(post):module-init-tools >= 3.1
%if "%{_target_cpu}" != "arm" %if "%{_target_cpu}" != "arm"
Requires(pre): bootloader Requires(pre): bootloader
%endif %endif
# Wireless # Wireless
#Requires: kernelwireless-%{KERNEL_TARGET}-%{kernel_ver}
Provides: kernelwireless = %{version} Provides: kernelwireless = %{version}
Provides: kernelwireless-%{KERNEL_TARGET}-%{kernel_ver} Provides: kernelwireless-%{KERNEL_TARGET}-%{kernel_ver}
Provides: kernel-%{KERNEL_TARGET}-wireless = %{version}-%{release} Provides: kernel-%{KERNEL_TARGET}-wireless = %{?epoch:%epoch:}%{version}-%{release}
Requires: iwlwifi-firmware Requires: iwlwifi-firmware
Requires: crda Requires: crda
# Sound # Sound
#Requires: kernelsound-%{KERNEL_TARGET}-%{kernel_ver}
Provides: kernelsound = %{version} Provides: kernelsound = %{version}
Provides: kernelsound-%{KERNEL_TARGET}-%{kernel_ver} Provides: kernelsound-%{KERNEL_TARGET}-%{kernel_ver}
Provides: kernel-%{KERNEL_TARGET}-sound = %{version}-%{release} Provides: kernel-%{KERNEL_TARGET}-sound = %{?epoch:%epoch:}%{version}-%{release}
# Firmware
Requires: linux-firmware Requires: linux-firmware
Requires: alsa-firmware Requires: alsa-firmware
Requires: alsa-sof-firmware Requires: alsa-sof-firmware
@ -178,22 +157,10 @@ The kernel package contains the Linux kernel (%{KIMAGE_DEST}), the operating sys
The kernel handles the basic functions of the operating system: memory allocation, process allocation, device input and output, etc. The kernel handles the basic functions of the operating system: memory allocation, process allocation, device input and output, etc.
This kernel was build for %{_target_cpu} architecture and the following target: %{?KERNEL_TARGET}. This kernel was build for %{_target_cpu} architecture and the following target: %{?KERNEL_TARGET}.
%package %{KERNEL_TARGET}-source
Group: Development/Kernel
Summary: The source code for the Linux kernel
Requires: kernel-%{KERNEL_TARGET}-headers == %{version}-%{release}
Provides: kernelsource = %{version}
Obsoletes: kernel-alsa-devel
%description %{KERNEL_TARGET}-source
The kernel-source package contains the source code files for the Linux kernel.
The source files can be used to build a custom kernel that is better tuned to your particular hardware, if you are so inclined (and you know what you're doing).
This kernel sources are configured for %{TARGET_CPU} architecture and the following target: %{?KERNEL_TARGET}.
%package %{KERNEL_TARGET}-headers %package %{KERNEL_TARGET}-headers
Group: Development/Kernel Group: Development/Kernel
Summary: Headers, scripts, configuration and Makefile for the linux kernel Summary: Headers, scripts, configuration and Makefile for the linux kernel
Requires: kernel-%{KERNEL_TARGET} == %{version}-%{release} Requires: kernel-%{KERNEL_TARGET} = %{version}-%{release}
Requires(post): dkms >= 2.8.3-2mamba Requires(post): dkms >= 2.8.3-2mamba
Provides: kernelheaders = %{version} Provides: kernelheaders = %{version}
@ -211,16 +178,6 @@ Provides: kernelsanitisedheaders = %{version}
Sanitised kernel headers used for glibc build. Sanitised kernel headers used for glibc build.
This kernel sanitised headers are configured for %{TARGET_CPU} architecture and the following target: %{?KERNEL_TARGET}. This kernel sanitised headers are configured for %{TARGET_CPU} architecture and the following target: %{?KERNEL_TARGET}.
%package %{KERNEL_TARGET}-firmware
Group: System/Kernel and Hardware
Summary: Firmware files used by the Linux Kernel
Provides: kernelfirmware = %{version}
Requires: kernel-%{KERNEL_TARGET} == %{version}-%{release}
Provides: linux_firmware
%description %{KERNEL_TARGET}-firmware
Firmware files used by the Linux Kernel.
%prep %prep
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" [ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
@ -266,98 +223,48 @@ rm -r linux-%{version}
make mrproper make mrproper
# usbstorage disable delay_use patch (disabled since kernel 2.6.35 because patched from 5 to 1 sec instead of 5 to 0)
%patch24 -p1
# rtl_8139too patch
%patch39 -p1
%patch59 -p1
# Setting version
scripts/setlocalversion --save-scmversion
#___EOF
# create build dirs for each kernel # create build dirs for each kernel
# and copy proper configuration # and copy proper configuration
%if %{_target_cpu} == i586 %if "%{_target_cpu}" == "i586"
case %{?KERNEL_TARGET} in case %{?KERNEL_TARGET} in
mamba) kernel_cfg=%{SOURCE11} mamba) kernel_cfg=%{SOURCE11}
;; ;;
mamba-64GB) kernel_cfg=%{SOURCE13} mamba-64GB) kernel_cfg=%{SOURCE13}
;; ;;
custom) kernel_cfg=%{SOURCE9}
;;
mamba-rt) kernel_cfg=%{SOURCE17}
# add RT patches
xz -cd %{PATCH1} | patch -p1
rm -f localversion-rt
;;
mamba-64GB-rt) kernel_cfg=%{SOURCE16}
# add RT patches
xz -cd %{PATCH1} | patch -p1
rm -f localversion-rt
;;
esac esac
%endif %endif
%if %{_target_cpu} == x86_64 %if "%{_target_cpu}" == "x86_64"
case %{?KERNEL_TARGET} in case %{?KERNEL_TARGET} in
mamba-x86_64) kernel_cfg=%{SOURCE12} mamba-x86_64) kernel_cfg=%{SOURCE12}
;; ;;
mamba-x86_64-rt) kernel_cfg=%{SOURCE19}
# add RT patches
xz -cd %{PATCH1} | patch -p1
rm -f localversion-rt
;;
mamba-xen) kernel_cfg=%{SOURCE14}
# mkdir patches
# cd patches
# tar xjf %{PATCH38}
# cd ..
# for f in patches/*.patch1; do
# echo "Applying patch $f"
# patch -p1 < $f
# done
# rm -rf patches
;;
esac esac
%endif %endif
%if %{_target_cpu} == arm %if "%{_target_cpu}" == "arm"
case %{?KERNEL_TARGET} in case %{?KERNEL_TARGET} in
mamba-arm) kernel_cfg=%{SOURCE15} ;; mamba-arm) kernel_cfg=%{SOURCE15} ;;
mamba-arm-kirkwood) kernel_cfg=%{SOURCE18} ;; mamba-arm-kirkwood) kernel_cfg=%{SOURCE18} ;;
mamba-arm-dove) kernel_cfg=%{SOURCE20} ;; mamba-arm-dove) kernel_cfg=%{SOURCE20} ;;
esac esac
## apply arm copypage gcc4 patch
# patch -p1 < %{PATCH50}
%endif %endif
%if %{_target_cpu} == ppc %if "%{_target_cpu}" == "aarch64"
case %{?KERNEL_TARGET} in case %{?KERNEL_TARGET} in
mamba-ppc) kernel_cfg=%{SOURCE8} mamba-aarch64) kernel_cfg=%{SOURCE21} ;;
# patch -p1 < %{PATCH29}
# patch -p1 < %{PATCH30}
;;
*) echo "Kernel Target %{?KERNEL_TARGET} not supported on ppc; aborting."
exit 1
;;
esac esac
%endif %endif
cp $kernel_cfg ./.config cp $kernel_cfg ./.config
# 8139cp patch #___EOF
#%patch11 -p1 echo "%{KERNEL_LOCALVER}" > localversion.20-pkgname
# usbstorage disable delay_use patch (disabled since kernel 2.6.35 because patched from 5 to 1 sec instead of 5 to 0)
%patch24 -p1
# FIXME: this patch disable GPL check on __rcu_read_lock and __rcu_read_unlock
# for use with proprietary ATI fglrx drivers
#%patch32 -p1
# reiser4 support patch
# export flushtlb_page symbol (for fglrx driver)
#%patch36 -p0
## fixes a kernel panic with wmi when stack protector is enabled
#%patch37 -p1
# rtl_8139too patch
%patch39 -p1
# fix mpc52xx_gpt.c build (powerpc)
#% patch51 -p1
#%patch53 -p1
%patch59 -p1
#%patch77 -p1
#%patch78 -p1 -R
#%patch79 -p1
#%patch101 -p1 -R
# Setting version
scripts/setlocalversion --save-scmversion
echo "%{?KERNEL_TARGET}" > localversion.20-pkgname
%build %build
#:<< ___EOF #:<< ___EOF
@ -367,9 +274,6 @@ echo "%{?KERNEL_TARGET}" > localversion.20-pkgname
sed -i 's@/usr/bin/env@/bin/env@' ./arch/ia64/scripts/unwcheck.py sed -i 's@/usr/bin/env@/bin/env@' ./arch/ia64/scripts/unwcheck.py
ARCH=%{target_cpu} make oldconfig ARCH=%{target_cpu} make oldconfig
#cp Makefile Makefile.orig
#sed -i "s/\(EXTRAVERSION =\).*/\1 %{?KERNEL_TARGET}/" Makefile
make -s kernelrelease > version make -s kernelrelease > version
PATH=%{_bindir}:$PATH \ PATH=%{_bindir}:$PATH \
@ -404,27 +308,31 @@ install -d %{buildroot}{/usr/src/,/boot,/lib/modules}
ARCH=%{target_cpu} make \ ARCH=%{target_cpu} make \
modules_install INSTALL_MOD_PATH=%{buildroot} INSTALL_MOD_STRIP=1 modules_install INSTALL_MOD_PATH=%{buildroot} INSTALL_MOD_STRIP=1
install -m0644 modules.builtin %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/ install -m0644 modules.builtin %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/
install -m0644 modules.order %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/ install -m0644 modules.order %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/
(cd %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_TARGET} (cd %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}
rm -f build && ln -sf /usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET} build ) rm -f build && ln -sf /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER} build )
# clean modules files created by depmod # clean modules files created by depmod
rm -f %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/modules.{alias,alias.bin,ccwmap,dep,dep.bin,devname,ieee1394map} rm -f %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/modules.{alias,alias.bin,ccwmap,dep,dep.bin,devname,ieee1394map}
rm -f %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/modules.{inputmap,isapnpmap,ofmap,pcimap,seriomap,softdep} rm -f %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/modules.{inputmap,isapnpmap,ofmap,pcimap,seriomap,softdep}
rm -f %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/modules.{symbols,symbols.bin,usbmap} rm -f %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/modules.{symbols,symbols.bin,usbmap}
# #
# install boot files # install boot files
# #
cp %{KIMAGE} %{buildroot}/boot/%{KIMAGE_DEST}-%{kernel_ver}%{?KERNEL_TARGET} cp %{KIMAGE} %{buildroot}/boot/%{KIMAGE_DEST}-%{kernel_ver}%{?KERNEL_LOCALVER}
# install dts files
%ifarch aarch64
cp -a arch/%{target_cpu}/boot/dts %{buildroot}/boot/
%endif
#%if %{_target_cpu} == arm #%if %{_target_cpu} == arm
#cp arch/arm/boot/uImage %{buildroot}/boot/uImage-%{kernel_ver}%{?KERNEL_TARGET} #cp arch/arm/boot/uImage %{buildroot}/boot/uImage-%{kernel_ver}%{?KERNEL_LOCALVER}
#%endif #%endif
cp System.map %{buildroot}/boot/System.map-%{kernel_ver}%{?KERNEL_TARGET} cp System.map %{buildroot}/boot/System.map-%{kernel_ver}%{?KERNEL_LOCALVER}
# #
# install sanitised headers used by glibc # install sanitised headers used by glibc
@ -432,7 +340,7 @@ cp System.map %{buildroot}/boot/System.map-%{kernel_ver}%{?KERNEL_TARGET}
ARCH=%{target_cpu} make headers_install \ ARCH=%{target_cpu} make headers_install \
HOSTCC=%{_build}-gcc \ HOSTCC=%{_build}-gcc \
CROSS_COMPILE=%{_target_platform}- \ CROSS_COMPILE=%{_target_platform}- \
INSTALL_HDR_PATH=%{buildroot}%{_prefix}/src/linux-%{kernel_ver}%{KERNEL_TARGET}/usr INSTALL_HDR_PATH=%{buildroot}%{_prefix}/src/linux-%{kernel_ver}%{KERNEL_LOCALVER}/usr
# #
# install kernel headers # install kernel headers
@ -441,10 +349,11 @@ ARCH=%{target_cpu} make headers_install \
case %{_target_cpu} in case %{_target_cpu} in
i586|x86_64) headers_arch="x86" ;; i586|x86_64) headers_arch="x86" ;;
arm) headers_arch="arm" ;; arm) headers_arch="arm" ;;
aarch64) headers_arch="arm64" ;;
ppc) headers_arch="powerpc" ;; ppc) headers_arch="powerpc" ;;
esac esac
build_dir=%{buildroot}%{_prefix}/src/linux-%{kernel_ver}%{KERNEL_TARGET} build_dir=%{buildroot}%{_prefix}/src/linux-%{kernel_ver}%{KERNEL_LOCALVER}
install -Dt ${build_dir} -m644 .config Makefile Module.symvers System.map localversion.* version install -Dt ${build_dir} -m644 .config Makefile Module.symvers System.map localversion.* version
install -Dt ${build_dir}/kernel -m644 kernel/Makefile install -Dt ${build_dir}/kernel -m644 kernel/Makefile
@ -467,7 +376,9 @@ cp -t ${build_dir}/tools -a tools/include
cp -t ${build_dir}/arch/${headers_arch} -a arch/${headers_arch}/include cp -t ${build_dir}/arch/${headers_arch} -a arch/${headers_arch}/include
install -Dt ${build_dir}/arch/${headers_arch}/kernel -m644 arch/${headers_arch}/kernel/asm-offsets.s install -Dt ${build_dir}/arch/${headers_arch}/kernel -m644 arch/${headers_arch}/kernel/asm-offsets.s
%ifnarch aarch64
cp -r arch/${headers_arch}/tools ${build_dir}/arch/${headers_arch} cp -r arch/${headers_arch}/tools ${build_dir}/arch/${headers_arch}
%endif
# install Kconfig files # install Kconfig files
find . -name 'Kconfig*' -exec install -Dm644 {} ${build_dir}/{} \; find . -name 'Kconfig*' -exec install -Dm644 {} ${build_dir}/{} \;
@ -489,7 +400,7 @@ find ${build_dir} -type f -name '*.o' -printf 'Removing %%P\n' -delete
#strip -v ${build_dir}/vmlinux #strip -v ${build_dir}/vmlinux
# Remove sources link # Remove sources link
rm -f %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/source rm -f %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/source
## Remove Kconfig in Documentation ## Remove Kconfig in Documentation
#rm -r ${build_dir}/Documentation #rm -r ${build_dir}/Documentation
@ -497,36 +408,18 @@ rm -f %{buildroot}/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/source
# Do not package cross-platform host tools # Do not package cross-platform host tools
if [ "%{_build}" != "%{_target_platform}" ]; then if [ "%{_build}" != "%{_target_platform}" ]; then
for f in asn1_compiler conmakehash extract-cert kallsyms sortextable; do for f in asn1_compiler conmakehash extract-cert kallsyms sortextable; do
rm -f %{buildroot}/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/scripts/$f rm -f %{buildroot}/usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/scripts/$f
done done
fi fi
%clean %clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" [ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%pre %{?KERNEL_TARGET}
if [ $1 -gt 1 ]; then
# update or downgrade
%if "%{_target_cpu}" == "i586"
[ -x /sbin/lilo-config ] &&
/sbin/lilo-config -q --keep-default --del "openmamba-%{?KERNEL_TARGET_SHORT}"
%endif
%if "%{_target_cpu}" == "x86_64"
[ -x /sbin/lilo-config ] &&
/sbin/lilo-config -q --keep-default --del "openmamba-%{?KERNEL_TARGET_SHORT}"
%endif
%if "%{_target_cpu}" == "ppc"
/usr/sbin/ybin
%endif
:
fi
exit 0
%postun %{?KERNEL_TARGET} %postun %{?KERNEL_TARGET}
# erase this package # erase this package
if [ $1 -eq 0 ]; then if [ $1 -eq 0 ]; then
[ -f /boot/%{KIMAGE_DEST}-%{kernel_ver}%{?KERNEL_TARGET} ] || [ -f /boot/%{KIMAGE_DEST}-%{kernel_ver}%{?KERNEL_LOCALVER} ] ||
rm -f /boot/initramfs-%{kernel_ver}%{?KERNEL_TARGET}.img rm -f /boot/initramfs-%{kernel_ver}%{?KERNEL_LOCALVER}.img
fi fi
exit 0 exit 0
@ -550,16 +443,16 @@ for f in /usr/src/linux-*; do
done done
# new install or upgrade # new install or upgrade
/sbin/depmod -a -F /boot/System.map-%{kernel_ver}%{?KERNEL_TARGET} \ /sbin/depmod -a -F /boot/System.map-%{kernel_ver}%{?KERNEL_LOCALVER} \
%{kernel_ver}%{?KERNEL_TARGET} &>/dev/null %{kernel_ver}%{?KERNEL_LOCALVER} &>/dev/null
# create local system initramfs # create local system initramfs
/usr/sbin/mkinitrd -f /boot/initramfs-%{kernel_ver}%{?KERNEL_TARGET}.img %{kernel_ver}%{?KERNEL_TARGET} /usr/sbin/mkinitrd -f /boot/initramfs-%{kernel_ver}%{?KERNEL_LOCALVER}.img %{kernel_ver}%{?KERNEL_LOCALVER}
# create system-wide "failsafe" initramfs # create system-wide "failsafe" initramfs
/usr/sbin/dracut -f --filesystems "ext3 squashfs isofs reiserfs ext4" \ /usr/sbin/dracut -f --filesystems "ext3 squashfs isofs reiserfs ext4" \
--nomdadmconf --nolvmconf -k /lib/modules/%{kernel_ver}%{?KERNEL_TARGET} \ --nomdadmconf --nolvmconf -k /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER} \
/boot/initramfs-%{kernel_ver}%{?KERNEL_TARGET}-failsafe.img %{kernel_ver}%{?KERNEL_TARGET} /boot/initramfs-%{kernel_ver}%{?KERNEL_LOCALVER}-failsafe.img %{kernel_ver}%{?KERNEL_LOCALVER}
# all done, now ring grub-update # all done, now ring grub-update
%if "%{_target_cpu}" == "i586" %if "%{_target_cpu}" == "i586"
@ -588,122 +481,151 @@ exit 0
%post %{KERNEL_TARGET}-headers %post %{KERNEL_TARGET}-headers
# touch file so it results up-to-date on make # touch file so it results up-to-date on make
if [ $1 -ge 1 ]; then if [ $1 -ge 1 ]; then
touch %{_prefix}/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/include/config/MARKER touch %{_prefix}/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/include/config/MARKER
[ -x /usr/sbin/dkms ] && dkms autoinstall -q --kernelver %{kernel_ver}%{?KERNEL_TARGET} || true [ -x /usr/sbin/dkms ] && dkms autoinstall -q --kernelver %{kernel_ver}%{?KERNEL_LOCALVER} || true
ln -snf %{_prefix}/src/linux-%{kernel_ver}%{?KERNEL_TARGET} %{_prefix}/src/linux-%{?KERNEL_TARGET} ln -snf %{_prefix}/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER} %{_prefix}/src/linux-%{?KERNEL_LOCALVER}
fi fi
exit 0 exit 0
%post %{KERNEL_TARGET}-headers-sanitised %post %{KERNEL_TARGET}-headers-sanitised
if [ $1 -ge 1 ]; then if [ $1 -ge 1 ]; then
ln -snf %{_prefix}/src/linux-%{kernel_ver}%{?KERNEL_TARGET} %{_prefix}/src/linux-%{?KERNEL_TARGET} ln -snf %{_prefix}/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER} %{_prefix}/src/linux-%{?KERNEL_LOCALVER}
fi fi
exit 0 exit 0
%files %{?KERNEL_TARGET} %files %{?KERNEL_TARGET}
%defattr (-, root, root) %defattr (-, root, root)
/boot/System.map-%{kernel_ver}%{?KERNEL_TARGET} /boot/System.map-%{kernel_ver}%{?KERNEL_LOCALVER}
/boot/%{KIMAGE_DEST}-%{kernel_ver}%{?KERNEL_TARGET} /boot/%{KIMAGE_DEST}-%{kernel_ver}%{?KERNEL_LOCALVER}
%ifarch aarch64
%dir /boot/dts
/boot/dts/*
%endif
#%if %{_target_cpu} == arm #%if %{_target_cpu} == arm
#/boot/uImage-%{kernel_ver}%{?KERNEL_TARGET} #/boot/uImage-%{kernel_ver}%{?KERNEL_LOCALVER}
#%endif #%endif
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET} %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/modules.builtin /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/modules.builtin
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/modules.builtin.alias.bin /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/modules.builtin.alias.bin
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/modules.builtin.bin /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/modules.builtin.bin
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/modules.builtin.modinfo /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/modules.builtin.modinfo
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/modules.order /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/modules.order
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/arch /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/arch
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/block %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/block
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/block/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/block/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/crypto %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/crypto
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/crypto/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/crypto/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/drivers %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/drivers
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/drivers/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/drivers/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/fs %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/fs
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/fs/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/fs/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/kernel %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/kernel
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/kernel/*.ko /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/kernel/*.ko
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/kernel/locking %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/kernel/locking
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/kernel/locking/*.ko /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/kernel/locking/*.ko
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/kernel/rcu %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/kernel/rcu
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/kernel/rcu/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/kernel/rcu/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/kernel/time %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/kernel/time
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/kernel/time/*.ko /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/kernel/time/*.ko
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/lib %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/lib
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/lib/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/lib/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/mm %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/mm
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/mm/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/mm/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/net %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/net
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/net/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/net/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/security %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/security
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/security/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/security/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/sound %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/sound
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/sound/* /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/sound/*
%dir /lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/virt %ifnarch aarch64
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/kernel/virt/* %dir /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/virt
/lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/kernel/virt/*
%endif
%doc COPYING CREDITS MAINTAINERS %doc COPYING CREDITS MAINTAINERS
%files %{KERNEL_TARGET}-headers-sanitised %files %{KERNEL_TARGET}-headers-sanitised
%defattr(-,root,root) %defattr(-,root,root)
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/usr/include /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/usr/include
%files %{KERNEL_TARGET}-headers %files %{KERNEL_TARGET}-headers
%defattr(-,root,root) %defattr(-,root,root)
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/localversion.20-pkgname /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/localversion.20-pkgname
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/Documentation /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/Documentation
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/Makefile /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/Makefile
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/Module.symvers /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/Module.symvers
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/System.map /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/System.map
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/.config /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/.config
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/scripts /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/scripts
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/version /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/version
#/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/vmlinux #/usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/vmlinux
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/Kconfig /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/Kconfig
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/arch /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/arch
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/block /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/block
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/certs /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/certs
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/crypto /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/crypto
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/drivers /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/drivers
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/fs /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/fs
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/kernel /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/kernel
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/include /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/include
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/init /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/init
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/lib /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/lib
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/mm /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/mm
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/net /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/net
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/samples /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/samples
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/security /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/security
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/sound /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/sound
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/tools /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/tools
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/virt /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/virt
/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/usr /usr/src/linux-%{kernel_ver}%{?KERNEL_LOCALVER}/usr
/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/build /lib/modules/%{kernel_ver}%{?KERNEL_LOCALVER}/build
#%files %{?KERNEL_TARGET}-firmware
#%defattr (-, root, root)
#/lib/firmware/*
#%files %{KERNEL_TARGET}-source
#%defattr(-,root,root)
#/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/Kbuild
##/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/usr/gen_initramfs_list.sh
##/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/usr/gen_init_cpio.c
##/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/usr/initramfs_data.S
##/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/usr/Makefile
##/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/usr/.gitignore
##/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/tools
##/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/.missing-syscalls.d
#/lib/modules/%{kernel_ver}%{?KERNEL_TARGET}/source
#%if "%{with_full_source}" == "1"
#/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/block
#/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/firmware
#/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/samples
#/usr/src/linux-%{kernel_ver}%{?KERNEL_TARGET}/virt
#%endif
%changelog %changelog
* Sat May 01 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 5.10.33-3mamba
- add release to local version to fix release updates
* Fri Apr 30 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 5.10.33-2mamba
- (re)enable NVS 4.1 and 4.2
* Thu Apr 29 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 5.10.33-1mamba
- update to 5.10.33
* Thu Mar 04 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 5.10.19-1mamba
- update to 5.10.19
* Wed Oct 07 2020 Automatic Build System <autodist@mambasoft.it> 5.8.14-1mamba
- automatic version update by autodist
* Fri Oct 02 2020 Automatic Build System <autodist@mambasoft.it> 5.8.13-1mamba
- automatic version update by autodist
* Sat Sep 26 2020 Automatic Build System <autodist@mambasoft.it> 5.8.12-1mamba
- automatic version update by autodist
* Wed Sep 23 2020 Automatic Build System <autodist@mambasoft.it> 5.8.11-1mamba
- automatic version update by autodist
* Thu Sep 17 2020 Automatic Build System <autodist@mambasoft.it> 5.8.10-1mamba
- automatic version update by autodist
* Sat Sep 12 2020 Automatic Build System <autodist@mambasoft.it> 5.8.9-1mamba
- automatic version update by autodist
* Thu Sep 10 2020 Automatic Build System <autodist@mambasoft.it> 5.8.8-1mamba
- automatic version update by autodist
* Sun Sep 06 2020 Automatic Build System <autodist@mambasoft.it> 5.8.7-1mamba
- automatic version update by autodist
* Sat Aug 01 2020 Automatic Build System <autodist@mambasoft.it> 5.7.12-1mamba
- automatic version update by autodist
* Thu Jul 30 2020 Automatic Build System <autodist@mambasoft.it> 5.7.11-1mamba
- automatic version update by autodist
* Mon Jul 27 2020 Silvan Calarco <silvan.calarco@mambasoft.it> 5.7.10-1mamba
- update to 5.7.10
* Thu Jul 23 2020 Silvan Calarco <silvan.calarco@mambasoft.it> 5.4.53-1mamba * Thu Jul 23 2020 Silvan Calarco <silvan.calarco@mambasoft.it> 5.4.53-1mamba
- update to 5.4.53 - update to 5.4.53
- fix kernel headers by installing Kconfig files; reworked to only install needed files; strip modules - fix kernel headers by installing Kconfig files; reworked to only install needed files; strip modules