Compare commits
172 Commits
master
...
rhbz_12050
Author | SHA1 | Date |
---|---|---|
Laura Abbott | 1cbc899294 | |
Justin M. Forbes | a40e8afedd | |
Josh Boyer | 2758ff1123 | |
Josh Boyer | b21aff53df | |
Josh Boyer | f0cae128be | |
Josh Boyer | d1edf6d2fd | |
Justin M. Forbes | eeeb38c80a | |
Josh Boyer | 25030b1ea2 | |
Josh Boyer | 25858fdbdc | |
Josh Boyer | 60b726742b | |
Josh Boyer | 995f293459 | |
Justin M. Forbes | 0faec04810 | |
Josh Boyer | a091e2f95c | |
Nicolas Chauvet | 4f9498146c | |
Peter Robinson | ff37cae8cf | |
Josh Boyer | c21f3a3b5b | |
Justin M. Forbes | 637101daa0 | |
Josh Boyer | 02b2877393 | |
Josh Boyer | c2afb20ca9 | |
Josh Boyer | bcef09ff1a | |
Peter Robinson | 520ac5551a | |
Josh Boyer | c89e5c5172 | |
Justin M. Forbes | c41099298b | |
Josh Boyer | f692dd08ca | |
Peter Robinson | 8eb15d5503 | |
Justin M. Forbes | 338da7b70d | |
Justin M. Forbes | acf77908ea | |
Josh Boyer | ad9bbf0786 | |
Josh Boyer | f641116256 | |
Justin M. Forbes | 98a08a40e0 | |
Kyle McMartin | 47eba0ef8f | |
Kyle McMartin | 6dfd011784 | |
Josh Boyer | d75cb05955 | |
Josh Boyer | f4f6e57b25 | |
Josh Boyer | 572f0b8016 | |
Josh Boyer | af400aec62 | |
Josh Boyer | a1ef73ddf0 | |
Josh Boyer | 19bd16235d | |
Justin M. Forbes | ae3c9b8089 | |
Josh Boyer | ac91ae055e | |
Josh Boyer | 645f23846a | |
Peter Robinson | d352481967 | |
Kyle McMartin | 1fdb9a6d66 | |
Josh Boyer | 57d8c91cf8 | |
Josh Boyer | 327070fc88 | |
Josh Boyer | b510c655f9 | |
Josh Boyer | 06c1c91aad | |
Josh Boyer | 8d66ff20f0 | |
Josh Boyer | 20c2f18ff6 | |
Josh Boyer | 2f5fc4c515 | |
Josh Boyer | 30aa0da5e8 | |
Dan Horák | 18d04985f4 | |
Kyle McMartin | 0cddba9ae3 | |
Josh Boyer | 6e84c26d41 | |
Josh Boyer | 9d95825dc3 | |
Justin M. Forbes | 2384fb4b3e | |
Justin M. Forbes | b95d59c7fc | |
Justin M. Forbes | cb9feb8536 | |
Justin M. Forbes | 4a80ec24a4 | |
Josh Boyer | 75e1767eb7 | |
Josh Boyer | 7c4ed2f6f5 | |
Justin M. Forbes | 99ae61bcfe | |
Josh Boyer | f046ab9c33 | |
Josh Boyer | 8821eb3824 | |
Justin M. Forbes | 1040b10023 | |
Josh Boyer | aaa68966b7 | |
Justin M. Forbes | aa7180f4aa | |
Justin M. Forbes | 91d3be5380 | |
Justin M. Forbes | da6624c278 | |
Justin M. Forbes | 0455c71065 | |
Justin M. Forbes | c392ecaab5 | |
Justin M. Forbes | eb4ef34063 | |
Justin M. Forbes | c1b14f57bf | |
Josh Boyer | dca3c158ea | |
Josh Boyer | 5ef0eabc68 | |
Josh Boyer | 0802f28ee4 | |
Josh Boyer | 9b4c496b18 | |
Justin M. Forbes | aa5585d52d | |
Josh Boyer | 0ace95ceec | |
Josh Boyer | f5e13a9223 | |
Josh Boyer | e058acab45 | |
Josh Boyer | d994f31028 | |
Josh Boyer | 2dd7a3b242 | |
Josh Boyer | 9447008339 | |
Josh Boyer | 26223f6928 | |
Josh Boyer | f86e26e186 | |
Josh Boyer | 303b0b72c0 | |
Jonathan Dieter | 6323217284 | |
Josh Boyer | 9c837c823f | |
Josh Boyer | a581f99309 | |
Josh Boyer | 0f1e808baf | |
Josh Boyer | 2b3a01ceec | |
Josh Boyer | 59879cba34 | |
Josh Boyer | c47527ae07 | |
Kyle McMartin | 23afd37815 | |
Josh Boyer | b468f4c544 | |
Josh Boyer | d419ca08ee | |
Josh Boyer | 850c873f10 | |
Josh Boyer | 1dfa3b196c | |
Josh Boyer | 1726616e3c | |
Justin M. Forbes | b7b3386f9a | |
Kyle McMartin | b0ed76415f | |
Josh Boyer | 048351e55e | |
Kyle McMartin | f9fd7fc77f | |
Kyle McMartin | de0e5ee2cf | |
Kyle McMartin | f9cef59b07 | |
Kyle McMartin | 831ed82ff5 | |
Josh Boyer | 6494397039 | |
Josh Boyer | f1fc68cfe2 | |
Josh Boyer | ad2c413a64 | |
Peter Robinson | e3ea91edfd | |
Josh Boyer | 2296edda32 | |
Josh Boyer | a8f33ac791 | |
Josh Boyer | 27a4f9e310 | |
Josh Boyer | 4f11b5ce3c | |
Josh Boyer | f843ae18fd | |
Josh Boyer | 538c0ce2c3 | |
Josh Boyer | 229fa32699 | |
Josh Boyer | 3df10215a6 | |
Josh Boyer | 0bf585729e | |
Josh Boyer | 0b46c6ff0b | |
Josh Boyer | 109d0b6f16 | |
Josh Boyer | da40847e36 | |
Josh Boyer | 2c9cd108a4 | |
Josh Boyer | 0f515c64d4 | |
Josh Boyer | ceba876bca | |
Josh Boyer | fda0a919df | |
Josh Boyer | df525da578 | |
Josh Boyer | e4cd90ab64 | |
Josh Boyer | b4de7780e3 | |
Josh Boyer | ba6e0133e0 | |
Josh Boyer | e241709556 | |
Josh Boyer | b6c1e91353 | |
Josh Boyer | 47e136ef15 | |
Josh Boyer | b136801dab | |
Josh Boyer | 829018cf48 | |
Josh Boyer | b83226390c | |
Josh Boyer | a23edb19b0 | |
Josh Boyer | faddeb1bba | |
Josh Boyer | f76263e7e7 | |
Josh Boyer | e8f4af05e5 | |
Josh Boyer | a09cc61a29 | |
Josh Boyer | 3680d2e48d | |
Josh Boyer | 25449269cd | |
Josh Boyer | e46472556a | |
Josh Boyer | 8139576baf | |
Josh Boyer | 57e2b74eb0 | |
Josh Boyer | 475e0aea71 | |
Josh Boyer | e05d38b09b | |
Josh Boyer | c458b04758 | |
Josh Boyer | b5471817f8 | |
Josh Boyer | 5ba11d63b3 | |
Josh Boyer | 9dd942b76a | |
Josh Boyer | 6c4ba8f677 | |
Josh Boyer | b54d65c17a | |
Josh Boyer | bac843a124 | |
Kyle McMartin | a58b433337 | |
Josh Boyer | dbc4a9b8e8 | |
Josh Boyer | 15e63c946d | |
Josh Boyer | d7c14f7e1b | |
Josh Boyer | d92c81e70c | |
Josh Boyer | a357c22362 | |
Josh Boyer | 22caf8bcbe | |
Josh Boyer | 00682830a4 | |
Josh Boyer | 304c6c106f | |
Josh Boyer | 37af7eab0b | |
Josh Boyer | ad8337e450 | |
Josh Boyer | 80242f8df8 | |
Josh Boyer | 2d278dc85a | |
Josh Boyer | 5fd2783906 | |
Josh Boyer | a634cc2b7f | |
Josh Boyer | 4b5c3c4a4b |
|
@ -3,5 +3,5 @@ clog
|
|||
*.bz2
|
||||
*.rpm
|
||||
*.orig
|
||||
kernel-[23].*/
|
||||
kernel-[234].*/
|
||||
perf-man-*.tar.gz
|
||||
|
|
|
@ -1,89 +0,0 @@
|
|||
From 5573624261ab5d54f2dea2a3e09a98729db9ecd9 Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Wed, 30 Apr 2014 15:24:19 +0200
|
||||
Subject: [PATCH 1/2] acpi-video: Add 4 new models to the use_native_backlight
|
||||
dmi list
|
||||
|
||||
Acer Aspire V5-171
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=983342
|
||||
|
||||
Acer Aspire V5-471G
|
||||
Lenovo Yoga 2 11
|
||||
Reported-and-tested-by: Vincent Gerris <vgerris@gmail.com>
|
||||
|
||||
HP EliteBook 8470p
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1093120
|
||||
|
||||
Cc: stable@vger.kernel.org
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/acpi/video.c | 32 ++++++++++++++++++++++++++++++++
|
||||
1 file changed, 32 insertions(+)
|
||||
|
||||
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
|
||||
index 8b6990e..48146fc 100644
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -488,6 +488,14 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
},
|
||||
},
|
||||
{
|
||||
+ .callback = video_set_use_native_backlight,
|
||||
+ .ident = "Lenovo Yoga 2 11",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
|
||||
+ DMI_MATCH(DMI_PRODUCT_VERSION, "Lenovo Yoga 2 11"),
|
||||
+ },
|
||||
+ },
|
||||
+ {
|
||||
.callback = video_set_use_native_backlight,
|
||||
.ident = "Thinkpad Helix",
|
||||
.matches = {
|
||||
@@ -513,6 +521,14 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
},
|
||||
{
|
||||
.callback = video_set_use_native_backlight,
|
||||
+ .ident = "Acer Aspire V5-171",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
|
||||
+ DMI_MATCH(DMI_PRODUCT_NAME, "V5-171"),
|
||||
+ },
|
||||
+ },
|
||||
+ {
|
||||
+ .callback = video_set_use_native_backlight,
|
||||
.ident = "Acer Aspire V5-431",
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
|
||||
@@ -520,6 +536,14 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
},
|
||||
},
|
||||
{
|
||||
+ .callback = video_set_use_native_backlight,
|
||||
+ .ident = "Acer Aspire V5-471G",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_BOARD_VENDOR, "Acer"),
|
||||
+ DMI_MATCH(DMI_PRODUCT_NAME, "Aspire V5-471G"),
|
||||
+ },
|
||||
+ },
|
||||
+ {
|
||||
.callback = video_set_use_native_backlight,
|
||||
.ident = "HP ProBook 4340s",
|
||||
.matches = {
|
||||
@@ -571,6 +595,14 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
},
|
||||
{
|
||||
.callback = video_set_use_native_backlight,
|
||||
+ .ident = "HP EliteBook 8470p",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
|
||||
+ DMI_MATCH(DMI_PRODUCT_NAME, "HP EliteBook 8470p"),
|
||||
+ },
|
||||
+ },
|
||||
+ {
|
||||
+ .callback = video_set_use_native_backlight,
|
||||
.ident = "HP EliteBook 8780w",
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
|
||||
--
|
||||
1.9.0
|
||||
|
|
@ -1,138 +0,0 @@
|
|||
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1021036
|
||||
Upstream-status: Send upstream for 3.17
|
||||
|
||||
From 0ad19912cb324f0a356a212433ec0b2a31f61acc Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Fri, 20 Jun 2014 10:29:16 +0200
|
||||
Subject: [PATCH] ideapad-laptop: Change Lenovo Yoga 2 series rfkill handling
|
||||
|
||||
It seems that the same problems which lead to adding an rfkill blacklist and
|
||||
putting the Lenovo Yoga 2 11 on it are also present on the Lenovo Yoga 2 13
|
||||
and Lenovo Yoga 2 Pro too:
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1021036
|
||||
https://forums.lenovo.com/t5/Linux-Discussion/Yoga-2-13-not-Pro-Linux-Warning/m-p/1517612
|
||||
|
||||
Testing has shown that the firmware rfkill settings are persistent over
|
||||
reboots. So blacklisting the driver is not good enough, if the wifi is blocked
|
||||
at the firmware level the wifi needs to be explictly unblocked through the
|
||||
ideapad-laptop interface.
|
||||
|
||||
And at least on the Lenovo Yoga 2 13 the VPCCMD_RF register which on devices
|
||||
with hardware kill switch reports the hardware switch state, needs to be
|
||||
explictly set to 1 (radio enabled / not blocked).
|
||||
|
||||
So this patch does 3 things to get proper rfkill handling on these models:
|
||||
|
||||
1) Instead of blacklisting the rfkill functionality, which means that people
|
||||
with a firmware blocked wifi get stuck in that situation, ignore the value
|
||||
reported by the not present hardware rfkill switch, as this is what is causing
|
||||
ideapad-laptop to wrongly report all radios as hardware blocks. But do register
|
||||
the rfkill interfaces so that the user can soft [un]block them.
|
||||
|
||||
2) On models without a hardware rfkill switch, explictly set VPCCMD_RF to 1
|
||||
|
||||
3) Drop the " 11" postfix from the dmi match string, as the entire Yoga 2
|
||||
series is affected.
|
||||
|
||||
Yoga 2 11:
|
||||
Reported-and-tested-by: Vincent Gerris <vgerris@gmail.com>
|
||||
|
||||
Yoga 2 13:
|
||||
Tested-by: madls05 <http://ubuntuforums.org/showthread.php?t=2215044>
|
||||
|
||||
Yoga 2 Pro:
|
||||
Reported-and-tested-by: Peter F. Patel-Schneider <pfpschneider@gmail.com>
|
||||
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/platform/x86/ideapad-laptop.c | 41 +++++++++++++++++++++++------------
|
||||
1 file changed, 27 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c
|
||||
index b4c495a..b0e3a2e 100644
|
||||
--- a/drivers/platform/x86/ideapad-laptop.c
|
||||
+++ b/drivers/platform/x86/ideapad-laptop.c
|
||||
@@ -87,6 +87,7 @@ struct ideapad_private {
|
||||
struct backlight_device *blightdev;
|
||||
struct dentry *debug;
|
||||
unsigned long cfg;
|
||||
+ bool has_hw_rfkill_switch;
|
||||
};
|
||||
|
||||
static bool no_bt_rfkill;
|
||||
@@ -473,12 +474,14 @@ static struct rfkill_ops ideapad_rfk_ops = {
|
||||
|
||||
static void ideapad_sync_rfk_state(struct ideapad_private *priv)
|
||||
{
|
||||
- unsigned long hw_blocked;
|
||||
+ unsigned long hw_blocked = 0;
|
||||
int i;
|
||||
|
||||
- if (read_ec_data(priv->adev->handle, VPCCMD_R_RF, &hw_blocked))
|
||||
- return;
|
||||
- hw_blocked = !hw_blocked;
|
||||
+ if (priv->has_hw_rfkill_switch) {
|
||||
+ if (read_ec_data(priv->adev->handle, VPCCMD_R_RF, &hw_blocked))
|
||||
+ return;
|
||||
+ hw_blocked = !hw_blocked;
|
||||
+ }
|
||||
|
||||
for (i = 0; i < IDEAPAD_RFKILL_DEV_NUM; i++)
|
||||
if (priv->rfk[i])
|
||||
@@ -821,14 +824,17 @@ static void ideapad_acpi_notify(acpi_handle handle, u32 event, void *data)
|
||||
}
|
||||
}
|
||||
|
||||
-/* Blacklist for devices where the ideapad rfkill interface does not work */
|
||||
-static struct dmi_system_id rfkill_blacklist[] = {
|
||||
- /* The Lenovo Yoga 2 11 always reports everything as blocked */
|
||||
+/*
|
||||
+ * Some ideapads don't have a hardware rfkill switch, reading VPCCMD_R_RF
|
||||
+ * always results in 0 on these models, causing ideapad_laptop to wrongly
|
||||
+ * report all radios as hardware-blocked.
|
||||
+ */
|
||||
+static struct dmi_system_id no_hw_rfkill_list[] = {
|
||||
{
|
||||
- .ident = "Lenovo Yoga 2 11",
|
||||
+ .ident = "Lenovo Yoga 2 11 / 13 / Pro",
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
|
||||
- DMI_MATCH(DMI_PRODUCT_VERSION, "Lenovo Yoga 2 11"),
|
||||
+ DMI_MATCH(DMI_PRODUCT_VERSION, "Lenovo Yoga 2"),
|
||||
},
|
||||
},
|
||||
{}
|
||||
@@ -856,6 +862,7 @@ static int ideapad_acpi_add(struct platform_device *pdev)
|
||||
priv->cfg = cfg;
|
||||
priv->adev = adev;
|
||||
priv->platform_device = pdev;
|
||||
+ priv->has_hw_rfkill_switch = !dmi_check_system(no_hw_rfkill_list);
|
||||
|
||||
ret = ideapad_sysfs_init(priv);
|
||||
if (ret)
|
||||
@@ -869,11 +876,17 @@ static int ideapad_acpi_add(struct platform_device *pdev)
|
||||
if (ret)
|
||||
goto input_failed;
|
||||
|
||||
- if (!dmi_check_system(rfkill_blacklist)) {
|
||||
- for (i = 0; i < IDEAPAD_RFKILL_DEV_NUM; i++)
|
||||
- if (test_bit(ideapad_rfk_data[i].cfgbit, &priv->cfg))
|
||||
- ideapad_register_rfkill(priv, i);
|
||||
- }
|
||||
+ /*
|
||||
+ * On some models without a hw-switch (the yoga 2 13 at least)
|
||||
+ * VPCCMD_W_RF must be explicitly set to 1 for the wifi to work.
|
||||
+ */
|
||||
+ if (!priv->has_hw_rfkill_switch)
|
||||
+ write_ec_cmd(priv->adev->handle, VPCCMD_W_RF, 1);
|
||||
+
|
||||
+ for (i = 0; i < IDEAPAD_RFKILL_DEV_NUM; i++)
|
||||
+ if (test_bit(ideapad_rfk_data[i].cfgbit, &priv->cfg))
|
||||
+ ideapad_register_rfkill(priv, i);
|
||||
+
|
||||
ideapad_sync_rfk_state(priv);
|
||||
ideapad_sync_touchpad_state(priv);
|
||||
|
||||
--
|
||||
2.0.0
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
From 1f16ea294d2ef63013740f4c8539e430b6c12dff Mon Sep 17 00:00:00 2001
|
||||
From: Johannes Berg <johannes.berg@intel.com>
|
||||
Date: Fri, 6 Mar 2015 09:17:37 +0100
|
||||
Subject: [PATCH] iwlwifi: mvm: remove WARN_ON for invalid BA notification
|
||||
|
||||
The firmware frequently manages to trigger this, and there's
|
||||
no known driver workaround, so stop warning.
|
||||
|
||||
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
||||
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
|
||||
---
|
||||
drivers/net/wireless/iwlwifi/mvm/tx.c | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/iwlwifi/mvm/tx.c b/drivers/net/wireless/iwlwifi/mvm/tx.c
|
||||
index 07304e1..96a0540 100644
|
||||
--- a/drivers/net/wireless/iwlwifi/mvm/tx.c
|
||||
+++ b/drivers/net/wireless/iwlwifi/mvm/tx.c
|
||||
@@ -949,8 +949,10 @@ int iwl_mvm_rx_ba_notif(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb,
|
||||
mvmsta = iwl_mvm_sta_from_mac80211(sta);
|
||||
tid_data = &mvmsta->tid_data[tid];
|
||||
|
||||
- if (WARN_ONCE(tid_data->txq_id != scd_flow, "Q %d, tid %d, flow %d",
|
||||
- tid_data->txq_id, tid, scd_flow)) {
|
||||
+ if (tid_data->txq_id != scd_flow) {
|
||||
+ IWL_ERR(mvm,
|
||||
+ "invalid BA notification: Q %d, tid %d, flow %d\n",
|
||||
+ tid_data->txq_id, tid, scd_flow);
|
||||
rcu_read_unlock();
|
||||
return 0;
|
||||
}
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Mar 2012 08:39:37 -0500
|
||||
Subject: [PATCH] ACPI: Limit access to custom_method
|
||||
|
||||
custom_method effectively allows arbitrary access to system memory, making
|
||||
it possible for an attacker to circumvent restrictions on module loading.
|
||||
Disable it if any such restrictions have been enabled.
|
||||
|
||||
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
---
|
||||
drivers/acpi/custom_method.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/drivers/acpi/custom_method.c b/drivers/acpi/custom_method.c
|
||||
index c68e72414a67..4277938af700 100644
|
||||
--- a/drivers/acpi/custom_method.c
|
||||
+++ b/drivers/acpi/custom_method.c
|
||||
@@ -29,6 +29,9 @@ static ssize_t cm_write(struct file *file, const char __user * user_buf,
|
||||
struct acpi_table_header table;
|
||||
acpi_status status;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
if (!(*ppos)) {
|
||||
/* parse the table header to get the table length */
|
||||
if (count <= sizeof(struct acpi_table_header))
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
From: Peter Robinson <pbrobinson@gmail.com>
|
||||
Date: Thu, 3 May 2012 20:27:11 +0100
|
||||
Subject: [PATCH] ARM: tegra: usb no reset
|
||||
|
||||
Patch for disconnect issues with storage attached to a
|
||||
tegra-ehci controller
|
||||
---
|
||||
drivers/usb/core/hub.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
|
||||
index b4bfa3ac4b12..1753af78b2b2 100644
|
||||
--- a/drivers/usb/core/hub.c
|
||||
+++ b/drivers/usb/core/hub.c
|
||||
@@ -5021,6 +5021,13 @@ static void hub_event(struct work_struct *work)
|
||||
(u16) hub->change_bits[0],
|
||||
(u16) hub->event_bits[0]);
|
||||
|
||||
+ /* Don't disconnect USB-SATA on TrimSlice */
|
||||
+ if (strcmp(dev_name(hdev->bus->controller), "tegra-ehci.0") == 0) {
|
||||
+ if ((hdev->state == 7) && (hub->change_bits[0] == 0) &&
|
||||
+ (hub->event_bits[0] == 0x2))
|
||||
+ hub->event_bits[0] = 0;
|
||||
+ }
|
||||
+
|
||||
/* Lock the device, then check to see if we were
|
||||
* disconnected while waiting for the lock to succeed. */
|
||||
usb_lock_device(hdev);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
From: Dave Howells <dhowells@redhat.com>
|
||||
Date: Tue, 23 Oct 2012 09:30:54 -0400
|
||||
Subject: [PATCH] Add EFI signature data types
|
||||
|
||||
Add the data types that are used for containing hashes, keys and certificates
|
||||
for cryptographic verification.
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard for now
|
||||
|
||||
Signed-off-by: David Howells <dhowells@redhat.com>
|
||||
---
|
||||
include/linux/efi.h | 20 ++++++++++++++++++++
|
||||
1 file changed, 20 insertions(+)
|
||||
|
||||
diff --git a/include/linux/efi.h b/include/linux/efi.h
|
||||
index 16ec1c00919d..b7cb7dc5ebb4 100644
|
||||
--- a/include/linux/efi.h
|
||||
+++ b/include/linux/efi.h
|
||||
@@ -589,6 +589,12 @@ void efi_native_runtime_setup(void);
|
||||
#define DEVICE_TREE_GUID \
|
||||
EFI_GUID( 0xb1b621d5, 0xf19c, 0x41a5, 0x83, 0x0b, 0xd9, 0x15, 0x2c, 0x69, 0xaa, 0xe0 )
|
||||
|
||||
+#define EFI_CERT_SHA256_GUID \
|
||||
+ EFI_GUID( 0xc1c41626, 0x504c, 0x4092, 0xac, 0xa9, 0x41, 0xf9, 0x36, 0x93, 0x43, 0x28 )
|
||||
+
|
||||
+#define EFI_CERT_X509_GUID \
|
||||
+ EFI_GUID( 0xa5c059a1, 0x94e4, 0x4aa7, 0x87, 0xb5, 0xab, 0x15, 0x5c, 0x2b, 0xf0, 0x72 )
|
||||
+
|
||||
typedef struct {
|
||||
efi_guid_t guid;
|
||||
u64 table;
|
||||
@@ -804,6 +810,20 @@ typedef struct _efi_file_io_interface {
|
||||
|
||||
#define EFI_INVALID_TABLE_ADDR (~0UL)
|
||||
|
||||
+typedef struct {
|
||||
+ efi_guid_t signature_owner;
|
||||
+ u8 signature_data[];
|
||||
+} efi_signature_data_t;
|
||||
+
|
||||
+typedef struct {
|
||||
+ efi_guid_t signature_type;
|
||||
+ u32 signature_list_size;
|
||||
+ u32 signature_header_size;
|
||||
+ u32 signature_size;
|
||||
+ u8 signature_header[];
|
||||
+ /* efi_signature_data_t signatures[][] */
|
||||
+} efi_signature_list_t;
|
||||
+
|
||||
/*
|
||||
* All runtime access to EFI goes through this structure:
|
||||
*/
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,178 @@
|
|||
From: Dave Howells <dhowells@redhat.com>
|
||||
Date: Tue, 23 Oct 2012 09:36:28 -0400
|
||||
Subject: [PATCH] Add an EFI signature blob parser and key loader.
|
||||
|
||||
X.509 certificates are loaded into the specified keyring as asymmetric type
|
||||
keys.
|
||||
|
||||
Signed-off-by: David Howells <dhowells@redhat.com>
|
||||
---
|
||||
crypto/asymmetric_keys/Kconfig | 8 +++
|
||||
crypto/asymmetric_keys/Makefile | 1 +
|
||||
crypto/asymmetric_keys/efi_parser.c | 109 ++++++++++++++++++++++++++++++++++++
|
||||
include/linux/efi.h | 4 ++
|
||||
4 files changed, 122 insertions(+)
|
||||
create mode 100644 crypto/asymmetric_keys/efi_parser.c
|
||||
|
||||
diff --git a/crypto/asymmetric_keys/Kconfig b/crypto/asymmetric_keys/Kconfig
|
||||
index 4870f28403f5..4a1b50d73b80 100644
|
||||
--- a/crypto/asymmetric_keys/Kconfig
|
||||
+++ b/crypto/asymmetric_keys/Kconfig
|
||||
@@ -67,4 +67,12 @@ config SIGNED_PE_FILE_VERIFICATION
|
||||
This option provides support for verifying the signature(s) on a
|
||||
signed PE binary.
|
||||
|
||||
+config EFI_SIGNATURE_LIST_PARSER
|
||||
+ bool "EFI signature list parser"
|
||||
+ depends on EFI
|
||||
+ select X509_CERTIFICATE_PARSER
|
||||
+ help
|
||||
+ This option provides support for parsing EFI signature lists for
|
||||
+ X.509 certificates and turning them into keys.
|
||||
+
|
||||
endif # ASYMMETRIC_KEY_TYPE
|
||||
diff --git a/crypto/asymmetric_keys/Makefile b/crypto/asymmetric_keys/Makefile
|
||||
index e47fcd9ac5e8..6512f6596785 100644
|
||||
--- a/crypto/asymmetric_keys/Makefile
|
||||
+++ b/crypto/asymmetric_keys/Makefile
|
||||
@@ -8,6 +8,7 @@ asymmetric_keys-y := asymmetric_type.o signature.o
|
||||
|
||||
obj-$(CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE) += public_key.o
|
||||
obj-$(CONFIG_PUBLIC_KEY_ALGO_RSA) += rsa.o
|
||||
+obj-$(CONFIG_EFI_SIGNATURE_LIST_PARSER) += efi_parser.o
|
||||
|
||||
#
|
||||
# X.509 Certificate handling
|
||||
diff --git a/crypto/asymmetric_keys/efi_parser.c b/crypto/asymmetric_keys/efi_parser.c
|
||||
new file mode 100644
|
||||
index 000000000000..424896a0b169
|
||||
--- /dev/null
|
||||
+++ b/crypto/asymmetric_keys/efi_parser.c
|
||||
@@ -0,0 +1,109 @@
|
||||
+/* EFI signature/key/certificate list parser
|
||||
+ *
|
||||
+ * Copyright (C) 2012 Red Hat, Inc. All Rights Reserved.
|
||||
+ * Written by David Howells (dhowells@redhat.com)
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU General Public Licence
|
||||
+ * as published by the Free Software Foundation; either version
|
||||
+ * 2 of the Licence, or (at your option) any later version.
|
||||
+ */
|
||||
+
|
||||
+#define pr_fmt(fmt) "EFI: "fmt
|
||||
+#include <linux/module.h>
|
||||
+#include <linux/printk.h>
|
||||
+#include <linux/err.h>
|
||||
+#include <linux/efi.h>
|
||||
+#include <keys/asymmetric-type.h>
|
||||
+
|
||||
+static __initdata efi_guid_t efi_cert_x509_guid = EFI_CERT_X509_GUID;
|
||||
+
|
||||
+/**
|
||||
+ * parse_efi_signature_list - Parse an EFI signature list for certificates
|
||||
+ * @data: The data blob to parse
|
||||
+ * @size: The size of the data blob
|
||||
+ * @keyring: The keyring to add extracted keys to
|
||||
+ */
|
||||
+int __init parse_efi_signature_list(const void *data, size_t size, struct key *keyring)
|
||||
+{
|
||||
+ unsigned offs = 0;
|
||||
+ size_t lsize, esize, hsize, elsize;
|
||||
+
|
||||
+ pr_devel("-->%s(,%zu)\n", __func__, size);
|
||||
+
|
||||
+ while (size > 0) {
|
||||
+ efi_signature_list_t list;
|
||||
+ const efi_signature_data_t *elem;
|
||||
+ key_ref_t key;
|
||||
+
|
||||
+ if (size < sizeof(list))
|
||||
+ return -EBADMSG;
|
||||
+
|
||||
+ memcpy(&list, data, sizeof(list));
|
||||
+ pr_devel("LIST[%04x] guid=%pUl ls=%x hs=%x ss=%x\n",
|
||||
+ offs,
|
||||
+ list.signature_type.b, list.signature_list_size,
|
||||
+ list.signature_header_size, list.signature_size);
|
||||
+
|
||||
+ lsize = list.signature_list_size;
|
||||
+ hsize = list.signature_header_size;
|
||||
+ esize = list.signature_size;
|
||||
+ elsize = lsize - sizeof(list) - hsize;
|
||||
+
|
||||
+ if (lsize > size) {
|
||||
+ pr_devel("<--%s() = -EBADMSG [overrun @%x]\n",
|
||||
+ __func__, offs);
|
||||
+ return -EBADMSG;
|
||||
+ }
|
||||
+ if (lsize < sizeof(list) ||
|
||||
+ lsize - sizeof(list) < hsize ||
|
||||
+ esize < sizeof(*elem) ||
|
||||
+ elsize < esize ||
|
||||
+ elsize % esize != 0) {
|
||||
+ pr_devel("- bad size combo @%x\n", offs);
|
||||
+ return -EBADMSG;
|
||||
+ }
|
||||
+
|
||||
+ if (efi_guidcmp(list.signature_type, efi_cert_x509_guid) != 0) {
|
||||
+ data += lsize;
|
||||
+ size -= lsize;
|
||||
+ offs += lsize;
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
+ data += sizeof(list) + hsize;
|
||||
+ size -= sizeof(list) + hsize;
|
||||
+ offs += sizeof(list) + hsize;
|
||||
+
|
||||
+ for (; elsize > 0; elsize -= esize) {
|
||||
+ elem = data;
|
||||
+
|
||||
+ pr_devel("ELEM[%04x]\n", offs);
|
||||
+
|
||||
+ key = key_create_or_update(
|
||||
+ make_key_ref(keyring, 1),
|
||||
+ "asymmetric",
|
||||
+ NULL,
|
||||
+ &elem->signature_data,
|
||||
+ esize - sizeof(*elem),
|
||||
+ (KEY_POS_ALL & ~KEY_POS_SETATTR) |
|
||||
+ KEY_USR_VIEW,
|
||||
+ KEY_ALLOC_NOT_IN_QUOTA |
|
||||
+ KEY_ALLOC_TRUSTED);
|
||||
+
|
||||
+ if (IS_ERR(key))
|
||||
+ pr_err("Problem loading in-kernel X.509 certificate (%ld)\n",
|
||||
+ PTR_ERR(key));
|
||||
+ else
|
||||
+ pr_notice("Loaded cert '%s' linked to '%s'\n",
|
||||
+ key_ref_to_ptr(key)->description,
|
||||
+ keyring->description);
|
||||
+
|
||||
+ data += esize;
|
||||
+ size -= esize;
|
||||
+ offs += esize;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
diff --git a/include/linux/efi.h b/include/linux/efi.h
|
||||
index b7cb7dc5ebb4..fb972b96959a 100644
|
||||
--- a/include/linux/efi.h
|
||||
+++ b/include/linux/efi.h
|
||||
@@ -923,6 +923,10 @@ extern bool efi_poweroff_required(void);
|
||||
char * __init efi_md_typeattr_format(char *buf, size_t size,
|
||||
const efi_memory_desc_t *md);
|
||||
|
||||
+struct key;
|
||||
+extern int __init parse_efi_signature_list(const void *data, size_t size,
|
||||
+ struct key *keyring);
|
||||
+
|
||||
/**
|
||||
* efi_range_is_wc - check the WC bit on an address range
|
||||
* @start: starting kvirt address
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,185 @@
|
|||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Aug 2013 18:36:30 -0400
|
||||
Subject: [PATCH] Add option to automatically enforce module signatures when in
|
||||
Secure Boot mode
|
||||
|
||||
UEFI Secure Boot provides a mechanism for ensuring that the firmware will
|
||||
only load signed bootloaders and kernels. Certain use cases may also
|
||||
require that all kernel modules also be signed. Add a configuration option
|
||||
that enforces this automatically when enabled.
|
||||
|
||||
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
---
|
||||
Documentation/x86/zero-page.txt | 2 ++
|
||||
arch/x86/Kconfig | 10 ++++++++++
|
||||
arch/x86/boot/compressed/eboot.c | 36 +++++++++++++++++++++++++++++++++++
|
||||
arch/x86/include/uapi/asm/bootparam.h | 3 ++-
|
||||
arch/x86/kernel/setup.c | 6 ++++++
|
||||
include/linux/module.h | 6 ++++++
|
||||
kernel/module.c | 7 +++++++
|
||||
7 files changed, 69 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Documentation/x86/zero-page.txt b/Documentation/x86/zero-page.txt
|
||||
index 199f453cb4de..ec38acf00b40 100644
|
||||
--- a/Documentation/x86/zero-page.txt
|
||||
+++ b/Documentation/x86/zero-page.txt
|
||||
@@ -30,6 +30,8 @@ Offset Proto Name Meaning
|
||||
1E9/001 ALL eddbuf_entries Number of entries in eddbuf (below)
|
||||
1EA/001 ALL edd_mbr_sig_buf_entries Number of entries in edd_mbr_sig_buffer
|
||||
(below)
|
||||
+1EB/001 ALL kbd_status Numlock is enabled
|
||||
+1EC/001 ALL secure_boot Secure boot is enabled in the firmware
|
||||
1EF/001 ALL sentinel Used to detect broken bootloaders
|
||||
290/040 ALL edd_mbr_sig_buffer EDD MBR signatures
|
||||
2D0/A00 ALL e820_map E820 memory map table
|
||||
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
|
||||
index 0dc9d0144a27..58273956750d 100644
|
||||
--- a/arch/x86/Kconfig
|
||||
+++ b/arch/x86/Kconfig
|
||||
@@ -1660,6 +1660,16 @@ config EFI_MIXED
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
+config EFI_SECURE_BOOT_SIG_ENFORCE
|
||||
+ def_bool n
|
||||
+ prompt "Force module signing when UEFI Secure Boot is enabled"
|
||||
+ ---help---
|
||||
+ UEFI Secure Boot provides a mechanism for ensuring that the
|
||||
+ firmware will only load signed bootloaders and kernels. Certain
|
||||
+ use cases may also require that all kernel modules also be signed.
|
||||
+ Say Y here to automatically enable module signature enforcement
|
||||
+ when a system boots with UEFI Secure Boot enabled.
|
||||
+
|
||||
config SECCOMP
|
||||
def_bool y
|
||||
prompt "Enable seccomp to safely compute untrusted bytecode"
|
||||
diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c
|
||||
index 92b9a5f2aed6..2192da755e34 100644
|
||||
--- a/arch/x86/boot/compressed/eboot.c
|
||||
+++ b/arch/x86/boot/compressed/eboot.c
|
||||
@@ -12,6 +12,7 @@
|
||||
#include <asm/efi.h>
|
||||
#include <asm/setup.h>
|
||||
#include <asm/desc.h>
|
||||
+#include <asm/bootparam_utils.h>
|
||||
|
||||
#undef memcpy /* Use memcpy from misc.c */
|
||||
|
||||
@@ -828,6 +829,37 @@ out:
|
||||
return status;
|
||||
}
|
||||
|
||||
+static int get_secure_boot(void)
|
||||
+{
|
||||
+ u8 sb, setup;
|
||||
+ unsigned long datasize = sizeof(sb);
|
||||
+ efi_guid_t var_guid = EFI_GLOBAL_VARIABLE_GUID;
|
||||
+ efi_status_t status;
|
||||
+
|
||||
+ status = efi_early->call((unsigned long)sys_table->runtime->get_variable,
|
||||
+ L"SecureBoot", &var_guid, NULL, &datasize, &sb);
|
||||
+
|
||||
+ if (status != EFI_SUCCESS)
|
||||
+ return 0;
|
||||
+
|
||||
+ if (sb == 0)
|
||||
+ return 0;
|
||||
+
|
||||
+
|
||||
+ status = efi_early->call((unsigned long)sys_table->runtime->get_variable,
|
||||
+ L"SetupMode", &var_guid, NULL, &datasize,
|
||||
+ &setup);
|
||||
+
|
||||
+ if (status != EFI_SUCCESS)
|
||||
+ return 0;
|
||||
+
|
||||
+ if (setup == 1)
|
||||
+ return 0;
|
||||
+
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
+
|
||||
/*
|
||||
* See if we have Graphics Output Protocol
|
||||
*/
|
||||
@@ -1407,6 +1439,10 @@ struct boot_params *efi_main(struct efi_config *c,
|
||||
else
|
||||
setup_boot_services32(efi_early);
|
||||
|
||||
+ sanitize_boot_params(boot_params);
|
||||
+
|
||||
+ boot_params->secure_boot = get_secure_boot();
|
||||
+
|
||||
setup_graphics(boot_params);
|
||||
|
||||
setup_efi_pci(boot_params);
|
||||
diff --git a/arch/x86/include/uapi/asm/bootparam.h b/arch/x86/include/uapi/asm/bootparam.h
|
||||
index 225b0988043a..90dbfb73e11f 100644
|
||||
--- a/arch/x86/include/uapi/asm/bootparam.h
|
||||
+++ b/arch/x86/include/uapi/asm/bootparam.h
|
||||
@@ -133,7 +133,8 @@ struct boot_params {
|
||||
__u8 eddbuf_entries; /* 0x1e9 */
|
||||
__u8 edd_mbr_sig_buf_entries; /* 0x1ea */
|
||||
__u8 kbd_status; /* 0x1eb */
|
||||
- __u8 _pad5[3]; /* 0x1ec */
|
||||
+ __u8 secure_boot; /* 0x1ec */
|
||||
+ __u8 _pad5[2]; /* 0x1ed */
|
||||
/*
|
||||
* The sentinel is set to a nonzero value (0xff) in header.S.
|
||||
*
|
||||
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
|
||||
index ab4734e5411d..5d52d67d5097 100644
|
||||
--- a/arch/x86/kernel/setup.c
|
||||
+++ b/arch/x86/kernel/setup.c
|
||||
@@ -1152,6 +1152,12 @@ void __init setup_arch(char **cmdline_p)
|
||||
|
||||
io_delay_init();
|
||||
|
||||
+#ifdef CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE
|
||||
+ if (boot_params.secure_boot) {
|
||||
+ enforce_signed_modules();
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
/*
|
||||
* Parse the ACPI tables for possible boot-time SMP configuration.
|
||||
*/
|
||||
diff --git a/include/linux/module.h b/include/linux/module.h
|
||||
index d4b96d6c926a..c47f75720dbd 100644
|
||||
--- a/include/linux/module.h
|
||||
+++ b/include/linux/module.h
|
||||
@@ -188,6 +188,12 @@ const struct exception_table_entry *search_exception_tables(unsigned long add);
|
||||
|
||||
struct notifier_block;
|
||||
|
||||
+#ifdef CONFIG_MODULE_SIG
|
||||
+extern void enforce_signed_modules(void);
|
||||
+#else
|
||||
+static inline void enforce_signed_modules(void) {};
|
||||
+#endif
|
||||
+
|
||||
#ifdef CONFIG_MODULES
|
||||
|
||||
extern int modules_disabled; /* for sysctl */
|
||||
diff --git a/kernel/module.c b/kernel/module.c
|
||||
index 98c3d7955a51..6244f24abe27 100644
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -3896,6 +3896,13 @@ void module_layout(struct module *mod,
|
||||
EXPORT_SYMBOL(module_layout);
|
||||
#endif
|
||||
|
||||
+#ifdef CONFIG_MODULE_SIG
|
||||
+void enforce_signed_modules(void)
|
||||
+{
|
||||
+ sig_enforce = true;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
bool secure_modules(void)
|
||||
{
|
||||
#ifdef CONFIG_MODULE_SIG
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Aug 2013 17:58:15 -0400
|
||||
Subject: [PATCH] Add secure_modules() call
|
||||
|
||||
Provide a single call to allow kernel code to determine whether the system
|
||||
has been configured to either disable module loading entirely or to load
|
||||
only modules signed with a trusted key.
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard. Replaced by securelevels, but that was nak'd
|
||||
|
||||
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
---
|
||||
include/linux/module.h | 7 +++++++
|
||||
kernel/module.c | 10 ++++++++++
|
||||
2 files changed, 17 insertions(+)
|
||||
|
||||
diff --git a/include/linux/module.h b/include/linux/module.h
|
||||
index b653d7c0a05a..d4b96d6c926a 100644
|
||||
--- a/include/linux/module.h
|
||||
+++ b/include/linux/module.h
|
||||
@@ -502,6 +502,8 @@ int unregister_module_notifier(struct notifier_block *nb);
|
||||
|
||||
extern void print_modules(void);
|
||||
|
||||
+extern bool secure_modules(void);
|
||||
+
|
||||
#else /* !CONFIG_MODULES... */
|
||||
|
||||
/* Given an address, look for it in the exception tables. */
|
||||
@@ -612,6 +614,11 @@ static inline int unregister_module_notifier(struct notifier_block *nb)
|
||||
static inline void print_modules(void)
|
||||
{
|
||||
}
|
||||
+
|
||||
+static inline bool secure_modules(void)
|
||||
+{
|
||||
+ return false;
|
||||
+}
|
||||
#endif /* CONFIG_MODULES */
|
||||
|
||||
#ifdef CONFIG_SYSFS
|
||||
diff --git a/kernel/module.c b/kernel/module.c
|
||||
index d856e96a3cce..98c3d7955a51 100644
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -3895,3 +3895,13 @@ void module_layout(struct module *mod,
|
||||
}
|
||||
EXPORT_SYMBOL(module_layout);
|
||||
#endif
|
||||
+
|
||||
+bool secure_modules(void)
|
||||
+{
|
||||
+#ifdef CONFIG_MODULE_SIG
|
||||
+ return (sig_enforce || modules_disabled);
|
||||
+#else
|
||||
+ return modules_disabled;
|
||||
+#endif
|
||||
+}
|
||||
+EXPORT_SYMBOL(secure_modules);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,11 +1,9 @@
|
|||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard
|
||||
|
||||
From 603230771bdbca78e6530d29dbe8b239cdcc8473 Mon Sep 17 00:00:00 2001
|
||||
From: Kyle McMartin <kyle@redhat.com>
|
||||
Date: Fri, 30 Aug 2013 09:28:51 -0400
|
||||
Subject: [PATCH] Add sysrq option to disable secure boot mode
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard
|
||||
---
|
||||
arch/x86/kernel/setup.c | 36 ++++++++++++++++++++++++++++++++++++
|
||||
drivers/input/misc/uinput.c | 1 +
|
||||
|
@ -17,7 +15,7 @@ Subject: [PATCH] Add sysrq option to disable secure boot mode
|
|||
7 files changed, 65 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
|
||||
index 5ce785fc9f05..2024cbb7169b 100644
|
||||
index b40d6174242f..0ee7749bad74 100644
|
||||
--- a/arch/x86/kernel/setup.c
|
||||
+++ b/arch/x86/kernel/setup.c
|
||||
@@ -70,6 +70,11 @@
|
||||
|
@ -32,7 +30,7 @@ index 5ce785fc9f05..2024cbb7169b 100644
|
|||
#include <video/edid.h>
|
||||
|
||||
#include <asm/mtrr.h>
|
||||
@@ -1268,6 +1273,37 @@ void __init i386_reserve_resources(void)
|
||||
@@ -1277,6 +1282,37 @@ void __init i386_reserve_resources(void)
|
||||
|
||||
#endif /* CONFIG_X86_32 */
|
||||
|
||||
|
@ -71,10 +69,10 @@ index 5ce785fc9f05..2024cbb7169b 100644
|
|||
.notifier_call = dump_kernel_offset
|
||||
};
|
||||
diff --git a/drivers/input/misc/uinput.c b/drivers/input/misc/uinput.c
|
||||
index 856936247500..1e87a1ea704b 100644
|
||||
index 421e29e4cd81..61c1eb97806c 100644
|
||||
--- a/drivers/input/misc/uinput.c
|
||||
+++ b/drivers/input/misc/uinput.c
|
||||
@@ -353,6 +353,7 @@ static int uinput_allocate_device(struct uinput_device *udev)
|
||||
@@ -366,6 +366,7 @@ static int uinput_allocate_device(struct uinput_device *udev)
|
||||
if (!udev->dev)
|
||||
return -ENOMEM;
|
||||
|
||||
|
@ -83,7 +81,7 @@ index 856936247500..1e87a1ea704b 100644
|
|||
input_set_drvdata(udev->dev, udev);
|
||||
|
||||
diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
|
||||
index 454b65898e2c..19d67594a3b8 100644
|
||||
index 42bad18c66c9..496e073b09d7 100644
|
||||
--- a/drivers/tty/sysrq.c
|
||||
+++ b/drivers/tty/sysrq.c
|
||||
@@ -463,6 +463,7 @@ static struct sysrq_key_op *sysrq_key_table[36] = {
|
||||
|
@ -217,23 +215,23 @@ index 387fa7d05c98..4b07e30b3279 100644
|
|||
int unregister_sysrq_key(int key, struct sysrq_key_op *op);
|
||||
struct sysrq_key_op *__sysrq_get_key_op(int key);
|
||||
diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb_main.c
|
||||
index 2f7c760305ca..abb29d9811af 100644
|
||||
index 60f6bb817f70..c0a20ee0ad96 100644
|
||||
--- a/kernel/debug/kdb/kdb_main.c
|
||||
+++ b/kernel/debug/kdb/kdb_main.c
|
||||
@@ -1924,7 +1924,7 @@ static int kdb_sr(int argc, const char **argv)
|
||||
if (argc != 1)
|
||||
@@ -1968,7 +1968,7 @@ static int kdb_sr(int argc, const char **argv)
|
||||
return KDB_ARGCOUNT;
|
||||
|
||||
kdb_trap_printk++;
|
||||
- __handle_sysrq(*argv[1], false);
|
||||
+ __handle_sysrq(*argv[1], SYSRQ_FROM_KERNEL);
|
||||
- __handle_sysrq(*argv[1], check_mask);
|
||||
+ __handle_sysrq(*argv[1], check_mask & SYSRQ_FROM_KERNEL);
|
||||
kdb_trap_printk--;
|
||||
|
||||
return 0;
|
||||
diff --git a/kernel/module.c b/kernel/module.c
|
||||
index 452079124fb7..37dabbc1e902 100644
|
||||
index 6244f24abe27..b77554170d76 100644
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -109,9 +109,9 @@ struct list_head *kdb_modules = &modules; /* kdb needs the list of modules */
|
||||
@@ -107,9 +107,9 @@ struct list_head *kdb_modules = &modules; /* kdb needs the list of modules */
|
||||
|
||||
#ifdef CONFIG_MODULE_SIG
|
||||
#ifdef CONFIG_MODULE_SIG_FORCE
|
||||
|
@ -246,5 +244,5 @@ index 452079124fb7..37dabbc1e902 100644
|
|||
static int param_set_bool_enable_only(const char *val,
|
||||
const struct kernel_param *kp)
|
||||
--
|
||||
1.9.3
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
From: Alexander Ploumistos <alex.ploumistos@gmail.com>
|
||||
Date: Fri, 13 Feb 2015 21:05:11 +0200
|
||||
Subject: [PATCH] Bluetooth: ath3k: Add support Atheros AR5B195 combo Mini PCIe
|
||||
card
|
||||
|
||||
Add 04f2:aff1 to ath3k.c supported devices list and btusb.c blacklist, so
|
||||
that the device can load the ath3k firmware and re-enumerate itself as an
|
||||
AR3011 device.
|
||||
|
||||
T: Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
|
||||
D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
|
||||
P: Vendor=04f2 ProdID=aff1 Rev= 0.01
|
||||
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
|
||||
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
|
||||
E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
|
||||
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
|
||||
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
|
||||
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
|
||||
E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
|
||||
E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
|
||||
I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
|
||||
E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms
|
||||
E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms
|
||||
I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
|
||||
E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms
|
||||
E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms
|
||||
I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
|
||||
E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms
|
||||
E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms
|
||||
I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
|
||||
E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms
|
||||
E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms
|
||||
I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
|
||||
E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
|
||||
E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms
|
||||
|
||||
Signed-off-by: Alexander Ploumistos <alexpl@fedoraproject.org>
|
||||
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
|
||||
Cc: stable@vger.kernel.org
|
||||
---
|
||||
drivers/bluetooth/ath3k.c | 1 +
|
||||
drivers/bluetooth/btusb.c | 1 +
|
||||
2 files changed, 2 insertions(+)
|
||||
|
||||
diff --git a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
|
||||
index de4c8499cbac..288547a3c566 100644
|
||||
--- a/drivers/bluetooth/ath3k.c
|
||||
+++ b/drivers/bluetooth/ath3k.c
|
||||
@@ -65,6 +65,7 @@ static const struct usb_device_id ath3k_table[] = {
|
||||
/* Atheros AR3011 with sflash firmware*/
|
||||
{ USB_DEVICE(0x0489, 0xE027) },
|
||||
{ USB_DEVICE(0x0489, 0xE03D) },
|
||||
+ { USB_DEVICE(0x04F2, 0xAFF1) },
|
||||
{ USB_DEVICE(0x0930, 0x0215) },
|
||||
{ USB_DEVICE(0x0CF3, 0x3002) },
|
||||
{ USB_DEVICE(0x0CF3, 0xE019) },
|
||||
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
|
||||
index c91ec52a8948..b0449bb18873 100644
|
||||
--- a/drivers/bluetooth/btusb.c
|
||||
+++ b/drivers/bluetooth/btusb.c
|
||||
@@ -153,6 +153,7 @@ static const struct usb_device_id blacklist_table[] = {
|
||||
/* Atheros 3011 with sflash firmware */
|
||||
{ USB_DEVICE(0x0489, 0xe027), .driver_info = BTUSB_IGNORE },
|
||||
{ USB_DEVICE(0x0489, 0xe03d), .driver_info = BTUSB_IGNORE },
|
||||
+ { USB_DEVICE(0x04f2, 0xaff1), .driver_info = BTUSB_IGNORE },
|
||||
{ USB_DEVICE(0x0930, 0x0215), .driver_info = BTUSB_IGNORE },
|
||||
{ USB_DEVICE(0x0cf3, 0x3002), .driver_info = BTUSB_IGNORE },
|
||||
{ USB_DEVICE(0x0cf3, 0xe019), .driver_info = BTUSB_IGNORE },
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Thu, 26 Mar 2015 12:41:57 -0400
|
||||
Subject: [PATCH] HID: logitech-hidpp: add a module parameter to keep firmware
|
||||
gestures
|
||||
|
||||
The Logitech T650 used to report 3 fingers swipes to the up as a press on the
|
||||
Super key. When we switched the touchpad to the raw mode, we also disable such
|
||||
firmware gesture and some users may rely on it.
|
||||
|
||||
Unfortunately, 3 finger swipes are still not supported in most of the Linux
|
||||
environments, which means that we disabled a feature of the touchpad.
|
||||
|
||||
Allow users to revert the raw reporting mode and keep going with the firmware
|
||||
gestures by providing a new module parameter.
|
||||
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
|
||||
---
|
||||
drivers/hid/hid-logitech-hidpp.c | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c
|
||||
index a93cefe0e522..00304f742eca 100644
|
||||
--- a/drivers/hid/hid-logitech-hidpp.c
|
||||
+++ b/drivers/hid/hid-logitech-hidpp.c
|
||||
@@ -28,6 +28,11 @@ MODULE_LICENSE("GPL");
|
||||
MODULE_AUTHOR("Benjamin Tissoires <benjamin.tissoires@gmail.com>");
|
||||
MODULE_AUTHOR("Nestor Lopez Casado <nlopezcasad@logitech.com>");
|
||||
|
||||
+static bool disable_raw_mode;
|
||||
+module_param(disable_raw_mode, bool, 0644);
|
||||
+MODULE_PARM_DESC(disable_raw_mode,
|
||||
+ "Disable Raw mode reporting for touchpads and keep firmware gestures.");
|
||||
+
|
||||
#define REPORT_ID_HIDPP_SHORT 0x10
|
||||
#define REPORT_ID_HIDPP_LONG 0x11
|
||||
|
||||
@@ -1159,6 +1164,11 @@ static int hidpp_probe(struct hid_device *hdev, const struct hid_device_id *id)
|
||||
|
||||
hidpp->quirks = id->driver_data;
|
||||
|
||||
+ if (disable_raw_mode) {
|
||||
+ hidpp->quirks &= ~HIDPP_QUIRK_CLASS_WTP;
|
||||
+ hidpp->quirks &= ~HIDPP_QUIRK_DELAYED_INIT;
|
||||
+ }
|
||||
+
|
||||
if (hidpp->quirks & HIDPP_QUIRK_CLASS_WTP) {
|
||||
ret = wtp_allocate(hdev, id);
|
||||
if (ret)
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,50 @@
|
|||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Fri, 6 Mar 2015 11:14:42 -0500
|
||||
Subject: [PATCH] HID: multitouch: add support of clickpads
|
||||
|
||||
Touchpads that have only one button are called clickpads and should
|
||||
be advertised as such by the kernel.
|
||||
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Tested-by: Jason Ekstrand <jason@jlekstrand.net>
|
||||
---
|
||||
drivers/hid/hid-multitouch.c | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
|
||||
index f65e78b46999..ef06dc30b9b1 100644
|
||||
--- a/drivers/hid/hid-multitouch.c
|
||||
+++ b/drivers/hid/hid-multitouch.c
|
||||
@@ -116,6 +116,7 @@ struct mt_device {
|
||||
__u8 touches_by_report; /* how many touches are present in one report:
|
||||
* 1 means we should use a serial protocol
|
||||
* > 1 means hybrid (multitouch) protocol */
|
||||
+ __u8 buttons_count; /* number of physical buttons per touchpad */
|
||||
bool serial_maybe; /* need to check for serial protocol */
|
||||
bool curvalid; /* is the current contact valid? */
|
||||
unsigned mt_flags; /* flags to pass to input-mt */
|
||||
@@ -379,6 +380,10 @@ static int mt_touch_input_mapping(struct hid_device *hdev, struct hid_input *hi,
|
||||
td->inputmode_value = MT_INPUTMODE_TOUCHPAD;
|
||||
}
|
||||
|
||||
+ /* count the buttons on touchpads */
|
||||
+ if ((usage->hid & HID_USAGE_PAGE) == HID_UP_BUTTON)
|
||||
+ td->buttons_count++;
|
||||
+
|
||||
if (usage->usage_index)
|
||||
prev_usage = &field->usage[usage->usage_index - 1];
|
||||
|
||||
@@ -728,6 +733,10 @@ static void mt_touch_input_configured(struct hid_device *hdev,
|
||||
if (cls->quirks & MT_QUIRK_NOT_SEEN_MEANS_UP)
|
||||
td->mt_flags |= INPUT_MT_DROP_UNUSED;
|
||||
|
||||
+ /* check for clickpads */
|
||||
+ if ((td->mt_flags & INPUT_MT_POINTER) && (td->buttons_count == 1))
|
||||
+ __set_bit(INPUT_PROP_BUTTONPAD, input->propbit);
|
||||
+
|
||||
input_mt_init_slots(input, td->maxcontacts, td->mt_flags);
|
||||
|
||||
td->mt_flags = 0;
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,110 @@
|
|||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Wed, 10 Sep 2014 18:02:37 -0700
|
||||
Subject: [PATCH] HID: rmi: check sanity of the incoming report
|
||||
|
||||
commit 5b65c2a0296644dd3dbdd590d6f00174d18c96b3 upstream.
|
||||
|
||||
In the Dell XPS 13 9333, it appears that sometimes the bus get confused
|
||||
and corrupts the incoming data. It fills the input report with the
|
||||
sentinel value "ff". Synaptics told us that such behavior does not comes
|
||||
from the touchpad itself, so we filter out such reports here.
|
||||
|
||||
Unfortunately, we can not simply discard the incoming data because they
|
||||
may contain useful information. Most of the time, the misbehavior is
|
||||
quite near the end of the report, so we can still use the valid part of
|
||||
it.
|
||||
|
||||
Fixes:
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1123584
|
||||
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Signed-off-by: Andrew Duggan <aduggan@synaptics.com>
|
||||
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
|
||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
---
|
||||
drivers/hid/hid-rmi.c | 44 ++++++++++++++++++++++++++++++++++++++------
|
||||
1 file changed, 38 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c
|
||||
index 8389e8109218..3cccff73b9b9 100644
|
||||
--- a/drivers/hid/hid-rmi.c
|
||||
+++ b/drivers/hid/hid-rmi.c
|
||||
@@ -320,10 +320,7 @@ static int rmi_f11_input_event(struct hid_device *hdev, u8 irq, u8 *data,
|
||||
int offset;
|
||||
int i;
|
||||
|
||||
- if (size < hdata->f11.report_size)
|
||||
- return 0;
|
||||
-
|
||||
- if (!(irq & hdata->f11.irq_mask))
|
||||
+ if (!(irq & hdata->f11.irq_mask) || size <= 0)
|
||||
return 0;
|
||||
|
||||
offset = (hdata->max_fingers >> 2) + 1;
|
||||
@@ -332,9 +329,19 @@ static int rmi_f11_input_event(struct hid_device *hdev, u8 irq, u8 *data,
|
||||
int fs_bit_position = (i & 0x3) << 1;
|
||||
int finger_state = (data[fs_byte_position] >> fs_bit_position) &
|
||||
0x03;
|
||||
+ int position = offset + 5 * i;
|
||||
+
|
||||
+ if (position + 5 > size) {
|
||||
+ /* partial report, go on with what we received */
|
||||
+ printk_once(KERN_WARNING
|
||||
+ "%s %s: Detected incomplete finger report. Finger reports may occasionally get dropped on this platform.\n",
|
||||
+ dev_driver_string(&hdev->dev),
|
||||
+ dev_name(&hdev->dev));
|
||||
+ hid_dbg(hdev, "Incomplete finger report\n");
|
||||
+ break;
|
||||
+ }
|
||||
|
||||
- rmi_f11_process_touch(hdata, i, finger_state,
|
||||
- &data[offset + 5 * i]);
|
||||
+ rmi_f11_process_touch(hdata, i, finger_state, &data[position]);
|
||||
}
|
||||
input_mt_sync_frame(hdata->input);
|
||||
input_sync(hdata->input);
|
||||
@@ -352,6 +359,11 @@ static int rmi_f30_input_event(struct hid_device *hdev, u8 irq, u8 *data,
|
||||
if (!(irq & hdata->f30.irq_mask))
|
||||
return 0;
|
||||
|
||||
+ if (size < (int)hdata->f30.report_size) {
|
||||
+ hid_warn(hdev, "Click Button pressed, but the click data is missing\n");
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
for (i = 0; i < hdata->gpio_led_count; i++) {
|
||||
if (test_bit(i, &hdata->button_mask)) {
|
||||
value = (data[i / 8] >> (i & 0x07)) & BIT(0);
|
||||
@@ -412,9 +424,29 @@ static int rmi_read_data_event(struct hid_device *hdev, u8 *data, int size)
|
||||
return 1;
|
||||
}
|
||||
|
||||
+static int rmi_check_sanity(struct hid_device *hdev, u8 *data, int size)
|
||||
+{
|
||||
+ int valid_size = size;
|
||||
+ /*
|
||||
+ * On the Dell XPS 13 9333, the bus sometimes get confused and fills
|
||||
+ * the report with a sentinel value "ff". Synaptics told us that such
|
||||
+ * behavior does not comes from the touchpad itself, so we filter out
|
||||
+ * such reports here.
|
||||
+ */
|
||||
+
|
||||
+ while ((data[valid_size - 1] == 0xff) && valid_size > 0)
|
||||
+ valid_size--;
|
||||
+
|
||||
+ return valid_size;
|
||||
+}
|
||||
+
|
||||
static int rmi_raw_event(struct hid_device *hdev,
|
||||
struct hid_report *report, u8 *data, int size)
|
||||
{
|
||||
+ size = rmi_check_sanity(hdev, data, size);
|
||||
+ if (size < 2)
|
||||
+ return 0;
|
||||
+
|
||||
switch (data[0]) {
|
||||
case RMI_READ_DATA_REPORT_ID:
|
||||
return rmi_read_data_event(hdev, data, size);
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,151 @@
|
|||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Sun, 8 Mar 2015 22:35:41 -0700
|
||||
Subject: [PATCH] Input: synaptics - re-route tracksticks buttons on the Lenovo
|
||||
2015 series
|
||||
|
||||
The 2015 series of the Lenovo thinkpads added back the hardware buttons on
|
||||
top of the touchpad for the trackstick.
|
||||
|
||||
Unfortunately, they are wired to the touchpad, and not the trackstick.
|
||||
Thus, they are seen as extra buttons from the kernel point of view.
|
||||
|
||||
This leads to a problem in user space because extra buttons on synaptics
|
||||
devices used to be used as scroll up/down buttons. So in the end, the
|
||||
experience for the user is scroll events for buttons left and right when
|
||||
using the trackstick. Yay!
|
||||
|
||||
Fortunately, the firmware advertises such behavior in the extended
|
||||
capability $10, and so we can re-route the buttons through the pass-through
|
||||
interface.
|
||||
|
||||
Hallelujah-expressed-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Acked-by: Hans de Goede <hdegoede@redhat.com>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/mouse/synaptics.c | 47 +++++++++++++++++++++++++++++++----------
|
||||
drivers/input/mouse/synaptics.h | 5 +++++
|
||||
2 files changed, 41 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
|
||||
index 9d599eb79f17..ecc7811cbd46 100644
|
||||
--- a/drivers/input/mouse/synaptics.c
|
||||
+++ b/drivers/input/mouse/synaptics.c
|
||||
@@ -579,18 +579,22 @@ static int synaptics_is_pt_packet(unsigned char *buf)
|
||||
return (buf[0] & 0xFC) == 0x84 && (buf[3] & 0xCC) == 0xC4;
|
||||
}
|
||||
|
||||
-static void synaptics_pass_pt_packet(struct serio *ptport, unsigned char *packet)
|
||||
+static void synaptics_pass_pt_packet(struct psmouse *psmouse,
|
||||
+ struct serio *ptport,
|
||||
+ unsigned char *packet)
|
||||
{
|
||||
+ struct synaptics_data *priv = psmouse->private;
|
||||
struct psmouse *child = serio_get_drvdata(ptport);
|
||||
|
||||
if (child && child->state == PSMOUSE_ACTIVATED) {
|
||||
- serio_interrupt(ptport, packet[1], 0);
|
||||
+ serio_interrupt(ptport, packet[1] | priv->pt_buttons, 0);
|
||||
serio_interrupt(ptport, packet[4], 0);
|
||||
serio_interrupt(ptport, packet[5], 0);
|
||||
if (child->pktsize == 4)
|
||||
serio_interrupt(ptport, packet[2], 0);
|
||||
- } else
|
||||
+ } else {
|
||||
serio_interrupt(ptport, packet[1], 0);
|
||||
+ }
|
||||
}
|
||||
|
||||
static void synaptics_pt_activate(struct psmouse *psmouse)
|
||||
@@ -847,6 +851,7 @@ static void synaptics_report_ext_buttons(struct psmouse *psmouse,
|
||||
struct input_dev *dev = psmouse->dev;
|
||||
struct synaptics_data *priv = psmouse->private;
|
||||
int ext_bits = (SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap) + 1) >> 1;
|
||||
+ char buf[6] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
|
||||
int i;
|
||||
|
||||
if (!SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap))
|
||||
@@ -857,12 +862,30 @@ static void synaptics_report_ext_buttons(struct psmouse *psmouse,
|
||||
!((psmouse->packet[0] ^ psmouse->packet[3]) & 0x02))
|
||||
return;
|
||||
|
||||
- for (i = 0; i < ext_bits; i++) {
|
||||
- input_report_key(dev, BTN_0 + 2 * i,
|
||||
- hw->ext_buttons & (1 << i));
|
||||
- input_report_key(dev, BTN_1 + 2 * i,
|
||||
- hw->ext_buttons & (1 << (i + ext_bits)));
|
||||
+ if (!SYN_CAP_EXT_BUTTONS_STICK(priv->ext_cap_10)) {
|
||||
+ for (i = 0; i < ext_bits; i++) {
|
||||
+ input_report_key(dev, BTN_0 + 2 * i,
|
||||
+ hw->ext_buttons & (1 << i));
|
||||
+ input_report_key(dev, BTN_1 + 2 * i,
|
||||
+ hw->ext_buttons & (1 << (i + ext_bits)));
|
||||
+ }
|
||||
+ return;
|
||||
}
|
||||
+
|
||||
+ /*
|
||||
+ * This generation of touchpads has the trackstick buttons
|
||||
+ * physically wired to the touchpad. Re-route them through
|
||||
+ * the pass-through interface.
|
||||
+ */
|
||||
+ if (!priv->pt_port)
|
||||
+ return;
|
||||
+
|
||||
+ /* The trackstick expects at most 3 buttons */
|
||||
+ priv->pt_buttons = SYN_CAP_EXT_BUTTON_STICK_L(hw->ext_buttons) |
|
||||
+ SYN_CAP_EXT_BUTTON_STICK_R(hw->ext_buttons) << 1 |
|
||||
+ SYN_CAP_EXT_BUTTON_STICK_M(hw->ext_buttons) << 2;
|
||||
+
|
||||
+ synaptics_pass_pt_packet(psmouse, priv->pt_port, buf);
|
||||
}
|
||||
|
||||
static void synaptics_report_buttons(struct psmouse *psmouse,
|
||||
@@ -1459,7 +1482,8 @@ static psmouse_ret_t synaptics_process_byte(struct psmouse *psmouse)
|
||||
if (SYN_CAP_PASS_THROUGH(priv->capabilities) &&
|
||||
synaptics_is_pt_packet(psmouse->packet)) {
|
||||
if (priv->pt_port)
|
||||
- synaptics_pass_pt_packet(priv->pt_port, psmouse->packet);
|
||||
+ synaptics_pass_pt_packet(psmouse, priv->pt_port,
|
||||
+ psmouse->packet);
|
||||
} else
|
||||
synaptics_process_packet(psmouse);
|
||||
|
||||
@@ -1561,8 +1585,9 @@ static void set_input_params(struct psmouse *psmouse,
|
||||
__set_bit(BTN_BACK, dev->keybit);
|
||||
}
|
||||
|
||||
- for (i = 0; i < SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap); i++)
|
||||
- __set_bit(BTN_0 + i, dev->keybit);
|
||||
+ if (!SYN_CAP_EXT_BUTTONS_STICK(priv->ext_cap_10))
|
||||
+ for (i = 0; i < SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap); i++)
|
||||
+ __set_bit(BTN_0 + i, dev->keybit);
|
||||
|
||||
__clear_bit(EV_REL, dev->evbit);
|
||||
__clear_bit(REL_X, dev->relbit);
|
||||
diff --git a/drivers/input/mouse/synaptics.h b/drivers/input/mouse/synaptics.h
|
||||
index 8d3761ce8f54..f39539c70219 100644
|
||||
--- a/drivers/input/mouse/synaptics.h
|
||||
+++ b/drivers/input/mouse/synaptics.h
|
||||
@@ -111,6 +111,10 @@
|
||||
#define SYN_CAP_EXT_BUTTONS_STICK(ex10) ((ex10) & 0x010000)
|
||||
#define SYN_CAP_SECUREPAD(ex10) ((ex10) & 0x020000)
|
||||
|
||||
+#define SYN_CAP_EXT_BUTTON_STICK_L(eb) (!!((eb) & 0x01))
|
||||
+#define SYN_CAP_EXT_BUTTON_STICK_M(eb) (!!((eb) & 0x02))
|
||||
+#define SYN_CAP_EXT_BUTTON_STICK_R(eb) (!!((eb) & 0x04))
|
||||
+
|
||||
/* synaptics modes query bits */
|
||||
#define SYN_MODE_ABSOLUTE(m) ((m) & (1 << 7))
|
||||
#define SYN_MODE_RATE(m) ((m) & (1 << 6))
|
||||
@@ -192,6 +196,7 @@ struct synaptics_data {
|
||||
bool disable_gesture; /* disable gestures */
|
||||
|
||||
struct serio *pt_port; /* Pass-through serio port */
|
||||
+ unsigned char pt_buttons; /* Pass-through buttons */
|
||||
|
||||
struct synaptics_mt_state mt_state; /* Current mt finger state */
|
||||
bool mt_state_lost; /* mt_state may be incorrect */
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Sun, 8 Mar 2015 22:34:50 -0700
|
||||
Subject: [PATCH] Input: synaptics - remove TOPBUTTONPAD property for Lenovos
|
||||
2015
|
||||
|
||||
The 2015 series of the Lenovo thinkpads added back the hardware buttons on
|
||||
top of the touchpad for the trackstick.
|
||||
|
||||
Unfortunately, Lenovo used the PNPIDs that are supposed to be "5 buttons"
|
||||
touchpads, so the new laptops also have the INPUT_PROP_TOPBUTTONPAD. Yay!
|
||||
|
||||
Instead of manually removing each of the new ones, or hoping that we know
|
||||
all the current ones, we can consider that the PNPIDs list that were given
|
||||
contains touchpads that have the trackstick buttons, either physically
|
||||
wired to them, or emulated with the top software button property.
|
||||
|
||||
Thanks to the extra buttons capability in query $10, we can reliably detect
|
||||
the physical buttons from the software ones, and so we can remove the
|
||||
TOPBUTTONPAD property even if it was declared as such.
|
||||
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Acked-by: Hans de Goede <hdegoede@redhat.com>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/mouse/synaptics.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
|
||||
index 8f6a153677b9..9d599eb79f17 100644
|
||||
--- a/drivers/input/mouse/synaptics.c
|
||||
+++ b/drivers/input/mouse/synaptics.c
|
||||
@@ -1570,7 +1570,8 @@ static void set_input_params(struct psmouse *psmouse,
|
||||
|
||||
if (SYN_CAP_CLICKPAD(priv->ext_cap_0c)) {
|
||||
__set_bit(INPUT_PROP_BUTTONPAD, dev->propbit);
|
||||
- if (psmouse_matches_pnp_id(psmouse, topbuttonpad_pnp_ids))
|
||||
+ if (psmouse_matches_pnp_id(psmouse, topbuttonpad_pnp_ids) &&
|
||||
+ !SYN_CAP_EXT_BUTTONS_STICK(priv->ext_cap_10))
|
||||
__set_bit(INPUT_PROP_TOPBUTTONPAD, dev->propbit);
|
||||
/* Clickpads report only left button */
|
||||
__clear_bit(BTN_RIGHT, dev->keybit);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Sun, 8 Mar 2015 22:38:55 -0700
|
||||
Subject: [PATCH] Input: synaptics - remove X1 Carbon 3rd gen from the
|
||||
topbuttonpad list
|
||||
|
||||
Lenovo decided to switch back to physical buttons for the trackstick on
|
||||
their latest series. The PNPId list was provided before they reverted back
|
||||
to physical buttons, so it contains the new models too. We can know from
|
||||
the touchpad capabilities that the touchpad has physical buttons, so
|
||||
removing the ids from the list is not mandatory. It is still nicer to
|
||||
remove the wrong ids, so start by removing the X1 Carbon 3rd gen, with the
|
||||
PNPId of LEN0048.
|
||||
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Acked-by: Hans de Goede <hdegoede@redhat.com>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/mouse/synaptics.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
|
||||
index ecc7811cbd46..160def02cde2 100644
|
||||
--- a/drivers/input/mouse/synaptics.c
|
||||
+++ b/drivers/input/mouse/synaptics.c
|
||||
@@ -183,7 +183,6 @@ static const char * const topbuttonpad_pnp_ids[] = {
|
||||
"LEN0045",
|
||||
"LEN0046",
|
||||
"LEN0047",
|
||||
- "LEN0048",
|
||||
"LEN0049",
|
||||
"LEN2000",
|
||||
"LEN2001", /* Edge E431 */
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Sun, 8 Mar 2015 22:39:17 -0700
|
||||
Subject: [PATCH] Input: synaptics - remove X250 from the topbuttonpad list
|
||||
|
||||
Lenovo X250 has a PnpID of LEN0046, but it does not have the top software
|
||||
button requirement.
|
||||
|
||||
For the record, Lenovo T450s and W541 have a PnpID of LEN200f and LEN004a,
|
||||
so they are not on the top software button list.
|
||||
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Reviewed-by: Daniel Martin <consume.noise@gmail.com>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/mouse/synaptics.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
|
||||
index 160def02cde2..ca7ca8d4eb33 100644
|
||||
--- a/drivers/input/mouse/synaptics.c
|
||||
+++ b/drivers/input/mouse/synaptics.c
|
||||
@@ -181,7 +181,6 @@ static const char * const topbuttonpad_pnp_ids[] = {
|
||||
"LEN0041",
|
||||
"LEN0042", /* Yoga */
|
||||
"LEN0045",
|
||||
- "LEN0046",
|
||||
"LEN0047",
|
||||
"LEN0049",
|
||||
"LEN2000",
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,125 @@
|
|||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Sun, 8 Mar 2015 22:34:03 -0700
|
||||
Subject: [PATCH] Input: synaptics - retrieve the extended capabilities in
|
||||
query $10
|
||||
|
||||
Newer Synaptics touchpads need to get information from the query $10.
|
||||
Retrieve it if available.
|
||||
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Acked-by: Hans de Goede <hdegoede@redhat.com>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/mouse/synaptics.c | 23 ++++++++++++++++++++---
|
||||
drivers/input/mouse/synaptics.h | 23 +++++++++++++++++++++++
|
||||
2 files changed, 43 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
|
||||
index 2176874a41b1..8f6a153677b9 100644
|
||||
--- a/drivers/input/mouse/synaptics.c
|
||||
+++ b/drivers/input/mouse/synaptics.c
|
||||
@@ -241,11 +241,24 @@ static int synaptics_model_id(struct psmouse *psmouse)
|
||||
return 0;
|
||||
}
|
||||
|
||||
+static int synaptics_more_extended_queries(struct psmouse *psmouse)
|
||||
+{
|
||||
+ struct synaptics_data *priv = psmouse->private;
|
||||
+ unsigned char buf[3];
|
||||
+
|
||||
+ if (synaptics_send_cmd(psmouse, SYN_QUE_MEXT_CAPAB_10, buf))
|
||||
+ return -1;
|
||||
+
|
||||
+ priv->ext_cap_10 = (buf[0]<<16) | (buf[1]<<8) | buf[2];
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
/*
|
||||
- * Read the board id from the touchpad
|
||||
+ * Read the board id and the "More Extended Queries" from the touchpad
|
||||
* The board id is encoded in the "QUERY MODES" response
|
||||
*/
|
||||
-static int synaptics_board_id(struct psmouse *psmouse)
|
||||
+static int synaptics_query_modes(struct psmouse *psmouse)
|
||||
{
|
||||
struct synaptics_data *priv = psmouse->private;
|
||||
unsigned char bid[3];
|
||||
@@ -257,6 +270,10 @@ static int synaptics_board_id(struct psmouse *psmouse)
|
||||
if (synaptics_send_cmd(psmouse, SYN_QUE_MODES, bid))
|
||||
return -1;
|
||||
priv->board_id = ((bid[0] & 0xfc) << 6) | bid[1];
|
||||
+
|
||||
+ if (SYN_MEXT_CAP_BIT(bid[0]))
|
||||
+ return synaptics_more_extended_queries(psmouse);
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -446,7 +463,7 @@ static int synaptics_query_hardware(struct psmouse *psmouse)
|
||||
return -1;
|
||||
if (synaptics_firmware_id(psmouse))
|
||||
return -1;
|
||||
- if (synaptics_board_id(psmouse))
|
||||
+ if (synaptics_query_modes(psmouse))
|
||||
return -1;
|
||||
if (synaptics_capability(psmouse))
|
||||
return -1;
|
||||
diff --git a/drivers/input/mouse/synaptics.h b/drivers/input/mouse/synaptics.h
|
||||
index 1bd01f21783b..8d3761ce8f54 100644
|
||||
--- a/drivers/input/mouse/synaptics.h
|
||||
+++ b/drivers/input/mouse/synaptics.h
|
||||
@@ -22,6 +22,7 @@
|
||||
#define SYN_QUE_EXT_CAPAB_0C 0x0c
|
||||
#define SYN_QUE_EXT_MAX_COORDS 0x0d
|
||||
#define SYN_QUE_EXT_MIN_COORDS 0x0f
|
||||
+#define SYN_QUE_MEXT_CAPAB_10 0x10
|
||||
|
||||
/* synatics modes */
|
||||
#define SYN_BIT_ABSOLUTE_MODE (1 << 7)
|
||||
@@ -53,6 +54,7 @@
|
||||
#define SYN_EXT_CAP_REQUESTS(c) (((c) & 0x700000) >> 20)
|
||||
#define SYN_CAP_MULTI_BUTTON_NO(ec) (((ec) & 0x00f000) >> 12)
|
||||
#define SYN_CAP_PRODUCT_ID(ec) (((ec) & 0xff0000) >> 16)
|
||||
+#define SYN_MEXT_CAP_BIT(m) ((m) & (1 << 1))
|
||||
|
||||
/*
|
||||
* The following describes response for the 0x0c query.
|
||||
@@ -89,6 +91,26 @@
|
||||
#define SYN_CAP_REDUCED_FILTERING(ex0c) ((ex0c) & 0x000400)
|
||||
#define SYN_CAP_IMAGE_SENSOR(ex0c) ((ex0c) & 0x000800)
|
||||
|
||||
+/*
|
||||
+ * The following descibes response for the 0x10 query.
|
||||
+ *
|
||||
+ * byte mask name meaning
|
||||
+ * ---- ---- ------- ------------
|
||||
+ * 1 0x01 ext buttons are stick buttons exported in the extended
|
||||
+ * capability are actually meant to be used
|
||||
+ * by the tracktick (pass-through).
|
||||
+ * 1 0x02 SecurePad the touchpad is a SecurePad, so it
|
||||
+ * contains a built-in fingerprint reader.
|
||||
+ * 1 0xe0 more ext count how many more extented queries are
|
||||
+ * available after this one.
|
||||
+ * 2 0xff SecurePad width the width of the SecurePad fingerprint
|
||||
+ * reader.
|
||||
+ * 3 0xff SecurePad height the height of the SecurePad fingerprint
|
||||
+ * reader.
|
||||
+ */
|
||||
+#define SYN_CAP_EXT_BUTTONS_STICK(ex10) ((ex10) & 0x010000)
|
||||
+#define SYN_CAP_SECUREPAD(ex10) ((ex10) & 0x020000)
|
||||
+
|
||||
/* synaptics modes query bits */
|
||||
#define SYN_MODE_ABSOLUTE(m) ((m) & (1 << 7))
|
||||
#define SYN_MODE_RATE(m) ((m) & (1 << 6))
|
||||
@@ -156,6 +178,7 @@ struct synaptics_data {
|
||||
unsigned long int capabilities; /* Capabilities */
|
||||
unsigned long int ext_cap; /* Extended Capabilities */
|
||||
unsigned long int ext_cap_0c; /* Ext Caps from 0x0c query */
|
||||
+ unsigned long int ext_cap_10; /* Ext Caps from 0x10 query */
|
||||
unsigned long int identity; /* Identification */
|
||||
unsigned int x_res, y_res; /* X/Y resolution in units/mm */
|
||||
unsigned int x_max, y_max; /* Max coordinates (from FW) */
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
From bdfffc320102278edac2db5a397ffbfd89faeab3 Mon Sep 17 00:00:00 2001
|
||||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Wed, 3 Sep 2014 15:43:25 -0400
|
||||
Subject: [PATCH] Input: wacom: Add support for the Cintiq Companion
|
||||
|
||||
The Wacom Cintiq Companion shares the same sensor than the Cintiq
|
||||
Companion Hybrid, with the exception of the different PIDs.
|
||||
|
||||
Bugzilla: 1134969
|
||||
Upstream-status: Queued for 3.18
|
||||
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
---
|
||||
drivers/input/tablet/wacom_wac.c | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c
|
||||
index e73cf2c71f35..7f6caf8c85fb 100644
|
||||
--- a/drivers/input/tablet/wacom_wac.c
|
||||
+++ b/drivers/input/tablet/wacom_wac.c
|
||||
@@ -2332,6 +2332,13 @@ static const struct wacom_features wacom_features_0x0307 =
|
||||
static const struct wacom_features wacom_features_0x0309 =
|
||||
{ "Wacom ISDv5 309", .type = WACOM_24HDT, /* Touch */
|
||||
.oVid = USB_VENDOR_ID_WACOM, .oPid = 0x0307, .touch_max = 10 };
|
||||
+static const struct wacom_features wacom_features_0x030A =
|
||||
+ { "Wacom ISDv5 30A", WACOM_PKGLEN_INTUOS, 59352, 33648, 2047,
|
||||
+ 63, CINTIQ_HYBRID, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES, 200, 200,
|
||||
+ .oVid = USB_VENDOR_ID_WACOM, .oPid = 0x30C };
|
||||
+static const struct wacom_features wacom_features_0x030C =
|
||||
+ { "Wacom ISDv5 30C", .type = WACOM_24HDT, /* Touch */
|
||||
+ .oVid = USB_VENDOR_ID_WACOM, .oPid = 0x030A, .touch_max = 10 };
|
||||
|
||||
#define USB_DEVICE_WACOM(prod) \
|
||||
USB_DEVICE(USB_VENDOR_ID_WACOM, prod), \
|
||||
@@ -2478,6 +2485,8 @@ const struct usb_device_id wacom_ids[] = {
|
||||
{ USB_DEVICE_WACOM(0xFA) },
|
||||
{ USB_DEVICE_WACOM(0xFB) },
|
||||
{ USB_DEVICE_WACOM(0x0307) },
|
||||
+ { USB_DEVICE_WACOM(0x030A) },
|
||||
+ { USB_DEVICE_DETAILED(0x030C, USB_CLASS_HID, 0, 0) },
|
||||
{ USB_DEVICE_DETAILED(0x0309, USB_CLASS_HID, 0, 0) },
|
||||
{ USB_DEVICE_LENOVO(0x6004) },
|
||||
{ }
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,111 @@
|
|||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Fri, 26 Oct 2012 12:36:24 -0400
|
||||
Subject: [PATCH] KEYS: Add a system blacklist keyring
|
||||
|
||||
This adds an additional keyring that is used to store certificates that
|
||||
are blacklisted. This keyring is searched first when loading signed modules
|
||||
and if the module's certificate is found, it will refuse to load. This is
|
||||
useful in cases where third party certificates are used for module signing.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
include/keys/system_keyring.h | 4 ++++
|
||||
init/Kconfig | 9 +++++++++
|
||||
kernel/module_signing.c | 12 ++++++++++++
|
||||
kernel/system_keyring.c | 17 +++++++++++++++++
|
||||
4 files changed, 42 insertions(+)
|
||||
|
||||
diff --git a/include/keys/system_keyring.h b/include/keys/system_keyring.h
|
||||
index 72665eb80692..2c7b80d31366 100644
|
||||
--- a/include/keys/system_keyring.h
|
||||
+++ b/include/keys/system_keyring.h
|
||||
@@ -28,4 +28,8 @@ static inline struct key *get_system_trusted_keyring(void)
|
||||
}
|
||||
#endif
|
||||
|
||||
+#ifdef CONFIG_SYSTEM_BLACKLIST_KEYRING
|
||||
+extern struct key *system_blacklist_keyring;
|
||||
+#endif
|
||||
+
|
||||
#endif /* _KEYS_SYSTEM_KEYRING_H */
|
||||
diff --git a/init/Kconfig b/init/Kconfig
|
||||
index 9afb971497f4..ea0dbdf29b75 100644
|
||||
--- a/init/Kconfig
|
||||
+++ b/init/Kconfig
|
||||
@@ -1742,6 +1742,15 @@ config SYSTEM_TRUSTED_KEYRING
|
||||
|
||||
Keys in this keyring are used by module signature checking.
|
||||
|
||||
+config SYSTEM_BLACKLIST_KEYRING
|
||||
+ bool "Provide system-wide ring of blacklisted keys"
|
||||
+ depends on KEYS
|
||||
+ help
|
||||
+ Provide a system keyring to which blacklisted keys can be added.
|
||||
+ Keys in the keyring are considered entirely untrusted. Keys in this
|
||||
+ keyring are used by the module signature checking to reject loading
|
||||
+ of modules signed with a blacklisted key.
|
||||
+
|
||||
config PROFILING
|
||||
bool "Profiling support"
|
||||
help
|
||||
diff --git a/kernel/module_signing.c b/kernel/module_signing.c
|
||||
index be5b8fac4bd0..fed815fcdaf2 100644
|
||||
--- a/kernel/module_signing.c
|
||||
+++ b/kernel/module_signing.c
|
||||
@@ -158,6 +158,18 @@ static struct key *request_asymmetric_key(const char *signer, size_t signer_len,
|
||||
|
||||
pr_debug("Look up: \"%s\"\n", id);
|
||||
|
||||
+#ifdef CONFIG_SYSTEM_BLACKLIST_KEYRING
|
||||
+ key = keyring_search(make_key_ref(system_blacklist_keyring, 1),
|
||||
+ &key_type_asymmetric, id);
|
||||
+ if (!IS_ERR(key)) {
|
||||
+ /* module is signed with a cert in the blacklist. reject */
|
||||
+ pr_err("Module key '%s' is in blacklist\n", id);
|
||||
+ key_ref_put(key);
|
||||
+ kfree(id);
|
||||
+ return ERR_PTR(-EKEYREJECTED);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
key = keyring_search(make_key_ref(system_trusted_keyring, 1),
|
||||
&key_type_asymmetric, id);
|
||||
if (IS_ERR(key))
|
||||
diff --git a/kernel/system_keyring.c b/kernel/system_keyring.c
|
||||
index 875f64e8935b..c15e93f5a418 100644
|
||||
--- a/kernel/system_keyring.c
|
||||
+++ b/kernel/system_keyring.c
|
||||
@@ -20,6 +20,9 @@
|
||||
|
||||
struct key *system_trusted_keyring;
|
||||
EXPORT_SYMBOL_GPL(system_trusted_keyring);
|
||||
+#ifdef CONFIG_SYSTEM_BLACKLIST_KEYRING
|
||||
+struct key *system_blacklist_keyring;
|
||||
+#endif
|
||||
|
||||
extern __initconst const u8 system_certificate_list[];
|
||||
extern __initconst const unsigned long system_certificate_list_size;
|
||||
@@ -41,6 +44,20 @@ static __init int system_trusted_keyring_init(void)
|
||||
panic("Can't allocate system trusted keyring\n");
|
||||
|
||||
set_bit(KEY_FLAG_TRUSTED_ONLY, &system_trusted_keyring->flags);
|
||||
+
|
||||
+#ifdef CONFIG_SYSTEM_BLACKLIST_KEYRING
|
||||
+ system_blacklist_keyring = keyring_alloc(".system_blacklist_keyring",
|
||||
+ KUIDT_INIT(0), KGIDT_INIT(0),
|
||||
+ current_cred(),
|
||||
+ (KEY_POS_ALL & ~KEY_POS_SETATTR) |
|
||||
+ KEY_USR_VIEW | KEY_USR_READ,
|
||||
+ KEY_ALLOC_NOT_IN_QUOTA, NULL);
|
||||
+ if (IS_ERR(system_blacklist_keyring))
|
||||
+ panic("Can't allocate system blacklist keyring\n");
|
||||
+
|
||||
+ set_bit(KEY_FLAG_TRUSTED_ONLY, &system_blacklist_keyring->flags);
|
||||
+#endif
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,92 @@
|
|||
From: Josh Stone <jistone@redhat.com>
|
||||
Date: Fri, 21 Nov 2014 10:40:00 -0800
|
||||
Subject: [PATCH] Kbuild: Add an option to enable GCC VTA
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Due to recent codegen issues, gcc -fvar-tracking-assignments was
|
||||
unconditionally disabled in commit 2062afb4f804a ("Fix gcc-4.9.0
|
||||
miscompilation of load_balance() in scheduler"). However, this reduces
|
||||
the debuginfo coverage for variable locations, especially in inline
|
||||
functions. VTA is certainly not perfect either in those cases, but it
|
||||
is much better than without. With compiler versions that have fixed the
|
||||
codegen bugs, we would prefer to have the better details for SystemTap,
|
||||
and surely other debuginfo consumers like perf will benefit as well.
|
||||
|
||||
This patch simply makes CONFIG_DEBUG_INFO_VTA an option. I considered
|
||||
Frank and Linus's discussion of a cc-option-like -fcompare-debug test,
|
||||
but I'm convinced that a narrow test of an arch-specific codegen issue
|
||||
is not really useful. GCC has their own regression tests for this, so
|
||||
I'd suggest GCC_COMPARE_DEBUG=-fvar-tracking-assignments-toggle is more
|
||||
useful for kernel developers to test confidence.
|
||||
|
||||
In fact, I ran into a couple more issues when testing for this patch[1],
|
||||
although neither of those had any codegen impact.
|
||||
[1] https://bugzilla.redhat.com/show_bug.cgi?id=1140872
|
||||
|
||||
With gcc-4.9.2-1.fc22, I can now build v3.18-rc5 with Fedora's i686 and
|
||||
x86_64 configs, and this is completely clean with GCC_COMPARE_DEBUG.
|
||||
|
||||
Cc: Frank Ch. Eigler <fche@redhat.com>
|
||||
Cc: Jakub Jelinek <jakub@redhat.com>
|
||||
Cc: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
Cc: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
Cc: Andrew Morton <akpm@linux-foundation.org>
|
||||
Cc: Markus Trippelsdorf <markus@trippelsdorf.de>
|
||||
Cc: Michel Dänzer <michel@daenzer.net>
|
||||
Signed-off-by: Josh Stone <jistone@redhat.com>
|
||||
---
|
||||
Makefile | 4 ++++
|
||||
lib/Kconfig.debug | 18 +++++++++++++++++-
|
||||
2 files changed, 21 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 633b5f0f11a0..5a2aedee1fc9 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -706,7 +706,11 @@ KBUILD_CFLAGS += -fomit-frame-pointer
|
||||
endif
|
||||
endif
|
||||
|
||||
+ifdef CONFIG_DEBUG_INFO_VTA
|
||||
+KBUILD_CFLAGS += $(call cc-option, -fvar-tracking-assignments)
|
||||
+else
|
||||
KBUILD_CFLAGS += $(call cc-option, -fno-var-tracking-assignments)
|
||||
+endif
|
||||
|
||||
ifdef CONFIG_DEBUG_INFO
|
||||
ifdef CONFIG_DEBUG_INFO_SPLIT
|
||||
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
|
||||
index 5f2ce616c046..6525e2a5619a 100644
|
||||
--- a/lib/Kconfig.debug
|
||||
+++ b/lib/Kconfig.debug
|
||||
@@ -165,7 +165,23 @@ config DEBUG_INFO_DWARF4
|
||||
Generate dwarf4 debug info. This requires recent versions
|
||||
of gcc and gdb. It makes the debug information larger.
|
||||
But it significantly improves the success of resolving
|
||||
- variables in gdb on optimized code.
|
||||
+ variables in gdb on optimized code. The gcc docs also
|
||||
+ recommend enabling -fvar-tracking-assignments for maximum
|
||||
+ benefit. (see DEBUG_INFO_VTA)
|
||||
+
|
||||
+config DEBUG_INFO_VTA
|
||||
+ bool "Enable var-tracking-assignments for debuginfo"
|
||||
+ depends on DEBUG_INFO
|
||||
+ help
|
||||
+ Enable gcc -fvar-tracking-assignments for improved debug
|
||||
+ information on variable locations in optimized code. Per
|
||||
+ gcc, DEBUG_INFO_DWARF4 is recommended for best use of VTA.
|
||||
+
|
||||
+ VTA has been implicated in codegen bugs (gcc PR61801,
|
||||
+ PR61904), so this may deserve some caution. One can set
|
||||
+ GCC_COMPARE_DEBUG=-fvar-tracking-assignments-toggle in the
|
||||
+ environment to automatically compile everything both ways,
|
||||
+ generating an error if anything differs.
|
||||
|
||||
config ENABLE_WARN_DEPRECATED
|
||||
bool "Enable __deprecated logic"
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,185 @@
|
|||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Fri, 26 Oct 2012 12:42:16 -0400
|
||||
Subject: [PATCH] MODSIGN: Import certificates from UEFI Secure Boot
|
||||
|
||||
Secure Boot stores a list of allowed certificates in the 'db' variable.
|
||||
This imports those certificates into the system trusted keyring. This
|
||||
allows for a third party signing certificate to be used in conjunction
|
||||
with signed modules. By importing the public certificate into the 'db'
|
||||
variable, a user can allow a module signed with that certificate to
|
||||
load. The shim UEFI bootloader has a similar certificate list stored
|
||||
in the 'MokListRT' variable. We import those as well.
|
||||
|
||||
In the opposite case, Secure Boot maintains a list of disallowed
|
||||
certificates in the 'dbx' variable. We load those certificates into
|
||||
the newly introduced system blacklist keyring and forbid any module
|
||||
signed with those from loading.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
include/linux/efi.h | 6 ++++
|
||||
init/Kconfig | 9 +++++
|
||||
kernel/Makefile | 3 ++
|
||||
kernel/modsign_uefi.c | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
4 files changed, 110 insertions(+)
|
||||
create mode 100644 kernel/modsign_uefi.c
|
||||
|
||||
diff --git a/include/linux/efi.h b/include/linux/efi.h
|
||||
index fb972b96959a..581878071c85 100644
|
||||
--- a/include/linux/efi.h
|
||||
+++ b/include/linux/efi.h
|
||||
@@ -595,6 +595,12 @@ void efi_native_runtime_setup(void);
|
||||
#define EFI_CERT_X509_GUID \
|
||||
EFI_GUID( 0xa5c059a1, 0x94e4, 0x4aa7, 0x87, 0xb5, 0xab, 0x15, 0x5c, 0x2b, 0xf0, 0x72 )
|
||||
|
||||
+#define EFI_IMAGE_SECURITY_DATABASE_GUID \
|
||||
+ EFI_GUID( 0xd719b2cb, 0x3d3a, 0x4596, 0xa3, 0xbc, 0xda, 0xd0, 0x0e, 0x67, 0x65, 0x6f )
|
||||
+
|
||||
+#define EFI_SHIM_LOCK_GUID \
|
||||
+ EFI_GUID( 0x605dab50, 0xe046, 0x4300, 0xab, 0xb6, 0x3d, 0xd8, 0x10, 0xdd, 0x8b, 0x23 )
|
||||
+
|
||||
typedef struct {
|
||||
efi_guid_t guid;
|
||||
u64 table;
|
||||
diff --git a/init/Kconfig b/init/Kconfig
|
||||
index ea0dbdf29b75..dac9ed0f01f7 100644
|
||||
--- a/init/Kconfig
|
||||
+++ b/init/Kconfig
|
||||
@@ -1896,6 +1896,15 @@ config MODULE_SIG_ALL
|
||||
comment "Do not forget to sign required modules with scripts/sign-file"
|
||||
depends on MODULE_SIG_FORCE && !MODULE_SIG_ALL
|
||||
|
||||
+config MODULE_SIG_UEFI
|
||||
+ bool "Allow modules signed with certs stored in UEFI"
|
||||
+ depends on MODULE_SIG && SYSTEM_BLACKLIST_KEYRING && EFI
|
||||
+ select EFI_SIGNATURE_LIST_PARSER
|
||||
+ help
|
||||
+ This will import certificates stored in UEFI and allow modules
|
||||
+ signed with those to be loaded. It will also disallow loading
|
||||
+ of modules stored in the UEFI dbx variable.
|
||||
+
|
||||
choice
|
||||
prompt "Which hash algorithm should modules be signed with?"
|
||||
depends on MODULE_SIG
|
||||
diff --git a/kernel/Makefile b/kernel/Makefile
|
||||
index a59481a3fa6c..04b4ba9e0c9d 100644
|
||||
--- a/kernel/Makefile
|
||||
+++ b/kernel/Makefile
|
||||
@@ -45,6 +45,7 @@ obj-$(CONFIG_UID16) += uid16.o
|
||||
obj-$(CONFIG_SYSTEM_TRUSTED_KEYRING) += system_keyring.o system_certificates.o
|
||||
obj-$(CONFIG_MODULES) += module.o
|
||||
obj-$(CONFIG_MODULE_SIG) += module_signing.o
|
||||
+obj-$(CONFIG_MODULE_SIG_UEFI) += modsign_uefi.o
|
||||
obj-$(CONFIG_KALLSYMS) += kallsyms.o
|
||||
obj-$(CONFIG_BSD_PROCESS_ACCT) += acct.o
|
||||
obj-$(CONFIG_KEXEC) += kexec.o
|
||||
@@ -98,6 +99,8 @@ obj-$(CONFIG_TORTURE_TEST) += torture.o
|
||||
|
||||
$(obj)/configs.o: $(obj)/config_data.h
|
||||
|
||||
+$(obj)/modsign_uefi.o: KBUILD_CFLAGS += -fshort-wchar
|
||||
+
|
||||
# config_data.h contains the same information as ikconfig.h but gzipped.
|
||||
# Info from config_data can be extracted from /proc/config*
|
||||
targets += config_data.gz
|
||||
diff --git a/kernel/modsign_uefi.c b/kernel/modsign_uefi.c
|
||||
new file mode 100644
|
||||
index 000000000000..94b0eb38a284
|
||||
--- /dev/null
|
||||
+++ b/kernel/modsign_uefi.c
|
||||
@@ -0,0 +1,92 @@
|
||||
+#include <linux/kernel.h>
|
||||
+#include <linux/sched.h>
|
||||
+#include <linux/cred.h>
|
||||
+#include <linux/err.h>
|
||||
+#include <linux/efi.h>
|
||||
+#include <linux/slab.h>
|
||||
+#include <keys/asymmetric-type.h>
|
||||
+#include <keys/system_keyring.h>
|
||||
+#include "module-internal.h"
|
||||
+
|
||||
+static __init void *get_cert_list(efi_char16_t *name, efi_guid_t *guid, unsigned long *size)
|
||||
+{
|
||||
+ efi_status_t status;
|
||||
+ unsigned long lsize = 4;
|
||||
+ unsigned long tmpdb[4];
|
||||
+ void *db = NULL;
|
||||
+
|
||||
+ status = efi.get_variable(name, guid, NULL, &lsize, &tmpdb);
|
||||
+ if (status != EFI_BUFFER_TOO_SMALL) {
|
||||
+ pr_err("Couldn't get size: 0x%lx\n", status);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ db = kmalloc(lsize, GFP_KERNEL);
|
||||
+ if (!db) {
|
||||
+ pr_err("Couldn't allocate memory for uefi cert list\n");
|
||||
+ goto out;
|
||||
+ }
|
||||
+
|
||||
+ status = efi.get_variable(name, guid, NULL, &lsize, db);
|
||||
+ if (status != EFI_SUCCESS) {
|
||||
+ kfree(db);
|
||||
+ db = NULL;
|
||||
+ pr_err("Error reading db var: 0x%lx\n", status);
|
||||
+ }
|
||||
+out:
|
||||
+ *size = lsize;
|
||||
+ return db;
|
||||
+}
|
||||
+
|
||||
+/*
|
||||
+ * * Load the certs contained in the UEFI databases
|
||||
+ * */
|
||||
+static int __init load_uefi_certs(void)
|
||||
+{
|
||||
+ efi_guid_t secure_var = EFI_IMAGE_SECURITY_DATABASE_GUID;
|
||||
+ efi_guid_t mok_var = EFI_SHIM_LOCK_GUID;
|
||||
+ void *db = NULL, *dbx = NULL, *mok = NULL;
|
||||
+ unsigned long dbsize = 0, dbxsize = 0, moksize = 0;
|
||||
+ int rc = 0;
|
||||
+
|
||||
+ /* Check if SB is enabled and just return if not */
|
||||
+ if (!efi_enabled(EFI_SECURE_BOOT))
|
||||
+ return 0;
|
||||
+
|
||||
+ /* Get db, MokListRT, and dbx. They might not exist, so it isn't
|
||||
+ * an error if we can't get them.
|
||||
+ */
|
||||
+ db = get_cert_list(L"db", &secure_var, &dbsize);
|
||||
+ if (!db) {
|
||||
+ pr_err("MODSIGN: Couldn't get UEFI db list\n");
|
||||
+ } else {
|
||||
+ rc = parse_efi_signature_list(db, dbsize, system_trusted_keyring);
|
||||
+ if (rc)
|
||||
+ pr_err("Couldn't parse db signatures: %d\n", rc);
|
||||
+ kfree(db);
|
||||
+ }
|
||||
+
|
||||
+ mok = get_cert_list(L"MokListRT", &mok_var, &moksize);
|
||||
+ if (!mok) {
|
||||
+ pr_info("MODSIGN: Couldn't get UEFI MokListRT\n");
|
||||
+ } else {
|
||||
+ rc = parse_efi_signature_list(mok, moksize, system_trusted_keyring);
|
||||
+ if (rc)
|
||||
+ pr_err("Couldn't parse MokListRT signatures: %d\n", rc);
|
||||
+ kfree(mok);
|
||||
+ }
|
||||
+
|
||||
+ dbx = get_cert_list(L"dbx", &secure_var, &dbxsize);
|
||||
+ if (!dbx) {
|
||||
+ pr_info("MODSIGN: Couldn't get UEFI dbx list\n");
|
||||
+ } else {
|
||||
+ rc = parse_efi_signature_list(dbx, dbxsize,
|
||||
+ system_blacklist_keyring);
|
||||
+ if (rc)
|
||||
+ pr_err("Couldn't parse dbx signatures: %d\n", rc);
|
||||
+ kfree(dbx);
|
||||
+ }
|
||||
+
|
||||
+ return rc;
|
||||
+}
|
||||
+late_initcall(load_uefi_certs);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,83 @@
|
|||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Thu, 3 Oct 2013 10:14:23 -0400
|
||||
Subject: [PATCH] MODSIGN: Support not importing certs from db
|
||||
|
||||
If a user tells shim to not use the certs/hashes in the UEFI db variable
|
||||
for verification purposes, shim will set a UEFI variable called MokIgnoreDB.
|
||||
Have the uefi import code look for this and not import things from the db
|
||||
variable.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
kernel/modsign_uefi.c | 40 +++++++++++++++++++++++++++++++---------
|
||||
1 file changed, 31 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/kernel/modsign_uefi.c b/kernel/modsign_uefi.c
|
||||
index 94b0eb38a284..ae28b974d49a 100644
|
||||
--- a/kernel/modsign_uefi.c
|
||||
+++ b/kernel/modsign_uefi.c
|
||||
@@ -8,6 +8,23 @@
|
||||
#include <keys/system_keyring.h>
|
||||
#include "module-internal.h"
|
||||
|
||||
+static __init int check_ignore_db(void)
|
||||
+{
|
||||
+ efi_status_t status;
|
||||
+ unsigned int db = 0;
|
||||
+ unsigned long size = sizeof(db);
|
||||
+ efi_guid_t guid = EFI_SHIM_LOCK_GUID;
|
||||
+
|
||||
+ /* Check and see if the MokIgnoreDB variable exists. If that fails
|
||||
+ * then we don't ignore DB. If it succeeds, we do.
|
||||
+ */
|
||||
+ status = efi.get_variable(L"MokIgnoreDB", &guid, NULL, &size, &db);
|
||||
+ if (status != EFI_SUCCESS)
|
||||
+ return 0;
|
||||
+
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
static __init void *get_cert_list(efi_char16_t *name, efi_guid_t *guid, unsigned long *size)
|
||||
{
|
||||
efi_status_t status;
|
||||
@@ -47,23 +64,28 @@ static int __init load_uefi_certs(void)
|
||||
efi_guid_t mok_var = EFI_SHIM_LOCK_GUID;
|
||||
void *db = NULL, *dbx = NULL, *mok = NULL;
|
||||
unsigned long dbsize = 0, dbxsize = 0, moksize = 0;
|
||||
- int rc = 0;
|
||||
+ int ignore_db, rc = 0;
|
||||
|
||||
/* Check if SB is enabled and just return if not */
|
||||
if (!efi_enabled(EFI_SECURE_BOOT))
|
||||
return 0;
|
||||
|
||||
+ /* See if the user has setup Ignore DB mode */
|
||||
+ ignore_db = check_ignore_db();
|
||||
+
|
||||
/* Get db, MokListRT, and dbx. They might not exist, so it isn't
|
||||
* an error if we can't get them.
|
||||
*/
|
||||
- db = get_cert_list(L"db", &secure_var, &dbsize);
|
||||
- if (!db) {
|
||||
- pr_err("MODSIGN: Couldn't get UEFI db list\n");
|
||||
- } else {
|
||||
- rc = parse_efi_signature_list(db, dbsize, system_trusted_keyring);
|
||||
- if (rc)
|
||||
- pr_err("Couldn't parse db signatures: %d\n", rc);
|
||||
- kfree(db);
|
||||
+ if (!ignore_db) {
|
||||
+ db = get_cert_list(L"db", &secure_var, &dbsize);
|
||||
+ if (!db) {
|
||||
+ pr_err("MODSIGN: Couldn't get UEFI db list\n");
|
||||
+ } else {
|
||||
+ rc = parse_efi_signature_list(db, dbsize, system_trusted_keyring);
|
||||
+ if (rc)
|
||||
+ pr_err("Couldn't parse db signatures: %d\n", rc);
|
||||
+ kfree(db);
|
||||
+ }
|
||||
}
|
||||
|
||||
mok = get_cert_list(L"MokListRT", &mok_var, &moksize);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -11,11 +11,10 @@ CONFIGFILES = \
|
|||
$(CFG)-s390x.config \
|
||||
$(CFG)-armv7hl.config $(CFG)-armv7hl-lpae.config \
|
||||
$(CFG)-aarch64.config \
|
||||
$(CFG)-ppc.config $(CFG)-ppc-smp.config \
|
||||
$(CFG)-ppc64.config $(CFG)-ppc64p7.config $(CFG)-ppc64-debug.config \
|
||||
$(CFG)-ppc64le.config
|
||||
|
||||
PLATFORMS = x86 x86_64 powerpc powerpc32 powerpc64 s390x arm arm64
|
||||
PLATFORMS = x86 x86_64 powerpc powerpc64 s390x arm arm64
|
||||
TEMPFILES = $(addprefix temp-, $(addsuffix -generic, $(PLATFORMS)))
|
||||
|
||||
configs: $(CONFIGFILES)
|
||||
|
@ -81,9 +80,6 @@ temp-powerpc-generic: config-powerpc-generic temp-generic
|
|||
temp-powerpc-debug-generic: config-powerpc-generic temp-debug-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-powerpc32-generic: config-powerpc32-generic temp-powerpc-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-powerpc64-generic: config-powerpc64 temp-powerpc-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
|
@ -134,9 +130,3 @@ $(CFG)-armv7hl-lpae.config: /dev/null temp-armv7-lpae
|
|||
|
||||
$(CFG)-aarch64.config: /dev/null temp-arm64
|
||||
perl merge.pl $^ arm64 > $@
|
||||
|
||||
$(CFG)-ppc.config: /dev/null temp-powerpc32-generic
|
||||
perl merge.pl $^ powerpc > $@
|
||||
|
||||
$(CFG)-ppc-smp.config: config-powerpc32-smp temp-powerpc32-generic
|
||||
perl merge.pl $^ powerpc > $@
|
||||
|
|
|
@ -0,0 +1,116 @@
|
|||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Thu, 8 Mar 2012 10:10:38 -0500
|
||||
Subject: [PATCH] PCI: Lock down BAR access when module security is enabled
|
||||
|
||||
Any hardware that can potentially generate DMA has to be locked down from
|
||||
userspace in order to avoid it being possible for an attacker to modify
|
||||
kernel code, allowing them to circumvent disabled module loading or module
|
||||
signing. Default to paranoid - in future we can potentially relax this for
|
||||
sufficiently IOMMU-isolated devices.
|
||||
|
||||
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
---
|
||||
drivers/pci/pci-sysfs.c | 10 ++++++++++
|
||||
drivers/pci/proc.c | 8 +++++++-
|
||||
drivers/pci/syscall.c | 3 ++-
|
||||
3 files changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
|
||||
index 312f23a8429c..93e6ac103dd0 100644
|
||||
--- a/drivers/pci/pci-sysfs.c
|
||||
+++ b/drivers/pci/pci-sysfs.c
|
||||
@@ -30,6 +30,7 @@
|
||||
#include <linux/vgaarb.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/of.h>
|
||||
+#include <linux/module.h>
|
||||
#include "pci.h"
|
||||
|
||||
static int sysfs_initialized; /* = 0 */
|
||||
@@ -710,6 +711,9 @@ static ssize_t pci_write_config(struct file *filp, struct kobject *kobj,
|
||||
loff_t init_off = off;
|
||||
u8 *data = (u8 *) buf;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
if (off > dev->cfg_size)
|
||||
return 0;
|
||||
if (off + count > dev->cfg_size) {
|
||||
@@ -1004,6 +1008,9 @@ static int pci_mmap_resource(struct kobject *kobj, struct bin_attribute *attr,
|
||||
resource_size_t start, end;
|
||||
int i;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
for (i = 0; i < PCI_ROM_RESOURCE; i++)
|
||||
if (res == &pdev->resource[i])
|
||||
break;
|
||||
@@ -1105,6 +1112,9 @@ static ssize_t pci_write_resource_io(struct file *filp, struct kobject *kobj,
|
||||
struct bin_attribute *attr, char *buf,
|
||||
loff_t off, size_t count)
|
||||
{
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
return pci_resource_io(filp, kobj, attr, buf, off, count, true);
|
||||
}
|
||||
|
||||
diff --git a/drivers/pci/proc.c b/drivers/pci/proc.c
|
||||
index 3f155e78513f..4265ea07e3b0 100644
|
||||
--- a/drivers/pci/proc.c
|
||||
+++ b/drivers/pci/proc.c
|
||||
@@ -116,6 +116,9 @@ static ssize_t proc_bus_pci_write(struct file *file, const char __user *buf,
|
||||
int size = dev->cfg_size;
|
||||
int cnt;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
if (pos >= size)
|
||||
return 0;
|
||||
if (nbytes >= size)
|
||||
@@ -195,6 +198,9 @@ static long proc_bus_pci_ioctl(struct file *file, unsigned int cmd,
|
||||
#endif /* HAVE_PCI_MMAP */
|
||||
int ret = 0;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
switch (cmd) {
|
||||
case PCIIOC_CONTROLLER:
|
||||
ret = pci_domain_nr(dev->bus);
|
||||
@@ -233,7 +239,7 @@ static int proc_bus_pci_mmap(struct file *file, struct vm_area_struct *vma)
|
||||
struct pci_filp_private *fpriv = file->private_data;
|
||||
int i, ret;
|
||||
|
||||
- if (!capable(CAP_SYS_RAWIO))
|
||||
+ if (!capable(CAP_SYS_RAWIO) || secure_modules())
|
||||
return -EPERM;
|
||||
|
||||
/* Make sure the caller is mapping a real resource for this device */
|
||||
diff --git a/drivers/pci/syscall.c b/drivers/pci/syscall.c
|
||||
index b91c4da68365..98f5637304d1 100644
|
||||
--- a/drivers/pci/syscall.c
|
||||
+++ b/drivers/pci/syscall.c
|
||||
@@ -10,6 +10,7 @@
|
||||
#include <linux/errno.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/syscalls.h>
|
||||
+#include <linux/module.h>
|
||||
#include <asm/uaccess.h>
|
||||
#include "pci.h"
|
||||
|
||||
@@ -92,7 +93,7 @@ SYSCALL_DEFINE5(pciconfig_write, unsigned long, bus, unsigned long, dfn,
|
||||
u32 dword;
|
||||
int err = 0;
|
||||
|
||||
- if (!capable(CAP_SYS_ADMIN))
|
||||
+ if (!capable(CAP_SYS_ADMIN) || secure_modules())
|
||||
return -EPERM;
|
||||
|
||||
dev = pci_get_bus_and_slot(bus, dfn);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Mar 2012 09:28:15 -0500
|
||||
Subject: [PATCH] Restrict /dev/mem and /dev/kmem when module loading is
|
||||
restricted
|
||||
|
||||
Allowing users to write to address space makes it possible for the kernel
|
||||
to be subverted, avoiding module loading restrictions. Prevent this when
|
||||
any restrictions have been imposed on loading modules.
|
||||
|
||||
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
---
|
||||
drivers/char/mem.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/drivers/char/mem.c b/drivers/char/mem.c
|
||||
index fc9637812d78..dde50e5bf527 100644
|
||||
--- a/drivers/char/mem.c
|
||||
+++ b/drivers/char/mem.c
|
||||
@@ -167,6 +167,9 @@ static ssize_t write_mem(struct file *file, const char __user *buf,
|
||||
if (p != *ppos)
|
||||
return -EFBIG;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
if (!valid_phys_addr_range(p, count))
|
||||
return -EFAULT;
|
||||
|
||||
@@ -505,6 +508,9 @@ static ssize_t write_kmem(struct file *file, const char __user *buf,
|
||||
char *kbuf; /* k-addr because vwrite() takes vmlist_lock rwlock */
|
||||
int err = 0;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
if (p < (unsigned long) high_memory) {
|
||||
unsigned long to_write = min_t(unsigned long, count,
|
||||
(unsigned long)high_memory - p);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,23 +1,24 @@
|
|||
Bugzilla: N/A
|
||||
Upstream-status: Sigh. We almost got to drop this.
|
||||
|
||||
From 20e3f1e1b9341d233a11734c07c076caac9936ef Mon Sep 17 00:00:00 2001
|
||||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Mon, 28 Jul 2014 12:59:48 -0400
|
||||
Subject: [PATCH] Revert "Revert "ACPI / video: change acpi-video
|
||||
brightness_switch_enabled default to 0""
|
||||
|
||||
This reverts commit 2843768b701971ab10e62c77d5c75ad7c306f1bd.
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Sigh. We almost got to drop this.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
Documentation/kernel-parameters.txt | 2 +-
|
||||
drivers/acpi/video.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
|
||||
index b7fa2f599459..e8db409a7e3a 100644
|
||||
index 176d4fe4f076..bd374bd2490b 100644
|
||||
--- a/Documentation/kernel-parameters.txt
|
||||
+++ b/Documentation/kernel-parameters.txt
|
||||
@@ -3532,7 +3532,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
||||
@@ -3793,7 +3793,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
||||
the allocated input device; If set to 0, video driver
|
||||
will only send out the event without touching backlight
|
||||
brightness level.
|
||||
|
@ -27,7 +28,7 @@ index b7fa2f599459..e8db409a7e3a 100644
|
|||
virtio_mmio.device=
|
||||
[VMMIO] Memory mapped virtio (platform) device.
|
||||
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
|
||||
index 350d52a8f781..44c89f705018 100644
|
||||
index 3647ce71154c..9dc8ba086596 100644
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -68,7 +68,7 @@ MODULE_AUTHOR("Bruno Ducrot");
|
||||
|
@ -40,5 +41,5 @@ index 350d52a8f781..44c89f705018 100644
|
|||
|
||||
/*
|
||||
--
|
||||
1.9.3
|
||||
2.1.0
|
||||
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
From: Josh Boyer <jwboyer@redhat.com>
|
||||
Date: Mon, 25 Jun 2012 19:57:30 -0400
|
||||
Subject: [PATCH] acpi: Ignore acpi_rsdp kernel parameter when module loading
|
||||
is restricted
|
||||
|
||||
This option allows userspace to pass the RSDP address to the kernel, which
|
||||
makes it possible for a user to circumvent any restrictions imposed on
|
||||
loading modules. Disable it in that case.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@redhat.com>
|
||||
---
|
||||
drivers/acpi/osl.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
|
||||
index f9eeae871593..aa1dcf3d0216 100644
|
||||
--- a/drivers/acpi/osl.c
|
||||
+++ b/drivers/acpi/osl.c
|
||||
@@ -44,6 +44,7 @@
|
||||
#include <linux/list.h>
|
||||
#include <linux/jiffies.h>
|
||||
#include <linux/semaphore.h>
|
||||
+#include <linux/module.h>
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <asm/uaccess.h>
|
||||
@@ -255,7 +256,7 @@ early_param("acpi_rsdp", setup_acpi_rsdp);
|
||||
acpi_physical_address __init acpi_os_get_root_pointer(void)
|
||||
{
|
||||
#ifdef CONFIG_KEXEC
|
||||
- if (acpi_rsdp)
|
||||
+ if (acpi_rsdp && !secure_modules())
|
||||
return acpi_rsdp;
|
||||
#endif
|
||||
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Fri, 9 Jan 2015 15:28:29 +0100
|
||||
Subject: [PATCH] acpi-video: Add disable_native_backlight quirk for Samsung
|
||||
730U3E/740U3E
|
||||
|
||||
The Samsung 730U3E/740U3E has integrated ATI Radeon graphics, and backlight
|
||||
control does not work properly when using the native interfaces.
|
||||
|
||||
BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1094948
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/acpi/video.c | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
|
||||
index 25863442b6ae..5c4e35bebd3b 100644
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -505,7 +505,15 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "HP ENVY 15 Notebook PC"),
|
||||
},
|
||||
},
|
||||
-
|
||||
+ {
|
||||
+ /* https://bugzilla.redhat.com/show_bug.cgi?id=1094948 */
|
||||
+ .callback = video_disable_native_backlight,
|
||||
+ .ident = "SAMSUNG 730U3E/740U3E",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),
|
||||
+ DMI_MATCH(DMI_PRODUCT_NAME, "730U3E/740U3E"),
|
||||
+ },
|
||||
+ },
|
||||
{
|
||||
.callback = video_disable_native_backlight,
|
||||
.ident = "SAMSUNG 870Z5E/880Z5E/680Z5E",
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,84 @@
|
|||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Tue, 3 Mar 2015 08:31:24 +0100
|
||||
Subject: [PATCH] acpi: video: Add force native backlight quirk for Lenovo
|
||||
Ideapad Z570
|
||||
|
||||
The Lenovo Ideapad Z570 (which is an Acer in disguise like some other Ideapads)
|
||||
has a broken acpi_video interface, this was fixed in commmit a11d342fb8
|
||||
("ACPI / video: force vendor backlight on Lenovo Ideapad Z570").
|
||||
|
||||
Which stops acpi_video from registering a backlight interface, but this is
|
||||
only a partial fix, because for people who have the ideapad-laptop module
|
||||
installed that module will now register a backlight interface, which also
|
||||
does not work, so we need to use the native intel_backlight interface.
|
||||
|
||||
The Lenovo Ideapad 570 is a pre-win8 laptop / too old for the acpi-video code
|
||||
to automatically prefer the native backlight interface, so add a quirk for it.
|
||||
|
||||
This commit also removes the previous incomplete fix.
|
||||
|
||||
BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1187004
|
||||
Cc: Stepan Bujnak <stepanbujnak@fastmail.fm>
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/acpi/video.c | 17 +++++++++++++++++
|
||||
drivers/acpi/video_detect.c | 8 --------
|
||||
2 files changed, 17 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
|
||||
index 2f1f16df460c..16d744e4552f 100644
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -425,6 +425,12 @@ static int __init video_disable_native_backlight(const struct dmi_system_id *d)
|
||||
return 0;
|
||||
}
|
||||
|
||||
+static int __init video_enable_native_backlight(const struct dmi_system_id *d)
|
||||
+{
|
||||
+ use_native_backlight_dmi = NATIVE_BACKLIGHT_ON;
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
/*
|
||||
* Broken _BQC workaround http://bugzilla.kernel.org/show_bug.cgi?id=13121
|
||||
@@ -556,6 +562,17 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "XPS L521X"),
|
||||
},
|
||||
},
|
||||
+
|
||||
+ /* Non win8 machines which need native backlight nevertheless */
|
||||
+ {
|
||||
+ /* https://bugzilla.redhat.com/show_bug.cgi?id=1187004 */
|
||||
+ .callback = video_enable_native_backlight,
|
||||
+ .ident = "Lenovo Ideapad Z570",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
|
||||
+ DMI_MATCH(DMI_PRODUCT_NAME, "102434U"),
|
||||
+ },
|
||||
+ },
|
||||
{}
|
||||
};
|
||||
|
||||
diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c
|
||||
index 27c43499977a..c42feb2bacd0 100644
|
||||
--- a/drivers/acpi/video_detect.c
|
||||
+++ b/drivers/acpi/video_detect.c
|
||||
@@ -174,14 +174,6 @@ static struct dmi_system_id video_detect_dmi_table[] = {
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 5737"),
|
||||
},
|
||||
},
|
||||
- {
|
||||
- .callback = video_detect_force_vendor,
|
||||
- .ident = "Lenovo IdeaPad Z570",
|
||||
- .matches = {
|
||||
- DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
|
||||
- DMI_MATCH(DMI_PRODUCT_VERSION, "Ideapad Z570"),
|
||||
- },
|
||||
- },
|
||||
{ },
|
||||
};
|
||||
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
Bugzilla: 1093171
|
||||
Upstream-status: Queued for 3.16
|
||||
|
||||
From 7ac976d0109433d1ad0812f4f6889a904d9a0c40 Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Mon, 2 Jun 2014 17:41:10 +0200
|
||||
Subject: [PATCH 13/14] acpi-video: Add use native backlight quirk for the
|
||||
ThinkPad W530
|
||||
|
||||
Like all of the other *30 ThinkPad models, the W530 has a broken acpi-video
|
||||
backlight control. Note in order for this to actually fix things on the
|
||||
ThinkPad W530 the commit titled:
|
||||
"nouveau: Don't check acpi_video_backlight_support() before registering backlight"
|
||||
is also needed.
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1093171
|
||||
|
||||
Cc: stable@vger.kernel.org
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/acpi/video.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
|
||||
index ab7cd65ce21e..dcb0ef4c22f6 100644
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -468,6 +468,14 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
},
|
||||
{
|
||||
.callback = video_set_use_native_backlight,
|
||||
+ .ident = "ThinkPad W530",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
|
||||
+ DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad W530"),
|
||||
+ },
|
||||
+ },
|
||||
+ {
|
||||
+ .callback = video_set_use_native_backlight,
|
||||
.ident = "ThinkPad X230",
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
|
||||
--
|
||||
1.9.0
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
Bugzilla: 1025690
|
||||
Upstream-status: Waiting for feedback from reporter
|
||||
|
||||
From dfe2c6722a6f6cb45f6b336b094b26a77acd8393 Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Mon, 2 Jun 2014 17:41:11 +0200
|
||||
Subject: [PATCH 14/14] acpi-video: Add use_native_backlight quirk for HP
|
||||
ProBook 4540s
|
||||
|
||||
As reported here:
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1025690
|
||||
This is yet another model which needs this quirk.
|
||||
|
||||
Cc: stable@vger.kernel.org
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/acpi/video.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
|
||||
index dcb0ef4c22f6..3db16753f88a 100644
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -548,6 +548,14 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
},
|
||||
{
|
||||
.callback = video_set_use_native_backlight,
|
||||
+ .ident = "HP ProBook 4540s",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
|
||||
+ DMI_MATCH(DMI_PRODUCT_VERSION, "HP ProBook 4540s"),
|
||||
+ },
|
||||
+ },
|
||||
+ {
|
||||
+ .callback = video_set_use_native_backlight,
|
||||
.ident = "HP ProBook 2013 models",
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
|
||||
--
|
||||
1.9.0
|
||||
|
|
@ -0,0 +1,76 @@
|
|||
From: Aaron Lu <aaron.lu@intel.com>
|
||||
Date: Wed, 11 Mar 2015 14:14:56 +0800
|
||||
Subject: [PATCH] acpi: video: Allow forcing native backlight on non win8
|
||||
machines
|
||||
|
||||
The native backlight behavior (so not registering both the acpi-video
|
||||
and the vendor backlight driver) can be useful on some non win8 machines
|
||||
too, so change the behavior of the video.use_native_backlight=1 or 0
|
||||
kernel cmdline option to be: if user has set video.use_native_backlight=1
|
||||
or 0, use that no matter if it is a win8 system or not. Also, we will
|
||||
put some known systems into the DMI table to make them either use native
|
||||
backlight interface or not, and the use_native_backlight_dmi is used to
|
||||
reflect that.
|
||||
|
||||
Original-by: Hans de Goede <hdegoede@redhat.com>
|
||||
Signed-off-by: Aaron Lu <aaron.lu@intel.com>
|
||||
Acked-by: Hans de Goede <hdegoede@redhat.com>
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/acpi/video.c | 19 +++++++++++++------
|
||||
1 file changed, 13 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
|
||||
index 497622ce5c31..2f1f16df460c 100644
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -82,9 +82,15 @@ module_param(allow_duplicates, bool, 0644);
|
||||
* For Windows 8 systems: used to decide if video module
|
||||
* should skip registering backlight interface of its own.
|
||||
*/
|
||||
-static int use_native_backlight_param = -1;
|
||||
+enum {
|
||||
+ NATIVE_BACKLIGHT_NOT_SET = -1,
|
||||
+ NATIVE_BACKLIGHT_OFF,
|
||||
+ NATIVE_BACKLIGHT_ON,
|
||||
+};
|
||||
+
|
||||
+static int use_native_backlight_param = NATIVE_BACKLIGHT_NOT_SET;
|
||||
module_param_named(use_native_backlight, use_native_backlight_param, int, 0444);
|
||||
-static bool use_native_backlight_dmi = true;
|
||||
+static int use_native_backlight_dmi = NATIVE_BACKLIGHT_NOT_SET;
|
||||
|
||||
static int register_count;
|
||||
static struct mutex video_list_lock;
|
||||
@@ -237,15 +243,16 @@ static void acpi_video_switch_brightness(struct work_struct *work);
|
||||
|
||||
static bool acpi_video_use_native_backlight(void)
|
||||
{
|
||||
- if (use_native_backlight_param != -1)
|
||||
+ if (use_native_backlight_param != NATIVE_BACKLIGHT_NOT_SET)
|
||||
return use_native_backlight_param;
|
||||
- else
|
||||
+ else if (use_native_backlight_dmi != NATIVE_BACKLIGHT_NOT_SET)
|
||||
return use_native_backlight_dmi;
|
||||
+ return acpi_osi_is_win8();
|
||||
}
|
||||
|
||||
bool acpi_video_verify_backlight_support(void)
|
||||
{
|
||||
- if (acpi_osi_is_win8() && acpi_video_use_native_backlight() &&
|
||||
+ if (acpi_video_use_native_backlight() &&
|
||||
backlight_device_registered(BACKLIGHT_RAW))
|
||||
return false;
|
||||
return acpi_video_backlight_support();
|
||||
@@ -414,7 +421,7 @@ static int __init video_set_bqc_offset(const struct dmi_system_id *d)
|
||||
|
||||
static int __init video_disable_native_backlight(const struct dmi_system_id *d)
|
||||
{
|
||||
- use_native_backlight_dmi = false;
|
||||
+ use_native_backlight_dmi = NATIVE_BACKLIGHT_OFF;
|
||||
return 0;
|
||||
}
|
||||
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
From b29c0d36da67a64f5de1fe167c0b807815aa1da4 Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Wed, 4 Feb 2015 14:44:51 +0100
|
||||
Subject: [PATCH 2/2] acpi-video: Add disable_native_backlight quirk for
|
||||
Samsung 510R
|
||||
|
||||
Backlight control through the native intel interface does not work properly
|
||||
on the Samsung 510R, where as using the acpi_video interface does work, add
|
||||
a quirk for this.
|
||||
|
||||
BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1186097
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/acpi/video.c | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
|
||||
index 497d986..88a4f99 100644
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -523,6 +523,15 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
},
|
||||
},
|
||||
{
|
||||
+ /* https://bugzilla.redhat.com/show_bug.cgi?id=1186097 */
|
||||
+ .callback = video_disable_native_backlight,
|
||||
+ .ident = "SAMSUNG 3570R/370R/470R/450R/510R/4450RV",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),
|
||||
+ DMI_MATCH(DMI_PRODUCT_NAME, "3570R/370R/470R/450R/510R/4450RV"),
|
||||
+ },
|
||||
+ },
|
||||
+ {
|
||||
/* https://bugzilla.redhat.com/show_bug.cgi?id=1094948 */
|
||||
.callback = video_disable_native_backlight,
|
||||
.ident = "SAMSUNG 730U3E/740U3E",
|
||||
--
|
||||
2.1.0
|
||||
|
460
arm-beagle.patch
460
arm-beagle.patch
|
@ -1,460 +0,0 @@
|
|||
Bugzilla: 1012025
|
||||
Upstream-status: In beagle github repository https://github.com/beagleboard/kernel
|
||||
|
||||
From b5a2528c89fc8049b2a6a750634c14983e33d00f Mon Sep 17 00:00:00 2001
|
||||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Fri, 27 Dec 2013 13:05:09 -0600
|
||||
Subject: [PATCH] arm: dts: am335x-boneblack: lcdc add panel-info
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-boneblack.dts | 13 +++++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
index 6b71ad9..09ffbd8 100644
|
||||
--- a/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
+++ b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
@@ -74,5 +74,18 @@
|
||||
pinctrl-0 = <&nxp_hdmi_bonelt_pins>;
|
||||
pinctrl-1 = <&nxp_hdmi_bonelt_off_pins>;
|
||||
status = "okay";
|
||||
+
|
||||
+ panel-info {
|
||||
+ bpp = <16>;
|
||||
+ ac-bias = <255>;
|
||||
+ ac-bias-intrpt = <0>;
|
||||
+ dma-burst-sz = <16>;
|
||||
+ fdd = <16>;
|
||||
+ sync-edge = <1>;
|
||||
+ sync-ctrl = <1>;
|
||||
+ raster-order = <0>;
|
||||
+ fifo-th = <0>;
|
||||
+ invert-pxl-clk;
|
||||
+ };
|
||||
};
|
||||
};
|
||||
--
|
||||
1.8.5.1
|
||||
|
||||
From 1da083a002581520dd358b8b8e097078000d12b9 Mon Sep 17 00:00:00 2001
|
||||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Fri, 27 Dec 2013 13:14:19 -0600
|
||||
Subject: [PATCH 2/2] arm: dts: am335x-boneblack: add cpu0 opp points
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-boneblack.dts | 18 ++++++++++++++++++
|
||||
1 file changed, 18 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
index 09ffbd8..f213ccd 100644
|
||||
--- a/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
+++ b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
@@ -67,6 +67,24 @@
|
||||
};
|
||||
|
||||
/ {
|
||||
+ cpus {
|
||||
+ cpu@0 {
|
||||
+ cpu0-supply = <&dcdc2_reg>;
|
||||
+ /*
|
||||
+ * To consider voltage drop between PMIC and SoC,
|
||||
+ * tolerance value is reduced to 2% from 4% and
|
||||
+ * voltage value is increased as a precaution.
|
||||
+ */
|
||||
+ operating-points = <
|
||||
+ /* kHz uV */
|
||||
+ 1000000 1325000
|
||||
+ 800000 1300000
|
||||
+ 600000 1112000
|
||||
+ 300000 969000
|
||||
+ >;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
hdmi {
|
||||
compatible = "ti,tilcdc,slave";
|
||||
i2c = <&i2c0>;
|
||||
--
|
||||
1.8.5.1
|
||||
|
||||
From 8551d8aa7d3e002da2097e7e902fb96fceb8694e Mon Sep 17 00:00:00 2001
|
||||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Tue, 31 Dec 2013 11:17:45 -0600
|
||||
Subject: [PATCH 3/3] arm: dts: am335x-bone-common: enable and use i2c2
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-bone-common.dtsi | 39 +++++++++++++++++++++++++++++++
|
||||
1 file changed, 39 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
index e3f27ec..54366b6 100644
|
||||
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
@@ -84,6 +84,13 @@
|
||||
>;
|
||||
};
|
||||
|
||||
+ i2c2_pins: pinmux_i2c2_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x178 0x73 /* (SLEWCTRL_SLOW | PIN_INPUT_PULLUP | MUX_MODE3) uart1_ctsn.i2c2_sda */
|
||||
+ 0x17c 0x73 /* (SLEWCTRL_SLOW | PIN_INPUT_PULLUP | MUX_MODE3) uart1_rtsn.i2c2_scl */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
uart0_pins: pinmux_uart0_pins {
|
||||
pinctrl-single,pins = <
|
||||
0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
|
||||
@@ -220,6 +227,38 @@
|
||||
reg = <0x24>;
|
||||
};
|
||||
|
||||
+ baseboard_eeprom: baseboard_eeprom@50 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x50>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&i2c2 {
|
||||
+ status = "okay";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&i2c2_pins>;
|
||||
+
|
||||
+ clock-frequency = <100000>;
|
||||
+
|
||||
+ cape_eeprom0: cape_eeprom0@54 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x54>;
|
||||
+ };
|
||||
+
|
||||
+ cape_eeprom1: cape_eeprom1@55 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x55>;
|
||||
+ };
|
||||
+
|
||||
+ cape_eeprom2: cape_eeprom2@56 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x56>;
|
||||
+ };
|
||||
+
|
||||
+ cape_eeprom3: cape_eeprom3@57 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x57>;
|
||||
+ };
|
||||
};
|
||||
|
||||
/include/ "tps65217.dtsi"
|
||||
--
|
||||
1.8.5.2
|
||||
|
||||
From a3099dc53a47d1694a5b575580ec3406dc429bf8 Mon Sep 17 00:00:00 2001
|
||||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Tue, 31 Dec 2013 14:18:00 -0600
|
||||
Subject: [PATCH 4/4] arm: dts: am335x-bone-common: setup default pinmux
|
||||
http://elinux.org/Basic_Proto_Cape
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-bone-common.dtsi | 130 ++++++++++++++++++++++++++++++
|
||||
1 file changed, 130 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
index e4571af..f85cabc 100644
|
||||
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
@@ -98,6 +98,13 @@
|
||||
>;
|
||||
};
|
||||
|
||||
+ uart1_pins: pinmux_uart1_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x180 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rxd.uart1_rxd */
|
||||
+ 0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart1_txd.uart1_txd */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
clkout2_pin: pinmux_clkout2_pin {
|
||||
pinctrl-single,pins = <
|
||||
0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
|
||||
@@ -178,6 +185,33 @@
|
||||
0x1c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
|
||||
>;
|
||||
};
|
||||
+
|
||||
+ spi0_pins: pinmux_spi0_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x150 (PIN_INPUT_PULLUP | MUX_MODE0) /* spi0_sclk.spi0_sclk */
|
||||
+ 0x154 (PIN_INPUT_PULLUP | MUX_MODE0) /* spi0_d0.spi0_d0 */
|
||||
+ 0x158 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* spi0_d1.spi0_d1 */
|
||||
+ 0x15c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* spi0_cs0.spi0_cs0 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ ehrpwm1_pin_p9_14: pinmux_ehrpwm1_pin_p9_14 {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x048 0x6 /* P9_14 (ZCZ ball U14) | MODE 6 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ ehrpwm1_pin_p9_16: pinmux_ehrpwm1_pin_p9_16 {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x04c 0x6 /* P9_16 (ZCZ ball T14) | MODE 6 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ ecap0_pin_p9_42: pinmux_ecap0_pin_p9_42 {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x164 0x0 /* P9_42 (ZCZ ball C18) | MODE 0 */
|
||||
+ >;
|
||||
+ };
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
@@ -187,6 +221,13 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&uart1 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&uart1_pins>;
|
||||
+
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&usb {
|
||||
status = "okay";
|
||||
|
||||
@@ -261,6 +302,56 @@
|
||||
};
|
||||
};
|
||||
|
||||
+&epwmss0 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&ecap0_pin_p9_42>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ ecap@48300100 {
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&epwmss1 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <
|
||||
+ &ehrpwm1_pin_p9_14
|
||||
+ &ehrpwm1_pin_p9_16
|
||||
+ >;
|
||||
+
|
||||
+ status = "okay";
|
||||
+
|
||||
+ ehrpwm@48302200 {
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&spi0 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&spi0_pins>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ spidev0: spi@0 {
|
||||
+ compatible = "spidev";
|
||||
+ reg = <0>;
|
||||
+ spi-max-frequency = <16000000>;
|
||||
+ spi-cpha;
|
||||
+ };
|
||||
+
|
||||
+ spidev1: spi@1 {
|
||||
+ compatible = "spidev";
|
||||
+ reg = <1>;
|
||||
+ spi-max-frequency = <16000000>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&tscadc {
|
||||
+ status = "okay";
|
||||
+ adc {
|
||||
+ ti,adc-channels = <4 5 6>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
/include/ "tps65217.dtsi"
|
||||
|
||||
&tps {
|
||||
@@ -336,3 +427,42 @@
|
||||
cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
|
||||
cd-inverted;
|
||||
};
|
||||
+
|
||||
+/ {
|
||||
+ ocp {
|
||||
+ //FIXME: these pwm's still need work, this guild isn't working..
|
||||
+ //http://elinux.org/EBC_Exercise_13_Pulse_Width_Modulation
|
||||
+ pwm_test_P9_14@0 {
|
||||
+ compatible = "pwm_test";
|
||||
+ pwms = <&ehrpwm1 0 500000 1>;
|
||||
+ pwm-names = "PWM_P9_14";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&ehrpwm1_pin_p9_14>;
|
||||
+ enabled = <1>;
|
||||
+ duty = <0>;
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+
|
||||
+ pwm_test_P9_16@0 {
|
||||
+ compatible = "pwm_test";
|
||||
+ pwms = <&ehrpwm1 0 500000 1>;
|
||||
+ pwm-names = "PWM_P9_16";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&ehrpwm1_pin_p9_16>;
|
||||
+ enabled = <1>;
|
||||
+ duty = <0>;
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+
|
||||
+ pwm_test_P9_42 {
|
||||
+ compatible = "pwm_test";
|
||||
+ pwms = <&ecap0 0 500000 1>;
|
||||
+ pwm-names = "PWM_P9_42";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&ecap0_pin_p9_42>;
|
||||
+ enabled = <1>;
|
||||
+ duty = <0>;
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
--
|
||||
1.8.5.2
|
||||
|
||||
From b6e2c817edfc6d73874cf833daffe1be6c7ed8bb Mon Sep 17 00:00:00 2001
|
||||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Thu, 13 Mar 2014 14:18:52 -0500
|
||||
Subject: [PATCH] arm: dts: am335x-bone-common: add
|
||||
uart2_pins/uart4_pins/uart5_pins
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-bone-common.dtsi | 21 +++++++++++++++++++++
|
||||
1 file changed, 21 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
index f85cabc..5270d18 100644
|
||||
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
@@ -105,6 +105,27 @@
|
||||
>;
|
||||
};
|
||||
|
||||
+ uart2_pins: pinmux_uart2_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x150 0x21 /* spi0_sclk.uart2_rxd | MODE1 */
|
||||
+ 0x154 0x01 /* spi0_d0.uart2_txd | MODE1 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ uart4_pins: pinmux_uart4_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x070 0x26 /* gpmc_wait0.uart4_rxd | MODE6 */
|
||||
+ 0x074 0x06 /* gpmc_wpn.uart4_txd | MODE6 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ uart5_pins: pinmux_uart5_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x0C4 0x24 /* lcd_data9.uart5_rxd | MODE4 */
|
||||
+ 0x0C0 0x04 /* lcd_data8.uart5_txd | MODE4 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
clkout2_pin: pinmux_clkout2_pin {
|
||||
pinctrl-single,pins = <
|
||||
0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
|
||||
--
|
||||
1.9.0
|
||||
|
||||
From 72567452d5d6007010597158f6afd00e2bf07579 Mon Sep 17 00:00:00 2001
|
||||
From: Pantelis Antoniou <panto@antoniou-consulting.com>
|
||||
Date: Sat, 15 Sep 2012 12:00:41 +0300
|
||||
Subject: [PATCH] pinctrl: pinctrl-single must be initialized early.
|
||||
|
||||
When using pinctrl-single to handle i2c initialization, it has
|
||||
to be done early. Whether this is the best way to do so, is an
|
||||
exercise left to the reader.
|
||||
---
|
||||
drivers/pinctrl/pinctrl-single.c | 12 +++++++++++-
|
||||
1 file changed, 11 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-single.c
|
||||
index 829b98c..5107dcf 100644
|
||||
--- a/drivers/pinctrl/pinctrl-single.c
|
||||
+++ b/drivers/pinctrl/pinctrl-single.c
|
||||
@@ -2039,7 +2039,17 @@ static struct platform_driver pcs_driver = {
|
||||
#endif
|
||||
};
|
||||
|
||||
-module_platform_driver(pcs_driver);
|
||||
+static int __init pcs_init(void)
|
||||
+{
|
||||
+ return platform_driver_register(&pcs_driver);
|
||||
+}
|
||||
+postcore_initcall(pcs_init);
|
||||
+
|
||||
+static void __exit pcs_exit(void)
|
||||
+{
|
||||
+ platform_driver_unregister(&pcs_driver);
|
||||
+}
|
||||
+module_exit(pcs_exit);
|
||||
|
||||
MODULE_AUTHOR("Tony Lindgren <tony@atomide.com>");
|
||||
MODULE_DESCRIPTION("One-register-per-pin type device tree based pinctrl driver");
|
||||
--
|
||||
1.8.5.2
|
||||
|
||||
From b6e2c817edfc6d73874cf833daffe1be6c7ed8bb Mon Sep 17 00:00:00 2001
|
||||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Thu, 13 Mar 2014 14:18:52 -0500
|
||||
Subject: [PATCH] arm: dts: am335x-bone-common: add
|
||||
uart2_pins/uart4_pins/uart5_pins
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-bone-common.dtsi | 21 +++++++++++++++++++++
|
||||
1 file changed, 21 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
index f85cabc..5270d18 100644
|
||||
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
@@ -105,6 +105,27 @@
|
||||
>;
|
||||
};
|
||||
|
||||
+ uart2_pins: pinmux_uart2_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x150 0x21 /* spi0_sclk.uart2_rxd | MODE1 */
|
||||
+ 0x154 0x01 /* spi0_d0.uart2_txd | MODE1 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ uart4_pins: pinmux_uart4_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x070 0x26 /* gpmc_wait0.uart4_rxd | MODE6 */
|
||||
+ 0x074 0x06 /* gpmc_wpn.uart4_txd | MODE6 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ uart5_pins: pinmux_uart5_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x0C4 0x24 /* lcd_data9.uart5_rxd | MODE4 */
|
||||
+ 0x0C0 0x04 /* lcd_data8.uart5_txd | MODE4 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
clkout2_pin: pinmux_clkout2_pin {
|
||||
pinctrl-single,pins = <
|
||||
0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
|
||||
--
|
||||
1.9.0
|
|
@ -0,0 +1,45 @@
|
|||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Thu, 13 Mar 2014 14:18:52 -0500
|
||||
Subject: [PATCH] arm: dts: am335x-bone-common: add
|
||||
uart2_pins/uart4_pins/uart5_pins
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-bone-common.dtsi | 21 +++++++++++++++++++++
|
||||
1 file changed, 21 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
index db880bf46135..c931ec7201c0 100644
|
||||
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
@@ -102,6 +102,27 @@
|
||||
>;
|
||||
};
|
||||
|
||||
+ uart2_pins: pinmux_uart2_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x150 0x21 /* spi0_sclk.uart2_rxd | MODE1 */
|
||||
+ 0x154 0x01 /* spi0_d0.uart2_txd | MODE1 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ uart4_pins: pinmux_uart4_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x070 0x26 /* gpmc_wait0.uart4_rxd | MODE6 */
|
||||
+ 0x074 0x06 /* gpmc_wpn.uart4_txd | MODE6 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ uart5_pins: pinmux_uart5_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x0C4 0x24 /* lcd_data9.uart5_rxd | MODE4 */
|
||||
+ 0x0C0 0x04 /* lcd_data8.uart5_txd | MODE4 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
clkout2_pin: pinmux_clkout2_pin {
|
||||
pinctrl-single,pins = <
|
||||
0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Tue, 31 Dec 2013 11:17:45 -0600
|
||||
Subject: [PATCH] arm: dts: am335x-bone-common: enable and use i2c2
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-bone-common.dtsi | 39 +++++++++++++++++++++++++++++++
|
||||
1 file changed, 39 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
index 2c6248d9a9ef..ec755eeb78ee 100644
|
||||
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
@@ -81,6 +81,13 @@
|
||||
>;
|
||||
};
|
||||
|
||||
+ i2c2_pins: pinmux_i2c2_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x178 0x73 /* (SLEWCTRL_SLOW | PIN_INPUT_PULLUP | MUX_MODE3) uart1_ctsn.i2c2_sda */
|
||||
+ 0x17c 0x73 /* (SLEWCTRL_SLOW | PIN_INPUT_PULLUP | MUX_MODE3) uart1_rtsn.i2c2_scl */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
uart0_pins: pinmux_uart0_pins {
|
||||
pinctrl-single,pins = <
|
||||
0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
|
||||
@@ -218,6 +225,38 @@
|
||||
reg = <0x24>;
|
||||
};
|
||||
|
||||
+ baseboard_eeprom: baseboard_eeprom@50 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x50>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&i2c2 {
|
||||
+ status = "okay";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&i2c2_pins>;
|
||||
+
|
||||
+ clock-frequency = <100000>;
|
||||
+
|
||||
+ cape_eeprom0: cape_eeprom0@54 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x54>;
|
||||
+ };
|
||||
+
|
||||
+ cape_eeprom1: cape_eeprom1@55 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x55>;
|
||||
+ };
|
||||
+
|
||||
+ cape_eeprom2: cape_eeprom2@56 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x56>;
|
||||
+ };
|
||||
+
|
||||
+ cape_eeprom3: cape_eeprom3@57 {
|
||||
+ compatible = "at,24c256";
|
||||
+ reg = <0x57>;
|
||||
+ };
|
||||
};
|
||||
|
||||
/include/ "tps65217.dtsi"
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,179 @@
|
|||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Tue, 31 Dec 2013 14:18:00 -0600
|
||||
Subject: [PATCH] arm: dts: am335x-bone-common: setup default pinmux
|
||||
http://elinux.org/Basic_Proto_Cape
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-bone-common.dtsi | 130 ++++++++++++++++++++++++++++++
|
||||
1 file changed, 130 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
index ec755eeb78ee..db880bf46135 100644
|
||||
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
@@ -95,6 +95,13 @@
|
||||
>;
|
||||
};
|
||||
|
||||
+ uart1_pins: pinmux_uart1_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x180 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rxd.uart1_rxd */
|
||||
+ 0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart1_txd.uart1_txd */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
clkout2_pin: pinmux_clkout2_pin {
|
||||
pinctrl-single,pins = <
|
||||
0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
|
||||
@@ -175,6 +182,33 @@
|
||||
0x1c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
|
||||
>;
|
||||
};
|
||||
+
|
||||
+ spi0_pins: pinmux_spi0_pins {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x150 (PIN_INPUT_PULLUP | MUX_MODE0) /* spi0_sclk.spi0_sclk */
|
||||
+ 0x154 (PIN_INPUT_PULLUP | MUX_MODE0) /* spi0_d0.spi0_d0 */
|
||||
+ 0x158 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* spi0_d1.spi0_d1 */
|
||||
+ 0x15c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* spi0_cs0.spi0_cs0 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ ehrpwm1_pin_p9_14: pinmux_ehrpwm1_pin_p9_14 {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x048 0x6 /* P9_14 (ZCZ ball U14) | MODE 6 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ ehrpwm1_pin_p9_16: pinmux_ehrpwm1_pin_p9_16 {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x04c 0x6 /* P9_16 (ZCZ ball T14) | MODE 6 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ ecap0_pin_p9_42: pinmux_ecap0_pin_p9_42 {
|
||||
+ pinctrl-single,pins = <
|
||||
+ 0x164 0x0 /* P9_42 (ZCZ ball C18) | MODE 0 */
|
||||
+ >;
|
||||
+ };
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
@@ -184,6 +218,13 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&uart1 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&uart1_pins>;
|
||||
+
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&usb {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -259,6 +300,56 @@
|
||||
};
|
||||
};
|
||||
|
||||
+&epwmss0 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&ecap0_pin_p9_42>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ ecap@48300100 {
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&epwmss1 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <
|
||||
+ &ehrpwm1_pin_p9_14
|
||||
+ &ehrpwm1_pin_p9_16
|
||||
+ >;
|
||||
+
|
||||
+ status = "okay";
|
||||
+
|
||||
+ ehrpwm@48302200 {
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&spi0 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&spi0_pins>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ spidev0: spi@0 {
|
||||
+ compatible = "spidev";
|
||||
+ reg = <0>;
|
||||
+ spi-max-frequency = <16000000>;
|
||||
+ spi-cpha;
|
||||
+ };
|
||||
+
|
||||
+ spidev1: spi@1 {
|
||||
+ compatible = "spidev";
|
||||
+ reg = <1>;
|
||||
+ spi-max-frequency = <16000000>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&tscadc {
|
||||
+ status = "okay";
|
||||
+ adc {
|
||||
+ ti,adc-channels = <4 5 6>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
/include/ "tps65217.dtsi"
|
||||
|
||||
&tps {
|
||||
@@ -340,3 +431,42 @@
|
||||
cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
|
||||
cd-inverted;
|
||||
};
|
||||
+
|
||||
+/ {
|
||||
+ ocp {
|
||||
+ //FIXME: these pwm's still need work, this guild isn't working..
|
||||
+ //http://elinux.org/EBC_Exercise_13_Pulse_Width_Modulation
|
||||
+ pwm_test_P9_14@0 {
|
||||
+ compatible = "pwm_test";
|
||||
+ pwms = <&ehrpwm1 0 500000 1>;
|
||||
+ pwm-names = "PWM_P9_14";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&ehrpwm1_pin_p9_14>;
|
||||
+ enabled = <1>;
|
||||
+ duty = <0>;
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+
|
||||
+ pwm_test_P9_16@0 {
|
||||
+ compatible = "pwm_test";
|
||||
+ pwms = <&ehrpwm1 0 500000 1>;
|
||||
+ pwm-names = "PWM_P9_16";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&ehrpwm1_pin_p9_16>;
|
||||
+ enabled = <1>;
|
||||
+ duty = <0>;
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+
|
||||
+ pwm_test_P9_42 {
|
||||
+ compatible = "pwm_test";
|
||||
+ pwms = <&ecap0 0 500000 1>;
|
||||
+ pwm-names = "PWM_P9_42";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&ecap0_pin_p9_42>;
|
||||
+ enabled = <1>;
|
||||
+ duty = <0>;
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Fri, 27 Dec 2013 13:14:19 -0600
|
||||
Subject: [PATCH] arm: dts: am335x-boneblack: add cpu0 opp points
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-boneblack.dts | 18 ++++++++++++++++++
|
||||
1 file changed, 18 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
index 0fd89c38cf02..20660917a06f 100644
|
||||
--- a/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
+++ b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
@@ -71,6 +71,24 @@
|
||||
};
|
||||
|
||||
/ {
|
||||
+ cpus {
|
||||
+ cpu@0 {
|
||||
+ cpu0-supply = <&dcdc2_reg>;
|
||||
+ /*
|
||||
+ * To consider voltage drop between PMIC and SoC,
|
||||
+ * tolerance value is reduced to 2% from 4% and
|
||||
+ * voltage value is increased as a precaution.
|
||||
+ */
|
||||
+ operating-points = <
|
||||
+ /* kHz uV */
|
||||
+ 1000000 1325000
|
||||
+ 800000 1300000
|
||||
+ 600000 1112000
|
||||
+ 300000 969000
|
||||
+ >;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
hdmi {
|
||||
compatible = "ti,tilcdc,slave";
|
||||
i2c = <&i2c0>;
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
From: Robert Nelson <robertcnelson@gmail.com>
|
||||
Date: Fri, 27 Dec 2013 13:05:09 -0600
|
||||
Subject: [PATCH] arm: dts: am335x-boneblack: lcdc add panel-info
|
||||
|
||||
Bugzilla: 1012025
|
||||
Upstream-status: In beagle github repository https://github.com/beagleboard/kernel
|
||||
|
||||
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/am335x-boneblack.dts | 13 +++++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
index 5c42d259fa68..0fd89c38cf02 100644
|
||||
--- a/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
+++ b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
@@ -78,6 +78,19 @@
|
||||
pinctrl-0 = <&nxp_hdmi_bonelt_pins>;
|
||||
pinctrl-1 = <&nxp_hdmi_bonelt_off_pins>;
|
||||
status = "okay";
|
||||
+
|
||||
+ panel-info {
|
||||
+ bpp = <16>;
|
||||
+ ac-bias = <255>;
|
||||
+ ac-bias-intrpt = <0>;
|
||||
+ dma-burst-sz = <16>;
|
||||
+ fdd = <16>;
|
||||
+ sync-edge = <1>;
|
||||
+ sync-ctrl = <1>;
|
||||
+ raster-order = <0>;
|
||||
+ fifo-th = <0>;
|
||||
+ invert-pxl-clk;
|
||||
+ };
|
||||
};
|
||||
};
|
||||
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
From: Kyle McMartin <kmcmartin@redhat.com>
|
||||
Date: Tue, 30 Sep 2014 16:19:47 -0400
|
||||
Subject: [PATCH] arm: highbank l2 reverts
|
||||
|
||||
Revert some v3.16 changes to mach-highbank which broke L2 cache enablement.
|
||||
Will debug upstream separately, but we need F22/21 running there. (#1139762)
|
||||
---
|
||||
arch/arm/mach-highbank/highbank.c | 21 ++++++++++++---------
|
||||
1 file changed, 12 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/mach-highbank/highbank.c b/arch/arm/mach-highbank/highbank.c
|
||||
index 07a09570175d..5db6d14fcd67 100644
|
||||
--- a/arch/arm/mach-highbank/highbank.c
|
||||
+++ b/arch/arm/mach-highbank/highbank.c
|
||||
@@ -51,13 +51,11 @@ static void __init highbank_scu_map_io(void)
|
||||
}
|
||||
|
||||
|
||||
-static void highbank_l2c310_write_sec(unsigned long val, unsigned reg)
|
||||
+static void highbank_l2x0_disable(void)
|
||||
{
|
||||
- if (reg == L2X0_CTRL)
|
||||
- highbank_smc1(0x102, val);
|
||||
- else
|
||||
- WARN_ONCE(1, "Highbank L2C310: ignoring write to reg 0x%x\n",
|
||||
- reg);
|
||||
+ outer_flush_all();
|
||||
+ /* Disable PL310 L2 Cache controller */
|
||||
+ highbank_smc1(0x102, 0x0);
|
||||
}
|
||||
|
||||
static void __init highbank_init_irq(void)
|
||||
@@ -66,6 +64,14 @@ static void __init highbank_init_irq(void)
|
||||
|
||||
if (of_find_compatible_node(NULL, NULL, "arm,cortex-a9"))
|
||||
highbank_scu_map_io();
|
||||
+
|
||||
+ /* Enable PL310 L2 Cache controller */
|
||||
+ if (IS_ENABLED(CONFIG_CACHE_L2X0) &&
|
||||
+ of_find_compatible_node(NULL, NULL, "arm,pl310-cache")) {
|
||||
+ highbank_smc1(0x102, 0x1);
|
||||
+ l2x0_of_init(0, ~0);
|
||||
+ outer_cache.disable = highbank_l2x0_disable;
|
||||
+ }
|
||||
}
|
||||
|
||||
static void highbank_power_off(void)
|
||||
@@ -179,9 +185,6 @@ DT_MACHINE_START(HIGHBANK, "Highbank")
|
||||
#if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
|
||||
.dma_zone_size = (4ULL * SZ_1G),
|
||||
#endif
|
||||
- .l2c_aux_val = 0,
|
||||
- .l2c_aux_mask = ~0,
|
||||
- .l2c_write_sec = highbank_l2c310_write_sec,
|
||||
.init_irq = highbank_init_irq,
|
||||
.init_machine = highbank_init,
|
||||
.dt_compat = highbank_match,
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,5 +1,13 @@
|
|||
From: Peter Robinson <pbrobinson@gmail.com>
|
||||
Date: Fri, 11 Jul 2014 00:10:56 +0100
|
||||
Subject: [PATCH] arm: i.MX6 Utilite device dtb
|
||||
|
||||
---
|
||||
arch/arm/boot/dts/imx6q-cm-fx6.dts | 38 ++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 38 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/imx6q-cm-fx6.dts b/arch/arm/boot/dts/imx6q-cm-fx6.dts
|
||||
index 99b46f8..8b6ddd1 100644
|
||||
index 99b46f8030ad..8b6ddd16dcc5 100644
|
||||
--- a/arch/arm/boot/dts/imx6q-cm-fx6.dts
|
||||
+++ b/arch/arm/boot/dts/imx6q-cm-fx6.dts
|
||||
@@ -97,11 +97,49 @@
|
||||
|
@ -52,3 +60,6 @@ index 99b46f8..8b6ddd1 100644
|
|||
+ pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,472 +0,0 @@
|
|||
commit d10715be03bd8bad59ddc50236cb140c3bd73c7b
|
||||
Author: Pawel Moll <pawel.moll@arm.com>
|
||||
Date: Tue Jun 24 12:55:11 2014 +0100
|
||||
|
||||
video: ARM CLCD: Add DT support
|
||||
|
||||
This patch adds basic DT bindings for the PL11x CLCD cells
|
||||
and make their fbdev driver use them.
|
||||
|
||||
Signed-off-by: Pawel Moll <pawel.moll@arm.com>
|
||||
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/video/arm,pl11x.txt b/Documentation/devicetree/bindings/video/arm,pl11x.txt
|
||||
new file mode 100644
|
||||
index 0000000..3e3039a
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/video/arm,pl11x.txt
|
||||
@@ -0,0 +1,109 @@
|
||||
+* ARM PrimeCell Color LCD Controller PL110/PL111
|
||||
+
|
||||
+See also Documentation/devicetree/bindings/arm/primecell.txt
|
||||
+
|
||||
+Required properties:
|
||||
+
|
||||
+- compatible: must be one of:
|
||||
+ "arm,pl110", "arm,primecell"
|
||||
+ "arm,pl111", "arm,primecell"
|
||||
+
|
||||
+- reg: base address and size of the control registers block
|
||||
+
|
||||
+- interrupt-names: either the single entry "combined" representing a
|
||||
+ combined interrupt output (CLCDINTR), or the four entries
|
||||
+ "mbe", "vcomp", "lnbu", "fuf" representing the individual
|
||||
+ CLCDMBEINTR, CLCDVCOMPINTR, CLCDLNBUINTR, CLCDFUFINTR interrupts
|
||||
+
|
||||
+- interrupts: contains an interrupt specifier for each entry in
|
||||
+ interrupt-names
|
||||
+
|
||||
+- clock-names: should contain "clcdclk" and "apb_pclk"
|
||||
+
|
||||
+- clocks: contains phandle and clock specifier pairs for the entries
|
||||
+ in the clock-names property. See
|
||||
+ Documentation/devicetree/binding/clock/clock-bindings.txt
|
||||
+
|
||||
+Optional properties:
|
||||
+
|
||||
+- memory-region: phandle to a node describing memory (see
|
||||
+ Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt)
|
||||
+ to be used for the framebuffer; if not present, the framebuffer
|
||||
+ may be located anywhere in the memory
|
||||
+
|
||||
+- max-memory-bandwidth: maximum bandwidth in bytes per second that the
|
||||
+ cell's memory interface can handle; if not present, the memory
|
||||
+ interface is fast enough to handle all possible video modes
|
||||
+
|
||||
+Required sub-nodes:
|
||||
+
|
||||
+- port: describes LCD panel signals, following the common binding
|
||||
+ for video transmitter interfaces; see
|
||||
+ Documentation/devicetree/bindings/media/video-interfaces.txt;
|
||||
+ when it is a TFT panel, the port's endpoint must define the
|
||||
+ following property:
|
||||
+
|
||||
+ - arm,pl11x,tft-r0g0b0-pads: an array of three 32-bit values,
|
||||
+ defining the way CLD pads are wired up; first value
|
||||
+ contains index of the "CLD" external pin (pad) used
|
||||
+ as R0 (first bit of the red component), second value
|
||||
+ index of the pad used as G0, third value index of the
|
||||
+ pad used as B0, see also "LCD panel signal multiplexing
|
||||
+ details" paragraphs in the PL110/PL111 Technical
|
||||
+ Reference Manuals; this implicitly defines available
|
||||
+ color modes, for example:
|
||||
+ - PL111 TFT 4:4:4 panel:
|
||||
+ arm,pl11x,tft-r0g0b0-pads = <4 15 20>;
|
||||
+ - PL110 TFT (1:)5:5:5 panel:
|
||||
+ arm,pl11x,tft-r0g0b0-pads = <1 7 13>;
|
||||
+ - PL111 TFT (1:)5:5:5 panel:
|
||||
+ arm,pl11x,tft-r0g0b0-pads = <3 11 19>;
|
||||
+ - PL111 TFT 5:6:5 panel:
|
||||
+ arm,pl11x,tft-r0g0b0-pads = <3 10 19>;
|
||||
+ - PL110 and PL111 TFT 8:8:8 panel:
|
||||
+ arm,pl11x,tft-r0g0b0-pads = <0 8 16>;
|
||||
+ - PL110 and PL111 TFT 8:8:8 panel, R & B components swapped:
|
||||
+ arm,pl11x,tft-r0g0b0-pads = <16 8 0>;
|
||||
+
|
||||
+
|
||||
+Example:
|
||||
+
|
||||
+ clcd@10020000 {
|
||||
+ compatible = "arm,pl111", "arm,primecell";
|
||||
+ reg = <0x10020000 0x1000>;
|
||||
+ interrupt-names = "combined";
|
||||
+ interrupts = <0 44 4>;
|
||||
+ clocks = <&oscclk1>, <&oscclk2>;
|
||||
+ clock-names = "clcdclk", "apb_pclk";
|
||||
+ max-memory-bandwidth = <94371840>; /* Bps, 1024x768@60 16bpp */
|
||||
+
|
||||
+ port {
|
||||
+ clcd_pads: endpoint {
|
||||
+ remote-endpoint = <&clcd_panel>;
|
||||
+ arm,pl11x,tft-r0g0b0-pads = <0 8 16>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ };
|
||||
+
|
||||
+ panel {
|
||||
+ compatible = "panel-dpi";
|
||||
+
|
||||
+ port {
|
||||
+ clcd_panel: endpoint {
|
||||
+ remote-endpoint = <&clcd_pads>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ panel-timing {
|
||||
+ clock-frequency = <25175000>;
|
||||
+ hactive = <640>;
|
||||
+ hback-porch = <40>;
|
||||
+ hfront-porch = <24>;
|
||||
+ hsync-len = <96>;
|
||||
+ vactive = <480>;
|
||||
+ vback-porch = <32>;
|
||||
+ vfront-porch = <11>;
|
||||
+ vsync-len = <2>;
|
||||
+ };
|
||||
+ };
|
||||
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
|
||||
index 4a7098f..6f451ad 100644
|
||||
--- a/drivers/video/fbdev/Kconfig
|
||||
+++ b/drivers/video/fbdev/Kconfig
|
||||
@@ -280,6 +280,7 @@ config FB_ARMCLCD
|
||||
select FB_CFB_FILLRECT
|
||||
select FB_CFB_COPYAREA
|
||||
select FB_CFB_IMAGEBLIT
|
||||
+ select VIDEOMODE_HELPERS if OF
|
||||
help
|
||||
This framebuffer device driver is for the ARM PrimeCell PL110
|
||||
Colour LCD controller. ARM PrimeCells provide the building
|
||||
diff --git a/drivers/video/fbdev/amba-clcd.c b/drivers/video/fbdev/amba-clcd.c
|
||||
index 14d6b37..23b3519 100644
|
||||
--- a/drivers/video/fbdev/amba-clcd.c
|
||||
+++ b/drivers/video/fbdev/amba-clcd.c
|
||||
@@ -26,6 +26,13 @@
|
||||
#include <linux/amba/clcd.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/hardirq.h>
|
||||
+#include <linux/dma-mapping.h>
|
||||
+#include <linux/of.h>
|
||||
+#include <linux/of_address.h>
|
||||
+#include <linux/of_graph.h>
|
||||
+#include <video/display_timing.h>
|
||||
+#include <video/of_display_timing.h>
|
||||
+#include <video/videomode.h>
|
||||
|
||||
#include <asm/sizes.h>
|
||||
|
||||
@@ -543,6 +550,259 @@ static int clcdfb_register(struct clcd_fb *fb)
|
||||
return ret;
|
||||
}
|
||||
|
||||
+#ifdef CONFIG_OF
|
||||
+static int clcdfb_of_get_dpi_panel_mode(struct device_node *node,
|
||||
+ struct fb_videomode *mode)
|
||||
+{
|
||||
+ int err;
|
||||
+ struct display_timing timing;
|
||||
+ struct videomode video;
|
||||
+
|
||||
+ err = of_get_display_timing(node, "panel-timing", &timing);
|
||||
+ if (err)
|
||||
+ return err;
|
||||
+
|
||||
+ videomode_from_timing(&timing, &video);
|
||||
+
|
||||
+ err = fb_videomode_from_videomode(&video, mode);
|
||||
+ if (err)
|
||||
+ return err;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int clcdfb_snprintf_mode(char *buf, int size, struct fb_videomode *mode)
|
||||
+{
|
||||
+ return snprintf(buf, size, "%ux%u@%u", mode->xres, mode->yres,
|
||||
+ mode->refresh);
|
||||
+}
|
||||
+
|
||||
+static int clcdfb_of_get_mode(struct device *dev, struct device_node *endpoint,
|
||||
+ struct fb_videomode *mode)
|
||||
+{
|
||||
+ int err;
|
||||
+ struct device_node *panel;
|
||||
+ char *name;
|
||||
+ int len;
|
||||
+
|
||||
+ panel = of_graph_get_remote_port_parent(endpoint);
|
||||
+ if (!panel)
|
||||
+ return -ENODEV;
|
||||
+
|
||||
+ /* Only directly connected DPI panels supported for now */
|
||||
+ if (of_device_is_compatible(panel, "panel-dpi"))
|
||||
+ err = clcdfb_of_get_dpi_panel_mode(panel, mode);
|
||||
+ else
|
||||
+ err = -ENOENT;
|
||||
+ if (err)
|
||||
+ return err;
|
||||
+
|
||||
+ len = clcdfb_snprintf_mode(NULL, 0, mode);
|
||||
+ name = devm_kzalloc(dev, len + 1, GFP_KERNEL);
|
||||
+ clcdfb_snprintf_mode(name, len + 1, mode);
|
||||
+ mode->name = name;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int clcdfb_of_init_tft_panel(struct clcd_fb *fb, u32 r0, u32 g0, u32 b0)
|
||||
+{
|
||||
+ static struct {
|
||||
+ unsigned int part;
|
||||
+ u32 r0, g0, b0;
|
||||
+ u32 caps;
|
||||
+ } panels[] = {
|
||||
+ { 0x110, 1, 7, 13, CLCD_CAP_5551 },
|
||||
+ { 0x110, 0, 8, 16, CLCD_CAP_888 },
|
||||
+ { 0x111, 4, 14, 20, CLCD_CAP_444 },
|
||||
+ { 0x111, 3, 11, 19, CLCD_CAP_444 | CLCD_CAP_5551 },
|
||||
+ { 0x111, 3, 10, 19, CLCD_CAP_444 | CLCD_CAP_5551 |
|
||||
+ CLCD_CAP_565 },
|
||||
+ { 0x111, 0, 8, 16, CLCD_CAP_444 | CLCD_CAP_5551 |
|
||||
+ CLCD_CAP_565 | CLCD_CAP_888 },
|
||||
+ };
|
||||
+ int i;
|
||||
+
|
||||
+ /* Bypass pixel clock divider, data output on the falling edge */
|
||||
+ fb->panel->tim2 = TIM2_BCD | TIM2_IPC;
|
||||
+
|
||||
+ /* TFT display, vert. comp. interrupt at the start of the back porch */
|
||||
+ fb->panel->cntl |= CNTL_LCDTFT | CNTL_LCDVCOMP(1);
|
||||
+
|
||||
+ fb->panel->caps = 0;
|
||||
+
|
||||
+ /* Match the setup with known variants */
|
||||
+ for (i = 0; i < ARRAY_SIZE(panels) && !fb->panel->caps; i++) {
|
||||
+ if (amba_part(fb->dev) != panels[i].part)
|
||||
+ continue;
|
||||
+ if (g0 != panels[i].g0)
|
||||
+ continue;
|
||||
+ if (r0 == panels[i].r0 && b0 == panels[i].b0)
|
||||
+ fb->panel->caps = panels[i].caps & CLCD_CAP_RGB;
|
||||
+ if (r0 == panels[i].b0 && b0 == panels[i].r0)
|
||||
+ fb->panel->caps = panels[i].caps & CLCD_CAP_BGR;
|
||||
+ }
|
||||
+
|
||||
+ return fb->panel->caps ? 0 : -EINVAL;
|
||||
+}
|
||||
+
|
||||
+static int clcdfb_of_init_display(struct clcd_fb *fb)
|
||||
+{
|
||||
+ struct device_node *endpoint;
|
||||
+ int err;
|
||||
+ u32 max_bandwidth;
|
||||
+ u32 tft_r0b0g0[3];
|
||||
+
|
||||
+ fb->panel = devm_kzalloc(&fb->dev->dev, sizeof(*fb->panel), GFP_KERNEL);
|
||||
+ if (!fb->panel)
|
||||
+ return -ENOMEM;
|
||||
+
|
||||
+ endpoint = of_graph_get_next_endpoint(fb->dev->dev.of_node, NULL);
|
||||
+ if (!endpoint)
|
||||
+ return -ENODEV;
|
||||
+
|
||||
+ err = clcdfb_of_get_mode(&fb->dev->dev, endpoint, &fb->panel->mode);
|
||||
+ if (err)
|
||||
+ return err;
|
||||
+
|
||||
+ err = of_property_read_u32(fb->dev->dev.of_node, "max-memory-bandwidth",
|
||||
+ &max_bandwidth);
|
||||
+ if (!err)
|
||||
+ fb->panel->bpp = 8 * max_bandwidth / (fb->panel->mode.xres *
|
||||
+ fb->panel->mode.yres * fb->panel->mode.refresh);
|
||||
+ else
|
||||
+ fb->panel->bpp = 32;
|
||||
+
|
||||
+#ifdef CONFIG_CPU_BIG_ENDIAN
|
||||
+ fb->panel->cntl |= CNTL_BEBO;
|
||||
+#endif
|
||||
+ fb->panel->width = -1;
|
||||
+ fb->panel->height = -1;
|
||||
+
|
||||
+ if (of_property_read_u32_array(endpoint,
|
||||
+ "arm,pl11x,tft-r0g0b0-pads",
|
||||
+ tft_r0b0g0, ARRAY_SIZE(tft_r0b0g0)) == 0)
|
||||
+ return clcdfb_of_init_tft_panel(fb, tft_r0b0g0[0],
|
||||
+ tft_r0b0g0[1], tft_r0b0g0[2]);
|
||||
+
|
||||
+ return -ENOENT;
|
||||
+}
|
||||
+
|
||||
+static int clcdfb_of_vram_setup(struct clcd_fb *fb)
|
||||
+{
|
||||
+ int err;
|
||||
+ struct device_node *memory;
|
||||
+ u64 size;
|
||||
+
|
||||
+ err = clcdfb_of_init_display(fb);
|
||||
+ if (err)
|
||||
+ return err;
|
||||
+
|
||||
+ memory = of_parse_phandle(fb->dev->dev.of_node, "memory-region", 0);
|
||||
+ if (!memory)
|
||||
+ return -ENODEV;
|
||||
+
|
||||
+ fb->fb.screen_base = of_iomap(memory, 0);
|
||||
+ if (!fb->fb.screen_base)
|
||||
+ return -ENOMEM;
|
||||
+
|
||||
+ fb->fb.fix.smem_start = of_translate_address(memory,
|
||||
+ of_get_address(memory, 0, &size, NULL));
|
||||
+ fb->fb.fix.smem_len = size;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int clcdfb_of_vram_mmap(struct clcd_fb *fb, struct vm_area_struct *vma)
|
||||
+{
|
||||
+ unsigned long off, user_size, kernel_size;
|
||||
+
|
||||
+
|
||||
+ off = vma->vm_pgoff << PAGE_SHIFT;
|
||||
+ user_size = vma->vm_end - vma->vm_start;
|
||||
+ kernel_size = fb->fb.fix.smem_len;
|
||||
+
|
||||
+ if (off >= kernel_size || user_size > (kernel_size - off))
|
||||
+ return -ENXIO;
|
||||
+
|
||||
+ return remap_pfn_range(vma, vma->vm_start,
|
||||
+ __phys_to_pfn(fb->fb.fix.smem_start) + vma->vm_pgoff,
|
||||
+ user_size,
|
||||
+ pgprot_writecombine(vma->vm_page_prot));
|
||||
+}
|
||||
+
|
||||
+static void clcdfb_of_vram_remove(struct clcd_fb *fb)
|
||||
+{
|
||||
+ iounmap(fb->fb.screen_base);
|
||||
+}
|
||||
+
|
||||
+static int clcdfb_of_dma_setup(struct clcd_fb *fb)
|
||||
+{
|
||||
+ unsigned long framesize;
|
||||
+ dma_addr_t dma;
|
||||
+ int err;
|
||||
+
|
||||
+ err = clcdfb_of_init_display(fb);
|
||||
+ if (err)
|
||||
+ return err;
|
||||
+
|
||||
+ framesize = fb->panel->mode.xres * fb->panel->mode.yres *
|
||||
+ fb->panel->bpp / 8;
|
||||
+ fb->fb.screen_base = dma_alloc_coherent(&fb->dev->dev, framesize,
|
||||
+ &dma, GFP_KERNEL);
|
||||
+ if (!fb->fb.screen_base)
|
||||
+ return -ENOMEM;
|
||||
+
|
||||
+ fb->fb.fix.smem_start = dma;
|
||||
+ fb->fb.fix.smem_len = framesize;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int clcdfb_of_dma_mmap(struct clcd_fb *fb, struct vm_area_struct *vma)
|
||||
+{
|
||||
+ return dma_mmap_writecombine(&fb->dev->dev, vma, fb->fb.screen_base,
|
||||
+ fb->fb.fix.smem_start, fb->fb.fix.smem_len);
|
||||
+}
|
||||
+
|
||||
+static void clcdfb_of_dma_remove(struct clcd_fb *fb)
|
||||
+{
|
||||
+ dma_free_coherent(&fb->dev->dev, fb->fb.fix.smem_len,
|
||||
+ fb->fb.screen_base, fb->fb.fix.smem_start);
|
||||
+}
|
||||
+
|
||||
+static struct clcd_board *clcdfb_of_get_board(struct amba_device *dev)
|
||||
+{
|
||||
+ struct clcd_board *board = devm_kzalloc(&dev->dev, sizeof(*board),
|
||||
+ GFP_KERNEL);
|
||||
+ struct device_node *node = dev->dev.of_node;
|
||||
+
|
||||
+ if (!board)
|
||||
+ return NULL;
|
||||
+
|
||||
+ board->name = of_node_full_name(node);
|
||||
+ board->caps = CLCD_CAP_ALL;
|
||||
+ board->check = clcdfb_check;
|
||||
+ board->decode = clcdfb_decode;
|
||||
+ if (of_find_property(node, "memory-region", NULL)) {
|
||||
+ board->setup = clcdfb_of_vram_setup;
|
||||
+ board->mmap = clcdfb_of_vram_mmap;
|
||||
+ board->remove = clcdfb_of_vram_remove;
|
||||
+ } else {
|
||||
+ board->setup = clcdfb_of_dma_setup;
|
||||
+ board->mmap = clcdfb_of_dma_mmap;
|
||||
+ board->remove = clcdfb_of_dma_remove;
|
||||
+ }
|
||||
+
|
||||
+ return board;
|
||||
+}
|
||||
+#else
|
||||
+static struct clcd_board *clcdfb_of_get_board(struct amba_dev *dev)
|
||||
+{
|
||||
+ return NULL;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
static int clcdfb_probe(struct amba_device *dev, const struct amba_id *id)
|
||||
{
|
||||
struct clcd_board *board = dev_get_platdata(&dev->dev);
|
||||
@@ -550,6 +810,9 @@ static int clcdfb_probe(struct amba_device *dev, const struct amba_id *id)
|
||||
int ret;
|
||||
|
||||
if (!board)
|
||||
+ board = clcdfb_of_get_board(dev);
|
||||
+
|
||||
+ if (!board)
|
||||
return -EINVAL;
|
||||
|
||||
ret = dma_set_mask_and_coherent(&dev->dev, DMA_BIT_MASK(32));
|
||||
commit 1d5167b72ca05b2096760e1200fcd53b5f9a7562
|
||||
Author: Pawel Moll <pawel.moll@arm.com>
|
||||
Date: Fri Aug 1 15:43:34 2014 +0100
|
||||
|
||||
video: ARM CLCD: Fix DT-related build problems
|
||||
|
||||
This patch fixes the following error when !CONFIG_OF:
|
||||
|
||||
drivers/video/fbdev/amba-clcd.c:800:54: warning: ‘struct amba_dev’ declared inside parameter list [enabled by default]
|
||||
static struct clcd_board *clcdfb_of_get_board(struct amba_dev *dev)
|
||||
^
|
||||
and adds a missing Kconfig select causing this
|
||||
when CONFIG_OF && !CONFIG_FB_MODE_HELPERS:
|
||||
|
||||
drivers/video/fbdev/amba-clcd.c:567: undefined reference to `fb_videomode_from_videomode'
|
||||
|
||||
Reported-by: Fengguang Wu <fengguang.wu@intel.com>
|
||||
Signed-off-by: Pawel Moll <pawel.moll@arm.com>
|
||||
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
||||
|
||||
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
|
||||
index 6f451ad..ef94623 100644
|
||||
--- a/drivers/video/fbdev/Kconfig
|
||||
+++ b/drivers/video/fbdev/Kconfig
|
||||
@@ -280,6 +280,7 @@ config FB_ARMCLCD
|
||||
select FB_CFB_FILLRECT
|
||||
select FB_CFB_COPYAREA
|
||||
select FB_CFB_IMAGEBLIT
|
||||
+ select FB_MODE_HELPERS if OF
|
||||
select VIDEOMODE_HELPERS if OF
|
||||
help
|
||||
This framebuffer device driver is for the ARM PrimeCell PL110
|
||||
diff --git a/drivers/video/fbdev/amba-clcd.c b/drivers/video/fbdev/amba-clcd.c
|
||||
index 23b3519..beadd3e 100644
|
||||
--- a/drivers/video/fbdev/amba-clcd.c
|
||||
+++ b/drivers/video/fbdev/amba-clcd.c
|
||||
@@ -797,7 +797,7 @@ static struct clcd_board *clcdfb_of_get_board(struct amba_device *dev)
|
||||
return board;
|
||||
}
|
||||
#else
|
||||
-static struct clcd_board *clcdfb_of_get_board(struct amba_dev *dev)
|
||||
+static struct clcd_board *clcdfb_of_get_board(struct amba_device *dev)
|
||||
{
|
||||
return NULL;
|
||||
}
|
|
@ -1,111 +0,0 @@
|
|||
From: Stephen Warren <swarren@xxxxxxxxxx>
|
||||
|
||||
When tegra-drm.ko is built as a module, these MODULE_DEVICE_TABLEs allow
|
||||
the module to be auto-loaded since the module will match the devices
|
||||
instantiated from device tree.
|
||||
|
||||
(Notes for stable: in 3.14+, just git rm any conflicting file, since they
|
||||
are added in later kernels. For 3.13 and below, manual merging will be
|
||||
needed)
|
||||
|
||||
Cc: <stable@xxxxxxxxxxxxxxx>
|
||||
Signed-off-by: Stephen Warren <swarren@xxxxxxxxxx>
|
||||
---
|
||||
v2: Remove change to drm.c, since the match table there isn't used for
|
||||
probing.
|
||||
---
|
||||
drivers/gpu/drm/tegra/dc.c | 1 +
|
||||
drivers/gpu/drm/tegra/dpaux.c | 1 +
|
||||
drivers/gpu/drm/tegra/dsi.c | 1 +
|
||||
drivers/gpu/drm/tegra/gr2d.c | 1 +
|
||||
drivers/gpu/drm/tegra/gr3d.c | 1 +
|
||||
drivers/gpu/drm/tegra/hdmi.c | 1 +
|
||||
drivers/gpu/drm/tegra/sor.c | 1 +
|
||||
7 files changed, 7 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c
|
||||
index ef40381f3909..48c3bc460eef 100644
|
||||
--- a/drivers/gpu/drm/tegra/dc.c
|
||||
+++ b/drivers/gpu/drm/tegra/dc.c
|
||||
@@ -1303,6 +1303,7 @@ static const struct of_device_id tegra_dc_of_match[] = {
|
||||
/* sentinel */
|
||||
}
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_dc_of_match);
|
||||
|
||||
static int tegra_dc_parse_dt(struct tegra_dc *dc)
|
||||
{
|
||||
diff --git a/drivers/gpu/drm/tegra/dpaux.c b/drivers/gpu/drm/tegra/dpaux.c
|
||||
index 3f132e356e9c..708f783ead47 100644
|
||||
--- a/drivers/gpu/drm/tegra/dpaux.c
|
||||
+++ b/drivers/gpu/drm/tegra/dpaux.c
|
||||
@@ -382,6 +382,7 @@ static const struct of_device_id tegra_dpaux_of_match[] = {
|
||||
{ .compatible = "nvidia,tegra124-dpaux", },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_dpaux_of_match);
|
||||
|
||||
struct platform_driver tegra_dpaux_driver = {
|
||||
.driver = {
|
||||
diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c
|
||||
index bd56f2affa78..97c409f10456 100644
|
||||
--- a/drivers/gpu/drm/tegra/dsi.c
|
||||
+++ b/drivers/gpu/drm/tegra/dsi.c
|
||||
@@ -982,6 +982,7 @@ static const struct of_device_id tegra_dsi_of_match[] = {
|
||||
{ .compatible = "nvidia,tegra114-dsi", },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_dsi_of_match);
|
||||
|
||||
struct platform_driver tegra_dsi_driver = {
|
||||
.driver = {
|
||||
diff --git a/drivers/gpu/drm/tegra/gr2d.c b/drivers/gpu/drm/tegra/gr2d.c
|
||||
index 7c53941f2a9e..02cd3e37a6ec 100644
|
||||
--- a/drivers/gpu/drm/tegra/gr2d.c
|
||||
+++ b/drivers/gpu/drm/tegra/gr2d.c
|
||||
@@ -121,6 +121,7 @@ static const struct of_device_id gr2d_match[] = {
|
||||
{ .compatible = "nvidia,tegra20-gr2d" },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, gr2d_match);
|
||||
|
||||
static const u32 gr2d_addr_regs[] = {
|
||||
GR2D_UA_BASE_ADDR,
|
||||
diff --git a/drivers/gpu/drm/tegra/gr3d.c b/drivers/gpu/drm/tegra/gr3d.c
|
||||
index 30f5ba9bd6d0..2bea2b2d204e 100644
|
||||
--- a/drivers/gpu/drm/tegra/gr3d.c
|
||||
+++ b/drivers/gpu/drm/tegra/gr3d.c
|
||||
@@ -130,6 +130,7 @@ static const struct of_device_id tegra_gr3d_match[] = {
|
||||
{ .compatible = "nvidia,tegra20-gr3d" },
|
||||
{ }
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_gr3d_match);
|
||||
|
||||
static const u32 gr3d_addr_regs[] = {
|
||||
GR3D_IDX_ATTRIBUTE( 0),
|
||||
diff --git a/drivers/gpu/drm/tegra/hdmi.c b/drivers/gpu/drm/tegra/hdmi.c
|
||||
index a0b8d8539d07..84ea0c8b47f7 100644
|
||||
--- a/drivers/gpu/drm/tegra/hdmi.c
|
||||
+++ b/drivers/gpu/drm/tegra/hdmi.c
|
||||
@@ -1370,6 +1370,7 @@ static const struct of_device_id tegra_hdmi_of_match[] = {
|
||||
{ .compatible = "nvidia,tegra20-hdmi", .data = &tegra20_hdmi_config },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_hdmi_of_match);
|
||||
|
||||
static int tegra_hdmi_probe(struct platform_device *pdev)
|
||||
{
|
||||
diff --git a/drivers/gpu/drm/tegra/sor.c b/drivers/gpu/drm/tegra/sor.c
|
||||
index 27c979b50111..061a5c501124 100644
|
||||
--- a/drivers/gpu/drm/tegra/sor.c
|
||||
+++ b/drivers/gpu/drm/tegra/sor.c
|
||||
@@ -1455,6 +1455,7 @@ static const struct of_device_id tegra_sor_of_match[] = {
|
||||
{ .compatible = "nvidia,tegra124-sor", },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_sor_of_match);
|
||||
|
||||
struct platform_driver tegra_sor_driver = {
|
||||
.driver = {
|
||||
--
|
||||
1.8.1.5
|
|
@ -1,16 +0,0 @@
|
|||
--- linux-3.3.4-3.fc17.x86_64_orig/drivers/usb/core/hub.c 2012-05-02 20:08:18.421685932 -0400
|
||||
+++ linux-3.3.4-3.fc17.x86_64/drivers/usb/core/hub.c 2012-05-02 20:30:36.565865425 -0400
|
||||
@@ -3484,6 +3484,13 @@ static void hub_events(void)
|
||||
(u16) hub->change_bits[0],
|
||||
(u16) hub->event_bits[0]);
|
||||
|
||||
+ /* Don't disconnect USB-SATA on TrimSlice */
|
||||
+ if (strcmp(dev_name(hdev->bus->controller), "tegra-ehci.0") == 0) {
|
||||
+ if ((hdev->state == 7) && (hub->change_bits[0] == 0) &&
|
||||
+ (hub->event_bits[0] == 0x2))
|
||||
+ hub->event_bits[0] = 0;
|
||||
+ }
|
||||
+
|
||||
/* Lock the device, then check to see if we were
|
||||
* disconnected while waiting for the lock to succeed. */
|
||||
usb_lock_device(hdev);
|
|
@ -1,69 +0,0 @@
|
|||
Bugzilla: 1097436
|
||||
Upstream-status: Sent upstream for 3.16
|
||||
|
||||
From f6fad201a0e4584e9826a2deb8ebbfccdb8cb13b Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Mon, 2 Jun 2014 17:41:01 +0200
|
||||
Subject: [PATCH 04/14] asus-wmi: Add a no backlight quirk
|
||||
|
||||
Some Asus motherboards for desktop PC-s export an acpi-video and
|
||||
an asus-wmi interface advertising backlight support. Add a quirk to allow
|
||||
to blacklist these so that desktop environments such as gnome don't start
|
||||
showing nonsense brightness controls.
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1097436
|
||||
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/platform/x86/asus-wmi.c | 8 ++++++--
|
||||
drivers/platform/x86/asus-wmi.h | 1 +
|
||||
2 files changed, 7 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
|
||||
index c5e082fb82fa..6f73dc5125ca 100644
|
||||
--- a/drivers/platform/x86/asus-wmi.c
|
||||
+++ b/drivers/platform/x86/asus-wmi.c
|
||||
@@ -1272,6 +1272,9 @@ static int asus_wmi_backlight_init(struct asus_wmi *asus)
|
||||
int max;
|
||||
int power;
|
||||
|
||||
+ if (asus->driver->quirks->no_backlight)
|
||||
+ return -ENODEV;
|
||||
+
|
||||
max = read_brightness_max(asus);
|
||||
|
||||
if (max == -ENODEV)
|
||||
@@ -1370,7 +1373,7 @@ static void asus_wmi_notify(u32 value, void *context)
|
||||
code = ASUS_WMI_BRN_DOWN;
|
||||
|
||||
if (code == ASUS_WMI_BRN_DOWN || code == ASUS_WMI_BRN_UP) {
|
||||
- if (!acpi_video_backlight_support()) {
|
||||
+ if (asus->backlight_device) {
|
||||
asus_wmi_backlight_notify(asus, orig_code);
|
||||
goto exit;
|
||||
}
|
||||
@@ -1773,7 +1776,8 @@ static int asus_wmi_add(struct platform_device *pdev)
|
||||
if (err)
|
||||
goto fail_rfkill;
|
||||
|
||||
- if (asus->driver->quirks->wmi_backlight_power)
|
||||
+ if (asus->driver->quirks->wmi_backlight_power ||
|
||||
+ asus->driver->quirks->no_backlight)
|
||||
acpi_video_dmi_promote_vendor();
|
||||
if (!acpi_video_backlight_support()) {
|
||||
pr_info("Disabling ACPI video driver\n");
|
||||
diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/x86/asus-wmi.h
|
||||
index 4da4c8bafe70..cc47efe14974 100644
|
||||
--- a/drivers/platform/x86/asus-wmi.h
|
||||
+++ b/drivers/platform/x86/asus-wmi.h
|
||||
@@ -42,6 +42,7 @@ struct quirk_entry {
|
||||
bool scalar_panel_brightness;
|
||||
bool store_backlight_power;
|
||||
bool wmi_backlight_power;
|
||||
+ bool no_backlight;
|
||||
int wapf;
|
||||
/*
|
||||
* For machines with AMD graphic chips, it will send out WMI event
|
||||
--
|
||||
1.9.0
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Mar 2012 08:46:50 -0500
|
||||
Subject: [PATCH] asus-wmi: Restrict debugfs interface when module loading is
|
||||
restricted
|
||||
|
||||
We have no way of validating what all of the Asus WMI methods do on a
|
||||
given machine, and there's a risk that some will allow hardware state to
|
||||
be manipulated in such a way that arbitrary code can be executed in the
|
||||
kernel, circumventing module loading restrictions. Prevent that if any of
|
||||
these features are enabled.
|
||||
|
||||
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
---
|
||||
drivers/platform/x86/asus-wmi.c | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
|
||||
index 7543a56e0f45..93b5a6998371 100644
|
||||
--- a/drivers/platform/x86/asus-wmi.c
|
||||
+++ b/drivers/platform/x86/asus-wmi.c
|
||||
@@ -1589,6 +1589,9 @@ static int show_dsts(struct seq_file *m, void *data)
|
||||
int err;
|
||||
u32 retval = -1;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
err = asus_wmi_get_devstate(asus, asus->debug.dev_id, &retval);
|
||||
|
||||
if (err < 0)
|
||||
@@ -1605,6 +1608,9 @@ static int show_devs(struct seq_file *m, void *data)
|
||||
int err;
|
||||
u32 retval = -1;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
err = asus_wmi_set_devstate(asus->debug.dev_id, asus->debug.ctrl_param,
|
||||
&retval);
|
||||
|
||||
@@ -1629,6 +1635,9 @@ static int show_call(struct seq_file *m, void *data)
|
||||
union acpi_object *obj;
|
||||
acpi_status status;
|
||||
|
||||
+ if (secure_modules())
|
||||
+ return -EPERM;
|
||||
+
|
||||
status = wmi_evaluate_method(ASUS_WMI_MGMT_GUID,
|
||||
1, asus->debug.method_id,
|
||||
&input, &output);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,6 +1,16 @@
|
|||
From: "kernel-team@fedoraproject.org" <kernel-team@fedoraproject.org>
|
||||
Date: Wed, 6 Feb 2013 09:57:47 -0500
|
||||
Subject: [PATCH] ath9k: rx dma stop check
|
||||
|
||||
---
|
||||
drivers/net/wireless/ath/ath9k/mac.c | 12 +++++++++++-
|
||||
1 file changed, 11 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/ath/ath9k/mac.c b/drivers/net/wireless/ath/ath9k/mac.c
|
||||
index 3e58bfa0c1fd..406eea47256e 100644
|
||||
--- a/drivers/net/wireless/ath/ath9k/mac.c
|
||||
+++ b/drivers/net/wireless/ath/ath9k/mac.c
|
||||
@@ -689,7 +689,7 @@ bool ath9k_hw_stopdmarecv(struct ath_hw
|
||||
@@ -693,7 +693,7 @@ bool ath9k_hw_stopdmarecv(struct ath_hw *ah, bool *reset)
|
||||
{
|
||||
#define AH_RX_STOP_DMA_TIMEOUT 10000 /* usec */
|
||||
struct ath_common *common = ath9k_hw_common(ah);
|
||||
|
@ -9,7 +19,7 @@
|
|||
int i;
|
||||
|
||||
/* Enable access to the DMA observation bus */
|
||||
@@ -719,6 +719,16 @@ bool ath9k_hw_stopdmarecv(struct ath_hw
|
||||
@@ -723,6 +723,16 @@ bool ath9k_hw_stopdmarecv(struct ath_hw *ah, bool *reset)
|
||||
}
|
||||
|
||||
if (i == 0) {
|
||||
|
@ -26,3 +36,6 @@
|
|||
ath_err(common,
|
||||
"DMA failed to stop in %d ms AR_CR=0x%08x AR_DIAG_SW=0x%08x DMADBG_7=0x%08x\n",
|
||||
AH_RX_STOP_DMA_TIMEOUT / 1000,
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -8,6 +8,7 @@ CONFIG_HW_PERF_EVENTS=y
|
|||
CONFIG_NFS_FS=y
|
||||
|
||||
CONFIG_CRASH=m
|
||||
CONFIG_CC_STACKPROTECTOR=y
|
||||
|
||||
# CONFIG_PID_IN_CONTEXTIDR is not set
|
||||
|
||||
|
@ -23,9 +24,8 @@ CONFIG_RESET_CONTROLLER=y
|
|||
CONFIG_RESET_GPIO=y
|
||||
|
||||
CONFIG_RCU_FANOUT_LEAF=16
|
||||
# CONFIG_RTC_DRV_SNVS is not set
|
||||
# CONFIG_RTC_DRV_HYM8563 is not set
|
||||
CONFIG_BACKLIGHT_PWM=m
|
||||
CONFIG_BACKLIGHT_GENERIC=m
|
||||
CONFIG_INPUT_PWM_BEEPER=m
|
||||
CONFIG_ARM_SP805_WATCHDOG=m
|
||||
CONFIG_ARM_ARCH_TIMER=y
|
||||
|
@ -41,16 +41,22 @@ CONFIG_HAVE_PERF_USER_STACK_DUMP=y
|
|||
|
||||
# ARM AMBA generic HW
|
||||
CONFIG_ARM_AMBA=y
|
||||
# CONFIG_TEGRA_AHB is not set
|
||||
CONFIG_ARM_CCI=y
|
||||
CONFIG_ARM_CCN=y
|
||||
CONFIG_ARM_DMA_USE_IOMMU=y
|
||||
CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
|
||||
CONFIG_ARM_GIC=y
|
||||
CONFIG_ARM_GIC_V2M=y
|
||||
CONFIG_ARM_GIC_V3=y
|
||||
CONFIG_ARM_GIC_V3_ITS=y
|
||||
CONFIG_KVM_ARM_VGIC=y
|
||||
CONFIG_ARM_GLOBAL_TIMER=y
|
||||
CONFIG_ARM_SMMU=y
|
||||
CONFIG_MMC_ARMMMCI=y
|
||||
CONFIG_SERIAL_AMBA_PL011=y
|
||||
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_DW=y
|
||||
CONFIG_SERIO_AMBAKMI=y
|
||||
CONFIG_OC_ETM=y
|
||||
CONFIG_FB_ARMCLCD=y
|
||||
|
@ -67,48 +73,57 @@ CONFIG_POWER_RESET_VEXPRESS=y
|
|||
CONFIG_REGULATOR_VEXPRESS=m
|
||||
CONFIG_SENSORS_VEXPRESS=m
|
||||
CONFIG_CLKSRC_VERSATILE=y
|
||||
CONFIG_POWER_RESET_VERSATILE=y
|
||||
# CONFIG_ARM_CHARLCD is not set
|
||||
|
||||
# Power/Thermal/Cpufreq
|
||||
CONFIG_GENERIC_CPUFREQ_CPU0=m
|
||||
# CONFIG_ARM_DT_BL_CPUFREQ is not set
|
||||
# CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set
|
||||
|
||||
# Device tree
|
||||
CONFIG_DTC=y
|
||||
CONFIG_DMA_OF=y
|
||||
CONFIG_PROC_DEVICETREE=y
|
||||
CONFIG_OF=y
|
||||
# CONFIG_OF_UNITTEST is not set
|
||||
CONFIG_OF_ADDRESS=y
|
||||
CONFIG_OF_DEVICE=y
|
||||
CONFIG_OF_DYNAMIC=y
|
||||
CONFIG_OF_EARLY_FLATTREE=y
|
||||
CONFIG_OF_FLATTREE=y
|
||||
CONFIG_OF_GPIO=y
|
||||
CONFIG_OF_I2C=m
|
||||
CONFIG_OF_IOMMU=y
|
||||
CONFIG_OF_IRQ=y
|
||||
CONFIG_OF_MDIO=m
|
||||
CONFIG_OF_MTD=y
|
||||
CONFIG_OF_NET=y
|
||||
CONFIG_OF_OVERLAY=y
|
||||
CONFIG_OF_PCI_IRQ=m
|
||||
CONFIG_OF_PCI=m
|
||||
CONFIG_OF_RESERVED_MEM=y
|
||||
CONFIG_OF_RESOLVE=y
|
||||
CONFIG_PM_GENERIC_DOMAINS_OF=y
|
||||
CONFIG_PATA_OF_PLATFORM=m
|
||||
# CONFIG_OF_SELFTEST is not set
|
||||
CONFIG_SERIAL_OF_PLATFORM=y
|
||||
CONFIG_THERMAL_OF=y
|
||||
|
||||
# CONFIG_OF_MDIO is not set
|
||||
# CONFIG_MDIO_BUS_MUX_GPIO is not set
|
||||
# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
|
||||
|
||||
# USB
|
||||
CONFIG_USB_OHCI_HCD_PLATFORM=m
|
||||
CONFIG_USB_EHCI_HCD_PLATFORM=m
|
||||
CONFIG_USB_XHCI_PLATFORM=m
|
||||
|
||||
# External Connectors
|
||||
CONFIG_EXTCON=m
|
||||
CONFIG_OF_EXTCON=m
|
||||
CONFIG_EXTCON_GPIO=m
|
||||
CONFIG_EXTCON_ADC_JACK=m
|
||||
# CONFIG_EXTCON_SM5502 is not set
|
||||
# CONFIG_EXTCON_RT8973A is not set
|
||||
|
||||
# MTD
|
||||
CONFIG_MTD_BLKDEVS=m
|
||||
CONFIG_MTD_BLOCK=m
|
||||
CONFIG_MTD_CHAR=m
|
||||
CONFIG_MTD_CFI=m
|
||||
CONFIG_MTD_CFI_INTELEXT=m
|
||||
CONFIG_MTD_CFI_AMDSTD=m
|
||||
|
@ -128,10 +143,11 @@ CONFIG_GPIO_WATCHDOG=m
|
|||
CONFIG_GPIOLIB=y
|
||||
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
CONFIG_MDIO_GPIO=m
|
||||
CONFIG_BACKLIGHT_GPIO=m
|
||||
CONFIG_POWER_RESET_GPIO=y
|
||||
CONFIG_POWER_RESET_GPIO_RESTART=y
|
||||
CONFIG_POWER_RESET_RESTART=y
|
||||
# CONFIG_GPIO_74XX_MMIO is not set
|
||||
|
||||
#i2c
|
||||
CONFIG_I2C_ARB_GPIO_CHALLENGE=m
|
||||
|
@ -177,18 +193,31 @@ CONFIG_CMA_AREAS=7
|
|||
# CONFIG_CRYPTO_TEST is not set
|
||||
# CONFIG_TRANSPARENT_HUGEPAGE is not set
|
||||
# CONFIG_XEN is not set
|
||||
|
||||
# CONFIG_MMC_DW_SOCFPGA is not set
|
||||
# CONFIG_DRM_RCAR_DU is not set
|
||||
# CONFIG_I2C_RCAR is not set
|
||||
# CONFIG_DRM_SHMOBILE is not set
|
||||
# CONFIG_I2C_SH_MOBILE is not set
|
||||
# CONFIG_I2C_NOMADIK is not set
|
||||
# CONFIG_LEDS_RENESAS_TPU is not set
|
||||
# CONFIG_IRQ_DOMAIN_DEBUG is not set
|
||||
# CONFIG_LOCK_STAT is not set
|
||||
|
||||
# CONFIG_CADENCE_WATCHDOG is not set
|
||||
|
||||
# CONFIG_DRM_ARMADA is not set
|
||||
# CONFIG_DRM_TEGRA is not set
|
||||
# CONFIG_SHMOBILE_IOMMU is not set
|
||||
|
||||
# CONFIG_COMMON_CLK_SI570 is not set
|
||||
# CONFIG_COMMON_CLK_QCOM is not set
|
||||
|
||||
# CONFIG_IRQ_DOMAIN_DEBUG is not set
|
||||
# CONFIG_ARM_PTDUMP is not set
|
||||
|
||||
### turn off things which make no sense on ARM
|
||||
# CONFIG_PATA_PLATFORM is not set
|
||||
# CONFIG_USB_ULPI is not set
|
||||
# CONFIG_KEYBOARD_OMAP4 is not set
|
||||
# CONFIG_PHY_SAMSUNG_USB2 is not set
|
||||
|
||||
### turn off things which make no sense on embedded SoC
|
||||
|
||||
# core
|
||||
|
||||
|
@ -201,8 +230,6 @@ CONFIG_CMA_AREAS=7
|
|||
# CONFIG_ISDN is not set
|
||||
# CONFIG_GAMEPORT is not set
|
||||
# CONFIG_AGP is not set
|
||||
# CONFIG_PATA_PLATFORM is not set
|
||||
# CONFIG_USB_ULPI is not set
|
||||
|
||||
# netdrv
|
||||
|
||||
|
@ -220,7 +247,6 @@ CONFIG_CMA_AREAS=7
|
|||
# CONFIG_NET_VENDOR_SUN is not set
|
||||
# CONFIG_NET_VENDOR_WIZNET is not set
|
||||
# CONFIG_NET_VENDOR_XIRCOM is not set
|
||||
# CONFIG_NET_PCMCIA is not set
|
||||
|
||||
# scsi
|
||||
|
||||
|
@ -241,10 +267,18 @@ CONFIG_CMA_AREAS=7
|
|||
# CONFIG_SCSI_MPT3SAS is not set
|
||||
|
||||
# serial
|
||||
# CONFIG_SERIAL_SH_SCI is not set
|
||||
# CONFIG_SERIAL_MAX3100 is not set
|
||||
# CONFIG_SERIAL_MAX310X is not set
|
||||
# CONFIG_SERIAL_IFX6X60 is not set
|
||||
|
||||
# drm
|
||||
# CONFIG_DRM_VMWGFX is not set
|
||||
# CONFIG_IMX_IPUV3_CORE is not set
|
||||
|
||||
# CONFIG_DEBUG_SET_MODULE_RONX is not set
|
||||
# CONFIG_CORESIGHT is not set
|
||||
|
||||
# CONFIG_LATTICE_ECP3_CONFIG is not set
|
||||
# CONFIG_BMP085_SPI is not set
|
||||
# CONFIG_TI_DAC7512 is not set
|
||||
# CONFIG_SPI_ROCKCHIP is not set
|
||||
|
|
72
config-arm64
72
config-arm64
|
@ -8,17 +8,24 @@ CONFIG_SCHED_SMT=y
|
|||
|
||||
# arm64 only SoCs
|
||||
CONFIG_ARCH_XGENE=y
|
||||
CONFIG_ARCH_SEATTLE=y
|
||||
# CONFIG_ARCH_THUNDER is not set
|
||||
|
||||
# Erratum
|
||||
CONFIG_ARM64_ERRATUM_826319=y
|
||||
CONFIG_ARM64_ERRATUM_827319=y
|
||||
CONFIG_ARM64_ERRATUM_824069=y
|
||||
CONFIG_ARM64_ERRATUM_819472=y
|
||||
CONFIG_ARM64_ERRATUM_832075=y
|
||||
|
||||
# CONFIG_ALWAYS_USE_PERSISTENT_CLOCK is not set
|
||||
# CONFIG_AMBA_PL08X is not set
|
||||
CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
# CONFIG_ARM64_64K_PAGES is not set
|
||||
CONFIG_COMPAT=y
|
||||
CONFIG_ARM64_64K_PAGES=y
|
||||
# CONFIG_COMPAT is not set
|
||||
|
||||
CONFIG_BCMA_POSSIBLE=y
|
||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
|
||||
CONFIG_BQL=y
|
||||
CONFIG_BRCMUTIL=m
|
||||
CONFIG_BUG=y
|
||||
CONFIG_CLKDEV_LOOKUP=y
|
||||
|
@ -26,11 +33,9 @@ CONFIG_CMDLINE="console=ttyAMA0"
|
|||
# CONFIG_CMDLINE_FORCE is not set
|
||||
CONFIG_CONSOLE_TRANSLATIONS=y
|
||||
|
||||
CONFIG_GENERIC_ACL=y
|
||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
CONFIG_GENERIC_CSUM=y
|
||||
CONFIG_GENERIC_HARDIRQS=y
|
||||
CONFIG_GENERIC_HWEIGHT=y
|
||||
CONFIG_GENERIC_IO=y
|
||||
CONFIG_GENERIC_PCI_IOMAP=y
|
||||
|
@ -45,7 +50,6 @@ CONFIG_HZ=100
|
|||
|
||||
CONFIG_KVM=y
|
||||
CONFIG_KVM_ARM_MAX_VCPUS=8
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
|
||||
CONFIG_NFS_ACL_SUPPORT=y
|
||||
CONFIG_NFS_COMMON=y
|
||||
|
@ -56,7 +60,7 @@ CONFIG_NFS_USE_KERNEL_DNS=y
|
|||
# CONFIG_PL330_DMA is not set
|
||||
CONFIG_RCU_FANOUT=64
|
||||
# CONFIG_RTC_DRV_PL030 is not set
|
||||
# CONFIG_RTC_DRV_PL031 is not set
|
||||
CONFIG_RTC_DRV_PL031=y
|
||||
CONFIG_SERIAL_8250_DMA=y
|
||||
# CONFIG_SERIAL_AMBA_PL010 is not set
|
||||
CONFIG_SPARSE_IRQ=y
|
||||
|
@ -72,6 +76,7 @@ CONFIG_EFI_VARS=y
|
|||
CONFIG_EFIVAR_FS=y
|
||||
CONFIG_EFI_VARS_PSTORE=y
|
||||
CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=y
|
||||
CONFIG_RTC_DRV_EFI=y
|
||||
|
||||
CONFIG_ARM64_CRYPTO=y
|
||||
CONFIG_CRYPTO_SHA1_ARM64_CE=m
|
||||
|
@ -81,6 +86,12 @@ CONFIG_CRYPTO_AES_ARM64_CE=m
|
|||
CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
|
||||
CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
|
||||
CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m
|
||||
CONFIG_CRYPTO_CRC32_ARM64=m
|
||||
CONFIG_CRYPTO_DEV_CCP=y
|
||||
CONFIG_CRYPTO_DEV_CCP_DD=m
|
||||
CONFIG_CRYPTO_DEV_CCP_CRYPTO=m
|
||||
|
||||
CONFIG_ARM64_CPUIDLE=y
|
||||
|
||||
# APM Xgene
|
||||
CONFIG_POWER_RESET_XGENE=y
|
||||
|
@ -90,13 +101,8 @@ CONFIG_AHCI_XGENE=y
|
|||
CONFIG_PHY_XGENE=y
|
||||
CONFIG_NET_XGENE=y
|
||||
CONFIG_RTC_DRV_XGENE=m
|
||||
CONFIG_RTC_DRV_EFI=y
|
||||
|
||||
# not arm64
|
||||
# CONFIG_GPIO_ADNP is not set
|
||||
# CONFIG_GPIO_MCP23S08 is not set
|
||||
# CONFIG_MDIO_BUS_MUX_GPIO is not set
|
||||
# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
|
||||
CONFIG_HW_RANDOM_XGENE=m
|
||||
CONFIG_GPIO_XGENE=y
|
||||
|
||||
# busted build for various reasons
|
||||
# uses pci_* for some reason to allocate DMA buffers
|
||||
|
@ -111,3 +117,39 @@ CONFIG_PCI_XGENE=y
|
|||
CONFIG_HOTPLUG_PCI=y
|
||||
# CONFIG_HOTPLUG_PCI_CPCI is not set
|
||||
# CONFIG_HOTPLUG_PCI_SHPC is not set
|
||||
|
||||
# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set
|
||||
|
||||
# CONFIG_PNP_DEBUG_MESSAGES is not set
|
||||
CONFIG_SBSAUART_TTY=y
|
||||
CONFIG_I2C_SCMI=m
|
||||
CONFIG_SENSORS_ACPI_POWER=m
|
||||
|
||||
CONFIG_ACPI=y
|
||||
CONFIG_ACPI_PROCFS_POWER=y
|
||||
CONFIG_ACPI_EC_DEBUGFS=y
|
||||
CONFIG_ACPI_BUTTON=m
|
||||
CONFIG_ACPI_FAN=m
|
||||
CONFIG_ACPI_DOCK=y
|
||||
CONFIG_ACPI_IPMI=y
|
||||
CONFIG_ACPI_CONTAINER=y
|
||||
CONFIG_ACPI_HED=m
|
||||
CONFIG_ACPI_CUSTOM_METHOD=m
|
||||
|
||||
CONFIG_NET_SB1000=y
|
||||
CONFIG_AMD_XGBE=m
|
||||
CONFIG_AMD_XGBE_PHY=m
|
||||
# CONFIG_AMD_XGBE_DCB is not set
|
||||
|
||||
# CONFIG_IMX_THERMAL is not set
|
||||
# CONFIG_MMC_DW is not set
|
||||
|
||||
CONFIG_DMI=y
|
||||
CONFIG_DMIID=y
|
||||
CONFIG_DMI_SYSFS=y
|
||||
|
||||
CONFIG_SATA_AHCI_PLATFORM=y
|
||||
|
||||
# CONFIG_SND_SOC is not set
|
||||
|
||||
# CONFIG_PMIC_OPREGION is not set
|
||||
|
|
128
config-armv7
128
config-armv7
|
@ -4,16 +4,12 @@
|
|||
# CONFIG_ARCH_KEYSTONE is not set
|
||||
CONFIG_ARCH_MVEBU=y
|
||||
CONFIG_ARCH_MXC=y
|
||||
# CONFIG_ARCH_OMAP2 is not set
|
||||
CONFIG_ARCH_OMAP3=y
|
||||
CONFIG_ARCH_OMAP4=y
|
||||
CONFIG_ARCH_PICOXCELL=y
|
||||
CONFIG_ARCH_QCOM=y
|
||||
CONFIG_ARCH_ROCKCHIP=y
|
||||
# CONFIG_ARCH_SOCFPGA is not set
|
||||
CONFIG_ARCH_TEGRA=y
|
||||
CONFIG_ARCH_U8500=y
|
||||
# CONFIG_ARCH_VIRT is not set
|
||||
CONFIG_ARCH_ZYNQ=y
|
||||
|
||||
# These are supported in the LPAE kernel
|
||||
|
@ -23,7 +19,6 @@ CONFIG_ARCH_ZYNQ=y
|
|||
# CONFIG_VIRTUALIZATION is not set
|
||||
|
||||
# mvebu
|
||||
CONFIG_MACH_ARMADA_370_XP=y
|
||||
CONFIG_MACH_ARMADA_370=y
|
||||
CONFIG_MACH_ARMADA_375=y
|
||||
CONFIG_MACH_ARMADA_38X=y
|
||||
|
@ -39,7 +34,7 @@ CONFIG_MV643XX_ETH=m
|
|||
CONFIG_PINCTRL_MVEBU=y
|
||||
CONFIG_PINCTRL_ARMADA_370=y
|
||||
CONFIG_PINCTRL_ARMADA_XP=y
|
||||
# CONFIG_ARM_ARMADA_370_XP_CPUIDLE is not set
|
||||
# CONFIG_ARM_MVEBU_V7_CPUIDLE is not set
|
||||
CONFIG_PINCTRL_DOVE=y
|
||||
CONFIG_EDAC_MV64X60=m
|
||||
CONFIG_RTC_DRV_S35390A=m
|
||||
|
@ -50,7 +45,6 @@ CONFIG_MVNETA=m
|
|||
CONFIG_GPIO_MVEBU=y
|
||||
CONFIG_MVEBU_CLK_CORE=y
|
||||
CONFIG_MVEBU_CLK_COREDIV=y
|
||||
CONFIG_MVEBU_CLK_GATING=y
|
||||
CONFIG_MMC_MVSDIO=m
|
||||
CONFIG_MMC_SDHCI_DOVE=m
|
||||
CONFIG_SPI_ORION=m
|
||||
|
@ -68,6 +62,7 @@ CONFIG_SND_KIRKWOOD_SOC_ARMADA370_DB=m
|
|||
CONFIG_USB_EHCI_HCD_ORION=m
|
||||
CONFIG_MMC_SDHCI_PXAV3=m
|
||||
CONFIG_MVPP2=m
|
||||
CONFIG_COMMON_CLK_SI5351=m
|
||||
# CONFIG_CACHE_FEROCEON_L2 is not set
|
||||
# CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH is not set
|
||||
|
||||
|
@ -81,21 +76,15 @@ CONFIG_SOC_TI81XX=y
|
|||
# CONFIG_MACH_CM_T3517 is not set
|
||||
# CONFIG_MACH_CRANEBOARD is not set
|
||||
# CONFIG_MACH_DEVKIT8000 is not set
|
||||
# CONFIG_MACH_IGEP0030 is not set
|
||||
# CONFIG_MACH_NOKIA_RX51 is not set
|
||||
# CONFIG_MACH_OMAP_3430SDP is not set
|
||||
# CONFIG_MACH_OMAP_3630SDP is not set
|
||||
# CONFIG_MACH_OMAP_LDP is not set
|
||||
# CONFIG_MACH_OMAP3_BEAGLE is not set
|
||||
# CONFIG_MACH_OMAP3517EVM is not set
|
||||
# CONFIG_MACH_OMAP3530_LV_SOM is not set
|
||||
# CONFIG_MACH_OMAP3EVM is not set
|
||||
# CONFIG_MACH_OMAP3_PANDORA is not set
|
||||
# CONFIG_MACH_OMAP3_TORPEDO is not set
|
||||
# CONFIG_MACH_OVERO is not set
|
||||
# CONFIG_MACH_SBC3530 is not set
|
||||
# CONFIG_MACH_TI8168EVM is not set
|
||||
# CONFIG_MACH_TI8148EVM is not set
|
||||
# CONFIG_MACH_TOUCHBOOK is not set
|
||||
|
||||
CONFIG_SOC_HAS_REALTIME_COUNTER=y
|
||||
|
@ -103,28 +92,26 @@ CONFIG_OMAP_RESET_CLOCKS=y
|
|||
CONFIG_OMAP_MUX=y
|
||||
CONFIG_OMAP_MUX_WARNINGS=y
|
||||
CONFIG_OMAP_32K_TIMER=y
|
||||
CONFIG_OMAP_32K_TIMER_HZ=128
|
||||
CONFIG_OMAP_PACKAGE_CBB=y
|
||||
CONFIG_OMAP_PACKAGE_CUS=y
|
||||
# CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE is not set
|
||||
|
||||
CONFIG_OMAP_MCBSP=y
|
||||
CONFIG_OMAP2PLUS_MBOX=m
|
||||
CONFIG_OMAP_MBOX_KFIFO_SIZE=256
|
||||
CONFIG_OMAP_DM_TIMER=y
|
||||
CONFIG_OMAP_PM_NOOP=y
|
||||
CONFIG_DMA_OMAP=y
|
||||
CONFIG_OMAP_IOMMU=y
|
||||
CONFIG_OMAP_IOVMM=m
|
||||
CONFIG_HWSPINLOCK_OMAP=m
|
||||
CONFIG_OMAP3_EMU=y
|
||||
# CONFIG_OMAP3_SDRC_AC_TIMING is not set
|
||||
|
||||
CONFIG_SERIAL_OMAP=y
|
||||
CONFIG_SERIAL_OMAP_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_OMAP=m
|
||||
|
||||
CONFIG_GPIO_TWL4030=m
|
||||
CONFIG_GPIO_TWL6040=m
|
||||
CONFIG_GPIO_PCF857X=m
|
||||
CONFIG_I2C_OMAP=m
|
||||
CONFIG_CHARGER_TWL4030=m
|
||||
CONFIG_OMAP_WATCHDOG=m
|
||||
|
@ -136,9 +123,9 @@ CONFIG_BATTERY_TWL4030_MADC=m
|
|||
CONFIG_OMAP_USB2=m
|
||||
CONFIG_OMAP_CONTROL_PHY=m
|
||||
CONFIG_TI_PIPE3=m
|
||||
CONFIG_PCI_DRA7XX=y
|
||||
CONFIG_TWL4030_USB=m
|
||||
CONFIG_TWL6030_USB=m
|
||||
CONFIG_TWL6030_PWM=m
|
||||
CONFIG_TWL6040_CORE=y
|
||||
CONFIG_CLK_TWL6040=m
|
||||
CONFIG_OMAP_INTERCONNECT=m
|
||||
|
@ -151,7 +138,7 @@ CONFIG_USB_EHCI_HCD_OMAP=m
|
|||
CONFIG_USB_OHCI_HCD_OMAP3=m
|
||||
CONFIG_USB_MUSB_AM35X=m
|
||||
CONFIG_USB_MUSB_OMAP2PLUS=m
|
||||
CONFIG_OMAP_CONTROL_USB=m
|
||||
CONFIG_USB_DWC3_OMAP=m
|
||||
CONFIG_MMC_OMAP=m
|
||||
CONFIG_MMC_OMAP_HS=y
|
||||
CONFIG_RTC_DRV_MAX8907=m
|
||||
|
@ -173,6 +160,8 @@ CONFIG_REGULATOR_PBIAS=m
|
|||
CONFIG_RTC_DRV_PALMAS=m
|
||||
CONFIG_OMAP5_DSS_HDMI=y
|
||||
CONFIG_OMAP5_DSS_HDMI_AUDIO=y
|
||||
CONFIG_COMMON_CLK_PALMAS=m
|
||||
CONFIG_INPUT_PALMAS_PWRBUTTON=m
|
||||
|
||||
CONFIG_WL_TI=y
|
||||
CONFIG_WLCORE_SDIO=m
|
||||
|
@ -186,7 +175,6 @@ CONFIG_MTD_ONENAND_OMAP2=m
|
|||
CONFIG_MTD_NAND_OMAP2=m
|
||||
CONFIG_MTD_NAND_OMAP_BCH=y
|
||||
CONFIG_SPI_OMAP24XX=m
|
||||
CONFIG_MFD_TI_SSP=m
|
||||
CONFIG_SPI_TI_QSPI=m
|
||||
|
||||
CONFIG_INPUT_TWL4030_PWRBUTTON=m
|
||||
|
@ -194,12 +182,9 @@ CONFIG_INPUT_TWL4030_VIBRA=m
|
|||
CONFIG_INPUT_TWL6040_VIBRA=m
|
||||
CONFIG_KEYBOARD_OMAP4=m
|
||||
CONFIG_KEYBOARD_TWL4030=m
|
||||
CONFIG_TOUCHSCREEN_TI_TSCADC=m
|
||||
CONFIG_LEDS_TCA6507=m
|
||||
|
||||
# OMAP thermal temp. Can likely be built as module but doesn't autoload so build in to ensure performance on PandaES
|
||||
CONFIG_OMAP_BANDGAP=y
|
||||
CONFIG_TI_SOC_THERMAL=y
|
||||
CONFIG_TI_THERMAL=y
|
||||
# OMAP thermal temp.
|
||||
CONFIG_OMAP4_THERMAL=y
|
||||
CONFIG_OMAP5_THERMAL=y
|
||||
|
||||
|
@ -224,13 +209,10 @@ CONFIG_HW_RANDOM_OMAP3_ROM=m
|
|||
CONFIG_DRM_OMAP=m
|
||||
CONFIG_DRM_OMAP_NUM_CRTCS=2
|
||||
CONFIG_OMAP2_VRFB=y
|
||||
# CONFIG_FB_OMAP_BOOTLOADER_INIT is not set
|
||||
# CONFIG_FB_OMAP_LCD_VGA is not set
|
||||
# CONFIG_FB_OMAP2 is not set
|
||||
# CONFIG_FB_DA8XX is not set
|
||||
|
||||
CONFIG_OMAP2_DSS=m
|
||||
# CONFIG_OMAP2_DSS_DEBUG_SUPPORT is not set
|
||||
# CONFIG_OMAP2_DSS_COLLECT_IRQ_STATS is not set
|
||||
CONFIG_OMAP2_DSS_DPI=y
|
||||
CONFIG_OMAP2_DSS_RFBI=y
|
||||
|
@ -238,9 +220,7 @@ CONFIG_OMAP2_DSS_VENC=y
|
|||
CONFIG_OMAP4_DSS_HDMI=y
|
||||
CONFIG_OMAP2_DSS_SDI=y
|
||||
CONFIG_OMAP2_DSS_DSI=y
|
||||
# CONFIG_OMAP2_DSS_FAKE_VSYNC is not set
|
||||
CONFIG_OMAP2_DSS_MIN_FCK_PER_PCK=0
|
||||
CONFIG_OMAP2_DSS_SLEEP_BEFORE_RESET=y
|
||||
CONFIG_OMAP2_DSS_SLEEP_AFTER_VENC_RESET=y
|
||||
|
||||
CONFIG_DISPLAY_ENCODER_TFP410=m
|
||||
|
@ -258,42 +238,29 @@ CONFIG_DISPLAY_PANEL_NEC_NL8048HL11=m
|
|||
CONFIG_DISPLAY_PANEL_TPO_TD028TTEC1=m
|
||||
|
||||
# Enable V4L2 drivers for OMAP2+
|
||||
CONFIG_MEDIA_CONTROLLER=y
|
||||
CONFIG_V4L_PLATFORM_DRIVERS=y
|
||||
# CONFIG_VIDEO_OMAP2_VOUT is not set
|
||||
CONFIG_VIDEO_OMAP3=m
|
||||
CONFIG_VIDEO_ADP1653=m
|
||||
# CONFIG_VIDEO_OMAP4 is not set
|
||||
# CONFIG_VIDEO_OMAP4_DEBUG is not set
|
||||
# The ones below are for TI Davinci
|
||||
# CONFIG_VIDEO_VPFE_CAPTURE is not set
|
||||
# CONFIG_VIDEO_VPSS_SYSTEM is not set
|
||||
# CONFIG_VIDEO_DM6446_CCDC is not set
|
||||
# CONFIG_VIDEO_DM644X_VPBE is not set
|
||||
# CONFIG_VIDEO_DM355_CCDC is not set
|
||||
# CONFIG_VIDEO_ISIF is not set
|
||||
# Also enable vivi driver - useful for testing a full kernelspace V4L2 driver
|
||||
CONFIG_V4L_TEST_DRIVERS=y
|
||||
CONFIG_VIDEO_VIVI=m
|
||||
|
||||
CONFIG_SND_OMAP_SOC=m
|
||||
CONFIG_SND_SOC_I2C_AND_SPI=m
|
||||
CONFIG_SND_OMAP_SOC_AM3517EVM=m
|
||||
CONFIG_SND_OMAP_SOC_DMIC=m
|
||||
CONFIG_SND_OMAP_SOC_HDMI=m
|
||||
CONFIG_SND_OMAP_SOC_IGEP0020=m
|
||||
CONFIG_SND_OMAP_SOC_HDMI_AUDIO=m
|
||||
CONFIG_SND_OMAP_SOC_MCBSP=m
|
||||
CONFIG_SND_OMAP_SOC_MCPDM=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP_HDMI=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP_ABE_TWL6040=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP_TWL4030=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP3EVM=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP3_BEAGLE=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP3_PANDORA=m
|
||||
CONFIG_SND_OMAP_SOC_OVERO=m
|
||||
CONFIG_SND_OMAP_SOC_RX51=m
|
||||
CONFIG_SND_OMAP_SOC_SDP4430=m
|
||||
CONFIG_SND_SOC_TLV320AIC23=m
|
||||
CONFIG_SND_SOC_TLV320AIC3X=m
|
||||
CONFIG_SND_SOC_TPA6130A2=m
|
||||
CONFIG_SND_SOC_TWL4030=m
|
||||
CONFIG_SND_SOC_TWL6040=m
|
||||
CONFIG_SND_SOC_PCM1792A=m
|
||||
|
@ -301,7 +268,6 @@ CONFIG_RADIO_WL128X=m
|
|||
|
||||
CONFIG_OMAP_REMOTEPROC=m
|
||||
|
||||
# CONFIG_TIDSPBRIDGE is not set
|
||||
# CONFIG_OMAP2_DSS_DEBUGFS is not set
|
||||
# CONFIG_OMAP_IOMMU_DEBUG is not set
|
||||
# CONFIG_OMAP_MUX_DEBUG is not set
|
||||
|
@ -334,6 +300,7 @@ CONFIG_SND_DAVINCI_SOC_I2S=m
|
|||
CONFIG_SND_DAVINCI_SOC_MCASP=m
|
||||
CONFIG_SND_DAVINCI_SOC_VCIF=m
|
||||
CONFIG_SND_DAVINCI_SOC_GENERIC_EVM=m
|
||||
CONFIG_SND_EDMA_SOC=m
|
||||
CONFIG_SND_AM33XX_SOC_EVM=m
|
||||
CONFIG_REGULATOR_TI_ABB=m
|
||||
CONFIG_TI_ADC081C=m
|
||||
|
@ -348,11 +315,17 @@ CONFIG_ARCH_MSM8960=y
|
|||
CONFIG_ARCH_MSM8974=y
|
||||
CONFIG_SERIAL_MSM=y
|
||||
CONFIG_SERIAL_MSM_CONSOLE=y
|
||||
CONFIG_SERIAL_MSM_HS=m
|
||||
CONFIG_PINCTRL_APQ8064=m
|
||||
CONFIG_PINCTRL_APQ8084=m
|
||||
CONFIG_PINCTRL_IPQ8064=m
|
||||
CONFIG_PINCTRL_MSM8960=m
|
||||
CONFIG_PINCTRL_MSM8960=m
|
||||
CONFIG_PINCTRL_MSM8X74=m
|
||||
CONFIG_PINCTRL_QCOM_SPMI_PMIC=m
|
||||
CONFIG_COMMON_CLK_QCOM=m
|
||||
CONFIG_MFD_QCOM_RPM=m
|
||||
CONFIG_MFD_PM8921_CORE=m
|
||||
CONFIG_REGULATOR_QCOM_RPM=m
|
||||
CONFIG_APQ_GCC_8084=m
|
||||
CONFIG_APQ_MMCC_8084=m
|
||||
CONFIG_IPQ_GCC_806X=m
|
||||
|
@ -368,16 +341,30 @@ CONFIG_GPIO_MSM_V2=m
|
|||
CONFIG_POWER_RESET_MSM=y
|
||||
CONFIG_USB_MSM_OTG=m
|
||||
CONFIG_MMC_SDHCI_MSM=m
|
||||
CONFIG_MMC_QCOM_DML=m
|
||||
CONFIG_QCOM_BAM_DMA=m
|
||||
CONFIG_QCOM_GSBI=m
|
||||
CONFIG_MSM_IOMMU=y
|
||||
CONFIG_PHY_QCOM_APQ8064_SATA=m
|
||||
CONFIG_PHY_QCOM_IPQ806X_SATA=m
|
||||
CONFIG_USB_DWC3_QCOM=m
|
||||
CONFIG_CRYPTO_DEV_QCE=m
|
||||
# CONFIG_MSM_IOMMU is not set
|
||||
CONFIG_DRM_MSM=m
|
||||
CONFIG_DRM_MSM_FBDEV=y
|
||||
CONFIG_USB_EHCI_MSM=m
|
||||
CONFIG_MFD_PM8XXX=m
|
||||
CONFIG_KEYBOARD_PMIC8XXX=m
|
||||
CONFIG_INPUT_PM8XXX_VIBRATOR=m
|
||||
CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
||||
CONFIG_RTC_DRV_PM8XXX=m
|
||||
# CONFIG_DRM_MSM_REGISTER_LOGGING is not set
|
||||
CONFIG_QCOM_WDT=m
|
||||
CONFIG_MFD_SPMI_PMIC=m
|
||||
CONFIG_SPMI=m
|
||||
CONFIG_SPMI_MSM_PMIC_ARB=m
|
||||
CONFIG_QCOM_SPMI_IADC=m
|
||||
|
||||
# i.MX
|
||||
CONFIG_MXC_IRQ_PRIOR=y
|
||||
# CONFIG_MXC_DEBUG_BOARD is not set
|
||||
CONFIG_SOC_IMX50=y
|
||||
CONFIG_SOC_IMX51=y
|
||||
|
@ -385,9 +372,10 @@ CONFIG_SOC_IMX53=y
|
|||
CONFIG_SOC_IMX6Q=y
|
||||
CONFIG_SOC_IMX6SL=y
|
||||
CONFIG_SOC_IMX6SX=y
|
||||
# CONFIG_SOC_LS1021A is not set
|
||||
# CONFIG_SOC_VF610 is not set
|
||||
CONFIG_MACH_IMX51_DT=y
|
||||
CONFIG_ARM_IMX6Q_CPUFREQ=m
|
||||
CONFIG_POWER_RESET_IMX=y
|
||||
CONFIG_PCI_IMX6=y
|
||||
CONFIG_IMX_THERMAL=m
|
||||
CONFIG_IMX_SDMA=m
|
||||
|
@ -414,7 +402,6 @@ CONFIG_STMPE_I2C=y
|
|||
CONFIG_SPI_IMX=m
|
||||
CONFIG_SPI_FSL_QUADSPI=m
|
||||
CONFIG_STMPE_SPI=y
|
||||
CONFIG_MFD_MC13783=m
|
||||
CONFIG_MFD_MC13XXX_SPI=m
|
||||
CONFIG_MFD_STMPE=y
|
||||
CONFIG_MTD_NAND_GPMI_NAND=m
|
||||
|
@ -426,8 +413,11 @@ CONFIG_CRYPTO_DEV_SAHARA=m
|
|||
CONFIG_RTC_DRV_SNVS=m
|
||||
# CONFIG_FB_MX3 is not set
|
||||
# CONFIG_FB_IMX is not set
|
||||
# CONFIG_FB_MXS is not set
|
||||
|
||||
CONFIG_SND_IMX_SOC=m
|
||||
CONFIG_SND_SOC_FSL_ASOC_CARD=m
|
||||
CONFIG_SND_SOC_FSL_ASRC=m
|
||||
CONFIG_SND_SOC_FSL_ESAI=m
|
||||
CONFIG_SND_SOC_FSL_SAI=m
|
||||
CONFIG_SND_SOC_FSL_SPDIF=m
|
||||
|
@ -435,15 +425,21 @@ CONFIG_SND_SOC_FSL_SSI=m
|
|||
CONFIG_SND_SOC_FSL_UTILS=m
|
||||
CONFIG_SND_SOC_IMX_SSI=m
|
||||
CONFIG_SND_SOC_IMX_AUDMUX=m
|
||||
CONFIG_SND_SOC_IMX_ES8328=m
|
||||
CONFIG_SND_SOC_IMX_PCM_FIQ=m
|
||||
CONFIG_SND_SOC_IMX_PCM_DMA=m
|
||||
CONFIG_SND_SOC_IMX_SGTL5000=m
|
||||
CONFIG_SND_SOC_IMX_WM8962=m
|
||||
CONFIG_SND_SOC_IMX_MC13783=m
|
||||
CONFIG_SND_SOC_IMX_SPDIF=m
|
||||
CONFIG_SND_SOC_CS42XX8_I2C=m
|
||||
CONFIG_SND_SOC_ES8328=m
|
||||
CONFIG_SND_SOC_ES8328_I2C=m
|
||||
CONFIG_SND_SOC_ES8328_SPI=m
|
||||
CONFIG_SND_SOC_EUKREA_TLV320=m
|
||||
CONFIG_SND_SOC_TVL320AIC32X4=m
|
||||
CONFIG_SND_SOC_SGTL5000=m
|
||||
CONFIG_SND_SOC_WM8731=m
|
||||
CONFIG_SND_SOC_WM8962=m
|
||||
|
||||
CONFIG_USB_IMX21_HCD=m
|
||||
CONFIG_USB_MXS_PHY=m
|
||||
|
@ -466,8 +462,6 @@ CONFIG_DRM_IMX_PARALLEL_DISPLAY=m
|
|||
CONFIG_DRM_IMX_TVE=m
|
||||
CONFIG_VIDEO_CODA=m
|
||||
|
||||
CONFIG_MFD_SYSCON=y
|
||||
CONFIG_GPIO_SYSCON=m
|
||||
CONFIG_SENSORS_MC13783_ADC=m
|
||||
CONFIG_REGULATOR_ANATOP=m
|
||||
CONFIG_REGULATOR_MC13783=m
|
||||
|
@ -503,10 +497,17 @@ CONFIG_REGULATOR_DA9055=m
|
|||
|
||||
# picoxcell
|
||||
# CONFIG_CRYPTO_DEV_PICOXCELL is not set
|
||||
# CONFIG_HW_RANDOM_PICOXCELL is not set
|
||||
|
||||
# Rockchips
|
||||
CONFIG_I2C_RK3X=m
|
||||
# Exynos 4
|
||||
CONFIG_ARCH_EXYNOS4=y
|
||||
CONFIG_SOC_EXYNOS4212=y
|
||||
CONFIG_SOC_EXYNOS4412=y
|
||||
CONFIG_SOC_EXYNOS4415=y
|
||||
CONFIG_ARM_EXYNOS4210_CPUFREQ=y
|
||||
CONFIG_ARM_EXYNOS4X12_CPUFREQ=y
|
||||
CONFIG_AK8975=m
|
||||
CONFIG_CM36651=m
|
||||
CONFIG_KEYBOARD_SAMSUNG=m
|
||||
|
||||
# ST Ericsson
|
||||
CONFIG_MACH_HREFV60=y
|
||||
|
@ -529,6 +530,8 @@ CONFIG_AHCI_ST=m
|
|||
CONFIG_INPUT_AB8500_PONKEY=m
|
||||
CONFIG_REGULATOR_AB8500=y
|
||||
CONFIG_AB8500_USB=m
|
||||
CONFIG_USB_MUSB_UX500=m
|
||||
# CONFIG_USB_UX500_DMA is not set
|
||||
CONFIG_RTC_DRV_AB8500=m
|
||||
CONFIG_PWM_AB8500=m
|
||||
CONFIG_SND_SOC_UX500=m
|
||||
|
@ -584,7 +587,6 @@ CONFIG_MFD_TPS80031=y
|
|||
CONFIG_KEYBOARD_NVEC=y
|
||||
CONFIG_SERIO_NVEC_PS2=y
|
||||
CONFIG_NVEC_POWER=y
|
||||
CONFIG_NVEC_LEDS=y
|
||||
CONFIG_NVEC_PAZ00=y
|
||||
CONFIG_MFD_TPS6586X=y
|
||||
CONFIG_GPIO_TPS6586X=y
|
||||
|
@ -594,17 +596,19 @@ CONFIG_RTC_DRV_TPS6586X=m
|
|||
CONFIG_SERIO_OLPC_APSP=m
|
||||
|
||||
# Zynq-7xxx
|
||||
# likely needs usb still
|
||||
CONFIG_SERIAL_UARTLITE=y
|
||||
CONFIG_SERIAL_UARTLITE_CONSOLE=y
|
||||
CONFIG_SERIAL_XILINX_PS_UART=y
|
||||
CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y
|
||||
CONFIG_COMMON_CLK_AXI_CLKGEN=m
|
||||
CONFIG_COMMON_CLK_SI570=m
|
||||
CONFIG_COMMON_CLK_XLNX_CLKWZRD=m
|
||||
CONFIG_ARM_ZYNQ_CPUIDLE=y
|
||||
CONFIG_LATTICE_ECP3_CONFIG=m
|
||||
CONFIG_NET_VENDOR_XILINX=y
|
||||
CONFIG_XILINX_EMACLITE=m
|
||||
CONFIG_GPIO_XILINX=y
|
||||
CONFIG_GPIO_ZYNQ=m
|
||||
CONFIG_I2C_XILINX=m
|
||||
CONFIG_SPI_XILINX=m
|
||||
CONFIG_SPI_CADENCE=m
|
||||
|
@ -620,6 +624,10 @@ CONFIG_XILLYBUS=m
|
|||
CONFIG_XILLYBUS_PCIE=m
|
||||
CONFIG_XILLYBUS_OF=m
|
||||
CONFIG_GS_FPGABOOT=m
|
||||
CONFIG_USB_GADGET_XILINX=m
|
||||
CONFIG_PCIE_XILINX=y
|
||||
CONFIG_CADENCE_WATCHDOG=m
|
||||
CONFIG_REGULATOR_ISL9305=m
|
||||
|
||||
# Multi function devices
|
||||
CONFIG_MFD_88PM800=m
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
# Generic ARM config options
|
||||
CONFIG_ARM=y
|
||||
|
||||
# CONFIG_ARCH_MULTI_V4 is not set
|
||||
# CONFIG_ARCH_MULTI_V4T is not set
|
||||
# CONFIG_ARCH_MULTI_V6 is not set
|
||||
CONFIG_ARCH_MULTI_V7=y
|
||||
|
||||
|
@ -35,7 +33,6 @@ CONFIG_ZBOOT_ROM_TEXT=0x0
|
|||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_XZ_DEC_ARMTHUMB=y
|
||||
CONFIG_ARCH_HAS_TICK_BROADCAST=y
|
||||
CONFIG_ALWAYS_USE_PERSISTENT_CLOCK=y
|
||||
CONFIG_IRQ_CROSSBAR=y
|
||||
|
||||
# CONFIG_MCPM is not set
|
||||
|
@ -53,16 +50,22 @@ CONFIG_IRQ_CROSSBAR=y
|
|||
# Platforms enabled/disabled globally on ARMv7
|
||||
CONFIG_ARCH_EXYNOS=y
|
||||
CONFIG_ARCH_HIGHBANK=y
|
||||
CONFIG_ARCH_ROCKCHIP=y
|
||||
CONFIG_ARCH_SUNXI=y
|
||||
CONFIG_ARCH_TEGRA=y
|
||||
CONFIG_ARCH_VEXPRESS_CA9X4=y
|
||||
CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA=y
|
||||
CONFIG_ARCH_VIRT=y
|
||||
# CONFIG_ARCH_BCM is not set
|
||||
# CONFIG_ARCH_BERLIN is not set
|
||||
# CONFIG_ARCH_HI3xxx is not set
|
||||
# CONFIG_ARCH_HISI is not set
|
||||
# CONFIG_ARCH_MEDIATEK is not set
|
||||
# CONFIG_ARCH_MESON is not set
|
||||
# CONFIG_ARCH_QCOM is not set
|
||||
# CONFIG_ARCH_S5PV210 is not set
|
||||
# CONFIG_ARCH_SHMOBILE_MULTI is not set
|
||||
# CONFIG_ARCH_SIRF is not set
|
||||
# CONFIG_ARCH_SOCFPGA is not set
|
||||
# CONFIG_PLAT_SPEAR is not set
|
||||
# CONFIG_ARCH_STI is not set
|
||||
# CONFIG_ARCH_U8500 is not set
|
||||
|
@ -109,11 +112,20 @@ CONFIG_SCHED_SMT=y
|
|||
|
||||
CONFIG_RCU_FANOUT=32
|
||||
|
||||
CONFIG_CHECKPOINT_RESTORE=y
|
||||
|
||||
# Power management / thermal / cpu scaling
|
||||
CONFIG_CPU_IDLE=y
|
||||
# CONFIG_CPU_IDLE_GOV_LADDER is not set
|
||||
CONFIG_CPU_IDLE_GOV_MENU=y
|
||||
# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set
|
||||
|
||||
CONFIG_PM_OPP=y
|
||||
CONFIG_ARM_CPU_SUSPEND=y
|
||||
CONFIG_ARM_PSCI=y
|
||||
CONFIG_THERMAL=y
|
||||
CONFIG_CLOCK_THERMAL=y
|
||||
CONFIG_CPUFREQ_DT=y
|
||||
# CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set
|
||||
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
|
||||
|
@ -122,9 +134,9 @@ CONFIG_LSM_MMAP_MIN_ADDR=32768
|
|||
CONFIG_XZ_DEC_ARM=y
|
||||
|
||||
CONFIG_UACCESS_WITH_MEMCPY=y
|
||||
CONFIG_CC_STACKPROTECTOR=y
|
||||
|
||||
CONFIG_PCI_HOST_GENERIC=y
|
||||
# CONFIG_PCI_LAYERSCAPE is not set
|
||||
|
||||
CONFIG_LBDAF=y
|
||||
|
||||
|
@ -142,7 +154,6 @@ CONFIG_ARM_TIMER_SP804=y
|
|||
CONFIG_SERIO_AMBAKMI=m
|
||||
CONFIG_SERIAL_AMBA_PL010=y
|
||||
CONFIG_SERIAL_AMBA_PL010_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_DW=y
|
||||
CONFIG_SERIAL_MRST_MAX3110=m
|
||||
|
||||
CONFIG_RTC_DRV_PL030=y
|
||||
|
@ -152,6 +163,7 @@ CONFIG_PL330_DMA=m
|
|||
CONFIG_AMBA_PL08X=y
|
||||
CONFIG_GPIO_PL061=y
|
||||
CONFIG_PL320_MBOX=y
|
||||
CONFIG_SND_ARMAACI=m
|
||||
|
||||
# highbank
|
||||
CONFIG_EDAC_HIGHBANK_MC=m
|
||||
|
@ -165,12 +177,12 @@ CONFIG_ARM_HIGHBANK_CPUFREQ=m
|
|||
# CONFIG_MACH_SUN5I is not set
|
||||
CONFIG_MACH_SUN6I=y
|
||||
CONFIG_MACH_SUN7I=y
|
||||
CONFIG_PINCTRL_SUNXI=y
|
||||
CONFIG_MACH_SUN8I=y
|
||||
# CONFIG_MACH_SUN9I is not set
|
||||
CONFIG_DMA_SUN6I=m
|
||||
CONFIG_SUNXI_WATCHDOG=m
|
||||
CONFIG_NET_VENDOR_ALLWINNER=y
|
||||
CONFIG_STMMAC_PLATFORM=y
|
||||
CONFIG_DWMAC_SOCFPGA=y
|
||||
CONFIG_DWMAC_SUNXI=y
|
||||
CONFIG_STMMAC_PLATFORM=m
|
||||
CONFIG_EEPROM_SUNXI_SID=m
|
||||
CONFIG_RTC_DRV_SUNXI=m
|
||||
CONFIG_PHY_SUN4I_USB=m
|
||||
|
@ -184,18 +196,18 @@ CONFIG_POWER_RESET_SUN6I=y
|
|||
CONFIG_TOUCHSCREEN_SUN4I=m
|
||||
CONFIG_MFD_AXP20X=y
|
||||
CONFIG_REGULATOR_AXP20X=m
|
||||
CONFIG_IR_SUNXI=m
|
||||
CONFIG_MDIO_SUN4I=m
|
||||
CONFIG_SUN4I_EMAC=m
|
||||
CONFIG_RTC_DRV_SUN6I=m
|
||||
CONFIG_AXP288_ADC=m
|
||||
CONFIG_MTD_NAND_SUNXI=m
|
||||
|
||||
CONFIG_MDIO_SUN4I=m
|
||||
CONFIG_SUN4I_EMAC=m
|
||||
# Exynos
|
||||
CONFIG_ARCH_EXYNOS3=y
|
||||
CONFIG_ARCH_EXYNOS4=y
|
||||
# CONFIG_ARCH_EXYNOS4 is not set
|
||||
CONFIG_ARCH_EXYNOS5=y
|
||||
CONFIG_SOC_EXYNOS3250=y
|
||||
CONFIG_SOC_EXYNOS4212=y
|
||||
CONFIG_SOC_EXYNOS4412=y
|
||||
CONFIG_SOC_EXYNOS5250=y
|
||||
CONFIG_SOC_EXYNOS5420=y
|
||||
CONFIG_SOC_EXYNOS5440=y
|
||||
|
@ -204,8 +216,6 @@ CONFIG_SOC_EXYNOS5410=y
|
|||
CONFIG_SOC_EXYNOS5800=y
|
||||
CONFIG_SERIAL_SAMSUNG=y
|
||||
CONFIG_SERIAL_SAMSUNG_CONSOLE=y
|
||||
CONFIG_ARM_EXYNOS4210_CPUFREQ=y
|
||||
CONFIG_ARM_EXYNOS4X12_CPUFREQ=y
|
||||
CONFIG_ARM_EXYNOS5250_CPUFREQ=y
|
||||
CONFIG_ARM_EXYNOS5440_CPUFREQ=y
|
||||
CONFIG_ARM_EXYNOS_CPU_FREQ_BOOST_SW=y
|
||||
|
@ -217,12 +227,14 @@ CONFIG_I2C_S3C2410=m
|
|||
CONFIG_SPI_S3C64XX=m
|
||||
CONFIG_EXYNOS_THERMAL=m
|
||||
CONFIG_EXYNOS_THERMAL_CORE=y
|
||||
CONFIG_EXYNOS_ADC=m
|
||||
CONFIG_MMC_SDHCI_S3C=m
|
||||
CONFIG_MMC_SDHCI_S3C_DMA=y
|
||||
CONFIG_MMC_DW_EXYNOS=m
|
||||
CONFIG_EXYNOS_IOMMU=y
|
||||
CONFIG_PCI_EXYNOS=y
|
||||
CONFIG_PHY_EXYNOS5_USBDRD=m
|
||||
CONFIG_PHY_SAMSUNG_USB2=m
|
||||
CONFIG_USB_EHCI_EXYNOS=m
|
||||
CONFIG_USB_OHCI_EXYNOS=m
|
||||
CONFIG_USB_DWC3_EXYNOS=m
|
||||
|
@ -236,7 +248,10 @@ CONFIG_REGULATOR_S2MPS11=m
|
|||
CONFIG_REGULATOR_S5M8767=m
|
||||
CONFIG_TCG_TIS_I2C_INFINEON=m
|
||||
CONFIG_RTC_DRV_S5M=m
|
||||
# CONFIG_RTC_DRV_S3C is not set
|
||||
CONFIG_RTC_DRV_S3C=m
|
||||
CONFIG_MFD_WM8994=m
|
||||
CONFIG_GPIO_WM8994=m
|
||||
CONFIG_REGULATOR_WM8994=m
|
||||
|
||||
CONFIG_EXYNOS_VIDEO=y
|
||||
CONFIG_EXYNOS_MIPI_DSI=y
|
||||
|
@ -256,7 +271,14 @@ CONFIG_DRM_EXYNOS_ROTATOR=y
|
|||
CONFIG_DRM_EXYNOS_VIDI=y
|
||||
CONFIG_PHY_EXYNOS_DP_VIDEO=m
|
||||
# CONFIG_FB_S3C is not set
|
||||
# CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS is not set
|
||||
CONFIG_PHY_EXYNOS_MIPI_VIDEO=m
|
||||
CONFIG_PHY_EXYNOS_DP_VIDEO=m
|
||||
CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS=y
|
||||
CONFIG_VIDEO_EXYNOS_FIMC_LITE=m
|
||||
CONFIG_VIDEO_EXYNOS4_FIMC_IS=m
|
||||
CONFIG_VIDEO_EXYNOS4_ISP_DMA_CAPTURE=y
|
||||
CONFIG_VIDEO_S5P_FIMC=m
|
||||
CONFIG_VIDEO_S5P_MIPI_CSIS=m
|
||||
CONFIG_VIDEO_SAMSUNG_S5P_G2D=m
|
||||
CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m
|
||||
CONFIG_VIDEO_SAMSUNG_S5P_MFC=m
|
||||
|
@ -269,11 +291,10 @@ CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994=m
|
|||
CONFIG_SND_SOC_SMDK_WM8994_PCM=m
|
||||
CONFIG_SND_SOC_SNOW=m
|
||||
CONFIG_SND_SOC_ODROIDX2=m
|
||||
# CONFIG_GPIO_WM8994 is not set
|
||||
# CONFIG_REGULATOR_WM8994 is not set
|
||||
# CONFIG_EXYNOS_IOMMU_DEBUG is not set
|
||||
# CONFIG_SAMSUNG_PM_DEBUG is not set
|
||||
# CONFIG_SAMSUNG_PM_CHECK is not set
|
||||
# CONFIG_ARM_EXYNOS5_BUS_DEVFREQ is not set
|
||||
|
||||
# Arndale/Origen
|
||||
CONFIG_MFD_MAX8997=y
|
||||
|
@ -283,14 +304,36 @@ CONFIG_REGULATOR_MAX77686=m
|
|||
CONFIG_REGULATOR_S2MPA01=m
|
||||
CONFIG_REGULATOR_S5M8767=m
|
||||
CONFIG_COMMON_CLK_MAX77686=m
|
||||
CONFIG_COMMON_CLK_MAX77802=m
|
||||
CONFIG_COMMON_CLK_S2MPS11=m
|
||||
CONFIG_INPUT_MAX8997_HAPTIC=m
|
||||
CONFIG_CHARGER_MAX8997=m
|
||||
CONFIG_LEDS_MAX8997=m
|
||||
CONFIG_RTC_DRV_MAX8997=m
|
||||
CONFIG_RTC_DRV_MAX77686=m
|
||||
CONFIG_RTC_DRV_MAX77802=m
|
||||
CONFIG_RTC_DRV_RK808=m
|
||||
CONFIG_EXTCON_MAX8997=m
|
||||
|
||||
# Rockchips
|
||||
CONFIG_I2C_RK3X=m
|
||||
CONFIG_SPI_ROCKCHIP=m
|
||||
CONFIG_PWM_ROCKCHIP=m
|
||||
CONFIG_ROCKCHIP_SARADC=m
|
||||
CONFIG_ROCKCHIP_IODOMAIN=m
|
||||
CONFIG_MMC_DW_ROCKCHIP=m
|
||||
CONFIG_EMAC_ROCKCHIP=m
|
||||
CONFIG_MFD_RK808=m
|
||||
CONFIG_COMMON_CLK_RK808=m
|
||||
CONFIG_REGULATOR_RK808=m
|
||||
CONFIG_RTC_DRV_HYM8563=m
|
||||
CONFIG_ROCKCHIP_SARADC=m
|
||||
CONFIG_ROCKCHIP_IOMMU=y
|
||||
CONFIG_SND_SOC_ROCKCHIP=m
|
||||
CONFIG_SND_SOC_ROCKCHIP_I2S=m
|
||||
CONFIG_ROCKCHIP_THERMAL=m
|
||||
CONFIG_DRM_ROCKCHIP=m
|
||||
|
||||
# Tegra
|
||||
CONFIG_ARCH_TEGRA_114_SOC=y
|
||||
CONFIG_ARCH_TEGRA_124_SOC=y
|
||||
|
@ -304,8 +347,6 @@ CONFIG_TEGRA_IOMMU_SMMU=y
|
|||
CONFIG_MMC_SDHCI_TEGRA=m
|
||||
CONFIG_TEGRA_WATCHDOG=m
|
||||
CONFIG_I2C_TEGRA=m
|
||||
CONFIG_TEGRA_SYSTEM_DMA=y
|
||||
CONFIG_TEGRA_EMC_SCALING_ENABLE=y
|
||||
CONFIG_TEGRA_AHB=y
|
||||
CONFIG_TEGRA20_APB_DMA=y
|
||||
CONFIG_SPI_TEGRA114=m
|
||||
|
@ -326,6 +367,11 @@ CONFIG_DRM_TEGRA_FBDEV=y
|
|||
# CONFIG_DRM_TEGRA_DEBUG is not set
|
||||
CONFIG_DRM_TEGRA_STAGING=y
|
||||
CONFIG_NOUVEAU_PLATFORM_DRIVER=m
|
||||
CONFIG_AD525X_DPOT=m
|
||||
CONFIG_AD525X_DPOT_I2C=m
|
||||
CONFIG_AD525X_DPOT_SPI=m
|
||||
CONFIG_TEGRA_SOCTHERM=m
|
||||
CONFIG_TEGRA_MC=y
|
||||
|
||||
# Jetson TK1
|
||||
CONFIG_PINCTRL_AS3722=y
|
||||
|
@ -334,11 +380,16 @@ CONFIG_MFD_AS3722=y
|
|||
CONFIG_REGULATOR_AS3722=m
|
||||
CONFIG_RTC_DRV_AS3722=y
|
||||
|
||||
# TI Generic
|
||||
CONFIG_TI_SOC_THERMAL=m
|
||||
CONFIG_TI_THERMAL=y
|
||||
|
||||
# DRM panels
|
||||
CONFIG_DRM_PANEL=y
|
||||
CONFIG_DRM_PANEL_SIMPLE=m
|
||||
CONFIG_DRM_PANEL_LD9040=m
|
||||
CONFIG_DRM_PANEL_S6E8AA0=m
|
||||
CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m
|
||||
|
||||
# regmap
|
||||
CONFIG_REGMAP=y
|
||||
|
@ -348,15 +399,7 @@ CONFIG_REGMAP_SPMI=m
|
|||
CONFIG_REGMAP_MMIO=m
|
||||
CONFIG_REGMAP_IRQ=y
|
||||
|
||||
# Power management
|
||||
CONFIG_PM_OPP=y
|
||||
CONFIG_ARM_CPU_SUSPEND=y
|
||||
CONFIG_GENERIC_CPUFREQ_CPU0=m
|
||||
|
||||
# usb
|
||||
CONFIG_USB_OHCI_HCD_PLATFORM=m
|
||||
CONFIG_USB_EHCI_HCD_PLATFORM=m
|
||||
# CONFIG_USB_OTG_WHITELIST is not set
|
||||
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
|
||||
CONFIG_USB_ULPI=y
|
||||
CONFIG_AX88796=m
|
||||
|
@ -365,12 +408,16 @@ CONFIG_AX88796_93CX6=y
|
|||
# usb gadget
|
||||
CONFIG_USB_OTG=y
|
||||
CONFIG_USB_GADGET=m
|
||||
CONFIG_USB_GADGET_MUSB_HDRC=m
|
||||
CONFIG_USB_GADGET_VBUS_DRAW=100
|
||||
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
|
||||
# Use PIO on musb as upstream doesn't support multiple DMA engines yet :-/
|
||||
CONFIG_MUSB_PIO_ONLY=y
|
||||
# CONFIG_USB_GADGET_XILINX is not set
|
||||
CONFIG_USB_MUSB_HDRC=m
|
||||
CONFIG_USB_MUSB_DUAL_ROLE=y
|
||||
CONFIG_USB_MUSB_DSPS=m
|
||||
# CONFIG_USB_MUSB_TUSB6010 is not set
|
||||
# CONFIG_USB_MUSB_UX500 is not set
|
||||
CONFIG_USB_GPIO_VBUS=m
|
||||
CONFIG_USB_CONFIGFS=m
|
||||
CONFIG_USB_CONFIGFS_ACM=y
|
||||
|
@ -382,22 +429,23 @@ CONFIG_USB_CONFIGFS_NCM=y
|
|||
CONFIG_USB_CONFIGFS_OBEX=y
|
||||
# CONFIG_USB_CONFIGFS_RNDIS is not set
|
||||
CONFIG_USB_CONFIGFS_SERIAL=y
|
||||
CONFIG_USB_CONFIGFS_STORAGE=y
|
||||
# CONFIG_USB_CONFIGFS_F_LB_SS is not set
|
||||
# CONFIG_USB_CONFIGFS_F_FS is not set
|
||||
# CONFIG_USB_CONFIGFS_F_UAC1 is not set
|
||||
# CONFIG_USB_CONFIGFS_F_UAC2 is not set
|
||||
# CONFIG_USB_CONFIGFS_F_MIDI is not set
|
||||
# CONFIG_USB_CONFIGFS_F_HID is not set
|
||||
|
||||
# CONFIG_MUSB_PIO_ONLY is not set
|
||||
# CONFIG_USB_MUSB_DEBUG is not set
|
||||
# CONFIG_USB_GADGET_DEBUG is not set
|
||||
# CONFIG_USB_GADGET_DEBUG_FILES is not set
|
||||
# CONFIG_USB_GADGET_DEBUG_FS is not set
|
||||
# CONFIG_USB_FUSB300 is not set
|
||||
# CONFIG_USB_RENESAS_USBHS is not set
|
||||
# CONFIG_USB_FOTG210_UDC is not set
|
||||
# CONFIG_USB_R8A66597 is not set
|
||||
# CONFIG_USB_PXA27X is not set
|
||||
# CONFIG_USB_MV_UDC is not set
|
||||
# CONFIG_USB_MV_U3D is not set
|
||||
# CONFIG_USB_BDC_UDC is not set
|
||||
# CONFIG_USB_M66592 is not set
|
||||
# CONFIG_USB_AMD5536UDC is not set
|
||||
# CONFIG_USB_NET2272 is not set
|
||||
|
@ -427,6 +475,7 @@ CONFIG_MFD_TPS65912_SPI=y
|
|||
# CONFIG_MFD_TPS80031 is not set
|
||||
# CONFIG_TWL4030_CORE is not set
|
||||
# CONFIG_TWL6040_CORE is not set
|
||||
#
|
||||
|
||||
# Pin stuff
|
||||
CONFIG_PINMUX=y
|
||||
|
@ -435,23 +484,23 @@ CONFIG_PINCTRL=y
|
|||
CONFIG_PINCTRL_SINGLE=y
|
||||
CONFIG_GENERIC_PINCONF=y
|
||||
# CONFIG_PINCTRL_SAMSUNG is not set
|
||||
# CONFIG_PINCTRL_CAPRI is not set
|
||||
# CONFIG_PINCTRL_MSM8X74 is not set
|
||||
# CONFIG_PINCTRL_BCM281XX is not set
|
||||
# CONFIG_PINCTRL_APQ8064 is not set
|
||||
# CONFIG_PINCTRL_APQ8084 is not set
|
||||
# CONFIG_PINCTRL_IPQ8064 is not set
|
||||
# CONFIG_PINCTRL_MSM8960 is not set
|
||||
|
||||
# GPIO
|
||||
# CONFIG_GPIO_EM is not set
|
||||
CONFIG_GPIO_74X164=m
|
||||
CONFIG_GPIO_ADNP=m
|
||||
CONFIG_GPIO_MCP23S08=m
|
||||
CONFIG_GPIO_MAX7301=m
|
||||
CONFIG_GPIO_MC33880=m
|
||||
CONFIG_GPIO_TPS65910=y
|
||||
CONFIG_GPIO_TPS65912=m
|
||||
# CONFIG_GPIO_ZEVIO is not set
|
||||
CONFIG_LEDS_GPIO=m
|
||||
CONFIG_LEDS_GPIO_REGISTER=y
|
||||
CONFIG_MDIO_BUS_MUX=m
|
||||
CONFIG_MDIO_BUS_MUX_GPIO=m
|
||||
CONFIG_MDIO_BUS_MUX_MMIOREG=m
|
||||
|
@ -460,6 +509,7 @@ CONFIG_INPUT_GPIO_BEEPER=m
|
|||
CONFIG_INPUT_GPIO_TILT_POLLED=m
|
||||
CONFIG_INPUT_MATRIXKMAP=m
|
||||
CONFIG_KEYBOARD_GPIO=m
|
||||
CONFIG_KEYBOARD_GPIO_POLLED=m
|
||||
CONFIG_KEYBOARD_MATRIX=m
|
||||
# CONFIG_GPIO_RCAR is not set
|
||||
CONFIG_W1_MASTER_GPIO=m
|
||||
|
@ -478,7 +528,6 @@ CONFIG_SPI_OC_TINY=m
|
|||
CONFIG_SPI_SC18IS602=m
|
||||
CONFIG_SPI_TLE62X0=m
|
||||
CONFIG_SPI_XCOMM=m
|
||||
CONFIG_SPI_XILINX=m
|
||||
# CONFIG_SPI_FSL_SPI is not set
|
||||
# CONFIG_SPI_CADENCE is not set
|
||||
|
||||
|
@ -493,6 +542,8 @@ CONFIG_I2C_MV64XXX=m
|
|||
CONFIG_CRYPTO_SHA1_ARM=m
|
||||
CONFIG_CRYPTO_AES_ARM=m
|
||||
# CONFIG_CRYPTO_AES_ARM_BS is not set
|
||||
CONFIG_CRYPTO_SHA1_ARM_NEON=m
|
||||
CONFIG_CRYPTO_SHA512_ARM_NEON=m
|
||||
|
||||
# DMA
|
||||
CONFIG_TI_PRIV_EDMA=y
|
||||
|
@ -504,11 +555,6 @@ CONFIG_EDAC_MM_EDAC=m
|
|||
CONFIG_EDAC_LEGACY_SYSFS=y
|
||||
|
||||
# Watchdog
|
||||
CONFIG_MPCORE_WATCHDOG=m
|
||||
|
||||
# Thermal / powersaving
|
||||
CONFIG_THERMAL=y
|
||||
CONFIG_ARM_PSCI=y
|
||||
|
||||
# Mailbox
|
||||
CONFIG_MAILBOX=y
|
||||
|
@ -534,6 +580,7 @@ CONFIG_MTD_NAND_PXA3xx=m
|
|||
CONFIG_MTD_NAND_RICOH=m
|
||||
CONFIG_MTD_NAND_TMIO=m
|
||||
CONFIG_MTD_SPI_NOR=m
|
||||
# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set
|
||||
CONFIG_MTD_SPINAND_MT29F=m
|
||||
CONFIG_MTD_SPINAND_ONDIEECC=y
|
||||
CONFIG_MTD_SST25L=m
|
||||
|
@ -550,83 +597,26 @@ CONFIG_MMC_DW_PLTFM=m
|
|||
CONFIG_MMC_DW_PCI=m
|
||||
CONFIG_SPI_DW_MMIO=m
|
||||
CONFIG_SPI_DW_PCI=m
|
||||
# CONFIG_MMC_DW_SOCFPGA is not set
|
||||
# CONFIG_MMC_DW_IDMAC is not set
|
||||
# CONFIG_MMC_DW_K3 is not set
|
||||
CONFIG_USB_DWC2=y
|
||||
CONFIG_USB_DWC2_HOST=m
|
||||
CONFIG_USB_DWC2_PLATFORM=y
|
||||
CONFIG_USB_DWC2_PCI=y
|
||||
# CONFIG_USB_DWC2_PERIPHERAL is not set
|
||||
# CONFIG_MMC_QCOM_DML is not set
|
||||
CONFIG_USB_DWC2=m
|
||||
CONFIG_USB_DWC2_DUAL_ROLE=y
|
||||
CONFIG_USB_DWC2_PLATFORM=m
|
||||
CONFIG_USB_DWC2_PCI=m
|
||||
# CONFIG_USB_DWC2_DEBUG is not set
|
||||
# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set
|
||||
CONFIG_USB_DWC3=m
|
||||
CONFIG_USB_DWC3_OMAP=m
|
||||
CONFIG_USB_DWC3_DUAL_ROLE=y
|
||||
CONFIG_USB_DWC3_PCI=m
|
||||
# CONFIG_USB_DWC3_DEBUG is not set
|
||||
# CONFIG_USB_DWC3_KEYSTONE is not set
|
||||
# CONFIG_DWC3_HOST_USB3_LPM_ENABLE is not set
|
||||
CONFIG_DW_WATCHDOG=m
|
||||
CONFIG_PCIE_DW=y
|
||||
|
||||
# Sound
|
||||
CONFIG_SND_SOC=m
|
||||
CONFIG_SND_SPI=y
|
||||
CONFIG_SND_ARM=y
|
||||
CONFIG_SND_ARMAACI=m
|
||||
CONFIG_SND_COMPRESS_OFFLOAD=m
|
||||
CONFIG_SND_DESIGNWARE_I2S=m
|
||||
CONFIG_SND_DMAENGINE_PCM=m
|
||||
CONFIG_SND_JACK=y
|
||||
CONFIG_SND_SIMPLE_CARD=m
|
||||
CONFIG_SND_SOC_ALL_CODECS=m
|
||||
CONFIG_SND_SOC_CACHE_LZO=y
|
||||
CONFIG_SND_SOC_DMIC=m
|
||||
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
|
||||
CONFIG_SND_SOC_HDMI_CODEC=m
|
||||
CONFIG_SND_SOC_SPDIF=m
|
||||
# CONFIG_SND_SOC_ADAU1701 is not set
|
||||
# CONFIG_SND_SOC_AK4104 is not set
|
||||
# CONFIG_SND_SOC_AK4554 is not set
|
||||
# CONFIG_SND_SOC_AK4642 is not set
|
||||
# CONFIG_SND_SOC_AK5386 is not set
|
||||
# CONFIG_SND_SOC_CS42L52 is not set
|
||||
# CONFIG_SND_SOC_CS42L73 is not set
|
||||
# CONFIG_SND_SOC_CS4270 is not set
|
||||
# CONFIG_SND_SOC_CS4271 is not set
|
||||
# CONFIG_SND_SOC_CS42XX8_I2C is not set
|
||||
# CONFIG_SND_SOC_PCM1681 is not set
|
||||
# CONFIG_SND_SOC_PCM1792A is not set
|
||||
# CONFIG_SND_SOC_PCM512x_I2C is not set
|
||||
# CONFIG_SND_SOC_PCM512x_SPI is not set
|
||||
# CONFIG_SND_SOC_SGTL5000 is not set
|
||||
# CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set
|
||||
# CONFIG_SND_SOC_TAS5086 is not set
|
||||
# CONFIG_SND_SOC_TLV320AIC3X is not set
|
||||
# CONFIG_SND_SOC_WM8510 is not set
|
||||
# CONFIG_SND_SOC_WM8523 is not set
|
||||
# CONFIG_SND_SOC_WM8580 is not set
|
||||
# CONFIG_SND_SOC_WM8711 is not set
|
||||
# CONFIG_SND_SOC_WM8728 is not set
|
||||
# CONFIG_SND_SOC_WM8731 is not set
|
||||
# CONFIG_SND_SOC_WM8737 is not set
|
||||
# CONFIG_SND_SOC_WM8741 is not set
|
||||
# CONFIG_SND_SOC_WM8750 is not set
|
||||
# CONFIG_SND_SOC_WM8753 is not set
|
||||
# CONFIG_SND_SOC_WM8770 is not set
|
||||
# CONFIG_SND_SOC_WM8776 is not set
|
||||
# CONFIG_SND_SOC_WM8804 is not set
|
||||
# CONFIG_SND_SOC_WM8903 is not set
|
||||
# CONFIG_SND_SOC_WM8962 is not set
|
||||
# CONFIG_SND_SOC_TPA6130A2 is not set
|
||||
# CONFIG_SND_SOC_FSL_SAI is not set
|
||||
# CONFIG_SND_SOC_FSL_SSI is not set
|
||||
# CONFIG_SND_SOC_FSL_SPDIF is not set
|
||||
# CONFIG_SND_SOC_FSL_ESAI is not set
|
||||
# CONFIG_SND_SOC_IMX_AUDMUX is not set
|
||||
# CONFIG_SND_SOC_ALC5623 is not set
|
||||
# CONFIG_SND_SOC_CS42L56 is not set
|
||||
# CONFIG_SND_SOC_STA350 is not set
|
||||
# CONFIG_SND_ATMEL_SOC is not set
|
||||
CONFIG_SND_SOC_AC97_BUS=y
|
||||
|
||||
# Displays
|
||||
CONFIG_BACKLIGHT_TPS65217=m
|
||||
|
@ -652,7 +642,6 @@ CONFIG_RTC_DRV_TPS80031=m
|
|||
# Regulators
|
||||
CONFIG_REGULATOR=y
|
||||
CONFIG_RFKILL_REGULATOR=m
|
||||
CONFIG_REGULATOR_DUMMY=y
|
||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||
CONFIG_REGULATOR_VIRTUAL_CONSUMER=m
|
||||
CONFIG_REGULATOR_USERSPACE_CONSUMER=m
|
||||
|
@ -685,7 +674,13 @@ CONFIG_REGULATOR_TPS65912=m
|
|||
CONFIG_REGULATOR_TPS80031=m
|
||||
CONFIG_REGULATOR_LTC3589=m
|
||||
CONFIG_REGULATOR_ANATOP=m
|
||||
CONFIG_REGULATOR_DA9211=m
|
||||
CONFIG_REGULATOR_ISL9305=m
|
||||
CONFIG_REGULATOR_MAX77802=m
|
||||
CONFIG_REGULATOR_PWM=m
|
||||
CONFIG_SENSORS_LTC2978_REGULATOR=y
|
||||
|
||||
CONFIG_POWER_AVS=y
|
||||
CONFIG_CHARGER_MANAGER=y
|
||||
CONFIG_CHARGER_BQ2415X=m
|
||||
CONFIG_CHARGER_BQ24190=m
|
||||
|
@ -694,6 +689,7 @@ CONFIG_CHARGER_GPIO=m
|
|||
CONFIG_CHARGER_TPS65090=m
|
||||
CONFIG_PDA_POWER=m
|
||||
CONFIG_GENERIC_ADC_BATTERY=m
|
||||
CONFIG_BATTERY_SBS=m
|
||||
|
||||
# Sensors
|
||||
CONFIG_TMP006=m
|
||||
|
@ -705,6 +701,8 @@ CONFIG_SENSORS_ADCXX=m
|
|||
CONFIG_SENSORS_ADS7871=m
|
||||
CONFIG_SENSORS_GPIO_FAN=m
|
||||
CONFIG_SENSORS_HTU21=m
|
||||
CONFIG_SENSORS_ISL29018=m
|
||||
CONFIG_SENSORS_ISL29028=m
|
||||
CONFIG_SENSORS_LIS3_SPI=m
|
||||
CONFIG_SENSORS_LM70=m
|
||||
CONFIG_SENSORS_MAX1111=m
|
||||
|
@ -726,17 +724,23 @@ CONFIG_LCD_HX8357=m
|
|||
CONFIG_INPUT_GP2A=m
|
||||
CONFIG_INPUT_ARIZONA_HAPTICS=m
|
||||
CONFIG_INPUT_MC13783_PWRBUTTON=m
|
||||
# CONFIG_INPUT_SOC_BUTTON_ARRAY is not set
|
||||
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
||||
|
||||
CONFIG_TOUCHSCREEN_ADS7846=m
|
||||
CONFIG_TOUCHSCREEN_AD7877=m
|
||||
CONFIG_TOUCHSCREEN_MC13783=m
|
||||
CONFIG_TOUCHSCREEN_TSC2005=m
|
||||
|
||||
CONFIG_LEDS_TRIGGER_CPU=y
|
||||
CONFIG_LEDS_DAC124S085=m
|
||||
CONFIG_LEDS_PWM=m
|
||||
CONFIG_LEDS_SYSCON=y
|
||||
CONFIG_BMP085_SPI=m
|
||||
|
||||
CONFIG_MFD_SYSCON=y
|
||||
CONFIG_GPIO_SYSCON=m
|
||||
CONFIG_POWER_RESET_SYSCON=y
|
||||
|
||||
CONFIG_SRAM=y
|
||||
|
||||
# Ethernet
|
||||
|
@ -771,7 +775,6 @@ CONFIG_UBIFS_FS=m
|
|||
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
|
||||
CONFIG_UBIFS_FS_LZO=y
|
||||
CONFIG_UBIFS_FS_ZLIB=y
|
||||
# CONFIG_UBIFS_FS_DEBUG is not set
|
||||
|
||||
# Sensors
|
||||
CONFIG_SENSORS_HTU21=m
|
||||
|
@ -782,9 +785,7 @@ CONFIG_MFD_CROS_EC_I2C=m
|
|||
CONFIG_MFD_CROS_EC_SPI=m
|
||||
CONFIG_KEYBOARD_CROS_EC=m
|
||||
CONFIG_I2C_CROS_EC_TUNNEL=m
|
||||
|
||||
# Should be in generic
|
||||
CONFIG_BPF_JIT=y
|
||||
CONFIG_SND_SOC_TS3A227E=m
|
||||
|
||||
# Needs work/investigation
|
||||
# CONFIG_ARM_KPROBES_TEST is not set
|
||||
|
@ -792,6 +793,7 @@ CONFIG_BPF_JIT=y
|
|||
# HW Enabled in armv7 not lpae
|
||||
# CONFIG_DRM_TILCDC is not set
|
||||
# CONFIG_DRM_IMX is not set
|
||||
# CONFIG_DRM_STI is not set
|
||||
# CONFIG_AHCI_IMX is not set
|
||||
# CONFIG_IMX_THERMAL is not set
|
||||
# CONFIG_TI_DAC7512 is not set
|
||||
|
@ -805,7 +807,6 @@ CONFIG_BPF_JIT=y
|
|||
# CONFIG_EZX_PCAP is not set
|
||||
# CONFIG_CS89x0 is not set
|
||||
# CONFIG_DM9000 is not set
|
||||
# CONFIG_HW_RANDOM_ATMEL is not set
|
||||
# CONFIG_MTD_AFS_PARTS is not set
|
||||
# CONFIG_SPI_PXA2XX is not set
|
||||
# CONFIG_DEPRECATED_PARAM_STRUCT is not set
|
||||
|
@ -814,6 +815,7 @@ CONFIG_BPF_JIT=y
|
|||
# CONFIG_SERIAL_MAX3100 is not set
|
||||
# CONFIG_SERIAL_MAX310X is not set
|
||||
# CONFIG_SERIAL_IFX6X60 is not set
|
||||
# CONFIG_SERIAL_BCM63XX is not set
|
||||
# CONFIG_FB_XILINX is not set
|
||||
# CONFIG_BRCMSTB_GISB_ARB is not set
|
||||
# CONFIG_SUNGEM is not set
|
||||
|
@ -828,6 +830,7 @@ CONFIG_BPF_JIT=y
|
|||
# CONFIG_MMC_TMIO is not set
|
||||
# CONFIG_PINCTRL_IMX35 is not set
|
||||
# CONFIG_DVB_USB_PCTV452E is not set
|
||||
# CONFIG_DWMAC_SOCFPGA is not set
|
||||
|
||||
# CONFIG_MFD_LP8788 is not set
|
||||
# CONFIG_MFD_MAX77693 is not set
|
||||
|
@ -848,3 +851,4 @@ CONFIG_BPF_JIT=y
|
|||
# CONFIG_OMAP2_DSS_DEBUG is not set
|
||||
# CONFIG_CRYPTO_DEV_UX500_DEBUG is not set
|
||||
# CONFIG_AB8500_DEBUG is not set
|
||||
# CONFIG_ARM_KERNMEM_PERMS is not set
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
# ARM A15 lpae unified arch kernel
|
||||
CONFIG_ARCH_KEYSTONE=y
|
||||
CONFIG_ARCH_VIRT=y
|
||||
|
||||
# CONFIG_ARCH_MVEBU is not set
|
||||
# CONFIG_ARCH_MXC is not set
|
||||
|
@ -10,8 +9,6 @@ CONFIG_ARCH_VIRT=y
|
|||
# CONFIG_SOC_AM33XX is not set
|
||||
# CONFIG_SOC_AM43XX is not set
|
||||
# CONFIG_SOC_DRA7XX is not set
|
||||
# CONFIG_ARCH_ROCKCHIP is not set
|
||||
# CONFIG_ARCH_SOCFPGA is not set
|
||||
# CONFIG_ARCH_ZYNQ is not set
|
||||
# CONFIG_ARCH_AXXIA is not set
|
||||
|
||||
|
@ -62,7 +59,11 @@ CONFIG_TI_AEMIF=m
|
|||
CONFIG_POWER_RESET_KEYSTONE=y
|
||||
CONFIG_DAVINCI_WATCHDOG=m
|
||||
CONFIG_SPI_DAVINCI=m
|
||||
# CONFIG_TI_SOC_THERMAL is not set
|
||||
CONFIG_TI_DAVINCI_MDIO=m
|
||||
CONFIG_KEYSTONE_IRQ=m
|
||||
CONFIG_PCI_KEYSTONE=y
|
||||
CONFIG_MTD_NAND_DAVINCI=m
|
||||
CONFIG_GPIO_SYSCON=m
|
||||
|
||||
# Tegra (non A15 device options)
|
||||
# CONFIG_ARCH_TEGRA_2x_SOC is not set
|
||||
|
|
10
config-debug
10
config-debug
|
@ -31,14 +31,14 @@ CONFIG_LOCK_STAT=y
|
|||
CONFIG_DEBUG_STACK_USAGE=y
|
||||
|
||||
CONFIG_ACPI_DEBUG=y
|
||||
# CONFIG_ACPI_DEBUG_FUNC_TRACE is not set
|
||||
|
||||
CONFIG_DEBUG_SG=y
|
||||
CONFIG_DEBUG_PI_LIST=y
|
||||
|
||||
# CONFIG_PAGE_EXTENSION is not set
|
||||
# CONFIG_PAGE_OWNER is not set
|
||||
# CONFIG_DEBUG_PAGEALLOC is not set
|
||||
|
||||
CONFIG_DEBUG_WRITECOUNT=y
|
||||
CONFIG_DEBUG_OBJECTS=y
|
||||
# CONFIG_DEBUG_OBJECTS_SELFTEST is not set
|
||||
CONFIG_DEBUG_OBJECTS_FREE=y
|
||||
|
@ -47,13 +47,13 @@ CONFIG_DEBUG_OBJECTS_RCU_HEAD=y
|
|||
CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1
|
||||
|
||||
CONFIG_X86_PTDUMP=y
|
||||
CONFIG_ARM64_PTDUMP=y
|
||||
CONFIG_EFI_PGT_DUMP=y
|
||||
|
||||
CONFIG_CAN_DEBUG_DEVICES=y
|
||||
|
||||
CONFIG_MODULE_FORCE_UNLOAD=y
|
||||
|
||||
CONFIG_SYSCTL_SYSCALL_CHECK=y
|
||||
|
||||
CONFIG_DEBUG_NOTIFIERS=y
|
||||
|
||||
|
@ -97,10 +97,10 @@ CONFIG_PM_ADVANCED_DEBUG=y
|
|||
CONFIG_CEPH_LIB_PRETTYDEBUG=y
|
||||
CONFIG_QUOTA_DEBUG=y
|
||||
|
||||
CONFIG_PCI_DEFAULT_USE_CRS=y
|
||||
|
||||
CONFIG_KGDB_KDB=y
|
||||
CONFIG_KDB_KEYBOARD=y
|
||||
CONFIG_KDB_DEFAULT_ENABLE=0x1
|
||||
CONFIG_KDB_CONTINUE_CATASTROPHIC=0
|
||||
|
||||
CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y
|
||||
|
@ -123,6 +123,8 @@ CONFIG_MAC80211_MESSAGE_TRACING=y
|
|||
|
||||
CONFIG_EDAC_DEBUG=y
|
||||
|
||||
CONFIG_SPI_DEBUG=y
|
||||
|
||||
CONFIG_X86_DEBUG_STATIC_CPU_HAS=y
|
||||
CONFIG_LATENCYTOP=y
|
||||
CONFIG_SCHEDSTATS=y
|
||||
|
|
650
config-generic
650
config-generic
File diff suppressed because it is too large
Load Diff
|
@ -1,6 +1,5 @@
|
|||
# CONFIG_HIGHMEM4G is not set
|
||||
CONFIG_HIGHMEM64G=y
|
||||
# CONFIG_OLPC_OPENFIRMWARE is not set
|
||||
|
||||
CONFIG_XEN_DEV_EVTCHN=m
|
||||
CONFIG_XEN_SYS_HYPERVISOR=y
|
||||
|
|
|
@ -31,14 +31,14 @@ CONFIG_CPUMASK_OFFSTACK=y
|
|||
# CONFIG_DEBUG_STACK_USAGE is not set
|
||||
|
||||
# CONFIG_ACPI_DEBUG is not set
|
||||
# CONFIG_ACPI_DEBUG_FUNC_TRACE is not set
|
||||
|
||||
# CONFIG_DEBUG_SG is not set
|
||||
# CONFIG_DEBUG_PI_LIST is not set
|
||||
|
||||
# CONFIG_PAGE_EXTENSION is not set
|
||||
# CONFIG_PAGE_OWNER is not set
|
||||
# CONFIG_DEBUG_PAGEALLOC is not set
|
||||
|
||||
# CONFIG_DEBUG_WRITECOUNT is not set
|
||||
# CONFIG_DEBUG_OBJECTS is not set
|
||||
# CONFIG_DEBUG_OBJECTS_SELFTEST is not set
|
||||
# CONFIG_DEBUG_OBJECTS_FREE is not set
|
||||
|
@ -46,14 +46,14 @@ CONFIG_CPUMASK_OFFSTACK=y
|
|||
# CONFIG_DEBUG_OBJECTS_RCU_HEAD is not set
|
||||
CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1
|
||||
|
||||
# CONFIG_X86_PTDUMP is not set
|
||||
CONFIG_X86_PTDUMP=y
|
||||
# CONFIG_ARM64_PTDUMP is not set
|
||||
# CONFIG_EFI_PGT_DUMP is not set
|
||||
|
||||
# CONFIG_CAN_DEBUG_DEVICES is not set
|
||||
|
||||
# CONFIG_MODULE_FORCE_UNLOAD is not set
|
||||
|
||||
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
|
||||
|
||||
# CONFIG_DEBUG_NOTIFIERS is not set
|
||||
|
||||
|
@ -97,9 +97,9 @@ CONFIG_PM_ADVANCED_DEBUG=y
|
|||
# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
|
||||
# CONFIG_QUOTA_DEBUG is not set
|
||||
|
||||
CONFIG_PCI_DEFAULT_USE_CRS=y
|
||||
|
||||
CONFIG_KGDB_KDB=y
|
||||
CONFIG_KDB_DEFAULT_ENABLE=0x0
|
||||
CONFIG_KDB_KEYBOARD=y
|
||||
CONFIG_KDB_CONTINUE_CATASTROPHIC=0
|
||||
|
||||
|
|
|
@ -14,7 +14,6 @@ CONFIG_TAU_AVERAGE=y
|
|||
# CONFIG_GEN_RTC is not set
|
||||
# CONFIG_GEN_RTC_X is not set
|
||||
CONFIG_RTC_DRV_GENERIC=y
|
||||
CONFIG_PROC_DEVICETREE=y
|
||||
# CONFIG_CMDLINE_BOOL is not set
|
||||
|
||||
CONFIG_ADB=y
|
||||
|
@ -50,6 +49,7 @@ CONFIG_SND_AOA_ONYX=m
|
|||
CONFIG_SND_AOA_TAS=m
|
||||
CONFIG_SND_AOA_TOONIE=m
|
||||
CONFIG_SND_AOA_SOUNDBUS_I2S=m
|
||||
# CONFIG_SND_SOC is not set
|
||||
|
||||
CONFIG_XMON=y
|
||||
# CONFIG_XMON_DEFAULT is not set
|
||||
|
@ -61,21 +61,17 @@ CONFIG_CAPI_EICON=y
|
|||
|
||||
CONFIG_NVRAM=y
|
||||
|
||||
# CONFIG_PCMCIA_M8XX is not set
|
||||
# CONFIG_SCSI_AHA1542 is not set
|
||||
# CONFIG_SCSI_IN2000 is not set
|
||||
# CONFIG_SCSI_IPS is not set
|
||||
# CONFIG_NI52 is not set
|
||||
# CONFIG_NI65 is not set
|
||||
# CONFIG_LANCE is not set
|
||||
# CONFIG_3C515 is not set
|
||||
# CONFIG_ELPLUS is not set
|
||||
|
||||
CONFIG_MEMORY_HOTPLUG=y
|
||||
|
||||
# Stuff which wants bus_to_virt() or virt_to_bus()
|
||||
# CONFIG_BLK_CPQ_DA is not set
|
||||
# CONFIG_VIDEO_STRADIS is not set
|
||||
# CONFIG_VIDEO_ZORAN is not set
|
||||
# CONFIG_ATM_HORIZON is not set
|
||||
# CONFIG_ATM_FIRESTREAM is not set
|
||||
|
@ -97,7 +93,6 @@ CONFIG_PPC_MEDIA5200=y
|
|||
# CONFIG_PPC_LITE5200 is not set
|
||||
CONFIG_PPC_BESTCOMM=y
|
||||
CONFIG_PMAC_RACKMETER=m
|
||||
CONFIG_USB_OHCI_HCD_PPC_SOC=y
|
||||
CONFIG_USB_OHCI_HCD_PCI=y
|
||||
CONFIG_USB_OHCI_HCD_PPC_OF=y
|
||||
CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
|
||||
|
@ -186,7 +181,6 @@ CONFIG_PATA_OF_PLATFORM=m
|
|||
CONFIG_USB_EHCI_HCD_PPC_OF=y
|
||||
|
||||
# CONFIG_MPC5121_ADS is not set
|
||||
# CONFIG_MPC5121_GENERIC is not set
|
||||
CONFIG_MTD_OF_PARTS=y
|
||||
# CONFIG_MTD_NAND_FSL_ELBC is not set
|
||||
CONFIG_THERMAL=y
|
||||
|
@ -227,7 +221,6 @@ CONFIG_NET_VENDOR_IBM=y
|
|||
|
||||
# CONFIG_QUICC_ENGINE is not set
|
||||
# CONFIG_QE_GPIO is not set
|
||||
# CONFIG_MPC8xxx_GPIO is not set
|
||||
|
||||
CONFIG_IDE_GD=y
|
||||
CONFIG_IDE_GD_ATA=y
|
||||
|
@ -278,7 +271,6 @@ CONFIG_MMC_SDHCI_OF=m
|
|||
|
||||
# CONFIG_CONSISTENT_SIZE_BOOL is not set
|
||||
|
||||
CONFIG_CAN_SJA1000_OF_PLATFORM=m
|
||||
|
||||
CONFIG_PPC_EMULATED_STATS=y
|
||||
|
||||
|
@ -292,7 +284,6 @@ CONFIG_PPC_DISABLE_WERROR=y
|
|||
# CONFIG_XILINX_EMACLITE is not set
|
||||
|
||||
CONFIG_GPIO_WM831X=m
|
||||
# CONFIG_GPIO_LANGWELL is not set
|
||||
# CONFIG_GPIO_UCB1400 is not set
|
||||
# CONFIG_EDAC_MPC85XX is not set
|
||||
|
||||
|
@ -305,7 +296,6 @@ CONFIG_SPARSE_IRQ=y
|
|||
CONFIG_PATA_MACIO=y
|
||||
CONFIG_SERIAL_GRLIB_GAISLER_APBUART=m
|
||||
# CONFIG_PMIC_ADP5520 is not set
|
||||
# CONFIG_MFD_88PM8607 is not set
|
||||
# CONFIG_MFD_MAX8997 is not set
|
||||
# CONFIG_MFD_TPS65910 is not set
|
||||
# CONFIG_MFD_TPS65912_I2C is not set
|
||||
|
@ -314,14 +304,13 @@ CONFIG_SERIAL_GRLIB_GAISLER_APBUART=m
|
|||
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
|
||||
# CONFIG_MMC_SDHCI_OF_HLWD is not set
|
||||
|
||||
# CONFIG_MFD_TC35892 is not set
|
||||
# CONFIG_MFD_AAT2870_CORE is not set
|
||||
|
||||
# CONFIG_GPIO_SCH is not set
|
||||
# CONFIG_GPIO_74XX_MMIO is not set
|
||||
|
||||
# CONFIG_PPC_MPC512x is not set
|
||||
# CONFIG_RTC_DRV_MPC5121 is not set
|
||||
# CONFIG_RTC_DRV_HYM8563 is not set
|
||||
|
||||
# CONFIG_MPC512X_DMA is not set
|
||||
|
||||
|
@ -335,8 +324,6 @@ CONFIG_I2C_MPC=m
|
|||
# CONFIG_CRYPTO_DEV_FSL_CAAM is not set
|
||||
# CONFIG_CRYPTO_SHA1_PPC is not set
|
||||
|
||||
# CONFIG_GPIO_MCP23S08 is not set
|
||||
|
||||
# CONFIG_CAN_FLEXCAN is not set
|
||||
# CONFIG_NET_VENDOR_XILINX is not set
|
||||
# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set
|
||||
|
@ -345,6 +332,7 @@ CONFIG_I2C_MPC=m
|
|||
# CONFIG_NET_VENDOR_TOSHIBA is not set
|
||||
|
||||
# CONFIG_CPU_IDLE is not set
|
||||
# CONFIG_OF_UNITTEST is not set
|
||||
# CONFIG_OF_SELFTEST is not set
|
||||
# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
|
||||
# CONFIG_INPUT_GP2A is not set
|
||||
|
@ -363,18 +351,14 @@ CONFIG_RCU_FANOUT_LEAF=16
|
|||
|
||||
CONFIG_PPC_DENORMALISATION=y
|
||||
# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
|
||||
# CONFIG_GPIO_ADNP is not set
|
||||
# CONFIG_MFD_SYSCON is not set
|
||||
# CONFIG_RTC_DRV_SNVS is not set
|
||||
# CONFIG_ASYMMETRIC_KEY_TYPE is not set
|
||||
|
||||
# CONFIG_OF_DISPLAY_TIMING is not set
|
||||
# CONFIG_OF_VIDEOMODE is not set
|
||||
|
||||
# CONFIG_POWERNV_MSI is not set
|
||||
# CONFIG_CPU_LITTLE_ENDIAN is not set
|
||||
|
||||
CONFIG_POWER_RESET_GPIO=y
|
||||
CONFIG_POWER_RESET_GPIO_RESTART=y
|
||||
CONFIG_FB_SSD1307=m
|
||||
CONFIG_INPUT_PWM_BEEPER=m
|
||||
CONFIG_BACKLIGHT_PWM=m
|
||||
|
|
|
@ -1,180 +0,0 @@
|
|||
# CONFIG_SMP is not set
|
||||
CONFIG_PPC32=y
|
||||
# CONFIG_PPC64 is not set
|
||||
# CONFIG_RTAS_PROC is not set
|
||||
# CONFIG_PCMCIA_M8XX is not set
|
||||
# CONFIG_HOTPLUG_PCI is not set
|
||||
CONFIG_CPU_FREQ_PMAC=y
|
||||
CONFIG_PPC_CHRP=y
|
||||
CONFIG_PPC_PMAC=y
|
||||
# CONFIG_PPC_MPC52xx is not set
|
||||
CONFIG_PPC_PREP=y
|
||||
|
||||
# CONFIG_PPC_MPC5200_SIMPLE is not set
|
||||
# CONFIG_SATA_FSL is not set
|
||||
# CONFIG_SATA_NV is not set
|
||||
|
||||
# busted in .28git1
|
||||
# ERROR: "cacheable_memzero" [drivers/net/gianfar_driver.ko] undefined!
|
||||
# CONFIG_GIANFAR is not set
|
||||
# CONFIG_USB_EHCI_FSL is not set
|
||||
|
||||
CONFIG_PMAC_APM_EMU=y
|
||||
CONFIG_PMAC_BACKLIGHT=y
|
||||
|
||||
CONFIG_HIGHMEM=y
|
||||
# CONFIG_HIGHMEM_START_BOOL is not set
|
||||
# CONFIG_LOWMEM_SIZE_BOOL is not set
|
||||
# CONFIG_TASK_SIZE_BOOL is not set
|
||||
# CONFIG_KERNEL_START_BOOL is not set
|
||||
# CONFIG_PPC601_SYNC_FIX is not set
|
||||
CONFIG_ADVANCED_OPTIONS=y
|
||||
CONFIG_SCSI_MESH=m
|
||||
CONFIG_SCSI_MESH_SYNC_RATE=5
|
||||
CONFIG_SCSI_MESH_RESET_DELAY_MS=4000
|
||||
|
||||
CONFIG_LBDAF=y
|
||||
|
||||
CONFIG_SCSI_MAC53C94=m
|
||||
CONFIG_ADB_CUDA=y
|
||||
CONFIG_ADB_MACIO=y
|
||||
CONFIG_INPUT_ADBHID=y
|
||||
CONFIG_ADB_PMU_LED=y
|
||||
CONFIG_ADB_PMU_LED_IDE=y
|
||||
|
||||
CONFIG_PMAC_MEDIABAY=y
|
||||
CONFIG_NET_VENDOR_APPLE=y
|
||||
CONFIG_BMAC=m
|
||||
CONFIG_MACE=m
|
||||
# CONFIG_MACE_AAUI_PORT is not set
|
||||
# CONFIG_MV643XX_ETH is not set
|
||||
CONFIG_I2C_HYDRA=m
|
||||
CONFIG_I2C_MPC=m
|
||||
CONFIG_THERM_WINDTUNNEL=m
|
||||
CONFIG_THERM_ADT746X=m
|
||||
# CONFIG_ANSLCD is not set
|
||||
|
||||
CONFIG_FB_PLATINUM=y
|
||||
CONFIG_FB_VALKYRIE=y
|
||||
CONFIG_FB_CT65550=y
|
||||
# CONFIG_BDI_SWITCH is not set
|
||||
|
||||
CONFIG_MAC_FLOPPY=m
|
||||
# CONFIG_BLK_DEV_FD is not set
|
||||
|
||||
CONFIG_FB_ATY128=y
|
||||
CONFIG_FB_ATY=y
|
||||
CONFIG_FB_MATROX=y
|
||||
# CONFIG_KEXEC is not set
|
||||
|
||||
# CONFIG_HVC_RTAS is not set
|
||||
|
||||
# CONFIG_UDBG_RTAS_CONSOLE is not set
|
||||
CONFIG_BRIQ_PANEL=m
|
||||
|
||||
# CONFIG_ATA_PIIX is not set
|
||||
# CONFIG_PATA_AMD is not set
|
||||
# CONFIG_PATA_ATIIXP is not set
|
||||
# CONFIG_PATA_MPC52xx is not set
|
||||
# CONFIG_PATA_MPIIX is not set
|
||||
# CONFIG_PATA_OLDPIIX is not set
|
||||
# CONFIG_PATA_OPTI is not set
|
||||
# CONFIG_PATA_SERVERWORKS is not set
|
||||
|
||||
# CONFIG_SERIAL_MPC52xx is not set
|
||||
# CONFIG_MPC5200_WDT is not set
|
||||
CONFIG_8xxx_WDT=m
|
||||
CONFIG_GEF_WDT=m
|
||||
|
||||
# CONFIG_PPC_MPC5200_BUGFIX is not set
|
||||
# CONFIG_NET_VENDOR_FREESCALE is not set
|
||||
#CHECK: This may later become a tristate.
|
||||
CONFIG_MDIO_GPIO=m
|
||||
|
||||
CONFIG_SERIAL_OF_PLATFORM=y
|
||||
CONFIG_DEBUG_STACKOVERFLOW=y
|
||||
|
||||
# CONFIG_EMBEDDED6xx is not set
|
||||
|
||||
# CONFIG_BLK_DEV_PLATFORM is not set
|
||||
# CONFIG_BLK_DEV_4DRIVES is not set
|
||||
# CONFIG_BLK_DEV_ALI14XX is not set
|
||||
# CONFIG_BLK_DEV_DTC2278 is not set
|
||||
# CONFIG_BLK_DEV_HT6560B is not set
|
||||
# CONFIG_BLK_DEV_QD65XX is not set
|
||||
# CONFIG_BLK_DEV_UMC8672 is not set
|
||||
|
||||
# CONFIG_VIRQ_DEBUG is not set
|
||||
|
||||
CONFIG_PPC_BESTCOMM_ATA=m
|
||||
CONFIG_PPC_BESTCOMM_FEC=m
|
||||
CONFIG_PPC_BESTCOMM_GEN_BD=m
|
||||
|
||||
CONFIG_FORCE_MAX_ZONEORDER=11
|
||||
# CONFIG_PAGE_OFFSET_BOOL is not set
|
||||
# CONFIG_FB_FSL_DIU is not set
|
||||
CONFIG_IRQSTACKS=y
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
|
||||
# CONFIG_DEBUG_GPIO is not set
|
||||
# CONFIG_GPIO_PCA953X is not set
|
||||
# CONFIG_GPIO_PCF857X is not set
|
||||
# CONFIG_HTC_EGPIO is not set
|
||||
|
||||
# CONFIG_TIFM_CORE is not set
|
||||
|
||||
# CONFIG_BLK_CPQ_CISS_DA is not set
|
||||
# CONFIG_CISS_SCSI_TAPE is not set
|
||||
|
||||
# CONFIG_I2C_NFORCE2 is not set
|
||||
|
||||
# CONFIG_SND_INTEL8X0 is not set
|
||||
# CONFIG_SND_INTEL8X0M is not set
|
||||
|
||||
# CONFIG_MEMSTICK is not set
|
||||
|
||||
# CONFIG_IPMI_HANDLER is not set
|
||||
|
||||
# PPC gets sad with debug alloc (bz 448598)
|
||||
# CONFIG_DEBUG_PAGEALLOC is not set
|
||||
|
||||
CONFIG_CRYPTO_DEV_TALITOS=m
|
||||
|
||||
# CONFIG_FSL_EMB_PERFMON is not set
|
||||
# CONFIG_MPC8272_ADS is not set
|
||||
# CONFIG_PQ2FADS is not set
|
||||
# CONFIG_EP8248E is not set
|
||||
# CONFIG_MPC830x_RDB is not set
|
||||
# CONFIG_MPC831x_RDB is not set
|
||||
# CONFIG_MPC832x_MDS is not set
|
||||
# CONFIG_MPC832x_RDB is not set
|
||||
# CONFIG_MPC834x_MDS is not set
|
||||
# CONFIG_MPC834x_ITX is not set
|
||||
# CONFIG_MPC836x_MDS is not set
|
||||
# CONFIG_MPC836x_RDK is not set
|
||||
# CONFIG_MPC837x_MDS is not set
|
||||
# CONFIG_MPC837x_RDB is not set
|
||||
# CONFIG_SBC834x is not set
|
||||
# CONFIG_ASP834x is not set
|
||||
# CONFIG_KMETER1 is not set
|
||||
# CONFIG_MPC8641_HPCN is not set
|
||||
# CONFIG_SBC8641D is not set
|
||||
# CONFIG_MPC8610_HPCD is not set
|
||||
# CONFIG_FSL_LBC is not set
|
||||
# CONFIG_MTD_NAND_FSL_UPM is not set
|
||||
|
||||
# CONFIG_USB_MUSB_HDRC is not set
|
||||
|
||||
# busted in 2.6.27
|
||||
# drivers/mtd/maps/sbc8240.c: In function 'init_sbc8240_mtd':
|
||||
# drivers/mtd/maps/sbc8240.c:172: warning: passing argument 1 of 'simple_map_init' from incompatible pointer type
|
||||
# drivers/mtd/maps/sbc8240.c:177: error: 'struct mtd_info' has no member named 'module'
|
||||
|
||||
CONFIG_RCU_FANOUT=32
|
||||
|
||||
CONFIG_KVM_BOOK3S_32=m
|
||||
|
||||
# CONFIG_SCSI_QLA_ISCSI is not set
|
||||
|
||||
CONFIG_BATTERY_PMU=m
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
# CONFIG_HOTPLUG_CPU is not set
|
||||
CONFIG_NR_CPUS=4
|
||||
# CONFIG_BATTERY_PMU is not set
|
|
@ -8,15 +8,14 @@ CONFIG_PPC_PMAC64=y
|
|||
CONFIG_PPC_MAPLE=y
|
||||
# CONFIG_PPC_CELL is not set
|
||||
# CONFIG_PPC_IBM_CELL_BLADE is not set
|
||||
# CONFIG_PPC_ISERIES is not set
|
||||
CONFIG_PPC_PSERIES=y
|
||||
CONFIG_PPC_PMAC=y
|
||||
CONFIG_PPC_POWERNV=y
|
||||
CONFIG_POWERNV_MSI=y
|
||||
CONFIG_PPC_POWERNV_RTAS=y
|
||||
CONFIG_SENSORS_IBMPOWERNV=y
|
||||
CONFIG_HW_RANDOM_POWERNV=m
|
||||
CONFIG_POWERNV_CPUFREQ=m
|
||||
CONFIG_IPMI_POWERNV=m
|
||||
CONFIG_SCOM_DEBUGFS=y
|
||||
# CONFIG_PPC_PASEMI is not set
|
||||
# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set
|
||||
|
@ -51,15 +50,10 @@ CONFIG_SCSI_IPR=m
|
|||
CONFIG_SCSI_IPR_TRACE=y
|
||||
CONFIG_SCSI_IPR_DUMP=y
|
||||
CONFIG_HVC_RTAS=y
|
||||
# CONFIG_HVC_ISERIES is not set
|
||||
CONFIG_HVC_OPAL=y
|
||||
|
||||
# iSeries device drivers
|
||||
#
|
||||
# CONFIG_ISERIES_VETH is not set
|
||||
CONFIG_VIODASD=m
|
||||
CONFIG_VIOCD=m
|
||||
CONFIG_VIOTAPE=m
|
||||
|
||||
CONFIG_PASEMI_MAC=m
|
||||
CONFIG_SERIAL_OF_PLATFORM=m
|
||||
|
@ -86,10 +80,8 @@ CONFIG_NR_CPUS=1024
|
|||
# CONFIG_FB_ATY128 is not set
|
||||
# CONFIG_FB_ATY is not set
|
||||
|
||||
# CONFIG_POWER4_ONLY is not set
|
||||
|
||||
CONFIG_RTAS_PROC=y
|
||||
CONFIG_IOMMU_VMERGE=y
|
||||
CONFIG_NUMA=y
|
||||
CONFIG_NUMA_BALANCING=y
|
||||
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
|
||||
|
@ -119,17 +111,14 @@ CONFIG_INFINIBAND_EHCA=m
|
|||
|
||||
CONFIG_XMON_DISASSEMBLY=y
|
||||
|
||||
CONFIG_SCSI_IBMVSCSIS=m
|
||||
|
||||
# CONFIG_TUNE_CELL is not set
|
||||
# CONFIG_BLK_DEV_PLATFORM is not set
|
||||
|
||||
# CONFIG_VIRQ_DEBUG is not set
|
||||
|
||||
CONFIG_EDAC_CPC925=m
|
||||
CONFIG_FRAME_WARN=2048
|
||||
|
||||
CONFIG_PHYP_DUMP=y
|
||||
CONFIG_FORCE_MAX_ZONEORDER=9
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
|
||||
|
@ -140,12 +129,14 @@ CONFIG_SCSI_IBMVFC=m
|
|||
CONFIG_IBM_BSR=m
|
||||
|
||||
CONFIG_CRASH_DUMP=y
|
||||
CONFIG_FA_DUMP=y
|
||||
CONFIG_RELOCATABLE=y
|
||||
|
||||
CONFIG_RCU_FANOUT=64
|
||||
|
||||
CONFIG_CMA=y
|
||||
# CONFIG_CMA_DEBUG is not set
|
||||
CONFIG_CMA_AREAS=7
|
||||
CONFIG_KVM_BOOK3S_64=m
|
||||
CONFIG_KVM_BOOK3S_64_HV=m
|
||||
CONFIG_KVM_BOOK3S_64_PR=m
|
||||
|
@ -175,17 +166,22 @@ CONFIG_HW_RANDOM_AMD=m
|
|||
|
||||
CONFIG_UIO_PDRV=m
|
||||
|
||||
CONFIG_I2C_OPAL=m
|
||||
CONFIG_RTC_DRV_OPAL=m
|
||||
|
||||
CONFIG_HW_RANDOM_PSERIES=m
|
||||
CONFIG_CRYPTO_DEV_NX=y
|
||||
CONFIG_CRYPTO_842=m
|
||||
CONFIG_CRYPTO_DEV_NX_ENCRYPT=m
|
||||
CONFIG_CRYPTO_DEV_NX_COMPRESS=m
|
||||
|
||||
CONFIG_CXL=m
|
||||
|
||||
CONFIG_BPF_JIT=y
|
||||
# CONFIG_PPC_ICSWX_PID is not set
|
||||
# CONFIG_PPC_ICSWX_USE_SIGILL is not set
|
||||
# CONFIG_PCIEPORTBUS is not set
|
||||
# CONFIG_PPC_TRANSACTIONAL_MEM is not set
|
||||
# CONFIG_SND_HDA_INTEL is not set
|
||||
CONFIG_BLK_DEV_RSXX=m
|
||||
|
||||
# CONFIG_CARL9170 is not set
|
||||
|
|
|
@ -1,5 +1 @@
|
|||
# CONFIG_VIRTUALIZATION is not set
|
||||
# CONFIG_BPF_JIT is not set
|
||||
CONFIG_CPU_LITTLE_ENDIAN=y
|
||||
|
||||
# CONFIG_CARL9170 is not set
|
||||
|
|
|
@ -3,16 +3,14 @@ CONFIG_POWER7_CPU=y
|
|||
# CONFIG_PPC_MAPLE is not set
|
||||
# CONFIG_PPC_CELL is not set
|
||||
# CONFIG_PPC_IBM_CELL_BLADE is not set
|
||||
# CONFIG_PPC_ISERIES is not set
|
||||
# CONFIG_POWER3 is not set
|
||||
CONFIG_PPC_PSERIES=y
|
||||
# CONFIG_PPC_PMAC is not set
|
||||
CONFIG_PPC_POWERNV=y
|
||||
CONFIG_POWERNV_MSI=y
|
||||
CONFIG_PPC_POWERNV_RTAS=y
|
||||
CONFIG_HW_RANDOM_POWERNV=m
|
||||
CONFIG_SENSORS_IBMPOWERNV=y
|
||||
CONFIG_POWERNV_CPUFREQ=m
|
||||
CONFIG_IPMI_POWERNV=m
|
||||
CONFIG_SCOM_DEBUGFS=y
|
||||
# CONFIG_PPC_PASEMI is not set
|
||||
# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set
|
||||
|
@ -43,15 +41,10 @@ CONFIG_SCSI_IPR=m
|
|||
CONFIG_SCSI_IPR_TRACE=y
|
||||
CONFIG_SCSI_IPR_DUMP=y
|
||||
CONFIG_HVC_RTAS=y
|
||||
# CONFIG_HVC_ISERIES is not set
|
||||
CONFIG_HVC_OPAL=y
|
||||
|
||||
# iSeries device drivers
|
||||
#
|
||||
# CONFIG_ISERIES_VETH is not set
|
||||
CONFIG_VIODASD=m
|
||||
CONFIG_VIOCD=m
|
||||
CONFIG_VIOTAPE=m
|
||||
|
||||
CONFIG_SERIAL_OF_PLATFORM=m
|
||||
|
||||
|
@ -77,10 +70,8 @@ CONFIG_NR_CPUS=1024
|
|||
# CONFIG_FB_ATY128 is not set
|
||||
# CONFIG_FB_ATY is not set
|
||||
|
||||
# CONFIG_POWER4_ONLY is not set
|
||||
|
||||
CONFIG_RTAS_PROC=y
|
||||
CONFIG_IOMMU_VMERGE=y
|
||||
CONFIG_NUMA=y
|
||||
CONFIG_NUMA_BALANCING=y
|
||||
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
|
||||
|
@ -110,17 +101,14 @@ CONFIG_INFINIBAND_EHCA=m
|
|||
|
||||
CONFIG_XMON_DISASSEMBLY=y
|
||||
|
||||
CONFIG_SCSI_IBMVSCSIS=m
|
||||
|
||||
# CONFIG_TUNE_CELL is not set
|
||||
# CONFIG_BLK_DEV_PLATFORM is not set
|
||||
|
||||
# CONFIG_VIRQ_DEBUG is not set
|
||||
|
||||
CONFIG_EDAC_CPC925=m
|
||||
CONFIG_FRAME_WARN=2048
|
||||
|
||||
CONFIG_PHYP_DUMP=y
|
||||
CONFIG_FORCE_MAX_ZONEORDER=9
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
|
||||
|
@ -131,12 +119,14 @@ CONFIG_SCSI_IBMVFC=m
|
|||
CONFIG_IBM_BSR=m
|
||||
|
||||
CONFIG_CRASH_DUMP=y
|
||||
CONFIG_FA_DUMP=y
|
||||
CONFIG_RELOCATABLE=y
|
||||
|
||||
CONFIG_RCU_FANOUT=64
|
||||
|
||||
CONFIG_CMA=y
|
||||
# CONFIG_CMA_DEBUG is not set
|
||||
CONFIG_CMA_AREAS=7
|
||||
CONFIG_KVM_BOOK3S_64=m
|
||||
CONFIG_KVM_BOOK3S_64_HV=m
|
||||
CONFIG_KVM_BOOK3S_64_PR=m
|
||||
|
@ -166,14 +156,17 @@ CONFIG_HW_RANDOM_AMD=m
|
|||
|
||||
CONFIG_UIO_PDRV=m
|
||||
|
||||
CONFIG_I2C_OPAL=m
|
||||
CONFIG_RTC_DRV_OPAL=m
|
||||
|
||||
CONFIG_HW_RANDOM_PSERIES=m
|
||||
CONFIG_CRYPTO_DEV_NX=y
|
||||
CONFIG_CRYPTO_842=m
|
||||
CONFIG_CRYPTO_DEV_NX_ENCRYPT=m
|
||||
CONFIG_CRYPTO_DEV_NX_COMPRESS=m
|
||||
|
||||
CONFIG_CXL=m
|
||||
|
||||
CONFIG_BPF_JIT=y
|
||||
# CONFIG_PPC_ICSWX_PID is not set
|
||||
# CONFIG_PPC_ICSWX_USE_SIGILL is not set
|
||||
# CONFIG_PCIEPORTBUS is not set
|
||||
|
|
65
config-s390x
65
config-s390x
|
@ -14,7 +14,6 @@ CONFIG_HZ_100=y
|
|||
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
|
||||
|
||||
CONFIG_LOG_BUF_SHIFT=16
|
||||
CONFIG_NO_IDLE_HZ=y
|
||||
|
||||
#
|
||||
# I/O subsystem configuration
|
||||
|
@ -25,13 +24,9 @@ CONFIG_QDIO=m
|
|||
# Misc
|
||||
#
|
||||
CONFIG_IPL=y
|
||||
# CONFIG_IPL_TAPE is not set
|
||||
CONFIG_IPL_VM=y
|
||||
# CONFIG_PROCESS_DEBUG is not set
|
||||
CONFIG_PFAULT=y
|
||||
CONFIG_SHARED_KERNEL=y
|
||||
CONFIG_CMM=m
|
||||
CONFIG_CMM_PROC=y
|
||||
# CONFIG_NETIUCV is not set
|
||||
CONFIG_SMSGIUCV=m
|
||||
CONFIG_CRASH_DUMP=y
|
||||
|
@ -40,7 +35,6 @@ CONFIG_CRASH_DUMP=y
|
|||
# SCSI low-level drivers
|
||||
#
|
||||
CONFIG_ZFCP=m
|
||||
CONFIG_ZFCPDUMP=y
|
||||
CONFIG_CCW=y
|
||||
|
||||
#
|
||||
|
@ -69,6 +63,7 @@ CONFIG_SCLP_VT220_TTY=y
|
|||
CONFIG_SCLP_VT220_CONSOLE=y
|
||||
CONFIG_SCLP_CPI=m
|
||||
CONFIG_SCLP_ASYNC=m
|
||||
CONFIG_SCLP_ASYNC_ID="000000000"
|
||||
CONFIG_S390_TAPE=m
|
||||
CONFIG_S390_TAPE_3590=m
|
||||
|
||||
|
@ -83,14 +78,12 @@ CONFIG_TN3270_FS=m
|
|||
#
|
||||
# S/390 tape interface support
|
||||
#
|
||||
CONFIG_S390_TAPE_BLOCK=y
|
||||
|
||||
#
|
||||
# S/390 tape hardware support
|
||||
#
|
||||
CONFIG_S390_TAPE_34XX=m
|
||||
|
||||
# CONFIG_PPP is not set
|
||||
# CONFIG_SLIP is not set
|
||||
|
||||
#
|
||||
|
@ -149,10 +142,7 @@ CONFIG_CRYPTO_AES_S390=m
|
|||
#
|
||||
CONFIG_PACK_STACK=y
|
||||
CONFIG_CHECK_STACK=y
|
||||
# CONFIG_WARN_STACK is not set
|
||||
# CONFIG_SMALL_STACK is not set
|
||||
|
||||
CONFIG_ZVM_WATCHDOG=m
|
||||
CONFIG_DIAG288_WATCHDOG=m
|
||||
CONFIG_VMLOGRDR=m
|
||||
CONFIG_MONREADER=m
|
||||
|
@ -161,8 +151,6 @@ CONFIG_VIRT_CPU_ACCOUNTING=y
|
|||
|
||||
# CONFIG_CLAW is not set
|
||||
|
||||
# CONFIG_ATMEL is not set
|
||||
|
||||
# CONFIG_CDROM_PKTCDVD is not set
|
||||
# CONFIG_ATA_OVER_ETH is not set
|
||||
# CONFIG_MII is not set
|
||||
|
@ -171,15 +159,12 @@ CONFIG_VIRT_CPU_ACCOUNTING=y
|
|||
CONFIG_STACK_GUARD=256
|
||||
CONFIG_CMM_IUCV=y
|
||||
|
||||
# CONFIG_DETECT_SOFTLOCKUP is not set
|
||||
|
||||
CONFIG_S390_HYPFS_FS=y
|
||||
|
||||
CONFIG_MONWRITER=m
|
||||
CONFIG_ZCRYPT=m
|
||||
CONFIG_ZCRYPT_MONOLITHIC=y
|
||||
|
||||
CONFIG_S390_EXEC_PROTECT=y
|
||||
CONFIG_AFIUCV=m
|
||||
CONFIG_S390_PRNG=m
|
||||
|
||||
|
@ -218,7 +203,6 @@ CONFIG_SMSGIUCV_EVENT=m
|
|||
|
||||
CONFIG_VMCP=y
|
||||
|
||||
CONFIG_ZFCP_DIF=y
|
||||
|
||||
CONFIG_SCHED_MC=y
|
||||
CONFIG_SCHED_BOOK=y
|
||||
|
@ -227,7 +211,6 @@ CONFIG_SCHED_BOOK=y
|
|||
|
||||
CONFIG_CRYPTO_GHASH_S390=m
|
||||
|
||||
CONFIG_BPF_JIT=y
|
||||
# CONFIG_TRANSPARENT_HUGEPAGE is not set
|
||||
CONFIG_SCM_BUS=y
|
||||
CONFIG_EADM_SCH=m
|
||||
|
@ -235,10 +218,31 @@ CONFIG_SCM_BLOCK=m
|
|||
CONFIG_SCM_BLOCK_CLUSTER_WRITE=y
|
||||
# CONFIG_S390_PTDUMP is not set
|
||||
# CONFIG_ASYMMETRIC_KEY_TYPE is not set
|
||||
# CONFIG_PCI is not set
|
||||
|
||||
CONFIG_PCI=y
|
||||
CONFIG_PCI_NR_FUNCTIONS=64
|
||||
CONFIG_PCI_NR_MSI=256
|
||||
CONFIG_HOTPLUG_PCI=y
|
||||
CONFIG_HOTPLUG_PCI_CPCI=y
|
||||
CONFIG_HOTPLUG_PCI_SHPC=y
|
||||
CONFIG_HOTPLUG_PCI_S390=y
|
||||
|
||||
# CONFIG_NEW_LEDS is not set
|
||||
# CONFIG_HID is not set
|
||||
# CONFIG_MTD is not set
|
||||
|
||||
# CONFIG_SERIAL_8250 is not set
|
||||
# CONFIG_PARPORT is not set
|
||||
# CONFIG_UWB is not set
|
||||
# CONFIG_MMC is not set
|
||||
# CONFIG_FB is not set
|
||||
# CONFIG_MFD_CORE is not set
|
||||
# CONFIG_TIFM_CORE is not set
|
||||
# CONFIG_CB710_CORE is not set
|
||||
# CONFIG_FCOE is not set
|
||||
# CONFIG_FUSION is not set
|
||||
# CONFIG_FIREWIRE is not set
|
||||
# CONFIG_FIREWIRE_NOSY is not set
|
||||
|
||||
# CONFIG_INPUT is not set
|
||||
# CONFIG_INPUT_JOYDEV is not set
|
||||
|
@ -248,6 +252,8 @@ CONFIG_SCM_BLOCK_CLUSTER_WRITE=y
|
|||
# CONFIG_INPUT_TABLET is not set
|
||||
# CONFIG_INPUT_TOUCHSCREEN is not set
|
||||
# CONFIG_INPUT_MISC is not set
|
||||
# CONFIG_GAMEPORT_EMU10K1 is not set
|
||||
# CONFIG_GAMEPORT_FM801 is not set
|
||||
# CONFIG_SERIO is not set
|
||||
|
||||
# CONFIG_ACCESSIBILITY is not set
|
||||
|
@ -269,6 +275,17 @@ CONFIG_SCM_BLOCK_CLUSTER_WRITE=y
|
|||
# CONFIG_I2C_NFORCE2 is not set
|
||||
# CONFIG_PTP_1588_CLOCK is not set
|
||||
# CONFIG_PPS is not set
|
||||
# CONFIG_W1 is not set
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_SSB is not set
|
||||
# CONFIG_BCMA is not set
|
||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
|
||||
# CONFIG_LCD_CLASS_DEVICE is not set
|
||||
# CONFIG_LCD_PLATFORM is not set
|
||||
# CONFIG_BACKLIGHT_CLASS_DEVICE is not set
|
||||
# CONFIG_MFD_RTSX_PCI is not set
|
||||
# CONFIG_MFD_SM501 is not set
|
||||
# CONFIG_MFD_VX855 is not set
|
||||
|
||||
# CONFIG_PHYLIB is not set
|
||||
# CONFIG_ATM_DRIVERS is not set
|
||||
|
@ -282,4 +299,14 @@ CONFIG_SCM_BLOCK_CLUSTER_WRITE=y
|
|||
|
||||
# CONFIG_FMC is not set
|
||||
|
||||
CONFIG_MLX4_EN=m
|
||||
CONFIG_MLX4_EN_DCB=y
|
||||
CONFIG_INFINIBAND=m
|
||||
CONFIG_INFINIBAND_USER_ACCESS=m
|
||||
CONFIG_MLX4_INFINIBAND=m
|
||||
CONFIG_RDS=m
|
||||
CONFIG_RDS_RDMA=m
|
||||
CONFIG_RDS_TCP=m
|
||||
CONFIG_IRQ_DOMAIN_DEBUG=y
|
||||
|
||||
CONFIG_CRASH=m
|
||||
|
|
|
@ -2,15 +2,9 @@
|
|||
|
||||
# CONFIG_X86_32_NON_STANDARD is not set
|
||||
|
||||
# CONFIG_X86_ELAN is not set
|
||||
# CONFIG_X86_GOLDFISH is not set
|
||||
# CONFIG_X86_NUMAQ is not set
|
||||
# CONFIG_X86_SUMMIT is not set
|
||||
CONFIG_X86_BIGSMP=y
|
||||
# CONFIG_X86_VISWS is not set
|
||||
# CONFIG_X86_RDC321X is not set
|
||||
# CONFIG_X86_ES7000 is not set
|
||||
# CONFIG_M386 is not set
|
||||
# CONFIG_M486 is not set
|
||||
# CONFIG_M586 is not set
|
||||
# CONFIG_M586TSC is not set
|
||||
|
@ -84,12 +78,10 @@ CONFIG_X86_SPEEDSTEP_LIB=y
|
|||
CONFIG_X86_LONGRUN=y
|
||||
# CONFIG_X86_LONGHAUL is not set
|
||||
# CONFIG_X86_CPUFREQ_NFORCE2 is not set
|
||||
# CONFIG_GENERIC_CPUFREQ_CPU0 is not set
|
||||
# e_powersaver is dangerous
|
||||
# CONFIG_X86_E_POWERSAVER is not set
|
||||
|
||||
CONFIG_X86_HT=y
|
||||
CONFIG_X86_TRAMPOLINE=y
|
||||
|
||||
|
||||
# CONFIG_4KSTACKS is not set
|
||||
|
@ -113,7 +105,6 @@ CONFIG_SCx200_ACB=m
|
|||
|
||||
CONFIG_PC8736x_GPIO=m
|
||||
# CONFIG_NSC_GPIO is not set
|
||||
CONFIG_CS5535_GPIO=m
|
||||
CONFIG_GPIO_SCH=m
|
||||
|
||||
CONFIG_HW_RANDOM_GEODE=m
|
||||
|
@ -143,7 +134,6 @@ CONFIG_LBDAF=y
|
|||
|
||||
|
||||
CONFIG_OLPC=y
|
||||
CONFIG_OLPC_OPENFIRMWARE=y
|
||||
CONFIG_BATTERY_OLPC=y
|
||||
CONFIG_MOUSE_PS2_OLPC=y
|
||||
CONFIG_OLPC_XO1_PM=y
|
||||
|
@ -160,10 +150,8 @@ CONFIG_RCU_FANOUT=32
|
|||
|
||||
# CONFIG_X86_ANCIENT_MCE is not set
|
||||
|
||||
# CONFIG_X86_MRST is not set
|
||||
|
||||
CONFIG_I2C_PXA=m
|
||||
# CONFIG_GPIO_LANGWELL is not set
|
||||
|
||||
# CONFIG_INTEL_TXT is not set
|
||||
|
||||
|
@ -179,12 +167,12 @@ CONFIG_XO1_RFKILL=m
|
|||
CONFIG_X86_32_IRIS=m
|
||||
|
||||
CONFIG_POWER_RESET_GPIO=y
|
||||
# CONFIG_POWER_RESET_GPIO_RESTART is not set
|
||||
|
||||
|
||||
|
||||
CONFIG_MTD_OF_PARTS=y
|
||||
CONFIG_MTD_PHYSMAP_OF=m
|
||||
CONFIG_PROC_DEVICETREE=y
|
||||
CONFIG_SERIAL_OF_PLATFORM=m
|
||||
CONFIG_SERIAL_GRLIB_GAISLER_APBUART=m
|
||||
# CONFIG_MMC_SDHCI_OF is not set
|
||||
|
@ -209,7 +197,7 @@ CONFIG_BACKLIGHT_PWM=m
|
|||
|
||||
# CONFIG_EDAC_SBRIDGE is not set
|
||||
|
||||
# CONFIG_X86_WANT_INTEL_MID is not set
|
||||
# CONFIG_OF_UNITTEST is not set
|
||||
# CONFIG_OF_SELFTEST is not set
|
||||
# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
|
||||
# CONFIG_INPUT_GP2A is not set
|
||||
|
@ -219,17 +207,11 @@ CONFIG_BACKLIGHT_PWM=m
|
|||
# CONFIG_MDIO_BUS_MUX_GPIO is not set
|
||||
# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
|
||||
# CONFIG_GPIO_SODAVILLE is not set
|
||||
# CONFIG_GPIO_ADNP is not set
|
||||
# CONFIG_GPIO_74XX_MMIO is not set
|
||||
# CONFIG_BACKLIGHT_OT200 is not set
|
||||
# CONFIG_RTC_DRV_SNVS is not set
|
||||
# CONFIG_RTC_DRV_HYM8563 is not set
|
||||
# CONFIG_OF_DISPLAY_TIMING is not set
|
||||
# CONFIG_OF_VIDEOMODE is not set
|
||||
|
||||
# CONFIG_MLX5_INFINIBAND is not set
|
||||
# CONFIG_PINCTRL_SINGLE is not set
|
||||
# CONFIG_PINCTRL_CAPRI is not set
|
||||
# CONFIG_PINCTRL_MSM8X74 is not set
|
||||
# CONFIG_PINCTRL_BCM281XX is not set
|
||||
# CONFIG_PINCTRL_APQ8064 is not set
|
||||
# CONFIG_PINCTRL_IPQ8064 is not set
|
||||
|
|
|
@ -10,10 +10,12 @@ CONFIG_HPET_TIMER=y
|
|||
|
||||
CONFIG_I8K=m
|
||||
CONFIG_SONYPI_COMPAT=y
|
||||
CONFIG_MICROCODE=m
|
||||
CONFIG_MICROCODE=y
|
||||
CONFIG_MICROCODE_EARLY=y
|
||||
CONFIG_MICROCODE_INTEL=y
|
||||
CONFIG_MICROCODE_INTEL_EARLY=y
|
||||
CONFIG_MICROCODE_AMD=y
|
||||
CONFIG_MICROCODE_AMD_EARLY=y
|
||||
|
||||
CONFIG_X86_MSR=y
|
||||
CONFIG_X86_CPUID=y
|
||||
|
@ -32,6 +34,10 @@ CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
|
|||
CONFIG_X86_PAT=y
|
||||
CONFIG_X86_PM_TIMER=y
|
||||
|
||||
# This requires changes to binutils and the compiler. Plus you can't actually
|
||||
# buy hardware with MPX yet. So... leave it off until all of that seems set.
|
||||
# CONFIG_X86_INTEL_MPX is not set
|
||||
|
||||
CONFIG_EFI=y
|
||||
CONFIG_EFI_STUB=y
|
||||
# CONFIG_EFI_MIXED is not set
|
||||
|
@ -50,7 +56,6 @@ CONFIG_EFI_RUNTIME_MAP=y
|
|||
# CONFIG_FB_N411 is not set
|
||||
|
||||
CONFIG_INTEL_IOMMU=y
|
||||
CONFIG_DMAR_BROKEN_GFX_WA=y
|
||||
CONFIG_INTEL_IOMMU_FLOPPY_WA=y
|
||||
# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
|
||||
CONFIG_SCSI_ADVANSYS=m
|
||||
|
@ -69,7 +74,6 @@ CONFIG_DEBUG_STACKOVERFLOW=y
|
|||
|
||||
CONFIG_ACPI=y
|
||||
CONFIG_ACPI_AC=y
|
||||
# CONFIG_ACPI_ASUS is not set
|
||||
CONFIG_ACPI_BATTERY=y
|
||||
CONFIG_ACPI_BUTTON=y
|
||||
CONFIG_ACPI_CONTAINER=y
|
||||
|
@ -86,7 +90,6 @@ CONFIG_ACPI_VIDEO=m
|
|||
CONFIG_ACPI_INITRD_TABLE_OVERRIDE=y
|
||||
# FIXME: Next two are deprecated. Remove them when they disappear upstream
|
||||
# CONFIG_ACPI_PROCFS_POWER is not set
|
||||
# CONFIG_ACPI_PROC_EVENT is not set
|
||||
CONFIG_PNPACPI=y
|
||||
CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
|
||||
CONFIG_ACPI_HED=m
|
||||
|
@ -100,6 +103,8 @@ CONFIG_ACPI_CUSTOM_METHOD=m
|
|||
CONFIG_ACPI_BGRT=y
|
||||
# CONFIG_ACPI_EXTLOG is not set
|
||||
|
||||
# CONFIG_PMIC_OPREGION is not set
|
||||
|
||||
CONFIG_X86_INTEL_PSTATE=y
|
||||
CONFIG_X86_ACPI_CPUFREQ=m
|
||||
CONFIG_X86_ACPI_CPUFREQ_CPB=y
|
||||
|
@ -119,6 +124,7 @@ CONFIG_CRYPTO_DEV_PADLOCK_SHA=m
|
|||
CONFIG_CRYPTO_DEV_CCP=y
|
||||
CONFIG_CRYPTO_DEV_CCP_DD=m
|
||||
CONFIG_CRYPTO_DEV_CCP_CRYPTO=m
|
||||
CONFIG_CRYPTO_DEV_QAT_DH895xCC=m
|
||||
|
||||
CONFIG_GENERIC_ISA_DMA=y
|
||||
|
||||
|
@ -142,6 +148,9 @@ CONFIG_IPW2200_QOS=y
|
|||
|
||||
CONFIG_BLK_DEV_AMD74XX=y
|
||||
|
||||
# I2C_ACPI casues I2C to be built in. This should probably be fixed.
|
||||
CONFIG_I2C=y
|
||||
CONFIG_ACPI_I2C_OPREGION=y
|
||||
CONFIG_I2C_AMD756=m
|
||||
CONFIG_I2C_AMD756_S4882=m
|
||||
CONFIG_I2C_AMD8111=m
|
||||
|
@ -163,6 +172,8 @@ CONFIG_DCDBAS=m
|
|||
|
||||
CONFIG_EDAC=y
|
||||
CONFIG_EDAC_MM_EDAC=m
|
||||
# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set
|
||||
CONFIG_EDAC_AMD64=m
|
||||
CONFIG_EDAC_AMD76X=m
|
||||
CONFIG_EDAC_AMD8111=m
|
||||
CONFIG_EDAC_AMD8131=m
|
||||
|
@ -183,6 +194,7 @@ CONFIG_EDAC_X38=m
|
|||
CONFIG_EDAC_MCE_INJ=m
|
||||
CONFIG_EDAC_DECODE_MCE=m
|
||||
CONFIG_EDAC_LEGACY_SYSFS=y
|
||||
CONFIG_EDAC_IE31200=m
|
||||
|
||||
CONFIG_SCHED_MC=y
|
||||
|
||||
|
@ -236,9 +248,9 @@ CONFIG_INTEL_SMARTCONNECT=y
|
|||
CONFIG_PVPANIC=m
|
||||
|
||||
# CONFIG_TOUCHSCREEN_INTEL_MID is not set
|
||||
CONFIG_TOUCHSCREEN_GOODIX=m
|
||||
|
||||
# CONFIG_SMSC37B787_WDT is not set
|
||||
CONFIG_W83697HF_WDT=m
|
||||
CONFIG_VIA_WDT=m
|
||||
CONFIG_IE6XX_WDT=m
|
||||
|
||||
|
@ -262,7 +274,6 @@ CONFIG_PARAVIRT_TIME_ACCOUNTING=y
|
|||
# PARAVIRT_SPINLOCKS has a 5% perf hit on native hw (see kconfig)
|
||||
# CONFIG_PARAVIRT_SPINLOCKS is not set
|
||||
|
||||
CONFIG_KVM_CLOCK=y
|
||||
CONFIG_KVM_GUEST=y
|
||||
CONFIG_KVM_MMU_AUDIT=y # default $x would be nice...
|
||||
# CONFIG_KVM_DEBUG_FS is not set
|
||||
|
@ -286,12 +297,13 @@ CONFIG_XEN_COMPAT_XENFS=y
|
|||
CONFIG_XEN_BACKEND=y
|
||||
CONFIG_XEN_BLKDEV_BACKEND=m
|
||||
CONFIG_XEN_DEBUG_FS=y
|
||||
CONFIG_XEN_PLATFORM_PCI=y
|
||||
CONFIG_XEN_GNTDEV=m
|
||||
CONFIG_INPUT_XEN_KBDDEV_FRONTEND=m
|
||||
CONFIG_XEN_SELFBALLOONING=y
|
||||
CONFIG_XEN_PCIDEV_BACKEND=m
|
||||
CONFIG_XEN_ACPI_PROCESSOR=m
|
||||
# CONFIG_XEN_SCSI_FRONTEND is not set
|
||||
# CONFIG_XEN_SCSI_BACKEND is not set
|
||||
|
||||
CONFIG_MTD_ESB2ROM=m
|
||||
CONFIG_MTD_CK804XROM=m
|
||||
|
@ -323,6 +335,7 @@ CONFIG_INTEL_IOATDMA=m
|
|||
CONFIG_SENSORS_I5K_AMB=m
|
||||
CONFIG_SENSORS_FAM15H_POWER=m
|
||||
CONFIG_SENSORS_ACPI_POWER=m
|
||||
CONFIG_SENSORS_I5500=m
|
||||
|
||||
# CONFIG_CPA_DEBUG is not set
|
||||
|
||||
|
@ -367,6 +380,7 @@ CONFIG_X86_DECODER_SELFTEST=y
|
|||
CONFIG_ACPI_CMPC=m
|
||||
CONFIG_MSI_WMI=m
|
||||
CONFIG_TOSHIBA_BT_RFKILL=m
|
||||
CONFIG_TOSHIBA_HAPS=m
|
||||
|
||||
CONFIG_VGA_SWITCHEROO=y
|
||||
CONFIG_LPC_SCH=m
|
||||
|
@ -374,15 +388,39 @@ CONFIG_LPC_ICH=m
|
|||
|
||||
CONFIG_GPIO_ICH=m
|
||||
# CONFIG_GPIO_LYNXPOINT is not set
|
||||
# CONFIG_GPIO_MCP23S08 is not set
|
||||
# CONFIG_GPIO_F7188X is not set
|
||||
|
||||
# These should all go away with IC2_ACPI is fixed
|
||||
# CONFIG_MFD_AS3711 is not set
|
||||
# CONFIG_PMIC_ADP5520 is not set
|
||||
# CONFIG_MFD_AAT2870_CORE is not set
|
||||
# CONFIG_MFD_AXP20X is not set
|
||||
# CONFIG_PMIC_DA903X is not set
|
||||
# CONFIG_MFD_DA9052_I2C is not set
|
||||
# CONFIG_MFD_DA9055 is not set
|
||||
# CONFIG_MFD_88PM800 is not set
|
||||
# CONFIG_MFD_88PM805 is not set
|
||||
# CONFIG_MFD_MAX14577 is not set
|
||||
# CONFIG_MFD_MAX77686 is not set
|
||||
# CONFIG_MFD_MAX77693 is not set
|
||||
# CONFIG_MFD_MAX8907 is not set
|
||||
# CONFIG_MFD_MAX8997 is not set
|
||||
# CONFIG_MFD_RC5T583 is not set
|
||||
# CONFIG_MFD_SEC_CORE is not set
|
||||
# CONFIG_MFD_SMSC is not set
|
||||
# CONFIG_MFD_LP8788 is not set
|
||||
# CONFIG_MFD_PALMAS is not set
|
||||
# CONFIG_MFD_TPS65090 is not set
|
||||
# CONFIG_MFD_TPS65910 is not set
|
||||
# CONFIG_MFD_TPS65912_I2C is not set
|
||||
# CONFIG_MFD_TPS80031 is not set
|
||||
# CONFIG_TWL4030_CORE is not set
|
||||
# CONFIG_TWL6040_CORE is not set
|
||||
|
||||
CONFIG_PCI_CNB20LE_QUIRK=y
|
||||
|
||||
CONFIG_ACPI_EC_DEBUGFS=m
|
||||
# CONFIG_ACPI_APEI_ERST_DEBUG is not set
|
||||
# CONFIG_ACPI_QUICKSTART is not set
|
||||
|
||||
CONFIG_INTEL_IDLE=y
|
||||
|
||||
|
@ -452,14 +490,35 @@ CONFIG_NFC_MICROREAD_MEI=m
|
|||
# CONFIG_X86_GOLDFISH is not set
|
||||
|
||||
CONFIG_X86_INTEL_LPSS=y
|
||||
CONFIG_IOSF_MBI=m
|
||||
# CONFIG_IOSF_MBI_DEBUG is not set
|
||||
CONFIG_PWM_LPSS=m
|
||||
CONFIG_PWM_LPSS_PCI=m
|
||||
CONFIG_PWM_LPSS_PLATFORM=m
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_BAYTRAIL=y
|
||||
CONFIG_PINCTRL_CHERRYVIEW=m
|
||||
|
||||
#baytrail/cherrytrail stuff
|
||||
CONFIG_KEYBOARD_GPIO=m
|
||||
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
||||
CONFIG_SND_SOC_INTEL_SST=m
|
||||
CONFIG_SND_SOC_INTEL_SST_ACPI=m
|
||||
CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
|
||||
CONFIG_SND_SOC_INTEL_BROADWELL_MACH=m
|
||||
CONFIG_SND_SOC_INTEL_BAYTRAIL=m
|
||||
CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH=m
|
||||
CONFIG_SND_SOC_INTEL_BYT_MAX98090_MACH=m
|
||||
CONFIG_SND_SOC_INTEL_BYTCR_RT5640_MACH=m
|
||||
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
|
||||
|
||||
|
||||
|
||||
# CONFIG_INTEL_POWERCLAMP is not set
|
||||
CONFIG_X86_PKG_TEMP_THERMAL=m
|
||||
CONFIG_ACPI_INT3403_THERMAL=m
|
||||
CONFIG_INTEL_SOC_DTS_THERMAL=m
|
||||
CONFIG_INT340X_THERMAL=m
|
||||
CONFIG_INTEL_RAPL=m
|
||||
|
||||
CONFIG_VMWARE_VMCI=m
|
||||
CONFIG_VMWARE_VMCI_VSOCKETS=m
|
||||
|
@ -467,6 +526,9 @@ CONFIG_VMWARE_VMCI_VSOCKETS=m
|
|||
CONFIG_XZ_DEC_X86=y
|
||||
|
||||
CONFIG_MPILIB=y
|
||||
CONFIG_PKCS7_MESSAGE_PARSER=y
|
||||
# CONFIG_PKCS7_TEST_KEY is not set
|
||||
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
|
||||
CONFIG_SYSTEM_TRUSTED_KEYRING=y
|
||||
CONFIG_SYSTEM_BLACKLIST_KEYRING=y
|
||||
CONFIG_MODULE_SIG=y
|
||||
|
@ -477,6 +539,9 @@ CONFIG_MODULE_SIG_SHA256=y
|
|||
CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=y
|
||||
CONFIG_EFI_SIGNATURE_LIST_PARSER=y
|
||||
|
||||
# CONFIG_KEXEC_FILE is not set
|
||||
# CONFIG_KEXEC_VERIFY_SIG is not set
|
||||
|
||||
CONFIG_MODULE_SIG_UEFI=y
|
||||
|
||||
CONFIG_VMXNET3=m
|
||||
|
|
|
@ -9,7 +9,6 @@ CONFIG_GENERIC_CPU=y
|
|||
CONFIG_X86_UV=y
|
||||
CONFIG_UV_MMTIMER=m
|
||||
CONFIG_NUMA=y
|
||||
CONFIG_K8_NUMA=y
|
||||
CONFIG_AMD_NUMA=y
|
||||
CONFIG_X86_64_ACPI_NUMA=y
|
||||
# CONFIG_NUMA_EMU is not set
|
||||
|
@ -42,6 +41,9 @@ CONFIG_CGROUP_HUGETLB=y
|
|||
CONFIG_MEM_SOFT_DIRTY=y
|
||||
|
||||
CONFIG_KEXEC_JUMP=y
|
||||
CONFIG_KEXEC_FILE=y
|
||||
CONFIG_KEXEC_VERIFY_SIG=y
|
||||
CONFIG_KEXEC_BZIMAGE_VERIFY_SIG=y
|
||||
|
||||
CONFIG_ACPI_HOTPLUG_MEMORY=y
|
||||
|
||||
|
@ -49,10 +51,13 @@ CONFIG_ACPI_HOTPLUG_MEMORY=y
|
|||
|
||||
CONFIG_INTEL_MIC_HOST=m
|
||||
CONFIG_INTEL_MIC_CARD=m
|
||||
CONFIG_INTEL_MIC_BUS=m
|
||||
CONFIG_INTEL_MIC_X100_DMA=m
|
||||
|
||||
# SHPC has half-arsed PCI probing, which makes it load on too many systems
|
||||
CONFIG_HOTPLUG_PCI_SHPC=m
|
||||
|
||||
# CONFIG_CRYPTO_SHA1_MB is not set
|
||||
CONFIG_CRYPTO_AES_X86_64=y
|
||||
CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m
|
||||
CONFIG_CRYPTO_TWOFISH_X86_64=m
|
||||
|
@ -62,7 +67,6 @@ CONFIG_CRYPTO_SHA1_SSSE3=m
|
|||
CONFIG_CRYPTO_SHA256_SSSE3=m
|
||||
CONFIG_CRYPTO_SHA512_SSSE3=m
|
||||
CONFIG_CRYPTO_BLOWFISH_X86_64=m
|
||||
CONFIG_CRYPTO_BLOWFISH_AVX2_X86_64=m
|
||||
CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m
|
||||
CONFIG_CRYPTO_CAMELLIA_X86_64=m
|
||||
CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m
|
||||
|
@ -73,7 +77,7 @@ CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m
|
|||
CONFIG_CRYPTO_SERPENT_AVX_X86_64=m
|
||||
CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m
|
||||
CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m
|
||||
CONFIG_CRYPTO_TWOFISH_AVX2_X86_64=m
|
||||
CONFIG_CRYPTO_DES3_EDE_X86_64=m
|
||||
# staging crypto
|
||||
# CONFIG_CRYPTO_SKEIN is not set
|
||||
# CONFIG_CRYPTO_THREEFISH is not set
|
||||
|
@ -144,20 +148,19 @@ CONFIG_RCU_FANOUT=64
|
|||
|
||||
CONFIG_INTEL_TXT=y
|
||||
|
||||
CONFIG_GPIO_LANGWELL=y
|
||||
|
||||
CONFIG_FUNCTION_GRAPH_TRACER=y
|
||||
|
||||
CONFIG_I7300_IDLE=m
|
||||
|
||||
CONFIG_BPF_JIT=y
|
||||
|
||||
# https://fedoraproject.org/wiki/Features/Checkpoint_Restore
|
||||
CONFIG_CHECKPOINT_RESTORE=y
|
||||
|
||||
# Should be 32bit only, but lacks KConfig depends
|
||||
# CONFIG_XO15_EBOOK is not set
|
||||
|
||||
CONFIG_THUNDERBOLT=m
|
||||
|
||||
CONFIG_NTB=m
|
||||
CONFIG_NTB_NETDEV=m
|
||||
|
||||
|
@ -170,9 +173,14 @@ CONFIG_MLX4_EN_DCB=y
|
|||
CONFIG_SFC=m
|
||||
CONFIG_SFC_MCDI_MON=y
|
||||
CONFIG_SFC_SRIOV=y
|
||||
CONFIG_SFC_PTP=y
|
||||
CONFIG_SFC_MTD=y
|
||||
# Override MTD stuff because SFC_MTD needs it
|
||||
CONFIG_MTD_CHAR=m
|
||||
CONFIG_MTD_BLOCK=m
|
||||
|
||||
CONFIG_HSA_AMD=m
|
||||
|
||||
CONFIG_NO_HZ_FULL=y
|
||||
# CONFIG_NO_HZ_IDLE is not set
|
||||
# CONFIG_NO_HZ_FULL_ALL is not set
|
||||
# CONFIG_NO_HZ_FULL_SYSIDLE is not set
|
||||
# CONFIG_CONTEXT_TRACKING_FORCE is not set
|
||||
|
|
|
@ -1,69 +1,67 @@
|
|||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard
|
||||
|
||||
From 1786bc697d34af944e29437ce44337b0eb8b6799 Mon Sep 17 00:00:00 2001
|
||||
From: Kyle McMartin <kyle@dreadnought.bos.jkkm.org>
|
||||
From: Dave Anderson <anderson@redhat.com>
|
||||
Date: Tue, 26 Nov 2013 12:42:46 -0500
|
||||
Subject: [PATCH] crash-driver
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard
|
||||
---
|
||||
arch/arm/include/asm/crash.h | 6 ++
|
||||
arch/arm64/include/asm/crash.h | 6 ++
|
||||
arch/ia64/include/asm/crash.h | 90 +++++++++++++++++++++++++++
|
||||
arch/ia64/kernel/ia64_ksyms.c | 3 +
|
||||
arch/powerpc/include/asm/crash.h | 6 ++
|
||||
arch/s390/include/asm/crash.h | 60 ++++++++++++++++++
|
||||
arch/s390/mm/maccess.c | 2 +
|
||||
arch/x86/include/asm/crash.h | 6 ++
|
||||
drivers/char/Kconfig | 3 +
|
||||
drivers/char/Makefile | 2 +
|
||||
drivers/char/crash.c | 128 +++++++++++++++++++++++++++++++++++++++
|
||||
include/asm-generic/crash.h | 72 ++++++++++++++++++++++
|
||||
arch/arm/include/asm/crash-driver.h | 6 ++
|
||||
arch/arm64/include/asm/crash-driver.h | 6 ++
|
||||
arch/ia64/include/asm/crash-driver.h | 90 ++++++++++++++++++++++
|
||||
arch/ia64/kernel/ia64_ksyms.c | 3 +
|
||||
arch/powerpc/include/asm/crash-driver.h | 6 ++
|
||||
arch/s390/include/asm/crash-driver.h | 60 +++++++++++++++
|
||||
arch/s390/mm/maccess.c | 2 +
|
||||
arch/x86/include/asm/crash-driver.h | 6 ++
|
||||
drivers/char/Kconfig | 3 +
|
||||
drivers/char/Makefile | 2 +
|
||||
drivers/char/crash.c | 128 ++++++++++++++++++++++++++++++++
|
||||
include/asm-generic/crash-driver.h | 72 ++++++++++++++++++
|
||||
12 files changed, 384 insertions(+)
|
||||
create mode 100644 arch/arm/include/asm/crash.h
|
||||
create mode 100644 arch/arm64/include/asm/crash.h
|
||||
create mode 100644 arch/ia64/include/asm/crash.h
|
||||
create mode 100644 arch/powerpc/include/asm/crash.h
|
||||
create mode 100644 arch/s390/include/asm/crash.h
|
||||
create mode 100644 arch/x86/include/asm/crash.h
|
||||
create mode 100644 arch/arm/include/asm/crash-driver.h
|
||||
create mode 100644 arch/arm64/include/asm/crash-driver.h
|
||||
create mode 100644 arch/ia64/include/asm/crash-driver.h
|
||||
create mode 100644 arch/powerpc/include/asm/crash-driver.h
|
||||
create mode 100644 arch/s390/include/asm/crash-driver.h
|
||||
create mode 100644 arch/x86/include/asm/crash-driver.h
|
||||
create mode 100644 drivers/char/crash.c
|
||||
create mode 100644 include/asm-generic/crash.h
|
||||
create mode 100644 include/asm-generic/crash-driver.h
|
||||
|
||||
diff --git a/arch/arm/include/asm/crash.h b/arch/arm/include/asm/crash.h
|
||||
diff --git a/arch/arm/include/asm/crash-driver.h b/arch/arm/include/asm/crash-driver.h
|
||||
new file mode 100644
|
||||
index 0000000..1d2e537
|
||||
index 000000000000..06e7ae916601
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/include/asm/crash.h
|
||||
+++ b/arch/arm/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,6 @@
|
||||
+#ifndef _ARM_CRASH_H
|
||||
+#define _ARM_CRASH_H
|
||||
+
|
||||
+#include <asm-generic/crash.h>
|
||||
+#include <asm-generic/crash-driver.h>
|
||||
+
|
||||
+#endif /* _ARM_CRASH_H */
|
||||
diff --git a/arch/arm64/include/asm/crash.h b/arch/arm64/include/asm/crash.h
|
||||
diff --git a/arch/arm64/include/asm/crash-driver.h b/arch/arm64/include/asm/crash-driver.h
|
||||
new file mode 100644
|
||||
index 0000000..a7fcc28
|
||||
index 000000000000..43b26da0c5d6
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/include/asm/crash.h
|
||||
+++ b/arch/arm64/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,6 @@
|
||||
+#ifndef _ARM64_CRASH_H
|
||||
+#define _ARM64_CRASH_H
|
||||
+
|
||||
+#include <asm-generic/crash.h>
|
||||
+#include <asm-generic/crash-driver.h>
|
||||
+
|
||||
+#endif /* _ARM64_CRASH_H */
|
||||
diff --git a/arch/ia64/include/asm/crash.h b/arch/ia64/include/asm/crash.h
|
||||
diff --git a/arch/ia64/include/asm/crash-driver.h b/arch/ia64/include/asm/crash-driver.h
|
||||
new file mode 100644
|
||||
index 0000000..28bd955
|
||||
index 000000000000..404bcb93c112
|
||||
--- /dev/null
|
||||
+++ b/arch/ia64/include/asm/crash.h
|
||||
+++ b/arch/ia64/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,90 @@
|
||||
+#ifndef _ASM_IA64_CRASH_H
|
||||
+#define _ASM_IA64_CRASH_H
|
||||
+
|
||||
+/*
|
||||
+ * linux/include/asm-ia64/crash.h
|
||||
+ * linux/include/asm-ia64/crash-driver.h
|
||||
+ *
|
||||
+ * Copyright (c) 2004 Red Hat, Inc. All rights reserved.
|
||||
+ *
|
||||
|
@ -150,7 +148,7 @@ index 0000000..28bd955
|
|||
+
|
||||
+#endif /* _ASM_IA64_CRASH_H */
|
||||
diff --git a/arch/ia64/kernel/ia64_ksyms.c b/arch/ia64/kernel/ia64_ksyms.c
|
||||
index 5b7791d..aee4b87 100644
|
||||
index 5b7791dd3965..aee4b870c763 100644
|
||||
--- a/arch/ia64/kernel/ia64_ksyms.c
|
||||
+++ b/arch/ia64/kernel/ia64_ksyms.c
|
||||
@@ -84,6 +84,9 @@ EXPORT_SYMBOL(ia64_save_scratch_fpregs);
|
||||
|
@ -163,23 +161,23 @@ index 5b7791d..aee4b87 100644
|
|||
#if defined(CONFIG_IA64_ESI) || defined(CONFIG_IA64_ESI_MODULE)
|
||||
extern void esi_call_phys (void);
|
||||
EXPORT_SYMBOL_GPL(esi_call_phys);
|
||||
diff --git a/arch/powerpc/include/asm/crash.h b/arch/powerpc/include/asm/crash.h
|
||||
diff --git a/arch/powerpc/include/asm/crash-driver.h b/arch/powerpc/include/asm/crash-driver.h
|
||||
new file mode 100644
|
||||
index 0000000..daa8c4d
|
||||
index 000000000000..50092d965dc5
|
||||
--- /dev/null
|
||||
+++ b/arch/powerpc/include/asm/crash.h
|
||||
+++ b/arch/powerpc/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,6 @@
|
||||
+#ifndef _PPC64_CRASH_H
|
||||
+#define _PPC64_CRASH_H
|
||||
+
|
||||
+#include <asm-generic/crash.h>
|
||||
+#include <asm-generic/crash-driver.h>
|
||||
+
|
||||
+#endif /* _PPC64_CRASH_H */
|
||||
diff --git a/arch/s390/include/asm/crash.h b/arch/s390/include/asm/crash.h
|
||||
diff --git a/arch/s390/include/asm/crash-driver.h b/arch/s390/include/asm/crash-driver.h
|
||||
new file mode 100644
|
||||
index 0000000..552be5e
|
||||
index 000000000000..552be5e2c571
|
||||
--- /dev/null
|
||||
+++ b/arch/s390/include/asm/crash.h
|
||||
+++ b/arch/s390/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,60 @@
|
||||
+#ifndef _S390_CRASH_H
|
||||
+#define _S390_CRASH_H
|
||||
|
@ -242,10 +240,10 @@ index 0000000..552be5e
|
|||
+
|
||||
+#endif /* _S390_CRASH_H */
|
||||
diff --git a/arch/s390/mm/maccess.c b/arch/s390/mm/maccess.c
|
||||
index d1e0e0c..a2be459 100644
|
||||
index 2eb34bdfc613..11ce5c98462c 100644
|
||||
--- a/arch/s390/mm/maccess.c
|
||||
+++ b/arch/s390/mm/maccess.c
|
||||
@@ -219,6 +219,7 @@ void *xlate_dev_mem_ptr(unsigned long addr)
|
||||
@@ -193,6 +193,7 @@ void *xlate_dev_mem_ptr(phys_addr_t addr)
|
||||
put_online_cpus();
|
||||
return bounce;
|
||||
}
|
||||
|
@ -253,25 +251,25 @@ index d1e0e0c..a2be459 100644
|
|||
|
||||
/*
|
||||
* Free converted buffer for /dev/mem access (if necessary)
|
||||
@@ -228,3 +229,4 @@ void unxlate_dev_mem_ptr(unsigned long addr, void *buf)
|
||||
@@ -202,3 +203,4 @@ void unxlate_dev_mem_ptr(phys_addr_t addr, void *buf)
|
||||
if ((void *) addr != buf)
|
||||
free_page((unsigned long) buf);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(unxlate_dev_mem_ptr);
|
||||
diff --git a/arch/x86/include/asm/crash.h b/arch/x86/include/asm/crash.h
|
||||
diff --git a/arch/x86/include/asm/crash-driver.h b/arch/x86/include/asm/crash-driver.h
|
||||
new file mode 100644
|
||||
index 0000000..27a4156
|
||||
index 000000000000..fd4736ec99f5
|
||||
--- /dev/null
|
||||
+++ b/arch/x86/include/asm/crash.h
|
||||
+++ b/arch/x86/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,6 @@
|
||||
+#ifndef _X86_CRASH_H
|
||||
+#define _X86_CRASH_H
|
||||
+
|
||||
+#include <asm-generic/crash.h>
|
||||
+#include <asm-generic/crash-driver.h>
|
||||
+
|
||||
+#endif /* _X86_CRASH_H */
|
||||
diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
|
||||
index fa3243d..83643e5b 100644
|
||||
index efefd12a0f7b..6a318132b7ee 100644
|
||||
--- a/drivers/char/Kconfig
|
||||
+++ b/drivers/char/Kconfig
|
||||
@@ -4,6 +4,9 @@
|
||||
|
@ -285,18 +283,18 @@ index fa3243d..83643e5b 100644
|
|||
|
||||
config DEVKMEM
|
||||
diff --git a/drivers/char/Makefile b/drivers/char/Makefile
|
||||
index 7ff1d0d..3ed67af 100644
|
||||
index d06cde26031b..0832636fd9bc 100644
|
||||
--- a/drivers/char/Makefile
|
||||
+++ b/drivers/char/Makefile
|
||||
@@ -62,3 +62,5 @@ obj-$(CONFIG_JS_RTC) += js-rtc.o
|
||||
js-rtc-y = rtc.o
|
||||
@@ -62,3 +62,5 @@ js-rtc-y = rtc.o
|
||||
|
||||
obj-$(CONFIG_TILE_SROM) += tile-srom.o
|
||||
obj-$(CONFIG_XILLYBUS) += xillybus/
|
||||
+
|
||||
+obj-$(CONFIG_CRASH) += crash.o
|
||||
diff --git a/drivers/char/crash.c b/drivers/char/crash.c
|
||||
new file mode 100644
|
||||
index 0000000..a142bb3
|
||||
index 000000000000..085378a1d539
|
||||
--- /dev/null
|
||||
+++ b/drivers/char/crash.c
|
||||
@@ -0,0 +1,128 @@
|
||||
|
@ -332,7 +330,7 @@ index 0000000..a142bb3
|
|||
+#include <asm/io.h>
|
||||
+#include <asm/uaccess.h>
|
||||
+#include <asm/types.h>
|
||||
+#include <asm/crash.h>
|
||||
+#include <asm/crash-driver.h>
|
||||
+
|
||||
+#define CRASH_VERSION "1.0"
|
||||
+
|
||||
|
@ -428,17 +426,17 @@ index 0000000..a142bb3
|
|||
+module_exit(crash_cleanup_module);
|
||||
+
|
||||
+MODULE_LICENSE("GPL");
|
||||
diff --git a/include/asm-generic/crash.h b/include/asm-generic/crash.h
|
||||
diff --git a/include/asm-generic/crash-driver.h b/include/asm-generic/crash-driver.h
|
||||
new file mode 100644
|
||||
index 0000000..8a0a69a
|
||||
index 000000000000..25ab9869d566
|
||||
--- /dev/null
|
||||
+++ b/include/asm-generic/crash.h
|
||||
+++ b/include/asm-generic/crash-driver.h
|
||||
@@ -0,0 +1,72 @@
|
||||
+#ifndef __CRASH_H__
|
||||
+#define __CRASH_H__
|
||||
+
|
||||
+/*
|
||||
+ * include/linux/crash.h
|
||||
+ * include/linux/crash-driver.h
|
||||
+ *
|
||||
+ * Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
||||
+ *
|
||||
|
@ -507,5 +505,5 @@ index 0000000..8a0a69a
|
|||
+
|
||||
+#endif /* __CRASH_H__ */
|
||||
--
|
||||
1.8.3.1
|
||||
2.1.0
|
||||
|
||||
|
|
|
@ -1,11 +1,18 @@
|
|||
From: "kernel-team@fedoraproject.org" <kernel-team@fedoraproject.org>
|
||||
Date: Wed, 30 Jan 2013 10:55:31 -0500
|
||||
Subject: [PATCH] criu: no expert
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard
|
||||
---
|
||||
init/Kconfig | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/init/Kconfig b/init/Kconfig
|
||||
index be8b7f5..7461760 100644
|
||||
index dac9ed0f01f7..31a29fe7c555 100644
|
||||
--- a/init/Kconfig
|
||||
+++ b/init/Kconfig
|
||||
@@ -989,7 +989,7 @@ config DEBUG_BLK_CGROUP
|
||||
@@ -1128,7 +1128,7 @@ config DEBUG_BLK_CGROUP
|
||||
endif # CGROUPS
|
||||
|
||||
config CHECKPOINT_RESTORE
|
||||
|
@ -14,7 +21,7 @@ index be8b7f5..7461760 100644
|
|||
default n
|
||||
help
|
||||
Enables additional kernel features in a sake of checkpoint/restore.
|
||||
@@ -1000,7 +1000,7 @@ config CHECKPOINT_RESTORE
|
||||
@@ -1139,7 +1139,7 @@ config CHECKPOINT_RESTORE
|
||||
If unsure, say N here.
|
||||
|
||||
menuconfig NAMESPACES
|
||||
|
@ -23,3 +30,6 @@ index be8b7f5..7461760 100644
|
|||
default !EXPERT
|
||||
help
|
||||
Provides the way to make tasks work with different objects using
|
||||
--
|
||||
2.1.0
|
||||
|
||||
|
|
|
@ -1,24 +1,23 @@
|
|||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard
|
||||
|
||||
From 4ff58b642f80dedb20533978123d89b5ac9b1ed5 Mon Sep 17 00:00:00 2001
|
||||
From: Kyle McMartin <kyle@phobos.i.jkkm.org>
|
||||
Date: Tue, 30 Mar 2010 00:04:29 -0400
|
||||
Subject: die-floppy-die
|
||||
Subject: [PATCH] die-floppy-die
|
||||
|
||||
Kill the floppy.ko pnp modalias. We were surviving just fine without
|
||||
autoloading floppy drivers, tyvm.
|
||||
|
||||
Please feel free to register all complaints in the wastepaper bin.
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard
|
||||
---
|
||||
drivers/block/floppy.c | 3 +--
|
||||
1 files changed, 1 insertions(+), 2 deletions(-)
|
||||
drivers/block/floppy.c | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
|
||||
index 90c4038..f4a0b90 100644
|
||||
index 56d46ffb08e1..1c8db250df88 100644
|
||||
--- a/drivers/block/floppy.c
|
||||
+++ b/drivers/block/floppy.c
|
||||
@@ -4619,8 +4619,7 @@ static const struct pnp_device_id floppy_pnpids[] = {
|
||||
@@ -4634,8 +4634,7 @@ static const struct pnp_device_id floppy_pnpids[] = {
|
||||
{"PNP0700", 0},
|
||||
{}
|
||||
};
|
||||
|
@ -29,5 +28,5 @@ index 90c4038..f4a0b90 100644
|
|||
#else
|
||||
|
||||
--
|
||||
1.7.0.1
|
||||
2.1.0
|
||||
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
Bugzilla: N/A
|
||||
Upstream-status: http://lkml.indiana.edu/hypermail/linux/kernel/1005.0/00938.html (and pinged on Dec 17, 2013)
|
||||
|
||||
From 2a79554c864ac58fa2ad982f0fcee2cc2aa33eb5 Mon Sep 17 00:00:00 2001
|
||||
From: Bastien Nocera <hadess@hadess.net>
|
||||
Date: Thu, 20 May 2010 10:30:31 -0400
|
||||
Subject: Disable i8042 checks on Intel Apple Macs
|
||||
Subject: [PATCH] disable i8042 check on apple mac
|
||||
|
||||
As those computers never had any i8042 controllers, and the
|
||||
current lookup code could potentially lock up/hang/wait for
|
||||
|
@ -12,16 +8,19 @@ timeout for long periods of time.
|
|||
|
||||
Fixes intermittent hangs on boot on a MacbookAir1,1
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: http://lkml.indiana.edu/hypermail/linux/kernel/1005.0/00938.html (and pinged on Dec 17, 2013)
|
||||
|
||||
Signed-off-by: Bastien Nocera <hadess@hadess.net>
|
||||
---
|
||||
drivers/input/serio/i8042.c | 22 ++++++++++++++++++++++
|
||||
1 files changed, 22 insertions(+), 0 deletions(-)
|
||||
drivers/input/serio/i8042.c | 22 ++++++++++++++++++++++
|
||||
1 file changed, 22 insertions(+)
|
||||
|
||||
diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c
|
||||
index 6440a8f..4d7cf98 100644
|
||||
index bfb0b2280df0..06b10fe7e65b 100644
|
||||
--- a/drivers/input/serio/i8042.c
|
||||
+++ b/drivers/input/serio/i8042.c
|
||||
@@ -1451,6 +1451,22 @@ static struct platform_driver i8042_driver = {
|
||||
@@ -1484,6 +1484,22 @@ static struct platform_driver i8042_driver = {
|
||||
.shutdown = i8042_shutdown,
|
||||
};
|
||||
|
||||
|
@ -44,7 +43,7 @@ index 6440a8f..4d7cf98 100644
|
|||
static int __init i8042_init(void)
|
||||
{
|
||||
struct platform_device *pdev;
|
||||
@@ -1458,6 +1474,12 @@ static int __init i8042_init(void)
|
||||
@@ -1491,6 +1507,12 @@ static int __init i8042_init(void)
|
||||
|
||||
dbg_init();
|
||||
|
||||
|
@ -58,5 +57,5 @@ index 6440a8f..4d7cf98 100644
|
|||
if (err)
|
||||
return err;
|
||||
--
|
||||
1.7.0.1
|
||||
2.1.0
|
||||
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
|
||||
index ee21fa9..19ee413 100644
|
||||
--- a/tools/perf/config/Makefile
|
||||
+++ b/tools/perf/config/Makefile
|
||||
@@ -34,6 +34,10 @@ ifeq ($(ARCH),arm)
|
||||
LIBUNWIND_LIBS = -lunwind -lunwind-arm
|
||||
endif
|
||||
|
||||
+ifneq ($(ARCH),x86)
|
||||
+ NO_LIBDW_DWARF_UNWIND := 1
|
||||
+endif
|
||||
+
|
||||
ifeq ($(LIBUNWIND_LIBS),)
|
||||
NO_LIBUNWIND := 1
|
||||
else
|
|
@ -0,0 +1,31 @@
|
|||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Thu, 29 Jan 2015 14:03:17 -0500
|
||||
Subject: [PATCH] drm/i915: Disable verbose state checks
|
||||
|
||||
For stable releases, we disable the verbose state checks in the i915 driver.
|
||||
They are mostly for development purposes and they fill the retrace server
|
||||
to the point of uselessness. We leave these enabled in rawhide kernels,
|
||||
where they are both more likely to get attention from upstream and more
|
||||
likely to be fixable.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
drivers/gpu/drm/i915/i915_params.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c
|
||||
index db07153b693f..c049fe3fbdff 100644
|
||||
--- a/drivers/gpu/drm/i915/i915_params.c
|
||||
+++ b/drivers/gpu/drm/i915/i915_params.c
|
||||
@@ -51,7 +51,7 @@ struct i915_params i915 __read_mostly = {
|
||||
.disable_vtd_wa = 0,
|
||||
.use_mmio_flip = 0,
|
||||
.mmio_debug = 0,
|
||||
- .verbose_state_checks = 1,
|
||||
+ .verbose_state_checks = 0,
|
||||
};
|
||||
|
||||
module_param_named(modeset, i915.modeset, int, 0400);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,20 +1,31 @@
|
|||
Bugzilla: 1027037 1028785
|
||||
Upstream-status: http://lists.freedesktop.org/archives/intel-gfx/2013-November/035948.html
|
||||
From: Adam Jackson <ajax@redhat.com>
|
||||
Date: Wed, 13 Nov 2013 10:17:24 -0500
|
||||
Subject: [PATCH] drm/i915: hush check crtc state
|
||||
|
||||
This is _by far_ the most common backtrace for i915 on retrace.fp.o, and
|
||||
it's mostly useless noise. There's not enough context when it's generated
|
||||
to know if something actually went wrong. Downgrade the message to
|
||||
KMS debugging so we can still get it if we want it.
|
||||
|
||||
diff -up linux-3.13.0-0.rc0.git2.1.fc21.x86_64/drivers/gpu/drm/i915/intel_display.c.jx linux-3.13.0-0.rc0.git2.1.fc21.x86_64/drivers/gpu/drm/i915/intel_display.c
|
||||
--- linux-3.13.0-0.rc0.git2.1.fc21.x86_64/drivers/gpu/drm/i915/intel_display.c.jx 2013-11-03 18:41:51.000000000 -0500
|
||||
+++ linux-3.13.0-0.rc0.git2.1.fc21.x86_64/drivers/gpu/drm/i915/intel_display.c 2013-11-13 10:12:05.781301624 -0500
|
||||
@@ -8803,7 +8803,7 @@ check_crtc_state(struct drm_device *dev)
|
||||
Bugzilla: 1027037 1028785
|
||||
Upstream-status: http://lists.freedesktop.org/archives/intel-gfx/2013-November/035948.html
|
||||
---
|
||||
drivers/gpu/drm/i915/intel_display.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
|
||||
index 33d4d37fd614..6865ef2d3476 100644
|
||||
--- a/drivers/gpu/drm/i915/intel_display.c
|
||||
+++ b/drivers/gpu/drm/i915/intel_display.c
|
||||
@@ -10873,7 +10873,7 @@ check_crtc_state(struct drm_device *dev)
|
||||
|
||||
if (active &&
|
||||
!intel_pipe_config_compare(dev, &crtc->config, &pipe_config)) {
|
||||
- WARN(1, "pipe state doesn't match!\n");
|
||||
- I915_STATE_WARN(1, "pipe state doesn't match!\n");
|
||||
+ DRM_DEBUG_KMS("pipe state doesn't match!\n");
|
||||
intel_dump_pipe_config(crtc, &pipe_config,
|
||||
"[hw state]");
|
||||
intel_dump_pipe_config(crtc, &crtc->config,
|
||||
--
|
||||
2.1.0
|
||||
|
||||
|
|
|
@ -0,0 +1,561 @@
|
|||
From: Rob Clark <robdclark@gmail.com>
|
||||
Date: Mon, 15 Dec 2014 13:56:32 -0500
|
||||
Subject: [PATCH] drm/i915: tame the chattermouth (v2)
|
||||
|
||||
Many distro's have mechanism in place to collect and automatically file
|
||||
bugs for failed WARN()s. And since i915 has a lot of hw state sanity
|
||||
checks which result in WARN(), it generates quite a lot of noise which
|
||||
is somewhat disconcerting to the end user.
|
||||
|
||||
Separate out the internal hw-is-in-the-state-I-expected checks into
|
||||
I915_STATE_WARN()s and allow configuration via i915.verbose_checks module
|
||||
param about whether this will generate a full blown stacktrace or just
|
||||
DRM_ERROR(). The new moduleparam defaults to true, so by default there
|
||||
is no change in behavior. And even when disabled, you will still get
|
||||
an error message logged.
|
||||
|
||||
v2: paint the macro names blue, clarify that the default behavior
|
||||
remains the same as before
|
||||
|
||||
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
||||
Acked-by: Jani Nikula <jani.nikula@intel.com>
|
||||
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
||||
---
|
||||
drivers/gpu/drm/i915/i915_drv.h | 30 ++++++++
|
||||
drivers/gpu/drm/i915/i915_params.c | 5 ++
|
||||
drivers/gpu/drm/i915/intel_display.c | 134 +++++++++++++++++------------------
|
||||
drivers/gpu/drm/i915/intel_dp.c | 4 +-
|
||||
4 files changed, 104 insertions(+), 69 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
|
||||
index 44a3c385eea2..757f000a1d14 100644
|
||||
--- a/drivers/gpu/drm/i915/i915_drv.h
|
||||
+++ b/drivers/gpu/drm/i915/i915_drv.h
|
||||
@@ -60,6 +60,35 @@
|
||||
#undef WARN_ON
|
||||
#define WARN_ON(x) WARN(x, "WARN_ON(" #x ")")
|
||||
|
||||
+/* Use I915_STATE_WARN(x) and I915_STATE_WARN_ON() (rather than WARN() and
|
||||
+ * WARN_ON()) for hw state sanity checks to check for unexpected conditions
|
||||
+ * which may not necessarily be a user visible problem. This will either
|
||||
+ * WARN() or DRM_ERROR() depending on the verbose_checks moduleparam, to
|
||||
+ * enable distros and users to tailor their preferred amount of i915 abrt
|
||||
+ * spam.
|
||||
+ */
|
||||
+#define I915_STATE_WARN(condition, format...) ({ \
|
||||
+ int __ret_warn_on = !!(condition); \
|
||||
+ if (unlikely(__ret_warn_on)) { \
|
||||
+ if (i915.verbose_state_checks) \
|
||||
+ __WARN_printf(format); \
|
||||
+ else \
|
||||
+ DRM_ERROR(format); \
|
||||
+ } \
|
||||
+ unlikely(__ret_warn_on); \
|
||||
+})
|
||||
+
|
||||
+#define I915_STATE_WARN_ON(condition) ({ \
|
||||
+ int __ret_warn_on = !!(condition); \
|
||||
+ if (unlikely(__ret_warn_on)) { \
|
||||
+ if (i915.verbose_state_checks) \
|
||||
+ __WARN_printf("WARN_ON(" #condition ")\n"); \
|
||||
+ else \
|
||||
+ DRM_ERROR("WARN_ON(" #condition ")\n"); \
|
||||
+ } \
|
||||
+ unlikely(__ret_warn_on); \
|
||||
+})
|
||||
+
|
||||
enum pipe {
|
||||
INVALID_PIPE = -1,
|
||||
PIPE_A = 0,
|
||||
@@ -2316,6 +2345,7 @@ struct i915_params {
|
||||
bool disable_vtd_wa;
|
||||
int use_mmio_flip;
|
||||
bool mmio_debug;
|
||||
+ bool verbose_state_checks;
|
||||
};
|
||||
extern struct i915_params i915 __read_mostly;
|
||||
|
||||
diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c
|
||||
index c91cb2033cc5..db07153b693f 100644
|
||||
--- a/drivers/gpu/drm/i915/i915_params.c
|
||||
+++ b/drivers/gpu/drm/i915/i915_params.c
|
||||
@@ -51,6 +51,7 @@ struct i915_params i915 __read_mostly = {
|
||||
.disable_vtd_wa = 0,
|
||||
.use_mmio_flip = 0,
|
||||
.mmio_debug = 0,
|
||||
+ .verbose_state_checks = 1,
|
||||
};
|
||||
|
||||
module_param_named(modeset, i915.modeset, int, 0400);
|
||||
@@ -173,3 +174,7 @@ module_param_named(mmio_debug, i915.mmio_debug, bool, 0600);
|
||||
MODULE_PARM_DESC(mmio_debug,
|
||||
"Enable the MMIO debug code (default: false). This may negatively "
|
||||
"affect performance.");
|
||||
+
|
||||
+module_param_named(verbose_state_checks, i915.verbose_state_checks, bool, 0600);
|
||||
+MODULE_PARM_DESC(verbose_state_checks,
|
||||
+ "Enable verbose logs (ie. WARN_ON()) in case of unexpected hw state conditions.");
|
||||
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
|
||||
index 791b00e612d8..33d4d37fd614 100644
|
||||
--- a/drivers/gpu/drm/i915/intel_display.c
|
||||
+++ b/drivers/gpu/drm/i915/intel_display.c
|
||||
@@ -1024,7 +1024,7 @@ void assert_pll(struct drm_i915_private *dev_priv,
|
||||
reg = DPLL(pipe);
|
||||
val = I915_READ(reg);
|
||||
cur_state = !!(val & DPLL_VCO_ENABLE);
|
||||
- WARN(cur_state != state,
|
||||
+ I915_STATE_WARN(cur_state != state,
|
||||
"PLL state assertion failure (expected %s, current %s)\n",
|
||||
state_string(state), state_string(cur_state));
|
||||
}
|
||||
@@ -1040,7 +1040,7 @@ static void assert_dsi_pll(struct drm_i915_private *dev_priv, bool state)
|
||||
mutex_unlock(&dev_priv->dpio_lock);
|
||||
|
||||
cur_state = val & DSI_PLL_VCO_EN;
|
||||
- WARN(cur_state != state,
|
||||
+ I915_STATE_WARN(cur_state != state,
|
||||
"DSI PLL state assertion failure (expected %s, current %s)\n",
|
||||
state_string(state), state_string(cur_state));
|
||||
}
|
||||
@@ -1071,7 +1071,7 @@ void assert_shared_dpll(struct drm_i915_private *dev_priv,
|
||||
return;
|
||||
|
||||
cur_state = pll->get_hw_state(dev_priv, pll, &hw_state);
|
||||
- WARN(cur_state != state,
|
||||
+ I915_STATE_WARN(cur_state != state,
|
||||
"%s assertion failure (expected %s, current %s)\n",
|
||||
pll->name, state_string(state), state_string(cur_state));
|
||||
}
|
||||
@@ -1095,7 +1095,7 @@ static void assert_fdi_tx(struct drm_i915_private *dev_priv,
|
||||
val = I915_READ(reg);
|
||||
cur_state = !!(val & FDI_TX_ENABLE);
|
||||
}
|
||||
- WARN(cur_state != state,
|
||||
+ I915_STATE_WARN(cur_state != state,
|
||||
"FDI TX state assertion failure (expected %s, current %s)\n",
|
||||
state_string(state), state_string(cur_state));
|
||||
}
|
||||
@@ -1112,7 +1112,7 @@ static void assert_fdi_rx(struct drm_i915_private *dev_priv,
|
||||
reg = FDI_RX_CTL(pipe);
|
||||
val = I915_READ(reg);
|
||||
cur_state = !!(val & FDI_RX_ENABLE);
|
||||
- WARN(cur_state != state,
|
||||
+ I915_STATE_WARN(cur_state != state,
|
||||
"FDI RX state assertion failure (expected %s, current %s)\n",
|
||||
state_string(state), state_string(cur_state));
|
||||
}
|
||||
@@ -1135,7 +1135,7 @@ static void assert_fdi_tx_pll_enabled(struct drm_i915_private *dev_priv,
|
||||
|
||||
reg = FDI_TX_CTL(pipe);
|
||||
val = I915_READ(reg);
|
||||
- WARN(!(val & FDI_TX_PLL_ENABLE), "FDI TX PLL assertion failure, should be active but is disabled\n");
|
||||
+ I915_STATE_WARN(!(val & FDI_TX_PLL_ENABLE), "FDI TX PLL assertion failure, should be active but is disabled\n");
|
||||
}
|
||||
|
||||
void assert_fdi_rx_pll(struct drm_i915_private *dev_priv,
|
||||
@@ -1148,7 +1148,7 @@ void assert_fdi_rx_pll(struct drm_i915_private *dev_priv,
|
||||
reg = FDI_RX_CTL(pipe);
|
||||
val = I915_READ(reg);
|
||||
cur_state = !!(val & FDI_RX_PLL_ENABLE);
|
||||
- WARN(cur_state != state,
|
||||
+ I915_STATE_WARN(cur_state != state,
|
||||
"FDI RX PLL assertion failure (expected %s, current %s)\n",
|
||||
state_string(state), state_string(cur_state));
|
||||
}
|
||||
@@ -1190,7 +1190,7 @@ void assert_panel_unlocked(struct drm_i915_private *dev_priv,
|
||||
((val & PANEL_UNLOCK_MASK) == PANEL_UNLOCK_REGS))
|
||||
locked = false;
|
||||
|
||||
- WARN(panel_pipe == pipe && locked,
|
||||
+ I915_STATE_WARN(panel_pipe == pipe && locked,
|
||||
"panel assertion failure, pipe %c regs locked\n",
|
||||
pipe_name(pipe));
|
||||
}
|
||||
@@ -1206,7 +1206,7 @@ static void assert_cursor(struct drm_i915_private *dev_priv,
|
||||
else
|
||||
cur_state = I915_READ(CURCNTR(pipe)) & CURSOR_MODE;
|
||||
|
||||
- WARN(cur_state != state,
|
||||
+ I915_STATE_WARN(cur_state != state,
|
||||
"cursor on pipe %c assertion failure (expected %s, current %s)\n",
|
||||
pipe_name(pipe), state_string(state), state_string(cur_state));
|
||||
}
|
||||
@@ -1236,7 +1236,7 @@ void assert_pipe(struct drm_i915_private *dev_priv,
|
||||
cur_state = !!(val & PIPECONF_ENABLE);
|
||||
}
|
||||
|
||||
- WARN(cur_state != state,
|
||||
+ I915_STATE_WARN(cur_state != state,
|
||||
"pipe %c assertion failure (expected %s, current %s)\n",
|
||||
pipe_name(pipe), state_string(state), state_string(cur_state));
|
||||
}
|
||||
@@ -1251,7 +1251,7 @@ static void assert_plane(struct drm_i915_private *dev_priv,
|
||||
reg = DSPCNTR(plane);
|
||||
val = I915_READ(reg);
|
||||
cur_state = !!(val & DISPLAY_PLANE_ENABLE);
|
||||
- WARN(cur_state != state,
|
||||
+ I915_STATE_WARN(cur_state != state,
|
||||
"plane %c assertion failure (expected %s, current %s)\n",
|
||||
plane_name(plane), state_string(state), state_string(cur_state));
|
||||
}
|
||||
@@ -1271,7 +1271,7 @@ static void assert_planes_disabled(struct drm_i915_private *dev_priv,
|
||||
if (INTEL_INFO(dev)->gen >= 4) {
|
||||
reg = DSPCNTR(pipe);
|
||||
val = I915_READ(reg);
|
||||
- WARN(val & DISPLAY_PLANE_ENABLE,
|
||||
+ I915_STATE_WARN(val & DISPLAY_PLANE_ENABLE,
|
||||
"plane %c assertion failure, should be disabled but not\n",
|
||||
plane_name(pipe));
|
||||
return;
|
||||
@@ -1283,7 +1283,7 @@ static void assert_planes_disabled(struct drm_i915_private *dev_priv,
|
||||
val = I915_READ(reg);
|
||||
cur_pipe = (val & DISPPLANE_SEL_PIPE_MASK) >>
|
||||
DISPPLANE_SEL_PIPE_SHIFT;
|
||||
- WARN((val & DISPLAY_PLANE_ENABLE) && pipe == cur_pipe,
|
||||
+ I915_STATE_WARN((val & DISPLAY_PLANE_ENABLE) && pipe == cur_pipe,
|
||||
"plane %c assertion failure, should be off on pipe %c but is still active\n",
|
||||
plane_name(i), pipe_name(pipe));
|
||||
}
|
||||
@@ -1299,7 +1299,7 @@ static void assert_sprites_disabled(struct drm_i915_private *dev_priv,
|
||||
if (INTEL_INFO(dev)->gen >= 9) {
|
||||
for_each_sprite(pipe, sprite) {
|
||||
val = I915_READ(PLANE_CTL(pipe, sprite));
|
||||
- WARN(val & PLANE_CTL_ENABLE,
|
||||
+ I915_STATE_WARN(val & PLANE_CTL_ENABLE,
|
||||
"plane %d assertion failure, should be off on pipe %c but is still active\n",
|
||||
sprite, pipe_name(pipe));
|
||||
}
|
||||
@@ -1307,20 +1307,20 @@ static void assert_sprites_disabled(struct drm_i915_private *dev_priv,
|
||||
for_each_sprite(pipe, sprite) {
|
||||
reg = SPCNTR(pipe, sprite);
|
||||
val = I915_READ(reg);
|
||||
- WARN(val & SP_ENABLE,
|
||||
+ I915_STATE_WARN(val & SP_ENABLE,
|
||||
"sprite %c assertion failure, should be off on pipe %c but is still active\n",
|
||||
sprite_name(pipe, sprite), pipe_name(pipe));
|
||||
}
|
||||
} else if (INTEL_INFO(dev)->gen >= 7) {
|
||||
reg = SPRCTL(pipe);
|
||||
val = I915_READ(reg);
|
||||
- WARN(val & SPRITE_ENABLE,
|
||||
+ I915_STATE_WARN(val & SPRITE_ENABLE,
|
||||
"sprite %c assertion failure, should be off on pipe %c but is still active\n",
|
||||
plane_name(pipe), pipe_name(pipe));
|
||||
} else if (INTEL_INFO(dev)->gen >= 5) {
|
||||
reg = DVSCNTR(pipe);
|
||||
val = I915_READ(reg);
|
||||
- WARN(val & DVS_ENABLE,
|
||||
+ I915_STATE_WARN(val & DVS_ENABLE,
|
||||
"sprite %c assertion failure, should be off on pipe %c but is still active\n",
|
||||
plane_name(pipe), pipe_name(pipe));
|
||||
}
|
||||
@@ -1328,7 +1328,7 @@ static void assert_sprites_disabled(struct drm_i915_private *dev_priv,
|
||||
|
||||
static void assert_vblank_disabled(struct drm_crtc *crtc)
|
||||
{
|
||||
- if (WARN_ON(drm_crtc_vblank_get(crtc) == 0))
|
||||
+ if (I915_STATE_WARN_ON(drm_crtc_vblank_get(crtc) == 0))
|
||||
drm_crtc_vblank_put(crtc);
|
||||
}
|
||||
|
||||
@@ -1337,12 +1337,12 @@ static void ibx_assert_pch_refclk_enabled(struct drm_i915_private *dev_priv)
|
||||
u32 val;
|
||||
bool enabled;
|
||||
|
||||
- WARN_ON(!(HAS_PCH_IBX(dev_priv->dev) || HAS_PCH_CPT(dev_priv->dev)));
|
||||
+ I915_STATE_WARN_ON(!(HAS_PCH_IBX(dev_priv->dev) || HAS_PCH_CPT(dev_priv->dev)));
|
||||
|
||||
val = I915_READ(PCH_DREF_CONTROL);
|
||||
enabled = !!(val & (DREF_SSC_SOURCE_MASK | DREF_NONSPREAD_SOURCE_MASK |
|
||||
DREF_SUPERSPREAD_SOURCE_MASK));
|
||||
- WARN(!enabled, "PCH refclk assertion failure, should be active but is disabled\n");
|
||||
+ I915_STATE_WARN(!enabled, "PCH refclk assertion failure, should be active but is disabled\n");
|
||||
}
|
||||
|
||||
static void assert_pch_transcoder_disabled(struct drm_i915_private *dev_priv,
|
||||
@@ -1355,7 +1355,7 @@ static void assert_pch_transcoder_disabled(struct drm_i915_private *dev_priv,
|
||||
reg = PCH_TRANSCONF(pipe);
|
||||
val = I915_READ(reg);
|
||||
enabled = !!(val & TRANS_ENABLE);
|
||||
- WARN(enabled,
|
||||
+ I915_STATE_WARN(enabled,
|
||||
"transcoder assertion failed, should be off on pipe %c but is still active\n",
|
||||
pipe_name(pipe));
|
||||
}
|
||||
@@ -1435,11 +1435,11 @@ static void assert_pch_dp_disabled(struct drm_i915_private *dev_priv,
|
||||
enum pipe pipe, int reg, u32 port_sel)
|
||||
{
|
||||
u32 val = I915_READ(reg);
|
||||
- WARN(dp_pipe_enabled(dev_priv, pipe, port_sel, val),
|
||||
+ I915_STATE_WARN(dp_pipe_enabled(dev_priv, pipe, port_sel, val),
|
||||
"PCH DP (0x%08x) enabled on transcoder %c, should be disabled\n",
|
||||
reg, pipe_name(pipe));
|
||||
|
||||
- WARN(HAS_PCH_IBX(dev_priv->dev) && (val & DP_PORT_EN) == 0
|
||||
+ I915_STATE_WARN(HAS_PCH_IBX(dev_priv->dev) && (val & DP_PORT_EN) == 0
|
||||
&& (val & DP_PIPEB_SELECT),
|
||||
"IBX PCH dp port still using transcoder B\n");
|
||||
}
|
||||
@@ -1448,11 +1448,11 @@ static void assert_pch_hdmi_disabled(struct drm_i915_private *dev_priv,
|
||||
enum pipe pipe, int reg)
|
||||
{
|
||||
u32 val = I915_READ(reg);
|
||||
- WARN(hdmi_pipe_enabled(dev_priv, pipe, val),
|
||||
+ I915_STATE_WARN(hdmi_pipe_enabled(dev_priv, pipe, val),
|
||||
"PCH HDMI (0x%08x) enabled on transcoder %c, should be disabled\n",
|
||||
reg, pipe_name(pipe));
|
||||
|
||||
- WARN(HAS_PCH_IBX(dev_priv->dev) && (val & SDVO_ENABLE) == 0
|
||||
+ I915_STATE_WARN(HAS_PCH_IBX(dev_priv->dev) && (val & SDVO_ENABLE) == 0
|
||||
&& (val & SDVO_PIPE_B_SELECT),
|
||||
"IBX PCH hdmi port still using transcoder B\n");
|
||||
}
|
||||
@@ -1469,13 +1469,13 @@ static void assert_pch_ports_disabled(struct drm_i915_private *dev_priv,
|
||||
|
||||
reg = PCH_ADPA;
|
||||
val = I915_READ(reg);
|
||||
- WARN(adpa_pipe_enabled(dev_priv, pipe, val),
|
||||
+ I915_STATE_WARN(adpa_pipe_enabled(dev_priv, pipe, val),
|
||||
"PCH VGA enabled on transcoder %c, should be disabled\n",
|
||||
pipe_name(pipe));
|
||||
|
||||
reg = PCH_LVDS;
|
||||
val = I915_READ(reg);
|
||||
- WARN(lvds_pipe_enabled(dev_priv, pipe, val),
|
||||
+ I915_STATE_WARN(lvds_pipe_enabled(dev_priv, pipe, val),
|
||||
"PCH LVDS enabled on transcoder %c, should be disabled\n",
|
||||
pipe_name(pipe));
|
||||
|
||||
@@ -5388,25 +5388,25 @@ static void intel_connector_check_state(struct intel_connector *connector)
|
||||
if (connector->mst_port)
|
||||
return;
|
||||
|
||||
- WARN(connector->base.dpms == DRM_MODE_DPMS_OFF,
|
||||
+ I915_STATE_WARN(connector->base.dpms == DRM_MODE_DPMS_OFF,
|
||||
"wrong connector dpms state\n");
|
||||
- WARN(connector->base.encoder != &encoder->base,
|
||||
+ I915_STATE_WARN(connector->base.encoder != &encoder->base,
|
||||
"active connector not linked to encoder\n");
|
||||
|
||||
if (encoder) {
|
||||
- WARN(!encoder->connectors_active,
|
||||
+ I915_STATE_WARN(!encoder->connectors_active,
|
||||
"encoder->connectors_active not set\n");
|
||||
|
||||
encoder_enabled = encoder->get_hw_state(encoder, &pipe);
|
||||
- WARN(!encoder_enabled, "encoder not enabled\n");
|
||||
- if (WARN_ON(!encoder->base.crtc))
|
||||
+ I915_STATE_WARN(!encoder_enabled, "encoder not enabled\n");
|
||||
+ if (I915_STATE_WARN_ON(!encoder->base.crtc))
|
||||
return;
|
||||
|
||||
crtc = encoder->base.crtc;
|
||||
|
||||
- WARN(!crtc->enabled, "crtc not enabled\n");
|
||||
- WARN(!to_intel_crtc(crtc)->active, "crtc not active\n");
|
||||
- WARN(pipe != to_intel_crtc(crtc)->pipe,
|
||||
+ I915_STATE_WARN(!crtc->enabled, "crtc not enabled\n");
|
||||
+ I915_STATE_WARN(!to_intel_crtc(crtc)->active, "crtc not active\n");
|
||||
+ I915_STATE_WARN(pipe != to_intel_crtc(crtc)->pipe,
|
||||
"encoder active on the wrong pipe\n");
|
||||
}
|
||||
}
|
||||
@@ -7814,24 +7814,24 @@ static void assert_can_disable_lcpll(struct drm_i915_private *dev_priv)
|
||||
struct intel_crtc *crtc;
|
||||
|
||||
for_each_intel_crtc(dev, crtc)
|
||||
- WARN(crtc->active, "CRTC for pipe %c enabled\n",
|
||||
+ I915_STATE_WARN(crtc->active, "CRTC for pipe %c enabled\n",
|
||||
pipe_name(crtc->pipe));
|
||||
|
||||
- WARN(I915_READ(HSW_PWR_WELL_DRIVER), "Power well on\n");
|
||||
- WARN(I915_READ(SPLL_CTL) & SPLL_PLL_ENABLE, "SPLL enabled\n");
|
||||
- WARN(I915_READ(WRPLL_CTL1) & WRPLL_PLL_ENABLE, "WRPLL1 enabled\n");
|
||||
- WARN(I915_READ(WRPLL_CTL2) & WRPLL_PLL_ENABLE, "WRPLL2 enabled\n");
|
||||
- WARN(I915_READ(PCH_PP_STATUS) & PP_ON, "Panel power on\n");
|
||||
- WARN(I915_READ(BLC_PWM_CPU_CTL2) & BLM_PWM_ENABLE,
|
||||
+ I915_STATE_WARN(I915_READ(HSW_PWR_WELL_DRIVER), "Power well on\n");
|
||||
+ I915_STATE_WARN(I915_READ(SPLL_CTL) & SPLL_PLL_ENABLE, "SPLL enabled\n");
|
||||
+ I915_STATE_WARN(I915_READ(WRPLL_CTL1) & WRPLL_PLL_ENABLE, "WRPLL1 enabled\n");
|
||||
+ I915_STATE_WARN(I915_READ(WRPLL_CTL2) & WRPLL_PLL_ENABLE, "WRPLL2 enabled\n");
|
||||
+ I915_STATE_WARN(I915_READ(PCH_PP_STATUS) & PP_ON, "Panel power on\n");
|
||||
+ I915_STATE_WARN(I915_READ(BLC_PWM_CPU_CTL2) & BLM_PWM_ENABLE,
|
||||
"CPU PWM1 enabled\n");
|
||||
if (IS_HASWELL(dev))
|
||||
- WARN(I915_READ(HSW_BLC_PWM2_CTL) & BLM_PWM_ENABLE,
|
||||
+ I915_STATE_WARN(I915_READ(HSW_BLC_PWM2_CTL) & BLM_PWM_ENABLE,
|
||||
"CPU PWM2 enabled\n");
|
||||
- WARN(I915_READ(BLC_PWM_PCH_CTL1) & BLM_PCH_PWM_ENABLE,
|
||||
+ I915_STATE_WARN(I915_READ(BLC_PWM_PCH_CTL1) & BLM_PCH_PWM_ENABLE,
|
||||
"PCH PWM1 enabled\n");
|
||||
- WARN(I915_READ(UTIL_PIN_CTL) & UTIL_PIN_ENABLE,
|
||||
+ I915_STATE_WARN(I915_READ(UTIL_PIN_CTL) & UTIL_PIN_ENABLE,
|
||||
"Utility pin enabled\n");
|
||||
- WARN(I915_READ(PCH_GTC_CTL) & PCH_GTC_ENABLE, "PCH GTC enabled\n");
|
||||
+ I915_STATE_WARN(I915_READ(PCH_GTC_CTL) & PCH_GTC_ENABLE, "PCH GTC enabled\n");
|
||||
|
||||
/*
|
||||
* In theory we can still leave IRQs enabled, as long as only the HPD
|
||||
@@ -7839,7 +7839,7 @@ static void assert_can_disable_lcpll(struct drm_i915_private *dev_priv)
|
||||
* gen-specific and since we only disable LCPLL after we fully disable
|
||||
* the interrupts, the check below should be enough.
|
||||
*/
|
||||
- WARN(intel_irqs_enabled(dev_priv), "IRQs enabled\n");
|
||||
+ I915_STATE_WARN(intel_irqs_enabled(dev_priv), "IRQs enabled\n");
|
||||
}
|
||||
|
||||
static uint32_t hsw_read_dcomp(struct drm_i915_private *dev_priv)
|
||||
@@ -10746,7 +10746,7 @@ check_connector_state(struct drm_device *dev)
|
||||
* ->get_hw_state callbacks. */
|
||||
intel_connector_check_state(connector);
|
||||
|
||||
- WARN(&connector->new_encoder->base != connector->base.encoder,
|
||||
+ I915_STATE_WARN(&connector->new_encoder->base != connector->base.encoder,
|
||||
"connector's staged encoder doesn't match current encoder\n");
|
||||
}
|
||||
}
|
||||
@@ -10766,9 +10766,9 @@ check_encoder_state(struct drm_device *dev)
|
||||
encoder->base.base.id,
|
||||
encoder->base.name);
|
||||
|
||||
- WARN(&encoder->new_crtc->base != encoder->base.crtc,
|
||||
+ I915_STATE_WARN(&encoder->new_crtc->base != encoder->base.crtc,
|
||||
"encoder's stage crtc doesn't match current crtc\n");
|
||||
- WARN(encoder->connectors_active && !encoder->base.crtc,
|
||||
+ I915_STATE_WARN(encoder->connectors_active && !encoder->base.crtc,
|
||||
"encoder's active_connectors set, but no crtc\n");
|
||||
|
||||
list_for_each_entry(connector, &dev->mode_config.connector_list,
|
||||
@@ -10787,19 +10787,19 @@ check_encoder_state(struct drm_device *dev)
|
||||
if (!enabled && encoder->base.encoder_type == DRM_MODE_ENCODER_DPMST)
|
||||
continue;
|
||||
|
||||
- WARN(!!encoder->base.crtc != enabled,
|
||||
+ I915_STATE_WARN(!!encoder->base.crtc != enabled,
|
||||
"encoder's enabled state mismatch "
|
||||
"(expected %i, found %i)\n",
|
||||
!!encoder->base.crtc, enabled);
|
||||
- WARN(active && !encoder->base.crtc,
|
||||
+ I915_STATE_WARN(active && !encoder->base.crtc,
|
||||
"active encoder with no crtc\n");
|
||||
|
||||
- WARN(encoder->connectors_active != active,
|
||||
+ I915_STATE_WARN(encoder->connectors_active != active,
|
||||
"encoder's computed active state doesn't match tracked active state "
|
||||
"(expected %i, found %i)\n", active, encoder->connectors_active);
|
||||
|
||||
active = encoder->get_hw_state(encoder, &pipe);
|
||||
- WARN(active != encoder->connectors_active,
|
||||
+ I915_STATE_WARN(active != encoder->connectors_active,
|
||||
"encoder's hw state doesn't match sw tracking "
|
||||
"(expected %i, found %i)\n",
|
||||
encoder->connectors_active, active);
|
||||
@@ -10808,7 +10808,7 @@ check_encoder_state(struct drm_device *dev)
|
||||
continue;
|
||||
|
||||
tracked_pipe = to_intel_crtc(encoder->base.crtc)->pipe;
|
||||
- WARN(active && pipe != tracked_pipe,
|
||||
+ I915_STATE_WARN(active && pipe != tracked_pipe,
|
||||
"active encoder's pipe doesn't match"
|
||||
"(expected %i, found %i)\n",
|
||||
tracked_pipe, pipe);
|
||||
@@ -10833,7 +10833,7 @@ check_crtc_state(struct drm_device *dev)
|
||||
DRM_DEBUG_KMS("[CRTC:%d]\n",
|
||||
crtc->base.base.id);
|
||||
|
||||
- WARN(crtc->active && !crtc->base.enabled,
|
||||
+ I915_STATE_WARN(crtc->active && !crtc->base.enabled,
|
||||
"active crtc, but not enabled in sw tracking\n");
|
||||
|
||||
for_each_intel_encoder(dev, encoder) {
|
||||
@@ -10844,10 +10844,10 @@ check_crtc_state(struct drm_device *dev)
|
||||
active = true;
|
||||
}
|
||||
|
||||
- WARN(active != crtc->active,
|
||||
+ I915_STATE_WARN(active != crtc->active,
|
||||
"crtc's computed active state doesn't match tracked active state "
|
||||
"(expected %i, found %i)\n", active, crtc->active);
|
||||
- WARN(enabled != crtc->base.enabled,
|
||||
+ I915_STATE_WARN(enabled != crtc->base.enabled,
|
||||
"crtc's computed enabled state doesn't match tracked enabled state "
|
||||
"(expected %i, found %i)\n", enabled, crtc->base.enabled);
|
||||
|
||||
@@ -10867,13 +10867,13 @@ check_crtc_state(struct drm_device *dev)
|
||||
encoder->get_config(encoder, &pipe_config);
|
||||
}
|
||||
|
||||
- WARN(crtc->active != active,
|
||||
+ I915_STATE_WARN(crtc->active != active,
|
||||
"crtc active state doesn't match with hw state "
|
||||
"(expected %i, found %i)\n", crtc->active, active);
|
||||
|
||||
if (active &&
|
||||
!intel_pipe_config_compare(dev, &crtc->config, &pipe_config)) {
|
||||
- WARN(1, "pipe state doesn't match!\n");
|
||||
+ I915_STATE_WARN(1, "pipe state doesn't match!\n");
|
||||
intel_dump_pipe_config(crtc, &pipe_config,
|
||||
"[hw state]");
|
||||
intel_dump_pipe_config(crtc, &crtc->config,
|
||||
@@ -10901,14 +10901,14 @@ check_shared_dpll_state(struct drm_device *dev)
|
||||
|
||||
active = pll->get_hw_state(dev_priv, pll, &dpll_hw_state);
|
||||
|
||||
- WARN(pll->active > hweight32(pll->config.crtc_mask),
|
||||
+ I915_STATE_WARN(pll->active > hweight32(pll->config.crtc_mask),
|
||||
"more active pll users than references: %i vs %i\n",
|
||||
pll->active, hweight32(pll->config.crtc_mask));
|
||||
- WARN(pll->active && !pll->on,
|
||||
+ I915_STATE_WARN(pll->active && !pll->on,
|
||||
"pll in active use but not on in sw tracking\n");
|
||||
- WARN(pll->on && !pll->active,
|
||||
+ I915_STATE_WARN(pll->on && !pll->active,
|
||||
"pll in on but not on in use in sw tracking\n");
|
||||
- WARN(pll->on != active,
|
||||
+ I915_STATE_WARN(pll->on != active,
|
||||
"pll on state mismatch (expected %i, found %i)\n",
|
||||
pll->on, active);
|
||||
|
||||
@@ -10918,14 +10918,14 @@ check_shared_dpll_state(struct drm_device *dev)
|
||||
if (crtc->active && intel_crtc_to_shared_dpll(crtc) == pll)
|
||||
active_crtcs++;
|
||||
}
|
||||
- WARN(pll->active != active_crtcs,
|
||||
+ I915_STATE_WARN(pll->active != active_crtcs,
|
||||
"pll active crtcs mismatch (expected %i, found %i)\n",
|
||||
pll->active, active_crtcs);
|
||||
- WARN(hweight32(pll->config.crtc_mask) != enabled_crtcs,
|
||||
+ I915_STATE_WARN(hweight32(pll->config.crtc_mask) != enabled_crtcs,
|
||||
"pll enabled crtcs mismatch (expected %i, found %i)\n",
|
||||
hweight32(pll->config.crtc_mask), enabled_crtcs);
|
||||
|
||||
- WARN(pll->on && memcmp(&pll->config.hw_state, &dpll_hw_state,
|
||||
+ I915_STATE_WARN(pll->on && memcmp(&pll->config.hw_state, &dpll_hw_state,
|
||||
sizeof(dpll_hw_state)),
|
||||
"pll hw state mismatch\n");
|
||||
}
|
||||
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
|
||||
index 9f6c8971855c..67adf6437f78 100644
|
||||
--- a/drivers/gpu/drm/i915/intel_dp.c
|
||||
+++ b/drivers/gpu/drm/i915/intel_dp.c
|
||||
@@ -1558,7 +1558,7 @@ void intel_edp_panel_vdd_on(struct intel_dp *intel_dp)
|
||||
vdd = edp_panel_vdd_on(intel_dp);
|
||||
pps_unlock(intel_dp);
|
||||
|
||||
- WARN(!vdd, "eDP port %c VDD already requested on\n",
|
||||
+ I915_STATE_WARN(!vdd, "eDP port %c VDD already requested on\n",
|
||||
port_name(dp_to_dig_port(intel_dp)->port));
|
||||
}
|
||||
|
||||
@@ -1642,7 +1642,7 @@ static void edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
|
||||
if (!is_edp(intel_dp))
|
||||
return;
|
||||
|
||||
- WARN(!intel_dp->want_panel_vdd, "eDP port %c VDD not forced on",
|
||||
+ I915_STATE_WARN(!intel_dp->want_panel_vdd, "eDP port %c VDD not forced on",
|
||||
port_name(dp_to_dig_port(intel_dp)->port));
|
||||
|
||||
intel_dp->want_panel_vdd = false;
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
Bugzilla: 1097463
|
||||
Upstream-status: Sent for 3.16
|
||||
|
||||
From 7ad066ecd4dfb4c36fb00f9f9eb1a5d6099db834 Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Mon, 2 Jun 2014 17:41:02 +0200
|
||||
Subject: [PATCH 05/14] eeepc-wmi: Add no backlight quirk for Asus H87I-PLUS
|
||||
Motherboard
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1097436
|
||||
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
drivers/platform/x86/eeepc-wmi.c | 13 +++++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
|
||||
diff --git a/drivers/platform/x86/eeepc-wmi.c b/drivers/platform/x86/eeepc-wmi.c
|
||||
index 6112933f6278..a7286bbfe28e 100644
|
||||
--- a/drivers/platform/x86/eeepc-wmi.c
|
||||
+++ b/drivers/platform/x86/eeepc-wmi.c
|
||||
@@ -114,6 +114,10 @@ static struct quirk_entry quirk_asus_x101ch = {
|
||||
.wmi_backlight_power = true,
|
||||
};
|
||||
|
||||
+static struct quirk_entry quirk_asus_no_backlight = {
|
||||
+ .no_backlight = true,
|
||||
+};
|
||||
+
|
||||
static struct quirk_entry *quirks;
|
||||
|
||||
static void et2012_quirks(void)
|
||||
@@ -182,6 +186,15 @@ static struct dmi_system_id asus_quirks[] = {
|
||||
},
|
||||
.driver_data = &quirk_asus_x101ch,
|
||||
},
|
||||
+ {
|
||||
+ .callback = dmi_matched,
|
||||
+ .ident = "ASUSTeK Computer INC. H87I-PLUS",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_BOARD_VENDOR, "ASUSTeK COMPUTER INC."),
|
||||
+ DMI_MATCH(DMI_BOARD_NAME, "H87I-PLUS"),
|
||||
+ },
|
||||
+ .driver_data = &quirk_asus_no_backlight,
|
||||
+ },
|
||||
{},
|
||||
};
|
||||
|
||||
--
|
||||
1.9.0
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Tue, 27 Aug 2013 13:33:03 -0400
|
||||
Subject: [PATCH] efi: Add EFI_SECURE_BOOT bit
|
||||
|
||||
UEFI machines can be booted in Secure Boot mode. Add a EFI_SECURE_BOOT bit
|
||||
for use with efi_enabled.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
arch/x86/kernel/setup.c | 2 ++
|
||||
include/linux/efi.h | 1 +
|
||||
2 files changed, 3 insertions(+)
|
||||
|
||||
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
|
||||
index 5d52d67d5097..b40d6174242f 100644
|
||||
--- a/arch/x86/kernel/setup.c
|
||||
+++ b/arch/x86/kernel/setup.c
|
||||
@@ -1154,7 +1154,9 @@ void __init setup_arch(char **cmdline_p)
|
||||
|
||||
#ifdef CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE
|
||||
if (boot_params.secure_boot) {
|
||||
+ set_bit(EFI_SECURE_BOOT, &efi.flags);
|
||||
enforce_signed_modules();
|
||||
+ pr_info("Secure boot enabled\n");
|
||||
}
|
||||
#endif
|
||||
|
||||
diff --git a/include/linux/efi.h b/include/linux/efi.h
|
||||
index 0238d612750e..16ec1c00919d 100644
|
||||
--- a/include/linux/efi.h
|
||||
+++ b/include/linux/efi.h
|
||||
@@ -940,6 +940,7 @@ extern int __init efi_setup_pcdp_console(char *);
|
||||
#define EFI_64BIT 5 /* Is the firmware 64-bit? */
|
||||
#define EFI_PARAVIRT 6 /* Access is via a paravirt interface */
|
||||
#define EFI_ARCH_1 7 /* First arch-specific bit */
|
||||
+#define EFI_SECURE_BOOT 8 /* Are we in Secure Boot mode? */
|
||||
|
||||
#ifdef CONFIG_EFI
|
||||
/*
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Tue, 5 Feb 2013 19:25:05 -0500
|
||||
Subject: [PATCH] efi: Disable secure boot if shim is in insecure mode
|
||||
|
||||
A user can manually tell the shim boot loader to disable validation of
|
||||
images it loads. When a user does this, it creates a UEFI variable called
|
||||
MokSBState that does not have the runtime attribute set. Given that the
|
||||
user explicitly disabled validation, we can honor that and not enable
|
||||
secure boot mode if that variable is set.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
arch/x86/boot/compressed/eboot.c | 20 +++++++++++++++++++-
|
||||
1 file changed, 19 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c
|
||||
index 2192da755e34..4b03911a502d 100644
|
||||
--- a/arch/x86/boot/compressed/eboot.c
|
||||
+++ b/arch/x86/boot/compressed/eboot.c
|
||||
@@ -831,8 +831,9 @@ out:
|
||||
|
||||
static int get_secure_boot(void)
|
||||
{
|
||||
- u8 sb, setup;
|
||||
+ u8 sb, setup, moksbstate;
|
||||
unsigned long datasize = sizeof(sb);
|
||||
+ u32 attr;
|
||||
efi_guid_t var_guid = EFI_GLOBAL_VARIABLE_GUID;
|
||||
efi_status_t status;
|
||||
|
||||
@@ -856,6 +857,23 @@ static int get_secure_boot(void)
|
||||
if (setup == 1)
|
||||
return 0;
|
||||
|
||||
+ /* See if a user has put shim into insecure_mode. If so, and the variable
|
||||
+ * doesn't have the runtime attribute set, we might as well honor that.
|
||||
+ */
|
||||
+ var_guid = EFI_SHIM_LOCK_GUID;
|
||||
+ status = efi_early->call((unsigned long)sys_table->runtime->get_variable,
|
||||
+ L"MokSBState", &var_guid, &attr, &datasize,
|
||||
+ &moksbstate);
|
||||
+
|
||||
+ /* If it fails, we don't care why. Default to secure */
|
||||
+ if (status != EFI_SUCCESS)
|
||||
+ return 1;
|
||||
+
|
||||
+ if (!(attr & EFI_VARIABLE_RUNTIME_ACCESS)) {
|
||||
+ if (moksbstate == 1)
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
return 1;
|
||||
}
|
||||
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Tue, 27 Aug 2013 13:28:43 -0400
|
||||
Subject: [PATCH] efi: Make EFI_SECURE_BOOT_SIG_ENFORCE depend on EFI
|
||||
|
||||
The functionality of the config option is dependent upon the platform being
|
||||
UEFI based. Reflect this in the config deps.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
arch/x86/Kconfig | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
|
||||
index 58273956750d..e17f88ceaeab 100644
|
||||
--- a/arch/x86/Kconfig
|
||||
+++ b/arch/x86/Kconfig
|
||||
@@ -1661,7 +1661,8 @@ config EFI_MIXED
|
||||
If unsure, say N.
|
||||
|
||||
config EFI_SECURE_BOOT_SIG_ENFORCE
|
||||
- def_bool n
|
||||
+ def_bool n
|
||||
+ depends on EFI
|
||||
prompt "Force module signing when UEFI Secure Boot is enabled"
|
||||
---help---
|
||||
UEFI Secure Boot provides a mechanism for ensuring that the
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
From: Lukas Czerner <lczerner@redhat.com>
|
||||
Date: Wed, 18 Feb 2015 17:49:28 +0100
|
||||
Subject: [PATCH] ext4: Allocate entire range in zero range
|
||||
|
||||
Currently there is a bug in zero range code which causes zero range
|
||||
calls to only allocate block aligned portion of the range, while
|
||||
ignoring the rest in some cases.
|
||||
|
||||
In some cases, namely if the end of the range is past isize, we do
|
||||
attempt to preallocate the last nonaligned block. However this might
|
||||
cause kernel to BUG() in some carefully designed zero range requests on
|
||||
setups where page size > block size.
|
||||
|
||||
Fix this problem by first preallocating the entire range, including the
|
||||
nonaligned edges and converting the written extents to unwritten in the
|
||||
next step. This approach will also give us the advantage of having the
|
||||
range to be as linearly contiguous as possible.
|
||||
|
||||
Signed-off-by: Lukas Czerner <lczerner@redhat.com>
|
||||
---
|
||||
fs/ext4/extents.c | 31 +++++++++++++++++++------------
|
||||
1 file changed, 19 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
|
||||
index bed43081720f..aa522429b751 100644
|
||||
--- a/fs/ext4/extents.c
|
||||
+++ b/fs/ext4/extents.c
|
||||
@@ -4803,12 +4803,6 @@ static long ext4_zero_range(struct file *file, loff_t offset,
|
||||
else
|
||||
max_blocks -= lblk;
|
||||
|
||||
- flags = EXT4_GET_BLOCKS_CREATE_UNWRIT_EXT |
|
||||
- EXT4_GET_BLOCKS_CONVERT_UNWRITTEN |
|
||||
- EXT4_EX_NOCACHE;
|
||||
- if (mode & FALLOC_FL_KEEP_SIZE)
|
||||
- flags |= EXT4_GET_BLOCKS_KEEP_SIZE;
|
||||
-
|
||||
mutex_lock(&inode->i_mutex);
|
||||
|
||||
/*
|
||||
@@ -4825,15 +4819,28 @@ static long ext4_zero_range(struct file *file, loff_t offset,
|
||||
ret = inode_newsize_ok(inode, new_size);
|
||||
if (ret)
|
||||
goto out_mutex;
|
||||
- /*
|
||||
- * If we have a partial block after EOF we have to allocate
|
||||
- * the entire block.
|
||||
- */
|
||||
- if (partial_end)
|
||||
- max_blocks += 1;
|
||||
}
|
||||
|
||||
+ flags = EXT4_GET_BLOCKS_CREATE_UNWRIT_EXT;
|
||||
+ if (mode & FALLOC_FL_KEEP_SIZE)
|
||||
+ flags |= EXT4_GET_BLOCKS_KEEP_SIZE;
|
||||
+
|
||||
+ /* Preallocate the range including the unaligned edges */
|
||||
+ if (partial_begin || partial_end) {
|
||||
+ ret = ext4_alloc_file_blocks(file,
|
||||
+ round_down(offset, 1 << blkbits) >> blkbits,
|
||||
+ (round_up((offset + len), 1 << blkbits) -
|
||||
+ round_down(offset, 1 << blkbits)) >> blkbits,
|
||||
+ new_size, flags, mode);
|
||||
+ if (ret)
|
||||
+ goto out_mutex;
|
||||
+
|
||||
+ }
|
||||
+
|
||||
+ /* Zero range excluding the unaligned edges */
|
||||
if (max_blocks > 0) {
|
||||
+ flags |= (EXT4_GET_BLOCKS_CONVERT_UNWRITTEN |
|
||||
+ EXT4_EX_NOCACHE);
|
||||
|
||||
/* Now release the pages and zero block aligned part of pages*/
|
||||
truncate_pagecache_range(inode, start, end - 1);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -11,4 +11,4 @@
|
|||
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc infiniband isdn leds media memstick message mmc mtd nfc ntb pcmcia platform power ssb staging uio uwb"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject "
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user"
|
||||
|
|
|
@ -11,4 +11,4 @@
|
|||
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc infiniband isdn media memstick message nfc ntb pcmcia platform ssb staging uio uwb"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject"
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user"
|
||||
|
|
|
@ -9,6 +9,6 @@
|
|||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc infiniband isdn leds media memstick message mfd mmc mtd nfc ntb pcmcia platform power ssb staging uio uwb"
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc infiniband isdn leds media memstick mfd mmc mtd nfc ntb pcmcia platform power ssb staging uio uwb"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject hid-sensor-hub hid-sensor-magn-3d hid-sensor-incl-3d hid-sensor-gyro-3d hid-sensor-iio-common hid-sensor-accel-3d hid-sensor-trigger hid-sensor-als hid-sensor-rotation"
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject hid-sensor-hub hid-sensor-magn-3d hid-sensor-incl-3d hid-sensor-gyro-3d hid-sensor-iio-common hid-sensor-accel-3d hid-sensor-trigger hid-sensor-als hid-sensor-rotation target_core_user"
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
# listed here.
|
||||
|
||||
# Set the default dirs/modules to filter out
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc iio infiniband isdn leds media memstick message mfd mmc mtd nfc ntb pcmcia platform power ssb staging uio uwb"
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc iio infiniband isdn leds media memstick mfd mmc mtd nfc ntb pcmcia platform power ssb staging uio uwb"
|
||||
|
||||
netdrvs="appletalk dsa hamradio ieee802154 irda ppp slip usb wireless"
|
||||
|
||||
|
@ -32,7 +32,7 @@ netprots="appletalk atm ax25 batman-adv bluetooth dccp dsa ieee802154 irda l2tp
|
|||
|
||||
drmdrvs="ast gma500 mgag200 via nouveau"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject hid-sensor-hub"
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject hid-sensor-hub target_core_user"
|
||||
|
||||
# Grab the arch-specific filter list overrides
|
||||
source ./filter-$2.sh
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
#! /bin/bash
|
||||
|
||||
# This is the ppc override file for the core/drivers package split. The
|
||||
# module directories listed here and in the generic list in filter-modules.sh
|
||||
# will be moved to the resulting kernel-modules package for this arch.
|
||||
# Anything not listed in those files will be in the kernel-core package.
|
||||
#
|
||||
# Please review the default list in filter-modules.sh before making
|
||||
# modifications to the overrides below. If something should be removed across
|
||||
# all arches, remove it in the default instead of per-arch.
|
||||
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc infiniband isdn leds media memstick message mmc mtd nfc ntb pcmcia platform power ssb staging uio uwb"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject"
|
|
@ -11,4 +11,4 @@
|
|||
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc infiniband isdn leds media memstick message mmc mtd nfc ntb pcmcia platform power ssb staging uio uwb"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject"
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user"
|
||||
|
|
|
@ -11,4 +11,4 @@
|
|||
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc infiniband isdn leds media memstick message mmc mtd nfc ntb pcmcia platform power ssb staging uio uwb"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject"
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user"
|
||||
|
|
|
@ -11,4 +11,4 @@
|
|||
|
||||
driverdirs="atm auxdisplay bcma bluetooth fmc infiniband isdn leds media memstick message mmc mtd nfc ntb pcmcia platform power ssb staging uio uwb"
|
||||
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject"
|
||||
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs iscsi_tcp megaraid pmcraid qla1280 9pnet_rdma svcrdma xprtrdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user"
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Fri, 20 Jun 2014 08:53:24 -0400
|
||||
Subject: [PATCH] hibernate: Disable in a signed modules environment
|
||||
|
||||
There is currently no way to verify the resume image when returning
|
||||
from hibernate. This might compromise the signed modules trust model,
|
||||
so until we can work with signed hibernate images we disable it in
|
||||
a secure modules environment.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
kernel/power/hibernate.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c
|
||||
index 2329daae5255..48a8e82c7e2e 100644
|
||||
--- a/kernel/power/hibernate.c
|
||||
+++ b/kernel/power/hibernate.c
|
||||
@@ -29,6 +29,7 @@
|
||||
#include <linux/ctype.h>
|
||||
#include <linux/genhd.h>
|
||||
#include <linux/ktime.h>
|
||||
+#include <linux/module.h>
|
||||
#include <trace/events/power.h>
|
||||
|
||||
#include "power.h"
|
||||
@@ -66,7 +67,7 @@ static const struct platform_hibernation_ops *hibernation_ops;
|
||||
|
||||
bool hibernation_available(void)
|
||||
{
|
||||
- return (nohibernate == 0);
|
||||
+ return ((nohibernate == 0) && !secure_modules());
|
||||
}
|
||||
|
||||
/**
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,11 +1,18 @@
|
|||
From: "kernel-team@fedoraproject.org" <kernel-team@fedoraproject.org>
|
||||
Date: Thu, 29 Jul 2010 16:46:31 -0700
|
||||
Subject: [PATCH] input: kill stupid messages
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard
|
||||
---
|
||||
drivers/input/keyboard/atkbd.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
|
||||
index add5ffd..5eb2f03 100644
|
||||
index e27a25892db4..9ab0a86cc03d 100644
|
||||
--- a/drivers/input/keyboard/atkbd.c
|
||||
+++ b/drivers/input/keyboard/atkbd.c
|
||||
@@ -430,11 +430,15 @@ static irqreturn_t atkbd_interrupt(struct serio *serio, unsigned char data,
|
||||
@@ -436,11 +436,15 @@ static irqreturn_t atkbd_interrupt(struct serio *serio, unsigned char data,
|
||||
goto out;
|
||||
case ATKBD_RET_ACK:
|
||||
case ATKBD_RET_NAK:
|
||||
|
@ -21,3 +28,6 @@ index add5ffd..5eb2f03 100644
|
|||
goto out;
|
||||
case ATKBD_RET_ERR:
|
||||
atkbd->err_count++;
|
||||
--
|
||||
2.1.0
|
||||
|
||||
|
|
|
@ -0,0 +1,65 @@
|
|||
From: Peter Jones <pjones@redhat.com>
|
||||
Date: Thu, 25 Sep 2008 16:23:33 -0400
|
||||
Subject: [PATCH] input: silence i8042 noise
|
||||
|
||||
Don't print an error message just because there's no i8042 chip.
|
||||
Some systems, such as EFI-based Apple systems, won't necessarily have an
|
||||
i8042 to initialize. We shouldn't be printing an error message in this
|
||||
case, since not detecting the chip is the correct behavior.
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard
|
||||
---
|
||||
drivers/base/power/main.c | 2 --
|
||||
drivers/input/serio/i8042.c | 1 -
|
||||
net/can/af_can.c | 8 ++------
|
||||
3 files changed, 2 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c
|
||||
index 9717d5f20139..a3101d2fd936 100644
|
||||
--- a/drivers/base/power/main.c
|
||||
+++ b/drivers/base/power/main.c
|
||||
@@ -122,8 +122,6 @@ void device_pm_unlock(void)
|
||||
*/
|
||||
void device_pm_add(struct device *dev)
|
||||
{
|
||||
- pr_debug("PM: Adding info for %s:%s\n",
|
||||
- dev->bus ? dev->bus->name : "No Bus", dev_name(dev));
|
||||
mutex_lock(&dpm_list_mtx);
|
||||
if (dev->parent && dev->parent->power.is_prepared)
|
||||
dev_warn(dev, "parent %s should not be sleeping\n",
|
||||
diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c
|
||||
index 986a71c614b0..bfb0b2280df0 100644
|
||||
--- a/drivers/input/serio/i8042.c
|
||||
+++ b/drivers/input/serio/i8042.c
|
||||
@@ -871,7 +871,6 @@ static int __init i8042_check_aux(void)
|
||||
static int i8042_controller_check(void)
|
||||
{
|
||||
if (i8042_flush()) {
|
||||
- pr_err("No controller found\n");
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
diff --git a/net/can/af_can.c b/net/can/af_can.c
|
||||
index 32d710eaf1fc..af4a20b86ee7 100644
|
||||
--- a/net/can/af_can.c
|
||||
+++ b/net/can/af_can.c
|
||||
@@ -155,13 +155,9 @@ static int can_create(struct net *net, struct socket *sock, int protocol,
|
||||
err = request_module("can-proto-%d", protocol);
|
||||
|
||||
/*
|
||||
- * In case of error we only print a message but don't
|
||||
- * return the error code immediately. Below we will
|
||||
- * return -EPROTONOSUPPORT
|
||||
+ * In case of error we but don't return the error code immediately.
|
||||
+ * Below we will return -EPROTONOSUPPORT
|
||||
*/
|
||||
- if (err)
|
||||
- printk_ratelimited(KERN_ERR "can: request_module "
|
||||
- "(can-proto-%d) failed.\n", protocol);
|
||||
|
||||
cp = can_get_proto(protocol);
|
||||
}
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
From: Thierry Reding <treding@nvidia.com>
|
||||
Date: Fri, 6 Feb 2015 11:44:05 +0100
|
||||
Subject: [PATCH] iommu/exynos: Play nice in multi-platform builds
|
||||
|
||||
The Exynos System MMU driver unconditionally executes code and registers
|
||||
a struct iommu_ops with the platform bus irrespective of whether it runs
|
||||
on an Exynos SoC or not. This causes problems in multi-platform kernels
|
||||
where drivers for other SoCs will no longer be able to register their
|
||||
own struct iommu_ops or even try to use a struct iommu_ops for an IOMMU
|
||||
that obviously isn't there.
|
||||
|
||||
The smallest fix I could think of is to check for the existence of any
|
||||
Exynos System MMU devices in the device tree and skip initialization
|
||||
otherwise.
|
||||
|
||||
This fixes a problem on Tegra20 where the DRM driver will try to use the
|
||||
obviously non-existent Exynos System MMU.
|
||||
|
||||
Reported-by: Nicolas Chauvet <kwizart@gmail.com>
|
||||
Cc: Kukjin Kim <kgene@kernel.org>
|
||||
Signed-off-by: Thierry Reding <treding@nvidia.com>
|
||||
Signed-off-by: Joerg Roedel <jroedel@suse.de>
|
||||
---
|
||||
drivers/iommu/exynos-iommu.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/drivers/iommu/exynos-iommu.c b/drivers/iommu/exynos-iommu.c
|
||||
index 7ce52737c7a1..dc14fec4ede1 100644
|
||||
--- a/drivers/iommu/exynos-iommu.c
|
||||
+++ b/drivers/iommu/exynos-iommu.c
|
||||
@@ -1186,8 +1186,15 @@ static const struct iommu_ops exynos_iommu_ops = {
|
||||
|
||||
static int __init exynos_iommu_init(void)
|
||||
{
|
||||
+ struct device_node *np;
|
||||
int ret;
|
||||
|
||||
+ np = of_find_matching_node(NULL, sysmmu_of_match);
|
||||
+ if (!np)
|
||||
+ return 0;
|
||||
+
|
||||
+ of_node_put(np);
|
||||
+
|
||||
lv2table_kmem_cache = kmem_cache_create("exynos-iommu-lv2table",
|
||||
LV2TABLE_SIZE, LV2TABLE_SIZE, 0, NULL);
|
||||
if (!lv2table_kmem_cache) {
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
From: Thierry Reding <treding@nvidia.com>
|
||||
Date: Fri, 6 Feb 2015 11:44:06 +0100
|
||||
Subject: [PATCH] iommu/omap: Play nice in multi-platform builds
|
||||
|
||||
The OMAP IOMMU driver unconditionally executes code and registers a
|
||||
struct iommu_ops with the platform bus irrespective of whether it runs
|
||||
on an OMAP SoC or not. This causes problems in multi-platform kernels
|
||||
where drivers for other SoCs will no longer be able to register their
|
||||
own struct iommu_ops or even try to use a struct iommu_ops for an IOMMU
|
||||
that obviously isn't there.
|
||||
|
||||
The smallest fix I could think of is to check for the existence of any
|
||||
OMAP IOMMU devices in the device tree and skip initialization otherwise.
|
||||
|
||||
This fixes a problem on Tegra20 where the DRM driver will try to use the
|
||||
obviously non-existent OMAP IOMMU.
|
||||
|
||||
Reported-by: Nicolas Chauvet <kwizart@gmail.com>
|
||||
Cc: Tony Lindgren <tony@atomide.com>
|
||||
Cc: Suman Anna <s-anna@ti.com>
|
||||
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
||||
Signed-off-by: Thierry Reding <treding@nvidia.com>
|
||||
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
||||
Signed-off-by: Joerg Roedel <jroedel@suse.de>
|
||||
---
|
||||
drivers/iommu/omap-iommu.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/drivers/iommu/omap-iommu.c b/drivers/iommu/omap-iommu.c
|
||||
index bbb7dcef02d3..19db0b684b7f 100644
|
||||
--- a/drivers/iommu/omap-iommu.c
|
||||
+++ b/drivers/iommu/omap-iommu.c
|
||||
@@ -1376,6 +1376,13 @@ static int __init omap_iommu_init(void)
|
||||
struct kmem_cache *p;
|
||||
const unsigned long flags = SLAB_HWCACHE_ALIGN;
|
||||
size_t align = 1 << 10; /* L2 pagetable alignement */
|
||||
+ struct device_node *np;
|
||||
+
|
||||
+ np = of_find_matching_node(NULL, omap_iommu_of_match);
|
||||
+ if (!np)
|
||||
+ return 0;
|
||||
+
|
||||
+ of_node_put(np);
|
||||
|
||||
p = kmem_cache_create("iopte_cache", IOPTE_TABLE_SIZE, align, flags,
|
||||
iopte_cachep_ctor);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
From: Thierry Reding <treding@nvidia.com>
|
||||
Date: Fri, 6 Feb 2015 11:44:07 +0100
|
||||
Subject: [PATCH] iommu/rockchip: Play nice in multi-platform builds
|
||||
|
||||
The Rockchip IOMMU driver unconditionally executes code and registers a
|
||||
struct iommu_ops with the platform bus irrespective of whether it runs
|
||||
on a Rockchip SoC or not. This causes problems in multi-platform kernels
|
||||
where drivers for other SoCs will no longer be able to register their
|
||||
own struct iommu_ops or even try to use a struct iommu_ops for an IOMMU
|
||||
that obviously isn't there.
|
||||
|
||||
The smallest fix I could think of is to check for the existence of any
|
||||
Rockchip IOMMU devices in the device tree and skip initialization
|
||||
otherwise.
|
||||
|
||||
This fixes a problem on Tegra20 where the DRM driver will try to use the
|
||||
obviously non-existent Rockchip IOMMU.
|
||||
|
||||
Reported-by: Nicolas Chauvet <kwizart@gmail.com>
|
||||
Cc: Heiko Stuebner <heiko@sntech.de>
|
||||
Cc: Daniel Kurtz <djkurtz@chromium.org>
|
||||
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
|
||||
Tested-by: Heiko Stuebner <heiko@sntech.de>
|
||||
Signed-off-by: Thierry Reding <treding@nvidia.com>
|
||||
Signed-off-by: Joerg Roedel <jroedel@suse.de>
|
||||
---
|
||||
drivers/iommu/rockchip-iommu.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/drivers/iommu/rockchip-iommu.c b/drivers/iommu/rockchip-iommu.c
|
||||
index 6a8b1ec4a48a..9f74fddcd304 100644
|
||||
--- a/drivers/iommu/rockchip-iommu.c
|
||||
+++ b/drivers/iommu/rockchip-iommu.c
|
||||
@@ -1015,8 +1015,15 @@ static struct platform_driver rk_iommu_driver = {
|
||||
|
||||
static int __init rk_iommu_init(void)
|
||||
{
|
||||
+ struct device_node *np;
|
||||
int ret;
|
||||
|
||||
+ np = of_find_matching_node(NULL, rk_iommu_dt_ids);
|
||||
+ if (!np)
|
||||
+ return 0;
|
||||
+
|
||||
+ of_node_put(np);
|
||||
+
|
||||
ret = bus_set_iommu(&platform_bus_type, &rk_iommu_ops);
|
||||
if (ret)
|
||||
return ret;
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
From: "D.S. Ljungmark" <ljungmark@modio.se>
|
||||
Date: Wed, 25 Mar 2015 09:28:15 +0100
|
||||
Subject: [PATCH] ipv6: Don't reduce hop limit for an interface
|
||||
|
||||
A local route may have a lower hop_limit set than global routes do.
|
||||
|
||||
RFC 3756, Section 4.2.7, "Parameter Spoofing"
|
||||
|
||||
> 1. The attacker includes a Current Hop Limit of one or another small
|
||||
> number which the attacker knows will cause legitimate packets to
|
||||
> be dropped before they reach their destination.
|
||||
|
||||
> As an example, one possible approach to mitigate this threat is to
|
||||
> ignore very small hop limits. The nodes could implement a
|
||||
> configurable minimum hop limit, and ignore attempts to set it below
|
||||
> said limit.
|
||||
|
||||
Signed-off-by: D.S. Ljungmark <ljungmark@modio.se>
|
||||
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
|
||||
---
|
||||
net/ipv6/ndisc.c | 9 ++++++++-
|
||||
1 file changed, 8 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c
|
||||
index 682866777d53..d375ce60463e 100644
|
||||
--- a/net/ipv6/ndisc.c
|
||||
+++ b/net/ipv6/ndisc.c
|
||||
@@ -1216,7 +1216,14 @@ static void ndisc_router_discovery(struct sk_buff *skb)
|
||||
if (rt)
|
||||
rt6_set_expires(rt, jiffies + (HZ * lifetime));
|
||||
if (ra_msg->icmph.icmp6_hop_limit) {
|
||||
- in6_dev->cnf.hop_limit = ra_msg->icmph.icmp6_hop_limit;
|
||||
+ /* Only set hop_limit on the interface if it is higher than
|
||||
+ * the current hop_limit.
|
||||
+ */
|
||||
+ if (in6_dev->cnf.hop_limit < ra_msg->icmph.icmp6_hop_limit) {
|
||||
+ in6_dev->cnf.hop_limit = ra_msg->icmph.icmp6_hop_limit;
|
||||
+ } else {
|
||||
+ ND_PRINTK(2, warn, "RA: Got route advertisement with lower hop_limit than current\n");
|
||||
+ }
|
||||
if (rt)
|
||||
dst_metric_set(&rt->dst, RTAX_HOPLIMIT,
|
||||
ra_msg->icmph.icmp6_hop_limit);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,7 +1,3 @@
|
|||
Bugzilla: N/A
|
||||
Upstream-status: ??
|
||||
|
||||
From fd4e7f06ecc891474dea3a93df083de5f8c50cdc Mon Sep 17 00:00:00 2001
|
||||
From: Roland McGrath <roland@redhat.com>
|
||||
Date: Mon, 6 Oct 2008 23:03:03 -0700
|
||||
Subject: [PATCH] kbuild: AFTER_LINK
|
||||
|
@ -9,6 +5,9 @@ Subject: [PATCH] kbuild: AFTER_LINK
|
|||
If the make variable AFTER_LINK is set, it is a command line to run
|
||||
after each final link. This includes vmlinux itself and vDSO images.
|
||||
|
||||
Bugzilla: N/A
|
||||
Upstream-status: ??
|
||||
|
||||
Signed-off-by: Roland McGrath <roland@redhat.com>
|
||||
---
|
||||
arch/arm64/kernel/vdso/Makefile | 3 ++-
|
||||
|
@ -21,17 +20,17 @@ Signed-off-by: Roland McGrath <roland@redhat.com>
|
|||
7 files changed, 17 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/kernel/vdso/Makefile b/arch/arm64/kernel/vdso/Makefile
|
||||
index 6d20b7d162d8..863a01bde0bf 100644
|
||||
index ff3bddea482d..d8a439dd6351 100644
|
||||
--- a/arch/arm64/kernel/vdso/Makefile
|
||||
+++ b/arch/arm64/kernel/vdso/Makefile
|
||||
@@ -48,7 +48,8 @@ $(obj-vdso): %.o: %.S
|
||||
@@ -48,7 +48,8 @@ $(obj-vdso): %.o: %.S FORCE
|
||||
|
||||
# Actual build commands
|
||||
quiet_cmd_vdsold = VDSOL $@
|
||||
quiet_cmd_vdsold = VDSOL $@
|
||||
- cmd_vdsold = $(CC) $(c_flags) -Wl,-n -Wl,-T $^ -o $@
|
||||
+ cmd_vdsold = $(CC) $(c_flags) -Wl,-n -Wl,-T $^ -o $@ \
|
||||
+ $(if $(AFTER_LINK),;$(AFTER_LINK))
|
||||
quiet_cmd_vdsoas = VDSOA $@
|
||||
+ $(if $(AFTER_LINK),;$(AFTER_LINK))
|
||||
quiet_cmd_vdsoas = VDSOA $@
|
||||
cmd_vdsoas = $(CC) $(a_flags) -c -o $@ $<
|
||||
|
||||
diff --git a/arch/powerpc/kernel/vdso32/Makefile b/arch/powerpc/kernel/vdso32/Makefile
|
||||
|
@ -91,10 +90,10 @@ index 2a8ddfd12a5b..452ca53561fe 100644
|
|||
cmd_vdso64as = $(CC) $(a_flags) -c -o $@ $<
|
||||
|
||||
diff --git a/arch/x86/vdso/Makefile b/arch/x86/vdso/Makefile
|
||||
index 9206ac7961a5..3d7f533f6757 100644
|
||||
index 5a4affe025e8..8ff38ce94c8e 100644
|
||||
--- a/arch/x86/vdso/Makefile
|
||||
+++ b/arch/x86/vdso/Makefile
|
||||
@@ -181,8 +181,9 @@ $(obj)/vdso32-syms.lds: $(vdso32.so-y:%=$(obj)/vdso32-%-syms.lds) FORCE
|
||||
@@ -171,8 +171,9 @@ $(vdso32-images:%=$(obj)/%.dbg): $(obj)/vdso32-%.so.dbg: FORCE \
|
||||
quiet_cmd_vdso = VDSO $@
|
||||
cmd_vdso = $(CC) -nostdlib -o $@ \
|
||||
$(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \
|
||||
|
@ -105,9 +104,9 @@ index 9206ac7961a5..3d7f533f6757 100644
|
|||
+ sh $(srctree)/$(src)/checkundef.sh '$(NM)' '$@'
|
||||
|
||||
VDSO_LDFLAGS = -fPIC -shared $(call cc-ldoption, -Wl$(comma)--hash-style=sysv) \
|
||||
$(LTO_CFLAGS)
|
||||
$(call cc-ldoption, -Wl$(comma)--build-id) -Wl,-Bsymbolic $(LTO_CFLAGS)
|
||||
diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
|
||||
index 2dcb37736d84..25e170e92ef1 100644
|
||||
index 86a4fe75f453..161637ed5611 100755
|
||||
--- a/scripts/link-vmlinux.sh
|
||||
+++ b/scripts/link-vmlinux.sh
|
||||
@@ -65,6 +65,10 @@ vmlinux_link()
|
||||
|
@ -122,5 +121,5 @@ index 2dcb37736d84..25e170e92ef1 100644
|
|||
|
||||
|
||||
--
|
||||
1.8.5.3
|
||||
2.1.0
|
||||
|
15986
kernel-arm64.patch
15986
kernel-arm64.patch
File diff suppressed because it is too large
Load Diff
681
kernel.spec
681
kernel.spec
|
@ -42,19 +42,19 @@ Summary: The Linux kernel
|
|||
# For non-released -rc kernels, this will be appended after the rcX and
|
||||
# gitX tags, so a 3 here would become part of release "0.rcX.gitX.3"
|
||||
#
|
||||
%global baserelease 300
|
||||
%global baserelease 200
|
||||
%global fedora_build %{baserelease}
|
||||
|
||||
# base_sublevel is the kernel version we're starting with and patching
|
||||
# on top of -- for example, 3.1-rc7-git1 starts with a 3.0 base,
|
||||
# which yields a base_sublevel of 0.
|
||||
%define base_sublevel 16
|
||||
%define base_sublevel 19
|
||||
|
||||
## If this is a released kernel ##
|
||||
%if 0%{?released_kernel}
|
||||
|
||||
# Do we have a -stable update to apply?
|
||||
%define stable_update 2
|
||||
%define stable_update 5
|
||||
# Set rpm version accordingly
|
||||
%if 0%{?stable_update}
|
||||
%define stablerev %{stable_update}
|
||||
|
@ -86,8 +86,6 @@ Summary: The Linux kernel
|
|||
#
|
||||
# standard kernel
|
||||
%define with_up %{?_without_up: 0} %{?!_without_up: 1}
|
||||
# kernel-smp (only valid for ppc 32-bit)
|
||||
%define with_smp %{?_without_smp: 0} %{?!_without_smp: 1}
|
||||
# kernel PAE (only valid for i686 (PAE) and ARM (lpae))
|
||||
%define with_pae %{?_without_pae: 0} %{?!_without_pae: 1}
|
||||
# kernel-debug
|
||||
|
@ -109,8 +107,6 @@ Summary: The Linux kernel
|
|||
#
|
||||
# Only build the base kernel (--with baseonly):
|
||||
%define with_baseonly %{?_with_baseonly: 1} %{?!_with_baseonly: 0}
|
||||
# Only build the smp kernel (--with smponly):
|
||||
%define with_smponly %{?_with_smponly: 1} %{?!_with_smponly: 0}
|
||||
# Only build the pae kernel (--with paeonly):
|
||||
%define with_paeonly %{?_with_paeonly: 1} %{?!_with_paeonly: 0}
|
||||
# Only build the debug kernel (--with dbgonly):
|
||||
|
@ -193,14 +189,6 @@ Summary: The Linux kernel
|
|||
|
||||
# if requested, only build base kernel
|
||||
%if %{with_baseonly}
|
||||
%define with_smp 0
|
||||
%define with_pae 0
|
||||
%define with_debug 0
|
||||
%endif
|
||||
|
||||
# if requested, only build smp kernel
|
||||
%if %{with_smponly}
|
||||
%define with_up 0
|
||||
%define with_pae 0
|
||||
%define with_debug 0
|
||||
%endif
|
||||
|
@ -208,7 +196,6 @@ Summary: The Linux kernel
|
|||
# if requested, only build pae kernel
|
||||
%if %{with_paeonly}
|
||||
%define with_up 0
|
||||
%define with_smp 0
|
||||
%define with_debug 0
|
||||
%endif
|
||||
|
||||
|
@ -218,7 +205,6 @@ Summary: The Linux kernel
|
|||
%define with_up 0
|
||||
%define with_pae 0
|
||||
%endif
|
||||
%define with_smp 0
|
||||
%define with_pae 0
|
||||
%define with_tools 0
|
||||
%define with_perf 0
|
||||
|
@ -228,16 +214,11 @@ Summary: The Linux kernel
|
|||
|
||||
%if %{with_vdso_install}
|
||||
# These arches install vdso/ directories.
|
||||
%define vdso_arches %{all_x86} x86_64 ppc %{power64} s390 s390x aarch64
|
||||
%define vdso_arches %{all_x86} x86_64 %{power64} s390 s390x aarch64
|
||||
%endif
|
||||
|
||||
# Overrides for generic default options
|
||||
|
||||
# only ppc needs a separate smp kernel
|
||||
%ifnarch ppc
|
||||
%define with_smp 0
|
||||
%endif
|
||||
|
||||
# don't do debug builds on anything but i686 and x86_64
|
||||
%ifnarch i686 x86_64
|
||||
%define with_debug 0
|
||||
|
@ -254,7 +235,7 @@ Summary: The Linux kernel
|
|||
|
||||
# bootwrapper is only on ppc
|
||||
# sparse blows up on ppc
|
||||
%ifnarch ppc %{power64}
|
||||
%ifnarch %{power64}
|
||||
%define with_bootwrapper 0
|
||||
%define with_sparse 0
|
||||
%endif
|
||||
|
@ -302,16 +283,6 @@ Summary: The Linux kernel
|
|||
%define with_tools 0
|
||||
%endif
|
||||
|
||||
%ifarch ppc
|
||||
%define asmarch powerpc
|
||||
%define hdrarch powerpc
|
||||
%define all_arch_configs kernel-%{version}-ppc{-,.}*config
|
||||
%define image_install_path boot
|
||||
%define make_target vmlinux
|
||||
%define kernel_image vmlinux
|
||||
%define kernel_image_elf 1
|
||||
%endif
|
||||
|
||||
%ifarch %{arm}
|
||||
%define all_arch_configs kernel-%{version}-arm*.config
|
||||
%define image_install_path boot
|
||||
|
@ -363,7 +334,6 @@ Summary: The Linux kernel
|
|||
|
||||
%ifarch %nobuildarches
|
||||
%define with_up 0
|
||||
%define with_smp 0
|
||||
%define with_pae 0
|
||||
%define with_debuginfo 0
|
||||
%define with_perf 0
|
||||
|
@ -377,14 +347,14 @@ Summary: The Linux kernel
|
|||
%endif
|
||||
|
||||
# Architectures we build tools/cpupower on
|
||||
%define cpupowerarchs %{ix86} x86_64 ppc %{power64} %{arm} aarch64
|
||||
%define cpupowerarchs %{ix86} x86_64 %{power64} %{arm} aarch64
|
||||
|
||||
#
|
||||
# Packages that need to be installed before the kernel is, because the %%post
|
||||
# scripts use them.
|
||||
#
|
||||
%define kernel_prereq fileutils, systemd >= 203-2
|
||||
%define initrd_prereq dracut >= 027
|
||||
%define initrd_prereq dracut >= 038-29
|
||||
|
||||
|
||||
Name: kernel%{?variant}
|
||||
|
@ -395,7 +365,7 @@ Version: %{rpmversion}
|
|||
Release: %{pkg_release}
|
||||
# DO NOT CHANGE THE 'ExclusiveArch' LINE TO TEMPORARILY EXCLUDE AN ARCHITECTURE BUILD.
|
||||
# SET %%nobuildarches (ABOVE) INSTEAD
|
||||
ExclusiveArch: %{all_x86} x86_64 ppc ppc64 ppc64p7 s390 s390x %{arm} aarch64 ppc64le
|
||||
ExclusiveArch: %{all_x86} x86_64 ppc64 ppc64p7 s390 s390x %{arm} aarch64 ppc64le
|
||||
ExclusiveOS: Linux
|
||||
%ifnarch %{nobuildarches}
|
||||
Requires: kernel-%{?variant:%{variant}-}core-uname-r = %{KVERREL}%{?variant}
|
||||
|
@ -416,6 +386,9 @@ BuildRequires: sparse
|
|||
%if %{with_perf}
|
||||
BuildRequires: elfutils-devel zlib-devel binutils-devel newt-devel python-devel perl(ExtUtils::Embed) bison flex
|
||||
BuildRequires: audit-libs-devel
|
||||
%ifnarch s390 s390x %{arm}
|
||||
BuildRequires: numactl-devel
|
||||
%endif
|
||||
%endif
|
||||
%if %{with_tools}
|
||||
BuildRequires: pciutils-devel gettext ncurses-devel
|
||||
|
@ -449,7 +422,6 @@ Source90: filter-x86_64.sh
|
|||
Source91: filter-armv7hl.sh
|
||||
Source92: filter-i686.sh
|
||||
Source93: filter-aarch64.sh
|
||||
Source94: filter-ppc.sh
|
||||
Source95: filter-ppc64.sh
|
||||
Source96: filter-ppc64le.sh
|
||||
Source97: filter-s390x.sh
|
||||
|
@ -471,8 +443,6 @@ Source32: config-x86-32-generic
|
|||
Source40: config-x86_64-generic
|
||||
|
||||
Source50: config-powerpc-generic
|
||||
Source51: config-powerpc32-generic
|
||||
Source52: config-powerpc32-smp
|
||||
Source53: config-powerpc64
|
||||
Source54: config-powerpc64p7
|
||||
Source55: config-powerpc64le
|
||||
|
@ -526,7 +496,7 @@ Patch00: patch-3.%{base_sublevel}-git%{gitrev}.xz
|
|||
Patch04: compile-fixes.patch
|
||||
|
||||
# build tweak for build ID magic, even for -vanilla
|
||||
Patch05: makefile-after_link.patch
|
||||
Patch05: kbuild-AFTER_LINK.patch
|
||||
|
||||
%if !%{nopatches}
|
||||
|
||||
|
@ -544,20 +514,41 @@ Patch470: die-floppy-die.patch
|
|||
|
||||
Patch500: Revert-Revert-ACPI-video-change-acpi-video-brightnes.patch
|
||||
|
||||
Patch510: silence-noise.patch
|
||||
Patch510: input-silence-i8042-noise.patch
|
||||
Patch530: silence-fbcon-logo.patch
|
||||
|
||||
Patch600: 0001-lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch
|
||||
Patch600: lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch
|
||||
|
||||
#rhbz 1126580
|
||||
Patch601: Kbuild-Add-an-option-to-enable-GCC-VTA.patch
|
||||
|
||||
Patch800: crash-driver.patch
|
||||
|
||||
# crypto/
|
||||
|
||||
# secure boot
|
||||
Patch1000: secure-modules.patch
|
||||
Patch1001: modsign-uefi.patch
|
||||
# atch1002: sb-hibernate.patch
|
||||
Patch1003: sysrq-secure-boot.patch
|
||||
Patch1000: Add-secure_modules-call.patch
|
||||
Patch1001: PCI-Lock-down-BAR-access-when-module-security-is-ena.patch
|
||||
Patch1002: x86-Lock-down-IO-port-access-when-module-security-is.patch
|
||||
Patch1003: ACPI-Limit-access-to-custom_method.patch
|
||||
Patch1004: asus-wmi-Restrict-debugfs-interface-when-module-load.patch
|
||||
Patch1005: Restrict-dev-mem-and-dev-kmem-when-module-loading-is.patch
|
||||
Patch1006: acpi-Ignore-acpi_rsdp-kernel-parameter-when-module-l.patch
|
||||
Patch1007: kexec-Disable-at-runtime-if-the-kernel-enforces-modu.patch
|
||||
Patch1008: x86-Restrict-MSR-access-when-module-loading-is-restr.patch
|
||||
Patch1009: Add-option-to-automatically-enforce-module-signature.patch
|
||||
Patch1010: efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch
|
||||
Patch1011: efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch
|
||||
Patch1012: efi-Add-EFI_SECURE_BOOT-bit.patch
|
||||
Patch1013: hibernate-Disable-in-a-signed-modules-environment.patch
|
||||
|
||||
Patch1014: Add-EFI-signature-data-types.patch
|
||||
Patch1015: Add-an-EFI-signature-blob-parser-and-key-loader.patch
|
||||
Patch1016: KEYS-Add-a-system-blacklist-keyring.patch
|
||||
Patch1017: MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch
|
||||
Patch1018: MODSIGN-Support-not-importing-certs-from-db.patch
|
||||
|
||||
Patch1019: Add-sysrq-option-to-disable-secure-boot-mode.patch
|
||||
|
||||
# virt + ksm patches
|
||||
|
||||
|
@ -565,7 +556,9 @@ Patch1003: sysrq-secure-boot.patch
|
|||
|
||||
# nouveau + drm fixes
|
||||
# intel drm is all merged upstream
|
||||
Patch1825: drm-i915-tame-the-chattermouth-v2.patch
|
||||
Patch1826: drm-i915-hush-check-crtc-state.patch
|
||||
Patch1827: drm-i915-Disable-verbose-state-checks.patch
|
||||
|
||||
# Quiet boot fixes
|
||||
|
||||
|
@ -580,17 +573,29 @@ Patch14000: hibernate-freeze-filesystems.patch
|
|||
|
||||
Patch14010: lis3-improve-handling-of-null-rate.patch
|
||||
|
||||
Patch15000: nowatchdog-on-virt.patch
|
||||
Patch15000: watchdog-Disable-watchdog-on-virtual-machines.patch
|
||||
|
||||
# PPC
|
||||
|
||||
# ARM64
|
||||
|
||||
# ARMv7
|
||||
Patch21020: arm-tegra-usb-no-reset-linux33.patch
|
||||
Patch21021: arm-beagle.patch
|
||||
Patch21022: arm-imx6-utilite.patch
|
||||
# http://www.spinics.net/lists/linux-tegra/msg17948.html
|
||||
Patch21023: arm-tegra-drmdetection.patch
|
||||
Patch21024: arm-qemu-fixdisplay.patch
|
||||
Patch21020: ARM-tegra-usb-no-reset.patch
|
||||
Patch21021: arm-dts-am335x-boneblack-lcdc-add-panel-info.patch
|
||||
Patch21022: arm-dts-am335x-boneblack-add-cpu0-opp-points.patch
|
||||
Patch21023: arm-dts-am335x-bone-common-enable-and-use-i2c2.patch
|
||||
Patch21024: arm-dts-am335x-bone-common-setup-default-pinmux-http.patch
|
||||
Patch21025: arm-dts-am335x-bone-common-add-uart2_pins-uart4_pins.patch
|
||||
Patch21026: pinctrl-pinctrl-single-must-be-initialized-early.patch
|
||||
|
||||
Patch21028: arm-i.MX6-Utilite-device-dtb.patch
|
||||
|
||||
# IOMMU crash fixes - https://lists.linuxfoundation.org/pipermail/iommu/2015-February/012329.html
|
||||
Patch21030: iommu-omap-Play-nice-in-multi-platform-builds.patch
|
||||
Patch21031: iommu-exynos-Play-nice-in-multi-platform-builds.patch
|
||||
Patch21032: iommu-rockchip-Play-nice-in-multi-platform-builds.patch
|
||||
|
||||
Patch21100: arm-highbank-l2-reverts.patch
|
||||
|
||||
#rhbz 754518
|
||||
Patch21235: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
|
||||
|
@ -599,39 +604,66 @@ Patch21235: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
|
|||
Patch21242: criu-no-expert.patch
|
||||
|
||||
#rhbz 892811
|
||||
Patch21247: ath9k_rx_dma_stop_check.patch
|
||||
Patch21247: ath9k-rx-dma-stop-check.patch
|
||||
|
||||
Patch22000: weird-root-dentry-name-debug.patch
|
||||
|
||||
#rhbz 1025603
|
||||
Patch25063: disable-libdw-unwind-on-non-x86.patch
|
||||
#rhbz 1094948
|
||||
Patch26131: acpi-video-Add-disable_native_backlight-quirk-for-Sa.patch
|
||||
|
||||
#rhbz 983342 1093120
|
||||
Patch25069: 0001-acpi-video-Add-4-new-models-to-the-use_native_backli.patch
|
||||
#rhbz 1186097
|
||||
Patch26135: acpi-video-add-disable_native_backlight_quirk_for_samsung_510r.patch
|
||||
|
||||
Patch26000: perf-lib64.patch
|
||||
#CVE-XXXX-XXXX rhbz 1189864 1192079
|
||||
Patch26136: vhost-scsi-potential-memory-corruption.patch
|
||||
|
||||
# Patch series from Hans for various backlight and platform driver fixes
|
||||
Patch26002: samsung-laptop-Add-broken-acpi-video-quirk-for-NC210.patch
|
||||
Patch26004: asus-wmi-Add-a-no-backlight-quirk.patch
|
||||
Patch26005: eeepc-wmi-Add-no-backlight-quirk-for-Asus-H87I-PLUS-.patch
|
||||
Patch26013: acpi-video-Add-use-native-backlight-quirk-for-the-Th.patch
|
||||
Patch26014: acpi-video-Add-use_native_backlight-quirk-for-HP-Pro.patch
|
||||
#CVE-2015-0275 rhbz 1193907 1195178
|
||||
Patch26138: ext4-Allocate-entire-range-in-zero-range.patch
|
||||
|
||||
Patch25109: revert-input-wacom-testing-result-shows-get_report-is-unnecessary.patch
|
||||
#rhbz 1190947
|
||||
Patch26141: Bluetooth-ath3k-Add-support-Atheros-AR5B195-combo-Mi.patch
|
||||
|
||||
#rhbz 1021036, submitted upstream
|
||||
Patch25110: 0001-ideapad-laptop-Change-Lenovo-Yoga-2-series-rfkill-ha.patch
|
||||
#rhbz 1200777 1200778
|
||||
Patch26159: Input-synaptics-retrieve-the-extended-capabilities-i.patch
|
||||
Patch26160: Input-synaptics-remove-TOPBUTTONPAD-property-for-Len.patch
|
||||
Patch26161: Input-synaptics-re-route-tracksticks-buttons-on-the-.patch
|
||||
Patch26162: Input-synaptics-remove-X1-Carbon-3rd-gen-from-the-to.patch
|
||||
Patch26163: Input-synaptics-remove-X250-from-the-topbuttonpad-li.patch
|
||||
|
||||
#CVE-2014-{5206,5207} rhbz 1129662 1129669
|
||||
Patch25119: namespaces-remount-fixes.patch
|
||||
#rhbz 1201532
|
||||
Patch26168: HID-multitouch-add-support-of-clickpads.patch
|
||||
|
||||
#rhbz 1134969
|
||||
Patch26019: Input-wacom-Add-support-for-the-Cintiq-Companion.patch
|
||||
#rhbz 1187004
|
||||
Patch26170: acpi-video-Allow-forcing-native-backlight-on-non-win.patch
|
||||
Patch26171: acpi-video-Add-force-native-backlight-quirk-for-Leno.patch
|
||||
|
||||
#CVE-2015-2666 rhbz 1204724 1204722
|
||||
Patch26172: x86-microcode-intel-Guard-against-stack-overflow-in-.patch
|
||||
|
||||
# git clone ssh://git.fedorahosted.org/git/kernel-arm64.git, git diff master...devel
|
||||
Patch30000: kernel-arm64.patch
|
||||
|
||||
#rhbz 1204512
|
||||
Patch26174: tun-return-proper-error-code-from-tun_do_read.patch
|
||||
|
||||
#CVE-2015-2150 rhbz 1196266 1200397
|
||||
Patch26175: xen-pciback-Don-t-disable-PCI_COMMAND-on-PCI-device-.patch
|
||||
|
||||
#rhbz 1207789
|
||||
Patch26177: tg3-Hold-tp-lock-before-calling-tg3_halt-from-tg3_in.patch
|
||||
|
||||
#CVE-2015-XXXX rhbz 1203712 1208491
|
||||
Patch26178: ipv6-Don-t-reduce-hop-limit-for-an-interface.patch
|
||||
|
||||
#rhbz 1208953
|
||||
Patch26179: pty-Fix-input-race-when-closing.patch
|
||||
|
||||
#rhbz 1210801
|
||||
Patch26180: HID-logitech-hidpp-add-a-module-parameter-to-keep-fi.patch
|
||||
|
||||
#rhbz 1205083
|
||||
Patch26181: 0001-iwlwifi-mvm-remove-WARN_ON-for-invalid-BA-notificati.patch
|
||||
|
||||
# END OF PATCH DEFINITIONS
|
||||
|
||||
%endif
|
||||
|
@ -909,15 +941,6 @@ Provides: kernel-%{?1:%{1}-}core-uname-r = %{KVERREL}%{?1:+%{1}}\
|
|||
|
||||
# Now, each variant package.
|
||||
|
||||
%define variant_summary The Linux kernel compiled for SMP machines
|
||||
%kernel_variant_package -n SMP smp
|
||||
%description smp-core
|
||||
This package includes a SMP version of the Linux kernel. It is
|
||||
required only on machines with two or more CPUs as well as machines with
|
||||
hyperthreading technology.
|
||||
|
||||
Install the kernel-smp package if your machine uses two or more CPUs.
|
||||
|
||||
%ifnarch armv7hl
|
||||
%define variant_summary The Linux kernel compiled for PAE capable machines
|
||||
%kernel_variant_package %{pae}
|
||||
|
@ -981,13 +1004,6 @@ exit 1
|
|||
%endif
|
||||
%endif
|
||||
|
||||
%if %{with_smponly}
|
||||
%if !%{with_smp}
|
||||
echo "Cannot build --with smponly, smp build is disabled"
|
||||
exit 1
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if "%{baserelease}" == "0"
|
||||
echo "baserelease must be greater than zero"
|
||||
exit 1
|
||||
|
@ -1201,7 +1217,7 @@ do
|
|||
done
|
||||
%endif
|
||||
|
||||
ApplyPatch makefile-after_link.patch
|
||||
ApplyPatch kbuild-AFTER_LINK.patch
|
||||
|
||||
#
|
||||
# misc small stuff to make things compile
|
||||
|
@ -1215,18 +1231,31 @@ ApplyOptionalPatch upstream-reverts.patch -R
|
|||
|
||||
# Architecture patches
|
||||
# x86(-64)
|
||||
ApplyPatch 0001-lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch
|
||||
ApplyPatch lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch
|
||||
|
||||
# PPC
|
||||
|
||||
# ARM64
|
||||
|
||||
#
|
||||
# ARM
|
||||
#
|
||||
ApplyPatch arm-tegra-usb-no-reset-linux33.patch
|
||||
ApplyPatch arm-beagle.patch
|
||||
ApplyPatch arm-imx6-utilite.patch
|
||||
ApplyPatch arm-tegra-drmdetection.patch
|
||||
ApplyPatch arm-qemu-fixdisplay.patch
|
||||
ApplyPatch ARM-tegra-usb-no-reset.patch
|
||||
|
||||
ApplyPatch arm-dts-am335x-boneblack-lcdc-add-panel-info.patch
|
||||
ApplyPatch arm-dts-am335x-boneblack-add-cpu0-opp-points.patch
|
||||
ApplyPatch arm-dts-am335x-bone-common-enable-and-use-i2c2.patch
|
||||
ApplyPatch arm-dts-am335x-bone-common-setup-default-pinmux-http.patch
|
||||
ApplyPatch arm-dts-am335x-bone-common-add-uart2_pins-uart4_pins.patch
|
||||
ApplyPatch pinctrl-pinctrl-single-must-be-initialized-early.patch
|
||||
|
||||
ApplyPatch arm-i.MX6-Utilite-device-dtb.patch
|
||||
|
||||
ApplyPatch iommu-omap-Play-nice-in-multi-platform-builds.patch
|
||||
ApplyPatch iommu-exynos-Play-nice-in-multi-platform-builds.patch
|
||||
ApplyPatch iommu-rockchip-Play-nice-in-multi-platform-builds.patch
|
||||
|
||||
ApplyPatch arm-highbank-l2-reverts.patch
|
||||
|
||||
#
|
||||
# bugfixes to drivers and filesystems
|
||||
|
@ -1274,12 +1303,14 @@ ApplyPatch die-floppy-die.patch
|
|||
ApplyPatch no-pcspkr-modalias.patch
|
||||
|
||||
# Silence some useless messages that still get printed with 'quiet'
|
||||
ApplyPatch silence-noise.patch
|
||||
ApplyPatch input-silence-i8042-noise.patch
|
||||
|
||||
# Make fbcon not show the penguins with 'quiet'
|
||||
ApplyPatch silence-fbcon-logo.patch
|
||||
|
||||
# Changes to upstream defaults.
|
||||
#rhbz 1126580
|
||||
ApplyPatch Kbuild-Add-an-option-to-enable-GCC-VTA.patch
|
||||
|
||||
# /dev/crash driver.
|
||||
ApplyPatch crash-driver.patch
|
||||
|
@ -1287,10 +1318,28 @@ ApplyPatch crash-driver.patch
|
|||
# crypto/
|
||||
|
||||
# secure boot
|
||||
ApplyPatch secure-modules.patch
|
||||
ApplyPatch modsign-uefi.patch
|
||||
# pplyPatch sb-hibernate.patch
|
||||
ApplyPatch sysrq-secure-boot.patch
|
||||
ApplyPatch Add-secure_modules-call.patch
|
||||
ApplyPatch PCI-Lock-down-BAR-access-when-module-security-is-ena.patch
|
||||
ApplyPatch x86-Lock-down-IO-port-access-when-module-security-is.patch
|
||||
ApplyPatch ACPI-Limit-access-to-custom_method.patch
|
||||
ApplyPatch asus-wmi-Restrict-debugfs-interface-when-module-load.patch
|
||||
ApplyPatch Restrict-dev-mem-and-dev-kmem-when-module-loading-is.patch
|
||||
ApplyPatch acpi-Ignore-acpi_rsdp-kernel-parameter-when-module-l.patch
|
||||
ApplyPatch kexec-Disable-at-runtime-if-the-kernel-enforces-modu.patch
|
||||
ApplyPatch x86-Restrict-MSR-access-when-module-loading-is-restr.patch
|
||||
ApplyPatch Add-option-to-automatically-enforce-module-signature.patch
|
||||
ApplyPatch efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch
|
||||
ApplyPatch efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch
|
||||
ApplyPatch efi-Add-EFI_SECURE_BOOT-bit.patch
|
||||
ApplyPatch hibernate-Disable-in-a-signed-modules-environment.patch
|
||||
|
||||
ApplyPatch Add-EFI-signature-data-types.patch
|
||||
ApplyPatch Add-an-EFI-signature-blob-parser-and-key-loader.patch
|
||||
ApplyPatch KEYS-Add-a-system-blacklist-keyring.patch
|
||||
ApplyPatch MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch
|
||||
ApplyPatch MODSIGN-Support-not-importing-certs-from-db.patch
|
||||
|
||||
ApplyPatch Add-sysrq-option-to-disable-secure-boot-mode.patch
|
||||
|
||||
# Assorted Virt Fixes
|
||||
|
||||
|
@ -1299,7 +1348,9 @@ ApplyPatch sysrq-secure-boot.patch
|
|||
# Nouveau DRM
|
||||
|
||||
# Intel DRM
|
||||
ApplyPatch drm-i915-tame-the-chattermouth-v2.patch
|
||||
ApplyPatch drm-i915-hush-check-crtc-state.patch
|
||||
ApplyPatch drm-i915-Disable-verbose-state-checks.patch
|
||||
|
||||
# Radeon DRM
|
||||
|
||||
|
@ -1312,7 +1363,7 @@ ApplyPatch disable-i8042-check-on-apple-mac.patch
|
|||
ApplyPatch lis3-improve-handling-of-null-rate.patch
|
||||
|
||||
# Disable watchdog on virtual machines.
|
||||
ApplyPatch nowatchdog-on-virt.patch
|
||||
ApplyPatch watchdog-Disable-watchdog-on-virtual-machines.patch
|
||||
|
||||
#rhbz 754518
|
||||
ApplyPatch scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
|
||||
|
@ -1323,33 +1374,39 @@ ApplyPatch scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
|
|||
ApplyPatch criu-no-expert.patch
|
||||
|
||||
#rhbz 892811
|
||||
ApplyPatch ath9k_rx_dma_stop_check.patch
|
||||
ApplyPatch ath9k-rx-dma-stop-check.patch
|
||||
|
||||
#rhbz 1025603
|
||||
ApplyPatch disable-libdw-unwind-on-non-x86.patch
|
||||
#rhbz 1094948
|
||||
ApplyPatch acpi-video-Add-disable_native_backlight-quirk-for-Sa.patch
|
||||
|
||||
#rhbz 983342 1093120
|
||||
ApplyPatch 0001-acpi-video-Add-4-new-models-to-the-use_native_backli.patch
|
||||
#rhbz 1186097
|
||||
ApplyPatch acpi-video-add-disable_native_backlight_quirk_for_samsung_510r.patch
|
||||
|
||||
ApplyPatch perf-lib64.patch
|
||||
#CVE-XXXX-XXXX rhbz 1189864 1192079
|
||||
ApplyPatch vhost-scsi-potential-memory-corruption.patch
|
||||
|
||||
# Patch series from Hans for various backlight and platform driver fixes
|
||||
ApplyPatch samsung-laptop-Add-broken-acpi-video-quirk-for-NC210.patch
|
||||
ApplyPatch asus-wmi-Add-a-no-backlight-quirk.patch
|
||||
ApplyPatch eeepc-wmi-Add-no-backlight-quirk-for-Asus-H87I-PLUS-.patch
|
||||
ApplyPatch acpi-video-Add-use-native-backlight-quirk-for-the-Th.patch
|
||||
ApplyPatch acpi-video-Add-use_native_backlight-quirk-for-HP-Pro.patch
|
||||
#CVE-2015-0275 rhbz 1193907 1195178
|
||||
ApplyPatch ext4-Allocate-entire-range-in-zero-range.patch
|
||||
|
||||
ApplyPatch revert-input-wacom-testing-result-shows-get_report-is-unnecessary.patch
|
||||
#rhbz 1190947
|
||||
ApplyPatch Bluetooth-ath3k-Add-support-Atheros-AR5B195-combo-Mi.patch
|
||||
|
||||
#rhbz 1021036, submitted upstream
|
||||
ApplyPatch 0001-ideapad-laptop-Change-Lenovo-Yoga-2-series-rfkill-ha.patch
|
||||
#rhbz 1200777 1200778
|
||||
ApplyPatch Input-synaptics-retrieve-the-extended-capabilities-i.patch
|
||||
ApplyPatch Input-synaptics-remove-TOPBUTTONPAD-property-for-Len.patch
|
||||
ApplyPatch Input-synaptics-re-route-tracksticks-buttons-on-the-.patch
|
||||
ApplyPatch Input-synaptics-remove-X1-Carbon-3rd-gen-from-the-to.patch
|
||||
ApplyPatch Input-synaptics-remove-X250-from-the-topbuttonpad-li.patch
|
||||
|
||||
#CVE-2014-{5206,5207} rhbz 1129662 1129669
|
||||
ApplyPatch namespaces-remount-fixes.patch
|
||||
#rhbz 1201532
|
||||
ApplyPatch HID-multitouch-add-support-of-clickpads.patch
|
||||
|
||||
#rhbz 1134969
|
||||
ApplyPatch Input-wacom-Add-support-for-the-Cintiq-Companion.patch
|
||||
#rhbz 1187004
|
||||
ApplyPatch acpi-video-Allow-forcing-native-backlight-on-non-win.patch
|
||||
ApplyPatch acpi-video-Add-force-native-backlight-quirk-for-Leno.patch
|
||||
|
||||
#CVE-2015-2666 rhbz 1204724 1204722
|
||||
ApplyPatch x86-microcode-intel-Guard-against-stack-overflow-in-.patch
|
||||
|
||||
%if 0%{?aarch64patches}
|
||||
ApplyPatch kernel-arm64.patch
|
||||
|
@ -1358,6 +1415,26 @@ ApplyPatch kernel-arm64.patch -R
|
|||
%endif
|
||||
%endif
|
||||
|
||||
#rhbz 1204512
|
||||
ApplyPatch tun-return-proper-error-code-from-tun_do_read.patch
|
||||
|
||||
#CVE-2015-2150 rhbz 1196266 1200397
|
||||
ApplyPatch xen-pciback-Don-t-disable-PCI_COMMAND-on-PCI-device-.patch
|
||||
|
||||
#rhbz 1207789
|
||||
ApplyPatch tg3-Hold-tp-lock-before-calling-tg3_halt-from-tg3_in.patch
|
||||
|
||||
#CVE-2015-XXXX rhbz 1203712 1208491
|
||||
ApplyPatch ipv6-Don-t-reduce-hop-limit-for-an-interface.patch
|
||||
|
||||
#rhbz 1208953
|
||||
ApplyPatch pty-Fix-input-race-when-closing.patch
|
||||
|
||||
#rhbz 1210801
|
||||
ApplyPatch HID-logitech-hidpp-add-a-module-parameter-to-keep-fi.patch
|
||||
|
||||
#rhbz 1205083
|
||||
ApplyPatch 0001-iwlwifi-mvm-remove-WARN_ON-for-invalid-BA-notificati.patch
|
||||
# END OF PATCH APPLICATIONS
|
||||
|
||||
%endif
|
||||
|
@ -1490,10 +1567,8 @@ BuildKernel() {
|
|||
%{make} -s ARCH=$Arch V=1 %{?_smp_mflags} modules %{?sparse_mflags} || exit 1
|
||||
|
||||
%ifarch %{arm} aarch64
|
||||
%{make} -s ARCH=$Arch V=1 dtbs
|
||||
mkdir -p $RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
|
||||
install -m 644 arch/$Arch/boot/dts/*.dtb $RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer/
|
||||
rm -f arch/$Arch/boot/dts/*.dtb
|
||||
%{make} -s ARCH=$Arch V=1 dtbs dtbs_install INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
|
||||
find arch/$Arch/boot/dts -name '*.dtb' -type f | xargs rm -f
|
||||
%endif
|
||||
|
||||
# Start installing the results
|
||||
|
@ -1581,7 +1656,7 @@ BuildKernel() {
|
|||
fi
|
||||
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*.o
|
||||
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*/*.o
|
||||
%ifarch ppc %{power64}
|
||||
%ifarch %{power64}
|
||||
cp -a --parents arch/powerpc/lib/crtsavres.[So] $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
||||
%endif
|
||||
if [ -d arch/%{asmarch}/include ]; then
|
||||
|
@ -1764,10 +1839,6 @@ BuildKernel %make_target %kernel_image %{pae}
|
|||
BuildKernel %make_target %kernel_image
|
||||
%endif
|
||||
|
||||
%if %{with_smp}
|
||||
BuildKernel %make_target %kernel_image smp
|
||||
%endif
|
||||
|
||||
%global perf_make \
|
||||
make -s %{?cross_opts} %{?_smp_mflags} -C tools/perf V=1 WERROR=0 NO_LIBUNWIND=1 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_LIBNUMA=1 NO_STRLCPY=1 NO_BIONIC=1 prefix=%{_prefix}
|
||||
%if %{with_perf}
|
||||
|
@ -1892,7 +1963,7 @@ find $RPM_BUILD_ROOT/usr/include \
|
|||
|
||||
%if %{with_perf}
|
||||
# perf tool binary and supporting scripts/binaries
|
||||
%{perf_make} DESTDIR=$RPM_BUILD_ROOT MULTILIBDIR=%{_lib} install-bin install-traceevent-plugins
|
||||
%{perf_make} DESTDIR=$RPM_BUILD_ROOT lib=%{_lib} install-bin install-traceevent-plugins
|
||||
# remove the 'trace' symlink.
|
||||
rm -f %{buildroot}%{_bindir}/trace
|
||||
|
||||
|
@ -2051,9 +2122,6 @@ fi}\
|
|||
%kernel_variant_preun
|
||||
%kernel_variant_post -r kernel-smp
|
||||
|
||||
%kernel_variant_preun smp
|
||||
%kernel_variant_post -v smp
|
||||
|
||||
%kernel_variant_preun %{pae}
|
||||
%kernel_variant_post -v %{pae} -r (kernel|kernel-smp)
|
||||
|
||||
|
@ -2208,7 +2276,6 @@ fi
|
|||
|
||||
|
||||
%kernel_variant_files %{with_up}
|
||||
%kernel_variant_files %{with_smp} smp
|
||||
%kernel_variant_files %{with_debug} debug
|
||||
%kernel_variant_files %{with_pae} %{pae}
|
||||
%kernel_variant_files %{with_pae_debug} %{pae}debug
|
||||
|
@ -2227,6 +2294,348 @@ fi
|
|||
# ||----w |
|
||||
# || ||
|
||||
%changelog
|
||||
* Thu Apr 23 2015 Laura Abbott <labbott@fedoraproject.com>
|
||||
- Fix noisy iwlwifi warning (rhbz 1205083)
|
||||
|
||||
* Mon Apr 20 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.19.5-200
|
||||
- Linux v3.19.5
|
||||
|
||||
* Fri Apr 17 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Allow disabling raw mode in logitech-hidpp (rhbz 1210801)
|
||||
|
||||
* Wed Apr 15 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch to fix tty closure race (rhbz 1208953)
|
||||
|
||||
* Mon Apr 13 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.19.4-200
|
||||
- Linux v3.19.4
|
||||
|
||||
* Thu Apr 02 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- DoS against IPv6 stacks due to improper handling of RA (rhbz 1203712 1208491)
|
||||
|
||||
* Wed Apr 01 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Backport patch to fix tg3 deadlock (rhbz 1207789)
|
||||
- Fix gssproxy (rhbz 1203913)
|
||||
- CVE-2015-2150 xen: NMIs triggerable by guests (rhbz 1196266 1200397)
|
||||
|
||||
* Thu Mar 26 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.19.3-200
|
||||
- Linux v3.19.3
|
||||
|
||||
* Thu Mar 26 2015 Peter Robinson <pbrobinson@fedoraproject.org>
|
||||
- Disable the broken CONFIG_MSM_IOMMU
|
||||
|
||||
* Tue Mar 24 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix tun bug causing Juniper VPN failure (rhbz 1204512)
|
||||
|
||||
* Mon Mar 23 2015 Josh Boyer <jwboyer@fedoraproject.org> - 3.19.2-201
|
||||
- Enable CONFIG_SND_BEBOB (rhbz 1204342)
|
||||
- Validate iovec range in sys_sendto/sys_recvfrom
|
||||
- CVE-2015-2666 execution in the early microcode loader (rhbz 1204724 1204722)
|
||||
|
||||
* Mon Mar 23 2015 Peter Robinson <pbrobinson@fedoraproject.org>
|
||||
- Refix Panda on ARMv7 crash on boot
|
||||
|
||||
* Fri Mar 20 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix brightness on Lenovo Ideapad Z570 (rhbz 1187004)
|
||||
|
||||
* Thu Mar 19 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.19.2-200
|
||||
- Linux v3.19.2
|
||||
|
||||
* Wed Mar 18 2015 Peter Robinson <pbrobinson@fedoraproject.org>
|
||||
- Add upstream aarch64 patch to fix hang due to cache invalidation bug
|
||||
- Fix aarch64 DTBs now they're in vendor sub dirs
|
||||
|
||||
* Tue Mar 17 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.19.1-201
|
||||
- Re-add patch to quiet i915 state machine
|
||||
|
||||
* Mon Mar 16 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.19.1-200
|
||||
- Linux v3.19.1
|
||||
|
||||
* Fri Mar 13 2015 Kyle McMartin <kyle@fedoraproject.org>
|
||||
- arm64-revert-tlb-rcu_table_free.patch: revert 5e5f6dc1 which causes
|
||||
lockups on arm64 machines.
|
||||
- Add kernel-4* to .gitignore.
|
||||
- arm64-fix-ooo-descriptor-read.patch: fix an xgene-enet crash.
|
||||
|
||||
* Fri Mar 13 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch to support clickpads (rhbz 1201532)
|
||||
|
||||
* Thu Mar 12 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2014-8159 infiniband: uverbs: unprotected physical memory access (rhbz 1181166 1200950)
|
||||
|
||||
* Wed Mar 11 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix blank screen after resume with various radeon devices (rhbz 1069027)
|
||||
- CVE-2015-2150 xen: NMIs triggerable by guests (rhbz 1196266 1200397)
|
||||
- Patch series to fix Lenovo *40 and Carbon X1 touchpads (rhbz 1200777 1200778)
|
||||
|
||||
* Tue Mar 10 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2015-2042 rds: information handling flaw in sysctl (rhbz 1195355 1199365)
|
||||
|
||||
* Mon Mar 09 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.18.9-200
|
||||
- Linux v3.18.9
|
||||
|
||||
* Mon Mar 02 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch to fix nfsd soft lockup (rhbz 1185519)
|
||||
- Enable ET131X driver (rhbz 1197842)
|
||||
|
||||
* Sat Feb 28 2015 Peter Robinson <pbrobinson@fedoraproject.org>
|
||||
- Fix Panda on ARMv7 crash on boot
|
||||
|
||||
* Fri Feb 27 2015 Kyle McMartin <kyle@fedoraproject.org> - 3.18.8-201
|
||||
- Fix up aarch64 build... mis-merge in kernel-arm64.patch.
|
||||
|
||||
* Fri Feb 27 2015 Josh Boyer <jwboyer@fedoraproject.org> - 3.18.8-200
|
||||
- Linux v3.18.8
|
||||
|
||||
* Thu Feb 26 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2015-1421 sctp: slab corruption from use after free on INIT collisions (rhbz 1196581 1196595)
|
||||
|
||||
* Wed Feb 25 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add support for AR5B195 devices from Alexander Ploumistos (rhbz 1190947)
|
||||
|
||||
* Tue Feb 24 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix ext4 remount with journal_checksum option (rhbz 1190933)
|
||||
|
||||
* Mon Feb 23 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch for HID i2c from Seth Forshee (rhbz 1188439)
|
||||
- CVE-2015-0275 ext4: fallocate zero range page size > block size BUG (rhbz 1193907 1195178)
|
||||
|
||||
* Fri Feb 20 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Move mtpspi and related mods to kernel-core for VMWare guests (rhbz 1194612)
|
||||
|
||||
* Mon Feb 16 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-XXXX-XXXX potential memory corruption in vhost/scsi driver (rhbz 1189864 1192079)
|
||||
- CVE-2015-1593 stack ASLR integer overflow (rhbz 1192519 1192520)
|
||||
|
||||
* Wed Feb 11 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.18.7-200
|
||||
- Linux v3.18.7
|
||||
- Add disable_native_backlight quirk for Samsung 510R (rhbz 1186097)
|
||||
|
||||
* Fri Feb 06 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.18.6-200
|
||||
- Linux v3.18.6
|
||||
|
||||
* Mon Feb 02 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.18.5-201
|
||||
- Fixup adjtimex freq validation on 32bit systems (rhbz 1188074)
|
||||
|
||||
* Mon Feb 02 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-XXXX-XXX DoS due to routing packets to too many different dsts/too fast (rhbz 1183744 1188347)
|
||||
|
||||
* Fri Jan 30 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.18.5-200
|
||||
- Linux v3.18.5
|
||||
|
||||
* Thu Jan 29 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Backport patch from Rob Clark to toggle i915 state machine checks
|
||||
- Disable i915 state checks
|
||||
|
||||
* Tue Jan 27 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.18.4-200
|
||||
- Linux v3.18.4
|
||||
|
||||
* Tue Jan 27 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2015-0239 kvm: insufficient sysenter emulation from 16-bit (rhbz 1186448 1186453)
|
||||
|
||||
* Mon Jan 19 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.18.3-201
|
||||
- Add fixes from 3.18.4 queue to fix i915 issues (rhbz 1183232)
|
||||
- xhci: Check if slot is already in default state before moving it there (rhbz 1183289)
|
||||
|
||||
* Fri Jan 16 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.18.3-200
|
||||
- Linux v3.18.3
|
||||
|
||||
* Thu Jan 15 2015 Justin M. Forbes <jforbes@fedoraproject.org>
|
||||
- Build fixes for big-endian arches
|
||||
|
||||
* Tue Jan 13 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.18.2-200
|
||||
- Linux v3.18.2
|
||||
|
||||
* Mon Jan 12 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2014-9585 ASLR brute-force possible for vdso (rhbz 1181054 1181056)
|
||||
- Backlight fixes for Samsung and Dell machines (rhbz 1094948 1115713 1163574)
|
||||
- Add various UAS quirks (rhbz 1124119)
|
||||
- Add patch to fix loop in VDSO (rhbz 1178975)
|
||||
|
||||
* Thu Jan 08 2015 Justin M. Forbes <jforbes@fedoraproject.org> - 3.17.8-300
|
||||
- Linux v3.17.8
|
||||
|
||||
* Wed Jan 07 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2014-9529 memory corruption or panic during key gc (rhbz 1179813 1179853)
|
||||
- Enable POWERCAP and INTEL_RAPL
|
||||
|
||||
* Tue Jan 06 2015 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2014-9419 partial ASLR bypass through TLS base addr leak (rhbz 1177260 1177263)
|
||||
- CVE-2014-9428 remote DoS via batman-adv (rhbz 1178826 1178833)
|
||||
- Fix CIFS login issue (rhbz 1163927)
|
||||
|
||||
* Mon Dec 29 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Enable F2FS (rhbz 972446)
|
||||
|
||||
* Thu Dec 18 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2014-8989 userns can bypass group restrictions (rhbz 1170684 1170688)
|
||||
- Fix dm-cache crash (rhbz 1168434)
|
||||
- Fix blk-mq crash on CPU hotplug (rhbz 1175261)
|
||||
|
||||
* Wed Dec 17 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Enable USBIP in modules-extra from Johnathan Dieter (rhbz 1169478)
|
||||
- CVE-2014-XXXX isofs: infinite loop in CE record entries (rhbz 1175235 1175250)
|
||||
|
||||
* Tue Dec 16 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Linux v3.17.7
|
||||
- CVE-2014-8559 deadlock due to incorrect usage of rename_lock (rhbz 1159313 1173814)
|
||||
- Add patch from Josh Stone to restore var-tracking via Kconfig (rhbz 1126580)
|
||||
|
||||
* Mon Dec 15 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix ppc64 boot with smt-enabled=off (rhbz 1173806)
|
||||
- CVE-2014-8133 x86: espfix(64) bypass via set_thread_area and CLONE_SETTLS (rhbz 1172797 1174374)
|
||||
|
||||
* Fri Dec 12 2014 Kyle McMartin <kyle@fedoraproject.org>
|
||||
- build in ahci_platform on aarch64 temporarily.
|
||||
|
||||
* Fri Dec 12 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Remove pointless warning in cfg80211 (rhbz 1172543)
|
||||
|
||||
* Wed Dec 10 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix MSI issues on another Samsung pci-e SSD (rhbz 1084928)
|
||||
- Fix UAS crashes with Seagate and Fresco Logic drives (rhbz 1164945)
|
||||
- CVE-2014-8134 fix espfix for 32-bit KVM paravirt guests (rhbz 1172765 1172769)
|
||||
|
||||
* Mon Dec 08 2014 Justin M. Forbes <jforbes@fedoraproject.org> - 3.17.6-300
|
||||
- Linux v3.17.6
|
||||
|
||||
* Fri Dec 05 2014 Kyle McMartin <kyle@fedoraproject.org> - 3.17.4-303
|
||||
- arm64-fix-xgene_enet_process_ring.patch: fix a panic under load.
|
||||
|
||||
* Thu Dec 04 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.4-302
|
||||
- CVE-2014-9090 local DoS via do_double_fault due to improper SS faults (rhbz 1170691)
|
||||
|
||||
* Thu Dec 04 2014 Kyle McMartin <kyle@fedoraproject.org>
|
||||
- kernel-arm64.patch: update.
|
||||
- arm64-force-serial-to-be-active-consdev.patch: force serial consoles
|
||||
to be the primary console device instead of defaulting to tty0. No
|
||||
changes to drivers outside of ARM-land.
|
||||
- arm64-vgic-error-to-info.patch: change an error to a warning so that
|
||||
kvm will work.
|
||||
|
||||
* Mon Dec 01 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch to quiet i915 driver on long hdps
|
||||
- Add patch to fix oops when using xpad (rhbz 1094048)
|
||||
|
||||
* Thu Nov 27 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.4-301
|
||||
- Add patch to fix radeon HDMI issues (rhbz 1167511)
|
||||
|
||||
* Mon Nov 24 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add quirk for Laser Mouse 6000 (rhbz 1165206)
|
||||
|
||||
* Fri Nov 21 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.4-300
|
||||
- Linux v3.17.4
|
||||
- Move TPM drivers to main kernel package (rhbz 1164937)
|
||||
|
||||
* Wed Nov 19 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.3-301
|
||||
- Disable SERIAL_8250 on s390x (rhbz 1158848)
|
||||
|
||||
* Fri Nov 14 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.3-300
|
||||
- Linux v3.17.3
|
||||
- Quiet WARN in i915 edp VDD handling
|
||||
- Enable I40EVF driver (rhbz 1164029)
|
||||
|
||||
* Thu Nov 13 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch for MS Surface Pro 3 Type Cover (rhbz 1135338)
|
||||
- CVE-2014-7843 aarch64: copying from /dev/zero causes local DoS (rhbz 1163744 1163745)
|
||||
- CVE-2014-7842 kvm: reporting emulation failures to userspace (rhbz 1163762 1163767)
|
||||
|
||||
* Wed Nov 12 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2014-7841 sctp: NULL ptr deref on malformed packet (rhbz 1163087 1163095)
|
||||
|
||||
* Mon Nov 10 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.2-301
|
||||
- Fix Samsung pci-e SSD handling on some macbooks (rhbz 1161805)
|
||||
- Add patch to fix crypto allocation issues on PAGE_SIZE > 4k
|
||||
|
||||
* Fri Nov 07 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix iwlwifi oops (rhbz 1151836)
|
||||
- CVE-2014-7826 CVE-2014-7825 insufficient syscall number validation in perf and ftrace subsystems (rhbz 1161565 1161572)
|
||||
|
||||
* Mon Nov 03 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix early ucode crash on 32-bit AMD machines (rhbz 1159592)
|
||||
|
||||
* Thu Oct 30 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.2-300
|
||||
- Linux v3.17.2
|
||||
|
||||
* Tue Oct 28 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add quirk for rfkill on Yoga 3 machines (rhbz 1157327)
|
||||
|
||||
* Fri Oct 24 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.1-304.fc21
|
||||
- CVE-2014-3610 kvm: noncanonical MSR writes (rhbz 1144883 1156543)
|
||||
- CVE-2014-3611 kvm: PIT timer race condition (rhbz 1144878 1156537)
|
||||
- CVE-2014-3646 kvm: vmx: invvpid vm exit not handled (rhbz 1144825 1156534)
|
||||
- CVE-2014-8369 kvm: excessive pages un-pinning in kvm_iommu_map error path (rhbz 1156518 1156522)
|
||||
- CVE-2014-8480 CVE-2014-8481 kvm: NULL pointer dereference during rip relative instruction emulation (rhbz 1156615 1156616)
|
||||
- Add touchpad quirk for Fujitsu Lifebook A544/AH544 models (rhbz 1111138)
|
||||
|
||||
* Wed Oct 22 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.1-303
|
||||
- CVE-2014-3688 sctp: remote memory pressure from excessive queuing (rhbz 1155745 1155751)
|
||||
- CVE-2014-3687 sctp: panic on duplicate ASCONF chunks (rhbz 1155731 1155738)
|
||||
- CVE-2014-3673 sctp: panic with malformed ASCONF chunks (rhbz 1147850 1155727)
|
||||
- CVE-2014-3690 kvm: invalid host cr4 handling (rhbz 1153322 1155372)
|
||||
- Add patch to fix synaptics forcepad issues (rhbz 1153381)
|
||||
- Add patch to fix wifi on X550VB machines (rhbz 1089731)
|
||||
|
||||
* Fri Oct 17 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.1-302
|
||||
- CVE-2014-8086 ext4: race condition (rhbz 1151353 1152608)
|
||||
|
||||
* Fri Oct 17 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.1-301
|
||||
- Enable B43_PHY_G to fix b43 driver regression (rhbz 1152502)
|
||||
- Add even more btrfs corruption/error fixes
|
||||
|
||||
* Wed Oct 15 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.1-300
|
||||
- Linux v3.17.1
|
||||
- Revert Btrfs ro snapshot commit that causes filesystem corruption
|
||||
|
||||
* Mon Oct 13 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2014-7975 fs: umount DoS (rhbz 1151108 1152025)
|
||||
|
||||
* Sun Oct 12 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Enable CONFIG_I2C_DESIGNWARE_PCI (rhbz 1045821)
|
||||
|
||||
* Fri Oct 10 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patches to fix elantech touchscreens (rhbz 1149509)
|
||||
- CVE-2014-7970 VFS: DoS with USER_NS (rhbz 1151095 1151484)
|
||||
- Drop doubly applied ACPI video quirk patches
|
||||
|
||||
* Wed Oct 08 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.0-301
|
||||
- Add patch to fix ATA blacklist
|
||||
|
||||
* Tue Oct 07 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch to fix GFS2 regression (from Bob Peterson)
|
||||
|
||||
* Mon Oct 06 2014 Kyle McMartin <kyle@fedoraproject.org>
|
||||
- enable 64K pages on arm64... (presently) needed to boot on amd seattle
|
||||
platforms due to physical memory being unreachable.
|
||||
|
||||
* Mon Oct 06 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.0-300
|
||||
- Linux v3.17
|
||||
|
||||
* Thu Sep 25 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.16.3-302
|
||||
- Enable early microcode loading (rhbz 1083716)
|
||||
- Bump prereq on dracut that defaults to early microcode
|
||||
|
||||
* Tue Sep 23 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch to fix XPS 13 touchpad issue (rhbz 1123584)
|
||||
|
||||
* Mon Sep 22 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch to fix i2c-hid touchpad resume (rhbz 1143812)
|
||||
|
||||
* Wed Sep 17 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.16.3-300
|
||||
- Linux v3.16.3
|
||||
|
||||
* Mon Sep 15 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2014-6410 udf: avoid infinite loop on indirect ICBs (rhbz 1141809 1141810)
|
||||
- CVE-2014-3186 HID: memory corruption via OOB write (rhbz 1141407 1141410)
|
||||
|
||||
* Fri Sep 12 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- CVE-2014-3181 HID: OOB write in magicmouse driver (rhbz 1141173 1141179)
|
||||
|
||||
* Thu Sep 11 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add support for touchpad in Asus X450 and X550 (rhbz 1110011)
|
||||
|
||||
* Wed Sep 10 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.16.2-301
|
||||
- CVE-2014-3631 Add patch to fix oops on keyring gc (rhbz 1116347)
|
||||
|
||||
* Mon Sep 8 2014 Peter Robinson <pbrobinson@fedoraproject.org>
|
||||
- Build tools on ppc64le (rhbz 1138884)
|
||||
- Some minor ppc64 cleanups
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue