diff options
author | Jeremy Cline <jcline@redhat.com> | 2018-08-24 09:44:58 -0400 |
---|---|---|
committer | Jeremy Cline <jcline@redhat.com> | 2018-08-24 09:44:58 -0400 |
commit | 28d87ac04509aac2e38c73faf570a121e23318e1 (patch) | |
tree | 987db62993ab5014fc09c4ce4df03d989aab02bf | |
parent | 9b4f0fa7126b0cc7bacaaeb466e823f812c824c6 (diff) | |
download | kernel-28d87ac04509aac2e38c73faf570a121e23318e1.tar.gz kernel-28d87ac04509aac2e38c73faf570a121e23318e1.tar.xz kernel-28d87ac04509aac2e38c73faf570a121e23318e1.zip |
Linux v4.18-12721-g33e17876ea4e
32 files changed, 75 insertions, 1256 deletions
diff --git a/0005-efi-bgrt-Drop-__initdata-from-bgrt_image_size.patch b/0005-efi-bgrt-Drop-__initdata-from-bgrt_image_size.patch deleted file mode 100644 index ec1ff7fbc..000000000 --- a/0005-efi-bgrt-Drop-__initdata-from-bgrt_image_size.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 421b8aef3902426c4c3ebd23218c0ad282786e1d Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Tue, 3 Jul 2018 17:43:10 +0200 -Subject: [PATCH 5/7] efi/bgrt: Drop __initdata from bgrt_image_size - -bgrt_image_size is necessary to (optionally) show the boot graphics from -the efifb code. The efifb driver is a platform driver, using a normal -driver probe() driver callback. So even though it is always builtin it -cannot reference __initdata. - -Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> -Signed-off-by: Hans de Goede <hdegoede@redhat.com> -Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> ---- - drivers/firmware/efi/efi-bgrt.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/firmware/efi/efi-bgrt.c b/drivers/firmware/efi/efi-bgrt.c -index 50793fda7819..b22ccfb0c991 100644 ---- a/drivers/firmware/efi/efi-bgrt.c -+++ b/drivers/firmware/efi/efi-bgrt.c -@@ -20,7 +20,7 @@ - #include <linux/efi-bgrt.h> - - struct acpi_table_bgrt bgrt_tab; --size_t __initdata bgrt_image_size; -+size_t bgrt_image_size; - - struct bmp_header { - u16 id; --- -2.18.0 - diff --git a/0006-efifb-Copy-the-ACPI-BGRT-boot-graphics-to-the-frameb.patch b/0006-efifb-Copy-the-ACPI-BGRT-boot-graphics-to-the-frameb.patch deleted file mode 100644 index 248b34335..000000000 --- a/0006-efifb-Copy-the-ACPI-BGRT-boot-graphics-to-the-frameb.patch +++ /dev/null @@ -1,201 +0,0 @@ -From a5f742d7ba70c702bcf67dd1fd8d5dde3f5042fc Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Tue, 3 Jul 2018 17:43:10 +0200 -Subject: [PATCH 6/7] efifb: Copy the ACPI BGRT boot graphics to the - framebuffer - -On systems where fbcon is configured for deferred console takeover, the -intend is for the framebuffer to show the boot graphics (e.g a vendor -logo) until some message (e.g. an error) is printed or a graphical -session takes over. - -Some firmware relies on the OS to show the boot graphics. - -This patch adds support to efifb to show the boot graphics and -automatically enables this when fbcon is configured for deferred -console takeover. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> -Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> ---- - drivers/video/fbdev/efifb.c | 140 ++++++++++++++++++++++++++++++++++++ - 1 file changed, 140 insertions(+) - -diff --git a/drivers/video/fbdev/efifb.c b/drivers/video/fbdev/efifb.c -index c6f78d27947b..67684412ba8a 100644 ---- a/drivers/video/fbdev/efifb.c -+++ b/drivers/video/fbdev/efifb.c -@@ -9,16 +9,39 @@ - - #include <linux/kernel.h> - #include <linux/efi.h> -+#include <linux/efi-bgrt.h> - #include <linux/errno.h> - #include <linux/fb.h> - #include <linux/pci.h> - #include <linux/platform_device.h> -+#include <linux/printk.h> - #include <linux/screen_info.h> - #include <video/vga.h> - #include <asm/efi.h> - #include <drm/drm_utils.h> /* For drm_get_panel_orientation_quirk */ - #include <drm/drm_connector.h> /* For DRM_MODE_PANEL_ORIENTATION_* */ - -+struct bmp_file_header { -+ u16 id; -+ u32 file_size; -+ u32 reserved; -+ u32 bitmap_offset; -+} __packed; -+ -+struct bmp_dib_header { -+ u32 dib_header_size; -+ s32 width; -+ s32 height; -+ u16 planes; -+ u16 bpp; -+ u32 compression; -+ u32 bitmap_size; -+ u32 horz_resolution; -+ u32 vert_resolution; -+ u32 colors_used; -+ u32 colors_important; -+} __packed; -+ - static bool request_mem_succeeded = false; - static u64 mem_flags = EFI_MEMORY_WC | EFI_MEMORY_UC; - -@@ -66,6 +89,121 @@ static int efifb_setcolreg(unsigned regno, unsigned red, unsigned green, - return 0; - } - -+/* -+ * If fbcon deffered console takeover is configured, the intent is for the -+ * framebuffer to show the boot graphics (e.g. vendor logo) until there is some -+ * (error) message to display. But the boot graphics may have been destroyed by -+ * e.g. option ROM output, detect this and restore the boot graphics. -+ */ -+#if defined CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER && \ -+ defined CONFIG_ACPI_BGRT -+static void efifb_copy_bmp(u8 *src, u32 *dst, int width, struct screen_info *si) -+{ -+ u8 r, g, b; -+ -+ while (width--) { -+ b = *src++; -+ g = *src++; -+ r = *src++; -+ *dst++ = (r << si->red_pos) | -+ (g << si->green_pos) | -+ (b << si->blue_pos); -+ } -+} -+ -+static void efifb_show_boot_graphics(struct fb_info *info) -+{ -+ u32 bmp_width, bmp_height, bmp_pitch, screen_pitch, dst_x, y, src_y; -+ struct screen_info *si = &screen_info; -+ struct bmp_file_header *file_header; -+ struct bmp_dib_header *dib_header; -+ void *bgrt_image = NULL; -+ u8 *dst = info->screen_base; -+ -+ if (!bgrt_tab.image_address) { -+ pr_info("efifb: No BGRT, not showing boot graphics\n"); -+ return; -+ } -+ -+ /* Avoid flashing the logo if we're going to print std probe messages */ -+ if (console_loglevel > CONSOLE_LOGLEVEL_QUIET) -+ return; -+ -+ /* bgrt_tab.status is unreliable, so we don't check it */ -+ -+ if (si->lfb_depth != 32) { -+ pr_info("efifb: not 32 bits, not showing boot graphics\n"); -+ return; -+ } -+ -+ bgrt_image = memremap(bgrt_tab.image_address, bgrt_image_size, -+ MEMREMAP_WB); -+ if (!bgrt_image) { -+ pr_warn("efifb: Ignoring BGRT: failed to map image memory\n"); -+ return; -+ } -+ -+ if (bgrt_image_size < (sizeof(*file_header) + sizeof(*dib_header))) -+ goto error; -+ -+ file_header = bgrt_image; -+ if (file_header->id != 0x4d42 || file_header->reserved != 0) -+ goto error; -+ -+ dib_header = bgrt_image + sizeof(*file_header); -+ if (dib_header->dib_header_size != 40 || dib_header->width < 0 || -+ dib_header->planes != 1 || dib_header->bpp != 24 || -+ dib_header->compression != 0) -+ goto error; -+ -+ bmp_width = dib_header->width; -+ bmp_height = abs(dib_header->height); -+ bmp_pitch = round_up(3 * bmp_width, 4); -+ screen_pitch = si->lfb_linelength; -+ -+ if ((file_header->bitmap_offset + bmp_pitch * bmp_height) > -+ bgrt_image_size) -+ goto error; -+ -+ if ((bgrt_tab.image_offset_x + bmp_width) > si->lfb_width || -+ (bgrt_tab.image_offset_y + bmp_height) > si->lfb_height) -+ goto error; -+ -+ pr_info("efifb: showing boot graphics\n"); -+ -+ for (y = 0; y < si->lfb_height; y++, dst += si->lfb_linelength) { -+ /* Only background? */ -+ if (y < bgrt_tab.image_offset_y || -+ y >= (bgrt_tab.image_offset_y + bmp_height)) { -+ memset(dst, 0, 4 * si->lfb_width); -+ continue; -+ } -+ -+ src_y = y - bgrt_tab.image_offset_y; -+ /* Positive header height means upside down row order */ -+ if (dib_header->height > 0) -+ src_y = (bmp_height - 1) - src_y; -+ -+ memset(dst, 0, bgrt_tab.image_offset_x * 4); -+ dst_x = bgrt_tab.image_offset_x; -+ efifb_copy_bmp(bgrt_image + file_header->bitmap_offset + -+ src_y * bmp_pitch, -+ (u32 *)dst + dst_x, bmp_width, si); -+ dst_x += bmp_width; -+ memset((u32 *)dst + dst_x, 0, (si->lfb_width - dst_x) * 4); -+ } -+ -+ memunmap(bgrt_image); -+ return; -+ -+error: -+ memunmap(bgrt_image); -+ pr_warn("efifb: Ignoring BGRT: unexpected or invalid BMP data\n"); -+} -+#else -+static inline void efifb_show_boot_graphics(struct fb_info *info) {} -+#endif -+ - static void efifb_destroy(struct fb_info *info) - { - if (info->screen_base) { -@@ -311,6 +449,8 @@ static int efifb_probe(struct platform_device *dev) - goto err_release_fb; - } - -+ efifb_show_boot_graphics(info); -+ - pr_info("efifb: framebuffer at 0x%lx, using %dk, total %dk\n", - efifb_fix.smem_start, size_remap/1024, size_total/1024); - pr_info("efifb: mode is %dx%dx%d, linelength=%d, pages=%d\n", --- -2.18.0 - diff --git a/0007-efifb-BGRT-Do-not-copy-the-boot-graphics-for-non-nat.patch b/0007-efifb-BGRT-Do-not-copy-the-boot-graphics-for-non-nat.patch deleted file mode 100644 index 4b84688e1..000000000 --- a/0007-efifb-BGRT-Do-not-copy-the-boot-graphics-for-non-nat.patch +++ /dev/null @@ -1,85 +0,0 @@ -From c4220b3f747ae6dd28171137d85fba0eab64e36d Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Tue, 24 Jul 2018 19:11:28 +0200 -Subject: [PATCH 7/7] efifb: BGRT: Do not copy the boot graphics for non native - resolutions - -On x86 some firmwares use a low non native resolution for the display when -they have shown some text messages. While keeping the bgrt filled with info -for the native resolution. If the bgrt image intended for the native -resolution still fits, it will be displayed very close to the right edge of -the display looking quite bad. - -This commits adds a (heuristics based) checks for this and makes efifb -not show the boot graphics when this is the case. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> -Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> ---- - drivers/video/fbdev/efifb.c | 43 +++++++++++++++++++++++++++++++++++++ - 1 file changed, 43 insertions(+) - -diff --git a/drivers/video/fbdev/efifb.c b/drivers/video/fbdev/efifb.c -index fa01eecc0a55..52bf39f93888 100644 ---- a/drivers/video/fbdev/efifb.c -+++ b/drivers/video/fbdev/efifb.c -@@ -111,6 +111,46 @@ static void efifb_copy_bmp(u8 *src, u32 *dst, int width, struct screen_info *si) - } - } - -+#ifdef CONFIG_X86 -+/* -+ * On x86 some firmwares use a low non native resolution for the display when -+ * they have shown some text messages. While keeping the bgrt filled with info -+ * for the native resolution. If the bgrt image intended for the native -+ * resolution still fits, it will be displayed very close to the right edge of -+ * the display looking quite bad. This function checks for this. -+ */ -+static bool efifb_bgrt_sanity_check(struct screen_info *si, u32 bmp_width) -+{ -+ static const int default_resolutions[][2] = { -+ { 800, 600 }, -+ { 1024, 768 }, -+ { 1280, 1024 }, -+ }; -+ u32 i, right_margin; -+ -+ for (i = 0; i < ARRAY_SIZE(default_resolutions); i++) { -+ if (default_resolutions[i][0] == si->lfb_width && -+ default_resolutions[i][1] == si->lfb_height) -+ break; -+ } -+ /* If not a default resolution used for textmode, this should be fine */ -+ if (i >= ARRAY_SIZE(default_resolutions)) -+ return true; -+ -+ /* If the right margin is 5 times smaller then the left one, reject */ -+ right_margin = si->lfb_width - (bgrt_tab.image_offset_x + bmp_width); -+ if (right_margin < (bgrt_tab.image_offset_x / 5)) -+ return false; -+ -+ return true; -+} -+#else -+static bool efifb_bgrt_sanity_check(struct screen_info *si, u32 bmp_width) -+{ -+ return true; -+} -+#endif -+ - static void efifb_show_boot_graphics(struct fb_info *info) - { - u32 bmp_width, bmp_height, bmp_pitch, screen_pitch, dst_x, y, src_y; -@@ -169,6 +209,9 @@ static void efifb_show_boot_graphics(struct fb_info *info) - (bgrt_tab.image_offset_y + bmp_height) > si->lfb_height) - goto error; - -+ if (!efifb_bgrt_sanity_check(si, bmp_width)) -+ goto error; -+ - pr_info("efifb: showing boot graphics\n"); - - for (y = 0; y < si->lfb_height; y++, dst += si->lfb_linelength) { --- -2.18.0 - diff --git a/0009-fbcon-Only-defer-console-takeover-if-the-current-con.patch b/0009-fbcon-Only-defer-console-takeover-if-the-current-con.patch deleted file mode 100644 index 8735a62eb..000000000 --- a/0009-fbcon-Only-defer-console-takeover-if-the-current-con.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 317b698406457eb97277d4220126683a59c74fd8 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Wed, 1 Aug 2018 15:19:52 +0200 -Subject: [PATCH] fbcon: Only defer console takeover if the current - console driver is the dummycon - -We rely on dummycon's output notifier mechanism to defer the takeover. - -If say vgacon is the current console driver then dummycon will never get -used so its output notifier will also never get called and fbcon never -takes over. This commit fixes this by only deferring the console takeover -if the current console driver is the dummycon driver. - -This commit also moves the entirety of fbcon_start under the console_lock, -since the conswitchp which fbcon_start now checks is protected by it. - -This commit also inlines fbcon_register_output_notifier, since we now -need a #ifdef CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER in fbcon_start -anyways because of the write access to the deferred_takeover variable, -this has the added advantage that it puts the -dummycon_register_output_notifier() call directly after the "conswitchp != -&dummy_con" comparison making it clear why that check is there. - -Note the arch setup code will set conswitchp to either dummy_con or -vga_con, in the cases where it gets set to vga_con even though their is -no vga_con present we rely on vga_con_startup() to set conswitchp to -dummy_con. vga_con_startup() is guaranteed to happen before -fb_console_init() as it gets called as a console_initcall where as -fb_console_init() gets called as a subsys_initcall. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- - drivers/video/fbdev/core/fbcon.c | 24 ++++++++++-------------- - 1 file changed, 10 insertions(+), 14 deletions(-) - -diff --git a/drivers/video/fbdev/core/fbcon.c b/drivers/video/fbdev/core/fbcon.c -index e30d3a138c97..ef8b2d0b7071 100644 ---- a/drivers/video/fbdev/core/fbcon.c -+++ b/drivers/video/fbdev/core/fbcon.c -@@ -3612,38 +3612,34 @@ static int fbcon_output_notifier(struct notifier_block *nb, - - return NOTIFY_OK; - } -- --static void fbcon_register_output_notifier(void) --{ -- fbcon_output_nb.notifier_call = fbcon_output_notifier; -- dummycon_register_output_notifier(&fbcon_output_nb); --} --#else --static inline void fbcon_register_output_notifier(void) {} - #endif - - static void fbcon_start(void) - { -+ WARN_CONSOLE_UNLOCKED(); -+ -+#ifdef CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER -+ if (conswitchp != &dummy_con) -+ deferred_takeover = false; -+ - if (deferred_takeover) { -- fbcon_register_output_notifier(); -+ fbcon_output_nb.notifier_call = fbcon_output_notifier; -+ dummycon_register_output_notifier(&fbcon_output_nb); - return; - } -+#endif - - if (num_registered_fb) { - int i; - -- console_lock(); -- - for (i = 0; i < FB_MAX; i++) { - if (registered_fb[i] != NULL) { - info_idx = i; - break; - } - } - - do_fbcon_takeover(0); -- console_unlock(); -- - } - } - -@@ -3724,8 +3720,8 @@ void __init fb_console_init(void) - for (i = 0; i < MAX_NR_CONSOLES; i++) - con2fb_map[i] = -1; - -- console_unlock(); - fbcon_start(); -+ console_unlock(); - } - - #ifdef MODULE --- -2.18.0 - diff --git a/0010-fbcon-Do-not-takeover-the-console-from-atomic-contex.patch b/0010-fbcon-Do-not-takeover-the-console-from-atomic-contex.patch deleted file mode 100644 index 254834e4b..000000000 --- a/0010-fbcon-Do-not-takeover-the-console-from-atomic-contex.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 8f571bbfc621fd0826bbc7a8924c811f3a3167c9 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Mon, 6 Aug 2018 16:32:27 +0200 -Subject: [PATCH] fbcon: Do not takeover the console from atomic context - -Taking over the console involves allocating mem with GFP_KERNEL, talking -to drm drivers, etc. So this should not be done from an atomic context. - -But the console-output trigger deferred console takeover may happen from an -atomic context, which leads to "BUG: sleeping function called from invalid -context" errors. - -This commit fixes these errors by doing the deferred takeover from a -workqueue when the notifier runs from an atomic context. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- - drivers/video/fbdev/core/fbcon.c | 21 +++++++++++++++++++-- - 1 file changed, 19 insertions(+), 2 deletions(-) - -diff --git a/drivers/video/fbdev/core/fbcon.c b/drivers/video/fbdev/core/fbcon.c -index a3fd510..f812891 100644 ---- a/drivers/video/fbdev/core/fbcon.c -+++ b/drivers/video/fbdev/core/fbcon.c -@@ -3596,7 +3596,22 @@ static int fbcon_init_device(void) - } - - #ifdef CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER -+static void fbcon_register_existing_fbs(struct work_struct *work) -+{ -+ int i; -+ -+ console_lock(); -+ -+ for (i = 0; i < FB_MAX; i++) { -+ if (registered_fb[i]) -+ fbcon_fb_registered(registered_fb[i]); -+ } -+ -+ console_unlock(); -+} -+ - static struct notifier_block fbcon_output_nb; -+static DECLARE_WORK(fbcon_deferred_takeover_work, fbcon_register_existing_fbs); - - static int fbcon_output_notifier(struct notifier_block *nb, - unsigned long action, void *data) -@@ -3611,10 +3626,8 @@ static int fbcon_output_notifier(struct notifier_block *nb, - deferred_takeover = false; - logo_shown = FBCON_LOGO_DONTSHOW; - -- for (i = 0; i < FB_MAX; i++) { -- if (registered_fb[i]) -- fbcon_fb_registered(registered_fb[i]); -- } -+ /* We may get called in atomic context */ -+ schedule_work(&fbcon_deferred_takeover_work); - - return NOTIFY_OK; - } --- -2.18.0 - diff --git a/arm-dts-armada388-helios4.patch b/arm-dts-armada388-helios4.patch deleted file mode 100644 index abfbbc299..000000000 --- a/arm-dts-armada388-helios4.patch +++ /dev/null @@ -1,352 +0,0 @@ -From ced8025b569e21c31b52cc80410ed49d0bf13368 Mon Sep 17 00:00:00 2001 -From: Dennis Gilmore <dennis@ausil.us> -Date: Tue, 5 Jun 2018 17:15:45 -0500 -Subject: ARM: dts: armada388-helios4 - -The helios4 is a Armada388 based nas board designed by SolidRun and -based on their SOM. It is sold by kobol.io the dts file came from -https://raw.githubusercontent.com/armbian/build/master/patch/kernel/mvebu-default/95-helios4-device-tree.patch -I added a SPDX license line to match the clearfog it says it was based -on and a compatible line for "kobol,helios4" - -Signed-off-by: Dennis Gilmore <dennis@ausil.us> -Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com> ---- - arch/arm/boot/dts/Makefile | 1 + - arch/arm/boot/dts/armada-388-helios4.dts | 313 +++++++++++++++++++++++++++++++ - 2 files changed, 314 insertions(+) - create mode 100644 arch/arm/boot/dts/armada-388-helios4.dts - -diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 37a3de760d40..55133fac83ab 100644 ---- a/arch/arm/boot/dts/Makefile -+++ b/arch/arm/boot/dts/Makefile -@@ -1138,6 +1138,7 @@ dtb-$(CONFIG_MACH_ARMADA_38X) += \ - armada-388-clearfog-pro.dtb \ - armada-388-db.dtb \ - armada-388-gp.dtb \ -+ armada-388-helios4.dtb \ - armada-388-rd.dtb - dtb-$(CONFIG_MACH_ARMADA_39X) += \ - armada-398-db.dtb -diff --git a/arch/arm/boot/dts/armada-388-helios4.dts b/arch/arm/boot/dts/armada-388-helios4.dts -new file mode 100644 -index 000000000000..705adfa8c680 ---- /dev/null -+++ b/arch/arm/boot/dts/armada-388-helios4.dts -@@ -0,0 +1,313 @@ -+// SPDX-License-Identifier: (GPL-2.0 OR MIT) -+/* -+ * Device Tree file for Helios4 -+ * based on SolidRun Clearfog revision A1 rev 2.0 (88F6828) -+ * -+ * Copyright (C) 2017 Aditya Prayoga <aditya@kobol.io> -+ * -+ */ -+ -+/dts-v1/; -+#include "armada-388.dtsi" -+#include "armada-38x-solidrun-microsom.dtsi" -+ -+/ { -+ model = "Helios4"; -+ compatible = "kobol,helios4", "marvell,armada388", -+ "marvell,armada385", "marvell,armada380"; -+ -+ memory { -+ device_type = "memory"; -+ reg = <0x00000000 0x80000000>; /* 2 GB */ -+ }; -+ -+ aliases { -+ /* So that mvebu u-boot can update the MAC addresses */ -+ ethernet1 = ð0; -+ }; -+ -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ -+ reg_12v: regulator-12v { -+ compatible = "regulator-fixed"; -+ regulator-name = "power_brick_12V"; -+ regulator-min-microvolt = <12000000>; -+ regulator-max-microvolt = <12000000>; -+ regulator-always-on; -+ }; -+ -+ reg_3p3v: regulator-3p3v { -+ compatible = "regulator-fixed"; -+ regulator-name = "3P3V"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-always-on; -+ vin-supply = <®_12v>; -+ }; -+ -+ reg_5p0v_hdd: regulator-5v-hdd { -+ compatible = "regulator-fixed"; -+ regulator-name = "5V_HDD"; -+ regulator-min-microvolt = <5000000>; -+ regulator-max-microvolt = <5000000>; -+ regulator-always-on; -+ vin-supply = <®_12v>; -+ }; -+ -+ reg_5p0v_usb: regulator-5v-usb { -+ compatible = "regulator-fixed"; -+ regulator-name = "USB-PWR"; -+ regulator-min-microvolt = <5000000>; -+ regulator-max-microvolt = <5000000>; -+ regulator-boot-on; -+ regulator-always-on; -+ enable-active-high; -+ gpio = <&expander0 6 GPIO_ACTIVE_HIGH>; -+ vin-supply = <®_12v>; -+ }; -+ -+ system-leds { -+ compatible = "gpio-leds"; -+ status-led { -+ label = "helios4:green:status"; -+ gpios = <&gpio0 24 GPIO_ACTIVE_LOW>; -+ linux,default-trigger = "heartbeat"; -+ default-state = "on"; -+ }; -+ -+ fault-led { -+ label = "helios4:red:fault"; -+ gpios = <&gpio0 25 GPIO_ACTIVE_LOW>; -+ default-state = "keep"; -+ }; -+ }; -+ -+ io-leds { -+ compatible = "gpio-leds"; -+ sata1-led { -+ label = "helios4:green:ata1"; -+ gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; -+ linux,default-trigger = "ata1"; -+ default-state = "off"; -+ }; -+ sata2-led { -+ label = "helios4:green:ata2"; -+ gpios = <&gpio1 18 GPIO_ACTIVE_LOW>; -+ linux,default-trigger = "ata2"; -+ default-state = "off"; -+ }; -+ sata3-led { -+ label = "helios4:green:ata3"; -+ gpios = <&gpio1 20 GPIO_ACTIVE_LOW>; -+ linux,default-trigger = "ata3"; -+ default-state = "off"; -+ }; -+ sata4-led { -+ label = "helios4:green:ata4"; -+ gpios = <&gpio1 21 GPIO_ACTIVE_LOW>; -+ linux,default-trigger = "ata4"; -+ default-state = "off"; -+ }; -+ usb-led { -+ label = "helios4:green:usb"; -+ gpios = <&gpio1 22 GPIO_ACTIVE_LOW>; -+ linux,default-trigger = "usb-host"; -+ default-state = "off"; -+ }; -+ }; -+ -+ fan1: j10-pwm { -+ compatible = "pwm-fan"; -+ pwms = <&gpio1 9 40000>; /* Target freq:25 kHz */ -+ }; -+ -+ fan2: j17-pwm { -+ compatible = "pwm-fan"; -+ pwms = <&gpio1 23 40000>; /* Target freq:25 kHz */ -+ }; -+ -+ usb2_phy: usb2-phy { -+ compatible = "usb-nop-xceiv"; -+ vbus-regulator = <®_5p0v_usb>; -+ }; -+ -+ usb3_phy: usb3-phy { -+ compatible = "usb-nop-xceiv"; -+ }; -+ -+ soc { -+ internal-regs { -+ i2c@11000 { -+ clock-frequency = <400000>; -+ pinctrl-0 = <&i2c0_pins>; -+ pinctrl-names = "default"; -+ status = "okay"; -+ -+ /* -+ * PCA9655 GPIO expander, up to 1MHz clock. -+ * 0-Board Revision bit 0 # -+ * 1-Board Revision bit 1 # -+ * 5-USB3 overcurrent -+ * 6-USB3 power -+ */ -+ expander0: gpio-expander@20 { -+ /* -+ * This is how it should be: -+ * compatible = "onnn,pca9655", -+ * "nxp,pca9555"; -+ * but you can't do this because of -+ * the way I2C works. -+ */ -+ compatible = "nxp,pca9555"; -+ gpio-controller; -+ #gpio-cells = <2>; -+ reg = <0x20>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pca0_pins>; -+ interrupt-parent = <&gpio0>; -+ interrupts = <23 IRQ_TYPE_EDGE_FALLING>; -+ interrupt-controller; -+ #interrupt-cells = <2>; -+ -+ board_rev_bit_0 { -+ gpio-hog; -+ gpios = <0 GPIO_ACTIVE_LOW>; -+ input; -+ line-name = "board-rev-0"; -+ }; -+ board_rev_bit_1 { -+ gpio-hog; -+ gpios = <1 GPIO_ACTIVE_LOW>; -+ input; -+ line-name = "board-rev-1"; -+ }; -+ usb3_ilimit { -+ gpio-hog; -+ gpios = <5 GPIO_ACTIVE_HIGH>; -+ input; -+ line-name = "usb-overcurrent-status"; -+ }; -+ }; -+ -+ temp_sensor: temp@4c { -+ compatible = "ti,lm75"; -+ reg = <0x4c>; -+ vcc-supply = <®_3p3v>; -+ }; -+ }; -+ -+ i2c@11100 { -+ /* -+ * External I2C Bus for user peripheral -+ */ -+ clock-frequency = <400000>; -+ pinctrl-0 = <&helios_i2c1_pins>; -+ pinctrl-names = "default"; -+ status = "okay"; -+ }; -+ -+ sata@a8000 { -+ status = "okay"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ -+ sata0: sata-port@0 { -+ reg = <0>; -+ }; -+ -+ sata1: sata-port@1 { -+ reg = <1>; -+ }; -+ }; -+ -+ sata@e0000 { -+ status = "okay"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ -+ sata2: sata-port@0 { -+ reg = <0>; -+ }; -+ -+ sata3: sata-port@1 { -+ reg = <1>; -+ }; -+ }; -+ -+ spi@10680 { -+ pinctrl-0 = <&spi1_pins -+ µsom_spi1_cs_pins>; -+ pinctrl-names = "default"; -+ status = "okay"; -+ }; -+ -+ sdhci@d8000 { -+ bus-width = <4>; -+ cd-gpios = <&gpio0 20 GPIO_ACTIVE_LOW>; -+ no-1-8-v; -+ pinctrl-0 = <&helios_sdhci_pins -+ &helios_sdhci_cd_pins>; -+ pinctrl-names = "default"; -+ status = "okay"; -+ vmmc = <®_3p3v>; -+ wp-inverted; -+ }; -+ -+ usb@58000 { -+ usb-phy = <&usb2_phy>; -+ status = "okay"; -+ }; -+ -+ usb3@f0000 { -+ status = "okay"; -+ }; -+ -+ usb3@f8000 { -+ status = "okay"; -+ }; -+ -+ pinctrl@18000 { -+ pca0_pins: pca0-pins { -+ marvell,pins = "mpp23"; -+ marvell,function = "gpio"; -+ }; -+ microsom_phy0_int_pins: microsom-phy0-int-pins { -+ marvell,pins = "mpp18"; -+ marvell,function = "gpio"; -+ }; -+ helios_i2c1_pins: i2c1-pins { -+ marvell,pins = "mpp26", "mpp27"; -+ marvell,function = "i2c1"; -+ }; -+ helios_sdhci_cd_pins: helios-sdhci-cd-pins { -+ marvell,pins = "mpp20"; -+ marvell,function = "gpio"; -+ }; -+ helios_sdhci_pins: helios-sdhci-pins { -+ marvell,pins = "mpp21", "mpp28", -+ "mpp37", "mpp38", -+ "mpp39", "mpp40"; -+ marvell,function = "sd0"; -+ }; -+ helios_led_pins: helios-led-pins { -+ marvell,pins = "mpp24", "mpp25", -+ "mpp49", "mpp50", -+ "mpp52", "mpp53", -+ "mpp54"; -+ marvell,function = "gpio"; -+ }; -+ helios_fan_pins: helios-fan-pins { -+ marvell,pins = "mpp41", "mpp43", -+ "mpp48", "mpp55"; -+ marvell,function = "gpio"; -+ }; -+ microsom_spi1_cs_pins: spi1-cs-pins { -+ marvell,pins = "mpp59"; -+ marvell,function = "spi1"; -+ }; -+ }; -+ }; -+ }; -+}; --- -cgit 1.2-0.3.lf.el7 diff --git a/bcm2835-hwmon-Add-support-for-RPi-voltage-sensor.patch b/bcm2835-hwmon-Add-support-for-RPi-voltage-sensor.patch index 3e65ab969..7812084f1 100644 --- a/bcm2835-hwmon-Add-support-for-RPi-voltage-sensor.patch +++ b/bcm2835-hwmon-Add-support-for-RPi-voltage-sensor.patch @@ -1,376 +1,3 @@ -From be3035e3627d2570de4c2c612ecd095968986437 Mon Sep 17 00:00:00 2001 -From: Stefan Wahren <stefan.wahren@i2se.com> -Date: Fri, 25 May 2018 21:24:34 +0200 -Subject: [PATCH 1/4] ARM: bcm2835: Add GET_THROTTLED firmware property - -Recent Raspberry Pi firmware provides a mailbox property to detect -under-voltage conditions. Here is the current definition. - -The u32 value returned by the firmware is divided into 2 parts: - - lower 16-bits are the live value - - upper 16-bits are the history or sticky value - - Bits: - 0: undervoltage - 1: arm frequency capped - 2: currently throttled - 16: undervoltage has occurred - 17: arm frequency capped has occurred - 18: throttling has occurred - -Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> -Signed-off-by: Eric Anholt <eric@anholt.net> -Reviewed-by: Eric Anholt <eric@anholt.net> ---- - include/soc/bcm2835/raspberrypi-firmware.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/include/soc/bcm2835/raspberrypi-firmware.h b/include/soc/bcm2835/raspberrypi-firmware.h -index 8ee8991aa099a..c4a5c9e9fb478 100644 ---- a/include/soc/bcm2835/raspberrypi-firmware.h -+++ b/include/soc/bcm2835/raspberrypi-firmware.h -@@ -75,6 +75,7 @@ enum rpi_firmware_property_tag { - RPI_FIRMWARE_GET_EDID_BLOCK = 0x00030020, - RPI_FIRMWARE_GET_CUSTOMER_OTP = 0x00030021, - RPI_FIRMWARE_GET_DOMAIN_STATE = 0x00030030, -+ RPI_FIRMWARE_GET_THROTTLED = 0x00030046, - RPI_FIRMWARE_SET_CLOCK_STATE = 0x00038001, - RPI_FIRMWARE_SET_CLOCK_RATE = 0x00038002, - RPI_FIRMWARE_SET_VOLTAGE = 0x00038003, --- -2.17.1 - -From 3c493c885cf8abf0986c9877875161dfd0a29273 Mon Sep 17 00:00:00 2001 -From: Stefan Wahren <stefan.wahren@i2se.com> -Date: Fri, 25 May 2018 21:24:35 +0200 -Subject: [PATCH 2/4] hwmon: Add support for RPi voltage sensor -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Currently there is no easy way to detect undervoltage conditions on a -remote Raspberry Pi. This hwmon driver retrieves the state of the -undervoltage sensor via mailbox interface. The handling based on -Noralf's modifications to the downstream firmware driver. In case of -an undervoltage condition only an entry is written to the kernel log. - -CC: "Noralf Trønnes" <noralf@tronnes.org> -Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> -Signed-off-by: Eric Anholt <eric@anholt.net> -Acked-by: Guenter Roeck <linux@roeck-us.net> ---- - Documentation/hwmon/raspberrypi-hwmon | 22 ++++ - drivers/hwmon/Kconfig | 10 ++ - drivers/hwmon/Makefile | 1 + - drivers/hwmon/raspberrypi-hwmon.c | 166 ++++++++++++++++++++++++++ - 4 files changed, 199 insertions(+) - create mode 100644 Documentation/hwmon/raspberrypi-hwmon - create mode 100644 drivers/hwmon/raspberrypi-hwmon.c - -diff --git a/Documentation/hwmon/raspberrypi-hwmon b/Documentation/hwmon/raspberrypi-hwmon -new file mode 100644 -index 0000000000000..3c92e2cb52d60 ---- /dev/null -+++ b/Documentation/hwmon/raspberrypi-hwmon -@@ -0,0 +1,22 @@ -+Kernel driver raspberrypi-hwmon -+=============================== -+ -+Supported boards: -+ * Raspberry Pi A+ (via GPIO on SoC) -+ * Raspberry Pi B+ (via GPIO on SoC) -+ * Raspberry Pi 2 B (via GPIO on SoC) -+ * Raspberry Pi 3 B (via GPIO on port expander) -+ * Raspberry Pi 3 B+ (via PMIC) -+ -+Author: Stefan Wahren <stefan.wahren@i2se.com> -+ -+Description -+----------- -+ -+This driver periodically polls a mailbox property of the VC4 firmware to detect -+undervoltage conditions. -+ -+Sysfs entries -+------------- -+ -+in0_lcrit_alarm Undervoltage alarm -diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig -index f10840ad465c2..fdaab8229686f 100644 ---- a/drivers/hwmon/Kconfig -+++ b/drivers/hwmon/Kconfig -@@ -1298,6 +1298,16 @@ config SENSORS_PWM_FAN - This driver can also be built as a module. If so, the module - will be called pwm-fan. - -+config SENSORS_RASPBERRYPI_HWMON -+ tristate "Raspberry Pi voltage monitor" -+ depends on RASPBERRYPI_FIRMWARE || COMPILE_TEST -+ help -+ If you say yes here you get support for voltage sensor on the -+ Raspberry Pi. -+ -+ This driver can also be built as a module. If so, the module -+ will be called raspberrypi-hwmon. -+ - config SENSORS_SHT15 - tristate "Sensiron humidity and temperature sensors. SHT15 and compat." - depends on GPIOLIB || COMPILE_TEST -diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile -index e7d52a36e6c4f..a9297703fd6e4 100644 ---- a/drivers/hwmon/Makefile -+++ b/drivers/hwmon/Makefile -@@ -141,6 +141,7 @@ obj-$(CONFIG_SENSORS_PC87427) += pc87427.o - obj-$(CONFIG_SENSORS_PCF8591) += pcf8591.o - obj-$(CONFIG_SENSORS_POWR1220) += powr1220.o - obj-$(CONFIG_SENSORS_PWM_FAN) += pwm-fan.o -+obj-$(CONFIG_SENSORS_RASPBERRYPI_HWMON) += raspberrypi-hwmon.o - obj-$(CONFIG_SENSORS_S3C) += s3c-hwmon.o - obj-$(CONFIG_SENSORS_SCH56XX_COMMON)+= sch56xx-common.o - obj-$(CONFIG_SENSORS_SCH5627) += sch5627.o -diff --git a/drivers/hwmon/raspberrypi-hwmon.c b/drivers/hwmon/raspberrypi-hwmon.c -new file mode 100644 -index 0000000000000..fb4e4a6bb1f63 ---- /dev/null -+++ b/drivers/hwmon/raspberrypi-hwmon.c -@@ -0,0 +1,166 @@ -+// SPDX-License-Identifier: GPL-2.0+ -+/* -+ * Raspberry Pi voltage sensor driver -+ * -+ * Based on firmware/raspberrypi.c by Noralf Trønnes -+ * -+ * Copyright (C) 2018 Stefan Wahren <stefan.wahren@i2se.com> -+ */ -+#include <linux/device.h> -+#include <linux/err.h> -+#include <linux/hwmon.h> -+#include <linux/module.h> -+#include <linux/platform_device.h> -+#include <linux/slab.h> -+#include <linux/workqueue.h> -+#include <soc/bcm2835/raspberrypi-firmware.h> -+ -+#define UNDERVOLTAGE_STICKY_BIT BIT(16) -+ -+struct rpi_hwmon_data { -+ struct device *hwmon_dev; -+ struct rpi_firmware *fw; -+ u32 last_throttled; -+ struct delayed_work get_values_poll_work; -+}; -+ -+static void rpi_firmware_get_throttled(struct rpi_hwmon_data *data) -+{ -+ u32 new_uv, old_uv, value; -+ int ret; -+ -+ /* Request firmware to clear sticky bits */ -+ value = 0xffff; -+ -+ ret = rpi_firmware_property(data->fw, RPI_FIRMWARE_GET_THROTTLED, -+ &value, sizeof(value)); -+ if (ret) { -+ dev_err_once(data->hwmon_dev, "Failed to get throttled (%d)\n", -+ ret); -+ return; -+ } -+ -+ new_uv = value & UNDERVOLTAGE_STICKY_BIT; -+ old_uv = data->last_throttled & UNDERVOLTAGE_STICKY_BIT; -+ data->last_throttled = value; -+ -+ if (new_uv == old_uv) -+ return; -+ -+ if (new_uv) -+ dev_crit(data->hwmon_dev, "Undervoltage detected!\n"); -+ else -+ dev_info(data->hwmon_dev, "Voltage normalised\n"); -+ -+ sysfs_notify(&data->hwmon_dev->kobj, NULL, "in0_lcrit_alarm"); -+} -+ -+static void get_values_poll(struct work_struct *work) -+{ -+ struct rpi_hwmon_data *data; -+ -+ data = container_of(work, struct rpi_hwmon_data, -+ get_values_poll_work.work); -+ -+ rpi_firmware_get_throttled(data); -+ -+ /* -+ * We can't run faster than the sticky shift (100ms) since we get -+ * flipping in the sticky bits that are cleared. -+ */ -+ schedule_delayed_work(&data->get_values_poll_work, 2 * HZ); -+} -+ -+static int rpi_read(struct device *dev, enum hwmon_sensor_types type, -+ u32 attr, int channel, long *val) -+{ -+ struct rpi_hwmon_data *data = dev_get_drvdata(dev); -+ -+ *val = !!(data->last_throttled & UNDERVOLTAGE_STICKY_BIT); -+ return 0; -+} -+ -+static umode_t rpi_is_visible(const void *_data, enum hwmon_sensor_types type, -+ u32 attr, int channel) -+{ -+ return 0444; -+} -+ -+static const u32 rpi_in_config[] = { -+ HWMON_I_LCRIT_ALARM, -+ 0 -+}; -+ -+static const struct hwmon_channel_info rpi_in = { -+ .type = hwmon_in, -+ .config = rpi_in_config, -+}; -+ -+static const struct hwmon_channel_info *rpi_info[] = { -+ &rpi_in, -+ NULL -+}; -+ -+static const struct hwmon_ops rpi_hwmon_ops = { -+ .is_visible = rpi_is_visible, -+ .read = rpi_read, -+}; -+ -+static const struct hwmon_chip_info rpi_chip_info = { -+ .ops = &rpi_hwmon_ops, -+ .info = rpi_info, -+}; -+ -+static int rpi_hwmon_probe(struct platform_device *pdev) -+{ -+ struct device *dev = &pdev->dev; -+ struct rpi_hwmon_data *data; -+ int ret; -+ -+ data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); -+ if (!data) -+ return -ENOMEM; -+ -+ /* Parent driver assure that firmware is correct */ -+ data->fw = dev_get_drvdata(dev->parent); -+ -+ /* Init throttled */ -+ ret = rpi_firmware_property(data->fw, RPI_FIRMWARE_GET_THROTTLED, -+ &data->last_throttled, -+ sizeof(data->last_throttled)); -+ -+ data->hwmon_dev = devm_hwmon_device_register_with_info(dev, "rpi_volt", -+ data, -+ &rpi_chip_info, -+ NULL); -+ -+ INIT_DELAYED_WORK(&data->get_values_poll_work, get_values_poll); -+ platform_set_drvdata(pdev, data); -+ -+ if (!PTR_ERR_OR_ZERO(data->hwmon_dev)) -+ schedule_delayed_work(&data->get_values_poll_work, 2 * HZ); -+ -+ return PTR_ERR_OR_ZERO(data->hwmon_dev); -+} -+ -+static int rpi_hwmon_remove(struct platform_device *pdev) -+{ -+ struct rpi_hwmon_data *data = platform_get_drvdata(pdev); -+ -+ cancel_delayed_work_sync(&data->get_values_poll_work); -+ -+ return 0; -+} -+ -+static struct platform_driver rpi_hwmon_driver = { -+ .probe = rpi_hwmon_probe, -+ .remove = rpi_hwmon_remove, -+ .driver = { -+ .name = "raspberrypi-hwmon", -+ }, -+}; -+module_platform_driver(rpi_hwmon_driver); -+ -+MODULE_AUTHOR("Stefan Wahren <stefan.wahren@i2se.com>"); -+MODULE_DESCRIPTION("Raspberry Pi voltage sensor driver"); -+MODULE_LICENSE("GPL v2"); --- -2.17.1 - -From 4ebe8673279b7afbbcbcf92094c9012a3c91f240 Mon Sep 17 00:00:00 2001 -From: Stefan Wahren <stefan.wahren@i2se.com> -Date: Fri, 25 May 2018 21:24:36 +0200 -Subject: [PATCH 3/4] firmware: raspberrypi: Register hwmon driver - -Since the raspberrypi-hwmon driver is tied to the VC4 firmware instead of -particular hardware its registration should be in the firmware driver. - -Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> -Signed-off-by: Eric Anholt <eric@anholt.net> ---- - drivers/firmware/raspberrypi.c | 19 +++++++++++++++++++ - 1 file changed, 19 insertions(+) - -diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c -index 6692888f04cfb..0602626bf72d0 100644 ---- a/drivers/firmware/raspberrypi.c -+++ b/drivers/firmware/raspberrypi.c -@@ -21,6 +21,8 @@ - #define MBOX_DATA28(msg) ((msg) & ~0xf) - #define MBOX_CHAN_PROPERTY 8 - -+static struct platform_device *rpi_hwmon; -+ - struct rpi_firmware { - struct mbox_client cl; - struct mbox_chan *chan; /* The property channel. */ -@@ -183,6 +185,20 @@ rpi_firmware_print_firmware_revision(struct rpi_firmware *fw) - } - } - -+static void -+rpi_register_hwmon_driver(struct device *dev, struct rpi_firmware *fw) -+{ -+ u32 packet; -+ int ret = rpi_firmware_property(fw, RPI_FIRMWARE_GET_THROTTLED, -+ &packet, sizeof(packet)); -+ -+ if (ret) -+ return; -+ -+ rpi_hwmon = platform_device_register_data(dev, "raspberrypi-hwmon", -+ -1, NULL, 0); -+} -+ - static int rpi_firmware_probe(struct platform_device *pdev) - { - struct device *dev = &pdev->dev; -@@ -209,6 +225,7 @@ static int rpi_firmware_probe(struct platform_device *pdev) - platform_set_drvdata(pdev, fw); - - rpi_firmware_print_firmware_revision(fw); -+ rpi_register_hwmon_driver(dev, fw); - - return 0; - } -@@ -217,6 +234,8 @@ static int rpi_firmware_remove(struct platform_device *pdev) - { - struct rpi_firmware *fw = platform_get_drvdata(pdev); - -+ platform_device_unregister(rpi_hwmon); -+ rpi_hwmon = NULL; - mbox_free_channel(fw->chan); - - return 0; --- -2.17.1 - From a0cf7704b6bc145a9f198a9b2bcf92ccc5d6b6be Mon Sep 17 00:00:00 2001 From: Peter Robinson <pbrobinson@gmail.com> Date: Fri, 20 Jul 2018 12:58:37 +0100 diff --git a/bcm2837-enable-pmu.patch b/bcm2837-enable-pmu.patch deleted file mode 100644 index 75efbe90c..000000000 --- a/bcm2837-enable-pmu.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 26611da3961755795d58595851eec350e75ae0e7 Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Mon, 21 May 2018 11:39:07 -0700 -Subject: arm: bcm2835: Add the PMU to the devicetree. - -This only probes on arm64 so far, but hopefully that driver will be -generalized soon. - -Signed-off-by: Eric Anholt <eric@anholt.net> -Acked-by: Stefan Wahren <stefan.wahren@i2se.com> ---- - arch/arm/boot/dts/bcm2837.dtsi | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/arch/arm/boot/dts/bcm2837.dtsi b/arch/arm/boot/dts/bcm2837.dtsi -index 7704bb0..beb6c50 100644 ---- a/arch/arm/boot/dts/bcm2837.dtsi -+++ b/arch/arm/boot/dts/bcm2837.dtsi -@@ -17,6 +17,12 @@ - }; - }; - -+ arm-pmu { -+ compatible = "arm,cortex-a53-pmu"; -+ interrupt-parent = <&local_intc>; -+ interrupts = <9 IRQ_TYPE_LEVEL_HIGH>; -+ }; -+ - timer { - compatible = "arm,armv7-timer"; - interrupt-parent = <&local_intc>; --- -cgit v1.1 diff --git a/configs/fedora/generic/CONFIG_ARCH_K3 b/configs/fedora/generic/CONFIG_ARCH_K3 new file mode 100644 index 000000000..6929420f8 --- /dev/null +++ b/configs/fedora/generic/CONFIG_ARCH_K3 @@ -0,0 +1 @@ +# CONFIG_ARCH_K3 is not set diff --git a/configs/fedora/generic/CONFIG_RESET_QCOM_AOSS b/configs/fedora/generic/CONFIG_RESET_QCOM_AOSS new file mode 100644 index 000000000..7213d3d92 --- /dev/null +++ b/configs/fedora/generic/CONFIG_RESET_QCOM_AOSS @@ -0,0 +1 @@ +# CONFIG_RESET_QCOM_AOSS is not set diff --git a/configs/fedora/generic/CONFIG_SUN50I_DE2_BUS b/configs/fedora/generic/CONFIG_SUN50I_DE2_BUS new file mode 100644 index 000000000..8af98239a --- /dev/null +++ b/configs/fedora/generic/CONFIG_SUN50I_DE2_BUS @@ -0,0 +1 @@ +# CONFIG_SUN50I_DE2_BUS is not set diff --git a/configs/fedora/generic/CONFIG_UBIFS_FS_XATTR b/configs/fedora/generic/CONFIG_UBIFS_FS_XATTR new file mode 100644 index 000000000..b6b2394de --- /dev/null +++ b/configs/fedora/generic/CONFIG_UBIFS_FS_XATTR @@ -0,0 +1 @@ +CONFIG_UBIFS_FS_XATTR=y diff --git a/configs/fedora/generic/arm/aarch64/CONFIG_SUN50I_DE2_BUS b/configs/fedora/generic/arm/aarch64/CONFIG_SUN50I_DE2_BUS new file mode 100644 index 000000000..38c61ab12 --- /dev/null +++ b/configs/fedora/generic/arm/aarch64/CONFIG_SUN50I_DE2_BUS @@ -0,0 +1 @@ +CONFIG_SUN50I_DE2_BUS=y @@ -1 +1 @@ -815f0ddb346c196018d4d8f8f55c12b83da1de3f +33e17876ea4edcd7f5c01efa78e8d02889261abf diff --git a/kernel-aarch64-debug.config b/kernel-aarch64-debug.config index 2b3032caf..348b9299e 100644 --- a/kernel-aarch64-debug.config +++ b/kernel-aarch64-debug.config @@ -235,6 +235,7 @@ CONFIG_ARCH_HISI=y # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LAYERSCAPE is not set # CONFIG_ARCH_LG1K is not set @@ -4837,6 +4838,7 @@ CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y CONFIG_RESET_HISI=y # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -6017,6 +6019,7 @@ CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_GPADC=m CONFIG_SUN50I_A64_CCU=y CONFIG_SUN50I_A64_UNSTABLE_TIMER=y +CONFIG_SUN50I_DE2_BUS=y CONFIG_SUN50I_H6_CCU=y CONFIG_SUN50I_H6_R_CCU=y # CONFIG_SUN8I_A83T_CCU is not set @@ -6363,6 +6366,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-aarch64.config b/kernel-aarch64.config index 28a402e64..369b1e463 100644 --- a/kernel-aarch64.config +++ b/kernel-aarch64.config @@ -235,6 +235,7 @@ CONFIG_ARCH_HISI=y # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LAYERSCAPE is not set # CONFIG_ARCH_LG1K is not set @@ -4814,6 +4815,7 @@ CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y CONFIG_RESET_HISI=y # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -5993,6 +5995,7 @@ CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_GPADC=m CONFIG_SUN50I_A64_CCU=y CONFIG_SUN50I_A64_UNSTABLE_TIMER=y +CONFIG_SUN50I_DE2_BUS=y CONFIG_SUN50I_H6_CCU=y CONFIG_SUN50I_H6_R_CCU=y # CONFIG_SUN8I_A83T_CCU is not set @@ -6339,6 +6342,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-armv7hl-debug.config b/kernel-armv7hl-debug.config index 06cef6109..3afb38e29 100644 --- a/kernel-armv7hl-debug.config +++ b/kernel-armv7hl-debug.config @@ -223,6 +223,7 @@ CONFIG_ARCH_HIGHBANK=y # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KEYSTONE is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set @@ -5134,6 +5135,7 @@ CONFIG_RENESAS_PHY=m CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -6448,6 +6450,7 @@ CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_A10_CCU=y CONFIG_SUN4I_EMAC=m CONFIG_SUN4I_GPADC=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUN5I_CCU=y CONFIG_SUN6I_A31_CCU=y CONFIG_SUN8I_A23_CCU=y @@ -6818,6 +6821,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-armv7hl-lpae-debug.config b/kernel-armv7hl-lpae-debug.config index 0a3e05760..aa59328cf 100644 --- a/kernel-armv7hl-lpae-debug.config +++ b/kernel-armv7hl-lpae-debug.config @@ -218,6 +218,7 @@ CONFIG_ARCH_HIGHBANK=y # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set CONFIG_ARCH_KEYSTONE=y # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set @@ -4842,6 +4843,7 @@ CONFIG_RENESAS_PHY=m CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -6047,6 +6049,7 @@ CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_A10_CCU=y CONFIG_SUN4I_EMAC=m CONFIG_SUN4I_GPADC=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUN5I_CCU=y CONFIG_SUN6I_A31_CCU=y CONFIG_SUN8I_A23_CCU=y @@ -6401,6 +6404,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-armv7hl-lpae.config b/kernel-armv7hl-lpae.config index 0f0059ba1..8c84d19ee 100644 --- a/kernel-armv7hl-lpae.config +++ b/kernel-armv7hl-lpae.config @@ -218,6 +218,7 @@ CONFIG_ARCH_HIGHBANK=y # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set CONFIG_ARCH_KEYSTONE=y # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set @@ -4819,6 +4820,7 @@ CONFIG_RENESAS_PHY=m CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -6023,6 +6025,7 @@ CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_A10_CCU=y CONFIG_SUN4I_EMAC=m CONFIG_SUN4I_GPADC=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUN5I_CCU=y CONFIG_SUN6I_A31_CCU=y CONFIG_SUN8I_A23_CCU=y @@ -6377,6 +6380,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-armv7hl.config b/kernel-armv7hl.config index 85c0e8b85..d071a2d40 100644 --- a/kernel-armv7hl.config +++ b/kernel-armv7hl.config @@ -223,6 +223,7 @@ CONFIG_ARCH_HIGHBANK=y # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KEYSTONE is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set @@ -5111,6 +5112,7 @@ CONFIG_RENESAS_PHY=m CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -6424,6 +6426,7 @@ CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_A10_CCU=y CONFIG_SUN4I_EMAC=m CONFIG_SUN4I_GPADC=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUN5I_CCU=y CONFIG_SUN6I_A31_CCU=y CONFIG_SUN8I_A23_CCU=y @@ -6794,6 +6797,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-i686-PAE.config b/kernel-i686-PAE.config index 5e2a0052c..90b5a56f8 100644 --- a/kernel-i686-PAE.config +++ b/kernel-i686-PAE.config @@ -241,6 +241,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set CONFIG_ARCH_MULTIPLATFORM=y @@ -4554,6 +4555,7 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -5671,6 +5673,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5991,6 +5994,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-i686-PAEdebug.config b/kernel-i686-PAEdebug.config index 3b6458d96..12fca1ddf 100644 --- a/kernel-i686-PAEdebug.config +++ b/kernel-i686-PAEdebug.config @@ -241,6 +241,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set CONFIG_ARCH_MULTIPLATFORM=y @@ -4578,6 +4579,7 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -5696,6 +5698,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -6016,6 +6019,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-i686-debug.config b/kernel-i686-debug.config index 2072bccd7..be232d635 100644 --- a/kernel-i686-debug.config +++ b/kernel-i686-debug.config @@ -241,6 +241,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set CONFIG_ARCH_MULTIPLATFORM=y @@ -4578,6 +4579,7 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -5696,6 +5698,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -6016,6 +6019,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-i686.config b/kernel-i686.config index 7824ff3e9..f978f2e20 100644 --- a/kernel-i686.config +++ b/kernel-i686.config @@ -241,6 +241,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set CONFIG_ARCH_MULTIPLATFORM=y @@ -4554,6 +4555,7 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -5671,6 +5673,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5991,6 +5994,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-ppc64le-debug.config b/kernel-ppc64le-debug.config index e27ca4bc7..01e4f33a9 100644 --- a/kernel-ppc64le-debug.config +++ b/kernel-ppc64le-debug.config @@ -185,6 +185,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set CONFIG_ARCH_MULTIPLATFORM=y @@ -4315,6 +4316,7 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -5382,6 +5384,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5689,6 +5692,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-ppc64le.config b/kernel-ppc64le.config index 6a2992c7d..ebdee4d77 100644 --- a/kernel-ppc64le.config +++ b/kernel-ppc64le.config @@ -185,6 +185,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set CONFIG_ARCH_MULTIPLATFORM=y @@ -4289,6 +4290,7 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -5355,6 +5357,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5662,6 +5665,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-s390x-debug.config b/kernel-s390x-debug.config index f9bc8faf3..3ab31f472 100644 --- a/kernel-s390x-debug.config +++ b/kernel-s390x-debug.config @@ -188,6 +188,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set CONFIG_ARCH_MULTIPLATFORM=y @@ -4207,6 +4208,7 @@ CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_CONTROLLER is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -5277,6 +5279,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5587,6 +5590,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-s390x.config b/kernel-s390x.config index 28069aa72..c62637db7 100644 --- a/kernel-s390x.config +++ b/kernel-s390x.config @@ -188,6 +188,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set CONFIG_ARCH_MULTIPLATFORM=y @@ -4181,6 +4182,7 @@ CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_CONTROLLER is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -5250,6 +5252,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5560,6 +5563,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-x86_64-debug.config b/kernel-x86_64-debug.config index 1ce52907b..cdf54a903 100644 --- a/kernel-x86_64-debug.config +++ b/kernel-x86_64-debug.config @@ -243,6 +243,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set # CONFIG_ARCH_MEMORY_PROBE is not set @@ -4620,6 +4621,7 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -5746,6 +5748,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -6066,6 +6069,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel-x86_64.config b/kernel-x86_64.config index 229191cc2..0fd72d081 100644 --- a/kernel-x86_64.config +++ b/kernel-x86_64.config @@ -243,6 +243,7 @@ CONFIG_AR5523=m # CONFIG_ARCH_IOP32X is not set # CONFIG_ARCH_IOP33X is not set # CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_KS8695 is not set # CONFIG_ARCH_LPC32XX is not set # CONFIG_ARCH_MEMORY_PROBE is not set @@ -4596,6 +4597,7 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_HSDK_V1 is not set +# CONFIG_RESET_QCOM_AOSS is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -5721,6 +5723,7 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_UVIS25_I2C=m CONFIG_ST_UVIS25=m CONFIG_ST_UVIS25_SPI=m +# CONFIG_SUN50I_DE2_BUS is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -6041,6 +6044,7 @@ CONFIG_UBIFS_ATIME_SUPPORT=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_SECURITY=y +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBSAN_ALIGNMENT is not set # CONFIG_UBSAN is not set # CONFIG_UBSAN_SANITIZE_ALL is not set diff --git a/kernel.spec b/kernel.spec index 558b09195..297b5bb4a 100644 --- a/kernel.spec +++ b/kernel.spec @@ -69,7 +69,7 @@ Summary: The Linux kernel # The rc snapshot level %global rcrev 0 # The git snapshot level -%define gitrev 10 +%define gitrev 11 # Set rpm version accordingly %define rpmversion 4.%{upstream_sublevel}.0 %endif @@ -579,14 +579,9 @@ Patch305: qcom-msm89xx-fixes.patch # https://patchwork.kernel.org/project/linux-mmc/list/?submitter=71861 Patch306: arm-sdhci-esdhc-imx-fixes.patch -Patch310: arm-dts-armada388-helios4.patch - # https://www.spinics.net/lists/arm-kernel/msg670137.html Patch311: arm64-ZynqMP-firmware-clock-drivers-core.patch -# Enabling Patches for the RPi3+ -Patch330: bcm2837-enable-pmu.patch - Patch331: bcm2835-cpufreq-add-CPU-frequency-control-driver.patch Patch332: bcm2835-hwmon-Add-support-for-RPi-voltage-sensor.patch @@ -609,14 +604,6 @@ Patch501: Fix-for-module-sig-verification.patch # rhbz 1431375 Patch502: input-rmi4-remove-the-need-for-artifical-IRQ.patch -# For quiet / flickerfree boot, all queued for merging into 4.19-rc1 -Patch525: 0005-efi-bgrt-Drop-__initdata-from-bgrt_image_size.patch -Patch526: 0006-efifb-Copy-the-ACPI-BGRT-boot-graphics-to-the-frameb.patch -Patch527: 0007-efifb-BGRT-Do-not-copy-the-boot-graphics-for-non-nat.patch -# Deferred fbcon takeover bugfix, pending upstream -Patch529: 0009-fbcon-Only-defer-console-takeover-if-the-current-con.patch -Patch530: 0010-fbcon-Do-not-takeover-the-console-from-atomic-contex.patch - # END OF PATCH DEFINITIONS %endif @@ -1876,6 +1863,9 @@ fi # # %changelog +* Fri Aug 24 2018 Jeremy Cline <jcline@redhat.com> - 4.19.0-0.rc0.git11.1 +- Linux v4.18-12721-g33e17876ea4e + * Thu Aug 23 2018 Jeremy Cline <jcline@redhat.com> - 4.19.0-0.rc0.git10.1 - Linux v4.18-11682-g815f0ddb346c @@ -1,2 +1,2 @@ SHA512 (linux-4.18.tar.xz) = 950eb85ac743b291afe9f21cd174d823e25f11883ee62cecfbfff8fe8c5672aae707654b1b8f29a133b1f2e3529e63b9f7fba4c45d6dacccc8000b3a9a9ae038 -SHA512 (patch-4.18-git10.xz) = 19ee46d7e33ba5cb331950a5900fae2a016e4c820085a32d5692ad02465dfb63e9ece769753c7a10d0deff6598ea8ff28f3301caf478b39eef464f7f6c917b46 +SHA512 (patch-4.18-git11.xz) = 37a693cb76d24243d21edf7ba08142eeae92704566049f85cd87369588cef64d69db39f813ee96a196a6367d34163a7c1f587778175dce10070af9ddced0d488 |