Compare commits
486 Commits
Author | SHA1 | Date |
---|---|---|
Josh Boyer | 92024771d3 | |
Josh Boyer | 508ca30eb4 | |
Josh Boyer | 0fc7e2770c | |
Josh Boyer | 47ced1c194 | |
Josh Boyer | f7a6872899 | |
Josh Boyer | f1ce368bf3 | |
Laura Abbott | 17e7d60988 | |
Laura Abbott | 4e63f1c660 | |
Laura Abbott | fcaffe5661 | |
Josh Boyer | 1c448df41f | |
Laura Abbott | 0b8445e695 | |
Josh Boyer | 06e0c4c318 | |
Josh Boyer | c70650f9f5 | |
Josh Boyer | 212749a423 | |
Justin M. Forbes | 9d7acb0f3a | |
Josh Boyer | fe955c19df | |
Laura Abbott | 2d9377349e | |
Josh Boyer | e7ef2640e5 | |
Josh Boyer | 60776d8a5a | |
Laura Abbott | ea45716900 | |
Laura Abbott | 27c38fdeef | |
Laura Abbott | 2c4e8a4cff | |
Laura Abbott | 1b0ec5dee2 | |
Laura Abbott | 1e0fca9e7d | |
Laura Abbott | 8e9d5ed84c | |
Josh Boyer | 19eb7a7555 | |
Josh Boyer | cf08d03811 | |
Laura Abbott | 21044bd526 | |
Laura Abbott | fe83abe402 | |
Josh Boyer | b13a7a70a8 | |
Laura Abbott | 4e1269cf7f | |
Josh Boyer | 27a68c1c27 | |
Josh Boyer | 85d983710e | |
Laura Abbott | 5bb83455f5 | |
Justin M. Forbes | db792fca31 | |
Josh Boyer | 5c7482b870 | |
Josh Boyer | d53f072910 | |
Justin M. Forbes | adc7cf6980 | |
Josh Boyer | c293048f8e | |
Josh Boyer | 38b65a5673 | |
Josh Boyer | 8053c78d3f | |
Josh Boyer | d5c0e02a43 | |
Justin M. Forbes | fa02ba3c8d | |
Josh Boyer | 02d0c3ee78 | |
Josh Boyer | 3b4fe48582 | |
Josh Boyer | 91fac7ba57 | |
Josh Boyer | 3698a66ae1 | |
Josh Boyer | 8d780a4b9f | |
Josh Boyer | 968be73b97 | |
Josh Boyer | c862073d93 | |
Josh Boyer | 670e06ee92 | |
Josh Boyer | e7e1395af9 | |
Josh Boyer | 62775dbb5a | |
Justin M. Forbes | 747eba13f1 | |
Josh Boyer | 15a883b0e7 | |
Josh Boyer | b77a069031 | |
Peter Robinson | 8ab0a24351 | |
Josh Boyer | 7e5e21848d | |
Josh Boyer | 32e147be44 | |
Josh Boyer | ed0be189c5 | |
Josh Boyer | e4d2627c99 | |
Josh Boyer | 87e9e41595 | |
Josh Boyer | 19978814d6 | |
Josh Boyer | 460b59af1c | |
Josh Boyer | b65b450c49 | |
Josh Boyer | b36b25c685 | |
Justin M. Forbes | 4887e6b924 | |
Justin M. Forbes | 8b0e0fee0e | |
Justin M. Forbes | 55ca87d5e9 | |
Justin M. Forbes | a80685f4b8 | |
Josh Boyer | 586c0b53da | |
Justin M. Forbes | fcfe0d2e1f | |
Josh Boyer | 48737a8a75 | |
Justin M. Forbes | 1d791edb46 | |
Josh Boyer | 6716e0528c | |
Josh Boyer | a77899c5d1 | |
Josh Boyer | 1578b2969a | |
Josh Boyer | c1e3adc3b4 | |
Josh Boyer | a6dc6dcc9f | |
Josh Boyer | 3511b26836 | |
Justin M. Forbes | 30ae9f4f0f | |
Josh Boyer | 849ed18f5e | |
Josh Boyer | 9b002263fb | |
Josh Boyer | c6574d8f2c | |
Josh Boyer | b7f55b94e5 | |
Josh Boyer | b1799ad18e | |
Josh Boyer | e45fb62b03 | |
Josh Boyer | f311d1f572 | |
Josh Boyer | 72e79abe86 | |
Josh Boyer | dbc421068f | |
Jonathan Dieter | e1d72d2bd5 | |
Josh Boyer | 910d932b3c | |
Justin M. Forbes | fe93140cb9 | |
Josh Boyer | 57f388e1ba | |
Josh Boyer | 2c33b063a6 | |
Josh Boyer | c67568ab00 | |
Josh Boyer | 1da91757c4 | |
Josh Boyer | 7fcab281c7 | |
Josh Boyer | c21eb41ede | |
Josh Boyer | c26236c77d | |
Josh Boyer | cc06b03af2 | |
Josh Boyer | ac8a05e136 | |
Justin M. Forbes | ffb93cf51b | |
Josh Boyer | e5c890bcc0 | |
Josh Boyer | d95ce40d26 | |
Josh Boyer | 4cfebd637a | |
Josh Boyer | 803ec89d1b | |
Josh Boyer | 09752dd407 | |
Justin M. Forbes | 335cadc866 | |
Josh Boyer | 562f560fd5 | |
Josh Boyer | 2c63f68f53 | |
Josh Boyer | 18013ddcaa | |
Josh Boyer | 29e25fec76 | |
Justin M. Forbes | 4e41491b2a | |
Josh Boyer | 66f1128feb | |
Josh Boyer | 11934b6c67 | |
Josh Boyer | dabb919df4 | |
Josh Boyer | 273eeba034 | |
Josh Boyer | e5391d4a0a | |
Josh Boyer | e7ab6a4149 | |
Josh Boyer | 351cced975 | |
Josh Boyer | d2bc54d351 | |
Josh Boyer | 1a4cc485ab | |
Josh Boyer | b2ccf78bd6 | |
Josh Boyer | bae90fd333 | |
Justin M. Forbes | 2124afbf4e | |
Justin M. Forbes | 0f09adff3f | |
Justin M. Forbes | 0c45118133 | |
Josh Boyer | 9c5c6d86e2 | |
Josh Boyer | 5c5d585397 | |
Josh Boyer | 240facf620 | |
Josh Boyer | d3f043369c | |
Josh Boyer | 24fbce8a3f | |
Josh Boyer | 6b099d3d86 | |
Josh Boyer | ff659247a7 | |
Josh Boyer | 5d44dc759a | |
Josh Boyer | 56e56f3485 | |
Josh Boyer | 1a553bfb3c | |
Josh Boyer | 8c3de309e0 | |
Justin M. Forbes | 85cc13a687 | |
Josh Boyer | fd419ac0ab | |
Josh Boyer | 3b14b07627 | |
Josh Boyer | 1bd9528fb3 | |
Josh Boyer | 01d5f48aa9 | |
Josh Boyer | 34c1d79894 | |
Josh Boyer | 510c7683a6 | |
Justin M. Forbes | 69575927ce | |
Josh Boyer | 497f8b22ed | |
Justin M. Forbes | cd131961ef | |
Josh Boyer | 4c76d3278f | |
Josh Boyer | 87f5a635f5 | |
Justin M. Forbes | e256c8d22b | |
Josh Boyer | 8f7a9958de | |
Justin M. Forbes | 9e3eab42e5 | |
Josh Boyer | 52720ac370 | |
Josh Boyer | acfd908865 | |
Josh Boyer | 991eb3005e | |
Josh Boyer | 6ad55f3581 | |
Josh Boyer | c6ae5ec669 | |
Justin M. Forbes | 38bca0a4f0 | |
Josh Boyer | 0b76b87d52 | |
Josh Boyer | 77aea2e6d3 | |
Josh Boyer | 4f2dd82397 | |
Justin M. Forbes | 532f06fd8a | |
Josh Boyer | c4bac1da92 | |
Josh Boyer | e63d5588cb | |
Josh Boyer | 069da8a2ff | |
Josh Boyer | 3e7333673a | |
Josh Boyer | 7af6fba014 | |
Josh Boyer | d20c46e655 | |
Hans de Goede | 29e3dad504 | |
Justin M. Forbes | a30126f811 | |
Josh Boyer | 137b217d86 | |
Justin M. Forbes | 4981af8734 | |
Josh Boyer | 2810618300 | |
Justin M. Forbes | efc4216e5a | |
Justin M. Forbes | 53c1f7a31b | |
Hans de Goede | 2c75b3dc55 | |
Josh Boyer | a9f97e2368 | |
Josh Boyer | 3f5d7e20fc | |
Josh Boyer | af406c2d11 | |
Josh Boyer | 16aafab68c | |
Josh Boyer | 5624b40653 | |
Josh Boyer | 8d538163e8 | |
Josh Boyer | 0507e40392 | |
Josh Boyer | 9bffd6b2ed | |
Josh Boyer | 4f8d6e1221 | |
Josh Boyer | 719e3cadbe | |
Josh Boyer | c3e6c10be1 | |
Josh Boyer | cb4a8c74af | |
Peter Robinson | 1d6e19b61a | |
Justin M. Forbes | 6d252143b7 | |
Justin M. Forbes | 305024aa2a | |
Justin M. Forbes | c67f8002d6 | |
Hans de Goede | ea3f980e15 | |
Justin M. Forbes | 4878743046 | |
Justin M. Forbes | fd469c7db4 | |
Hans de Goede | 361bca8b87 | |
Justin M. Forbes | ee354f7a29 | |
Josh Boyer | 9c69028bc9 | |
Josh Boyer | 7c3f71aaad | |
Josh Boyer | 3c265413b5 | |
Josh Boyer | 6b565cced4 | |
Justin M. Forbes | 7ffd95d54c | |
Josh Boyer | c2ec67398c | |
Peter Robinson | 7c7ae77f2a | |
Josh Boyer | 522ffb5e83 | |
Josh Boyer | 02a6175b3c | |
Josh Boyer | e03017bf69 | |
Josh Boyer | 397d034942 | |
Josh Boyer | f16cb959de | |
Josh Boyer | f316a99e05 | |
Josh Boyer | 19e40bb8fa | |
Justin M. Forbes | 88a043febe | |
Justin M. Forbes | b0159b2ca7 | |
Josh Boyer | d9cf291312 | |
Josh Boyer | 196e1c5a81 | |
Josh Boyer | 8b86f1d222 | |
Josh Boyer | ca9a2b84bf | |
Justin M. Forbes | bda74fc058 | |
Josh Boyer | b7d1007306 | |
Peter Robinson | 513d33b35b | |
Josh Boyer | ffc3a4211e | |
Hans de Goede | 4215165e5c | |
Justin M. Forbes | 113ca254fc | |
Justin M. Forbes | 2555d62ee3 | |
Josh Boyer | 8eb39ff3b7 | |
Josh Boyer | c43ef0a65c | |
Neil Horman | 81e2ccddf6 | |
Josh Boyer | 70b6f2e94b | |
Justin M. Forbes | 122e19846f | |
Hans de Goede | 47a9033633 | |
Josh Boyer | 34d445d582 | |
Josh Boyer | 0dd4df32f2 | |
Hans de Goede | b2aa988fdb | |
Josh Boyer | 001ef40b86 | |
Josh Boyer | eec70ea731 | |
Josh Boyer | 05009c750b | |
Hans de Goede | 8b5b8cffdc | |
Hans de Goede | d68559aee0 | |
Josh Boyer | 21143b8204 | |
Josh Boyer | 9cf61afb0e | |
Justin M. Forbes | 56a2b5d4a8 | |
Josh Boyer | 107655b9b2 | |
Josh Boyer | 508411e608 | |
Hans de Goede | a41e4a9198 | |
Josh Boyer | 96eedb8918 | |
Josh Boyer | 7af24700f0 | |
Josh Boyer | 5a2828b4c2 | |
Justin M. Forbes | b1bf9ea7da | |
Hans de Goede | b126fec5d0 | |
Justin M. Forbes | 90af1aa03b | |
Hans de Goede | e906b02d91 | |
Josh Boyer | 703bcae787 | |
Josh Boyer | 9f44c7c1ae | |
Josh Boyer | fe4e507de8 | |
Josh Boyer | c4920da303 | |
Josh Boyer | 0b43d7ba40 | |
Justin M. Forbes | 3b47fa8101 | |
Justin M. Forbes | 0a72032278 | |
Josh Boyer | 23ad48d633 | |
Justin M. Forbes | 924a3cf38b | |
Hans de Goede | 9a7df3187f | |
Josh Boyer | 09a5d23d83 | |
Josh Boyer | ff89c8757c | |
Josh Boyer | 305a09258f | |
Josh Boyer | 20ac8e7c1a | |
Justin M. Forbes | bd9970d55a | |
Justin M. Forbes | 9b8355ef37 | |
Josh Boyer | e2a513c801 | |
Josh Boyer | da46ca9ba5 | |
Josh Boyer | 6001677098 | |
Josh Boyer | 873a763e63 | |
Josh Boyer | 1dd978d38f | |
Justin M. Forbes | 329a89d823 | |
Justin M. Forbes | d6a3b15971 | |
Josh Boyer | 65415cde98 | |
Josh Boyer | f007db1c15 | |
Josh Boyer | f388004d02 | |
Josh Boyer | 651db7a1a9 | |
Josh Boyer | 8af2582456 | |
Josh Boyer | 4db738d62c | |
Josh Boyer | 29008169c9 | |
Josh Boyer | 70c5e5d572 | |
Justin M. Forbes | 9a1f94b860 | |
Josh Boyer | ac17eece09 | |
Josh Boyer | d1abefe655 | |
Josh Boyer | 25d533701f | |
Josh Boyer | b23fd10e18 | |
Josh Boyer | bf0bd9037b | |
Josh Boyer | c6303f2525 | |
Josh Boyer | 6162a001a7 | |
Josh Boyer | a221e18914 | |
Josh Boyer | 34c59adfb2 | |
Justin M. Forbes | 578f09ad69 | |
Josh Boyer | 626da1be23 | |
Josh Boyer | 166c1bd457 | |
Justin M. Forbes | f7f0adff73 | |
Justin M. Forbes | 87ff8590f6 | |
Josh Boyer | 20823449a9 | |
Peter Robinson | 1a62f620b7 | |
Justin M. Forbes | ee193af2a6 | |
Josh Boyer | 0262fc1ed2 | |
Josh Boyer | 4443d18dd7 | |
Josh Boyer | 77eaf9ddfb | |
Josh Boyer | 21d6359f1a | |
Justin M. Forbes | 4bd72086e6 | |
Josh Boyer | aa5810928e | |
Josh Boyer | 451ae94d0c | |
Josh Boyer | 18e89ed90e | |
Josh Boyer | dd40c05e07 | |
Josh Boyer | 976099fa6d | |
Justin M. Forbes | bd9b83d21d | |
Peter Robinson | ee4f84c14f | |
Justin M. Forbes | 9a25d0e1a6 | |
Justin M. Forbes | 04f87ec0b8 | |
Justin M. Forbes | 0b1511021b | |
Justin M. Forbes | b4ba90fbe1 | |
Justin M. Forbes | 3e89e17795 | |
Josh Boyer | 85c4c59423 | |
Josh Boyer | d26fc94f79 | |
Justin M. Forbes | 910ba4c0fa | |
Justin M. Forbes | 221c35da49 | |
Justin M. Forbes | af7d19e23f | |
Peter Robinson | c1758ea6b6 | |
Justin M. Forbes | 947b4cbb27 | |
Josh Boyer | 7f4eab3f85 | |
Josh Boyer | a845163585 | |
Josh Boyer | 3d9c990cb0 | |
Neil Horman | 7c23e4cc68 | |
Peter Robinson | efe22cb8b2 | |
Peter Robinson | d75b506b57 | |
Justin M. Forbes | 0a89175f3d | |
Josh Boyer | e8459ac64b | |
Josh Boyer | a86e2a95be | |
Josh Boyer | 9a3ad8d77e | |
Josh Boyer | 569d051433 | |
Josh Boyer | 5a39acb644 | |
Josh Boyer | e8f3e3c9f0 | |
Peter Robinson | 2966e224b5 | |
Justin M. Forbes | 56f55299ff | |
Josh Boyer | a16697cbe5 | |
Josh Boyer | a72ba2a476 | |
Justin M. Forbes | 9b59417d62 | |
Justin M. Forbes | 8a4cdb7d97 | |
Josh Boyer | 697a9f6954 | |
Josh Boyer | e9c184ed46 | |
Josh Boyer | bc2597d340 | |
Josh Boyer | b4ba6a06e3 | |
Justin M. Forbes | e586b80d11 | |
Josh Boyer | 3176b53d38 | |
Justin M. Forbes | 4c74055fdc | |
Josh Boyer | ace8ec2197 | |
Josh Boyer | 5c768bb9ba | |
Josh Boyer | 77f6092bbe | |
Josh Boyer | 49a372e808 | |
Josh Boyer | 848305bf4b | |
Josh Boyer | 4b3d1bf0a9 | |
Josh Boyer | f1aa6ce30e | |
Peter Robinson | 39eb8941b3 | |
Josh Boyer | 01faeae584 | |
Josh Boyer | ec30fcc582 | |
Josh Boyer | 8b80893f1a | |
Josh Boyer | 95107a7719 | |
Josh Boyer | 5ecb5d5a5f | |
Josh Boyer | 1e151b97ae | |
Josh Boyer | 4f524a4fa1 | |
Josh Boyer | 20018afe55 | |
Josh Boyer | 46cdb6a4f6 | |
Josh Boyer | 0fb078eb21 | |
Josh Boyer | c3ad71cb77 | |
Dan Horák | df86f70991 | |
Josh Boyer | be8e6e6635 | |
Josh Boyer | b844003462 | |
Josh Boyer | c44d272f34 | |
Josh Boyer | a585abfb84 | |
Josh Boyer | 92187c40e6 | |
Josh Boyer | a61353cc58 | |
Josh Boyer | b00a9e762f | |
Josh Boyer | c74f0039a8 | |
Josh Boyer | 5c56c64df2 | |
Josh Boyer | 9ecd60bc79 | |
Josh Boyer | ff6c95e5b1 | |
Josh Boyer | 1e72703a7d | |
Josh Boyer | cb012c441e | |
Josh Boyer | 660194197a | |
Justin M. Forbes | 40a807fe99 | |
Adam Jackson | 896c40242e | |
Josh Boyer | dcb041e528 | |
Josh Boyer | 4be0e595bc | |
Kyle McMartin | ee930202bf | |
Josh Boyer | 2e6935aab4 | |
Justin M. Forbes | 1780b4d063 | |
Josh Boyer | dbd4557f85 | |
Josh Boyer | 347bd0b7c7 | |
Josh Boyer | 22d66be643 | |
Josh Boyer | 8306abd997 | |
Josh Boyer | 726bfe458f | |
Josh Boyer | 5cc2a046bb | |
Josh Boyer | b4e6ac5814 | |
Josh Boyer | 300cc785ae | |
Josh Boyer | 1c43d14db6 | |
Josh Boyer | d58808f719 | |
Adam Jackson | c75661c13e | |
Josh Boyer | 6886a21330 | |
Kyle McMartin | 78d9c2d6af | |
Kyle McMartin | 218cf1277f | |
Justin M. Forbes | e2e44f2747 | |
Josh Boyer | 4c84b436c8 | |
Josh Boyer | 28b7d43505 | |
Josh Boyer | e20c8bb873 | |
Josh Boyer | 8b84b3cea5 | |
Josh Boyer | 9618152514 | |
Josh Boyer | cf47c9ad9a | |
Josh Boyer | 441ef74af8 | |
Justin M. Forbes | bbac73168f | |
Kyle McMartin | ff656ccae5 | |
Josh Boyer | 3c3f32903f | |
Justin M. Forbes | 847f6e2114 | |
Josh Boyer | 5929ffcc9a | |
Josh Boyer | 7ca63537a1 | |
Josh Boyer | 6569a905e1 | |
Josh Boyer | d039f096ea | |
Josh Boyer | aefac4e6b3 | |
Josh Boyer | 839ac8c6d5 | |
Josh Boyer | afd752be98 | |
Peter Robinson | b562782bb5 | |
Justin M. Forbes | 9c7c4a0c3b | |
Josh Boyer | a9ae07e7fc | |
Josh Boyer | 3946c0ad19 | |
Josh Boyer | 84bd6b090b | |
Justin M. Forbes | 59fe9957e4 | |
Josh Boyer | c03c93a509 | |
Neil Horman | d03e212a28 | |
Justin M. Forbes | d0c88c03ce | |
Josh Boyer | 586ef2afb5 | |
Josh Boyer | a2f96ea45d | |
Justin M. Forbes | e618256f63 | |
Josh Boyer | c3fc265394 | |
Josh Boyer | 3a7ed913af | |
Josh Boyer | f40a945f78 | |
Justin M. Forbes | b61169ac06 | |
Josh Boyer | b3c4f43a95 | |
Josh Boyer | 5b4c959b18 | |
Neil Horman | 2539faeb02 | |
Josh Boyer | 515adeb457 | |
Josh Boyer | a132f6db57 | |
Josh Boyer | c0608a782d | |
Josh Boyer | c3c2c285a3 | |
Josh Boyer | 4e8c02453d | |
Josh Boyer | 4d7ada78a6 | |
Kyle McMartin | f51bbb9ecf | |
Kyle McMartin | 5c2be5b364 | |
Josh Boyer | 51396569b8 | |
Josh Boyer | 4a10e02303 | |
Josh Boyer | 2149e744bf | |
Josh Boyer | 7613b5a107 | |
Josh Boyer | 011edb0a96 | |
Josh Boyer | df469fea41 | |
Neil Horman | 1435d13433 | |
Neil Horman | d73ceae0fb | |
Josh Boyer | e13ea7f2e9 | |
Peter Robinson | 800e164db1 | |
Dennis Gilmore | 18eb3091cd | |
Kyle McMartin | 04104ce1e9 | |
Justin M. Forbes | 6f73c229e1 | |
Kyle McMartin | d548ee600a | |
Josh Boyer | 48e1fd66a5 | |
Peter Robinson | 1ebcd4a338 | |
Josh Boyer | 76b66ee100 | |
Kyle McMartin | b0c10942e2 | |
Josh Boyer | ee903899ec | |
Kyle McMartin | 50f399ba97 | |
Josh Boyer | 68d690a25d | |
Josh Boyer | 30f470e360 | |
Peter Robinson | 7afdac292c | |
Josh Boyer | 0bcd43561b | |
Josh Boyer | aeb5244979 | |
Josh Boyer | 4ceecbe8a7 | |
Josh Boyer | fb1047791d | |
Josh Boyer | ade6813db5 | |
Josh Boyer | ea2fc321ab | |
Josh Boyer | 3ac4bbfb8d | |
Kyle McMartin | 2780cdc943 | |
Josh Boyer | 74cf18f38c | |
Josh Boyer | e19bf2ec8e |
|
@ -1,2 +1,7 @@
|
|||
clog
|
||||
*.xz
|
||||
*.bz2
|
||||
*.rpm
|
||||
*.orig
|
||||
kernel-[23].*/
|
||||
perf-man-*.tar.gz
|
||||
|
|
|
@ -0,0 +1,52 @@
|
|||
From 25c1b8af5b11bd1dbd17d0c1212586bb56ec4efd Mon Sep 17 00:00:00 2001
|
||||
From: Laura Abbott <labbott@fedoraproject.org>
|
||||
Date: Fri, 8 May 2015 14:13:56 -0700
|
||||
Subject: [PATCH] HID: usbhid: Add HID_QUIRK_NOGET for Aten DVI KVM switch
|
||||
To: Jiri Kosina <jkosina@suse.cz>
|
||||
Cc: linux-input@vger.kernel.org
|
||||
Cc: linux-kernel@vger.kernel.org
|
||||
Cc: linux-usb@vger.kernel.org
|
||||
Cc: stephane.tranchemer@devinci.fr
|
||||
|
||||
Like other KVM switches, the Aten DVI KVM switch needs a
|
||||
quirk to avoid spewing errors:
|
||||
|
||||
[791759.606542] usb 1-5.4: input irq status -75 received
|
||||
[791759.614537] usb 1-5.4: input irq status -75 received
|
||||
[791759.622542] usb 1-5.4: input irq status -75 received
|
||||
|
||||
Add it.
|
||||
|
||||
Signed-off-by: Laura Abbott <labbott@fedoraproject.org>
|
||||
---
|
||||
drivers/hid/hid-ids.h | 1 +
|
||||
drivers/hid/usbhid/hid-quirks.c | 1 +
|
||||
2 files changed, 2 insertions(+)
|
||||
|
||||
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
|
||||
index 41f167e..7ce93d9 100644
|
||||
--- a/drivers/hid/hid-ids.h
|
||||
+++ b/drivers/hid/hid-ids.h
|
||||
@@ -164,6 +164,7 @@
|
||||
#define USB_DEVICE_ID_ATEN_2PORTKVM 0x2204
|
||||
#define USB_DEVICE_ID_ATEN_4PORTKVM 0x2205
|
||||
#define USB_DEVICE_ID_ATEN_4PORTKVMC 0x2208
|
||||
+#define USB_DEVICE_ID_ATEN_CS682 0x2213
|
||||
|
||||
#define USB_VENDOR_ID_ATMEL 0x03eb
|
||||
#define USB_DEVICE_ID_ATMEL_MULTITOUCH 0x211c
|
||||
diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c
|
||||
index a775143..4696895e 100644
|
||||
--- a/drivers/hid/usbhid/hid-quirks.c
|
||||
+++ b/drivers/hid/usbhid/hid-quirks.c
|
||||
@@ -61,6 +61,7 @@ static const struct hid_blacklist {
|
||||
{ USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_2PORTKVM, HID_QUIRK_NOGET },
|
||||
{ USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_4PORTKVM, HID_QUIRK_NOGET },
|
||||
{ USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_4PORTKVMC, HID_QUIRK_NOGET },
|
||||
+ { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_CS682, HID_QUIRK_NOGET },
|
||||
{ USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_FIGHTERSTICK, HID_QUIRK_NOGET },
|
||||
{ USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_COMBATSTICK, HID_QUIRK_NOGET },
|
||||
{ USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_FLIGHT_SIM_ECLIPSE_YOKE, HID_QUIRK_NOGET },
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
From 0ce518efc8ddd9d2d45dcc2f14b20032d1e88946 Mon Sep 17 00:00:00 2001
|
||||
From: Hans Verkuil <hverkuil@xs4all.nl>
|
||||
Date: Fri, 24 Apr 2015 08:55:07 +0200
|
||||
Subject: [PATCH] cx18: add missing caps for the PCM video device
|
||||
|
||||
The cx18 PCM video device didn't have any capabilities set, which caused a warnings
|
||||
in the v4l2 core:
|
||||
|
||||
[ 6.229393] ------------[ cut here ]------------
|
||||
[ 6.229414] WARNING: CPU: 1 PID: 593 at
|
||||
drivers/media/v4l2-core/v4l2-ioctl.c:1025 v4l_querycap+0x41/0x70
|
||||
[videodev]()
|
||||
[ 6.229415] Modules linked in: cx18_alsa mxl5005s s5h1409
|
||||
tuner_simple tuner_types cs5345 tuner intel_rapl iosf_mbi
|
||||
x86_pkg_temp_thermal coretemp raid1 snd_hda_codec_realtek kvm_intel
|
||||
snd_hda_codec_generic snd_hda_codec_hdmi kvm snd_oxygen(+) snd_hda_intel
|
||||
snd_oxygen_lib snd_hda_controller snd_hda_codec snd_mpu401_uart iTCO_wdt
|
||||
snd_rawmidi iTCO_vendor_support snd_hwdep crct10dif_pclmul crc32_pclmul
|
||||
crc32c_intel snd_seq cx18 snd_seq_device ghash_clmulni_intel
|
||||
videobuf_vmalloc tveeprom cx2341x snd_pcm serio_raw videobuf_core vfat
|
||||
dvb_core fat v4l2_common snd_timer videodev snd lpc_ich i2c_i801 joydev
|
||||
mfd_core mei_me media soundcore tpm_infineon soc_button_array tpm_tis
|
||||
mei shpchp tpm nfsd auth_rpcgss nfs_acl lockd grace sunrpc binfmt_misc
|
||||
i915 nouveau mxm_wmi wmi e1000e ttm i2c_algo_bit drm_kms_helper
|
||||
[ 6.229444] drm ptp pps_core video
|
||||
[ 6.229446] CPU: 1 PID: 593 Comm: v4l_id Not tainted
|
||||
3.19.3-200.fc21.x86_64 #1
|
||||
[ 6.229447] Hardware name: Gigabyte Technology Co., Ltd.
|
||||
Z87-D3HP/Z87-D3HP-CF, BIOS F6 01/20/2014
|
||||
[ 6.229448] 0000000000000000 00000000d12b1131 ffff88042dacfc28
|
||||
ffffffff8176e215
|
||||
[ 6.229449] 0000000000000000 0000000000000000 ffff88042dacfc68
|
||||
ffffffff8109bc1a
|
||||
[ 6.229451] ffffffffa0594000 ffff88042dacfd90 0000000000000000
|
||||
ffffffffa04e2140
|
||||
[ 6.229452] Call Trace:
|
||||
[ 6.229466] [<ffffffff8176e215>] dump_stack+0x45/0x57
|
||||
[ 6.229469] [<ffffffff8109bc1a>] warn_slowpath_common+0x8a/0xc0
|
||||
[ 6.229472] [<ffffffff8109bd4a>] warn_slowpath_null+0x1a/0x20
|
||||
[ 6.229474] [<ffffffffa04ca401>] v4l_querycap+0x41/0x70 [videodev]
|
||||
[ 6.229477] [<ffffffffa04ca6cc>] __video_do_ioctl+0x29c/0x320 [videodev]
|
||||
[ 6.229479] [<ffffffff81227131>] ? do_last+0x2f1/0x1210
|
||||
[ 6.229491] [<ffffffffa04cc776>] video_usercopy+0x366/0x5d0 [videodev]
|
||||
[ 6.229494] [<ffffffffa04ca430>] ? v4l_querycap+0x70/0x70 [videodev]
|
||||
[ 6.229497] [<ffffffffa04cc9f5>] video_ioctl2+0x15/0x20 [videodev]
|
||||
[ 6.229499] [<ffffffffa04c6794>] v4l2_ioctl+0x164/0x180 [videodev]
|
||||
[ 6.229501] [<ffffffff8122e298>] do_vfs_ioctl+0x2f8/0x500
|
||||
[ 6.229502] [<ffffffff8122e521>] SyS_ioctl+0x81/0xa0
|
||||
[ 6.229505] [<ffffffff81774a09>] system_call_fastpath+0x12/0x17
|
||||
[ 6.229506] ---[ end trace dacd80d4b19277ea ]---
|
||||
|
||||
Added the necessary capabilities to stop this warning.
|
||||
|
||||
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
|
||||
Reported-by: Laura Abbott <labbott@redhat.com>
|
||||
Cc: <stable@vger.kernel.org> # for v3.19 and up
|
||||
---
|
||||
drivers/media/pci/cx18/cx18-streams.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/media/pci/cx18/cx18-streams.c b/drivers/media/pci/cx18/cx18-streams.c
|
||||
index c82d25d..c986084 100644
|
||||
--- a/drivers/media/pci/cx18/cx18-streams.c
|
||||
+++ b/drivers/media/pci/cx18/cx18-streams.c
|
||||
@@ -90,6 +90,7 @@ static struct {
|
||||
"encoder PCM audio",
|
||||
VFL_TYPE_GRABBER, CX18_V4L2_ENC_PCM_OFFSET,
|
||||
PCI_DMA_FROMDEVICE,
|
||||
+ V4L2_CAP_TUNER | V4L2_CAP_AUDIO | V4L2_CAP_READWRITE,
|
||||
},
|
||||
{ /* CX18_ENC_STREAM_TYPE_IDX */
|
||||
"encoder IDX",
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,92 @@
|
|||
From: Laura Abbott <labbott@fedoraproject.org>
|
||||
Date: Tue, 28 Apr 2015 15:37:44 -0700
|
||||
Subject: [PATCH] firmware: Drop WARN from usermodehelper_read_trylock error
|
||||
case
|
||||
|
||||
We've received a number of reports of warnings when coming
|
||||
out of suspend with certain bluetooth firmware configurations:
|
||||
|
||||
WARNING: CPU: 3 PID: 3280 at drivers/base/firmware_class.c:1126
|
||||
_request_firmware+0x558/0x810()
|
||||
Modules linked in: ccm ip6t_rpfilter ip6t_REJECT nf_reject_ipv6
|
||||
xt_conntrack ebtable_nat ebtable_broute bridge stp llc ebtable_filter
|
||||
ebtables ip6table_nat nf_conntrack_ipv6 nf_defrag_ipv6 nf_nat_ipv6
|
||||
ip6table_mangle ip6table_security ip6table_raw ip6table_filter
|
||||
ip6_tables iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4
|
||||
nf_nat nf_conntrack iptable_mangle iptable_security iptable_raw
|
||||
binfmt_misc bnep intel_rapl iosf_mbi arc4 x86_pkg_temp_thermal
|
||||
snd_hda_codec_hdmi coretemp kvm_intel joydev snd_hda_codec_realtek
|
||||
iwldvm snd_hda_codec_generic kvm iTCO_wdt mac80211 iTCO_vendor_support
|
||||
snd_hda_intel snd_hda_controller snd_hda_codec crct10dif_pclmul
|
||||
snd_hwdep crc32_pclmul snd_seq crc32c_intel ghash_clmulni_intel uvcvideo
|
||||
snd_seq_device iwlwifi btusb videobuf2_vmalloc snd_pcm videobuf2_core
|
||||
serio_raw bluetooth cfg80211 videobuf2_memops sdhci_pci v4l2_common
|
||||
videodev thinkpad_acpi sdhci i2c_i801 lpc_ich mfd_core wacom mmc_core
|
||||
media snd_timer tpm_tis hid_logitech_hidpp wmi tpm rfkill snd mei_me mei
|
||||
shpchp soundcore nfsd auth_rpcgss nfs_acl lockd grace sunrpc i915
|
||||
i2c_algo_bit drm_kms_helper e1000e drm hid_logitech_dj ptp pps_core
|
||||
video
|
||||
CPU: 3 PID: 3280 Comm: kworker/u17:0 Not tainted 3.19.3-200.fc21.x86_64
|
||||
Hardware name: LENOVO 343522U/343522U, BIOS GCET96WW (2.56 ) 10/22/2013
|
||||
Workqueue: hci0 hci_power_on [bluetooth]
|
||||
0000000000000000 0000000089944328 ffff88040acffb78 ffffffff8176e215
|
||||
0000000000000000 0000000000000000 ffff88040acffbb8 ffffffff8109bc1a
|
||||
0000000000000000 ffff88040acffcd0 00000000fffffff5 ffff8804076bac40
|
||||
Call Trace:
|
||||
[<ffffffff8176e215>] dump_stack+0x45/0x57
|
||||
[<ffffffff8109bc1a>] warn_slowpath_common+0x8a/0xc0
|
||||
[<ffffffff8109bd4a>] warn_slowpath_null+0x1a/0x20
|
||||
[<ffffffff814dbe78>] _request_firmware+0x558/0x810
|
||||
[<ffffffff814dc165>] request_firmware+0x35/0x50
|
||||
[<ffffffffa03a7886>] btusb_setup_bcm_patchram+0x86/0x590 [btusb]
|
||||
[<ffffffff814d40e6>] ? rpm_idle+0xd6/0x230
|
||||
[<ffffffffa04d4801>] hci_dev_do_open+0xe1/0xa90 [bluetooth]
|
||||
[<ffffffff810c51dd>] ? ttwu_do_activate.constprop.90+0x5d/0x70
|
||||
[<ffffffffa04d5980>] hci_power_on+0x40/0x200 [bluetooth]
|
||||
[<ffffffff810b487c>] process_one_work+0x14c/0x3f0
|
||||
[<ffffffff810b52f3>] worker_thread+0x53/0x470
|
||||
[<ffffffff810b52a0>] ? rescuer_thread+0x300/0x300
|
||||
[<ffffffff810ba548>] kthread+0xd8/0xf0
|
||||
[<ffffffff810ba470>] ? kthread_create_on_node+0x1b0/0x1b0
|
||||
[<ffffffff81774958>] ret_from_fork+0x58/0x90
|
||||
[<ffffffff810ba470>] ? kthread_create_on_node+0x1b0/0x1b0
|
||||
|
||||
This occurs after every resume.
|
||||
|
||||
When resuming, the bluetooth driver needs to re-request the
|
||||
firmware. This re-request is happening before usermodehelper
|
||||
is fully enabled. If the firmware load succeeded previously, the
|
||||
caching behavior of the firmware code typically negates the
|
||||
need to call the usermodehelper code again and the request
|
||||
succeeds. If the firmware was never loaded because it isn't
|
||||
actually present in the file system, this results in a call
|
||||
to usermodehelper and a failure warning every resume.
|
||||
|
||||
The proper fix is to add a reset_resume functionality to the
|
||||
btusb driver to be able to handle the resume case. The
|
||||
work for this is ongoing so in the mean time just silence
|
||||
the warning since we know it's a problem.
|
||||
|
||||
Bugzilla: 1133378
|
||||
Upstream-status: Working on it. It's a difficult problem :(
|
||||
Signed-off-by: Laura Abbott <labbott@fedoraproject.org>
|
||||
---
|
||||
drivers/base/firmware_class.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
|
||||
index 171841a..48ce9ac 100644
|
||||
--- a/drivers/base/firmware_class.c
|
||||
+++ b/drivers/base/firmware_class.c
|
||||
@@ -1115,7 +1115,7 @@ _request_firmware(const struct firmware **firmware_p, const char *name,
|
||||
}
|
||||
} else {
|
||||
ret = usermodehelper_read_trylock();
|
||||
- if (WARN_ON(ret)) {
|
||||
+ if (ret) {
|
||||
dev_err(device, "firmware: %s will not be loaded\n",
|
||||
name);
|
||||
goto out;
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
From e989a73ebd09d22c22ead51fa363a2f56f70f28a Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Reitmayr <treitmayr@devbase.at>
|
||||
Date: Fri, 1 May 2015 20:18:04 -0300
|
||||
Subject: [PATCH] [media] media: Fix regression in some more dib0700 based
|
||||
devices
|
||||
|
||||
Fix an oops during device initialization by correctly setting size_of_priv
|
||||
instead of leaving it 0.
|
||||
The regression was introduced by 8abe4a0a3f6d4217b16a ("[media] dib7000:
|
||||
export just one symbol") and only fixed for one type of dib0700 based
|
||||
devices in 9e334c75642b6e5bfb95 ("[media] Fix regression in some dib0700
|
||||
based devices").
|
||||
|
||||
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=92301
|
||||
|
||||
Fixes: 8abe4a0a3f6d4217b16a ("[media] dib7000: export just one symbol")
|
||||
|
||||
Cc: stable@vger.kernel.org # for version 3.17+
|
||||
Signed-off-by: Thomas Reitmayr <treitmayr@devbase.at>
|
||||
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
||||
---
|
||||
drivers/media/usb/dvb-usb/dib0700_devices.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/drivers/media/usb/dvb-usb/dib0700_devices.c b/drivers/media/usb/dvb-usb/dib0700_devices.c
|
||||
index 90cee38..e87ce83 100644
|
||||
--- a/drivers/media/usb/dvb-usb/dib0700_devices.c
|
||||
+++ b/drivers/media/usb/dvb-usb/dib0700_devices.c
|
||||
@@ -3944,6 +3944,8 @@ struct dvb_usb_device_properties dib0700_devices[] = {
|
||||
|
||||
DIB0700_DEFAULT_STREAMING_CONFIG(0x02),
|
||||
}},
|
||||
+ .size_of_priv = sizeof(struct
|
||||
+ dib0700_adapter_state),
|
||||
}, {
|
||||
.num_frontends = 1,
|
||||
.fe = {{
|
||||
@@ -3956,6 +3958,8 @@ struct dvb_usb_device_properties dib0700_devices[] = {
|
||||
|
||||
DIB0700_DEFAULT_STREAMING_CONFIG(0x03),
|
||||
}},
|
||||
+ .size_of_priv = sizeof(struct
|
||||
+ dib0700_adapter_state),
|
||||
}
|
||||
},
|
||||
|
||||
@@ -4009,6 +4013,8 @@ struct dvb_usb_device_properties dib0700_devices[] = {
|
||||
|
||||
DIB0700_DEFAULT_STREAMING_CONFIG(0x02),
|
||||
}},
|
||||
+ .size_of_priv = sizeof(struct
|
||||
+ dib0700_adapter_state),
|
||||
},
|
||||
},
|
||||
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
From 6e9344fd8e90ff0bd8e74c15ec7c21eae7d54bd3 Mon Sep 17 00:00:00 2001
|
||||
From: Amitkumar Karwar <akarwar@marvell.com>
|
||||
Date: Thu, 12 Mar 2015 00:38:40 -0700
|
||||
Subject: [PATCH] mwifiex: use del_timer variant in interrupt context
|
||||
|
||||
We might be in interrupt context at few places. So replace
|
||||
del_timer_sync() with del_timer(). This patch fixes a kernel
|
||||
trace problem seen occasionally during our testing.
|
||||
|
||||
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
|
||||
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
|
||||
---
|
||||
drivers/net/wireless/mwifiex/main.c | 2 +-
|
||||
drivers/net/wireless/mwifiex/sta_event.c | 4 ++--
|
||||
drivers/net/wireless/mwifiex/usb.c | 2 +-
|
||||
3 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/mwifiex/main.c b/drivers/net/wireless/mwifiex/main.c
|
||||
index 74488ab..42bf884 100644
|
||||
--- a/drivers/net/wireless/mwifiex/main.c
|
||||
+++ b/drivers/net/wireless/mwifiex/main.c
|
||||
@@ -247,7 +247,7 @@ process_start:
|
||||
if (IS_CARD_RX_RCVD(adapter)) {
|
||||
adapter->data_received = false;
|
||||
adapter->pm_wakeup_fw_try = false;
|
||||
- del_timer_sync(&adapter->wakeup_timer);
|
||||
+ del_timer(&adapter->wakeup_timer);
|
||||
if (adapter->ps_state == PS_STATE_SLEEP)
|
||||
adapter->ps_state = PS_STATE_AWAKE;
|
||||
} else {
|
||||
diff --git a/drivers/net/wireless/mwifiex/sta_event.c b/drivers/net/wireless/mwifiex/sta_event.c
|
||||
index 64c4223..0dc7a1d 100644
|
||||
--- a/drivers/net/wireless/mwifiex/sta_event.c
|
||||
+++ b/drivers/net/wireless/mwifiex/sta_event.c
|
||||
@@ -312,7 +312,7 @@ int mwifiex_process_sta_event(struct mwifiex_private *priv)
|
||||
adapter->ps_state = PS_STATE_AWAKE;
|
||||
adapter->pm_wakeup_card_req = false;
|
||||
adapter->pm_wakeup_fw_try = false;
|
||||
- del_timer_sync(&adapter->wakeup_timer);
|
||||
+ del_timer(&adapter->wakeup_timer);
|
||||
break;
|
||||
}
|
||||
if (!mwifiex_send_null_packet
|
||||
@@ -327,7 +327,7 @@ int mwifiex_process_sta_event(struct mwifiex_private *priv)
|
||||
adapter->ps_state = PS_STATE_AWAKE;
|
||||
adapter->pm_wakeup_card_req = false;
|
||||
adapter->pm_wakeup_fw_try = false;
|
||||
- del_timer_sync(&adapter->wakeup_timer);
|
||||
+ del_timer(&adapter->wakeup_timer);
|
||||
|
||||
break;
|
||||
|
||||
diff --git a/drivers/net/wireless/mwifiex/usb.c b/drivers/net/wireless/mwifiex/usb.c
|
||||
index 2238730..8beb38c 100644
|
||||
--- a/drivers/net/wireless/mwifiex/usb.c
|
||||
+++ b/drivers/net/wireless/mwifiex/usb.c
|
||||
@@ -1006,7 +1006,7 @@ static int mwifiex_pm_wakeup_card(struct mwifiex_adapter *adapter)
|
||||
{
|
||||
/* Simulation of HS_AWAKE event */
|
||||
adapter->pm_wakeup_fw_try = false;
|
||||
- del_timer_sync(&adapter->wakeup_timer);
|
||||
+ del_timer(&adapter->wakeup_timer);
|
||||
adapter->pm_wakeup_card_req = false;
|
||||
adapter->ps_state = PS_STATE_AWAKE;
|
||||
|
||||
--
|
||||
2.4.1
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
From 9983ea5b8ff57286d625787ee8fd6ce5df430fbc Mon Sep 17 00:00:00 2001
|
||||
From: Laura Abbott <labbott@fedoraproject.org>
|
||||
Date: Wed, 13 May 2015 17:03:06 -0700
|
||||
Subject: [PATCH] n_tty: Fix auditing support for cannonical mode
|
||||
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
To: Jiri Slaby <jslaby@suse.cz>
|
||||
To: Peter Hurley <peter@hurleysoftware.com>
|
||||
To: Andy Lutomirski <luto@amacapital.net>
|
||||
Cc: linux-kernel@vger.kernel.org
|
||||
|
||||
Commit 32f13521ca68bc624ff6effc77f308a52b038bf0
|
||||
("n_tty: Line copy to user buffer in canonical mode")
|
||||
changed cannonical mode copying to use copy_to_user
|
||||
but missed adding the call to the audit framework.
|
||||
Add in the appropriate functions to get audit support.
|
||||
|
||||
Fixes: 32f13521ca68 ("n_tty: Line copy to user buffer in canonical mode")
|
||||
Reported-by: Miloslav Trmač <mitr@redhat.com>
|
||||
Signed-off-by: Laura Abbott <labbott@fedoraproject.org>
|
||||
---
|
||||
drivers/tty/n_tty.c | 17 ++++++++++++++---
|
||||
1 file changed, 14 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/tty/n_tty.c b/drivers/tty/n_tty.c
|
||||
index cf6e0f2..1a3d39b 100644
|
||||
--- a/drivers/tty/n_tty.c
|
||||
+++ b/drivers/tty/n_tty.c
|
||||
@@ -162,6 +162,17 @@ static inline int tty_put_user(struct tty_struct *tty, unsigned char x,
|
||||
return put_user(x, ptr);
|
||||
}
|
||||
|
||||
+static inline int tty_copy_to_user(struct tty_struct *tty,
|
||||
+ void __user *to,
|
||||
+ const void *from,
|
||||
+ unsigned long n)
|
||||
+{
|
||||
+ struct n_tty_data *ldata = tty->disc_data;
|
||||
+
|
||||
+ tty_audit_add_data(tty, to, n, ldata->icanon);
|
||||
+ return copy_to_user(to, from, n);
|
||||
+}
|
||||
+
|
||||
/**
|
||||
* n_tty_kick_worker - start input worker (if required)
|
||||
* @tty: terminal
|
||||
@@ -2072,12 +2083,12 @@ static int canon_copy_from_read_buf(struct tty_struct *tty,
|
||||
__func__, eol, found, n, c, size, more);
|
||||
|
||||
if (n > size) {
|
||||
- ret = copy_to_user(*b, read_buf_addr(ldata, tail), size);
|
||||
+ ret = tty_copy_to_user(tty, *b, read_buf_addr(ldata, tail), size);
|
||||
if (ret)
|
||||
return -EFAULT;
|
||||
- ret = copy_to_user(*b + size, ldata->read_buf, n - size);
|
||||
+ ret = tty_copy_to_user(tty, *b + size, ldata->read_buf, n - size);
|
||||
} else
|
||||
- ret = copy_to_user(*b, read_buf_addr(ldata, tail), n);
|
||||
+ ret = tty_copy_to_user(tty, *b, read_buf_addr(ldata, tail), n);
|
||||
|
||||
if (ret)
|
||||
return -EFAULT;
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,70 @@
|
|||
From 6b9a44d0939ca6235c72b811bd55b462d6a0a553 Mon Sep 17 00:00:00 2001
|
||||
From: Christoph Hellwig <hch@lst.de>
|
||||
Date: Sun, 22 Feb 2015 08:48:41 -0800
|
||||
Subject: [PATCH] target: use vfs_iter_read/write in fd_do_rw
|
||||
|
||||
Signed-off-by: Christoph Hellwig <hch@lst.de>
|
||||
Reviewed-by: Sagi Grimberg <sagig@mellanox.com>
|
||||
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
|
||||
---
|
||||
drivers/target/target_core_file.c | 31 ++++++++++++++-----------------
|
||||
1 file changed, 14 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/drivers/target/target_core_file.c b/drivers/target/target_core_file.c
|
||||
index 44620fb..ea6e14e 100644
|
||||
--- a/drivers/target/target_core_file.c
|
||||
+++ b/drivers/target/target_core_file.c
|
||||
@@ -331,36 +331,33 @@ static int fd_do_rw(struct se_cmd *cmd, struct scatterlist *sgl,
|
||||
struct fd_dev *dev = FD_DEV(se_dev);
|
||||
struct file *fd = dev->fd_file;
|
||||
struct scatterlist *sg;
|
||||
- struct iovec *iov;
|
||||
- mm_segment_t old_fs;
|
||||
+ struct iov_iter iter;
|
||||
+ struct bio_vec *bvec;
|
||||
+ ssize_t len = 0;
|
||||
loff_t pos = (cmd->t_task_lba * se_dev->dev_attrib.block_size);
|
||||
int ret = 0, i;
|
||||
|
||||
- iov = kzalloc(sizeof(struct iovec) * sgl_nents, GFP_KERNEL);
|
||||
- if (!iov) {
|
||||
+ bvec = kcalloc(sgl_nents, sizeof(struct bio_vec), GFP_KERNEL);
|
||||
+ if (!bvec) {
|
||||
pr_err("Unable to allocate fd_do_readv iov[]\n");
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
for_each_sg(sgl, sg, sgl_nents, i) {
|
||||
- iov[i].iov_len = sg->length;
|
||||
- iov[i].iov_base = kmap(sg_page(sg)) + sg->offset;
|
||||
- }
|
||||
+ bvec[i].bv_page = sg_page(sg);
|
||||
+ bvec[i].bv_len = sg->length;
|
||||
+ bvec[i].bv_offset = sg->offset;
|
||||
|
||||
- old_fs = get_fs();
|
||||
- set_fs(get_ds());
|
||||
+ len += sg->length;
|
||||
+ }
|
||||
|
||||
+ iov_iter_bvec(&iter, ITER_BVEC, bvec, sgl_nents, len);
|
||||
if (is_write)
|
||||
- ret = vfs_writev(fd, &iov[0], sgl_nents, &pos);
|
||||
+ ret = vfs_iter_write(fd, &iter, &pos);
|
||||
else
|
||||
- ret = vfs_readv(fd, &iov[0], sgl_nents, &pos);
|
||||
-
|
||||
- set_fs(old_fs);
|
||||
-
|
||||
- for_each_sg(sgl, sg, sgl_nents, i)
|
||||
- kunmap(sg_page(sg));
|
||||
+ ret = vfs_iter_read(fd, &iter, &pos);
|
||||
|
||||
- kfree(iov);
|
||||
+ kfree(bvec);
|
||||
|
||||
if (is_write) {
|
||||
if (ret < 0 || ret != cmd->data_length) {
|
||||
--
|
||||
2.4.1
|
||||
|
|
@ -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))
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -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 b649fef2e35d..fb89290710ad 100644
|
||||
--- a/drivers/usb/core/hub.c
|
||||
+++ b/drivers/usb/core/hub.c
|
||||
@@ -5023,6 +5023,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 ebe6a24cc1e1..5ce40e215f15 100644
|
||||
--- a/include/linux/efi.h
|
||||
+++ b/include/linux/efi.h
|
||||
@@ -581,6 +581,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;
|
||||
@@ -796,6 +802,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:
|
||||
*/
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -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 58d7feadd149..b1d686e9175e 100644
|
||||
--- a/include/linux/efi.h
|
||||
+++ b/include/linux/efi.h
|
||||
@@ -919,6 +919,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,182 @@
|
|||
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 82fbdbc1e0b0..a811210ad486 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 b7d31ca55187..ab403a636357 100644
|
||||
--- a/arch/x86/Kconfig
|
||||
+++ b/arch/x86/Kconfig
|
||||
@@ -1695,6 +1695,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 ef17683484e9..105e7360d747 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>
|
||||
|
||||
#include "../string.h"
|
||||
#include "eboot.h"
|
||||
@@ -827,6 +828,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
|
||||
*/
|
||||
@@ -1406,6 +1438,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 0a2421cca01f..a3d8174dedf9 100644
|
||||
--- a/arch/x86/kernel/setup.c
|
||||
+++ b/arch/x86/kernel/setup.c
|
||||
@@ -1151,6 +1151,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 b033dab5c8bf..f526b6e02f59 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 0372c3961016..55dacebb687b 100644
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -3909,6 +3909,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
|
|
@ -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 71f282a4e307..341a73ecea2e 100644
|
||||
--- a/include/linux/module.h
|
||||
+++ b/include/linux/module.h
|
||||
@@ -516,6 +516,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. */
|
||||
@@ -626,6 +628,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 03214bd288e9..1f7b4664300e 100644
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -3842,3 +3842,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);
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,245 @@
|
|||
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 +
|
||||
drivers/tty/sysrq.c | 19 +++++++++++++------
|
||||
include/linux/input.h | 5 +++++
|
||||
include/linux/sysrq.h | 8 +++++++-
|
||||
kernel/debug/kdb/kdb_main.c | 2 +-
|
||||
kernel/module.c | 4 ++--
|
||||
7 files changed, 65 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
|
||||
index 26c5d54124c1..dab298f03a9c 100644
|
||||
--- a/arch/x86/kernel/setup.c
|
||||
+++ b/arch/x86/kernel/setup.c
|
||||
@@ -70,6 +70,11 @@
|
||||
#include <linux/tboot.h>
|
||||
#include <linux/jiffies.h>
|
||||
|
||||
+#include <linux/fips.h>
|
||||
+#include <linux/cred.h>
|
||||
+#include <linux/sysrq.h>
|
||||
+#include <linux/init_task.h>
|
||||
+
|
||||
#include <video/edid.h>
|
||||
|
||||
#include <asm/mtrr.h>
|
||||
@@ -1278,6 +1283,37 @@ void __init i386_reserve_resources(void)
|
||||
|
||||
#endif /* CONFIG_X86_32 */
|
||||
|
||||
+#ifdef CONFIG_MAGIC_SYSRQ
|
||||
+#ifdef CONFIG_MODULE_SIG
|
||||
+extern bool sig_enforce;
|
||||
+#endif
|
||||
+
|
||||
+static void sysrq_handle_secure_boot(int key)
|
||||
+{
|
||||
+ if (!efi_enabled(EFI_SECURE_BOOT))
|
||||
+ return;
|
||||
+
|
||||
+ pr_info("Secure boot disabled\n");
|
||||
+#ifdef CONFIG_MODULE_SIG
|
||||
+ sig_enforce = fips_enabled;
|
||||
+#endif
|
||||
+}
|
||||
+static struct sysrq_key_op secure_boot_sysrq_op = {
|
||||
+ .handler = sysrq_handle_secure_boot,
|
||||
+ .help_msg = "unSB(x)",
|
||||
+ .action_msg = "Disabling Secure Boot restrictions",
|
||||
+ .enable_mask = SYSRQ_DISABLE_USERSPACE,
|
||||
+};
|
||||
+static int __init secure_boot_sysrq(void)
|
||||
+{
|
||||
+ if (efi_enabled(EFI_SECURE_BOOT))
|
||||
+ register_sysrq_key('x', &secure_boot_sysrq_op);
|
||||
+ return 0;
|
||||
+}
|
||||
+late_initcall(secure_boot_sysrq);
|
||||
+#endif /*CONFIG_MAGIC_SYSRQ*/
|
||||
+
|
||||
+
|
||||
static struct notifier_block kernel_offset_notifier = {
|
||||
.notifier_call = dump_kernel_offset
|
||||
};
|
||||
diff --git a/drivers/input/misc/uinput.c b/drivers/input/misc/uinput.c
|
||||
index 421e29e4cd81..61c1eb97806c 100644
|
||||
--- a/drivers/input/misc/uinput.c
|
||||
+++ b/drivers/input/misc/uinput.c
|
||||
@@ -366,6 +366,7 @@ static int uinput_allocate_device(struct uinput_device *udev)
|
||||
if (!udev->dev)
|
||||
return -ENOMEM;
|
||||
|
||||
+ udev->dev->flags |= INPUTDEV_FLAGS_SYNTHETIC;
|
||||
udev->dev->event = uinput_dev_event;
|
||||
input_set_drvdata(udev->dev, udev);
|
||||
|
||||
diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
|
||||
index 259a4d5a4e8f..512c21dcb86f 100644
|
||||
--- a/drivers/tty/sysrq.c
|
||||
+++ b/drivers/tty/sysrq.c
|
||||
@@ -464,6 +464,7 @@ static struct sysrq_key_op *sysrq_key_table[36] = {
|
||||
&sysrq_showstate_blocked_op, /* w */
|
||||
/* x: May be registered on ppc/powerpc for xmon */
|
||||
/* x: May be registered on sparc64 for global PMU dump */
|
||||
+ /* x: May be registered on x86_64 for disabling secure boot */
|
||||
NULL, /* x */
|
||||
/* y: May be registered on sparc64 for global register dump */
|
||||
NULL, /* y */
|
||||
@@ -507,7 +508,7 @@ static void __sysrq_put_key_op(int key, struct sysrq_key_op *op_p)
|
||||
sysrq_key_table[i] = op_p;
|
||||
}
|
||||
|
||||
-void __handle_sysrq(int key, bool check_mask)
|
||||
+void __handle_sysrq(int key, int from)
|
||||
{
|
||||
struct sysrq_key_op *op_p;
|
||||
int orig_log_level;
|
||||
@@ -527,11 +528,15 @@ void __handle_sysrq(int key, bool check_mask)
|
||||
|
||||
op_p = __sysrq_get_key_op(key);
|
||||
if (op_p) {
|
||||
+ /* Ban synthetic events from some sysrq functionality */
|
||||
+ if ((from == SYSRQ_FROM_PROC || from == SYSRQ_FROM_SYNTHETIC) &&
|
||||
+ op_p->enable_mask & SYSRQ_DISABLE_USERSPACE)
|
||||
+ printk("This sysrq operation is disabled from userspace.\n");
|
||||
/*
|
||||
* Should we check for enabled operations (/proc/sysrq-trigger
|
||||
* should not) and is the invoked operation enabled?
|
||||
*/
|
||||
- if (!check_mask || sysrq_on_mask(op_p->enable_mask)) {
|
||||
+ if (from == SYSRQ_FROM_KERNEL || sysrq_on_mask(op_p->enable_mask)) {
|
||||
pr_cont("%s\n", op_p->action_msg);
|
||||
console_loglevel = orig_log_level;
|
||||
op_p->handler(key);
|
||||
@@ -563,7 +568,7 @@ void __handle_sysrq(int key, bool check_mask)
|
||||
void handle_sysrq(int key)
|
||||
{
|
||||
if (sysrq_on())
|
||||
- __handle_sysrq(key, true);
|
||||
+ __handle_sysrq(key, SYSRQ_FROM_KERNEL);
|
||||
}
|
||||
EXPORT_SYMBOL(handle_sysrq);
|
||||
|
||||
@@ -643,7 +648,7 @@ static void sysrq_do_reset(unsigned long _state)
|
||||
static void sysrq_handle_reset_request(struct sysrq_state *state)
|
||||
{
|
||||
if (state->reset_requested)
|
||||
- __handle_sysrq(sysrq_xlate[KEY_B], false);
|
||||
+ __handle_sysrq(sysrq_xlate[KEY_B], SYSRQ_FROM_KERNEL);
|
||||
|
||||
if (sysrq_reset_downtime_ms)
|
||||
mod_timer(&state->keyreset_timer,
|
||||
@@ -794,8 +799,10 @@ static bool sysrq_handle_keypress(struct sysrq_state *sysrq,
|
||||
|
||||
default:
|
||||
if (sysrq->active && value && value != 2) {
|
||||
+ int from = sysrq->handle.dev->flags & INPUTDEV_FLAGS_SYNTHETIC ?
|
||||
+ SYSRQ_FROM_SYNTHETIC : 0;
|
||||
sysrq->need_reinject = false;
|
||||
- __handle_sysrq(sysrq_xlate[code], true);
|
||||
+ __handle_sysrq(sysrq_xlate[code], from);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1090,7 +1097,7 @@ static ssize_t write_sysrq_trigger(struct file *file, const char __user *buf,
|
||||
|
||||
if (get_user(c, buf))
|
||||
return -EFAULT;
|
||||
- __handle_sysrq(c, false);
|
||||
+ __handle_sysrq(c, SYSRQ_FROM_PROC);
|
||||
}
|
||||
|
||||
return count;
|
||||
diff --git a/include/linux/input.h b/include/linux/input.h
|
||||
index 82ce323b9986..9e534f228945 100644
|
||||
--- a/include/linux/input.h
|
||||
+++ b/include/linux/input.h
|
||||
@@ -42,6 +42,7 @@ struct input_value {
|
||||
* @phys: physical path to the device in the system hierarchy
|
||||
* @uniq: unique identification code for the device (if device has it)
|
||||
* @id: id of the device (struct input_id)
|
||||
+ * @flags: input device flags (SYNTHETIC, etc.)
|
||||
* @propbit: bitmap of device properties and quirks
|
||||
* @evbit: bitmap of types of events supported by the device (EV_KEY,
|
||||
* EV_REL, etc.)
|
||||
@@ -124,6 +125,8 @@ struct input_dev {
|
||||
const char *uniq;
|
||||
struct input_id id;
|
||||
|
||||
+ unsigned int flags;
|
||||
+
|
||||
unsigned long propbit[BITS_TO_LONGS(INPUT_PROP_CNT)];
|
||||
|
||||
unsigned long evbit[BITS_TO_LONGS(EV_CNT)];
|
||||
@@ -190,6 +193,8 @@ struct input_dev {
|
||||
};
|
||||
#define to_input_dev(d) container_of(d, struct input_dev, dev)
|
||||
|
||||
+#define INPUTDEV_FLAGS_SYNTHETIC 0x000000001
|
||||
+
|
||||
/*
|
||||
* Verify that we are in sync with input_device_id mod_devicetable.h #defines
|
||||
*/
|
||||
diff --git a/include/linux/sysrq.h b/include/linux/sysrq.h
|
||||
index 387fa7d05c98..4b07e30b3279 100644
|
||||
--- a/include/linux/sysrq.h
|
||||
+++ b/include/linux/sysrq.h
|
||||
@@ -28,6 +28,8 @@
|
||||
#define SYSRQ_ENABLE_BOOT 0x0080
|
||||
#define SYSRQ_ENABLE_RTNICE 0x0100
|
||||
|
||||
+#define SYSRQ_DISABLE_USERSPACE 0x00010000
|
||||
+
|
||||
struct sysrq_key_op {
|
||||
void (*handler)(int);
|
||||
char *help_msg;
|
||||
@@ -42,8 +44,12 @@ struct sysrq_key_op {
|
||||
* are available -- else NULL's).
|
||||
*/
|
||||
|
||||
+#define SYSRQ_FROM_KERNEL 0x0001
|
||||
+#define SYSRQ_FROM_PROC 0x0002
|
||||
+#define SYSRQ_FROM_SYNTHETIC 0x0004
|
||||
+
|
||||
void handle_sysrq(int key);
|
||||
-void __handle_sysrq(int key, bool check_mask);
|
||||
+void __handle_sysrq(int key, int from);
|
||||
int register_sysrq_key(int key, struct sysrq_key_op *op);
|
||||
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 4121345498e0..0ff3cef5df96 100644
|
||||
--- a/kernel/debug/kdb/kdb_main.c
|
||||
+++ b/kernel/debug/kdb/kdb_main.c
|
||||
@@ -1968,7 +1968,7 @@ static int kdb_sr(int argc, const char **argv)
|
||||
return KDB_ARGCOUNT;
|
||||
|
||||
kdb_trap_printk++;
|
||||
- __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 55dacebb687b..9d4deeb9268e 100644
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -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
|
||||
-static bool sig_enforce = true;
|
||||
+bool sig_enforce = true;
|
||||
#else
|
||||
-static bool sig_enforce = false;
|
||||
+bool sig_enforce = false;
|
||||
|
||||
static int param_set_bool_enable_only(const char *val,
|
||||
const struct kernel_param *kp)
|
|
@ -0,0 +1,126 @@
|
|||
From: Filipe Manana <fdmanana@suse.com>
|
||||
Date: Tue, 31 Mar 2015 14:56:46 +0100
|
||||
Subject: [PATCH] Btrfs: fix range cloning when same inode used as source and
|
||||
destination
|
||||
|
||||
While searching for extents to clone we might find one where we only use
|
||||
a part of it coming from its tail. If our destination inode is the same
|
||||
the source inode, we end up removing the tail part of the extent item and
|
||||
insert after a new one that point to the same extent with an adjusted
|
||||
key file offset and data offset. After this we search for the next extent
|
||||
item in the fs/subvol tree with a key that has an offset incremented by
|
||||
one. But this second search leaves us at the new extent item we inserted
|
||||
previously, and since that extent item has a non-zero data offset, it
|
||||
it can make us call btrfs_drop_extents with an empty range (start == end)
|
||||
which causes the following warning:
|
||||
|
||||
[23978.537119] WARNING: CPU: 6 PID: 16251 at fs/btrfs/file.c:550 btrfs_drop_extent_cache+0x43/0x385 [btrfs]()
|
||||
(...)
|
||||
[23978.557266] Call Trace:
|
||||
[23978.557978] [<ffffffff81425fd9>] dump_stack+0x4c/0x65
|
||||
[23978.559191] [<ffffffff81045390>] warn_slowpath_common+0xa1/0xbb
|
||||
[23978.560699] [<ffffffffa047f0ea>] ? btrfs_drop_extent_cache+0x43/0x385 [btrfs]
|
||||
[23978.562389] [<ffffffff8104544d>] warn_slowpath_null+0x1a/0x1c
|
||||
[23978.563613] [<ffffffffa047f0ea>] btrfs_drop_extent_cache+0x43/0x385 [btrfs]
|
||||
[23978.565103] [<ffffffff810e3a18>] ? time_hardirqs_off+0x15/0x28
|
||||
[23978.566294] [<ffffffff81079ff8>] ? trace_hardirqs_off+0xd/0xf
|
||||
[23978.567438] [<ffffffffa047f73d>] __btrfs_drop_extents+0x6b/0x9e1 [btrfs]
|
||||
[23978.568702] [<ffffffff8107c03f>] ? trace_hardirqs_on+0xd/0xf
|
||||
[23978.569763] [<ffffffff811441c0>] ? ____cache_alloc+0x69/0x2eb
|
||||
[23978.570817] [<ffffffff81142269>] ? virt_to_head_page+0x9/0x36
|
||||
[23978.571872] [<ffffffff81143c15>] ? cache_alloc_debugcheck_after.isra.42+0x16c/0x1cb
|
||||
[23978.573466] [<ffffffff811420d5>] ? kmemleak_alloc_recursive.constprop.52+0x16/0x18
|
||||
[23978.574962] [<ffffffffa0480d07>] btrfs_drop_extents+0x66/0x7f [btrfs]
|
||||
[23978.576179] [<ffffffffa049aa35>] btrfs_clone+0x516/0xaf5 [btrfs]
|
||||
[23978.577311] [<ffffffffa04983dc>] ? lock_extent_range+0x7b/0xcd [btrfs]
|
||||
[23978.578520] [<ffffffffa049b2a2>] btrfs_ioctl_clone+0x28e/0x39f [btrfs]
|
||||
[23978.580282] [<ffffffffa049d9ae>] btrfs_ioctl+0xb51/0x219a [btrfs]
|
||||
(...)
|
||||
[23978.591887] ---[ end trace 988ec2a653d03ed3 ]---
|
||||
|
||||
Then we attempt to insert a new extent item with a key that already
|
||||
exists, which makes btrfs_insert_empty_item return -EEXIST resulting in
|
||||
abortion of the current transaction:
|
||||
|
||||
[23978.594355] WARNING: CPU: 6 PID: 16251 at fs/btrfs/super.c:260 __btrfs_abort_transaction+0x52/0x114 [btrfs]()
|
||||
(...)
|
||||
[23978.622589] Call Trace:
|
||||
[23978.623181] [<ffffffff81425fd9>] dump_stack+0x4c/0x65
|
||||
[23978.624359] [<ffffffff81045390>] warn_slowpath_common+0xa1/0xbb
|
||||
[23978.625573] [<ffffffffa044ab6c>] ? __btrfs_abort_transaction+0x52/0x114 [btrfs]
|
||||
[23978.626971] [<ffffffff810453f0>] warn_slowpath_fmt+0x46/0x48
|
||||
[23978.628003] [<ffffffff8108a6c8>] ? vprintk_default+0x1d/0x1f
|
||||
[23978.629138] [<ffffffffa044ab6c>] __btrfs_abort_transaction+0x52/0x114 [btrfs]
|
||||
[23978.630528] [<ffffffffa049ad1b>] btrfs_clone+0x7fc/0xaf5 [btrfs]
|
||||
[23978.631635] [<ffffffffa04983dc>] ? lock_extent_range+0x7b/0xcd [btrfs]
|
||||
[23978.632886] [<ffffffffa049b2a2>] btrfs_ioctl_clone+0x28e/0x39f [btrfs]
|
||||
[23978.634119] [<ffffffffa049d9ae>] btrfs_ioctl+0xb51/0x219a [btrfs]
|
||||
(...)
|
||||
[23978.647714] ---[ end trace 988ec2a653d03ed4 ]---
|
||||
|
||||
This is wrong because we should not process the extent item that we just
|
||||
inserted previously, and instead process the extent item that follows it
|
||||
in the tree
|
||||
|
||||
For example for the test case I wrote for fstests:
|
||||
|
||||
bs=$((64 * 1024))
|
||||
mkfs.btrfs -f -l $bs -O ^no-holes /dev/sdc
|
||||
mount /dev/sdc /mnt
|
||||
|
||||
xfs_io -f -c "pwrite -S 0xaa $(($bs * 2)) $(($bs * 2))" /mnt/foo
|
||||
|
||||
$CLONER_PROG -s $((3 * $bs)) -d $((267 * $bs)) -l 0 /mnt/foo /mnt/foo
|
||||
$CLONER_PROG -s $((217 * $bs)) -d $((95 * $bs)) -l 0 /mnt/foo /mnt/foo
|
||||
|
||||
The second clone call fails with -EEXIST, because when we process the
|
||||
first extent item (offset 262144), we drop part of it (counting from the
|
||||
end) and then insert a new extent item with a key greater then the key we
|
||||
found. The next time we search the tree we search for a key with offset
|
||||
262144 + 1, which leaves us at the new extent item we have just inserted
|
||||
but we think it refers to an extent that we need to clone.
|
||||
|
||||
Fix this by ensuring the next search key uses an offset corresponding to
|
||||
the offset of the key we found previously plus the data length of the
|
||||
corresponding extent item. This ensures we skip new extent items that we
|
||||
inserted and works for the case of implicit holes too (NO_HOLES feature).
|
||||
|
||||
A test case for fstests follows soon.
|
||||
|
||||
Signed-off-by: Filipe Manana <fdmanana@suse.com>
|
||||
Signed-off-by: Chris Mason <clm@fb.com>
|
||||
---
|
||||
fs/btrfs/ioctl.c | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
|
||||
index 2b4c5423672d..d79c599240a7 100644
|
||||
--- a/fs/btrfs/ioctl.c
|
||||
+++ b/fs/btrfs/ioctl.c
|
||||
@@ -3206,6 +3206,8 @@ static int btrfs_clone(struct inode *src, struct inode *inode,
|
||||
key.offset = off;
|
||||
|
||||
while (1) {
|
||||
+ u64 next_key_min_offset;
|
||||
+
|
||||
/*
|
||||
* note the key will change type as we walk through the
|
||||
* tree.
|
||||
@@ -3286,7 +3288,7 @@ process_slot:
|
||||
} else if (key.offset >= off + len) {
|
||||
break;
|
||||
}
|
||||
-
|
||||
+ next_key_min_offset = key.offset + datal;
|
||||
size = btrfs_item_size_nr(leaf, slot);
|
||||
read_extent_buffer(leaf, buf,
|
||||
btrfs_item_ptr_offset(leaf, slot),
|
||||
@@ -3501,7 +3503,7 @@ process_slot:
|
||||
break;
|
||||
}
|
||||
btrfs_release_path(path);
|
||||
- key.offset++;
|
||||
+ key.offset = next_key_min_offset;
|
||||
}
|
||||
ret = 0;
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
From: Chris Mason <clm@fb.com>
|
||||
Date: Thu, 11 Jun 2015 18:06:51 +0200
|
||||
Subject: [PATCH] Btrfs: fix regression in raid level conversion
|
||||
|
||||
Commit 2f0810880f082fa8ba66ab2c33b02e4ff9770a5e changed
|
||||
btrfs_set_block_group_ro to avoid trying to allocate new chunks with the
|
||||
new raid profile during conversion. This fixed failures when there was
|
||||
no space on the drive to allocate a new chunk, but the metadata
|
||||
reserves were sufficient to continue the conversion.
|
||||
|
||||
But this ended up causing a regression when the drive had plenty of
|
||||
space to allocate new chunks, mostly because reduce_alloc_profile isn't
|
||||
using the new raid profile.
|
||||
|
||||
Fixing btrfs_reduce_alloc_profile is a bigger patch. For now, do a
|
||||
partial revert of 2f0810880, and don't error out if we hit ENOSPC.
|
||||
|
||||
Signed-off-by: Chris Mason <clm@fb.com>
|
||||
Tested-by: Dave Sterba <dsterba@suse.cz>
|
||||
Reported-by: Holger Hoffstaette <holger.hoffstaette@googlemail.com>
|
||||
[adapted for stable kernel branch, v4.0.5]
|
||||
Signed-off-by: David Sterba <dsterba@suse.cz>
|
||||
---
|
||||
fs/btrfs/extent-tree.c | 18 ++++++++++++++++++
|
||||
1 file changed, 18 insertions(+)
|
||||
|
||||
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
|
||||
index 8b33da6ec3dd..63be2a96ed6a 100644
|
||||
--- a/fs/btrfs/extent-tree.c
|
||||
+++ b/fs/btrfs/extent-tree.c
|
||||
@@ -8535,6 +8535,24 @@ int btrfs_set_block_group_ro(struct btrfs_root *root,
|
||||
trans = btrfs_join_transaction(root);
|
||||
if (IS_ERR(trans))
|
||||
return PTR_ERR(trans);
|
||||
+ /*
|
||||
+ * if we are changing raid levels, try to allocate a corresponding
|
||||
+ * block group with the new raid level.
|
||||
+ */
|
||||
+ alloc_flags = update_block_group_flags(root, cache->flags);
|
||||
+ if (alloc_flags != cache->flags) {
|
||||
+ ret = do_chunk_alloc(trans, root, alloc_flags,
|
||||
+ CHUNK_ALLOC_FORCE);
|
||||
+ /*
|
||||
+ * ENOSPC is allowed here, we may have enough space
|
||||
+ * already allocated at the new raid level to
|
||||
+ * carry on
|
||||
+ */
|
||||
+ if (ret == -ENOSPC)
|
||||
+ ret = 0;
|
||||
+ if (ret < 0)
|
||||
+ goto out;
|
||||
+ }
|
||||
|
||||
ret = set_block_group_ro(cache, 0);
|
||||
if (!ret)
|
|
@ -0,0 +1,26 @@
|
|||
From: Chris Mason <clm@fb.com>
|
||||
Date: Sat, 11 Apr 2015 05:09:06 -0700
|
||||
Subject: [PATCH] Btrfs: fix uninit variable in clone ioctl
|
||||
|
||||
Commit 0d97a64e0 creates a new variable but doesn't always set it up.
|
||||
This puts it back to the original method (key.offset + 1) for the cases
|
||||
not covered by Filipe's new logic.
|
||||
|
||||
Signed-off-by: Chris Mason <clm@fb.com>
|
||||
---
|
||||
fs/btrfs/ioctl.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
|
||||
index d79c599240a7..64e8fb639f72 100644
|
||||
--- a/fs/btrfs/ioctl.c
|
||||
+++ b/fs/btrfs/ioctl.c
|
||||
@@ -3206,7 +3206,7 @@ static int btrfs_clone(struct inode *src, struct inode *inode,
|
||||
key.offset = off;
|
||||
|
||||
while (1) {
|
||||
- u64 next_key_min_offset;
|
||||
+ u64 next_key_min_offset = key.offset + 1;
|
||||
|
||||
/*
|
||||
* note the key will change type as we walk through the
|
|
@ -0,0 +1,29 @@
|
|||
From: Filipe Manana <fdmanana@suse.com>
|
||||
Date: Mon, 2 Mar 2015 20:53:52 +0000
|
||||
Subject: [PATCH] Btrfs: send, add missing check for dead clone root
|
||||
|
||||
After we locked the root's root item, a concurrent snapshot deletion
|
||||
call might have set the dead flag on it. So check if the dead flag
|
||||
is set and abort if it is, just like we do for the parent root.
|
||||
|
||||
Signed-off-by: Filipe Manana <fdmanana@suse.com>
|
||||
Reviewed-by: David Sterba <dsterba@suse.cz>
|
||||
Signed-off-by: Chris Mason <clm@fb.com>
|
||||
---
|
||||
fs/btrfs/send.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/fs/btrfs/send.c b/fs/btrfs/send.c
|
||||
index d6033f540cc7..6ec28f13659e 100644
|
||||
--- a/fs/btrfs/send.c
|
||||
+++ b/fs/btrfs/send.c
|
||||
@@ -5855,7 +5855,8 @@ long btrfs_ioctl_send(struct file *mnt_file, void __user *arg_)
|
||||
clone_sources_to_rollback = i + 1;
|
||||
spin_lock(&clone_root->root_item_lock);
|
||||
clone_root->send_in_progress++;
|
||||
- if (!btrfs_root_readonly(clone_root)) {
|
||||
+ if (!btrfs_root_readonly(clone_root) ||
|
||||
+ btrfs_root_dead(clone_root)) {
|
||||
spin_unlock(&clone_root->root_item_lock);
|
||||
srcu_read_unlock(&fs_info->subvol_srcu, index);
|
||||
ret = -EPERM;
|
|
@ -0,0 +1,58 @@
|
|||
From: Filipe Manana <fdmanana@suse.com>
|
||||
Date: Mon, 2 Mar 2015 20:53:53 +0000
|
||||
Subject: [PATCH] Btrfs: send, don't leave without decrementing clone root's
|
||||
send_progress
|
||||
|
||||
If the clone root was not readonly or the dead flag was set on it, we were
|
||||
leaving without decrementing the root's send_progress counter (and before
|
||||
we just incremented it). If a concurrent snapshot deletion was in progress
|
||||
and ended up being aborted, it would be impossible to later attempt to
|
||||
delete again the snapshot, since the root's send_in_progress counter could
|
||||
never go back to 0.
|
||||
|
||||
We were also setting clone_sources_to_rollback to i + 1 too early - if we
|
||||
bailed out because the clone root we got is not readonly or flagged as dead
|
||||
we ended up later derreferencing a null pointer because we didn't assign
|
||||
the clone root to sctx->clone_roots[i].root:
|
||||
|
||||
for (i = 0; sctx && i < clone_sources_to_rollback; i++)
|
||||
btrfs_root_dec_send_in_progress(
|
||||
sctx->clone_roots[i].root);
|
||||
|
||||
So just don't increment the send_in_progress counter if the root is readonly
|
||||
or flagged as dead.
|
||||
|
||||
Signed-off-by: Filipe Manana <fdmanana@suse.com>
|
||||
Reviewed-by: David Sterba <dsterba@suse.cz>
|
||||
Signed-off-by: Chris Mason <clm@fb.com>
|
||||
---
|
||||
fs/btrfs/send.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/fs/btrfs/send.c b/fs/btrfs/send.c
|
||||
index 6ec28f13659e..571de5a08fe7 100644
|
||||
--- a/fs/btrfs/send.c
|
||||
+++ b/fs/btrfs/send.c
|
||||
@@ -5852,9 +5852,7 @@ long btrfs_ioctl_send(struct file *mnt_file, void __user *arg_)
|
||||
ret = PTR_ERR(clone_root);
|
||||
goto out;
|
||||
}
|
||||
- clone_sources_to_rollback = i + 1;
|
||||
spin_lock(&clone_root->root_item_lock);
|
||||
- clone_root->send_in_progress++;
|
||||
if (!btrfs_root_readonly(clone_root) ||
|
||||
btrfs_root_dead(clone_root)) {
|
||||
spin_unlock(&clone_root->root_item_lock);
|
||||
@@ -5862,10 +5860,12 @@ long btrfs_ioctl_send(struct file *mnt_file, void __user *arg_)
|
||||
ret = -EPERM;
|
||||
goto out;
|
||||
}
|
||||
+ clone_root->send_in_progress++;
|
||||
spin_unlock(&clone_root->root_item_lock);
|
||||
srcu_read_unlock(&fs_info->subvol_srcu, index);
|
||||
|
||||
sctx->clone_roots[i].root = clone_root;
|
||||
+ clone_sources_to_rollback = i + 1;
|
||||
}
|
||||
vfree(clone_sources_tmp);
|
||||
clone_sources_tmp = NULL;
|
|
@ -0,0 +1,52 @@
|
|||
From: Andreas Fleig <andreasfleig@gmail.com>
|
||||
Date: Thu, 23 Apr 2015 10:25:58 +0200
|
||||
Subject: [PATCH] HID: lenovo: set INPUT_PROP_POINTING_STICK
|
||||
|
||||
Set flags INPUT_PROP_POINTER and INPUT_PROP_POINTING_STICK for the trackpoint
|
||||
integrated in Lenovo USB and Bluetooth keyboards. Libinput checks these flags
|
||||
to enable features such as middle-button-scrolling by default.
|
||||
|
||||
Signed-off-by: Andreas Fleig <andreasfleig@gmail.com>
|
||||
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
|
||||
---
|
||||
drivers/hid/hid-lenovo.c | 19 +++++++++++++++++++
|
||||
1 file changed, 19 insertions(+)
|
||||
|
||||
diff --git a/drivers/hid/hid-lenovo.c b/drivers/hid/hid-lenovo.c
|
||||
index c4c3f0952521..78608d646007 100644
|
||||
--- a/drivers/hid/hid-lenovo.c
|
||||
+++ b/drivers/hid/hid-lenovo.c
|
||||
@@ -762,6 +762,24 @@ static void lenovo_remove(struct hid_device *hdev)
|
||||
hid_hw_stop(hdev);
|
||||
}
|
||||
|
||||
+static void lenovo_input_configured(struct hid_device *hdev,
|
||||
+ struct hid_input *hi)
|
||||
+{
|
||||
+ switch (hdev->product) {
|
||||
+ case USB_DEVICE_ID_LENOVO_TPKBD:
|
||||
+ case USB_DEVICE_ID_LENOVO_CUSBKBD:
|
||||
+ case USB_DEVICE_ID_LENOVO_CBTKBD:
|
||||
+ if (test_bit(EV_REL, hi->input->evbit)) {
|
||||
+ /* set only for trackpoint device */
|
||||
+ __set_bit(INPUT_PROP_POINTER, hi->input->propbit);
|
||||
+ __set_bit(INPUT_PROP_POINTING_STICK,
|
||||
+ hi->input->propbit);
|
||||
+ }
|
||||
+ break;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+
|
||||
static const struct hid_device_id lenovo_devices[] = {
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_TPKBD) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_CUSBKBD) },
|
||||
@@ -774,6 +792,7 @@ MODULE_DEVICE_TABLE(hid, lenovo_devices);
|
||||
static struct hid_driver lenovo_driver = {
|
||||
.name = "lenovo",
|
||||
.id_table = lenovo_devices,
|
||||
+ .input_configured = lenovo_input_configured,
|
||||
.input_mapping = lenovo_input_mapping,
|
||||
.probe = lenovo_probe,
|
||||
.remove = lenovo_remove,
|
|
@ -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 51e25b9407f2..a8e738191625 100644
|
||||
--- a/drivers/hid/hid-multitouch.c
|
||||
+++ b/drivers/hid/hid-multitouch.c
|
||||
@@ -115,6 +115,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 */
|
||||
@@ -372,6 +373,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];
|
||||
|
||||
@@ -721,6 +726,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,107 @@
|
|||
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
|
||||
|
||||
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>
|
||||
---
|
||||
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,39 @@
|
|||
From: Peter Hutterer <peter.hutterer@who-t.net>
|
||||
Date: Mon, 8 Jun 2015 10:17:32 -0700
|
||||
Subject: [PATCH] Input: synaptics - add min/max quirk for Lenovo S540
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1223051#c2
|
||||
|
||||
Cc: stable@vger.kernel.org
|
||||
Tested-by: tommy.gagnes@gmail.com
|
||||
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/mouse/synaptics.c | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
|
||||
index 3b06c8a360b6..907ac9bdd763 100644
|
||||
--- a/drivers/input/mouse/synaptics.c
|
||||
+++ b/drivers/input/mouse/synaptics.c
|
||||
@@ -148,6 +148,11 @@ static const struct min_max_quirk min_max_pnpid_table[] = {
|
||||
1024, 5112, 2024, 4832
|
||||
},
|
||||
{
|
||||
+ (const char * const []){"LEN2000", NULL},
|
||||
+ {ANY_BOARD_ID, ANY_BOARD_ID},
|
||||
+ 1024, 5113, 2021, 4832
|
||||
+ },
|
||||
+ {
|
||||
(const char * const []){"LEN2001", NULL},
|
||||
{ANY_BOARD_ID, ANY_BOARD_ID},
|
||||
1024, 5022, 2508, 4832
|
||||
@@ -188,7 +193,7 @@ static const char * const topbuttonpad_pnp_ids[] = {
|
||||
"LEN0045",
|
||||
"LEN0047",
|
||||
"LEN0049",
|
||||
- "LEN2000",
|
||||
+ "LEN2000", /* S540 */
|
||||
"LEN2001", /* Edge E431 */
|
||||
"LEN2002", /* Edge E531 */
|
||||
"LEN2003",
|
|
@ -0,0 +1,47 @@
|
|||
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
Date: Thu, 16 Apr 2015 13:01:46 -0400
|
||||
Subject: [PATCH] Input - synaptics: pin 3 touches when the firmware reports 3
|
||||
fingers
|
||||
|
||||
Synaptics PS/2 touchpad can send only 2 touches in a report. They can
|
||||
detect 4 or 5 and this information is valuable.
|
||||
|
||||
In commit 63c4fda (Input: synaptics - allocate 3 slots to keep stability
|
||||
in image sensors), we allocate 3 slots, but we still continue to report
|
||||
the 2 available fingers. That means that the client sees 2 used slots while
|
||||
there is a total of 3 fingers advertised by BTN_TOOL_TRIPLETAP.
|
||||
|
||||
For old kernels this is not a problem because max_slots was 2 and libinput/
|
||||
xorg-synaptics knew how to deal with that. Now that max_slot is 3, the
|
||||
clients ignore BTN_TOOL_TRIPLETAP and count the actual used slots (so 2).
|
||||
It then gets confused when receiving the BTN_TOOL_TRIPLETAP and DOUBLETAP
|
||||
information, and goes wild.
|
||||
|
||||
We can pin the 3 slots until we get a total number of fingers below 2.
|
||||
|
||||
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1212230
|
||||
|
||||
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||
---
|
||||
drivers/input/mouse/synaptics.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
|
||||
index 630af73e98c4..c69b308beb3f 100644
|
||||
--- a/drivers/input/mouse/synaptics.c
|
||||
+++ b/drivers/input/mouse/synaptics.c
|
||||
@@ -935,6 +935,14 @@ static void synaptics_report_mt_data(struct psmouse *psmouse,
|
||||
input_report_abs(dev, ABS_MT_PRESSURE, hw[i]->z);
|
||||
}
|
||||
|
||||
+ /* keep (slot count <= num_fingers) by pinning all slots */
|
||||
+ if (num_fingers >= 3) {
|
||||
+ for (i = 0; i < 3; i++) {
|
||||
+ input_mt_slot(dev, i);
|
||||
+ input_mt_report_slot_state(dev, MT_TOOL_FINGER, true);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
input_mt_drop_unused(dev);
|
||||
|
||||
/* Don't use active slot count to generate BTN_TOOL events. */
|
|
@ -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 80a6907f91c5..dfdd7f738247 100644
|
||||
--- a/init/Kconfig
|
||||
+++ b/init/Kconfig
|
||||
@@ -1723,6 +1723,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;
|
||||
}
|
||||
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,89 @@
|
|||
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 3d16bcc87585..8d2cb8495b41 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 c5cefb3c009c..b663e8e211b0 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 GDB_SCRIPTS
|
||||
bool "Provide GDB scripts for kernel debugging"
|
|
@ -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 41359e548bcb..db9e6118575e 100644
|
||||
--- a/include/linux/efi.h
|
||||
+++ b/include/linux/efi.h
|
||||
@@ -587,6 +587,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 dfdd7f738247..3c866db603a7 100644
|
||||
--- a/init/Kconfig
|
||||
+++ b/init/Kconfig
|
||||
@@ -1877,6 +1877,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 dc5c77544fd6..95bdf3398880 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
|
||||
@@ -99,6 +100,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);
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -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);
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,128 @@
|
|||
# Makefile for source rpm: kernel
|
||||
SPECFILE := kernel.spec
|
||||
|
||||
# we only check the .sign signatures
|
||||
UPSTREAM_CHECKS = sign
|
||||
|
||||
.PHONY: help
|
||||
help:
|
||||
%:
|
||||
@echo "Try fedpkg $@ or something like that"
|
||||
@exit 1
|
||||
|
||||
include Makefile.config
|
||||
|
||||
prep:
|
||||
fedpkg -v prep
|
||||
|
||||
noarch:
|
||||
fedpkg -v local --arch=noarch
|
||||
|
||||
# 'make local' also needs to build the noarch firmware package
|
||||
local: noarch
|
||||
fedpkg -v local
|
||||
|
||||
extremedebug:
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_PAGEALLOC is not set/CONFIG_DEBUG_PAGEALLOC=y/' config-nodebug
|
||||
|
||||
debug:
|
||||
@perl -pi -e 's/# CONFIG_SLUB_DEBUG_ON is not set/CONFIG_SLUB_DEBUG_ON=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_LOCK_STAT is not set/CONFIG_LOCK_STAT=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_STACK_USAGE is not set/CONFIG_DEBUG_STACK_USAGE=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_SLAB is not set/CONFIG_DEBUG_SLAB=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_MUTEXES is not set/CONFIG_DEBUG_MUTEXES=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_RT_MUTEXES is not set/CONFIG_DEBUG_RT_MUTEXES=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_LOCK_ALLOC is not set/CONFIG_DEBUG_LOCK_ALLOC=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_PROVE_LOCKING is not set/CONFIG_PROVE_LOCKING=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_PROVE_RCU is not set/CONFIG_PROVE_RCU=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_SPINLOCK is not set/CONFIG_DEBUG_SPINLOCK=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_VM is not set/CONFIG_DEBUG_VM=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_FAULT_INJECTION is not set/CONFIG_FAULT_INJECTION=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_FAILSLAB is not set/CONFIG_FAILSLAB=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_FAIL_PAGE_ALLOC is not set/CONFIG_FAIL_PAGE_ALLOC=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_FAIL_IO_TIMEOUT is not set/CONFIG_FAIL_IO_TIMEOUT=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_FAIL_MAKE_REQUEST is not set/CONFIG_FAIL_MAKE_REQUEST=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_FAIL_MMC_REQUEST is not set/CONFIG_FAIL_MMC_REQUEST=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_FAULT_INJECTION_DEBUG_FS is not set/CONFIG_FAULT_INJECTION_DEBUG_FS=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_FAULT_INJECTION_STACKTRACE_FILTER is not set/CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_SG is not set/CONFIG_DEBUG_SG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_WRITECOUNT is not set/CONFIG_DEBUG_WRITECOUNT=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_OBJECTS is not set/CONFIG_DEBUG_OBJECTS=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_OBJECTS_FREE is not set/CONFIG_DEBUG_OBJECTS_FREE=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_OBJECTS_TIMERS is not set/CONFIG_DEBUG_OBJECTS_TIMERS=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_OBJECTS_WORK is not set/CONFIG_DEBUG_OBJECTS_WORK=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER is not set/CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_OBJECTS_RCU_HEAD is not set/CONFIG_DEBUG_OBJECTS_RCU_HEAD=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_X86_PTDUMP is not set/CONFIG_X86_PTDUMP=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_CAN_DEBUG_DEVICES is not set/CONFIG_CAN_DEBUG_DEVICES=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_MODULE_FORCE_UNLOAD is not set/CONFIG_MODULE_FORCE_UNLOAD=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_SYSCTL_SYSCALL_CHECK is not set/CONFIG_SYSCTL_SYSCALL_CHECK=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_NOTIFIERS is not set/CONFIG_DEBUG_NOTIFIERS=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DMA_API_DEBUG is not set/CONFIG_DMA_API_DEBUG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_PM_TEST_SUSPEND is not set/CONFIG_PM_TEST_SUSPEND=y/' config-generic
|
||||
@perl -pi -e 's/# CONFIG_PM_ADVANCED_DEBUG is not set/CONFIG_PM_ADVANCED_DEBUG=y/' config-generic
|
||||
@perl -pi -e 's/# CONFIG_B43_DEBUG is not set/CONFIG_B43_DEBUG=y/' config-generic
|
||||
@perl -pi -e 's/# CONFIG_B43LEGACY_DEBUG is not set/CONFIG_B43LEGACY_DEBUG=y/' config-generic
|
||||
@perl -pi -e 's/# CONFIG_MMIOTRACE is not set/CONFIG_MMIOTRACE=y/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_STRIP_ASM_SYMS=y/# CONFIG_STRIP_ASM_SYMS is not set/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_CREDENTIALS is not set/CONFIG_DEBUG_CREDENTIALS=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set/CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_ACPI_DEBUG is not set/CONFIG_ACPI_DEBUG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_EXT4_DEBUG is not set/CONFIG_EXT4_DEBUG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_PERF_USE_VMALLOC is not set/CONFIG_DEBUG_PERF_USE_VMALLOC=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_JBD2_DEBUG is not set/CONFIG_JBD2_DEBUG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_NFSD_FAULT_INJECTION is not set/CONFIG_NFSD_FAULT_INJECTION=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_BLK_CGROUP is not set/CONFIG_DEBUG_BLK_CGROUP=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DRBD_FAULT_INJECTION is not set/CONFIG_DRBD_FAULT_INJECTION=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_ATH_DEBUG is not set/CONFIG_ATH_DEBUG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_CARL9170_DEBUGFS is not set/CONFIG_CARL9170_DEBUGFS=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_IWLWIFI_DEVICE_TRACING is not set/CONFIG_IWLWIFI_DEVICE_TRACING=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DMADEVICES_DEBUG is not set/CONFIG_DMADEVICES_DEBUG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DMADEVICES_VDEBUG is not set/CONFIG_DMADEVICES_VDEBUG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_CEPH_LIB_PRETTYDEBUG is not set/CONFIG_CEPH_LIB_PRETTYDEBUG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_QUOTA_DEBUG is not set/CONFIG_QUOTA_DEBUG=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_KGDB_KDB is not set/CONFIG_KGDB_KDB=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_KDB_KEYBOARD is not set/CONFIG_KDB_KEYBOARD=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set/CONFIG_CPU_NOTIFIER_ERROR_INJECT=m/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_PER_CPU_MAPS is not set/CONFIG_DEBUG_PER_CPU_MAPS=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_TEST_LIST_SORT is not set/CONFIG_TEST_LIST_SORT=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_ATOMIC_SLEEP is not set/CONFIG_DEBUG_ATOMIC_SLEEP=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DETECT_HUNG_TASK is not set/CONFIG_DETECT_HUNG_TASK=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set/CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_DEBUG_KMEMLEAK is not set/CONFIG_DEBUG_KMEMLEAK=y/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set/CONFIG_X86_DEBUG_STATIC_CPU_HAS=y/' config-nodebug
|
||||
|
||||
@# just in case we're going from extremedebug -> debug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_PAGEALLOC=y/# CONFIG_DEBUG_PAGEALLOC is not set/' config-nodebug
|
||||
|
||||
@perl -pi -e 's/# CONFIG_MAXSMP is not set/CONFIG_MAXSMP=y/' config-x86-generic
|
||||
|
||||
@# Try out UAS in rawhide builds.
|
||||
@perl -pi -e 's/# CONFIG_USB_UAS is not set/CONFIG_USB_UAS=m/' config-generic
|
||||
|
||||
@perl -pi -e 's/^%define debugbuildsenabled 1/%define debugbuildsenabled 0/' kernel.spec
|
||||
@perl -pi -e 's/^%define rawhide_skip_docs 0/%define rawhide_skip_docs 1/' kernel.spec
|
||||
@rpmdev-bumpspec -c "Reenable debugging options." kernel.spec
|
||||
|
||||
nodebuginfo:
|
||||
@perl -pi -e 's/^%define with_debuginfo %\{\?_without_debuginfo: 0\} %\{\?\!_without_debuginfo: 1\}/%define with_debuginfo %\{\?_without_debuginfo: 0\} %\{\?\!_without_debuginfo: 0\}/' kernel.spec
|
||||
nodebug: release
|
||||
@perl -pi -e 's/^%define debugbuildsenabled 1/%define debugbuildsenabled 0/' kernel.spec
|
||||
release: config-release
|
||||
@perl -pi -e 's/^%define debugbuildsenabled 0/%define debugbuildsenabled 1/' kernel.spec
|
||||
@perl -pi -e 's/^%define rawhide_skip_docs 1/%define rawhide_skip_docs 0/' kernel.spec
|
||||
@rpmdev-bumpspec -c "Disable debugging options." kernel.spec
|
||||
|
||||
include Makefile.release
|
||||
|
||||
unused-kernel-patches:
|
||||
@for f in *.patch; do if [ -e $$f ]; then (egrep -q "^Patch[[:digit:]]+:[[:space:]]+$$f" $(SPECFILE) || echo "Unused: $$f") && egrep -q "^ApplyPatch[[:space:]]+$$f|^ApplyOptionalPatch[[:space:]]+$$f" $(SPECFILE) || echo "Unapplied: $$f"; fi; done
|
||||
|
||||
ifeq ($(MAKECMDGOALS),me a sandwich)
|
||||
.PHONY: me a sandwich
|
||||
me a:
|
||||
@:
|
||||
|
||||
sandwich:
|
||||
@[ `id -u` -ne 0 ] && echo "What? Make it yourself." || echo Okay.
|
||||
endif
|
|
@ -0,0 +1,132 @@
|
|||
# Make rules for configuration files.
|
||||
#
|
||||
# $Id$
|
||||
|
||||
CFG = kernel-$(VERSION)
|
||||
|
||||
CONFIGFILES = \
|
||||
$(CFG)-i686.config $(CFG)-i686-debug.config \
|
||||
$(CFG)-i686-PAE.config $(CFG)-i686-PAEdebug.config \
|
||||
$(CFG)-x86_64.config $(CFG)-x86_64-debug.config \
|
||||
$(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
|
||||
|
||||
PLATFORMS = x86 x86_64 powerpc powerpc32 powerpc64 s390x arm arm64
|
||||
TEMPFILES = $(addprefix temp-, $(addsuffix -generic, $(PLATFORMS)))
|
||||
|
||||
configs: $(CONFIGFILES)
|
||||
@rm -f kernel-*-config
|
||||
@rm -f $(TEMPFILES)
|
||||
@rm -f temp-generic temp-*-generic temp-*-generic-tmp
|
||||
|
||||
# Augment the clean target to clean up our own cruft
|
||||
clean ::
|
||||
@rm -fv $(CONFIGFILES) $(TEMPFILES) temp-generic kernel-$(VERSION)*config
|
||||
|
||||
temp-generic: config-generic
|
||||
cat config-generic config-nodebug > temp-generic
|
||||
|
||||
temp-debug-generic: config-generic
|
||||
cat config-generic config-debug > temp-debug-generic
|
||||
|
||||
temp-arm-generic: config-arm-generic temp-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-armv7-generic: config-armv7-generic temp-arm-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-armv7: config-armv7 temp-armv7-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-armv7-lpae: config-armv7-lpae temp-armv7-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-arm-debug-generic: temp-arm-generic temp-debug-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-arm64: config-arm64 temp-arm-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-arm64-debug: config-arm64 temp-arm-debug-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-x86-32: config-x86-32-generic config-x86-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-x86-32-generic: temp-x86-32 temp-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-x86-debug-generic: temp-x86-32 temp-debug-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-x86-64: config-x86_64-generic config-x86-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-x86_64-generic: temp-x86-64 temp-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-x86_64-debug-generic: temp-x86-64 temp-debug-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
temp-powerpc-generic: config-powerpc-generic temp-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
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 $^ > $@
|
||||
|
||||
temp-s390-generic: config-s390x temp-generic
|
||||
perl merge.pl $^ > $@
|
||||
|
||||
$(CFG)-i686-PAE.config: config-i686-PAE temp-x86-32-generic
|
||||
perl merge.pl $^ i386 > $@
|
||||
|
||||
$(CFG)-i686-PAEdebug.config: config-i686-PAE temp-x86-debug-generic
|
||||
perl merge.pl $^ i386 > $@
|
||||
|
||||
$(CFG)-i686.config: /dev/null temp-x86-32-generic
|
||||
perl merge.pl $^ i386 > $@
|
||||
|
||||
$(CFG)-i686-debug.config: /dev/null temp-x86-debug-generic
|
||||
perl merge.pl $^ i386 > $@
|
||||
|
||||
$(CFG)-x86_64.config: /dev/null temp-x86_64-generic
|
||||
perl merge.pl $^ x86_64 > $@
|
||||
|
||||
$(CFG)-x86_64-debug.config: /dev/null temp-x86_64-debug-generic
|
||||
perl merge.pl $^ x86_64 > $@
|
||||
|
||||
$(CFG)-ppc64.config: /dev/null temp-powerpc64-generic
|
||||
perl merge.pl $^ powerpc > $@
|
||||
|
||||
$(CFG)-ppc64-debug.config: temp-powerpc64-generic temp-powerpc-debug-generic
|
||||
perl merge.pl $^ powerpc > $@
|
||||
|
||||
$(CFG)-ppc64p7.config: config-powerpc64p7 temp-powerpc64-generic
|
||||
perl merge.pl $^ powerpc > $@
|
||||
|
||||
$(CFG)-s390x.config: config-s390x temp-s390-generic
|
||||
perl merge.pl $^ s390 > $@
|
||||
|
||||
$(CFG)-armv7hl.config: /dev/null temp-armv7
|
||||
perl merge.pl $^ arm > $@
|
||||
|
||||
$(CFG)-armv7hl-lpae.config: /dev/null temp-armv7-lpae
|
||||
perl merge.pl $^ arm > $@
|
||||
|
||||
$(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,90 @@
|
|||
# Make rules for configuration files.
|
||||
#
|
||||
# $Id$
|
||||
|
||||
# This file contains only entries that change the config files.
|
||||
# Anything that changes kernel.spec itself should go in the main Makefile.
|
||||
|
||||
config-release:
|
||||
@perl -pi -e 's/CONFIG_SLUB_DEBUG_ON=y/# CONFIG_SLUB_DEBUG_ON is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_LOCK_STAT=y/# CONFIG_LOCK_STAT is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_STACK_USAGE=y/# CONFIG_DEBUG_STACK_USAGE is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_SLAB=y/# CONFIG_DEBUG_SLAB is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_MUTEXES=y/# CONFIG_DEBUG_MUTEXES is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_RT_MUTEXES=y/# CONFIG_DEBUG_RT_MUTEXES is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_LOCK_ALLOC=y/# CONFIG_DEBUG_LOCK_ALLOC is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_PROVE_LOCKING=y/# CONFIG_PROVE_LOCKING is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_PROVE_RCU=y/# CONFIG_PROVE_RCU is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_SPINLOCK=y/# CONFIG_DEBUG_SPINLOCK is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_VM=y/# CONFIG_DEBUG_VM is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_FAULT_INJECTION=y/# CONFIG_FAULT_INJECTION is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_FAILSLAB=y/# CONFIG_FAILSLAB is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_FAIL_PAGE_ALLOC=y/# CONFIG_FAIL_PAGE_ALLOC is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_FAIL_IO_TIMEOUT=y/# CONFIG_FAIL_IO_TIMEOUT is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_FAIL_MAKE_REQUEST=y/# CONFIG_FAIL_MAKE_REQUEST is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_FAIL_MMC_REQUEST=y/# CONFIG_FAIL_MMC_REQUEST is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_FAULT_INJECTION_DEBUG_FS=y/# CONFIG_FAULT_INJECTION_DEBUG_FS is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y/# CONFIG_FAULT_INJECTION_STACKTRACE_FILTER is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_SG=y/# CONFIG_DEBUG_SG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_WRITECOUNT=y/# CONFIG_DEBUG_WRITECOUNT is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_OBJECTS=y/# CONFIG_DEBUG_OBJECTS is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_OBJECTS_FREE=y/# CONFIG_DEBUG_OBJECTS_FREE is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_OBJECTS_TIMERS=y/# CONFIG_DEBUG_OBJECTS_TIMERS is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_OBJECTS_WORK=y/# CONFIG_DEBUG_OBJECTS_WORK is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y/# CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_OBJECTS_RCU_HEAD=y/# CONFIG_DEBUG_OBJECTS_RCU_HEAD is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_X86_PTDUMP=y/# CONFIG_X86_PTDUMP is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_CAN_DEBUG_DEVICES=y/# CONFIG_CAN_DEBUG_DEVICES is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_MODULE_FORCE_UNLOAD=y/# CONFIG_MODULE_FORCE_UNLOAD is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_SYSCTL_SYSCALL_CHECK=y/# CONFIG_SYSCTL_SYSCALL_CHECK is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_NOTIFIERS=y/# CONFIG_DEBUG_NOTIFIERS is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DMA_API_DEBUG=y/# CONFIG_DMA_API_DEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_PM_TEST_SUSPEND=y/# CONFIG_PM_TEST_SUSPEND is not set/' config-generic
|
||||
@perl -pi -e 's/CONFIG_PM_ADVANCED_DEBUG=y/# CONFIG_PM_ADVANCED_DEBUG is not set/' config-generic
|
||||
@perl -pi -e 's/CONFIG_B43_DEBUG=y/# CONFIG_B43_DEBUG is not set/' config-generic
|
||||
@perl -pi -e 's/CONFIG_B43LEGACY_DEBUG=y/# CONFIG_B43LEGACY_DEBUG is not set/' config-generic
|
||||
@perl -pi -e 's/CONFIG_MMIOTRACE=y/# CONFIG_MMIOTRACE is not set/' config-nodebug
|
||||
@perl -pi -e 's/# CONFIG_STRIP_ASM_SYMS is not set/CONFIG_STRIP_ASM_SYMS=y/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_CREDENTIALS=y/# CONFIG_DEBUG_CREDENTIALS is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y/# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_ACPI_DEBUG=y/# CONFIG_ACPI_DEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_EXT4_DEBUG=y/# CONFIG_EXT4_DEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_PERF_USE_VMALLOC=y/# CONFIG_DEBUG_PERF_USE_VMALLOC is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_JBD2_DEBUG=y/# CONFIG_JBD2_DEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_NFSD_FAULT_INJECTION=y/# CONFIG_NFSD_FAULT_INJECTION is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_BLK_CGROUP=y/# CONFIG_DEBUG_BLK_CGROUP is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DRBD_FAULT_INJECTION=y/# CONFIG_DRBD_FAULT_INJECTION is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_ATH_DEBUG=y/# CONFIG_ATH_DEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_CARL9170_DEBUGFS=y/# CONFIG_CARL9170_DEBUGFS is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_IWLWIFI_DEVICE_TRACING=y/# CONFIG_IWLWIFI_DEVICE_TRACING is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DMADEVICES_DEBUG=y/# CONFIG_DMADEVICES_DEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DMADEVICES_VDEBUG=y/# CONFIG_DMADEVICES_VDEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_CEPH_LIB_PRETTYDEBUG=y/# CONFIG_CEPH_LIB_PRETTYDEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_QUOTA_DEBUG=y/# CONFIG_QUOTA_DEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_CPU_NOTIFIER_ERROR_INJECT=m/# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_PER_CPU_MAPS=y/# CONFIG_DEBUG_PER_CPU_MAPS is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_TEST_LIST_SORT=y/# CONFIG_TEST_LIST_SORT is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_TEST_STRING_HELPERS=m/# CONFIG_TEST_STRING_HELPERS is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_ATOMIC_SLEEP=y/# CONFIG_DEBUG_ATOMIC_SLEEP is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DETECT_HUNG_TASK=y/# CONFIG_DETECT_HUNG_TASK is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y/# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_KMEMLEAK=y/# CONFIG_DEBUG_KMEMLEAK is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_MAC80211_MESSAGE_TRACING=y/# CONFIG_MAC80211_MESSAGE_TRACING is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_XFS_WARN=y/# CONFIG_XFS_WARN is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_EDAC_DEBUG=y/# CONFIG_EDAC_DEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_RTLWIFI_DEBUG=y/# CONFIG_RTLWIFI_DEBUG is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_X86_DEBUG_STATIC_CPU_HAS=y/# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set/' config-nodebug
|
||||
|
||||
@# Undo anything that make extremedebug might have set
|
||||
@perl -pi -e 's/CONFIG_DEBUG_PAGEALLOC=y/# CONFIG_DEBUG_PAGEALLOC is not set/' config-debug
|
||||
@perl -pi -e 's/CONFIG_DEBUG_PAGEALLOC=y/# CONFIG_DEBUG_PAGEALLOC is not set/' config-nodebug
|
||||
|
||||
@# Change defaults back to sane things.
|
||||
@perl -pi -e 's/CONFIG_MAXSMP=y/# CONFIG_MAXSMP is not set/' config-x86-generic
|
||||
|
||||
@# Disable UAS for release until it's ready. (#717633, #744099)
|
||||
@perl -pi -e 's/CONFIG_USB_UAS=m/# CONFIG_USB_UAS is not set/' config-generic
|
||||
|
||||
@perl -pi -e 's/CONFIG_SCHEDSTATS=y/# CONFIG_SCHEDSTATS is not set/' config-nodebug
|
||||
@perl -pi -e 's/CONFIG_LATENCYTOP=y/# CONFIG_LATENCYTOP is not set/' config-nodebug
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
RHEL_MAJOR = 8
|
||||
RHEL_MINOR = 99
|
||||
|
||||
#
|
||||
# RHEL_RELEASE
|
||||
# -------------
|
||||
#
|
||||
# Represents build number in 'release' part of RPM's name-version-release.
|
||||
# name is <package_name>, e.g. kernel
|
||||
# version is upstream kernel version this kernel is based on, e.g. 4.18.0
|
||||
# release is <RHEL_RELEASE>.<dist_tag>[<buildid>], e.g. 100.el8
|
||||
#
|
||||
# Use this spot to avoid future merge conflicts.
|
||||
# Do not trim this comment.
|
||||
RHEL_RELEASE = 122
|
||||
|
||||
#
|
||||
# Early y+1 numbering
|
||||
# --------------------
|
||||
#
|
||||
# In early y+1 process, RHEL_RELEASE consists of 2 numbers: x.y
|
||||
# First is RHEL_RELEASE inherited/merged from y as-is, second number
|
||||
# is incremented with each build starting from 1. After merge from y,
|
||||
# it resets back to 1. This way y+1 nvr reflects status of last merge.
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# rhel8.0 rhel-8.1
|
||||
# kernel-4.18.0-58.el8 --> kernel-4.18.0-58.1.el8
|
||||
# kernel-4.18.0-58.2.el8
|
||||
# kernel-4.18.0-59.el8 kernel-4.18.0-59.1.el8
|
||||
# kernel-4.18.0-60.el8
|
||||
# kernel-4.18.0-61.el8 --> kernel-4.18.0-61.1.el8
|
||||
#
|
||||
#
|
||||
# Use this spot to avoid future merge conflicts.
|
||||
# Do not trim this comment.
|
||||
EARLY_YSTREAM ?= no
|
||||
EARLY_YBUILD:=
|
||||
EARLY_YRELEASE:=
|
||||
ifneq ("$(ZSTREAM)", "yes")
|
||||
ifeq ("$(EARLY_YSTREAM)","yes")
|
||||
RHEL_RELEASE:=$(RHEL_RELEASE).$(EARLY_YRELEASE)
|
||||
endif
|
||||
endif
|
|
@ -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 76ef7914c9aa..dddc802ccd2c 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 */
|
||||
@@ -704,6 +705,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) {
|
||||
@@ -998,6 +1002,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;
|
||||
@@ -1099,6 +1106,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);
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,147 @@
|
|||
**** Backports and patches headed/already upstream *****************************
|
||||
|
||||
* 0001-Revert-epoll-use-freezable-blocking-call.patch
|
||||
0001-Revert-select-use-freezable-blocking-call.patch (rhbz 1010603)
|
||||
- Backport of upstream commits:
|
||||
c511851de162e8ec03d62e7d7feecbdf590d881d
|
||||
59612d187912750f416fbffe0c00bc0811c54ab5
|
||||
|
||||
* net-flow_dissector-fail-on-evil-iph-ihl.patch (rhbz 1007939 1025647)
|
||||
- Should hit upstream and stable soon
|
||||
|
||||
* intel-3.12-stable-fixes.patch (rhbz 995782)
|
||||
- Backport of upstream commits:
|
||||
4f56d12ebb28fceac4c6e60c8993fbfc122e1399
|
||||
7195a50b5c7e00cc3312934fd022c3006b533d12
|
||||
c6cd2ee2d59111a07cd9199564c9bdcb2d11e5cf
|
||||
645378d85ee524e429aa4cf52806047b56cdc596
|
||||
1fbc0d789d12fec313c91912fc11733fdfbab863
|
||||
|
||||
* cifs-Allow-LANMAN-auth-for-unencapsulated-auth-methods.patch (rhbz 1011621)
|
||||
- Backport of upstream commit dde2356c8466298bd77fa699e0ea296372eed47b
|
||||
|
||||
* net_311.mbox (rhbz 1023495)
|
||||
- Networking patches queued for 3.11.7
|
||||
|
||||
* alps-Support-for-Dell-XT2-model.patch (1023413)
|
||||
- http://article.gmane.org/gmane.linux.kernel.input/32484
|
||||
|
||||
* tcp-fix-incorrect-ca_state-in-tail-loss-probe.patch (rhbz 989251)
|
||||
- Backport of upstream commit 031afe4990a7c9dbff41a3a742c44d3e740ea0a1
|
||||
|
||||
* fix-buslogic.patch (rhbz 1015558)
|
||||
- Backport of upstream commit 6541932ea2f7de0b0c5203decf666b143ad5fa33
|
||||
|
||||
* rt2800usb-slow-down-TX-status-polling.patch (rhbz 984696)
|
||||
- Still pending upstream. Fixes https://bugzilla.kernel.org/show_bug.cgi?id=62781
|
||||
|
||||
* btrfs-relocate-csums-properly-with-prealloc-ext.patch (rhbz 1011714)
|
||||
- Still pending upstream
|
||||
|
||||
* fix-radeon-sound.patch (rhbz 1010679)
|
||||
- Backport of:
|
||||
062c2e4363451d49ef840232fe65e8bff0dde2a5
|
||||
e7d12c2f98ae1e68c7298e5028048d150fa553a1
|
||||
ee0fec312a1c4e26f255955da942562cd8908a4b
|
||||
b852c985010a77c850b7548d64bbb964ca462b02
|
||||
- fixes https://bugs.freedesktop.org/show_bug.cgi?id=69675
|
||||
|
||||
* cpupower-Fix-segfault-due-to-incorrect-getopt_long-a.patch (rhbz 1000439)
|
||||
- Queued for next upstream release I believe. Fixes a segfault in cpupower
|
||||
|
||||
* dm-cache-policy-mq_fix-large-scale-table-allocation-bug.patch (rhbz 993744)
|
||||
- Still pending upstream
|
||||
|
||||
* 0001-iwlwifi-don-t-WARN-on-host-commands-sent-when-firmwa.patch (rhbz 896695)
|
||||
- Backport of commit 8ca95995e64f5d270889badb3e449dca91106a2b
|
||||
|
||||
* 0002-iwlwifi-don-t-WARN-on-bad-firmware-state.patch (rhbz 896695)
|
||||
- Still pending upstream
|
||||
|
||||
* vfio-iommu-Fixed-interaction-of-VFIO_IOMMU_MAP_DMA.patch (rhbz 998732)
|
||||
- Still pending upstream
|
||||
|
||||
* iommu-Remove-stack-trace-from-broken-irq-remapping-warning.patch (rhbz 982153)
|
||||
- Still pending upstream
|
||||
|
||||
* netfilter-nf_conntrack-use-RCU-safe-kfree-for-conntr.patch
|
||||
- Backport of commit c13a84a830a208fb3443628773c8ca0557773cc7
|
||||
|
||||
* rt2800-add-support-for-rf3070.patch (rhbz 974072)
|
||||
- Actually I'm unsure of what the upstream status on this one is.
|
||||
|
||||
* elevator-Fix-a-race-in-elevator-switching-and-md.patch
|
||||
* elevator-acquire-q-sysfs_lock-in-elevator_change.patch (rhbz 902012)
|
||||
- I believe these are both queued for the next upstream release
|
||||
|
||||
* bonding-driver-alb-learning.patch (rhbz 971893)
|
||||
- Backport of commit 7eacd03810960823393521063734fc8188446bca
|
||||
|
||||
* Revert-rt2x00pci-Use-PCI-MSIs-whenever-possible.patch
|
||||
- Backport of commit dfb6b7c109a7f98d324a759599d1b4616f02c79f
|
||||
|
||||
* ntp-Make-periodic-RTC-update-more-reliable.patch (rhbz 985522)
|
||||
- I believe this is queued in John Stultz's tree for 3.13
|
||||
|
||||
* ansi_cprng-Fix-off-by-one-error-in-non-block-size-request.patch (rhbz 1007690 1009136)
|
||||
- Fixes CVE-2013-4345
|
||||
|
||||
* media-cx23885-Fix-TeVii-S471-regression-since-introduction-of-ts2020.patch (rhbz 963715)
|
||||
- Backport of commit b43ea8068d2090cb1e44632c8a938ab40d2c7419
|
||||
|
||||
* iwl3945-better-skb-management-in-rx-path.patch
|
||||
* iwl4965-better-skb-management-in-rx-path.patch (rhbz 977040)
|
||||
- Backport of commits 45fe142cefa864b685615bcb930159f6749c3667 and
|
||||
c1de4a9557d9e25e41fc4ba034b9659152205539
|
||||
|
||||
* ath9k_rx_dma_stop_check.patch (rhbz 892811)
|
||||
- Fixes some DMA issue on specific hardware. Taken from
|
||||
https://dev.openwrt.org/browser/trunk/package/mac80211/patches/552-ath9k_rx_dma_stop_check.patch?rev=34910
|
||||
|
||||
* secure-modules.patch
|
||||
* modsign-uefi.patch
|
||||
* sb-hibernate.patch
|
||||
* sysrq-secure-boot.patch
|
||||
- Fedora secure boot support.
|
||||
- Dear Matthew, this is your fault. Run sed already and get a new set out.
|
||||
|
||||
* keys-expand-keyring.patch
|
||||
* keys-krb-support.patch
|
||||
* keys-x509-improv.patch
|
||||
* keyring-quota.patch
|
||||
- I believe these are all now queued for 3.13 in James Morris' tree.
|
||||
|
||||
**** Other stuff that should go upstream (in decreasing likelyhood) ************
|
||||
|
||||
* defaults-acpi-video.patch
|
||||
* disable-i8042-check-on-apple-mac.patch
|
||||
* no-pcspkr-modalias.patch
|
||||
* die-floppy-die.patch
|
||||
Fedora policy decisions
|
||||
Turn into CONFIG_ options and upstream ?
|
||||
|
||||
* input-kill-stupid-messages.patch
|
||||
* silence-acpi-blacklist.patch
|
||||
* silence-fbcon-logo.patch
|
||||
* silence-noise.patch
|
||||
Fedora local 'hush' patches. (TODO: push more upstream)
|
||||
|
||||
* makefile-after_link.patch
|
||||
Rolandware that is used by the debuginfo generation.
|
||||
Possibly upstreamable ?
|
||||
|
||||
* serial-460800.patch
|
||||
Probably not upstreamable.
|
||||
http://marc.theaimsgroup.com/?l=linux-kernel&m=112687270832687&w=2
|
||||
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=126403
|
||||
http://lkml.org/lkml/2006/8/2/208
|
||||
|
||||
********************************************************************************
|
||||
|
||||
'MUSTARD' patches. Fedora local patches that are very unlikely to go upstream.
|
||||
|
||||
* crash-driver.patch
|
||||
Unlikely to go upstream.
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=492803
|
||||
|
||||
********************************************************************************
|
|
@ -1,228 +0,0 @@
|
|||
https://gitlab.com/cki-project/kernel-ark/-/commit/8773e8c6039ff74d1426cc80de30de759cd0c2a2
|
||||
8773e8c6039ff74d1426cc80de30de759cd0c2a2 irq: export irq_check_status_bit
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/e187313e5f0086538fefe0925ef84480f99616d8
|
||||
e187313e5f0086538fefe0925ef84480f99616d8 gcc-plugins: fix gcc 11 indigestion with plugins...
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/0c84b348e33ab9d7df5c3c5acc7fbc07fd96fafc
|
||||
0c84b348e33ab9d7df5c3c5acc7fbc07fd96fafc Fix up bad merge with efi: generalize efi_get_secureboot
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/364788093bdf437c33753d327136c363be8f756c
|
||||
364788093bdf437c33753d327136c363be8f756c Fix up a merge issue with rxe.c
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/a4d554ce883e24df77cce42bc2deec527028c213
|
||||
a4d554ce883e24df77cce42bc2deec527028c213 Filter out LTO build options from the perl ccopts
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/17b0f7f1d49df30661b517d668715ff5ee1bab09
|
||||
17b0f7f1d49df30661b517d668715ff5ee1bab09 Fixes "acpi: prefer booting with ACPI over DTS" to be RHEL only
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/e7c009cd91ababdbb5f726ef592c7800f0682d3a
|
||||
e7c009cd91ababdbb5f726ef592c7800f0682d3a arch/x86: Remove vendor specific CPU ID checks
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7120b2a26fc4c7954fd0395973dc6739c110e091
|
||||
7120b2a26fc4c7954fd0395973dc6739c110e091 redhat: Replace hardware.redhat.com link in Unsupported message
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7a28e2fde653a161913abb8eee943cdacb5ff2ae
|
||||
7a28e2fde653a161913abb8eee943cdacb5ff2ae x86: Fix compile issues with rh_check_supported()
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/45f64c1a24e73af7987cffec3ea941e29364f87f
|
||||
45f64c1a24e73af7987cffec3ea941e29364f87f e1000e: bump up timeout to wait when ME un-configure ULP mode
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/6c14763b1ce98698949ff45135c15e333aa6416d
|
||||
6c14763b1ce98698949ff45135c15e333aa6416d drm/sun4i: sun6i_mipi_dsi: fix horizontal timing calculation
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/67a19b16012b12cffba0b515c6503e5f8cdbb798
|
||||
67a19b16012b12cffba0b515c6503e5f8cdbb798 drm: panel: add Xingbangda XBD599 panel
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/d220dbf98cef820367b5a2a2eeaacebee958bdd4
|
||||
d220dbf98cef820367b5a2a2eeaacebee958bdd4 dt-bindings: panel: add binding for Xingbangda XBD599 panel
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/80660062260dec4bdca9540922577542c16145e8
|
||||
80660062260dec4bdca9540922577542c16145e8 ARM: fix __get_user_check() in case uaccess_* calls are not inlined
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/24d8743613b2a6a585fc68cfe95078d9a3d5b389
|
||||
24d8743613b2a6a585fc68cfe95078d9a3d5b389 mm/kmemleak: skip late_init if not skip disable
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/b697ff5e26974fee8fcd31a1e221e9dd41515efc
|
||||
b697ff5e26974fee8fcd31a1e221e9dd41515efc KEYS: Make use of platform keyring for module signature verify
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/081d2185e22479b449586c4e9843602ca0d49806
|
||||
081d2185e22479b449586c4e9843602ca0d49806 Drop that for now
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/5ef51389cf6673a0e9e004909c7be1dc785050b2
|
||||
5ef51389cf6673a0e9e004909c7be1dc785050b2 Input: rmi4 - remove the need for artificial IRQ in case of HID
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/c1788012ebf8de46e9dc80d18051ed0c77c811b6
|
||||
c1788012ebf8de46e9dc80d18051ed0c77c811b6 ARM: tegra: usb no reset
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/577365feaa909db4c0949eabfcda7e4a972b8e54
|
||||
577365feaa909db4c0949eabfcda7e4a972b8e54 arm: make CONFIG_HIGHPTE optional without CONFIG_EXPERT
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/331be9c5a436057ee852075c102d9d90a9046a30
|
||||
331be9c5a436057ee852075c102d9d90a9046a30 redhat: rh_kabi: deduplication friendly structs
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/34d79fbfb327f732ebf3ece4db21a14f81fedf03
|
||||
34d79fbfb327f732ebf3ece4db21a14f81fedf03 redhat: rh_kabi add a comment with warning about RH_KABI_EXCLUDE usage
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/93a4b5f12d5a1c2d62cf1d7c440b31d9847eab07
|
||||
93a4b5f12d5a1c2d62cf1d7c440b31d9847eab07 redhat: rh_kabi: introduce RH_KABI_EXTEND_WITH_SIZE
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/8e5c06356457f5351289e9f687b991189d163dae
|
||||
8e5c06356457f5351289e9f687b991189d163dae redhat: rh_kabi: Indirect EXTEND macros so nesting of other macros will resolve.
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/212cbccda77cc81fcb60123907eabdac8ad5adb7
|
||||
212cbccda77cc81fcb60123907eabdac8ad5adb7 redhat: rh_kabi: Fix RH_KABI_SET_SIZE to use dereference operator
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/6f7744b412e1fb86a67d8761e64df69cf891b4ad
|
||||
6f7744b412e1fb86a67d8761e64df69cf891b4ad redhat: rh_kabi: Add macros to size and extend structs
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/049623d33998be30d79692c69b34acb502c496e3
|
||||
049623d33998be30d79692c69b34acb502c496e3 Removing Obsolete hba pci-ids from rhel8
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/43ef1d631ecfe84084db3572c9ed1bedbdceb0f8
|
||||
43ef1d631ecfe84084db3572c9ed1bedbdceb0f8 mptsas: pci-id table changes
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/e5726695109dd1a73da92487b75de6a51d54c015
|
||||
e5726695109dd1a73da92487b75de6a51d54c015 mptsas: Taint kernel if mptsas is loaded
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/ee4dcd6f04ca76ad35ab0f38c436ab2f7de53f16
|
||||
ee4dcd6f04ca76ad35ab0f38c436ab2f7de53f16 mptspi: pci-id table changes
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/bd305f716d8b64be1926bc7aebe02468ac6bf599
|
||||
bd305f716d8b64be1926bc7aebe02468ac6bf599 qla2xxx: Remove PCI IDs of deprecated adapter
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/803ff9a2c660c094e14d246ef05019bf6008d503
|
||||
803ff9a2c660c094e14d246ef05019bf6008d503 be2iscsi: remove unsupported device IDs
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2cb24399321f555f18b0804d3fe02cf53949fba1
|
||||
2cb24399321f555f18b0804d3fe02cf53949fba1 mptspi: Taint kernel if mptspi is loaded
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/ad1740551ff4af49f1ef10a130783d9369e955a0
|
||||
ad1740551ff4af49f1ef10a130783d9369e955a0 hpsa: remove old cciss-based smartarray pci ids
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/4197ba3e766656eea9175c11ed05903620d98a28
|
||||
4197ba3e766656eea9175c11ed05903620d98a28 qla4xxx: Remove deprecated PCI IDs from RHEL 8
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7e285aec22ab1213639afda877902db363473cb0
|
||||
7e285aec22ab1213639afda877902db363473cb0 aacraid: Remove depreciated device and vendor PCI id's
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/846109a16be92155e69731c36dde48761d375153
|
||||
846109a16be92155e69731c36dde48761d375153 megaraid_sas: remove deprecated pci-ids
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/6fd2019d01cee7ff36dc047d3ecdb504b968f222
|
||||
6fd2019d01cee7ff36dc047d3ecdb504b968f222 mpt*: remove certain deprecated pci-ids
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/dddcd5c1129b275ff160324036a662739db51fc3
|
||||
dddcd5c1129b275ff160324036a662739db51fc3 kernel: add SUPPORT_REMOVED kernel taint
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/08d77161dba915d1ed0d9fede658085440ab4474
|
||||
08d77161dba915d1ed0d9fede658085440ab4474 Rename RH_DISABLE_DEPRECATED to RHEL_DIFFERENCES
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/e2dc2ca6a25a445bf22ceb6a8e38e02706605341
|
||||
e2dc2ca6a25a445bf22ceb6a8e38e02706605341 Add option of 13 for FORCE_MAX_ZONEORDER
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2384646bf71d8c282cf49bb20321fdf802c61cce
|
||||
2384646bf71d8c282cf49bb20321fdf802c61cce s390: Lock down the kernel when the IPL secure flag is set
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/5850c93175b9d2e1081873f4bbe08dead202cb08
|
||||
5850c93175b9d2e1081873f4bbe08dead202cb08 efi: Lock down the kernel if booted in secure boot mode
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/53250b991f841be025fa4d264850dadc0fae2861
|
||||
53250b991f841be025fa4d264850dadc0fae2861 efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/72223fd1241cc5c70b96a491db14d54c83beadd8
|
||||
72223fd1241cc5c70b96a491db14d54c83beadd8 security: lockdown: expose a hook to lock the kernel down
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7ba28f03674fa9346610c3fea7fc93bc58f06d2a
|
||||
7ba28f03674fa9346610c3fea7fc93bc58f06d2a Make get_cert_list() use efi_status_to_str() to print error messages.
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2ae9082db0b54d831a9b3782c049d9917e37d89f
|
||||
2ae9082db0b54d831a9b3782c049d9917e37d89f Add efi_status_to_str() and rework efi_status_to_err().
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/cee1461ada1b7e4b92cd154e7ec241119afcd644
|
||||
cee1461ada1b7e4b92cd154e7ec241119afcd644 Add support for deprecating processors
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2420149f8f5fa9dd1e2dc793765b498022922a81
|
||||
2420149f8f5fa9dd1e2dc793765b498022922a81 arm: aarch64: Drop the EXPERT setting from ARM64_FORCE_52BIT
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/1d69b30b98b60aff639351f5788d20a3b17f6e27
|
||||
1d69b30b98b60aff639351f5788d20a3b17f6e27 iommu/arm-smmu: workaround DMA mode issues
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/6b2e73e508e7a117b1db91596097c00e5570f64a
|
||||
6b2e73e508e7a117b1db91596097c00e5570f64a rh_kabi: introduce RH_KABI_EXCLUDE
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/ecb9206bce179eb600c52642a6753012a69ce4a2
|
||||
ecb9206bce179eb600c52642a6753012a69ce4a2 ipmi: do not configure ipmi for HPE m400
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/473be59fe72afa9969cf8d10609ef3f14f594631
|
||||
473be59fe72afa9969cf8d10609ef3f14f594631 IB/rxe: Mark Soft-RoCE Transport driver as tech-preview
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/b94117795261f9c074a7addca2252238871b5081
|
||||
b94117795261f9c074a7addca2252238871b5081 scsi: smartpqi: add inspur advantech ids
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/cae871558c333880c1687cab6f2a71accf40d105
|
||||
cae871558c333880c1687cab6f2a71accf40d105 ice: mark driver as tech-preview
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7d9cb007404211ea6638bde4a28dd0fbe8d95de0
|
||||
7d9cb007404211ea6638bde4a28dd0fbe8d95de0 kABI: Add generic kABI macros to use for kABI workarounds
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/bd353e9aae8877dd490e6c92b67849e0dcfbab25
|
||||
bd353e9aae8877dd490e6c92b67849e0dcfbab25 add pci_hw_vendor_status()
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/41a259999969bbdfe9f556ce71f2c3c07d7454f4
|
||||
41a259999969bbdfe9f556ce71f2c3c07d7454f4 ahci: thunderx2: Fix for errata that affects stop engine
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2a107343529ce648c11bff62e9f72bbeec738f3f
|
||||
2a107343529ce648c11bff62e9f72bbeec738f3f Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/03e48a48f400a51a182a1254cf22ff0c08706d76
|
||||
03e48a48f400a51a182a1254cf22ff0c08706d76 bpf: Add tech preview taint for syscall
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/607f0e89af7ef5682f79f2eea0a99638a1bc0c4f
|
||||
607f0e89af7ef5682f79f2eea0a99638a1bc0c4f bpf: set unprivileged_bpf_disabled to 1 by default, add a boot parameter
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/31da227877eb734ddb484bc519aae85ce200802e
|
||||
31da227877eb734ddb484bc519aae85ce200802e add Red Hat-specific taint flags
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/7a2e2c83be0230667756cccb5bc3687419dfbb8b
|
||||
7a2e2c83be0230667756cccb5bc3687419dfbb8b kdump: fix a grammar issue in a kernel message
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/d345d54d33e7d496c9d845e4723550dd37cb3f88
|
||||
d345d54d33e7d496c9d845e4723550dd37cb3f88 tags.sh: Ignore redhat/rpm
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/5c67dc1eb0783a5c4ca4eb5c545ff6fe05facff0
|
||||
5c67dc1eb0783a5c4ca4eb5c545ff6fe05facff0 put RHEL info into generated headers
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/ce12884c009ec3bed11100c9d19f6d97628cf8ae
|
||||
ce12884c009ec3bed11100c9d19f6d97628cf8ae kdump: add support for crashkernel=auto
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/18fb1389afccdc5535977a10669b49a37829b55a
|
||||
18fb1389afccdc5535977a10669b49a37829b55a kdump: round up the total memory size to 128M for crashkernel reservation
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/5fb9821441cc0b77101ad9c0dfaa747957a4cce4
|
||||
5fb9821441cc0b77101ad9c0dfaa747957a4cce4 acpi: prefer booting with ACPI over DTS
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/0cf21a40db6fca5d89cf3d65808117c8c14e524e
|
||||
0cf21a40db6fca5d89cf3d65808117c8c14e524e aarch64: acpi scan: Fix regression related to X-Gene UARTs
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/de13e14cc2388478d9a2c68c5d90affd92098f11
|
||||
de13e14cc2388478d9a2c68c5d90affd92098f11 ACPI / irq: Workaround firmware issue on X-Gene based m400
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/71c098f4afa38a15a95495c14f71fb087ab27308
|
||||
71c098f4afa38a15a95495c14f71fb087ab27308 modules: add rhelversion MODULE_INFO tag
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/3247f9c838f4aa91aa5d08c152b385d61554d4b5
|
||||
3247f9c838f4aa91aa5d08c152b385d61554d4b5 ACPI: APEI: arm64: Ignore broken HPE moonshot APEI support
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/e80982feaa68226ff60d2f83dace2016c35270d3
|
||||
e80982feaa68226ff60d2f83dace2016c35270d3 Add Red Hat tainting
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/2987f9a606df106f5bdfa4113eb55356a21085a6
|
||||
2987f9a606df106f5bdfa4113eb55356a21085a6 Introduce CONFIG_RH_DISABLE_DEPRECATED
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/a99885a5e77af594dfdce586cc83e5911d8401ce
|
||||
a99885a5e77af594dfdce586cc83e5911d8401ce Pull the RHEL version defines out of the Makefile
|
||||
|
||||
https://gitlab.com/cki-project/kernel-ark/-/commit/cd3a5d30570279538623ea8a1255db0ee4b728f7
|
||||
cd3a5d30570279538623ea8a1255db0ee4b728f7 [initial commit] Add Red Hat variables in the top level makefile
|
||||
|
25
README.rst
25
README.rst
|
@ -1,25 +0,0 @@
|
|||
===================
|
||||
The Kernel dist-git
|
||||
===================
|
||||
|
||||
The kernel is maintained in a `source tree`_ rather than directly in dist-git.
|
||||
The specfile is maintained as a `template`_ in the source tree along with a set
|
||||
of build scripts to generate configurations, (S)RPMs, and to populate the
|
||||
dist-git repository.
|
||||
|
||||
The `documentation`_ for the source tree covers how to contribute and maintain
|
||||
the tree.
|
||||
|
||||
If you're looking for the downstream patch set it's available in the source
|
||||
tree with "git log master..ark-patches" or
|
||||
`online`_.
|
||||
|
||||
Each release in dist-git is tagged in the source repository so you can easily
|
||||
check out the source tree for a build. The tags are in the format
|
||||
name-version-release, but note release doesn't contain the dist tag since the
|
||||
source can be built in different build roots (Fedora, CentOS, etc.)
|
||||
|
||||
.. _source tree: https://gitlab.com/cki-project/kernel-ark.git
|
||||
.. _template: https://gitlab.com/cki-project/kernel-ark/-/blob/os-build/redhat/kernel.spec.template
|
||||
.. _documentation: https://gitlab.com/cki-project/kernel-ark/-/wikis/home
|
||||
.. _online: https://gitlab.com/cki-project/kernel-ark/-/commits/ark-patches
|
|
@ -0,0 +1,82 @@
|
|||
|
||||
Kernel package tips & tricks.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The kernel is one of the more complicated packages in the distro, and
|
||||
for the newcomer, some of the voodoo in the spec file can be somewhat scary.
|
||||
This file attempts to document some of the magic.
|
||||
|
||||
|
||||
Speeding up make prep
|
||||
---------------------
|
||||
The kernel is nearly 500MB of source code, and as such, 'make prep'
|
||||
takes a while. The spec file employs some trickery so that repeated
|
||||
invocations of make prep don't take as long. Ordinarily the %prep
|
||||
phase of a package will delete the tree it is about to untar/patch.
|
||||
The kernel %prep keeps around an unpatched version of the tree,
|
||||
and makes a symlink tree clone of that clean tree and than applies
|
||||
the patches listed in the spec to the symlink tree.
|
||||
This makes a huge difference if you're doing multiple make preps a day.
|
||||
As an added bonus, doing a diff between the clean tree and the symlink
|
||||
tree is slightly faster than it would be doing two proper copies of the tree.
|
||||
|
||||
|
||||
build logs.
|
||||
-----------
|
||||
There's a convenience helper script in scripts/grab-logs.sh
|
||||
that will grab the build logs from koji for the kernel version reported
|
||||
by make verrel
|
||||
|
||||
|
||||
config heirarchy.
|
||||
-----------------
|
||||
Instead of having to maintain a config file for every arch variant we build on,
|
||||
the kernel spec uses a nested system of configs. At the top level, is
|
||||
config-generic. Add options here that should be present in every possible
|
||||
config on all architectures.
|
||||
|
||||
Beneath this are per-arch overrides. For example config-x86-generic add
|
||||
additional x86 specific options, and also _override_ any options that were
|
||||
set in config-generic.
|
||||
|
||||
The heirarchy looks like this..
|
||||
|
||||
config-generic
|
||||
|
|
||||
config-x86-generic
|
||||
| |
|
||||
config-x86-32-generic config-x86-64-generic
|
||||
|
||||
An option set in a lower level will override the same option set in one
|
||||
of the higher levels.
|
||||
|
||||
|
||||
There exist two additional overrides, config-debug, and config-nodebug,
|
||||
which override -generic, and the per-arch overrides. It is documented
|
||||
further below.
|
||||
|
||||
|
||||
debug options.
|
||||
--------------
|
||||
This is a little complicated, as the purpose & meaning of this changes
|
||||
depending on where we are in the release cycle.
|
||||
If we are building for a current stable release, 'make release' has
|
||||
typically been run already, which sets up the following..
|
||||
- Two builds occur, a 'kernel' and a 'kernel-debug' flavor.
|
||||
- kernel-debug will get various heavyweight debugging options like
|
||||
lockdep etc turned on.
|
||||
|
||||
If we are building for rawhide, 'make debug' has been run, which changes
|
||||
the status quo to:
|
||||
- We only build one kernel 'kernel'
|
||||
- The debug options from 'config-debug' are always turned on.
|
||||
This is done to increase coverage testing, as not many people actually
|
||||
run kernel-debug.
|
||||
|
||||
To add new debug options, add an option to _both_ config-debug and config-nodebug,
|
||||
and also new stanzas to the Makefile 'debug' and 'release' targets.
|
||||
|
||||
Sometimes debug options get added to config-generic, or per-arch overrides
|
||||
instead of config-[no]debug. In this instance, the options should have no
|
||||
discernable performance impact, otherwise they belong in the debug files.
|
||||
|
|
@ -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 cdf839f9defe..c63cf93b00eb 100644
|
||||
--- a/drivers/char/mem.c
|
||||
+++ b/drivers/char/mem.c
|
||||
@@ -164,6 +164,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;
|
||||
|
||||
@@ -502,6 +505,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);
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
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.
|
||||
---
|
||||
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
|
||||
--- a/Documentation/kernel-parameters.txt
|
||||
+++ b/Documentation/kernel-parameters.txt
|
||||
@@ -3532,7 +3532,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.
|
||||
- default: 1
|
||||
+ default: 0
|
||||
|
||||
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
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -68,7 +68,7 @@ MODULE_AUTHOR("Bruno Ducrot");
|
||||
MODULE_DESCRIPTION("ACPI Video Driver");
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
-static bool brightness_switch_enabled = 1;
|
||||
+static bool brightness_switch_enabled;
|
||||
module_param(brightness_switch_enabled, bool, 0644);
|
||||
|
||||
/*
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
* Post 3.5:
|
||||
- Check if PaulMcK has fixed CONFIG_RCU_FAST_NO_HZ
|
||||
|
||||
Config TODOs:
|
||||
* review & disable a bunch of the I2C, RTC, DVB, SOUND options.
|
||||
|
||||
Spec file TODOs:
|
||||
|
||||
* modules-extra: Do a few more things to make it a bit more robust.
|
||||
- Allow for comments in the mod-extra.list file.
|
||||
- Don't fail the build if a module is listed but not built (maybe).
|
||||
- See if it can be tied into Kconfig instead of module names.
|
||||
|
||||
* investigate gzip modules. Everything should support this now?
|
||||
Looks like about 70M savings per kernel installed.
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
From: Adel Gadllah <adel.gadllah@gmail.com>
|
||||
Date: Tue, 7 Oct 2014 18:42:28 +0200
|
||||
Subject: [PATCH] USB: quirks: device-qualifier quirk for another Elan
|
||||
touchscreen
|
||||
|
||||
Yet another device affected by this.
|
||||
|
||||
Signed-off-by: Adel Gadllah <adel.gadllah@gmail.com>
|
||||
---
|
||||
drivers/usb/core/quirks.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
|
||||
index cac60d9b091b..e71bad25294c 100644
|
||||
--- a/drivers/usb/core/quirks.c
|
||||
+++ b/drivers/usb/core/quirks.c
|
||||
@@ -98,6 +98,10 @@ static const struct usb_device_id usb_quirk_list[] = {
|
||||
USB_QUIRK_DEVICE_QUALIFIER },
|
||||
|
||||
/* Elan Touchscreen */
|
||||
+ { USB_DEVICE(0x04f3, 0x016f), .driver_info =
|
||||
+ USB_QUIRK_DEVICE_QUALIFIER },
|
||||
+
|
||||
+ /* Elan Touchscreen */
|
||||
{ USB_DEVICE(0x04f3, 0x009b), .driver_info =
|
||||
USB_QUIRK_DEVICE_QUALIFIER },
|
||||
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -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 3abe9b223ba7..ee8f11cf65da 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>
|
||||
@@ -245,7 +246,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
|
||||
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Thu, 28 May 2015 18:25:46 +0200
|
||||
Subject: [PATCH] acpi_video: Add enable_native_backlight quirk for
|
||||
MacbookPro12,1
|
||||
|
||||
It seems that the latest generation of MacbookPro needs to use the
|
||||
native backlight driver, just like most modern laptops do, but it does
|
||||
not automatically get enabled as the Apple BIOS does not advertise
|
||||
Windows 8 compatibility. So add a quirk for this.
|
||||
|
||||
Cc: Christopher Beland <beland@alum.mit.edu>
|
||||
Reported-by: Christopher Beland <beland@alum.mit.edu>
|
||||
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 d9bf8ba7d848..b57d69370bac 100644
|
||||
--- a/drivers/acpi/video.c
|
||||
+++ b/drivers/acpi/video.c
|
||||
@@ -583,6 +583,15 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "102434U"),
|
||||
},
|
||||
},
|
||||
+ {
|
||||
+ /* https://bugzilla.redhat.com/show_bug.cgi?id=1217249 */
|
||||
+ .callback = video_enable_native_backlight,
|
||||
+ .ident = "Apple MacBook Pro 12,1",
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
|
||||
+ DMI_MATCH(DMI_PRODUCT_NAME, "MacBookPro12,1"),
|
||||
+ },
|
||||
+ },
|
||||
{}
|
||||
};
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -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 86cdb52dbf8a..db4518ef755d 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.3
|
||||
|
|
@ -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 bde1777b62be..c7357bcc7d5c 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.9.3
|
||||
|
|
@ -0,0 +1,269 @@
|
|||
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 | 222 ++++++++++++++++++++++++++++++
|
||||
1 file changed, 222 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
index 1fd496fe1a68..9688dda39e7a 100644
|
||||
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
|
||||
@@ -95,6 +95,20 @@
|
||||
>;
|
||||
};
|
||||
|
||||
+ 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 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ 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 +189,60 @@
|
||||
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 */
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ 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 +252,20 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&uart1 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&uart1_pins>;
|
||||
+
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&uart1 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&uart1_pins>;
|
||||
+
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&usb {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -259,6 +341,106 @@
|
||||
};
|
||||
};
|
||||
|
||||
+&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>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&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 {
|
||||
@@ -347,4 +529,44 @@
|
||||
|
||||
&sham {
|
||||
status = "okay";
|
||||
+
|
||||
+};
|
||||
+
|
||||
+/ {
|
||||
+ 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";
|
||||
+ };
|
||||
+ };
|
||||
};
|
|
@ -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 bf5349165542..acfff3befff5 100644
|
||||
--- a/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
+++ b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
@@ -66,6 +66,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.9.3
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
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 305975d3f531..bf5349165542 100644
|
||||
--- a/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
+++ b/arch/arm/boot/dts/am335x-boneblack.dts
|
||||
@@ -73,5 +73,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.9.3
|
||||
|
|
@ -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 8c35ae4ff176..38e1dc3b4c6e 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,
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
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 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 @@
|
||||
MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
+
|
||||
+ pinctrl_usdhc1: usdhc1grp {
|
||||
+ fsl,pins = <
|
||||
+ MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17059
|
||||
+ MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10059
|
||||
+ MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17059
|
||||
+ MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17059
|
||||
+ MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17059
|
||||
+ MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17059
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
+ pinctrl_usdhc3: usdhc3grp {
|
||||
+ fsl,pins = <
|
||||
+ MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
|
||||
+ MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
|
||||
+ MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
|
||||
+ MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
|
||||
+ MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
|
||||
+ MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
|
||||
+ >;
|
||||
+ };
|
||||
};
|
||||
};
|
||||
|
||||
+&sata {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&uart4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart4>;
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usdhc1 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usdhc3 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
From: Mark Salter <msalter@redhat.com>
|
||||
Date: Wed, 25 Mar 2015 14:17:50 -0400
|
||||
Subject: [PATCH] arm64: avoid needing console= to enable serial console
|
||||
|
||||
Tell kernel to prefer one of the serial ports for console on
|
||||
platforms currently supported (pl011 or 8250). console= on
|
||||
command line will override these assumed preferences. This is
|
||||
just a hack to get the behavior we want from DT provided by
|
||||
firmware.
|
||||
|
||||
Signed-off-by: Mark Salter <msalter@redhat.com>
|
||||
---
|
||||
arch/arm64/kernel/setup.c | 19 +++++++++++++++++++
|
||||
1 file changed, 19 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
|
||||
index 74753132c3ac..3cc99d7c2361 100644
|
||||
--- a/arch/arm64/kernel/setup.c
|
||||
+++ b/arch/arm64/kernel/setup.c
|
||||
@@ -579,3 +579,22 @@ const struct seq_operations cpuinfo_op = {
|
||||
.stop = c_stop,
|
||||
.show = c_show
|
||||
};
|
||||
+
|
||||
+/*
|
||||
+ * Temporary hack to avoid need for console= on command line
|
||||
+ */
|
||||
+static int __init arm64_console_setup(void)
|
||||
+{
|
||||
+ /* Allow cmdline to override our assumed preferences */
|
||||
+ if (console_set_on_cmdline)
|
||||
+ return 0;
|
||||
+
|
||||
+ if (IS_ENABLED(CONFIG_SERIAL_AMBA_PL011))
|
||||
+ add_preferred_console("ttyAMA", 0, "115200");
|
||||
+
|
||||
+ if (IS_ENABLED(CONFIG_SERIAL_8250))
|
||||
+ add_preferred_console("ttyS", 0, "115200");
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+early_initcall(arm64_console_setup);
|
|
@ -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 21fc932da3a1..c6d42ad95c08 100644
|
||||
--- a/drivers/platform/x86/asus-wmi.c
|
||||
+++ b/drivers/platform/x86/asus-wmi.c
|
||||
@@ -1590,6 +1590,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)
|
||||
@@ -1606,6 +1609,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);
|
||||
|
||||
@@ -1630,6 +1636,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);
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
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 275205ab5f15..bb842623bdf6 100644
|
||||
--- a/drivers/net/wireless/ath/ath9k/mac.c
|
||||
+++ b/drivers/net/wireless/ath/ath9k/mac.c
|
||||
@@ -700,7 +700,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);
|
||||
- u32 mac_status, last_mac_status = 0;
|
||||
+ u32 mac_status = 0, last_mac_status = 0;
|
||||
int i;
|
||||
|
||||
/* Enable access to the DMA observation bus */
|
||||
@@ -730,6 +730,16 @@ bool ath9k_hw_stopdmarecv(struct ath_hw *ah, bool *reset)
|
||||
}
|
||||
|
||||
if (i == 0) {
|
||||
+ if (!AR_SREV_9300_20_OR_LATER(ah) &&
|
||||
+ (mac_status & 0x700) == 0) {
|
||||
+ /*
|
||||
+ * DMA is idle but the MAC is still stuck
|
||||
+ * processing events
|
||||
+ */
|
||||
+ *reset = true;
|
||||
+ return true;
|
||||
+ }
|
||||
+
|
||||
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,
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -0,0 +1,104 @@
|
|||
If there are too many pending per work I/O, too many
|
||||
high priority work thread can be generated so that
|
||||
system performance can be effected.
|
||||
|
||||
This patch limits the max pending per work I/O as 16,
|
||||
and will fackback to single queue mode when the max
|
||||
number is reached.
|
||||
|
||||
This patch fixes Fedora 22 live booting performance
|
||||
regression when it is booted from squashfs over dm
|
||||
based on loop, and looks the following reasons are
|
||||
related with the problem:
|
||||
|
||||
- not like other filesyststems(such as ext4), squashfs
|
||||
is a bit special, and I observed that increasing I/O jobs
|
||||
to access file in squashfs only improve I/O performance a
|
||||
little, but it can make big difference for ext4
|
||||
|
||||
- nested loop: both squashfs.img and ext3fs.img are mounted
|
||||
as loop block, and ext3fs.img is inside the squashfs
|
||||
|
||||
- during booting, lots of tasks may run concurrently
|
||||
|
||||
Fixes: b5dd2f6047ca108001328aac0e8588edd15f1778
|
||||
Cc: stable@vger.kernel.org (v4.0)
|
||||
Reported-by: Justin M. Forbes <jforbes@fedoraproject.org>
|
||||
Tested-by: Justin M. Forbes <jforbes@fedoraproject.org>
|
||||
Signed-off-by: Ming Lei <ming.lei@canonical.com>
|
||||
---
|
||||
drivers/block/loop.c | 19 +++++++++++++++++--
|
||||
drivers/block/loop.h | 2 ++
|
||||
2 files changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/block/loop.c b/drivers/block/loop.c
|
||||
index ae3fcb4..5a728c6 100644
|
||||
--- a/drivers/block/loop.c
|
||||
+++ b/drivers/block/loop.c
|
||||
@@ -1425,13 +1425,24 @@ static int loop_queue_rq(struct blk_mq_hw_ctx *hctx,
|
||||
const struct blk_mq_queue_data *bd)
|
||||
{
|
||||
struct loop_cmd *cmd = blk_mq_rq_to_pdu(bd->rq);
|
||||
+ struct loop_device *lo = cmd->rq->q->queuedata;
|
||||
+ bool single_queue = !!(cmd->rq->cmd_flags & REQ_WRITE);
|
||||
+
|
||||
+ /*
|
||||
+ * Fallback to single queue mode if the pending per work
|
||||
+ * I/O number reaches 16, otherwise too many high priority
|
||||
+ * worker thread may effect system performance as reported
|
||||
+ * in fedora live booting from squashfs over loop.
|
||||
+ */
|
||||
+ if (atomic_read(&lo->pending_per_work_io) >= 16)
|
||||
+ single_queue = true;
|
||||
|
||||
blk_mq_start_request(bd->rq);
|
||||
|
||||
- if (cmd->rq->cmd_flags & REQ_WRITE) {
|
||||
- struct loop_device *lo = cmd->rq->q->queuedata;
|
||||
+ if (single_queue) {
|
||||
bool need_sched = true;
|
||||
|
||||
+ cmd->per_work_io = false;
|
||||
spin_lock_irq(&lo->lo_lock);
|
||||
if (lo->write_started)
|
||||
need_sched = false;
|
||||
@@ -1443,6 +1454,8 @@ static int loop_queue_rq(struct blk_mq_hw_ctx *hctx,
|
||||
if (need_sched)
|
||||
queue_work(loop_wq, &lo->write_work);
|
||||
} else {
|
||||
+ atomic_inc(&lo->pending_per_work_io);
|
||||
+ cmd->per_work_io = true;
|
||||
queue_work(loop_wq, &cmd->read_work);
|
||||
}
|
||||
|
||||
@@ -1467,6 +1480,8 @@ static void loop_handle_cmd(struct loop_cmd *cmd)
|
||||
if (ret)
|
||||
cmd->rq->errors = -EIO;
|
||||
blk_mq_complete_request(cmd->rq);
|
||||
+ if (cmd->per_work_io)
|
||||
+ atomic_dec(&lo->pending_per_work_io);
|
||||
}
|
||||
|
||||
static void loop_queue_write_work(struct work_struct *work)
|
||||
diff --git a/drivers/block/loop.h b/drivers/block/loop.h
|
||||
index 301c27f..eb855f5 100644
|
||||
--- a/drivers/block/loop.h
|
||||
+++ b/drivers/block/loop.h
|
||||
@@ -57,6 +57,7 @@ struct loop_device {
|
||||
struct list_head write_cmd_head;
|
||||
struct work_struct write_work;
|
||||
bool write_started;
|
||||
+ atomic_t pending_per_work_io;
|
||||
int lo_state;
|
||||
struct mutex lo_ctl_mutex;
|
||||
|
||||
@@ -68,6 +69,7 @@ struct loop_device {
|
||||
struct loop_cmd {
|
||||
struct work_struct read_work;
|
||||
struct request *rq;
|
||||
+ bool per_work_io;
|
||||
struct list_head list;
|
||||
};
|
||||
|
||||
--
|
||||
1.9.1
|
|
@ -0,0 +1,117 @@
|
|||
From: NeilBrown <neilb@suse.de>
|
||||
Date: Tue, 19 May 2015 15:58:37 +1000
|
||||
Subject: [PATCH] block: discard bdi_unregister() in favour of bdi_destroy()
|
||||
|
||||
bdi_unregister() now contains very little functionality.
|
||||
|
||||
It contains a "WARN_ON" if bdi->dev is NULL. This warning is of no
|
||||
real consequence as bdi->dev isn't needed by anything else in the function,
|
||||
and it triggers if
|
||||
blk_cleanup_queue() -> bdi_destroy()
|
||||
is called before bdi_unregister, which happens since
|
||||
Commit: 6cd18e711dd8 ("block: destroy bdi before blockdev is unregistered.")
|
||||
|
||||
So this isn't wanted.
|
||||
|
||||
It also calls bdi_set_min_ratio(). This needs to be called after
|
||||
writes through the bdi have all been flushed, and before the bdi is destroyed.
|
||||
Calling it early is better than calling it late as it frees up a global
|
||||
resource.
|
||||
|
||||
Calling it immediately after bdi_wb_shutdown() in bdi_destroy()
|
||||
perfectly fits these requirements.
|
||||
|
||||
So bdi_unregister() can be discarded with the important content moved to
|
||||
bdi_destroy(), as can the
|
||||
writeback_bdi_unregister
|
||||
event which is already not used.
|
||||
|
||||
Reported-by: Mike Snitzer <snitzer@redhat.com>
|
||||
Cc: stable@vger.kernel.org (v4.0)
|
||||
Fixes: c4db59d31e39 ("fs: don't reassign dirty inodes to default_backing_dev_info")
|
||||
Fixes: 6cd18e711dd8 ("block: destroy bdi before blockdev is unregistered.")
|
||||
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
|
||||
Acked-by: Dan Williams <dan.j.williams@intel.com>
|
||||
Tested-by: Nicholas Moulin <nicholas.w.moulin@linux.intel.com>
|
||||
Signed-off-by: NeilBrown <neilb@suse.de>
|
||||
Reviewed-by: Christoph Hellwig <hch@lst.de>
|
||||
Signed-off-by: Jens Axboe <axboe@fb.com>
|
||||
---
|
||||
block/genhd.c | 1 -
|
||||
include/linux/backing-dev.h | 1 -
|
||||
include/trace/events/writeback.h | 1 -
|
||||
mm/backing-dev.c | 18 +-----------------
|
||||
4 files changed, 1 insertion(+), 20 deletions(-)
|
||||
|
||||
diff --git a/block/genhd.c b/block/genhd.c
|
||||
index 0a536dc05f3b..666e11b83983 100644
|
||||
--- a/block/genhd.c
|
||||
+++ b/block/genhd.c
|
||||
@@ -653,7 +653,6 @@ void del_gendisk(struct gendisk *disk)
|
||||
disk->flags &= ~GENHD_FL_UP;
|
||||
|
||||
sysfs_remove_link(&disk_to_dev(disk)->kobj, "bdi");
|
||||
- bdi_unregister(&disk->queue->backing_dev_info);
|
||||
blk_unregister_queue(disk);
|
||||
blk_unregister_region(disk_devt(disk), disk->minors);
|
||||
|
||||
diff --git a/include/linux/backing-dev.h b/include/linux/backing-dev.h
|
||||
index aff923ae8c4b..d87d8eced064 100644
|
||||
--- a/include/linux/backing-dev.h
|
||||
+++ b/include/linux/backing-dev.h
|
||||
@@ -116,7 +116,6 @@ __printf(3, 4)
|
||||
int bdi_register(struct backing_dev_info *bdi, struct device *parent,
|
||||
const char *fmt, ...);
|
||||
int bdi_register_dev(struct backing_dev_info *bdi, dev_t dev);
|
||||
-void bdi_unregister(struct backing_dev_info *bdi);
|
||||
int __must_check bdi_setup_and_register(struct backing_dev_info *, char *);
|
||||
void bdi_start_writeback(struct backing_dev_info *bdi, long nr_pages,
|
||||
enum wb_reason reason);
|
||||
diff --git a/include/trace/events/writeback.h b/include/trace/events/writeback.h
|
||||
index 5a14ead59696..885d3a380451 100644
|
||||
--- a/include/trace/events/writeback.h
|
||||
+++ b/include/trace/events/writeback.h
|
||||
@@ -233,7 +233,6 @@ DEFINE_EVENT(writeback_class, name, \
|
||||
DEFINE_WRITEBACK_EVENT(writeback_nowork);
|
||||
DEFINE_WRITEBACK_EVENT(writeback_wake_background);
|
||||
DEFINE_WRITEBACK_EVENT(writeback_bdi_register);
|
||||
-DEFINE_WRITEBACK_EVENT(writeback_bdi_unregister);
|
||||
|
||||
DECLARE_EVENT_CLASS(wbc_class,
|
||||
TP_PROTO(struct writeback_control *wbc, struct backing_dev_info *bdi),
|
||||
diff --git a/mm/backing-dev.c b/mm/backing-dev.c
|
||||
index 6dc4580df2af..000e7b3b9896 100644
|
||||
--- a/mm/backing-dev.c
|
||||
+++ b/mm/backing-dev.c
|
||||
@@ -359,23 +359,6 @@ static void bdi_wb_shutdown(struct backing_dev_info *bdi)
|
||||
flush_delayed_work(&bdi->wb.dwork);
|
||||
}
|
||||
|
||||
-/*
|
||||
- * Called when the device behind @bdi has been removed or ejected.
|
||||
- *
|
||||
- * We can't really do much here except for reducing the dirty ratio at
|
||||
- * the moment. In the future we should be able to set a flag so that
|
||||
- * the filesystem can handle errors at mark_inode_dirty time instead
|
||||
- * of only at writeback time.
|
||||
- */
|
||||
-void bdi_unregister(struct backing_dev_info *bdi)
|
||||
-{
|
||||
- if (WARN_ON_ONCE(!bdi->dev))
|
||||
- return;
|
||||
-
|
||||
- bdi_set_min_ratio(bdi, 0);
|
||||
-}
|
||||
-EXPORT_SYMBOL(bdi_unregister);
|
||||
-
|
||||
static void bdi_wb_init(struct bdi_writeback *wb, struct backing_dev_info *bdi)
|
||||
{
|
||||
memset(wb, 0, sizeof(*wb));
|
||||
@@ -443,6 +426,7 @@ void bdi_destroy(struct backing_dev_info *bdi)
|
||||
int i;
|
||||
|
||||
bdi_wb_shutdown(bdi);
|
||||
+ bdi_set_min_ratio(bdi, 0);
|
||||
|
||||
WARN_ON(!list_empty(&bdi->work_list));
|
||||
WARN_ON(delayed_work_pending(&bdi->wb.dwork));
|
|
@ -0,0 +1,38 @@
|
|||
From: Jeff Mahoney <jeffm@suse.com>
|
||||
Date: Fri, 20 Mar 2015 14:02:09 -0400
|
||||
Subject: [PATCH] btrfs: cleanup orphans while looking up default subvolume
|
||||
|
||||
Orphans in the fs tree are cleaned up via open_ctree and subvolume
|
||||
orphans are cleaned via btrfs_lookup_dentry -- except when a default
|
||||
subvolume is in use. The name for the default subvolume uses a manual
|
||||
lookup that doesn't trigger orphan cleanup and needs to trigger it
|
||||
manually as well. This doesn't apply to the remount case since the
|
||||
subvolumes are cleaned up by walking the root radix tree.
|
||||
|
||||
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
||||
Reviewed-by: David Sterba <dsterba@suse.cz>
|
||||
Signed-off-by: Chris Mason <clm@fb.com>
|
||||
---
|
||||
fs/btrfs/super.c | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
|
||||
index 05fef198ff94..e477ed67a49a 100644
|
||||
--- a/fs/btrfs/super.c
|
||||
+++ b/fs/btrfs/super.c
|
||||
@@ -901,6 +901,15 @@ find_root:
|
||||
if (IS_ERR(new_root))
|
||||
return ERR_CAST(new_root);
|
||||
|
||||
+ if (!(sb->s_flags & MS_RDONLY)) {
|
||||
+ int ret;
|
||||
+ down_read(&fs_info->cleanup_work_sem);
|
||||
+ ret = btrfs_orphan_cleanup(new_root);
|
||||
+ up_read(&fs_info->cleanup_work_sem);
|
||||
+ if (ret)
|
||||
+ return ERR_PTR(ret);
|
||||
+ }
|
||||
+
|
||||
dir_id = btrfs_root_dirid(&new_root->root_item);
|
||||
setup_root:
|
||||
location.objectid = dir_id;
|
|
@ -0,0 +1,34 @@
|
|||
From: Chengyu Song <csong84@gatech.edu>
|
||||
Date: Tue, 24 Mar 2015 18:12:56 -0400
|
||||
Subject: [PATCH] btrfs: incorrect handling for fiemap_fill_next_extent return
|
||||
|
||||
fiemap_fill_next_extent returns 0 on success, -errno on error, 1 if this was
|
||||
the last extent that will fit in user array. If 1 is returned, the return
|
||||
value may eventually returned to user space, which should not happen, according
|
||||
to manpage of ioctl.
|
||||
|
||||
Signed-off-by: Chengyu Song <csong84@gatech.edu>
|
||||
Reviewed-by: David Sterba <dsterba@suse.cz>
|
||||
Reviewed-by: Liu Bo <bo.li.liu@oracle.com>
|
||||
Signed-off-by: Chris Mason <clm@fb.com>
|
||||
---
|
||||
fs/btrfs/extent_io.c | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
|
||||
index d688cfe5d496..782f3bc4651d 100644
|
||||
--- a/fs/btrfs/extent_io.c
|
||||
+++ b/fs/btrfs/extent_io.c
|
||||
@@ -4514,8 +4514,11 @@ int extent_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo,
|
||||
}
|
||||
ret = fiemap_fill_next_extent(fieinfo, em_start, disko,
|
||||
em_len, flags);
|
||||
- if (ret)
|
||||
+ if (ret) {
|
||||
+ if (ret == 1)
|
||||
+ ret = 0;
|
||||
goto out_free;
|
||||
+ }
|
||||
}
|
||||
out_free:
|
||||
free_extent_map(em);
|
149
check-kabi
149
check-kabi
|
@ -1,149 +0,0 @@
|
|||
#!/usr/bin/python3
|
||||
#
|
||||
# check-kabi - Red Hat kABI reference checking tool
|
||||
#
|
||||
# We use this script to check against reference Module.kabi files.
|
||||
#
|
||||
# Author: Jon Masters <jcm@redhat.com>
|
||||
# Copyright (C) 2007-2009 Red Hat, Inc.
|
||||
#
|
||||
# This software may be freely redistributed under the terms of the GNU
|
||||
# General Public License (GPL).
|
||||
|
||||
# Changelog:
|
||||
#
|
||||
# 2018/06/01 - Update for python3 by Petr Oros.
|
||||
# 2009/08/15 - Updated for use in RHEL6.
|
||||
# 2007/06/13 - Initial rewrite in python by Jon Masters.
|
||||
|
||||
__author__ = "Jon Masters <jcm@redhat.com>"
|
||||
__version__ = "2.0"
|
||||
__date__ = "2009/08/15"
|
||||
__copyright__ = "Copyright (C) 2007-2009 Red Hat, Inc"
|
||||
__license__ = "GPL"
|
||||
|
||||
import getopt
|
||||
import string
|
||||
import sys
|
||||
|
||||
true = 1
|
||||
false = 0
|
||||
|
||||
|
||||
def load_symvers(symvers, filename):
|
||||
"""Load a Module.symvers file."""
|
||||
|
||||
symvers_file = open(filename, "r")
|
||||
|
||||
while true:
|
||||
in_line = symvers_file.readline()
|
||||
if in_line == "":
|
||||
break
|
||||
if in_line == "\n":
|
||||
continue
|
||||
checksum, symbol, directory, type = in_line.split()
|
||||
|
||||
symvers[symbol] = in_line[0:-1]
|
||||
|
||||
|
||||
def load_kabi(kabi, filename):
|
||||
"""Load a Module.kabi file."""
|
||||
|
||||
kabi_file = open(filename, "r")
|
||||
|
||||
while true:
|
||||
in_line = kabi_file.readline()
|
||||
if in_line == "":
|
||||
break
|
||||
if in_line == "\n":
|
||||
continue
|
||||
checksum, symbol, directory, type = in_line.split()
|
||||
|
||||
kabi[symbol] = in_line[0:-1]
|
||||
|
||||
|
||||
def check_kabi(symvers, kabi):
|
||||
"""Check Module.kabi and Module.symvers files."""
|
||||
|
||||
fail = 0
|
||||
warn = 0
|
||||
changed_symbols = []
|
||||
moved_symbols = []
|
||||
|
||||
for symbol in kabi:
|
||||
abi_hash, abi_sym, abi_dir, abi_type = kabi[symbol].split()
|
||||
if symbol in symvers:
|
||||
sym_hash, sym_sym, sym_dir, sym_type = symvers[symbol].split()
|
||||
if abi_hash != sym_hash:
|
||||
fail = 1
|
||||
changed_symbols.append(symbol)
|
||||
|
||||
if abi_dir != sym_dir:
|
||||
warn = 1
|
||||
moved_symbols.append(symbol)
|
||||
else:
|
||||
fail = 1
|
||||
changed_symbols.append(symbol)
|
||||
|
||||
if fail:
|
||||
print("*** ERROR - ABI BREAKAGE WAS DETECTED ***")
|
||||
print("")
|
||||
print("The following symbols have been changed (this will cause an ABI breakage):")
|
||||
print("")
|
||||
for symbol in changed_symbols:
|
||||
print(symbol)
|
||||
print("")
|
||||
|
||||
if warn:
|
||||
print("*** WARNING - ABI SYMBOLS MOVED ***")
|
||||
print("")
|
||||
print("The following symbols moved (typically caused by moving a symbol from being")
|
||||
print("provided by the kernel vmlinux out to a loadable module):")
|
||||
print("")
|
||||
for symbol in moved_symbols:
|
||||
print(symbol)
|
||||
print("")
|
||||
|
||||
"""Halt the build, if we got errors and/or warnings. In either case,
|
||||
double-checkig is required to avoid introducing / concealing
|
||||
KABI inconsistencies."""
|
||||
if fail or warn:
|
||||
sys.exit(1)
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
def usage():
|
||||
print("""
|
||||
check-kabi: check Module.kabi and Module.symvers files.
|
||||
|
||||
check-kabi [ -k Module.kabi ] [ -s Module.symvers ]
|
||||
|
||||
""")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
symvers_file = ""
|
||||
kabi_file = ""
|
||||
|
||||
opts, args = getopt.getopt(sys.argv[1:], 'hk:s:')
|
||||
|
||||
for o, v in opts:
|
||||
if o == "-s":
|
||||
symvers_file = v
|
||||
if o == "-h":
|
||||
usage()
|
||||
sys.exit(0)
|
||||
if o == "-k":
|
||||
kabi_file = v
|
||||
|
||||
if (symvers_file == "") or (kabi_file == ""):
|
||||
usage()
|
||||
sys.exit(1)
|
||||
|
||||
symvers = {}
|
||||
kabi = {}
|
||||
|
||||
load_symvers(symvers, symvers_file)
|
||||
load_kabi(kabi, kabi_file)
|
||||
check_kabi(symvers, kabi)
|
|
@ -0,0 +1,6 @@
|
|||
#
|
||||
# Small compile fixes (For more involved fixes, please use a separate patch).
|
||||
#
|
||||
# Please add the errors from gcc before the diffs to save others having
|
||||
# to do a compile to figure out what your diff is fixing. Thanks.
|
||||
#
|
|
@ -0,0 +1,311 @@
|
|||
CONFIG_KUSER_HELPERS=y
|
||||
# CONFIG_ASYMMETRIC_KEY_TYPE is not set
|
||||
CONFIG_COMMON_CLK=y
|
||||
CONFIG_EARLY_PRINTK=y
|
||||
CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y
|
||||
CONFIG_FB_SSD1307=m
|
||||
CONFIG_HW_PERF_EVENTS=y
|
||||
CONFIG_NFS_FS=y
|
||||
|
||||
CONFIG_CRASH=m
|
||||
CONFIG_CC_STACKPROTECTOR=y
|
||||
|
||||
# CONFIG_PID_IN_CONTEXTIDR is not set
|
||||
|
||||
# CONFIG_CPU_BIG_ENDIAN is not set
|
||||
# CONFIG_BIG_LITTLE is not set
|
||||
# CONFIG_IWMMXT is not set
|
||||
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_SYSFS=y
|
||||
# CONFIG_PWM_FSL_FTM is not set
|
||||
|
||||
CONFIG_RESET_CONTROLLER=y
|
||||
CONFIG_RESET_GPIO=y
|
||||
|
||||
CONFIG_RCU_FANOUT_LEAF=16
|
||||
CONFIG_BACKLIGHT_PWM=m
|
||||
CONFIG_BACKLIGHT_GENERIC=m
|
||||
CONFIG_INPUT_PWM_BEEPER=m
|
||||
CONFIG_ARM_SP805_WATCHDOG=m
|
||||
CONFIG_ARM_ARCH_TIMER=y
|
||||
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
|
||||
CONFIG_NR_CPUS=8
|
||||
|
||||
CONFIG_SWIOTLB=y
|
||||
CONFIG_DMA_VIRTUAL_CHANNELS=y
|
||||
CONFIG_FB_SIMPLE=y
|
||||
|
||||
CONFIG_HAVE_PERF_REGS=y
|
||||
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_FB_ARMCLCD=y
|
||||
|
||||
# ARM VExpress
|
||||
CONFIG_ARCH_VEXPRESS=y
|
||||
CONFIG_MFD_VEXPRESS_SYSREG=y
|
||||
CONFIG_VEXPRESS_SYSCFG=y
|
||||
CONFIG_COMMON_CLK_VERSATILE=y
|
||||
CONFIG_CLK_SP810=y
|
||||
CONFIG_CLK_VEXPRESS_OSC=y
|
||||
CONFIG_I2C_VERSATILE=m
|
||||
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_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_OF=y
|
||||
# CONFIG_OF_UNITTEST is not set
|
||||
CONFIG_OF_ADDRESS=y
|
||||
CONFIG_OF_DYNAMIC=y
|
||||
CONFIG_OF_EARLY_FLATTREE=y
|
||||
CONFIG_OF_FLATTREE=y
|
||||
CONFIG_OF_GPIO=y
|
||||
CONFIG_OF_IOMMU=y
|
||||
CONFIG_OF_IRQ=y
|
||||
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_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
|
||||
|
||||
# MMC/SD
|
||||
CONFIG_MMC_SPI=m
|
||||
|
||||
# Designware (used by numerous devices)
|
||||
CONFIG_MMC_DW=m
|
||||
CONFIG_MMC_DW_PLTFM=m
|
||||
CONFIG_MMC_DW_PCI=m
|
||||
CONFIG_SPI_DW_MMIO=m
|
||||
CONFIG_SPI_DW_PCI=m
|
||||
# CONFIG_MMC_DW_IDMAC is not set
|
||||
# CONFIG_MMC_DW_K3 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_DUAL_ROLE=y
|
||||
CONFIG_USB_DWC3_PCI=m
|
||||
# CONFIG_USB_DWC3_DEBUG is not set
|
||||
# CONFIG_DWC3_HOST_USB3_LPM_ENABLE is not set
|
||||
CONFIG_DW_WATCHDOG=m
|
||||
CONFIG_PCIE_DW=y
|
||||
# CONFIG_MMC_DW_EXYNOS is not set
|
||||
|
||||
# External Connectors
|
||||
CONFIG_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_CFI=m
|
||||
CONFIG_MTD_CFI_INTELEXT=m
|
||||
CONFIG_MTD_CFI_AMDSTD=m
|
||||
CONFIG_MTD_CFI_STAA=m
|
||||
CONFIG_MTD_OF_PARTS=m
|
||||
# CONFIG_MTD_CFI_ADV_OPTIONS is not set
|
||||
CONFIG_MTD_PHYSMAP=m
|
||||
CONFIG_MTD_PHYSMAP_OF=m
|
||||
# CONFIG_MTD_PHYSMAP_COMPAT is not set
|
||||
# CONFIG_MTD_LPDDR2_NVM is not set
|
||||
|
||||
# GPIO
|
||||
CONFIG_GPIO_DEVRES=y
|
||||
CONFIG_GPIO_GENERIC=m
|
||||
CONFIG_GPIO_GENERIC_PLATFORM=m
|
||||
CONFIG_GPIO_WATCHDOG=m
|
||||
CONFIG_GPIOLIB=y
|
||||
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
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
|
||||
CONFIG_I2C_BOARDINFO=y
|
||||
CONFIG_I2C_GPIO=m
|
||||
CONFIG_I2C_MUX=m
|
||||
CONFIG_I2C_MUX_GPIO=m
|
||||
CONFIG_I2C_MUX_PINCTRL=m
|
||||
CONFIG_I2C_MUX_PCA9541=m
|
||||
CONFIG_I2C_MUX_PCA954x=m
|
||||
|
||||
# spi
|
||||
CONFIG_SPI_PL022=m
|
||||
|
||||
# Sensors
|
||||
CONFIG_SENSORS_IIO_HWMON=m
|
||||
CONFIG_IIO_SYSFS_TRIGGER=m
|
||||
|
||||
# PHY framework
|
||||
CONFIG_GENERIC_PHY=y
|
||||
|
||||
CONFIG_SMC91X=m
|
||||
CONFIG_SMC911X=m
|
||||
|
||||
CONFIG_CPU_THERMAL=y
|
||||
CONFIG_THERMAL_GOV_USER_SPACE=y
|
||||
|
||||
# Contiguous Memory Allocator
|
||||
CONFIG_CMA=y
|
||||
CONFIG_DMA_CMA=y
|
||||
# CONFIG_CMA_DEBUG is not set
|
||||
CONFIG_CMA_SIZE_MBYTES=16
|
||||
CONFIG_CMA_SIZE_SEL_MBYTES=y
|
||||
# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set
|
||||
# CONFIG_CMA_SIZE_SEL_MIN is not set
|
||||
# CONFIG_CMA_SIZE_SEL_MAX is not set
|
||||
CONFIG_CMA_ALIGNMENT=8
|
||||
CONFIG_CMA_AREAS=7
|
||||
|
||||
# CONFIG_CRYPTO_TEST is not set
|
||||
# CONFIG_TRANSPARENT_HUGEPAGE is not set
|
||||
# CONFIG_XEN 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_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_ARM_PTDUMP is not set
|
||||
|
||||
# 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
|
||||
|
||||
# CONFIG_INFINIBAND is not set
|
||||
# CONFIG_ISDN is not set
|
||||
# CONFIG_PCMCIA is not set
|
||||
# CONFIG_PARPORT is not set
|
||||
# CONFIG_FIREWIRE is not set
|
||||
# CONFIG_ATM_DRIVERS is not set
|
||||
# CONFIG_ISDN is not set
|
||||
# CONFIG_GAMEPORT is not set
|
||||
# CONFIG_AGP is not set
|
||||
|
||||
# netdrv
|
||||
|
||||
# CONFIG_NET_VENDOR_3COM is not set
|
||||
# CONFIG_NET_VENDOR_ADAPTEC is not set
|
||||
# CONFIG_NET_VENDOR_BROADCOM is not set
|
||||
# CONFIG_NET_VENDOR_BROCADE is not set
|
||||
# CONFIG_NET_VENDOR_CHELSIO is not set
|
||||
# CONFIG_NET_VENDOR_CISCO is not set
|
||||
# CONFIG_NET_VENDOR_DEC is not set
|
||||
# CONFIG_NET_VENDOR_EMULEX is not set
|
||||
# CONFIG_NET_VENDOR_EXAR is not set
|
||||
# CONFIG_NET_VENDOR_MELLANOX is not set
|
||||
# CONFIG_NET_VENDOR_QLOGIC is not set
|
||||
# CONFIG_NET_VENDOR_SUN is not set
|
||||
# CONFIG_NET_VENDOR_WIZNET is not set
|
||||
# CONFIG_NET_VENDOR_XIRCOM is not set
|
||||
|
||||
# scsi
|
||||
|
||||
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
|
||||
# CONFIG_SCSI_3W_SAS is not set
|
||||
# CONFIG_SCSI_PM8001 is not set
|
||||
# CONFIG_SCSI_IPS is not set
|
||||
# CONFIG_SCSI_CXGB3_ISCSI is not set
|
||||
# CONFIG_SCSI_CXGB4_ISCSI is not set
|
||||
# CONFIG_SCSI_BFA_FC is not set
|
||||
# CONFIG_FUSION is not set
|
||||
# CONFIG_SCSI_3W_9XXX is not set
|
||||
# CONFIG_SCSI_ACARD is not set
|
||||
# CONFIG_SCSI_AACRAID is not set
|
||||
# CONFIG_SCSI_AIC7XXX is not set
|
||||
# CONFIG_SCSI_AIC79XX is not set
|
||||
# CONFIG_SCSI_MPT2SAS is not set
|
||||
# CONFIG_SCSI_MPT3SAS is not set
|
||||
|
||||
# serial
|
||||
# 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
|
||||
|
||||
# EDAC
|
||||
CONFIG_EDAC=y
|
||||
CONFIG_EDAC_MM_EDAC=m
|
||||
CONFIG_EDAC_LEGACY_SYSFS=y
|
|
@ -0,0 +1,169 @@
|
|||
CONFIG_64BIT=y
|
||||
CONFIG_ARM64=y
|
||||
|
||||
CONFIG_SCHED_MC=y
|
||||
CONFIG_SCHED_SMT=y
|
||||
|
||||
# CONFIG_CPU_BIG_ENDIAN is not set
|
||||
|
||||
# arm64 only SoCs
|
||||
CONFIG_ARCH_XGENE=y
|
||||
CONFIG_ARCH_SEATTLE=y
|
||||
# CONFIG_ARCH_THUNDER is not set
|
||||
# CONFIG_ARCH_EXYNOS7 is not set
|
||||
# CONFIG_ARCH_FSL_LS2085A is not set
|
||||
# CONFIG_ARCH_MEDIATEK is not set
|
||||
# CONFIG_ARCH_TEGRA 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_AMBA_PL08X is not set
|
||||
CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
CONFIG_ARM64_64K_PAGES=y
|
||||
# CONFIG_COMPAT is not set
|
||||
|
||||
CONFIG_BCMA_POSSIBLE=y
|
||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
|
||||
CONFIG_BRCMUTIL=m
|
||||
CONFIG_BUG=y
|
||||
CONFIG_CLKDEV_LOOKUP=y
|
||||
CONFIG_CMDLINE="console=ttyAMA0"
|
||||
# CONFIG_CMDLINE_FORCE is not set
|
||||
CONFIG_CONSOLE_TRANSLATIONS=y
|
||||
|
||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
CONFIG_GENERIC_CSUM=y
|
||||
CONFIG_GENERIC_HWEIGHT=y
|
||||
CONFIG_GENERIC_IO=y
|
||||
CONFIG_GENERIC_PCI_IOMAP=y
|
||||
CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y
|
||||
CONFIG_HAVE_ARCH_PFN_VALID=y
|
||||
CONFIG_HAVE_ARCH_TRACEHOOK=y
|
||||
CONFIG_HAVE_MEMORY_PRESENT=y
|
||||
CONFIG_HAVE_NET_DSA=y
|
||||
# CONFIG_HUGETLB_PAGE is not set
|
||||
CONFIG_HVC_DRIVER=y
|
||||
CONFIG_HZ=100
|
||||
|
||||
CONFIG_KVM=y
|
||||
CONFIG_KVM_ARM_MAX_VCPUS=8
|
||||
|
||||
CONFIG_NFS_ACL_SUPPORT=y
|
||||
CONFIG_NFS_COMMON=y
|
||||
CONFIG_NFS_DEBUG=y
|
||||
# CONFIG_NFSD_FAULT_INJECTION is not set
|
||||
CONFIG_NFSD_V2_ACL=y
|
||||
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=y
|
||||
CONFIG_SERIAL_8250_DMA=y
|
||||
# CONFIG_SERIAL_AMBA_PL010 is not set
|
||||
CONFIG_SPARSE_IRQ=y
|
||||
CONFIG_SPARSEMEM_VMEMMAP=y
|
||||
|
||||
# CONFIG_SYS_HYPERVISOR is not set
|
||||
# CONFIG_THERMAL is not set
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
|
||||
CONFIG_EFI=y
|
||||
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
|
||||
CONFIG_CRYPTO_SHA2_ARM64_CE=m
|
||||
CONFIG_CRYPTO_GHASH_ARM64_CE=m
|
||||
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
|
||||
CONFIG_COMMON_CLK_XGENE=y
|
||||
|
||||
CONFIG_AHCI_XGENE=y
|
||||
CONFIG_PHY_XGENE=y
|
||||
CONFIG_NET_XGENE=y
|
||||
CONFIG_RTC_DRV_XGENE=m
|
||||
CONFIG_HW_RANDOM_XGENE=m
|
||||
CONFIG_GPIO_XGENE=y
|
||||
CONFIG_GPIO_XGENE_SB=m
|
||||
|
||||
# busted build for various reasons
|
||||
# uses pci_* for some reason to allocate DMA buffers
|
||||
# CONFIG_DVB_B2C2_FLEXCOP_USB is not set
|
||||
# weird include chain resulting in missing u64 type
|
||||
# CONFIG_USB_SPEEDTOUCH is not set
|
||||
# dma issues in headers
|
||||
# CONFIG_PARPORT_PC is not set
|
||||
# CONFIG_VGA_CONSOLE is not set
|
||||
|
||||
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_NET_VENDOR_MELLANOX=y
|
||||
CONFIG_MLX4_EN=m
|
||||
CONFIG_MLX4_EN_DCB=y
|
||||
CONFIG_MLX4_EN_VXLAN=y
|
||||
|
||||
# CONFIG_IMX_THERMAL 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
|
||||
# CONFIG_DEBUG_RODATA is not set
|
||||
|
||||
CONFIG_DEBUG_SECTION_MISMATCH=y
|
||||
|
||||
CONFIG_EDAC_XGENE=y
|
|
@ -0,0 +1,667 @@
|
|||
# ARM unified arch kernel
|
||||
|
||||
# CONFIG_ARCH_BERLIN is not set
|
||||
# CONFIG_ARCH_KEYSTONE is not set
|
||||
CONFIG_ARCH_MVEBU=y
|
||||
CONFIG_ARCH_MXC=y
|
||||
CONFIG_ARCH_OMAP3=y
|
||||
CONFIG_ARCH_OMAP4=y
|
||||
CONFIG_ARCH_PICOXCELL=y
|
||||
CONFIG_ARCH_QCOM=y
|
||||
CONFIG_ARCH_TEGRA=y
|
||||
CONFIG_ARCH_U8500=y
|
||||
CONFIG_ARCH_ZYNQ=y
|
||||
|
||||
# These are supported in the LPAE kernel
|
||||
# CONFIG_ARM_LPAE is not set
|
||||
# CONFIG_XEN is not set
|
||||
# CONFIG_ARM_VIRT_EXT is not set
|
||||
# CONFIG_VIRTUALIZATION is not set
|
||||
|
||||
# mvebu
|
||||
CONFIG_MACH_ARMADA_370=y
|
||||
CONFIG_MACH_ARMADA_375=y
|
||||
CONFIG_MACH_ARMADA_38X=y
|
||||
CONFIG_MACH_ARMADA_XP=y
|
||||
CONFIG_MACH_DOVE=y
|
||||
|
||||
CONFIG_MVEBU_DEVBUS=y
|
||||
CONFIG_PCI_MVEBU=y
|
||||
CONFIG_CACHE_TAUROS2=y
|
||||
CONFIG_MV_XOR=y
|
||||
CONFIG_CRYPTO_DEV_MV_CESA=m
|
||||
CONFIG_MV643XX_ETH=m
|
||||
CONFIG_PINCTRL_MVEBU=y
|
||||
CONFIG_PINCTRL_ARMADA_370=y
|
||||
CONFIG_PINCTRL_ARMADA_XP=y
|
||||
# CONFIG_ARM_MVEBU_V7_CPUIDLE is not set
|
||||
CONFIG_PINCTRL_DOVE=y
|
||||
CONFIG_EDAC_MV64X60=m
|
||||
CONFIG_RTC_DRV_S35390A=m
|
||||
CONFIG_RTC_DRV_88PM80X=m
|
||||
CONFIG_RTC_DRV_ISL12057=m
|
||||
CONFIG_RTC_DRV_MV=m
|
||||
CONFIG_RTC_DRV_ARMADA38X=m
|
||||
CONFIG_MVNETA=m
|
||||
CONFIG_GPIO_MVEBU=y
|
||||
CONFIG_MVEBU_CLK_CORE=y
|
||||
CONFIG_MVEBU_CLK_COREDIV=y
|
||||
CONFIG_MMC_MVSDIO=m
|
||||
CONFIG_MMC_SDHCI_DOVE=m
|
||||
CONFIG_SPI_ORION=m
|
||||
CONFIG_USB_MV_UDC=m
|
||||
CONFIG_MVEBU_MBUS=y
|
||||
CONFIG_USB_XHCI_MVEBU=m
|
||||
CONFIG_PHY_MVEBU_SATA=y
|
||||
CONFIG_AHCI_MVEBU=m
|
||||
CONFIG_ARMADA_THERMAL=m
|
||||
CONFIG_DOVE_THERMAL=m
|
||||
CONFIG_DRM_ARMADA=m
|
||||
CONFIG_ORION_WATCHDOG=m
|
||||
CONFIG_SND_KIRKWOOD_SOC=m
|
||||
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_RTC_DRV_ARMADA38X=m
|
||||
# CONFIG_CACHE_FEROCEON_L2 is not set
|
||||
# CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH is not set
|
||||
|
||||
# omap
|
||||
CONFIG_ARCH_OMAP2PLUS_TYPICAL=y
|
||||
CONFIG_SOC_OMAP5=y
|
||||
# CONFIG_SOC_DRA7XX is not set
|
||||
CONFIG_SOC_OMAP3430=y
|
||||
CONFIG_SOC_TI81XX=y
|
||||
# CONFIG_MACH_CM_T35 is not set
|
||||
# CONFIG_MACH_DEVKIT8000 is not set
|
||||
# CONFIG_MACH_NOKIA_RX51 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_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_TOUCHBOOK is not set
|
||||
|
||||
CONFIG_SOC_HAS_REALTIME_COUNTER=y
|
||||
CONFIG_OMAP_RESET_CLOCKS=y
|
||||
CONFIG_OMAP_MUX=y
|
||||
CONFIG_OMAP_MUX_WARNINGS=y
|
||||
CONFIG_OMAP_32K_TIMER=y
|
||||
CONFIG_OMAP_PACKAGE_CBB=y
|
||||
CONFIG_OMAP_PACKAGE_CUS=y
|
||||
# CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE is not set
|
||||
|
||||
CONFIG_OMAP2PLUS_MBOX=m
|
||||
CONFIG_OMAP_MBOX_KFIFO_SIZE=256
|
||||
CONFIG_DMA_OMAP=m
|
||||
CONFIG_OMAP_IOMMU=y
|
||||
CONFIG_HWSPINLOCK_OMAP=m
|
||||
# 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_CHARGER_ISP1704=m
|
||||
CONFIG_CHARGER_BQ2415X=m
|
||||
CONFIG_OMAP_WATCHDOG=m
|
||||
CONFIG_TWL4030_CORE=y
|
||||
CONFIG_TWL4030_MADC=m
|
||||
CONFIG_TWL4030_POWER=y
|
||||
CONFIG_TWL4030_WATCHDOG=m
|
||||
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_TWL6040_CORE=y
|
||||
CONFIG_CLK_TWL6040=m
|
||||
CONFIG_OMAP_INTERCONNECT=m
|
||||
CONFIG_MFD_OMAP_USB_HOST=y
|
||||
CONFIG_HDQ_MASTER_OMAP=m
|
||||
CONFIG_REGULATOR_TWL4030=y
|
||||
CONFIG_BACKLIGHT_PANDORA=m
|
||||
CONFIG_OMAP_OCP2SCP=m
|
||||
CONFIG_USB_EHCI_HCD_OMAP=m
|
||||
CONFIG_USB_OHCI_HCD_OMAP3=m
|
||||
CONFIG_USB_MUSB_AM35X=m
|
||||
CONFIG_USB_MUSB_OMAP2PLUS=m
|
||||
CONFIG_USB_DWC3_OMAP=m
|
||||
CONFIG_MMC_OMAP=m
|
||||
CONFIG_MMC_OMAP_HS=y
|
||||
CONFIG_RTC_DRV_MAX8907=m
|
||||
# CONFIG_RTC_DRV_TWL92330 is not set
|
||||
CONFIG_RTC_DRV_TWL4030=y
|
||||
CONFIG_RTC_DRV_OMAP=y
|
||||
CONFIG_SENSORS_TWL4030_MADC=m
|
||||
CONFIG_TWL6030_GPADC=m
|
||||
CONFIG_BATTERY_RX51=m
|
||||
# CONFIG_IR_RX51 is not set
|
||||
|
||||
# OMAP5 (possibly other devices too)
|
||||
CONFIG_MFD_PALMAS=y
|
||||
CONFIG_EXTCON_PALMAS=m
|
||||
CONFIG_GPIO_PALMAS=y
|
||||
CONFIG_PINCTRL_PALMAS=y
|
||||
CONFIG_REGULATOR_PALMAS=y
|
||||
CONFIG_REGULATOR_PBIAS=m
|
||||
CONFIG_RTC_DRV_PALMAS=m
|
||||
CONFIG_OMAP5_DSS_HDMI=y
|
||||
CONFIG_COMMON_CLK_PALMAS=m
|
||||
CONFIG_INPUT_PALMAS_PWRBUTTON=m
|
||||
|
||||
CONFIG_WL_TI=y
|
||||
CONFIG_WLCORE_SDIO=m
|
||||
CONFIG_WLCORE_SPI=m
|
||||
CONFIG_WL18XX=m
|
||||
CONFIG_WILINK_PLATFORM_DATA=y
|
||||
CONFIG_MFD_WL1273_CORE=m
|
||||
CONFIG_NFC_WILINK=m
|
||||
|
||||
CONFIG_MTD_ONENAND_OMAP2=m
|
||||
CONFIG_MTD_NAND_OMAP2=m
|
||||
CONFIG_MTD_NAND_OMAP_BCH=y
|
||||
CONFIG_SPI_OMAP24XX=m
|
||||
CONFIG_SPI_TI_QSPI=m
|
||||
|
||||
CONFIG_INPUT_TWL4030_PWRBUTTON=m
|
||||
CONFIG_INPUT_TWL4030_VIBRA=m
|
||||
CONFIG_INPUT_TWL6040_VIBRA=m
|
||||
CONFIG_KEYBOARD_OMAP4=m
|
||||
CONFIG_KEYBOARD_TWL4030=m
|
||||
CONFIG_LEDS_TCA6507=m
|
||||
|
||||
# OMAP thermal temp.
|
||||
CONFIG_OMAP4_THERMAL=y
|
||||
CONFIG_OMAP5_THERMAL=y
|
||||
|
||||
# OMAP3 thermal/power
|
||||
CONFIG_POWER_AVS=y
|
||||
CONFIG_POWER_AVS_OMAP=y
|
||||
CONFIG_POWER_AVS_OMAP_CLASS3=y
|
||||
# CPUFREQ_CPU0 is used for scaling on DT OMAP
|
||||
# CONFIG_ARM_OMAP2PLUS_CPUFREQ is not set
|
||||
|
||||
CONFIG_PWM_TIECAP=m
|
||||
CONFIG_PWM_TIEHRPWM=m
|
||||
CONFIG_PWM_TWL=m
|
||||
CONFIG_PWM_TWL_LED=m
|
||||
|
||||
CONFIG_CRYPTO_DEV_OMAP_SHAM=m
|
||||
CONFIG_CRYPTO_DEV_OMAP_AES=m
|
||||
CONFIG_CRYPTO_DEV_OMAP_DES=m
|
||||
CONFIG_HW_RANDOM_OMAP=m
|
||||
CONFIG_HW_RANDOM_OMAP3_ROM=m
|
||||
|
||||
CONFIG_DRM_OMAP=m
|
||||
CONFIG_DRM_OMAP_NUM_CRTCS=2
|
||||
CONFIG_OMAP2_VRFB=y
|
||||
# CONFIG_FB_OMAP2 is not set
|
||||
# CONFIG_FB_DA8XX is not set
|
||||
|
||||
CONFIG_OMAP2_DSS=m
|
||||
# CONFIG_OMAP2_DSS_COLLECT_IRQ_STATS is not set
|
||||
CONFIG_OMAP2_DSS_DPI=y
|
||||
CONFIG_OMAP2_DSS_RFBI=y
|
||||
CONFIG_OMAP2_DSS_VENC=y
|
||||
CONFIG_OMAP4_DSS_HDMI=y
|
||||
CONFIG_OMAP2_DSS_SDI=y
|
||||
CONFIG_OMAP2_DSS_DSI=y
|
||||
CONFIG_OMAP2_DSS_MIN_FCK_PER_PCK=0
|
||||
CONFIG_OMAP2_DSS_SLEEP_AFTER_VENC_RESET=y
|
||||
|
||||
CONFIG_DISPLAY_ENCODER_OPA362=m
|
||||
CONFIG_DISPLAY_ENCODER_TFP410=m
|
||||
CONFIG_DISPLAY_ENCODER_TPD12S015=m
|
||||
CONFIG_DISPLAY_CONNECTOR_DVI=m
|
||||
CONFIG_DISPLAY_CONNECTOR_HDMI=m
|
||||
CONFIG_DISPLAY_CONNECTOR_ANALOG_TV=m
|
||||
CONFIG_DISPLAY_PANEL_DPI=m
|
||||
CONFIG_DISPLAY_PANEL_DSI_CM=m
|
||||
CONFIG_DISPLAY_PANEL_SONY_ACX565AKM=m
|
||||
CONFIG_DISPLAY_PANEL_LGPHILIPS_LB035Q02=m
|
||||
CONFIG_DISPLAY_PANEL_SHARP_LS037V7DW01=m
|
||||
CONFIG_DISPLAY_PANEL_TPO_TD043MTEA1=m
|
||||
CONFIG_DISPLAY_PANEL_NEC_NL8048HL11=m
|
||||
CONFIG_DISPLAY_PANEL_TPO_TD028TTEC1=m
|
||||
|
||||
# Enable V4L2 drivers for OMAP2+
|
||||
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
|
||||
# The ones below are for TI Davinci
|
||||
# CONFIG_VIDEO_DM6446_CCDC is not set
|
||||
# CONFIG_VIDEO_DM355_CCDC is not set
|
||||
|
||||
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_AUDIO=m
|
||||
CONFIG_SND_OMAP_SOC_MCBSP=m
|
||||
CONFIG_SND_OMAP_SOC_MCPDM=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP_ABE_TWL6040=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP_TWL4030=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP3_PANDORA=m
|
||||
CONFIG_SND_OMAP_SOC_RX51=m
|
||||
CONFIG_SND_SOC_TLV320AIC23=m
|
||||
CONFIG_SND_SOC_TLV320AIC23_I2C=m
|
||||
CONFIG_SND_SOC_TLV320AIC23_SPI=m
|
||||
CONFIG_SND_SOC_TLV320AIC3X=m
|
||||
CONFIG_SND_SOC_TLV320AIC31XX=m
|
||||
CONFIG_SND_SOC_TPA6130A2=m
|
||||
CONFIG_SND_SOC_TWL4030=m
|
||||
CONFIG_SND_SOC_TWL6040=m
|
||||
CONFIG_SND_SOC_PCM1792A=m
|
||||
CONFIG_RADIO_WL128X=m
|
||||
|
||||
CONFIG_OMAP_REMOTEPROC=m
|
||||
|
||||
# CONFIG_OMAP2_DSS_DEBUGFS is not set
|
||||
# CONFIG_OMAP_IOMMU_DEBUG is not set
|
||||
# CONFIG_OMAP_MUX_DEBUG is not set
|
||||
# CONFIG_VIDEO_OMAP3_DEBUG is not set
|
||||
|
||||
# AM33xx/43xx
|
||||
CONFIG_SOC_AM33XX=y
|
||||
CONFIG_SOC_AM43XX=y
|
||||
CONFIG_AM335X_CONTROL_USB=m
|
||||
CONFIG_AM335X_PHY_USB=m
|
||||
CONFIG_USB_MUSB_AM335X_CHILD=m
|
||||
CONFIG_TI_CPPI41=m
|
||||
CONFIG_USB_TI_CPPI41_DMA=y
|
||||
CONFIG_MFD_TI_AM335X_TSCADC=m
|
||||
CONFIG_TI_ST=m
|
||||
CONFIG_TI_DAC7512=m
|
||||
CONFIG_TI_DAVINCI_CPDMA=m
|
||||
CONFIG_TI_DAVINCI_EMAC=m
|
||||
CONFIG_TI_DAVINCI_MDIO=m
|
||||
CONFIG_TI_CPSW=m
|
||||
CONFIG_TI_CPSW_PHY_SEL=y
|
||||
CONFIG_TI_CPSW_ALE=m
|
||||
CONFIG_TI_CPTS=y
|
||||
# Builtin needed for BBone White
|
||||
CONFIG_REGULATOR_TPS65217=y
|
||||
CONFIG_INPUT_TPS65218_PWRBUTTON=m
|
||||
CONFIG_TI_EMIF=m
|
||||
CONFIG_DRM_TILCDC=m
|
||||
CONFIG_SPI_DAVINCI=m
|
||||
CONFIG_SND_DAVINCI_SOC=m
|
||||
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
|
||||
CONFIG_TI_AM335X_ADC=m
|
||||
CONFIG_PWM_TIPWMSS=y
|
||||
CONFIG_MFD_TPS65218=m
|
||||
CONFIG_REGULATOR_TPS65218=m
|
||||
CONFIG_VIDEO_AM437X_VPFE=m
|
||||
|
||||
# QCom
|
||||
CONFIG_ARCH_MSM8X60=y
|
||||
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_MSM8X74=m
|
||||
CONFIG_PINCTRL_MSM8916=m
|
||||
CONFIG_PINCTRL_QCOM_SPMI_PMIC=m
|
||||
CONFIG_COMMON_CLK_QCOM=m
|
||||
# CONFIG_IPQ_LCC_806X is not set
|
||||
# CONFIG_MSM_LCC_8960 is not set
|
||||
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
|
||||
CONFIG_MSM_GCC_8660=m
|
||||
CONFIG_MSM_GCC_8960=m
|
||||
CONFIG_MSM_MMCC_8960=m
|
||||
CONFIG_MSM_GCC_8974=m
|
||||
CONFIG_MSM_MMCC_8974=m
|
||||
CONFIG_HW_RANDOM_MSM=m
|
||||
CONFIG_I2C_QUP=m
|
||||
CONFIG_SPI_QUP=m
|
||||
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_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
|
||||
CONFIG_QCOM_SPMI_VADC=m
|
||||
|
||||
# i.MX
|
||||
# CONFIG_MXC_DEBUG_BOARD is not set
|
||||
CONFIG_SOC_IMX50=y
|
||||
CONFIG_SOC_IMX51=y
|
||||
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_ARM_IMX6Q_CPUFREQ=m
|
||||
CONFIG_POWER_RESET_IMX=y
|
||||
CONFIG_PCI_IMX6=y
|
||||
CONFIG_IMX_THERMAL=m
|
||||
CONFIG_IMX_SDMA=m
|
||||
CONFIG_IMX_DMA=m
|
||||
CONFIG_MXS_DMA=y
|
||||
CONFIG_AHCI_IMX=m
|
||||
CONFIG_PATA_IMX=m
|
||||
CONFIG_USB_EHCI_MXC=m
|
||||
CONFIG_USB_CHIPIDEA=m
|
||||
CONFIG_USB_CHIPIDEA_UDC=y
|
||||
CONFIG_USB_CHIPIDEA_HOST=y
|
||||
# CONFIG_USB_CHIPIDEA_DEBUG is not set
|
||||
CONFIG_USB_FSL_USB2=m
|
||||
CONFIG_NET_VENDOR_FREESCALE=y
|
||||
CONFIG_FEC=m
|
||||
CONFIG_KEYBOARD_IMX=m
|
||||
CONFIG_KEYBOARD_STMPE=m
|
||||
CONFIG_TOUCHSCREEN_STMPE=m
|
||||
CONFIG_SERIAL_IMX=y
|
||||
CONFIG_SERIAL_IMX_CONSOLE=y
|
||||
CONFIG_PINCTRL_IMX6SL=y
|
||||
CONFIG_I2C_IMX=m
|
||||
CONFIG_STMPE_I2C=y
|
||||
CONFIG_SPI_IMX=m
|
||||
CONFIG_SPI_FSL_QUADSPI=m
|
||||
CONFIG_STMPE_SPI=y
|
||||
CONFIG_MFD_MC13XXX_SPI=m
|
||||
CONFIG_MFD_STMPE=y
|
||||
CONFIG_MTD_NAND_GPMI_NAND=m
|
||||
CONFIG_W1_MASTER_MXC=m
|
||||
CONFIG_IMX_WEIM=y
|
||||
CONFIG_IMX2_WDT=m
|
||||
CONFIG_HW_RANDOM_MXC_RNGA=m
|
||||
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
|
||||
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_SGTL5000=m
|
||||
CONFIG_SND_SOC_WM8731=m
|
||||
CONFIG_SND_SOC_WM8962=m
|
||||
|
||||
CONFIG_USB_IMX21_HCD=m
|
||||
CONFIG_USB_MXS_PHY=m
|
||||
CONFIG_MMC_SDHCI_ESDHC_IMX=m
|
||||
CONFIG_MMC_MXC=m
|
||||
CONFIG_SPI_MXS=m
|
||||
CONFIG_RTC_DRV_IMXDI=m
|
||||
CONFIG_RTC_DRV_MXC=m
|
||||
# CONFIG_MX3_IPU is not set
|
||||
# CONFIG_MX3_IPU_IRQS is not set
|
||||
|
||||
CONFIG_PWM_IMX=m
|
||||
CONFIG_DRM_IMX=m
|
||||
CONFIG_DRM_IMX_FB_HELPER=m
|
||||
CONFIG_DRM_IMX_HDMI=m
|
||||
CONFIG_IMX_IPUV3_CORE=m
|
||||
CONFIG_DRM_IMX_IPUV3=m
|
||||
CONFIG_DRM_IMX_LDB=m
|
||||
CONFIG_DRM_IMX_PARALLEL_DISPLAY=m
|
||||
CONFIG_DRM_IMX_TVE=m
|
||||
CONFIG_VIDEO_CODA=m
|
||||
|
||||
CONFIG_SENSORS_MC13783_ADC=m
|
||||
CONFIG_REGULATOR_ANATOP=m
|
||||
CONFIG_REGULATOR_MC13783=m
|
||||
CONFIG_REGULATOR_MC13892=m
|
||||
CONFIG_LEDS_MC13783=m
|
||||
CONFIG_RTC_DRV_MC13XXX=m
|
||||
CONFIG_CAN_FLEXCAN=m
|
||||
|
||||
CONFIG_INPUT_PWM_BEEPER=m
|
||||
CONFIG_INPUT_88PM80X_ONKEY=m
|
||||
|
||||
# i.MX6Q (and likely Samsung among others)
|
||||
CONFIG_MFD_DA9052_I2C=y
|
||||
CONFIG_MFD_DA9052_SPI=y
|
||||
CONFIG_MFD_DA9055=y
|
||||
CONFIG_TOUCHSCREEN_DA9052=m
|
||||
CONFIG_INPUT_DA9052_ONKEY=m
|
||||
CONFIG_INPUT_DA9055_ONKEY=m
|
||||
CONFIG_GPIO_DA9052=m
|
||||
CONFIG_GPIO_DA9055=m
|
||||
CONFIG_GPIO_STMPE=y
|
||||
CONFIG_BATTERY_DA9052=m
|
||||
CONFIG_SENSORS_DA9052_ADC=m
|
||||
CONFIG_SENSORS_DA9055=m
|
||||
CONFIG_DA9052_WATCHDOG=m
|
||||
CONFIG_DA9055_WATCHDOG=m
|
||||
CONFIG_BACKLIGHT_DA9052=m
|
||||
CONFIG_LEDS_DA9052=m
|
||||
CONFIG_RTC_DRV_DA9052=m
|
||||
CONFIG_RTC_DRV_DA9055=m
|
||||
CONFIG_REGULATOR_DA9052=m
|
||||
CONFIG_REGULATOR_DA9055=m
|
||||
|
||||
# picoxcell
|
||||
# CONFIG_CRYPTO_DEV_PICOXCELL is not set
|
||||
|
||||
# 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
|
||||
CONFIG_MACH_SNOWBALL=y
|
||||
|
||||
CONFIG_ABX500_CORE=y
|
||||
# CONFIG_ARM_U8500_CPUIDLE is not set
|
||||
CONFIG_UX500_DEBUG_UART=2
|
||||
CONFIG_AB8500_CORE=y
|
||||
CONFIG_STE_DMA40=y
|
||||
CONFIG_HSEM_U8500=m
|
||||
CONFIG_PINCTRL_ABX500=y
|
||||
CONFIG_PINCTRL_AB8500=y
|
||||
CONFIG_I2C_NOMADIK=m
|
||||
CONFIG_KEYBOARD_NOMADIK=m
|
||||
CONFIG_DB8500_CPUFREQ_COOLING=m
|
||||
CONFIG_DB8500_THERMAL=y
|
||||
CONFIG_UX500_WATCHDOG=m
|
||||
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
|
||||
CONFIG_SND_SOC_UX500_PLAT_DMA=m
|
||||
CONFIG_SND_SOC_UX500_MACH_MOP500=m
|
||||
CONFIG_CLKSRC_DBX500_PRCMU=y
|
||||
CONFIG_CLKSRC_DBX500_PRCMU_SCHED_CLOCK=y
|
||||
CONFIG_CRYPTO_DEV_UX500=m
|
||||
CONFIG_CRYPTO_DEV_UX500_CRYP=m
|
||||
CONFIG_CRYPTO_DEV_UX500_HASH=m
|
||||
CONFIG_SENSORS_LIS3_I2C=m
|
||||
CONFIG_AB8500_BM=y
|
||||
CONFIG_AB8500_GPADC=y
|
||||
CONFIG_SENSORS_AB8500=m
|
||||
CONFIG_STE_MODEM_RPROC=m
|
||||
CONFIG_STIH415_RESET=y
|
||||
|
||||
CONFIG_IIO_ST_GYRO_I2C_3AXIS=m
|
||||
CONFIG_IIO_ST_GYRO_SPI_3AXIS=m
|
||||
CONFIG_IIO_ST_MAGN_I2C_3AXIS=m
|
||||
CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
|
||||
CONFIG_IIO_ST_PRESS=m
|
||||
CONFIG_IIO_ST_PRESS_I2C=m
|
||||
CONFIG_IIO_ST_PRESS_SPI=m
|
||||
CONFIG_IIO_ST_SENSORS_I2C=m
|
||||
CONFIG_IIO_ST_SENSORS_SPI=m
|
||||
CONFIG_IIO_ST_SENSORS_CORE=m
|
||||
|
||||
# Allwinner
|
||||
CONFIG_MACH_SUN4I=y
|
||||
CONFIG_MACH_SUN5I=y
|
||||
|
||||
# Tegra (non A15)
|
||||
CONFIG_ARCH_TEGRA_2x_SOC=y
|
||||
CONFIG_ARCH_TEGRA_3x_SOC=y
|
||||
CONFIG_TEGRA20_MC=y
|
||||
CONFIG_TEGRA_IOMMU_GART=y
|
||||
CONFIG_SPI_TEGRA20_SFLASH=m
|
||||
CONFIG_SPI_TEGRA20_SLINK=m
|
||||
CONFIG_MFD_MAX8907=m
|
||||
CONFIG_SND_SOC_TEGRA_ALC5632=m
|
||||
CONFIG_SND_SOC_TEGRA_TRIMSLICE=m
|
||||
CONFIG_SND_SOC_TEGRA_WM8753=m
|
||||
CONFIG_SND_SOC_TEGRA_WM8903=m
|
||||
CONFIG_SND_SOC_TEGRA_WM9712=m
|
||||
CONFIG_SND_SOC_TEGRA20_AC97=m
|
||||
CONFIG_SND_SOC_TEGRA20_DAS=m
|
||||
CONFIG_SND_SOC_TEGRA20_SPDIF=m
|
||||
|
||||
# AC100 (PAZ00)
|
||||
CONFIG_MFD_NVEC=y
|
||||
CONFIG_MFD_TPS80031=y
|
||||
CONFIG_KEYBOARD_NVEC=y
|
||||
CONFIG_SERIO_NVEC_PS2=y
|
||||
CONFIG_NVEC_POWER=y
|
||||
CONFIG_NVEC_PAZ00=y
|
||||
CONFIG_MFD_TPS6586X=y
|
||||
CONFIG_GPIO_TPS6586X=y
|
||||
CONFIG_RTC_DRV_TPS6586X=m
|
||||
|
||||
# OLPC XO
|
||||
CONFIG_SERIO_OLPC_APSP=m
|
||||
|
||||
# Zynq-7xxx
|
||||
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
|
||||
CONFIG_MMC_SDHCI_OF_ARASAN=m
|
||||
CONFIG_I2C_CADENCE=m
|
||||
CONFIG_XILINX_WATCHDOG=m
|
||||
CONFIG_XILINX_XADC=m
|
||||
CONFIG_XILINX_VDMA=m
|
||||
CONFIG_SND_SOC_ADI=m
|
||||
CONFIG_SND_SOC_ADI_AXI_I2S=m
|
||||
CONFIG_SND_SOC_ADI_AXI_SPDIF=m
|
||||
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
|
||||
CONFIG_EDAC_SYNOPSYS=m
|
||||
CONFIG_PINCTRL_ZYNQ=y
|
||||
|
||||
# Multi function devices
|
||||
CONFIG_MFD_88PM800=m
|
||||
CONFIG_MFD_88PM805=m
|
||||
CONFIG_MFD_T7L66XB=y
|
||||
CONFIG_MFD_TC6387XB=y
|
||||
|
||||
# Generic drivers
|
||||
CONFIG_REMOTEPROC=m
|
||||
|
||||
# Regulator drivers
|
||||
CONFIG_REGULATOR_FAN53555=m
|
||||
# CONFIG_REGULATOR_88PM800 is not set
|
||||
CONFIG_REGULATOR_AD5398=m
|
||||
CONFIG_REGULATOR_ISL6271A=m
|
||||
CONFIG_REGULATOR_LP3971=m
|
||||
CONFIG_REGULATOR_LP3972=m
|
||||
CONFIG_REGULATOR_LP872X=y
|
||||
CONFIG_REGULATOR_LP8755=m
|
||||
CONFIG_REGULATOR_MAX1586=m
|
||||
CONFIG_REGULATOR_MAX8649=m
|
||||
CONFIG_REGULATOR_MAX8660=m
|
||||
CONFIG_REGULATOR_MAX8907=m
|
||||
CONFIG_REGULATOR_MAX8952=m
|
||||
CONFIG_REGULATOR_MAX8973=m
|
|
@ -0,0 +1,843 @@
|
|||
# arm configs for sharing between armv7 and armv7-lpae
|
||||
# Generic ARM config options
|
||||
CONFIG_ARM=y
|
||||
|
||||
# CONFIG_ARCH_MULTI_V6 is not set
|
||||
CONFIG_ARCH_MULTI_V7=y
|
||||
|
||||
CONFIG_CMDLINE=""
|
||||
CONFIG_CMDLINE_FROM_BOOTLOADER=y
|
||||
CONFIG_HAVE_ARM_ARCH_TIMER=y
|
||||
CONFIG_HAVE_ARM_TWD=y
|
||||
CONFIG_AEABI=y
|
||||
CONFIG_VFP=y
|
||||
CONFIG_VFPv3=y
|
||||
CONFIG_NEON=y
|
||||
CONFIG_IWMMXT=y
|
||||
CONFIG_KERNEL_MODE_NEON=y
|
||||
|
||||
CONFIG_ARM_UNWIND=y
|
||||
CONFIG_ARM_THUMB=y
|
||||
CONFIG_ARM_THUMBEE=y
|
||||
CONFIG_ARM_ASM_UNIFIED=y
|
||||
CONFIG_ARM_CPU_TOPOLOGY=y
|
||||
CONFIG_ARM_DMA_MEM_BUFFERABLE=y
|
||||
CONFIG_SWP_EMULATE=y
|
||||
CONFIG_CACHE_L2X0=y
|
||||
CONFIG_HIGHPTE=y
|
||||
CONFIG_AUTO_ZRELADDR=y
|
||||
CONFIG_ATAGS=y
|
||||
CONFIG_ATAGS_PROC=y
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_XZ_DEC_ARMTHUMB=y
|
||||
CONFIG_ARCH_HAS_TICK_BROADCAST=y
|
||||
CONFIG_IRQ_CROSSBAR=y
|
||||
CONFIG_IOMMU_IO_PGTABLE_LPAE=y
|
||||
|
||||
# CONFIG_MCPM is not set
|
||||
# CONFIG_OABI_COMPAT is not set
|
||||
# CONFIG_APM_EMULATION is not set
|
||||
# CONFIG_CPU_ICACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_DISABLE is not set
|
||||
# CONFIG_CPU_BPREDICT_DISABLE is not set
|
||||
# CONFIG_DMA_CACHE_RWFO is not set
|
||||
# CONFIG_THUMB2_KERNEL is not set
|
||||
# CONFIG_HVC_DCC is not set
|
||||
# CONFIG_XIP_KERNEL is not set
|
||||
# CONFIG_ARM_VIRT_EXT is not set
|
||||
|
||||
# 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_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
|
||||
# CONFIG_ARCH_VEXPRESS_SPC is not set
|
||||
# CONFIG_ARCH_WM8850 is not set
|
||||
# CONFIG_ARCH_DIGICOLOR is not set
|
||||
|
||||
# errata
|
||||
# v5/v6
|
||||
# CONFIG_ARM_ERRATA_326103 is not set
|
||||
# CONFIG_ARM_ERRATA_411920 is not set
|
||||
# Cortex-A8
|
||||
CONFIG_ARM_ERRATA_430973=y
|
||||
# The following two don't work with MP
|
||||
# CONFIG_ARM_ERRATA_458693 is not set
|
||||
# CONFIG_ARM_ERRATA_460075 is not set
|
||||
# Cortex-A9
|
||||
CONFIG_ARM_ERRATA_643719=y
|
||||
CONFIG_ARM_ERRATA_720789=y
|
||||
CONFIG_ARM_ERRATA_742230=y
|
||||
CONFIG_ARM_ERRATA_742231=y
|
||||
CONFIG_ARM_ERRATA_743622=y
|
||||
CONFIG_ARM_ERRATA_751472=y
|
||||
CONFIG_ARM_ERRATA_754322=y
|
||||
CONFIG_ARM_ERRATA_754327=y
|
||||
CONFIG_ARM_ERRATA_764369=y
|
||||
CONFIG_ARM_ERRATA_775420=y
|
||||
# Disabled due to causing highbank to crash
|
||||
# CONFIG_PL310_ERRATA_588369 is not set
|
||||
# CONFIG_PL310_ERRATA_727915 is not set
|
||||
CONFIG_PL310_ERRATA_753970=y
|
||||
CONFIG_PL310_ERRATA_769419=y
|
||||
CONFIG_PJ4B_ERRATA_4742=y
|
||||
# Cortex-A15
|
||||
# CONFIG_ARM_ERRATA_798181 is not set
|
||||
# CONFIG_ARM_ERRATA_773022 is not set
|
||||
|
||||
# generic that deviates from or should be merged into config-generic
|
||||
CONFIG_SMP_ON_UP=y
|
||||
CONFIG_HIGHMEM=y
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
|
||||
CONFIG_SCHED_MC=y
|
||||
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_PM_DEVFREQ=y
|
||||
CONFIG_PM_DEVFREQ_EVENT=y
|
||||
CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y
|
||||
CONFIG_DEVFREQ_GOV_PERFORMANCE=y
|
||||
CONFIG_DEVFREQ_GOV_POWERSAVE=y
|
||||
CONFIG_DEVFREQ_GOV_USERSPACE=y
|
||||
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
|
||||
CONFIG_LSM_MMAP_MIN_ADDR=32768
|
||||
|
||||
CONFIG_XZ_DEC_ARM=y
|
||||
|
||||
CONFIG_UACCESS_WITH_MEMCPY=y
|
||||
|
||||
CONFIG_PCI_HOST_GENERIC=y
|
||||
# CONFIG_PCI_LAYERSCAPE is not set
|
||||
|
||||
CONFIG_LBDAF=y
|
||||
|
||||
# GRR, needed for MFD_AS3722
|
||||
CONFIG_I2C=y
|
||||
|
||||
# Device tree
|
||||
CONFIG_USE_OF=y
|
||||
CONFIG_ARM_ATAG_DTB_COMPAT=y
|
||||
CONFIG_ARM_APPENDED_DTB=y
|
||||
|
||||
# General vexpress ARM drivers
|
||||
CONFIG_ARM_TIMER_SP804=y
|
||||
|
||||
CONFIG_SERIO_AMBAKMI=m
|
||||
CONFIG_SERIAL_AMBA_PL010=y
|
||||
CONFIG_SERIAL_AMBA_PL010_CONSOLE=y
|
||||
|
||||
CONFIG_RTC_DRV_PL030=y
|
||||
CONFIG_RTC_DRV_PL031=y
|
||||
|
||||
CONFIG_PL330_DMA=m
|
||||
CONFIG_AMBA_PL08X=y
|
||||
CONFIG_GPIO_PL061=y
|
||||
CONFIG_PL320_MBOX=y
|
||||
CONFIG_SND_ARMAACI=m
|
||||
CONFIG_USB_ISP1760=m
|
||||
|
||||
# highbank
|
||||
CONFIG_EDAC_HIGHBANK_MC=m
|
||||
CONFIG_EDAC_HIGHBANK_L2=m
|
||||
CONFIG_SATA_HIGHBANK=m
|
||||
CONFIG_ARM_HIGHBANK_CPUFREQ=m
|
||||
# CONFIG_ARM_HIGHBANK_CPUIDLE is not set
|
||||
|
||||
# AllWinner
|
||||
# CONFIG_MACH_SUN4I is not set
|
||||
# CONFIG_MACH_SUN5I is not set
|
||||
CONFIG_MACH_SUN6I=y
|
||||
CONFIG_MACH_SUN7I=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=m
|
||||
CONFIG_EEPROM_SUNXI_SID=m
|
||||
CONFIG_RTC_DRV_SUNXI=m
|
||||
CONFIG_PHY_SUN4I_USB=m
|
||||
CONFIG_AHCI_SUNXI=m
|
||||
CONFIG_SPI_SUN4I=m
|
||||
CONFIG_SPI_SUN6I=m
|
||||
CONFIG_MMC_SUNXI=m
|
||||
CONFIG_I2C_SUN6I_P2WI=m
|
||||
CONFIG_GPIO_PCA953X=m
|
||||
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_SERIO_SUN4I_PS2=m
|
||||
CONFIG_KEYBOARD_SUN4I_LRADC=m
|
||||
CONFIG_PWM_SUN4I=m
|
||||
|
||||
# Exynos
|
||||
CONFIG_ARCH_EXYNOS3=y
|
||||
# CONFIG_ARCH_EXYNOS4 is not set
|
||||
CONFIG_ARCH_EXYNOS5=y
|
||||
CONFIG_SOC_EXYNOS3250=y
|
||||
CONFIG_SOC_EXYNOS5250=y
|
||||
CONFIG_SOC_EXYNOS5420=y
|
||||
CONFIG_SOC_EXYNOS5440=y
|
||||
CONFIG_SOC_EXYNOS5260=y
|
||||
CONFIG_SOC_EXYNOS5410=y
|
||||
CONFIG_SOC_EXYNOS5800=y
|
||||
CONFIG_SERIAL_SAMSUNG=y
|
||||
CONFIG_SERIAL_SAMSUNG_CONSOLE=y
|
||||
CONFIG_ARM_EXYNOS5250_CPUFREQ=y
|
||||
CONFIG_ARM_EXYNOS5440_CPUFREQ=y
|
||||
CONFIG_ARM_EXYNOS_CPU_FREQ_BOOST_SW=y
|
||||
CONFIG_ARM_EXYNOS_CPUIDLE=y
|
||||
CONFIG_DEVFREQ_EVENT_EXYNOS_PPMU=y
|
||||
CONFIG_ARM_EXYNOS5_BUS_DEVFREQ=m
|
||||
# CONFIG_EXYNOS5420_MCPM not set
|
||||
CONFIG_ARM_EXYNOS_CPUFREQ=m
|
||||
|
||||
CONFIG_I2C_EXYNOS5=m
|
||||
CONFIG_I2C_S3C2410=m
|
||||
CONFIG_SPI_S3C64XX=m
|
||||
CONFIG_EXYNOS_THERMAL=m
|
||||
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
|
||||
CONFIG_PHY_EXYNOS5250_SATA=m
|
||||
CONFIG_HW_RANDOM_EXYNOS=m
|
||||
CONFIG_CRYPTO_DEV_S5P=m
|
||||
CONFIG_PWM_SAMSUNG=m
|
||||
CONFIG_S3C2410_WATCHDOG=m
|
||||
CONFIG_MFD_SEC_CORE=y
|
||||
CONFIG_REGULATOR_S2MPS11=m
|
||||
CONFIG_REGULATOR_S5M8767=m
|
||||
CONFIG_TCG_TIS_I2C_INFINEON=m
|
||||
CONFIG_RTC_DRV_S5M=m
|
||||
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
|
||||
CONFIG_DRM_EXYNOS=m
|
||||
CONFIG_DRM_EXYNOS_DP=y
|
||||
CONFIG_DRM_EXYNOS_DPI=y
|
||||
CONFIG_DRM_EXYNOS_DSI=y
|
||||
CONFIG_DRM_EXYNOS_FIMC=y
|
||||
CONFIG_DRM_EXYNOS_FIMD=y
|
||||
CONFIG_DRM_EXYNOS7_DECON=y
|
||||
CONFIG_DRM_EXYNOS_G2D=y
|
||||
CONFIG_DRM_EXYNOS_GSC=y
|
||||
CONFIG_DRM_EXYNOS_HDMI=y
|
||||
CONFIG_DRM_EXYNOS_IOMMU=y
|
||||
CONFIG_DRM_EXYNOS_IPP=y
|
||||
CONFIG_DRM_EXYNOS_ROTATOR=y
|
||||
CONFIG_DRM_EXYNOS_VIDI=y
|
||||
CONFIG_PHY_EXYNOS_DP_VIDEO=m
|
||||
# CONFIG_FB_S3C 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
|
||||
# CONFIG_VIDEO_SAMSUNG_S5P_TV is not set
|
||||
CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m
|
||||
|
||||
CONFIG_SND_SOC_SAMSUNG=m
|
||||
CONFIG_SND_SOC_SAMSUNG_SMDK_SPDIF=m
|
||||
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_EXYNOS_IOMMU_DEBUG is not set
|
||||
# CONFIG_SAMSUNG_PM_DEBUG is not set
|
||||
# CONFIG_SAMSUNG_PM_CHECK is not set
|
||||
|
||||
# Arndale/Origen
|
||||
CONFIG_MFD_MAX8997=y
|
||||
CONFIG_MFD_MAX77686=y
|
||||
CONFIG_REGULATOR_MAX8997=m
|
||||
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
|
||||
CONFIG_ROCKCHIP_DW_HDMI=m
|
||||
CONFIG_PHY_ROCKCHIP_USB=m
|
||||
|
||||
# Tegra
|
||||
CONFIG_ARCH_TEGRA_114_SOC=y
|
||||
CONFIG_ARCH_TEGRA_124_SOC=y
|
||||
CONFIG_ARM_TEGRA_CPUFREQ=y
|
||||
CONFIG_TRUSTED_FOUNDATIONS=y
|
||||
CONFIG_SERIAL_TEGRA=y
|
||||
CONFIG_PCI_TEGRA=y
|
||||
CONFIG_AHCI_TEGRA=m
|
||||
CONFIG_TEGRA_IOMMU_SMMU=y
|
||||
CONFIG_MMC_SDHCI_TEGRA=m
|
||||
CONFIG_TEGRA_WATCHDOG=m
|
||||
CONFIG_I2C_TEGRA=m
|
||||
CONFIG_TEGRA_AHB=y
|
||||
CONFIG_TEGRA20_APB_DMA=y
|
||||
CONFIG_SPI_TEGRA114=m
|
||||
CONFIG_PWM_TEGRA=m
|
||||
CONFIG_KEYBOARD_TEGRA=m
|
||||
CONFIG_USB_EHCI_TEGRA=m
|
||||
CONFIG_RTC_DRV_TEGRA=m
|
||||
CONFIG_SND_SOC_TEGRA=m
|
||||
CONFIG_SND_SOC_TEGRA_MAX98090=m
|
||||
CONFIG_SND_SOC_TEGRA_RT5640=m
|
||||
CONFIG_SND_SOC_TEGRA30_AHUB=m
|
||||
CONFIG_SND_SOC_TEGRA30_I2S=m
|
||||
CONFIG_SND_SOC_TEGRA_RT5677=m
|
||||
CONFIG_SND_HDA_TEGRA=m
|
||||
CONFIG_TEGRA_HOST1X=m
|
||||
CONFIG_TEGRA_HOST1X_FIREWALL=y
|
||||
CONFIG_DRM_TEGRA=m
|
||||
CONFIG_DRM_TEGRA_FBDEV=y
|
||||
# CONFIG_DRM_TEGRA_DEBUG is not set
|
||||
CONFIG_DRM_TEGRA_STAGING=y
|
||||
CONFIG_NOUVEAU_PLATFORM_DRIVER=y
|
||||
CONFIG_AD525X_DPOT=m
|
||||
CONFIG_AD525X_DPOT_I2C=m
|
||||
CONFIG_AD525X_DPOT_SPI=m
|
||||
CONFIG_TEGRA_SOCTHERM=m
|
||||
CONFIG_TEGRA_MC=y
|
||||
CONFIG_ARM_TEGRA_DEVFREQ=m
|
||||
|
||||
# Jetson TK1
|
||||
CONFIG_PINCTRL_AS3722=y
|
||||
CONFIG_POWER_RESET_AS3722=y
|
||||
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
|
||||
CONFIG_DRM_DW_HDMI=m
|
||||
|
||||
# regmap
|
||||
CONFIG_REGMAP_SPI=m
|
||||
CONFIG_REGMAP_SPMI=m
|
||||
CONFIG_REGMAP_MMIO=m
|
||||
CONFIG_REGMAP_IRQ=y
|
||||
|
||||
# usb
|
||||
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
|
||||
CONFIG_USB_ULPI=y
|
||||
CONFIG_AX88796=m
|
||||
CONFIG_AX88796_93CX6=y
|
||||
|
||||
# usb gadget
|
||||
CONFIG_USB_OTG=y
|
||||
CONFIG_USB_GADGET=m
|
||||
CONFIG_USB_GADGET_VBUS_DRAW=100
|
||||
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
|
||||
CONFIG_USB_MUSB_HDRC=m
|
||||
CONFIG_USB_MUSB_DUAL_ROLE=y
|
||||
CONFIG_USB_MUSB_DSPS=m
|
||||
# Use PIO on musb as upstream doesn't support multiple DMA engines yet :-/
|
||||
CONFIG_MUSB_PIO_ONLY=y
|
||||
# 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
|
||||
CONFIG_USB_CONFIGFS_ECM=y
|
||||
CONFIG_USB_CONFIGFS_ECM_SUBSET=y
|
||||
CONFIG_USB_CONFIGFS_EEM=y
|
||||
CONFIG_USB_CONFIGFS_MASS_STORAGE=y
|
||||
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_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_USB_CONFIGFS_F_UVC 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_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
|
||||
# CONFIG_USB_NET2280 is not set
|
||||
# CONFIG_USB_GOKU is not set
|
||||
# CONFIG_USB_EG20T is not set
|
||||
# CONFIG_USB_DUMMY_HCD is not set
|
||||
# CONFIG_USB_ZERO_HNPTEST is not set
|
||||
|
||||
# Multifunction Devices
|
||||
CONFIG_MFD_TPS65090=y
|
||||
CONFIG_MFD_TPS65217=y
|
||||
CONFIG_MFD_TPS65910=y
|
||||
CONFIG_MFD_TPS65912=y
|
||||
CONFIG_MFD_TPS65912_I2C=y
|
||||
CONFIG_MFD_TPS65912_SPI=y
|
||||
# CONFIG_MFD_DA9052_SPI is not set
|
||||
# CONFIG_MFD_ARIZONA_SPI is not set
|
||||
# CONFIG_MFD_WM831X_SPI is not set
|
||||
# CONFIG_MFD_MC13XXX_SPI is not set
|
||||
# CONFIG_MFD_PM8921_CORE 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_PALMAS is not set
|
||||
# CONFIG_MFD_TPS80031 is not set
|
||||
# CONFIG_TWL4030_CORE is not set
|
||||
# CONFIG_TWL6040_CORE is not set
|
||||
#
|
||||
|
||||
# Pin stuff
|
||||
CONFIG_PINMUX=y
|
||||
CONFIG_PINCONF=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_SINGLE=y
|
||||
CONFIG_GENERIC_PINCONF=y
|
||||
# CONFIG_PINCTRL_SAMSUNG 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_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
|
||||
CONFIG_INPUT_GPIO=m
|
||||
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
|
||||
|
||||
# SPI
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_MASTER=y
|
||||
CONFIG_SPI_GPIO=m
|
||||
CONFIG_SPI_SPIDEV=m
|
||||
CONFIG_SPI_ALTERA=m
|
||||
CONFIG_SPI_BITBANG=m
|
||||
CONFIG_SPI_BUTTERFLY=m
|
||||
CONFIG_SPI_DESIGNWARE=m
|
||||
CONFIG_SPI_LM70_LLP=m
|
||||
CONFIG_SPI_OC_TINY=m
|
||||
CONFIG_SPI_SC18IS602=m
|
||||
CONFIG_SPI_TLE62X0=m
|
||||
CONFIG_SPI_XCOMM=m
|
||||
# CONFIG_SPI_FSL_SPI is not set
|
||||
# CONFIG_SPI_CADENCE is not set
|
||||
|
||||
CONFIG_NFC_NCI_SPI=y
|
||||
|
||||
# i2c
|
||||
CONFIG_I2C_DESIGNWARE_CORE=m
|
||||
CONFIG_I2C_DESIGNWARE_PLATFORM=m
|
||||
CONFIG_I2C_MV64XXX=m
|
||||
|
||||
# HW crypto and rng
|
||||
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
|
||||
CONFIG_TI_EDMA=y
|
||||
|
||||
# Watchdog
|
||||
|
||||
# Mailbox
|
||||
CONFIG_MAILBOX=y
|
||||
|
||||
# MTD
|
||||
# CONFIG_MG_DISK is not set
|
||||
CONFIG_MTD_DATAFLASH=m
|
||||
CONFIG_MTD_DATAFLASH_WRITE_VERIFY=y
|
||||
CONFIG_MTD_DATAFLASH_OTP=y
|
||||
CONFIG_MTD_M25P80=m
|
||||
CONFIG_MTD_NAND=m
|
||||
CONFIG_MTD_NAND_CAFE=m
|
||||
# CONFIG_MTD_NAND_DENALI is not set
|
||||
CONFIG_MTD_NAND_DOCG4=m
|
||||
CONFIG_MTD_NAND_ECC_SMC=y
|
||||
CONFIG_MTD_NAND_FSMC=m
|
||||
CONFIG_MTD_NAND_GPIO=m
|
||||
CONFIG_MTD_NAND_MXC=m
|
||||
CONFIG_MTD_NAND_NANDSIM=m
|
||||
CONFIG_MTD_NAND_ORION=m
|
||||
CONFIG_MTD_NAND_PLATFORM=m
|
||||
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
|
||||
CONFIG_MTD_ST_SPI_FSM=m
|
||||
CONFIG_EEPROM_AT25=m
|
||||
CONFIG_EEPROM_93XX46=m
|
||||
|
||||
# Sound
|
||||
CONFIG_SND_ARM=y
|
||||
CONFIG_SND_SOC_AC97_BUS=y
|
||||
|
||||
# Displays
|
||||
CONFIG_BACKLIGHT_TPS65217=m
|
||||
|
||||
# RTC
|
||||
CONFIG_RTC_DRV_DS1305=m
|
||||
CONFIG_RTC_DRV_DS1390=m
|
||||
CONFIG_RTC_DRV_DS3234=m
|
||||
CONFIG_RTC_DRV_M41T93=m
|
||||
CONFIG_RTC_DRV_M41T94=m
|
||||
CONFIG_RTC_DRV_MAX6902=m
|
||||
CONFIG_RTC_DRV_PCF2123=m
|
||||
CONFIG_RTC_DRV_R9701=m
|
||||
CONFIG_RTC_DRV_RS5C348=m
|
||||
CONFIG_RTC_DRV_RX4581=m
|
||||
CONFIG_RTC_DRV_TPS65910=m
|
||||
CONFIG_RTC_DRV_TPS80031=m
|
||||
# CONFIG_RTC_DRV_DS1347 is not set
|
||||
# CONFIG_RTC_DRV_DS1343 is not set
|
||||
# CONFIG_RTC_DRV_MCP795 is not set
|
||||
# CONFIG_RTC_DRV_XGENE is not set
|
||||
|
||||
# Regulators
|
||||
CONFIG_REGULATOR=y
|
||||
CONFIG_RFKILL_REGULATOR=m
|
||||
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
||||
CONFIG_REGULATOR_VIRTUAL_CONSUMER=m
|
||||
CONFIG_REGULATOR_USERSPACE_CONSUMER=m
|
||||
CONFIG_REGULATOR_GPIO=m
|
||||
# CONFIG_REGULATOR_ACT8865 is not set
|
||||
CONFIG_REGULATOR_AD5398=m
|
||||
CONFIG_REGULATOR_DA9210=m
|
||||
CONFIG_REGULATOR_FAN53555=m
|
||||
CONFIG_REGULATOR_ISL6271A=m
|
||||
CONFIG_REGULATOR_LP3971=m
|
||||
CONFIG_REGULATOR_LP3972=m
|
||||
CONFIG_REGULATOR_LP872X=m
|
||||
CONFIG_REGULATOR_LP8755=m
|
||||
CONFIG_REGULATOR_MAX1586=m
|
||||
CONFIG_REGULATOR_MAX8649=m
|
||||
CONFIG_REGULATOR_MAX8660=m
|
||||
CONFIG_REGULATOR_MAX8952=m
|
||||
CONFIG_REGULATOR_MAX8973=m
|
||||
CONFIG_REGULATOR_PFUZE100=m
|
||||
CONFIG_REGULATOR_TPS51632=m
|
||||
CONFIG_REGULATOR_TPS62360=m
|
||||
CONFIG_REGULATOR_TPS65023=m
|
||||
CONFIG_REGULATOR_TPS6507X=m
|
||||
CONFIG_REGULATOR_TPS65090=m
|
||||
CONFIG_REGULATOR_TPS65217=m
|
||||
CONFIG_REGULATOR_TPS6524X=m
|
||||
CONFIG_REGULATOR_TPS6586X=m
|
||||
CONFIG_REGULATOR_TPS65910=m
|
||||
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
|
||||
CONFIG_CHARGER_BQ24735=m
|
||||
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
|
||||
CONFIG_BMP085=y
|
||||
CONFIG_BMP085_I2C=m
|
||||
CONFIG_BMP085_SPI=m
|
||||
CONFIG_SENSORS_AD7314=m
|
||||
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
|
||||
|
||||
CONFIG_LCD_L4F00242T03=m
|
||||
CONFIG_LCD_LMS283GF05=m
|
||||
CONFIG_LCD_LTV350QV=m
|
||||
CONFIG_LCD_ILI922X=m
|
||||
CONFIG_LCD_ILI9320=m
|
||||
CONFIG_LCD_TDO24M=m
|
||||
CONFIG_LCD_VGG2432A4=m
|
||||
CONFIG_LCD_S6E63M0=m
|
||||
CONFIG_LCD_LD9040=m
|
||||
CONFIG_LCD_AMS369FG06=m
|
||||
CONFIG_LCD_LMS501KF03=m
|
||||
CONFIG_LCD_HX8357=m
|
||||
|
||||
# Input
|
||||
CONFIG_INPUT_GP2A=m
|
||||
CONFIG_INPUT_ARIZONA_HAPTICS=m
|
||||
CONFIG_INPUT_MC13783_PWRBUTTON=m
|
||||
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
|
||||
CONFIG_KS8851=m
|
||||
CONFIG_KS8851_MLL=m
|
||||
CONFIG_ENC28J60=m
|
||||
CONFIG_LIBERTAS_SPI=m
|
||||
CONFIG_P54_SPI=m
|
||||
CONFIG_P54_SPI_DEFAULT_EEPROM=n
|
||||
CONFIG_MICREL_KS8995MA=m
|
||||
CONFIG_IEEE802154_AT86RF230=m
|
||||
CONFIG_IEEE802154_MRF24J40=m
|
||||
|
||||
CONFIG_ARM_KPROBES_TEST=m
|
||||
|
||||
# jffs2
|
||||
CONFIG_JFFS2_FS=m
|
||||
CONFIG_JFFS2_FS_DEBUG=0
|
||||
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
|
||||
# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
|
||||
CONFIG_JFFS2_FS_POSIX_ACL=y
|
||||
CONFIG_JFFS2_FS_SECURITY=y
|
||||
CONFIG_JFFS2_FS_WRITEBUFFER=y
|
||||
CONFIG_JFFS2_FS_XATTR=y
|
||||
CONFIG_JFFS2_LZO=y
|
||||
CONFIG_JFFS2_RTIME=y
|
||||
CONFIG_JFFS2_RUBIN=y
|
||||
CONFIG_JFFS2_SUMMARY=y
|
||||
CONFIG_JFFS2_ZLIB=y
|
||||
|
||||
CONFIG_UBIFS_FS=m
|
||||
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
|
||||
CONFIG_UBIFS_FS_LZO=y
|
||||
CONFIG_UBIFS_FS_ZLIB=y
|
||||
|
||||
# Sensors
|
||||
CONFIG_SENSORS_HTU21=m
|
||||
|
||||
# Chromebook
|
||||
CONFIG_MFD_CROS_EC=m
|
||||
CONFIG_MFD_CROS_EC_I2C=m
|
||||
CONFIG_MFD_CROS_EC_SPI=m
|
||||
CONFIG_KEYBOARD_CROS_EC=m
|
||||
CONFIG_I2C_CROS_EC_TUNNEL=m
|
||||
CONFIG_SND_SOC_TS3A227E=m
|
||||
|
||||
CONFIG_R8188EU=m
|
||||
# CONFIG_88EU_AP_MODE is not set
|
||||
|
||||
# Needs work/investigation
|
||||
# CONFIG_ARM_KPROBES_TEST is not set
|
||||
|
||||
# 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
|
||||
|
||||
# Not needed on ARMv7
|
||||
# CONFIG_PATA_PLATFORM is not set
|
||||
# CONFIG_NET_VENDOR_CIRRUS is not set
|
||||
# CONFIG_NET_VENDOR_MICROCHIP is not set
|
||||
# CONFIG_MFD_T7L66XB is not set
|
||||
# CONFIG_MFD_TC6387XB is not set
|
||||
# CONFIG_EZX_PCAP is not set
|
||||
# CONFIG_CS89x0 is not set
|
||||
# CONFIG_DM9000 is not set
|
||||
# CONFIG_MTD_AFS_PARTS is not set
|
||||
# CONFIG_SPI_PXA2XX is not set
|
||||
# CONFIG_DEPRECATED_PARAM_STRUCT is not set
|
||||
# CONFIG_LATTICE_ECP3_CONFIG is not set
|
||||
# CONFIG_SERIAL_8250_EM is not set
|
||||
# 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_USB_GADGET_XILINX is not set
|
||||
# CONFIG_BRCMSTB_GISB_ARB is not set
|
||||
# CONFIG_SUNGEM is not set
|
||||
# CONFIG_FB_SAVAGE is not set
|
||||
# CONFIG_FB_RADEON is not set
|
||||
# CONFIG_ATM_HE is not set
|
||||
# CONFIG_SCSI_ACARD is not set
|
||||
# CONFIG_SFC is not set
|
||||
# CONFIG_SND_ALI5451 is not set
|
||||
# CONFIG_MLX4_EN is not set
|
||||
# CONFIG_POWER_RESET_QNAP is not set
|
||||
# CONFIG_MMC_TMIO is not set
|
||||
# CONFIG_PINCTRL_IMX35 is not set
|
||||
# CONFIG_DVB_USB_PCTV452E is not set
|
||||
|
||||
# CONFIG_MFD_LP8788 is not set
|
||||
# CONFIG_MFD_MAX77693 is not set
|
||||
# CONFIG_MFD_MAX14577 is not set
|
||||
# CONFIG_MFD_AAT2870_CORE is not set
|
||||
# CONFIG_MFD_RC5T583 is not set
|
||||
# CONFIG_MFD_SMSC is not set
|
||||
# CONFIG_MFD_AS3711 is not set
|
||||
# CONFIG_PMIC_DA903X is not set
|
||||
# CONFIG_PMIC_ADP5520 is not set
|
||||
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
||||
# CONFIG_INPUT_AXP20X_PEK is not set
|
||||
# CONFIG_POWER_RESET_BRCMSTB is not set
|
||||
# CONFIG_INPUT_TPS65218_PWRBUTTON is not set
|
||||
# CONFIG_CLK_QORIQ is not set
|
||||
|
||||
# Debug options. We need to deal with them at some point like x86
|
||||
# CONFIG_DEBUG_USER is not set
|
||||
# CONFIG_DEBUG_LL is not set
|
||||
# CONFIG_DEBUG_PINCTRL is not set
|
||||
# CONFIG_DMADEVICES_VDEBUG is not set
|
||||
# CONFIG_DMADEVICES_DEBUG is not set
|
||||
# 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
|
|
@ -0,0 +1,85 @@
|
|||
# ARM A15 lpae unified arch kernel
|
||||
CONFIG_ARCH_KEYSTONE=y
|
||||
|
||||
# CONFIG_ARCH_MVEBU is not set
|
||||
# CONFIG_ARCH_MXC is not set
|
||||
# CONFIG_ARCH_OMAP3 is not set
|
||||
# CONFIG_ARCH_OMAP4 is not set
|
||||
# CONFIG_SOC_OMAP5 is not set
|
||||
# CONFIG_SOC_AM33XX is not set
|
||||
# CONFIG_SOC_AM43XX is not set
|
||||
# CONFIG_SOC_DRA7XX is not set
|
||||
# CONFIG_ARCH_ZYNQ is not set
|
||||
# CONFIG_ARCH_AXXIA is not set
|
||||
|
||||
CONFIG_ARM_LPAE=y
|
||||
CONFIG_SYS_SUPPORTS_HUGETLBFS=y
|
||||
CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
|
||||
CONFIG_ARM_VIRT_EXT=y
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
|
||||
|
||||
CONFIG_CMA_SIZE_SEL_MBYTES=y
|
||||
CONFIG_CMA_SIZE_MBYTES=64
|
||||
|
||||
# Cortex-A15
|
||||
CONFIG_ARM_ERRATA_798181=y
|
||||
CONFIG_ARM_ERRATA_773022=y
|
||||
|
||||
CONFIG_KVM=y
|
||||
CONFIG_KVM_ARM_HOST=y
|
||||
CONFIG_KVM_ARM_MAX_VCPUS=8
|
||||
CONFIG_KVM_ARM_TIMER=y
|
||||
|
||||
# CONFIG_XEN is not set
|
||||
CONFIG_XEN_FBDEV_FRONTEND=y
|
||||
CONFIG_INPUT_XEN_KBDDEV_FRONTEND=m
|
||||
CONFIG_XEN_BLKDEV_FRONTEND=m
|
||||
CONFIG_XEN_BLKDEV_BACKEND=m
|
||||
CONFIG_XEN_NETDEV_FRONTEND=m
|
||||
CONFIG_XEN_NETDEV_BACKEND=m
|
||||
CONFIG_HVC_XEN=y
|
||||
CONFIG_HVC_XEN_FRONTEND=y
|
||||
CONFIG_XEN_DEV_EVTCHN=m
|
||||
CONFIG_XEN_BACKEND=y
|
||||
CONFIG_XENFS=m
|
||||
CONFIG_XEN_COMPAT_XENFS=y
|
||||
CONFIG_XEN_SYS_HYPERVISOR=y
|
||||
CONFIG_XEN_GNTDEV=y
|
||||
CONFIG_XEN_GRANT_DEV_ALLOC=m
|
||||
CONFIG_XEN_WDT=m
|
||||
# CONFIG_XEN_BALLOON is not set
|
||||
|
||||
# TI Keystone
|
||||
CONFIG_KEYSTONE_USB_PHY=m
|
||||
CONFIG_USB_DWC3_KEYSTONE=m
|
||||
CONFIG_GPIO_DAVINCI=y
|
||||
CONFIG_I2C_DAVINCI=m
|
||||
CONFIG_TI_AEMIF=m
|
||||
CONFIG_POWER_RESET_KEYSTONE=y
|
||||
CONFIG_DAVINCI_WATCHDOG=m
|
||||
CONFIG_SPI_DAVINCI=m
|
||||
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
|
||||
# CONFIG_ARCH_TEGRA_3x_SOC is not set
|
||||
# CONFIG_TEGRA20_MC is not set
|
||||
# CONFIG_TEGRA_IOMMU_GART is not set
|
||||
# CONFIG_SPI_TEGRA20_SFLASH is not set
|
||||
# CONFIG_SPI_TEGRA20_SLINK is not set
|
||||
# CONFIG_MFD_MAX8907 is not set
|
||||
# CONFIG_MFD_NVEC is not set
|
||||
# CONFIG_SND_SOC_TEGRA_ALC5632 is not set
|
||||
# CONFIG_SND_SOC_TEGRA_TRIMSLICE is not set
|
||||
# CONFIG_SND_SOC_TEGRA_WM8753 is not set
|
||||
# CONFIG_SND_SOC_TEGRA_WM8903 is not set
|
||||
# CONFIG_SND_SOC_TEGRA_WM9712 is not set
|
||||
# CONFIG_SND_SOC_TEGRA20_AC97 is not set
|
||||
# CONFIG_SND_SOC_TEGRA20_DAS is not set
|
||||
# CONFIG_SND_SOC_TEGRA20_SPDIF is not set
|
||||
# CONFIG_SND_SOC_TEGRA_RT5677 is not set
|
|
@ -0,0 +1,130 @@
|
|||
CONFIG_SND_VERBOSE_PRINTK=y
|
||||
CONFIG_SND_DEBUG=y
|
||||
CONFIG_SND_PCM_XRUN_DEBUG=y
|
||||
|
||||
CONFIG_DEBUG_ATOMIC_SLEEP=y
|
||||
|
||||
CONFIG_DEBUG_MUTEXES=y
|
||||
CONFIG_DEBUG_RT_MUTEXES=y
|
||||
CONFIG_DEBUG_LOCK_ALLOC=y
|
||||
CONFIG_LOCK_TORTURE_TEST=m
|
||||
CONFIG_PROVE_LOCKING=y
|
||||
CONFIG_DEBUG_SPINLOCK=y
|
||||
CONFIG_PROVE_RCU=y
|
||||
# CONFIG_PROVE_RCU_REPEATEDLY is not set
|
||||
CONFIG_DEBUG_PER_CPU_MAPS=y
|
||||
CONFIG_CPUMASK_OFFSTACK=y
|
||||
|
||||
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
|
||||
|
||||
CONFIG_FAULT_INJECTION=y
|
||||
CONFIG_FAILSLAB=y
|
||||
CONFIG_FAIL_PAGE_ALLOC=y
|
||||
CONFIG_FAIL_MAKE_REQUEST=y
|
||||
CONFIG_FAULT_INJECTION_DEBUG_FS=y
|
||||
CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y
|
||||
CONFIG_FAIL_IO_TIMEOUT=y
|
||||
CONFIG_FAIL_MMC_REQUEST=y
|
||||
|
||||
CONFIG_LOCK_STAT=y
|
||||
|
||||
CONFIG_DEBUG_STACK_USAGE=y
|
||||
|
||||
CONFIG_ACPI_DEBUG=y
|
||||
|
||||
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_OBJECTS=y
|
||||
# CONFIG_DEBUG_OBJECTS_SELFTEST is not set
|
||||
CONFIG_DEBUG_OBJECTS_FREE=y
|
||||
CONFIG_DEBUG_OBJECTS_TIMERS=y
|
||||
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_DEBUG_NOTIFIERS=y
|
||||
|
||||
CONFIG_DMA_API_DEBUG=y
|
||||
|
||||
CONFIG_MMIOTRACE=y
|
||||
|
||||
CONFIG_DEBUG_CREDENTIALS=y
|
||||
|
||||
CONFIG_EXT4_DEBUG=y
|
||||
|
||||
CONFIG_XFS_WARN=y
|
||||
|
||||
CONFIG_DEBUG_PERF_USE_VMALLOC=y
|
||||
|
||||
# off in both production debug and nodebug builds,
|
||||
# on in rawhide nodebug builds
|
||||
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||
|
||||
CONFIG_JBD2_DEBUG=y
|
||||
|
||||
CONFIG_NFSD_FAULT_INJECTION=y
|
||||
|
||||
CONFIG_DEBUG_BLK_CGROUP=y
|
||||
|
||||
CONFIG_DRBD_FAULT_INJECTION=y
|
||||
|
||||
CONFIG_ATH_DEBUG=y
|
||||
CONFIG_CARL9170_DEBUGFS=y
|
||||
CONFIG_IWLWIFI_DEVICE_TRACING=y
|
||||
|
||||
CONFIG_RTLWIFI_DEBUG=y
|
||||
|
||||
CONFIG_DEBUG_OBJECTS_WORK=y
|
||||
|
||||
CONFIG_DMADEVICES_DEBUG=y
|
||||
CONFIG_DMADEVICES_VDEBUG=y
|
||||
|
||||
CONFIG_PM_ADVANCED_DEBUG=y
|
||||
|
||||
CONFIG_CEPH_LIB_PRETTYDEBUG=y
|
||||
CONFIG_QUOTA_DEBUG=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
|
||||
CONFIG_PERCPU_TEST=m
|
||||
CONFIG_TEST_LIST_SORT=y
|
||||
CONFIG_TEST_STRING_HELPERS=m
|
||||
|
||||
CONFIG_DETECT_HUNG_TASK=y
|
||||
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
|
||||
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
|
||||
|
||||
CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
|
||||
|
||||
CONFIG_DEBUG_KMEMLEAK=y
|
||||
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=1024
|
||||
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
|
||||
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
|
||||
|
||||
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
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,8 @@
|
|||
# CONFIG_HIGHMEM4G is not set
|
||||
CONFIG_HIGHMEM64G=y
|
||||
|
||||
CONFIG_XEN_DEV_EVTCHN=m
|
||||
CONFIG_XEN_SYS_HYPERVISOR=y
|
||||
|
||||
# I2O only works on non-PAE 32-bit x86
|
||||
# CONFIG_I2O is not set
|
|
@ -0,0 +1,27 @@
|
|||
### config-no-extra: only (to a first approximation) modules listed in
|
||||
### mod-extra.list should be listed here.
|
||||
|
||||
# CONFIG_ISDN is not set
|
||||
# CONFIG_RDS is not set
|
||||
# CONFIG_IP_DCCP is not set
|
||||
# CONFIG_IP_SCTP is not set
|
||||
# CONFIG_ATALK is not set
|
||||
# CONFIG_HAMRADIO is not set
|
||||
|
||||
# CONFIG_DEV_APPLETALK is not set
|
||||
|
||||
# CONFIG_FUSION is not set
|
||||
# CONFIG_I2O is not set
|
||||
|
||||
# CONFIG_NET_TULIP is not set
|
||||
|
||||
# CONFIG_HERMES is not set
|
||||
|
||||
# CONFIG_OCFS2_FS is not set
|
||||
# CONFIG_CUSE is not set
|
||||
# CONFIG_AFFS_FS is not set
|
||||
# CONFIG_BEFS_FS is not set
|
||||
# CONFIG_UFS_FS is not set
|
||||
# CONFIG_SYSV_FS is not set
|
||||
# CONFIG_NCP_FS is not set
|
||||
# CONFIG_CODA_FS is not set
|
|
@ -0,0 +1,132 @@
|
|||
CONFIG_SND_VERBOSE_PRINTK=y
|
||||
CONFIG_SND_DEBUG=y
|
||||
CONFIG_SND_PCM_XRUN_DEBUG=y
|
||||
|
||||
# CONFIG_DEBUG_ATOMIC_SLEEP is not set
|
||||
|
||||
# CONFIG_DEBUG_MUTEXES is not set
|
||||
# CONFIG_DEBUG_RT_MUTEXES is not set
|
||||
# CONFIG_DEBUG_LOCK_ALLOC is not set
|
||||
# CONFIG_LOCK_TORTURE_TEST is not set
|
||||
# CONFIG_PROVE_LOCKING is not set
|
||||
# CONFIG_DEBUG_SPINLOCK is not set
|
||||
# CONFIG_PROVE_RCU is not set
|
||||
# CONFIG_PROVE_RCU_REPEATEDLY is not set
|
||||
# CONFIG_DEBUG_PER_CPU_MAPS is not set
|
||||
CONFIG_CPUMASK_OFFSTACK=y
|
||||
|
||||
# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set
|
||||
|
||||
# CONFIG_FAULT_INJECTION is not set
|
||||
# CONFIG_FAILSLAB is not set
|
||||
# CONFIG_FAIL_PAGE_ALLOC is not set
|
||||
# CONFIG_FAIL_MAKE_REQUEST is not set
|
||||
# CONFIG_FAULT_INJECTION_DEBUG_FS is not set
|
||||
# CONFIG_FAULT_INJECTION_STACKTRACE_FILTER is not set
|
||||
# CONFIG_FAIL_IO_TIMEOUT is not set
|
||||
# CONFIG_FAIL_MMC_REQUEST is not set
|
||||
|
||||
# CONFIG_LOCK_STAT is not set
|
||||
|
||||
# CONFIG_DEBUG_STACK_USAGE is not set
|
||||
|
||||
# CONFIG_ACPI_DEBUG 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_OBJECTS is not set
|
||||
# CONFIG_DEBUG_OBJECTS_SELFTEST is not set
|
||||
# CONFIG_DEBUG_OBJECTS_FREE is not set
|
||||
# CONFIG_DEBUG_OBJECTS_TIMERS is not set
|
||||
# CONFIG_DEBUG_OBJECTS_RCU_HEAD is not set
|
||||
CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1
|
||||
|
||||
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_DEBUG_NOTIFIERS is not set
|
||||
|
||||
# CONFIG_DMA_API_DEBUG is not set
|
||||
|
||||
# CONFIG_MMIOTRACE is not set
|
||||
|
||||
# CONFIG_DEBUG_CREDENTIALS is not set
|
||||
|
||||
# off in both production debug and nodebug builds,
|
||||
# on in rawhide nodebug builds
|
||||
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||
|
||||
# CONFIG_EXT4_DEBUG is not set
|
||||
|
||||
# CONFIG_XFS_WARN is not set
|
||||
|
||||
# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
|
||||
|
||||
# CONFIG_JBD2_DEBUG is not set
|
||||
|
||||
# CONFIG_NFSD_FAULT_INJECTION is not set
|
||||
|
||||
# CONFIG_DEBUG_BLK_CGROUP is not set
|
||||
|
||||
# CONFIG_DRBD_FAULT_INJECTION is not set
|
||||
|
||||
# CONFIG_ATH_DEBUG is not set
|
||||
# CONFIG_CARL9170_DEBUGFS is not set
|
||||
# CONFIG_IWLWIFI_DEVICE_TRACING is not set
|
||||
|
||||
# CONFIG_RTLWIFI_DEBUG is not set
|
||||
|
||||
# CONFIG_DEBUG_OBJECTS_WORK is not set
|
||||
|
||||
# CONFIG_DMADEVICES_DEBUG is not set
|
||||
# CONFIG_DMADEVICES_VDEBUG is not set
|
||||
|
||||
CONFIG_PM_ADVANCED_DEBUG=y
|
||||
|
||||
# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
|
||||
# CONFIG_QUOTA_DEBUG is not set
|
||||
|
||||
|
||||
CONFIG_KGDB_KDB=y
|
||||
CONFIG_KDB_DEFAULT_ENABLE=0x0
|
||||
CONFIG_KDB_KEYBOARD=y
|
||||
CONFIG_KDB_CONTINUE_CATASTROPHIC=0
|
||||
|
||||
# CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER is not set
|
||||
# CONFIG_PERCPU_TEST is not set
|
||||
# CONFIG_TEST_LIST_SORT is not set
|
||||
# CONFIG_TEST_STRING_HELPERS is not set
|
||||
|
||||
# CONFIG_DETECT_HUNG_TASK is not set
|
||||
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
|
||||
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
|
||||
|
||||
# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set
|
||||
|
||||
# CONFIG_DEBUG_KMEMLEAK is not set
|
||||
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=1024
|
||||
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
|
||||
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
|
||||
|
||||
# CONFIG_MAC80211_MESSAGE_TRACING is not set
|
||||
|
||||
# CONFIG_EDAC_DEBUG is not set
|
||||
|
||||
# CONFIG_SPI_DEBUG is not set
|
||||
|
||||
# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set
|
||||
|
||||
# CONFIG_SCHEDSTATS is not set
|
||||
# CONFIG_LATENCYTOP is not set
|
||||
|
|
@ -0,0 +1,372 @@
|
|||
# Most PowerPC kernels we build are SMP
|
||||
CONFIG_IRQ_ALL_CPUS=y
|
||||
CONFIG_PPC=y
|
||||
CONFIG_WATCHDOG_RTAS=m
|
||||
CONFIG_DEBUGGER=y
|
||||
CONFIG_GENERIC_NVRAM=y
|
||||
CONFIG_ALTIVEC=y
|
||||
|
||||
CONFIG_TAU=y
|
||||
# CONFIG_TAU_INT is not set
|
||||
CONFIG_TAU_AVERAGE=y
|
||||
|
||||
# CONFIG_RTC is not set
|
||||
# CONFIG_GEN_RTC is not set
|
||||
# CONFIG_GEN_RTC_X is not set
|
||||
CONFIG_RTC_DRV_GENERIC=y
|
||||
# CONFIG_CMDLINE_BOOL is not set
|
||||
|
||||
CONFIG_ADB=y
|
||||
CONFIG_ADB_PMU=y
|
||||
CONFIG_WINDFARM=y
|
||||
CONFIG_WINDFARM_PM112=y
|
||||
CONFIG_I2C_POWERMAC=y
|
||||
CONFIG_APPLE_AIRPORT=m
|
||||
CONFIG_SERIAL_PMACZILOG=m
|
||||
# CONFIG_SERIAL_PMACZILOG_TTYS is not set
|
||||
CONFIG_AGP_UNINORTH=y
|
||||
CONFIG_FB_OF=y
|
||||
# CONFIG_FB_CONTROL is not set
|
||||
CONFIG_FB_IBM_GXT4500=y
|
||||
CONFIG_FB_MATROX=y
|
||||
CONFIG_FB_MATROX_G=y
|
||||
# CONFIG_FB_VGA16 is not set
|
||||
CONFIG_FB_ATY128_BACKLIGHT=y
|
||||
CONFIG_FB_ATY_BACKLIGHT=y
|
||||
CONFIG_FB_RIVA_BACKLIGHT=y
|
||||
# CONFIG_FB_MB862XX is not set
|
||||
# CONFIG_FB_MB862XX_PCI_GDC is not set
|
||||
# CONFIG_FB_MB862XX_LIME is not set
|
||||
# CONFIG_FB_MB862XX_I2C is not set
|
||||
|
||||
|
||||
CONFIG_SND_POWERMAC=m
|
||||
CONFIG_SND_POWERMAC_AUTO_DRC=y
|
||||
CONFIG_SND_AOA=m
|
||||
CONFIG_SND_AOA_SOUNDBUS=m
|
||||
CONFIG_SND_AOA_FABRIC_LAYOUT=m
|
||||
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
|
||||
CONFIG_XMON_DISASSEMBLY=y
|
||||
|
||||
CONFIG_BOOTX_TEXT=y
|
||||
CONFIG_MAC_EMUMOUSEBTN=y
|
||||
CONFIG_CAPI_EICON=y
|
||||
|
||||
CONFIG_NVRAM=y
|
||||
|
||||
# CONFIG_SCSI_AHA1542 is not set
|
||||
# CONFIG_SCSI_IN2000 is not set
|
||||
# CONFIG_SCSI_IPS is not set
|
||||
# CONFIG_NI65 is not set
|
||||
# CONFIG_LANCE is not set
|
||||
# CONFIG_3C515 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_ZORAN is not set
|
||||
# CONFIG_ATM_HORIZON is not set
|
||||
# CONFIG_ATM_FIRESTREAM is not set
|
||||
# CONFIG_ATM_AMBASSADOR is not set
|
||||
# CONFIG_SCSI_BUSLOGIC is not set
|
||||
|
||||
|
||||
# CONFIG_PPC_EARLY_DEBUG is not set
|
||||
|
||||
# CONFIG_PMAC_BACKLIGHT_LEGACY is not set
|
||||
CONFIG_LEDS_TRIGGER_TIMER=m
|
||||
CONFIG_LEDS_TRIGGER_HEARTBEAT=m
|
||||
CONFIG_LEDS_TRIGGER_GPIO=m
|
||||
|
||||
CONFIG_PPC_EFIKA=y
|
||||
CONFIG_PPC_MEDIA5200=y
|
||||
|
||||
# CONFIG_PPC_LITE5200 is not set
|
||||
CONFIG_PPC_BESTCOMM=y
|
||||
CONFIG_PMAC_RACKMETER=m
|
||||
CONFIG_USB_OHCI_HCD_PCI=y
|
||||
CONFIG_USB_OHCI_HCD_PPC_OF=y
|
||||
CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
|
||||
CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
|
||||
|
||||
CONFIG_SERIAL_UARTLITE=m
|
||||
CONFIG_SERIAL_UARTLITE_CONSOLE=y
|
||||
|
||||
CONFIG_SENSORS_AMS=m
|
||||
CONFIG_SENSORS_AMS_PMU=y
|
||||
CONFIG_SENSORS_AMS_I2C=y
|
||||
|
||||
CONFIG_IDE=y
|
||||
CONFIG_BLK_DEV_IDE=y
|
||||
|
||||
#
|
||||
# Please see Documentation/ide.txt for help/info on IDE drives
|
||||
#
|
||||
# CONFIG_BLK_DEV_IDE_SATA is not set
|
||||
# CONFIG_BLK_DEV_IDECS is not set
|
||||
CONFIG_BLK_DEV_IDECD=m
|
||||
# CONFIG_BLK_DEV_IDETAPE is not set
|
||||
CONFIG_IDE_TASK_IOCTL=y
|
||||
#
|
||||
# IDE chipset support/bugfixes
|
||||
#
|
||||
# CONFIG_IDE_GENERIC is not set
|
||||
# CONFIG_BLK_DEV_IDEPNP is not set
|
||||
# CONFIG_BLK_DEV_IDEPCI is not set
|
||||
# CONFIG_BLK_DEV_AEC62XX is not set
|
||||
# CONFIG_BLK_DEV_ALI15X3 is not set
|
||||
# CONFIG_BLK_DEV_CMD64X is not set
|
||||
# CONFIG_BLK_DEV_TRIFLEX is not set
|
||||
# CONFIG_BLK_DEV_CY82C693 is not set
|
||||
# CONFIG_BLK_DEV_CS5520 is not set
|
||||
# CONFIG_BLK_DEV_CS5530 is not set
|
||||
# CONFIG_BLK_DEV_HPT366 is not set
|
||||
# CONFIG_BLK_DEV_JMICRON is not set
|
||||
# CONFIG_BLK_DEV_SC1200 is not set
|
||||
# CONFIG_BLK_DEV_PIIX is not set
|
||||
# CONFIG_BLK_DEV_IT821X is not set
|
||||
# CONFIG_BLK_DEV_NS87415 is not set
|
||||
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
|
||||
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
|
||||
# CONFIG_BLK_DEV_SVWKS is not set
|
||||
# CONFIG_BLK_DEV_SIIMAGE is not set
|
||||
# CONFIG_BLK_DEV_SL82C105 is not set
|
||||
# CONFIG_BLK_DEV_SLC90E66 is not set
|
||||
# CONFIG_BLK_DEV_TRM290 is not set
|
||||
# CONFIG_BLK_DEV_VIA82CXXX is not set
|
||||
# CONFIG_BLK_DEV_IDE_PMAC is not set
|
||||
# CONFIG_BLK_DEV_AMD74XX is not set
|
||||
# CONFIG_BLK_DEV_OPTI621 is not set
|
||||
# CONFIG_BLK_DEV_OFFBOARD is not set
|
||||
CONFIG_BLK_DEV_DELKIN=m
|
||||
# CONFIG_BLK_DEV_IT8213 is not set
|
||||
# CONFIG_BLK_DEV_TC86C001 is not set
|
||||
CONFIG_BLK_DEV_IDEDMA=y
|
||||
CONFIG_BLK_DEV_GENERIC=y
|
||||
# CONFIG_BLK_DEV_HD is not set
|
||||
# CONFIG_USB_STORAGE_ISD200 is not set
|
||||
CONFIG_MTD_PHYSMAP_OF=m
|
||||
CONFIG_IDE_PROC_FS=y
|
||||
CONFIG_MACINTOSH_DRIVERS=y
|
||||
|
||||
CONFIG_PPC_PASEMI_MDIO=m
|
||||
CONFIG_SPU_FS_64K_LS=y
|
||||
CONFIG_PPC_PASEMI_CPUFREQ=y
|
||||
CONFIG_PMAC_APM_EMU=m
|
||||
CONFIG_HW_RANDOM_PASEMI=m
|
||||
|
||||
CONFIG_EDAC=y
|
||||
CONFIG_EDAC_MM_EDAC=m
|
||||
CONFIG_EDAC_PASEMI=m
|
||||
CONFIG_EDAC_AMD8131=m
|
||||
CONFIG_EDAC_AMD8111=m
|
||||
CONFIG_EDAC_LEGACY_SYSFS=y
|
||||
|
||||
# CONFIG_AXON_RAM is not set
|
||||
# CONFIG_OPROFILE_CELL is not set
|
||||
|
||||
CONFIG_SUSPEND_FREEZER=y
|
||||
# CONFIG_IDEPCI_PCIBUS_ORDER is not set
|
||||
CONFIG_PATA_PLATFORM=m
|
||||
CONFIG_PATA_OF_PLATFORM=m
|
||||
CONFIG_USB_EHCI_HCD_PPC_OF=y
|
||||
|
||||
# CONFIG_MPC5121_ADS is not set
|
||||
CONFIG_MTD_OF_PARTS=y
|
||||
# CONFIG_MTD_NAND_FSL_ELBC is not set
|
||||
CONFIG_THERMAL=y
|
||||
|
||||
# CONFIG_MEMORY_HOTREMOVE is not set
|
||||
|
||||
CONFIG_DMADEVICES=y
|
||||
# CONFIG_FSL_DMA is not set
|
||||
|
||||
CONFIG_SND_PPC=y
|
||||
|
||||
# CONFIG_PPC_82xx is not set
|
||||
# CONFIG_PPC_83xx is not set
|
||||
# CONFIG_PPC_86xx is not set
|
||||
CONFIG_EXTRA_TARGETS=""
|
||||
# CONFIG_CODE_PATCHING_SELFTEST is not set
|
||||
# CONFIG_FTR_FIXUP_SELFTEST is not set
|
||||
|
||||
# CONFIG_MATH_EMULATION is not set
|
||||
# CONFIG_RAPIDIO is not set
|
||||
# CONFIG_FS_ENET is not set
|
||||
# CONFIG_UCC_GETH is not set
|
||||
# CONFIG_KEYBOARD_MATRIX is not set
|
||||
# CONFIG_SERIAL_CPM is not set
|
||||
# CONFIG_SERIAL_QE is not set
|
||||
# CONFIG_I2C_CPM is not set
|
||||
|
||||
CONFIG_NET_VENDOR_IBM=y
|
||||
|
||||
CONFIG_MLX4_EN=m
|
||||
CONFIG_MLX4_EN_DCB=y
|
||||
CONFIG_MLX4_EN_VXLAN=y
|
||||
|
||||
# CONFIG_SERIO_XILINX_XPS_PS2 is not set
|
||||
|
||||
# CONFIG_PPC_SMLPAR is not set
|
||||
|
||||
# CONFIG_MGCOGE is not set
|
||||
# CONFIG_GEF_SBC610 is not set
|
||||
# CONFIG_GEF_PPC9A is not set
|
||||
# CONFIG_GEF_SBC310 is not set
|
||||
|
||||
# CONFIG_QUICC_ENGINE is not set
|
||||
# CONFIG_QE_GPIO is not set
|
||||
|
||||
CONFIG_IDE_GD=y
|
||||
CONFIG_IDE_GD_ATA=y
|
||||
CONFIG_IDE_GD_ATAPI=y
|
||||
|
||||
# CONFIG_MCU_MPC8349EMITX is not set
|
||||
|
||||
# CONFIG_GPIO_XILINX is not set
|
||||
|
||||
CONFIG_PMIC_DA903X=y
|
||||
CONFIG_BACKLIGHT_DA903X=m
|
||||
CONFIG_LEDS_DA903X=m
|
||||
|
||||
CONFIG_MSI_BITMAP_SELFTEST=y
|
||||
|
||||
CONFIG_RELOCATABLE=y
|
||||
|
||||
# CONFIG_HVC_UDBG is not set
|
||||
CONFIG_PRINT_STACK_DEPTH=64
|
||||
|
||||
CONFIG_BATTERY_DA9030=m
|
||||
# CONFIG_TWL4030_CORE is not set
|
||||
|
||||
CONFIG_BLK_DEV_IT8172=m
|
||||
CONFIG_TOUCHSCREEN_DA9034=m
|
||||
|
||||
CONFIG_SIMPLE_GPIO=y
|
||||
|
||||
# CONFIG_FSL_PQ_MDIO is not set
|
||||
|
||||
# CONFIG_PS3_VRAM is not set
|
||||
CONFIG_MDIO_GPIO=m
|
||||
# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
|
||||
# CONFIG_DEBUG_GPIO is not set
|
||||
CONFIG_GPIO_PCA953X=m
|
||||
CONFIG_GPIO_PCF857X=m
|
||||
|
||||
# CONFIG_USB_FHCI_HCD is not set
|
||||
# CONFIG_FHCI_DEBUG is not set
|
||||
|
||||
# CONFIG_AMIGAONE is not set
|
||||
|
||||
CONFIG_PPC_OF_BOOT_TRAMPOLINE=y
|
||||
|
||||
CONFIG_DTL=y
|
||||
|
||||
CONFIG_MMC_SDHCI_OF=m
|
||||
|
||||
# CONFIG_CONSISTENT_SIZE_BOOL is not set
|
||||
|
||||
|
||||
CONFIG_PPC_EMULATED_STATS=y
|
||||
|
||||
CONFIG_SWIOTLB=y
|
||||
|
||||
# CONFIG_RDS is not set
|
||||
|
||||
CONFIG_PPC_DISABLE_WERROR=y
|
||||
|
||||
# CONFIG_XILINX_LL_TEMAC is not set
|
||||
# CONFIG_XILINX_EMACLITE is not set
|
||||
|
||||
CONFIG_GPIO_WM831X=m
|
||||
# CONFIG_GPIO_UCB1400 is not set
|
||||
# CONFIG_EDAC_MPC85XX is not set
|
||||
|
||||
CONFIG_NR_IRQS=512
|
||||
CONFIG_SPARSE_IRQ=y
|
||||
|
||||
# CONFIG_PPC_MPC5200_LPBFIFO is not set
|
||||
# CONFIG_CAN_MSCAN is not set
|
||||
# CONFIG_CAN_MPC5XXX is not set
|
||||
CONFIG_PATA_MACIO=y
|
||||
CONFIG_SERIAL_GRLIB_GAISLER_APBUART=m
|
||||
# CONFIG_PMIC_ADP5520 is not set
|
||||
# CONFIG_MFD_MAX8997 is not set
|
||||
# CONFIG_MFD_TPS65910 is not set
|
||||
# CONFIG_MFD_TPS65912_I2C is not set
|
||||
# CONFIG_MFD_WL1273_CORE is not set
|
||||
# CONFIG_XPS_USB_HCD_XILINX is not set
|
||||
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
|
||||
# CONFIG_MMC_SDHCI_OF_HLWD 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_MPC512X_DMA is not set
|
||||
|
||||
CONFIG_KVM_GUEST=y
|
||||
|
||||
CONFIG_I2C_MPC=m
|
||||
|
||||
# CONFIG_IMA is not set
|
||||
# CONFIG_TCG_TPM is not set
|
||||
|
||||
# CONFIG_CRYPTO_DEV_FSL_CAAM is not set
|
||||
# CONFIG_CRYPTO_SHA1_PPC is not set
|
||||
|
||||
# CONFIG_CAN_FLEXCAN is not set
|
||||
# CONFIG_NET_VENDOR_XILINX is not set
|
||||
# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set
|
||||
# CONFIG_IBM_EMAC is not set
|
||||
# CONFIG_NET_VENDOR_PASEMI is not set
|
||||
# CONFIG_NET_VENDOR_TOSHIBA is not set
|
||||
|
||||
# CONFIG_CPU_IDLE is not set
|
||||
# CONFIG_OF_UNITTEST is not set
|
||||
# CONFIG_OF_OVERLAY is not set
|
||||
# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
|
||||
# CONFIG_INPUT_GP2A is not set
|
||||
# CONFIG_INPUT_GPIO_TILT_POLLED is not set
|
||||
|
||||
CONFIG_RCU_FANOUT_LEAF=16
|
||||
|
||||
# CONFIG_IRQ_DOMAIN_DEBUG is not set
|
||||
# CONFIG_MPIC_MSGR is not set
|
||||
# CONFIG_FA_DUMP is not set
|
||||
# CONFIG_MDIO_BUS_MUX_GPIO is not set
|
||||
|
||||
# CONFIG_FAIL_IOMMU is not set
|
||||
# CONFIG_SPAPR_TCE_IOMMU is not set
|
||||
# CONFIG_TRANSPARENT_HUGEPAGE is not set
|
||||
|
||||
CONFIG_PPC_DENORMALISATION=y
|
||||
# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
|
||||
# CONFIG_MFD_SYSCON is not set
|
||||
# CONFIG_ASYMMETRIC_KEY_TYPE 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
|
||||
CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=n
|
||||
|
||||
CONFIG_XZ_DEC_POWERPC=y
|
||||
|
||||
CONFIG_CRASH=m
|
|
@ -0,0 +1,180 @@
|
|||
# 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
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
# CONFIG_HOTPLUG_CPU is not set
|
||||
CONFIG_NR_CPUS=4
|
||||
# CONFIG_BATTERY_PMU is not set
|
|
@ -0,0 +1,186 @@
|
|||
CONFIG_WINDFARM_PM81=y
|
||||
CONFIG_WINDFARM_PM91=y
|
||||
CONFIG_WINDFARM_PM121=y
|
||||
CONFIG_WINDFARM_PM72=y
|
||||
CONFIG_WINDFARM_RM31=y
|
||||
|
||||
CONFIG_PPC_PMAC64=y
|
||||
CONFIG_PPC_MAPLE=y
|
||||
# CONFIG_PPC_CELL is not set
|
||||
# CONFIG_PPC_IBM_CELL_BLADE is not set
|
||||
CONFIG_PPC_PSERIES=y
|
||||
CONFIG_PPC_PMAC=y
|
||||
CONFIG_PPC_POWERNV=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
|
||||
# CONFIG_PPC_PS3 is not set
|
||||
# CONFIG_PPC_CELLEB is not set
|
||||
# CONFIG_PPC_CELL_QPACE is not set
|
||||
CONFIG_PMAC_RACKMETER=m
|
||||
CONFIG_IBMEBUS=y
|
||||
CONFIG_RTAS_FLASH=y
|
||||
# CONFIG_UDBG_RTAS_CONSOLE is not set
|
||||
CONFIG_PPC_SPLPAR=y
|
||||
CONFIG_SCANLOG=y
|
||||
CONFIG_LPARCFG=y
|
||||
CONFIG_SERIAL_ICOM=m
|
||||
CONFIG_HVCS=m
|
||||
CONFIG_HVC_CONSOLE=y
|
||||
# CONFIG_HVC_OLD_HVSI is not set
|
||||
CONFIG_HOTPLUG_PCI=y
|
||||
CONFIG_IBMVETH=m
|
||||
CONFIG_SCSI_IBMVSCSI=m
|
||||
# CONFIG_HOTPLUG_PCI_CPCI is not set
|
||||
CONFIG_HOTPLUG_PCI_SHPC=m
|
||||
CONFIG_HOTPLUG_PCI_RPA=m
|
||||
CONFIG_HOTPLUG_PCI_RPA_DLPAR=y
|
||||
CONFIG_ADB_PMU_LED=y
|
||||
CONFIG_ADB_PMU_LED_IDE=y
|
||||
CONFIG_PMAC_SMU=y
|
||||
CONFIG_CPU_FREQ_PMAC64=y
|
||||
CONFIG_CPU_FREQ_MAPLE=y
|
||||
CONFIG_SCSI_IPR=m
|
||||
CONFIG_SCSI_IPR_TRACE=y
|
||||
CONFIG_SCSI_IPR_DUMP=y
|
||||
CONFIG_HVC_RTAS=y
|
||||
CONFIG_HVC_OPAL=y
|
||||
|
||||
# iSeries device drivers
|
||||
#
|
||||
|
||||
CONFIG_PASEMI_MAC=m
|
||||
CONFIG_SERIAL_OF_PLATFORM=m
|
||||
|
||||
CONFIG_SERIAL_TXX9=y
|
||||
CONFIG_SERIAL_TXX9_NR_UARTS=6
|
||||
CONFIG_SERIAL_TXX9_CONSOLE=y
|
||||
|
||||
CONFIG_HVC_BEAT=y
|
||||
|
||||
CONFIG_PPC_PMI=m
|
||||
|
||||
CONFIG_PATA_SCC=m
|
||||
|
||||
CONFIG_APM_EMULATION=m
|
||||
|
||||
CONFIG_PPC64=y
|
||||
CONFIG_VIRT_CPU_ACCOUNTING=y
|
||||
CONFIG_NR_CPUS=1024
|
||||
# CONFIG_FB_PLATINUM is not set
|
||||
# CONFIG_FB_VALKYRIE is not set
|
||||
# CONFIG_FB_CT65550 is not set
|
||||
# CONFIG_FB_VGA16 is not set
|
||||
# CONFIG_FB_ATY128 is not set
|
||||
# CONFIG_FB_ATY is not set
|
||||
|
||||
|
||||
CONFIG_RTAS_PROC=y
|
||||
CONFIG_NUMA=y
|
||||
CONFIG_NUMA_BALANCING=y
|
||||
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
|
||||
CONFIG_PPC_64K_PAGES=y
|
||||
CONFIG_PPC_SUBPAGE_PROT=y
|
||||
CONFIG_SCHED_SMT=y
|
||||
|
||||
CONFIG_HZ=100
|
||||
CONFIG_HZ_100=y
|
||||
# CONFIG_HZ_1000 is not set
|
||||
|
||||
CONFIG_MEMORY_HOTREMOVE=y
|
||||
|
||||
CONFIG_PPC64_SUPPORTS_MEMORY_FAILURE=y
|
||||
|
||||
CONFIG_CGROUP_HUGETLB=y
|
||||
|
||||
# CONFIG_MV643XX_ETH is not set
|
||||
CONFIG_IRQSTACKS=y
|
||||
CONFIG_DEBUG_STACKOVERFLOW=y
|
||||
# CONFIG_INPUT_PCSPKR is not set
|
||||
|
||||
CONFIG_EHEA=m
|
||||
CONFIG_INFINIBAND_EHCA=m
|
||||
|
||||
# CONFIG_HCALL_STATS is not set
|
||||
|
||||
CONFIG_XMON_DISASSEMBLY=y
|
||||
|
||||
|
||||
# CONFIG_TUNE_CELL is not set
|
||||
# CONFIG_BLK_DEV_PLATFORM is not set
|
||||
|
||||
|
||||
CONFIG_EDAC_CPC925=m
|
||||
CONFIG_FRAME_WARN=2048
|
||||
|
||||
CONFIG_FORCE_MAX_ZONEORDER=9
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
|
||||
CONFIG_VSX=y
|
||||
|
||||
CONFIG_SCSI_IBMVFC=m
|
||||
# CONFIG_SCSI_IBMVFC_TRACE is not set
|
||||
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
|
||||
# CONFIG_KVM_EXIT_TIMING is not set
|
||||
CONFIG_KVM_XICS=y
|
||||
|
||||
#-- bz#607175
|
||||
#-- active memory sharing
|
||||
CONFIG_PPC_SMLPAR=y
|
||||
CONFIG_CMM=y
|
||||
CONFIG_HV_PERF_CTRS=y
|
||||
#-- DLPAR memory remove
|
||||
CONFIG_SPARSEMEM_VMEMMAP=y
|
||||
|
||||
# CONFIG_COMPACTION is not set
|
||||
|
||||
CONFIG_PSERIES_ENERGY=m
|
||||
|
||||
CONFIG_CPU_IDLE=y
|
||||
# CONFIG_CPU_IDLE_GOV_LADDER is not set
|
||||
CONFIG_PSERIES_CPUIDLE=y
|
||||
CONFIG_POWERNV_CPUIDLE=y
|
||||
|
||||
CONFIG_PPC_ICSWX=y
|
||||
CONFIG_IO_EVENT_IRQ=y
|
||||
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_PPC_ICSWX_PID is not set
|
||||
# CONFIG_PPC_ICSWX_USE_SIGILL is not set
|
||||
# CONFIG_PCIEPORTBUS is not set
|
||||
# CONFIG_SND_HDA_INTEL is not set
|
||||
CONFIG_BLK_DEV_RSXX=m
|
||||
CONFIG_PPC_TRANSACTIONAL_MEM=y
|
||||
|
||||
# CONFIG_CARL9170 is not set
|
|
@ -0,0 +1 @@
|
|||
CONFIG_CPU_LITTLE_ENDIAN=y
|
|
@ -0,0 +1,174 @@
|
|||
CONFIG_POWER7_CPU=y
|
||||
# CONFIG_PPC_PMAC64 is not set
|
||||
# CONFIG_PPC_MAPLE is not set
|
||||
# CONFIG_PPC_CELL is not set
|
||||
# CONFIG_PPC_IBM_CELL_BLADE is not set
|
||||
CONFIG_PPC_PSERIES=y
|
||||
# CONFIG_PPC_PMAC is not set
|
||||
CONFIG_PPC_POWERNV=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
|
||||
# CONFIG_PPC_PS3 is not set
|
||||
# CONFIG_PPC_CELLEB is not set
|
||||
# CONFIG_PPC_CELL_QPACE is not set
|
||||
CONFIG_IBMEBUS=y
|
||||
CONFIG_RTAS_FLASH=y
|
||||
# CONFIG_UDBG_RTAS_CONSOLE is not set
|
||||
CONFIG_PPC_SPLPAR=y
|
||||
CONFIG_SCANLOG=y
|
||||
CONFIG_LPARCFG=y
|
||||
CONFIG_SERIAL_ICOM=m
|
||||
CONFIG_HVCS=m
|
||||
CONFIG_HVC_CONSOLE=y
|
||||
# CONFIG_HVC_OLD_HVSI is not set
|
||||
CONFIG_HOTPLUG_PCI=y
|
||||
CONFIG_IBMVETH=m
|
||||
CONFIG_SCSI_IBMVSCSI=m
|
||||
# CONFIG_HOTPLUG_PCI_CPCI is not set
|
||||
CONFIG_HOTPLUG_PCI_SHPC=m
|
||||
CONFIG_HOTPLUG_PCI_RPA=m
|
||||
CONFIG_HOTPLUG_PCI_RPA_DLPAR=y
|
||||
CONFIG_ADB_PMU_LED=y
|
||||
CONFIG_ADB_PMU_LED_IDE=y
|
||||
CONFIG_SCSI_IPR=m
|
||||
CONFIG_SCSI_IPR_TRACE=y
|
||||
CONFIG_SCSI_IPR_DUMP=y
|
||||
CONFIG_HVC_RTAS=y
|
||||
CONFIG_HVC_OPAL=y
|
||||
|
||||
# iSeries device drivers
|
||||
#
|
||||
|
||||
CONFIG_SERIAL_OF_PLATFORM=m
|
||||
|
||||
CONFIG_SERIAL_TXX9=y
|
||||
CONFIG_SERIAL_TXX9_NR_UARTS=6
|
||||
CONFIG_SERIAL_TXX9_CONSOLE=y
|
||||
|
||||
CONFIG_HVC_BEAT=y
|
||||
|
||||
CONFIG_PPC_PMI=m
|
||||
|
||||
CONFIG_PATA_SCC=m
|
||||
|
||||
CONFIG_APM_EMULATION=m
|
||||
|
||||
CONFIG_PPC64=y
|
||||
CONFIG_VIRT_CPU_ACCOUNTING=y
|
||||
CONFIG_NR_CPUS=1024
|
||||
# CONFIG_FB_PLATINUM is not set
|
||||
# CONFIG_FB_VALKYRIE is not set
|
||||
# CONFIG_FB_CT65550 is not set
|
||||
# CONFIG_FB_VGA16 is not set
|
||||
# CONFIG_FB_ATY128 is not set
|
||||
# CONFIG_FB_ATY is not set
|
||||
|
||||
|
||||
CONFIG_RTAS_PROC=y
|
||||
CONFIG_NUMA=y
|
||||
CONFIG_NUMA_BALANCING=y
|
||||
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
|
||||
CONFIG_PPC_64K_PAGES=y
|
||||
CONFIG_PPC_SUBPAGE_PROT=y
|
||||
CONFIG_SCHED_SMT=y
|
||||
|
||||
CONFIG_HZ=100
|
||||
CONFIG_HZ_100=y
|
||||
# CONFIG_HZ_1000 is not set
|
||||
|
||||
CONFIG_MEMORY_HOTREMOVE=y
|
||||
|
||||
CONFIG_PPC64_SUPPORTS_MEMORY_FAILURE=y
|
||||
|
||||
CONFIG_CGROUP_HUGETLB=y
|
||||
|
||||
# CONFIG_MV643XX_ETH is not set
|
||||
CONFIG_IRQSTACKS=y
|
||||
CONFIG_DEBUG_STACKOVERFLOW=y
|
||||
# CONFIG_INPUT_PCSPKR is not set
|
||||
|
||||
CONFIG_EHEA=m
|
||||
CONFIG_INFINIBAND_EHCA=m
|
||||
|
||||
# CONFIG_HCALL_STATS is not set
|
||||
|
||||
CONFIG_XMON_DISASSEMBLY=y
|
||||
|
||||
|
||||
# CONFIG_TUNE_CELL is not set
|
||||
# CONFIG_BLK_DEV_PLATFORM is not set
|
||||
|
||||
|
||||
CONFIG_EDAC_CPC925=m
|
||||
CONFIG_FRAME_WARN=2048
|
||||
|
||||
CONFIG_FORCE_MAX_ZONEORDER=9
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
|
||||
CONFIG_VSX=y
|
||||
|
||||
CONFIG_SCSI_IBMVFC=m
|
||||
# CONFIG_SCSI_IBMVFC_TRACE is not set
|
||||
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
|
||||
# CONFIG_KVM_EXIT_TIMING is not set
|
||||
CONFIG_KVM_XICS=y
|
||||
|
||||
#-- bz#607175
|
||||
#-- active memory sharing
|
||||
CONFIG_PPC_SMLPAR=y
|
||||
CONFIG_CMM=y
|
||||
CONFIG_HV_PERF_CTRS=y
|
||||
#-- DLPAR memory remove
|
||||
CONFIG_SPARSEMEM_VMEMMAP=y
|
||||
|
||||
# CONFIG_COMPACTION is not set
|
||||
|
||||
CONFIG_PSERIES_ENERGY=m
|
||||
|
||||
CONFIG_CPU_IDLE=y
|
||||
# CONFIG_CPU_IDLE_GOV_LADDER is not set
|
||||
CONFIG_PSERIES_CPUIDLE=y
|
||||
CONFIG_POWERNV_CPUIDLE=y
|
||||
|
||||
CONFIG_PPC_ICSWX=y
|
||||
CONFIG_IO_EVENT_IRQ=y
|
||||
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_PPC_ICSWX_PID is not set
|
||||
# CONFIG_PPC_ICSWX_USE_SIGILL is not set
|
||||
# CONFIG_PCIEPORTBUS is not set
|
||||
# CONFIG_SND_HDA_INTEL is not set
|
||||
CONFIG_BLK_DEV_RSXX=m
|
||||
CONFIG_PPC_TRANSACTIONAL_MEM=y
|
|
@ -0,0 +1,314 @@
|
|||
CONFIG_64BIT=y
|
||||
# CONFIG_MARCH_G5 is not set
|
||||
# CONFIG_MARCH_Z900 is not set
|
||||
CONFIG_MARCH_Z9_109=y
|
||||
# CONFIG_MARCH_Z990 is not set
|
||||
|
||||
CONFIG_NR_CPUS=64
|
||||
CONFIG_COMPAT=y
|
||||
|
||||
# See bug 496596
|
||||
CONFIG_HZ_100=y
|
||||
# CONFIG_HZ_1000 is not set
|
||||
# See bug 496605
|
||||
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
|
||||
|
||||
CONFIG_LOG_BUF_SHIFT=16
|
||||
|
||||
#
|
||||
# I/O subsystem configuration
|
||||
#
|
||||
CONFIG_QDIO=m
|
||||
|
||||
#
|
||||
# Misc
|
||||
#
|
||||
CONFIG_IPL=y
|
||||
CONFIG_PFAULT=y
|
||||
CONFIG_SHARED_KERNEL=y
|
||||
CONFIG_CMM=m
|
||||
# CONFIG_NETIUCV is not set
|
||||
CONFIG_SMSGIUCV=m
|
||||
CONFIG_CRASH_DUMP=y
|
||||
|
||||
#
|
||||
# SCSI low-level drivers
|
||||
#
|
||||
CONFIG_ZFCP=m
|
||||
CONFIG_CCW=y
|
||||
|
||||
#
|
||||
# S/390 block device drivers
|
||||
#
|
||||
CONFIG_DCSSBLK=m
|
||||
CONFIG_BLK_DEV_XPRAM=m
|
||||
CONFIG_DASD=m
|
||||
CONFIG_DASD_PROFILE=y
|
||||
CONFIG_DASD_ECKD=m
|
||||
CONFIG_DASD_FBA=m
|
||||
CONFIG_DASD_DIAG=m
|
||||
CONFIG_DASD_EER=y
|
||||
|
||||
#
|
||||
# S/390 character device drivers
|
||||
#
|
||||
CONFIG_TN3270=y
|
||||
CONFIG_TN3270_CONSOLE=y
|
||||
CONFIG_TN3215=y
|
||||
CONFIG_TN3215_CONSOLE=y
|
||||
CONFIG_CCW_CONSOLE=y
|
||||
CONFIG_SCLP_TTY=y
|
||||
CONFIG_SCLP_CONSOLE=y
|
||||
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
|
||||
|
||||
CONFIG_APPLDATA_BASE=y
|
||||
CONFIG_APPLDATA_MEM=m
|
||||
CONFIG_APPLDATA_OS=m
|
||||
CONFIG_APPLDATA_NET_SUM=m
|
||||
CONFIG_TN3270_TTY=y
|
||||
CONFIG_TN3270_FS=m
|
||||
|
||||
|
||||
#
|
||||
# S/390 tape interface support
|
||||
#
|
||||
|
||||
#
|
||||
# S/390 tape hardware support
|
||||
#
|
||||
CONFIG_S390_TAPE_34XX=m
|
||||
|
||||
# CONFIG_SLIP is not set
|
||||
|
||||
#
|
||||
# Token Ring devices
|
||||
#
|
||||
CONFIG_TR=y
|
||||
CONFIG_NETCONSOLE=m
|
||||
|
||||
#
|
||||
# Wan interfaces
|
||||
#
|
||||
# CONFIG_WAN is not set
|
||||
|
||||
#
|
||||
# S/390 network device drivers
|
||||
#
|
||||
CONFIG_LCS=m
|
||||
CONFIG_CTC=m
|
||||
CONFIG_IUCV=m
|
||||
CONFIG_QETH=m
|
||||
CONFIG_QETH_IPV6=y
|
||||
CONFIG_CCWGROUP=m
|
||||
|
||||
# CONFIG_IRDA is not set
|
||||
# CONFIG_BT is not set
|
||||
# CONFIG_WIRELESS_EXT is not set
|
||||
# CONFIG_MAC80211 is not set
|
||||
# CONFIG_B44 is not set
|
||||
|
||||
#
|
||||
# Partition Types
|
||||
#
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
# CONFIG_OSF_PARTITION is not set
|
||||
CONFIG_IBM_PARTITION=y
|
||||
# CONFIG_MAC_PARTITION is not set
|
||||
CONFIG_MSDOS_PARTITION=y
|
||||
# CONFIG_SGI_PARTITION is not set
|
||||
# CONFIG_SUN_PARTITION is not set
|
||||
|
||||
|
||||
#
|
||||
# S390 crypto hw
|
||||
#
|
||||
CONFIG_CRYPTO_SHA1_S390=m
|
||||
CONFIG_CRYPTO_SHA256_S390=m
|
||||
CONFIG_CRYPTO_DES_S390=m
|
||||
CONFIG_CRYPTO_AES_S390=m
|
||||
|
||||
#
|
||||
# Kernel hacking
|
||||
#
|
||||
|
||||
#
|
||||
# S390 specific stack options; needs gcc 3.5 so off for now
|
||||
#
|
||||
CONFIG_PACK_STACK=y
|
||||
CONFIG_CHECK_STACK=y
|
||||
|
||||
CONFIG_DIAG288_WATCHDOG=m
|
||||
CONFIG_VMLOGRDR=m
|
||||
CONFIG_MONREADER=m
|
||||
|
||||
CONFIG_VIRT_CPU_ACCOUNTING=y
|
||||
|
||||
# CONFIG_CLAW is not set
|
||||
|
||||
# CONFIG_CDROM_PKTCDVD is not set
|
||||
# CONFIG_ATA_OVER_ETH is not set
|
||||
# CONFIG_MII is not set
|
||||
|
||||
|
||||
CONFIG_STACK_GUARD=256
|
||||
CONFIG_CMM_IUCV=y
|
||||
|
||||
|
||||
CONFIG_S390_HYPFS_FS=y
|
||||
|
||||
CONFIG_MONWRITER=m
|
||||
CONFIG_ZCRYPT=m
|
||||
|
||||
CONFIG_AFIUCV=m
|
||||
CONFIG_S390_PRNG=m
|
||||
|
||||
CONFIG_S390_VMUR=m
|
||||
|
||||
# CONFIG_THERMAL is not set
|
||||
|
||||
CONFIG_CTCM=m
|
||||
CONFIG_QETH_L2=m
|
||||
CONFIG_QETH_L3=m
|
||||
CONFIG_CRYPTO_SHA512_S390=m
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
CONFIG_KVM=m
|
||||
# CONFIG_KVM_S390_UCONTROL is not set
|
||||
CONFIG_S390_GUEST=y
|
||||
CONFIG_VIRTIO_CONSOLE=y
|
||||
|
||||
|
||||
CONFIG_MEMORY_HOTPLUG=y
|
||||
CONFIG_MEMORY_HOTREMOVE=y
|
||||
CONFIG_CHSC_SCH=m
|
||||
|
||||
# drivers/isdn/hardware/mISDN/hfcmulti.c:5255:2: error: #error "not running on big endian machines now"
|
||||
# CONFIG_MISDN_HFCMULTI is not set
|
||||
|
||||
CONFIG_HVC_IUCV=y
|
||||
|
||||
CONFIG_RCU_FANOUT=64
|
||||
CONFIG_RCU_FANOUT_LEAF=16
|
||||
|
||||
# CONFIG_SUSPEND is not set
|
||||
|
||||
CONFIG_SMSGIUCV_EVENT=m
|
||||
|
||||
# CONFIG_PREEMPT_TRACER is not set
|
||||
|
||||
CONFIG_VMCP=y
|
||||
|
||||
|
||||
CONFIG_SCHED_MC=y
|
||||
CONFIG_SCHED_BOOK=y
|
||||
CONFIG_SCHED_TOPOLOGY=y
|
||||
|
||||
# CONFIG_WARN_DYNAMIC_STACK is not set
|
||||
|
||||
CONFIG_CRYPTO_GHASH_S390=m
|
||||
|
||||
# CONFIG_TRANSPARENT_HUGEPAGE is not set
|
||||
CONFIG_SCM_BUS=y
|
||||
CONFIG_EADM_SCH=m
|
||||
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=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
|
||||
# CONFIG_INPUT_KEYBOARD is not set
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_INPUT_JOYSTICK is not set
|
||||
# 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
|
||||
# CONFIG_AUXDISPLAY is not set
|
||||
# CONFIG_POWER_SUPPLY is not set
|
||||
# CONFIG_STAGING is not set
|
||||
# CONFIG_MEMSTICK is not set
|
||||
# CONFIG_MEDIA_SUPPORT is not set
|
||||
# CONFIG_USB_SUPPORT is not set
|
||||
# CONFIG_DRM is not set
|
||||
# CONFIG_SOUND is not set
|
||||
# CONFIG_DW_DMAC is not set
|
||||
# CONFIG_I2C is not set
|
||||
# CONFIG_I2C_SMBUS is not set
|
||||
# CONFIG_I2C_STUB is not set
|
||||
# CONFIG_I2C_HELPER_AUTO is not set
|
||||
# CONFIG_I2C_PARPORT is not set
|
||||
# CONFIG_I2C_PARPORT_LIGHT is not set
|
||||
# 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
|
||||
# CONFIG_NET_VENDOR_ARC is not set
|
||||
# CONFIG_NET_VENDOR_INTEL is not set
|
||||
# CONFIG_NET_VENDOR_MARVELL is not set
|
||||
# CONFIG_NET_VENDOR_NATSEMI is not set
|
||||
# CONFIG_SH_ETH is not set
|
||||
# CONFIG_NET_VENDOR_VIA is not set
|
||||
# CONFIG_IEEE802154_DRIVERS is not set
|
||||
|
||||
# CONFIG_FMC is not set
|
||||
|
||||
CONFIG_MLX4_EN=m
|
||||
CONFIG_MLX4_EN_DCB=y
|
||||
CONFIG_MLX4_EN_VXLAN=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
|
|
@ -0,0 +1,221 @@
|
|||
# CONFIG_64BIT is not set
|
||||
|
||||
# CONFIG_X86_32_NON_STANDARD is not set
|
||||
|
||||
# CONFIG_X86_GOLDFISH is not set
|
||||
CONFIG_X86_BIGSMP=y
|
||||
# CONFIG_X86_RDC321X is not set
|
||||
# CONFIG_M486 is not set
|
||||
# CONFIG_M586 is not set
|
||||
# CONFIG_M586TSC is not set
|
||||
# CONFIG_M586MMX is not set
|
||||
CONFIG_M686=y
|
||||
# CONFIG_MPENTIUMII is not set
|
||||
# CONFIG_MPENTIUMIII is not set
|
||||
# CONFIG_MPENTIUMM is not set
|
||||
# CONFIG_MPENTIUM4 is not set
|
||||
# CONFIG_MK6 is not set
|
||||
# CONFIG_MK7 is not set
|
||||
# CONFIG_MK8 is not set
|
||||
# CONFIG_MCRUSOE is not set
|
||||
# CONFIG_MWINCHIPC6 is not set
|
||||
# CONFIG_MWINCHIP3D is not set
|
||||
# CONFIG_MCYRIXIII is not set
|
||||
# CONFIG_MVIAC3_2 is not set
|
||||
# CONFIG_STA2X11 is not set
|
||||
|
||||
CONFIG_NR_CPUS=32
|
||||
CONFIG_X86_GENERIC=y
|
||||
# CONFIG_X86_PPRO_FENCE is not set
|
||||
|
||||
CONFIG_TOSHIBA=m
|
||||
|
||||
CONFIG_SONYPI=m
|
||||
CONFIG_SONYPI_COMPAT=y
|
||||
|
||||
# CONFIG_NUMA is not set
|
||||
|
||||
# CONFIG_NOHIGHMEM is not set
|
||||
CONFIG_HIGHMEM4G=y
|
||||
# CONFIG_HIGHMEM64G is not set
|
||||
CONFIG_HIGHMEM=y
|
||||
CONFIG_HIGHPTE=y
|
||||
|
||||
# CONFIG_MATH_EMULATION is not set
|
||||
|
||||
CONFIG_FB_GEODE=y
|
||||
CONFIG_FB_GEODE_LX=y
|
||||
CONFIG_FB_GEODE_GX=y
|
||||
# CONFIG_FB_GEODE_GX1 is not set
|
||||
|
||||
CONFIG_FB_SSD1307=m
|
||||
|
||||
# CONFIG_PCI_GOBIOS is not set
|
||||
# CONFIG_PCI_GODIRECT is not set
|
||||
# CONFIG_PCI_GOMMCONFIG is not set
|
||||
CONFIG_PCI_GOANY=y
|
||||
|
||||
CONFIG_IBM_ASM=m
|
||||
|
||||
#
|
||||
# APM (Advanced Power Management) BIOS Support
|
||||
#
|
||||
CONFIG_APM=y
|
||||
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
|
||||
# CONFIG_APM_DO_ENABLE is not set
|
||||
CONFIG_APM_CPU_IDLE=y
|
||||
# CONFIG_APM_DISPLAY_BLANK is not set
|
||||
# CONFIG_APM_ALLOW_INTS is not set
|
||||
|
||||
|
||||
# CONFIG_X86_POWERNOW_K6 is not set
|
||||
CONFIG_X86_POWERNOW_K7=y
|
||||
# CONFIG_X86_GX_SUSPMOD is not set
|
||||
CONFIG_X86_SPEEDSTEP_ICH=y
|
||||
CONFIG_X86_SPEEDSTEP_SMI=y
|
||||
CONFIG_X86_SPEEDSTEP_LIB=y
|
||||
# CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK is not set
|
||||
CONFIG_X86_LONGRUN=y
|
||||
# CONFIG_X86_LONGHAUL is not set
|
||||
# CONFIG_X86_CPUFREQ_NFORCE2 is not set
|
||||
# e_powersaver is dangerous
|
||||
# CONFIG_X86_E_POWERSAVER is not set
|
||||
|
||||
CONFIG_X86_HT=y
|
||||
|
||||
|
||||
# CONFIG_4KSTACKS is not set
|
||||
|
||||
CONFIG_PCI_DIRECT=y
|
||||
|
||||
# CONFIG_TRANSPARENT_HUGEPAGE is not set
|
||||
|
||||
# SHPC has half-arsed PCI probing, which makes it load on too many systems
|
||||
# CONFIG_HOTPLUG_PCI_SHPC is not set
|
||||
|
||||
CONFIG_I2C_ALI1535=m
|
||||
CONFIG_I2C_ALI15X3=m
|
||||
CONFIG_I2C_ALI1563=m
|
||||
CONFIG_I2C_SIS5595=m
|
||||
CONFIG_I2C_SIS630=m
|
||||
|
||||
CONFIG_SCx200_ACB=m
|
||||
|
||||
# CONFIG_X86_REBOOTFIXUPS is not set
|
||||
|
||||
CONFIG_PC8736x_GPIO=m
|
||||
# CONFIG_NSC_GPIO is not set
|
||||
CONFIG_GPIO_SCH=m
|
||||
|
||||
CONFIG_HW_RANDOM_GEODE=m
|
||||
|
||||
CONFIG_TC1100_WMI=m
|
||||
|
||||
CONFIG_IB700_WDT=m
|
||||
|
||||
CONFIG_PHYSICAL_ALIGN=0x400000
|
||||
CONFIG_PHYSICAL_START=0x400000
|
||||
|
||||
# CONFIG_KEXEC_JUMP is not set
|
||||
|
||||
CONFIG_CRYPTO_AES_586=y
|
||||
CONFIG_CRYPTO_DEV_GEODE=m
|
||||
CONFIG_CRYPTO_TWOFISH_586=m
|
||||
|
||||
CONFIG_VIDEO_CAFE_CCIC=m
|
||||
|
||||
CONFIG_XEN_MAX_DOMAIN_MEMORY=8
|
||||
|
||||
CONFIG_MTD_NAND_CAFE=m
|
||||
|
||||
CONFIG_LBDAF=y
|
||||
|
||||
# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
|
||||
|
||||
|
||||
CONFIG_OLPC=y
|
||||
CONFIG_BATTERY_OLPC=y
|
||||
CONFIG_MOUSE_PS2_OLPC=y
|
||||
CONFIG_OLPC_XO1_PM=y
|
||||
CONFIG_OLPC_XO15_SCI=y
|
||||
CONFIG_OLPC_XO1_RTC=y
|
||||
CONFIG_OLPC_XO1_SCI=y
|
||||
# CONFIG_ALIX is not set
|
||||
# staging
|
||||
# CONFIG_FB_OLPC_DCON is not set
|
||||
|
||||
# CONFIG_SPARSE_IRQ is not set
|
||||
|
||||
CONFIG_RCU_FANOUT=32
|
||||
|
||||
# CONFIG_X86_ANCIENT_MCE is not set
|
||||
|
||||
|
||||
CONFIG_I2C_PXA=m
|
||||
|
||||
# CONFIG_INTEL_TXT is not set
|
||||
|
||||
CONFIG_GEODE_WDT=m
|
||||
CONFIG_CS5535_MFGPT=m
|
||||
CONFIG_CS5535_CLOCK_EVENT_SRC=m
|
||||
|
||||
CONFIG_LEDS_INTEL_SS4200=m
|
||||
|
||||
CONFIG_OLPC_XO1=m
|
||||
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_SERIAL_OF_PLATFORM=m
|
||||
CONFIG_SERIAL_GRLIB_GAISLER_APBUART=m
|
||||
# CONFIG_MMC_SDHCI_OF is not set
|
||||
|
||||
# CONFIG_X86_INTEL_MID is not set
|
||||
# CONFIG_X86_INTEL_QUARK is not set
|
||||
|
||||
CONFIG_MFD_CS5535=m
|
||||
# CONFIG_MFD_SYSCON is not set
|
||||
|
||||
# I2O enabled only for 32-bit x86, disabled for PAE kernel
|
||||
CONFIG_I2O=m
|
||||
CONFIG_I2O_BLOCK=m
|
||||
CONFIG_I2O_SCSI=m
|
||||
CONFIG_I2O_PROC=m
|
||||
CONFIG_I2O_CONFIG=y
|
||||
CONFIG_I2O_EXT_ADAPTEC=y
|
||||
CONFIG_I2O_CONFIG_OLD_IOCTL=y
|
||||
CONFIG_I2O_BUS=m
|
||||
|
||||
CONFIG_INPUT_PWM_BEEPER=m
|
||||
CONFIG_BACKLIGHT_PWM=m
|
||||
|
||||
# CONFIG_EDAC_SBRIDGE is not set
|
||||
|
||||
# CONFIG_OF_UNITTEST is not set
|
||||
# CONFIG_OF_OVERLAY is not set
|
||||
# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
|
||||
# CONFIG_INPUT_GP2A is not set
|
||||
# CONFIG_INPUT_GPIO_TILT_POLLED is not set
|
||||
# CONFIG_GEOS is not set
|
||||
# CONFIG_NET5501 is not set
|
||||
# CONFIG_MDIO_BUS_MUX_GPIO is not set
|
||||
# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
|
||||
# CONFIG_GPIO_SODAVILLE is not set
|
||||
# CONFIG_GPIO_74XX_MMIO is not set
|
||||
# CONFIG_BACKLIGHT_OT200 is not set
|
||||
|
||||
# CONFIG_MLX5_INFINIBAND is not set
|
||||
# CONFIG_PINCTRL_SINGLE is not set
|
||||
# CONFIG_PINCTRL_BCM281XX is not set
|
||||
# CONFIG_PINCTRL_APQ8064 is not set
|
||||
# CONFIG_PINCTRL_IPQ8064 is not set
|
||||
# CONFIG_COMMON_CLK_SI570 is not set
|
||||
# CONFIG_COMMON_CLK_QCOM is not set
|
||||
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
|
|
@ -0,0 +1,553 @@
|
|||
CONFIG_UID16=y
|
||||
|
||||
CONFIG_X86_EXTENDED_PLATFORM=y
|
||||
|
||||
CONFIG_X86_GENERIC=y
|
||||
|
||||
CONFIG_HPET=y
|
||||
CONFIG_HPET_TIMER=y
|
||||
# CONFIG_HPET_MMAP is not set
|
||||
|
||||
CONFIG_I8K=m
|
||||
CONFIG_SONYPI_COMPAT=y
|
||||
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
|
||||
CONFIG_EDD=m
|
||||
# CONFIG_EDD_OFF is not set
|
||||
|
||||
CONFIG_PNP=y
|
||||
# CONFIG_PNP_DEBUG_MESSAGES is not set
|
||||
|
||||
# CONFIG_NET_SB1000 is not set
|
||||
|
||||
CONFIG_MTRR=y
|
||||
CONFIG_MTRR_SANITIZER=y
|
||||
CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0
|
||||
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_VARS=y
|
||||
CONFIG_EFIVAR_FS=y
|
||||
CONFIG_EFI_VARS_PSTORE=y
|
||||
CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=y
|
||||
CONFIG_EFI_PCDP=y
|
||||
CONFIG_FB_EFI=y
|
||||
CONFIG_EARLY_PRINTK_EFI=y
|
||||
CONFIG_EFI_RUNTIME_MAP=y
|
||||
# needs FB_SIMPLE to work correctly
|
||||
# CONFIG_X86_SYSFB is not set
|
||||
|
||||
# FIXME: 32bit only?
|
||||
# CONFIG_FB_N411 is not set
|
||||
|
||||
CONFIG_INTEL_IOMMU=y
|
||||
CONFIG_INTEL_IOMMU_FLOPPY_WA=y
|
||||
# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
|
||||
CONFIG_SCSI_ADVANSYS=m
|
||||
|
||||
CONFIG_CAPI_EICON=y
|
||||
|
||||
#
|
||||
# Kernel debugging
|
||||
#
|
||||
CONFIG_X86_MPPARSE=y
|
||||
# CONFIG_X86_VERBOSE_BOOTUP is not set
|
||||
# CONFIG_MMIOTRACE_TEST is not set
|
||||
# CONFIG_DEBUG_PER_CPU_MAPS is not set
|
||||
CONFIG_DEBUG_RODATA=y
|
||||
CONFIG_DEBUG_STACKOVERFLOW=y
|
||||
|
||||
CONFIG_ACPI=y
|
||||
CONFIG_ACPI_AC=y
|
||||
CONFIG_ACPI_BATTERY=y
|
||||
CONFIG_ACPI_BUTTON=y
|
||||
CONFIG_ACPI_CONTAINER=y
|
||||
CONFIG_ACPI_DOCK=y
|
||||
CONFIG_ACPI_FAN=y
|
||||
CONFIG_ACPI_NUMA=y
|
||||
CONFIG_ACPI_PROCESSOR=y
|
||||
CONFIG_ACPI_PROCFS=y
|
||||
CONFIG_ACPI_SBS=m
|
||||
CONFIG_ACPI_SLEEP=y
|
||||
CONFIG_ACPI_THERMAL=y
|
||||
CONFIG_ACPI_TOSHIBA=m
|
||||
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_PNPACPI=y
|
||||
CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
|
||||
CONFIG_ACPI_HED=m
|
||||
CONFIG_ACPI_APEI=y
|
||||
CONFIG_ACPI_APEI_PCIEAER=y
|
||||
CONFIG_ACPI_APEI_GHES=y
|
||||
CONFIG_ACPI_APEI_MEMORY_FAILURE=y
|
||||
# CONFIG_ACPI_APEI_EINJ is not set
|
||||
CONFIG_ACPI_IPMI=m
|
||||
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
|
||||
CONFIG_X86_PCC_CPUFREQ=m
|
||||
CONFIG_X86_POWERNOW_K8=m
|
||||
CONFIG_X86_AMD_FREQ_SENSITIVITY=m
|
||||
CONFIG_X86_P4_CLOCKMOD=m
|
||||
# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
|
||||
|
||||
#
|
||||
# various x86 specific drivers
|
||||
#
|
||||
CONFIG_NVRAM=y
|
||||
CONFIG_CRYPTO_DEV_PADLOCK=m
|
||||
CONFIG_CRYPTO_DEV_PADLOCK_AES=m
|
||||
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
|
||||
|
||||
CONFIG_PCI_MMCONFIG=y
|
||||
CONFIG_PCI_BIOS=y
|
||||
|
||||
CONFIG_HOTPLUG_PCI=y
|
||||
CONFIG_HOTPLUG_PCI_COMPAQ=m
|
||||
# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set
|
||||
CONFIG_HOTPLUG_PCI_IBM=m
|
||||
# CONFIG_HOTPLUG_PCI_CPCI is not set
|
||||
|
||||
CONFIG_IPW2100=m
|
||||
CONFIG_IPW2100_MONITOR=y
|
||||
CONFIG_IPW2200=m
|
||||
CONFIG_IPW2200_MONITOR=y
|
||||
CONFIG_IPW2200_RADIOTAP=y
|
||||
CONFIG_IPW2200_PROMISCUOUS=y
|
||||
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
|
||||
CONFIG_I2C_I801=m
|
||||
CONFIG_I2C_ISCH=m
|
||||
CONFIG_I2C_ISMT=m
|
||||
CONFIG_I2C_NFORCE2=m
|
||||
CONFIG_I2C_NFORCE2_S4985=m
|
||||
CONFIG_I2C_PIIX4=m
|
||||
CONFIG_I2C_SIS96X=m
|
||||
CONFIG_I2C_VIA=m
|
||||
CONFIG_I2C_VIAPRO=m
|
||||
CONFIG_I2C_DESIGNWARE_CORE=m
|
||||
CONFIG_I2C_DESIGNWARE_PLATFORM=m
|
||||
|
||||
#rhbz 997149
|
||||
# CONFIG_DELL_RBU is not set
|
||||
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
|
||||
CONFIG_EDAC_E7XXX=m
|
||||
CONFIG_EDAC_E752X=m
|
||||
CONFIG_EDAC_I82860=m
|
||||
CONFIG_EDAC_I82875P=m
|
||||
CONFIG_EDAC_I82975X=m
|
||||
CONFIG_EDAC_I3000=m
|
||||
CONFIG_EDAC_I3200=m
|
||||
CONFIG_EDAC_I5000=m
|
||||
CONFIG_EDAC_I5100=m
|
||||
CONFIG_EDAC_I5400=m
|
||||
CONFIG_EDAC_I7300=m
|
||||
CONFIG_EDAC_I7CORE=m
|
||||
CONFIG_EDAC_R82600=m
|
||||
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
|
||||
|
||||
CONFIG_TCG_INFINEON=m
|
||||
CONFIG_TCG_CRB=m
|
||||
|
||||
CONFIG_HW_RANDOM_INTEL=m
|
||||
CONFIG_HW_RANDOM_AMD=m
|
||||
CONFIG_HW_RANDOM_VIA=m
|
||||
|
||||
# CONFIG_COMPAT_VDSO is not set
|
||||
|
||||
CONFIG_X86_PLATFORM_DEVICES=y
|
||||
|
||||
CONFIG_AMILO_RFKILL=m
|
||||
CONFIG_ASUS_LAPTOP=m
|
||||
CONFIG_COMPAL_LAPTOP=m
|
||||
CONFIG_DELL_LAPTOP=m
|
||||
CONFIG_CHROME_PLATFORMS=y
|
||||
CONFIG_CHROMEOS_LAPTOP=m
|
||||
CONFIG_CHROMEOS_PSTORE=m
|
||||
CONFIG_EEEPC_LAPTOP=m
|
||||
CONFIG_FUJITSU_TABLET=m
|
||||
CONFIG_FUJITSU_LAPTOP=m
|
||||
# CONFIG_FUJITSU_LAPTOP_DEBUG is not set
|
||||
CONFIG_IDEAPAD_LAPTOP=m
|
||||
CONFIG_MSI_LAPTOP=m
|
||||
CONFIG_PANASONIC_LAPTOP=m
|
||||
CONFIG_SAMSUNG_LAPTOP=m
|
||||
CONFIG_SONY_LAPTOP=m
|
||||
CONFIG_TOPSTAR_LAPTOP=m
|
||||
|
||||
CONFIG_ACPI_WMI=m
|
||||
CONFIG_ACER_WMI=m
|
||||
CONFIG_ACERHDF=m
|
||||
CONFIG_ALIENWARE_WMI=m
|
||||
CONFIG_ASUS_WMI=m
|
||||
CONFIG_ASUS_NB_WMI=m
|
||||
CONFIG_HP_WIRELESS=m
|
||||
CONFIG_HP_WMI=m
|
||||
# CONFIG_INTEL_SCU_IPC is not set
|
||||
CONFIG_DELL_WMI=m
|
||||
CONFIG_DELL_WMI_AIO=m
|
||||
CONFIG_DELL_SMO8800=m
|
||||
CONFIG_EEEPC_WMI=m
|
||||
CONFIG_INTEL_OAKTRAIL=m
|
||||
CONFIG_SAMSUNG_Q10=m
|
||||
CONFIG_APPLE_GMUX=m
|
||||
CONFIG_XO15_EBOOK=m
|
||||
CONFIG_INTEL_RST=m
|
||||
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_VIA_WDT=m
|
||||
CONFIG_IE6XX_WDT=m
|
||||
|
||||
CONFIG_CRASH_DUMP=y
|
||||
CONFIG_PROC_VMCORE=y
|
||||
CONFIG_CRASH=m
|
||||
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
CONFIG_KVM=m
|
||||
CONFIG_KVM_INTEL=m
|
||||
CONFIG_KVM_AMD=m
|
||||
CONFIG_KVM_DEVICE_ASSIGNMENT=y
|
||||
CONFIG_LGUEST=m
|
||||
CONFIG_LGUEST_GUEST=y
|
||||
|
||||
CONFIG_HYPERVISOR_GUEST=y
|
||||
CONFIG_PARAVIRT=y
|
||||
CONFIG_PARAVIRT_TIME_ACCOUNTING=y
|
||||
# CONFIG_PARAVIRT_DEBUG is not set
|
||||
|
||||
# PARAVIRT_SPINLOCKS has a 5% perf hit on native hw (see kconfig)
|
||||
# CONFIG_PARAVIRT_SPINLOCKS is not set
|
||||
|
||||
CONFIG_KVM_GUEST=y
|
||||
CONFIG_KVM_MMU_AUDIT=y # default $x would be nice...
|
||||
# CONFIG_KVM_DEBUG_FS is not set
|
||||
|
||||
CONFIG_XEN=y
|
||||
# CONFIG_XEN_DEBUG is not set
|
||||
CONFIG_XEN_BALLOON=y
|
||||
CONFIG_XEN_SCRUB_PAGES=y
|
||||
CONFIG_XEN_SAVE_RESTORE=y
|
||||
CONFIG_HVC_XEN=y
|
||||
CONFIG_HVC_XEN_FRONTEND=y
|
||||
CONFIG_XEN_FBDEV_FRONTEND=y
|
||||
CONFIG_XEN_BLKDEV_FRONTEND=m
|
||||
CONFIG_XEN_NETDEV_FRONTEND=m
|
||||
CONFIG_XEN_NETDEV_BACKEND=m
|
||||
CONFIG_XEN_WDT=m
|
||||
CONFIG_XEN_GRANT_DEV_ALLOC=m
|
||||
CONFIG_XEN_PCIDEV_FRONTEND=m
|
||||
CONFIG_XENFS=m
|
||||
CONFIG_XEN_COMPAT_XENFS=y
|
||||
CONFIG_XEN_BACKEND=y
|
||||
CONFIG_XEN_BLKDEV_BACKEND=m
|
||||
CONFIG_XEN_DEBUG_FS=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
|
||||
|
||||
CONFIG_CPU_IDLE=y
|
||||
# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set
|
||||
# CONFIG_CPU_IDLE_GOV_LADDER is not set
|
||||
CONFIG_CPU_IDLE_GOV_MENU=y
|
||||
|
||||
CONFIG_THINKPAD_ACPI=m
|
||||
# CONFIG_THINKPAD_ACPI_DEBUG is not set
|
||||
# CONFIG_THINKPAD_ACPI_DEBUGFACILITIES is not set
|
||||
CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
|
||||
CONFIG_THINKPAD_ACPI_VIDEO=y
|
||||
CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y
|
||||
# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
|
||||
|
||||
CONFIG_MACINTOSH_DRIVERS=y
|
||||
|
||||
CONFIG_DMIID=y
|
||||
CONFIG_DMI_SYSFS=y
|
||||
|
||||
CONFIG_ISCSI_IBFT_FIND=y
|
||||
CONFIG_ISCSI_IBFT=m
|
||||
|
||||
CONFIG_DMADEVICES=y
|
||||
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
|
||||
|
||||
CONFIG_HP_WATCHDOG=m
|
||||
CONFIG_NV_TCO=m
|
||||
CONFIG_SP5100_TCO=m
|
||||
|
||||
# CONFIG_NO_BOOTMEM is not set
|
||||
|
||||
# CONFIG_MEMTEST is not set
|
||||
# CONFIG_DEBUG_TLBFLUSH is not set
|
||||
# CONFIG_MAXSMP is not set
|
||||
|
||||
|
||||
CONFIG_HP_ILO=m
|
||||
|
||||
CONFIG_BACKLIGHT_APPLE=m
|
||||
|
||||
|
||||
CONFIG_X86_CHECK_BIOS_CORRUPTION=y
|
||||
|
||||
# CONFIG_CMDLINE_BOOL is not set
|
||||
|
||||
|
||||
CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
|
||||
|
||||
|
||||
# CONFIG_IOMMU_STRESS is not set
|
||||
|
||||
CONFIG_X86_MCE=y
|
||||
CONFIG_X86_MCE_INTEL=y
|
||||
CONFIG_X86_MCE_AMD=y
|
||||
CONFIG_X86_MCE_INJECT=m
|
||||
|
||||
CONFIG_SFI=y
|
||||
|
||||
CONFIG_I2C_SCMI=m
|
||||
CONFIG_SBC_FITPC2_WATCHDOG=m
|
||||
|
||||
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
|
||||
CONFIG_LPC_ICH=m
|
||||
|
||||
CONFIG_GPIO_ICH=m
|
||||
# CONFIG_GPIO_LYNXPOINT 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_INTEL_IDLE=y
|
||||
|
||||
# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
|
||||
CONFIG_F71808E_WDT=m
|
||||
CONFIG_HPWDT_NMI_DECODING=y
|
||||
# CONFIG_MFD_TPS6586X is not set
|
||||
# CONFIG_INTEL_MID_DMAC is not set
|
||||
# CONFIG_GPIO_INTEL_MID is not set
|
||||
CONFIG_PCH_DMA=m
|
||||
CONFIG_INTEL_IPS=m
|
||||
# CONFIG_IBM_RTL is not set
|
||||
|
||||
CONFIG_VIDEO_VIA_CAMERA=m
|
||||
|
||||
CONFIG_IRQ_TIME_ACCOUNTING=y
|
||||
CONFIG_X86_RESERVE_LOW=64
|
||||
|
||||
# CONFIG_IRQ_DOMAIN_DEBUG is not set
|
||||
|
||||
CONFIG_PCH_GBE=m
|
||||
CONFIG_PCH_PHUB=m
|
||||
|
||||
CONFIG_CRYPTO_AES_NI_INTEL=y
|
||||
CONFIG_CRYPTO_SERPENT_SSE2_586=m
|
||||
CONFIG_CRYPTO_CRC32_PCLMUL=m
|
||||
|
||||
CONFIG_HP_ACCEL=m
|
||||
|
||||
# CONFIG_RAPIDIO is not set
|
||||
|
||||
CONFIG_SCHED_SMT=y
|
||||
CONFIG_CC_STACKPROTECTOR=y
|
||||
CONFIG_CC_STACKPROTECTOR_STRONG=y
|
||||
CONFIG_RELOCATABLE=y
|
||||
# CONFIG_RANDOMIZE_BASE is not set # revisit this
|
||||
|
||||
CONFIG_HYPERV=m
|
||||
CONFIG_HYPERV_UTILS=m
|
||||
CONFIG_HID_HYPERV_MOUSE=m
|
||||
CONFIG_HYPERV_NET=m
|
||||
CONFIG_HYPERV_STORAGE=m
|
||||
CONFIG_HYPERV_BALLOON=m
|
||||
CONFIG_FB_HYPERV=m
|
||||
CONFIG_HYPERV_KEYBOARD=m
|
||||
|
||||
# Depends on HOTPLUG_PCI_PCIE
|
||||
CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
|
||||
|
||||
CONFIG_DRM_GMA500=m
|
||||
# CONFIG_DRM_GMA600 is not set
|
||||
CONFIG_DRM_GMA3600=y
|
||||
|
||||
CONFIG_RCU_FANOUT_LEAF=16
|
||||
|
||||
CONFIG_INTEL_MEI=m
|
||||
CONFIG_INTEL_MEI_ME=m
|
||||
CONFIG_INTEL_MEI_TXE=m
|
||||
|
||||
CONFIG_NFC_MEI_PHY=m
|
||||
CONFIG_NFC_PN544_MEI=m
|
||||
CONFIG_NFC_MICROREAD_MEI=m
|
||||
|
||||
# Maybe enable in debug kernels?
|
||||
# CONFIG_DEBUG_NMI_SELFTEST is not set
|
||||
|
||||
# CONFIG_X86_GOLDFISH is not set
|
||||
|
||||
CONFIG_X86_INTEL_LPSS=y
|
||||
|
||||
# CONFIG_X86_AMD_PLATFORM_DEVICE is not set
|
||||
|
||||
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_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
|
||||
|
||||
|
||||
|
||||
# CONFIG_INTEL_POWERCLAMP is not set
|
||||
CONFIG_X86_PKG_TEMP_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
|
||||
|
||||
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
|
||||
CONFIG_MODULE_SIG_ALL=y
|
||||
# CONFIG_MODULE_SIG_SHA1 is not set
|
||||
CONFIG_MODULE_SIG_SHA256=y
|
||||
# CONFIG_MODULE_SIG_FORCE is not set
|
||||
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
|
||||
CONFIG_VFIO_PCI_VGA=y
|
||||
|
||||
# CONFIG_NTB is not set
|
|
@ -0,0 +1,189 @@
|
|||
CONFIG_64BIT=y
|
||||
|
||||
# CONFIG_X86_X32 is not set
|
||||
# CONFIG_MK8 is not set
|
||||
# CONFIG_MPSC is not set
|
||||
CONFIG_GENERIC_CPU=y
|
||||
|
||||
# CONFIG_X86_VSMP is not set
|
||||
CONFIG_X86_UV=y
|
||||
CONFIG_UV_MMTIMER=m
|
||||
CONFIG_NUMA=y
|
||||
CONFIG_AMD_NUMA=y
|
||||
CONFIG_X86_64_ACPI_NUMA=y
|
||||
# CONFIG_NUMA_EMU is not set
|
||||
# CONFIG_X86_NUMACHIP is not set
|
||||
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
|
||||
CONFIG_NUMA_BALANCING=y
|
||||
|
||||
# https://lists.fedoraproject.org/pipermail/kernel/2013-November/004601.html
|
||||
CONFIG_NR_CPUS=1024
|
||||
CONFIG_PHYSICAL_START=0x1000000
|
||||
CONFIG_PHYSICAL_ALIGN=0x1000000
|
||||
|
||||
# https://lists.fedoraproject.org/pipermail/kernel/2013-December/004753.html
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=65536
|
||||
|
||||
# enable the 32-bit entry point for Baytrail
|
||||
CONFIG_EFI_MIXED=y
|
||||
|
||||
CONFIG_IA32_EMULATION=y
|
||||
# CONFIG_IA32_AOUT is not set
|
||||
|
||||
CONFIG_AMD_IOMMU=y
|
||||
CONFIG_AMD_IOMMU_STATS=y
|
||||
CONFIG_AMD_IOMMU_V2=m
|
||||
# CONFIG_IOMMU_DEBUG is not set
|
||||
CONFIG_SWIOTLB=y
|
||||
# CONFIG_CALGARY_IOMMU is not set
|
||||
# CONFIG_GART_IOMMU is not set
|
||||
|
||||
CONFIG_TRANSPARENT_HUGEPAGE=y
|
||||
CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y
|
||||
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
|
||||
|
||||
# CONFIG_INTEL_SCU_IPC is not set
|
||||
|
||||
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
|
||||
CONFIG_CRYPTO_SALSA20_X86_64=m
|
||||
CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
|
||||
CONFIG_CRYPTO_SHA1_SSSE3=m
|
||||
CONFIG_CRYPTO_SHA256_SSSE3=m
|
||||
CONFIG_CRYPTO_SHA512_SSSE3=m
|
||||
CONFIG_CRYPTO_BLOWFISH_X86_64=m
|
||||
CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m
|
||||
CONFIG_CRYPTO_CAMELLIA_X86_64=m
|
||||
CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m
|
||||
CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m
|
||||
CONFIG_CRYPTO_CAST5_AVX_X86_64=m
|
||||
CONFIG_CRYPTO_CAST6_AVX_X86_64=m
|
||||
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_DES3_EDE_X86_64=m
|
||||
# staging crypto
|
||||
# CONFIG_CRYPTO_SKEIN is not set
|
||||
|
||||
# CONFIG_I2C_ALI1535 is not set
|
||||
# CONFIG_I2C_ALI1563 is not set
|
||||
# CONFIG_I2C_ALI15X3 is not set
|
||||
# CONFIG_I2C_SIS5595 is not set
|
||||
# CONFIG_I2C_SIS630 is not set
|
||||
|
||||
CONFIG_EDAC_AMD64=m
|
||||
# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set
|
||||
CONFIG_EDAC_SBRIDGE=m
|
||||
|
||||
# CONFIG_PC8736x_GPIO is not set
|
||||
|
||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
|
||||
CONFIG_SPARSEMEM_MANUAL=y
|
||||
CONFIG_SPARSEMEM=y
|
||||
CONFIG_HAVE_MEMORY_PRESENT=y
|
||||
CONFIG_SPARSEMEM_EXTREME=y
|
||||
CONFIG_SPARSEMEM_VMEMMAP=y
|
||||
# CONFIG_MOVABLE_NODE is not set
|
||||
CONFIG_MEMORY_HOTPLUG=y
|
||||
# CONFIG_ARCH_MEMORY_PROBE is not set
|
||||
# CONFIG_MEMORY_HOTREMOVE is not set
|
||||
|
||||
# CONFIG_BLK_DEV_CMD640 is not set
|
||||
# CONFIG_BLK_DEV_RZ1000 is not set
|
||||
# CONFIG_BLK_DEV_TRIFLEX is not set
|
||||
# CONFIG_BLK_DEV_CS5520 is not set
|
||||
# CONFIG_BLK_DEV_CS5530 is not set
|
||||
# CONFIG_BLK_DEV_CS5535 is not set
|
||||
|
||||
CONFIG_SGI_IOC4=m
|
||||
CONFIG_SGI_XP=m
|
||||
CONFIG_SGI_GRU=m
|
||||
# CONFIG_SGI_GRU_DEBUG is not set
|
||||
|
||||
# CONFIG_VIDEO_CAFE_CCIC is not set
|
||||
|
||||
CONFIG_XEN_MAX_DOMAIN_MEMORY=128
|
||||
# CONFIG_XEN_BALLOON_MEMORY_HOTPLUG is not set
|
||||
CONFIG_XEN_DEV_EVTCHN=m
|
||||
CONFIG_XEN_SYS_HYPERVISOR=y
|
||||
# CONFIG_XEN_MCE_LOG is not set
|
||||
# CONFIG_XEN_STUB is not set
|
||||
# CONFIG_XEN_PVH is not set
|
||||
|
||||
CONFIG_PROVIDE_OHCI1394_DMA_INIT=y
|
||||
|
||||
CONFIG_FRAME_WARN=2048
|
||||
|
||||
CONFIG_NODES_SHIFT=9
|
||||
|
||||
CONFIG_DIRECT_GBPAGES=y
|
||||
|
||||
CONFIG_X86_MPPARSE=y
|
||||
|
||||
CONFIG_I7300_IDLE=m
|
||||
CONFIG_IRQ_REMAP=y
|
||||
|
||||
CONFIG_X86_X2APIC=y
|
||||
CONFIG_SPARSE_IRQ=y
|
||||
|
||||
CONFIG_RCU_FANOUT=64
|
||||
# CONFIG_RCU_USER_QS is not set
|
||||
|
||||
CONFIG_INTEL_TXT=y
|
||||
|
||||
|
||||
CONFIG_FUNCTION_GRAPH_TRACER=y
|
||||
|
||||
CONFIG_I7300_IDLE=m
|
||||
|
||||
# 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
|
||||
|
||||
# 10GigE
|
||||
#
|
||||
CONFIG_IP1000=m
|
||||
CONFIG_MLX4_EN=m
|
||||
CONFIG_MLX4_EN_DCB=y
|
||||
CONFIG_MLX4_EN_VXLAN=y
|
||||
# CONFIG_MLX4_DEBUG is not set
|
||||
CONFIG_SFC=m
|
||||
CONFIG_SFC_MCDI_MON=y
|
||||
CONFIG_SFC_SRIOV=y
|
||||
CONFIG_SFC_MTD=y
|
||||
# Override MTD stuff because SFC_MTD needs it
|
||||
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
|
|
@ -0,0 +1,509 @@
|
|||
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-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-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-driver.h
|
||||
|
||||
diff --git a/arch/arm/include/asm/crash-driver.h b/arch/arm/include/asm/crash-driver.h
|
||||
new file mode 100644
|
||||
index 000000000000..06e7ae916601
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,6 @@
|
||||
+#ifndef _ARM_CRASH_H
|
||||
+#define _ARM_CRASH_H
|
||||
+
|
||||
+#include <asm-generic/crash-driver.h>
|
||||
+
|
||||
+#endif /* _ARM_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 000000000000..43b26da0c5d6
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,6 @@
|
||||
+#ifndef _ARM64_CRASH_H
|
||||
+#define _ARM64_CRASH_H
|
||||
+
|
||||
+#include <asm-generic/crash-driver.h>
|
||||
+
|
||||
+#endif /* _ARM64_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 000000000000..404bcb93c112
|
||||
--- /dev/null
|
||||
+++ 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-driver.h
|
||||
+ *
|
||||
+ * Copyright (c) 2004 Red Hat, Inc. All rights reserved.
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or modify
|
||||
+ * it under the terms of the GNU General Public License as published by
|
||||
+ * the Free Software Foundation; either version 2, or (at your option)
|
||||
+ * any later version.
|
||||
+ *
|
||||
+ * This program is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+ * GNU General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU General Public License
|
||||
+ * along with this program; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+#ifdef __KERNEL__
|
||||
+
|
||||
+#include <linux/efi.h>
|
||||
+#include <linux/mm.h>
|
||||
+#include <asm/mmzone.h>
|
||||
+
|
||||
+static inline void *
|
||||
+map_virtual(u64 offset, struct page **pp)
|
||||
+{
|
||||
+ struct page *page;
|
||||
+ unsigned long pfn;
|
||||
+ u32 type;
|
||||
+
|
||||
+ if (REGION_NUMBER(offset) == 5) {
|
||||
+ char byte;
|
||||
+
|
||||
+ if (__get_user(byte, (char *)offset) == 0)
|
||||
+ return (void *)offset;
|
||||
+ else
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ switch (type = efi_mem_type(offset))
|
||||
+ {
|
||||
+ case EFI_LOADER_CODE:
|
||||
+ case EFI_LOADER_DATA:
|
||||
+ case EFI_BOOT_SERVICES_CODE:
|
||||
+ case EFI_BOOT_SERVICES_DATA:
|
||||
+ case EFI_CONVENTIONAL_MEMORY:
|
||||
+ break;
|
||||
+
|
||||
+ default:
|
||||
+ printk(KERN_INFO
|
||||
+ "crash memory driver: invalid memory type for %lx: %d\n",
|
||||
+ offset, type);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ pfn = offset >> PAGE_SHIFT;
|
||||
+
|
||||
+ if (!pfn_valid(pfn)) {
|
||||
+ printk(KERN_INFO
|
||||
+ "crash memory driver: invalid pfn: %lx )\n", pfn);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ page = pfn_to_page(pfn);
|
||||
+
|
||||
+ if (!page->virtual) {
|
||||
+ printk(KERN_INFO
|
||||
+ "crash memory driver: offset: %lx page: %lx page->virtual: NULL\n",
|
||||
+ offset, (unsigned long)page);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ return (page->virtual + (offset & (PAGE_SIZE-1)));
|
||||
+}
|
||||
+
|
||||
+static inline void unmap_virtual(struct page *page)
|
||||
+{
|
||||
+ return;
|
||||
+}
|
||||
+
|
||||
+#endif /* __KERNEL__ */
|
||||
+
|
||||
+#endif /* _ASM_IA64_CRASH_H */
|
||||
diff --git a/arch/ia64/kernel/ia64_ksyms.c b/arch/ia64/kernel/ia64_ksyms.c
|
||||
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);
|
||||
#include <asm/unwind.h>
|
||||
EXPORT_SYMBOL(unw_init_running);
|
||||
|
||||
+#include <linux/efi.h>
|
||||
+EXPORT_SYMBOL_GPL(efi_mem_type);
|
||||
+
|
||||
#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-driver.h b/arch/powerpc/include/asm/crash-driver.h
|
||||
new file mode 100644
|
||||
index 000000000000..50092d965dc5
|
||||
--- /dev/null
|
||||
+++ b/arch/powerpc/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,6 @@
|
||||
+#ifndef _PPC64_CRASH_H
|
||||
+#define _PPC64_CRASH_H
|
||||
+
|
||||
+#include <asm-generic/crash-driver.h>
|
||||
+
|
||||
+#endif /* _PPC64_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 000000000000..552be5e2c571
|
||||
--- /dev/null
|
||||
+++ b/arch/s390/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,60 @@
|
||||
+#ifndef _S390_CRASH_H
|
||||
+#define _S390_CRASH_H
|
||||
+
|
||||
+#ifdef __KERNEL__
|
||||
+
|
||||
+#include <linux/mm.h>
|
||||
+#include <linux/highmem.h>
|
||||
+
|
||||
+/*
|
||||
+ * For swapped prefix pages get bounce buffer using xlate_dev_mem_ptr()
|
||||
+ */
|
||||
+static inline void *map_virtual(u64 offset, struct page **pp)
|
||||
+{
|
||||
+ struct page *page;
|
||||
+ unsigned long pfn;
|
||||
+ void *vaddr;
|
||||
+
|
||||
+ vaddr = xlate_dev_mem_ptr(offset);
|
||||
+ pfn = ((unsigned long) vaddr) >> PAGE_SHIFT;
|
||||
+ if ((unsigned long) vaddr != offset)
|
||||
+ page = pfn_to_page(pfn);
|
||||
+ else
|
||||
+ page = NULL;
|
||||
+
|
||||
+ if (!page_is_ram(pfn)) {
|
||||
+ printk(KERN_INFO
|
||||
+ "crash memory driver: !page_is_ram(pfn: %lx)\n", pfn);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ if (!pfn_valid(pfn)) {
|
||||
+ printk(KERN_INFO
|
||||
+ "crash memory driver: invalid pfn: %lx )\n", pfn);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ *pp = page;
|
||||
+ return vaddr;
|
||||
+}
|
||||
+
|
||||
+/*
|
||||
+ * Free bounce buffer if necessary
|
||||
+ */
|
||||
+static inline void unmap_virtual(struct page *page)
|
||||
+{
|
||||
+ void *vaddr;
|
||||
+
|
||||
+ if (page) {
|
||||
+ /*
|
||||
+ * Because for bounce buffers vaddr will never be 0
|
||||
+ * unxlate_dev_mem_ptr() will always free the bounce buffer.
|
||||
+ */
|
||||
+ vaddr = (void *)(page_to_pfn(page) << PAGE_SHIFT);
|
||||
+ unxlate_dev_mem_ptr(0, vaddr);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+#endif /* __KERNEL__ */
|
||||
+
|
||||
+#endif /* _S390_CRASH_H */
|
||||
diff --git a/arch/s390/mm/maccess.c b/arch/s390/mm/maccess.c
|
||||
index 2a2e35416d2f..a529181429bb 100644
|
||||
--- a/arch/s390/mm/maccess.c
|
||||
+++ b/arch/s390/mm/maccess.c
|
||||
@@ -193,6 +193,7 @@ void *xlate_dev_mem_ptr(unsigned long addr)
|
||||
put_online_cpus();
|
||||
return bounce;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(xlate_dev_mem_ptr);
|
||||
|
||||
/*
|
||||
* Free converted buffer for /dev/mem access (if necessary)
|
||||
@@ -202,3 +203,4 @@ void unxlate_dev_mem_ptr(unsigned long 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-driver.h b/arch/x86/include/asm/crash-driver.h
|
||||
new file mode 100644
|
||||
index 000000000000..fd4736ec99f5
|
||||
--- /dev/null
|
||||
+++ b/arch/x86/include/asm/crash-driver.h
|
||||
@@ -0,0 +1,6 @@
|
||||
+#ifndef _X86_CRASH_H
|
||||
+#define _X86_CRASH_H
|
||||
+
|
||||
+#include <asm-generic/crash-driver.h>
|
||||
+
|
||||
+#endif /* _X86_CRASH_H */
|
||||
diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
|
||||
index efefd12a0f7b..6a318132b7ee 100644
|
||||
--- a/drivers/char/Kconfig
|
||||
+++ b/drivers/char/Kconfig
|
||||
@@ -4,6 +4,9 @@
|
||||
|
||||
menu "Character devices"
|
||||
|
||||
+config CRASH
|
||||
+ tristate "Crash Utility memory driver"
|
||||
+
|
||||
source "drivers/tty/Kconfig"
|
||||
|
||||
config DEVKMEM
|
||||
diff --git a/drivers/char/Makefile b/drivers/char/Makefile
|
||||
index d06cde26031b..0832636fd9bc 100644
|
||||
--- a/drivers/char/Makefile
|
||||
+++ b/drivers/char/Makefile
|
||||
@@ -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 000000000000..085378a1d539
|
||||
--- /dev/null
|
||||
+++ b/drivers/char/crash.c
|
||||
@@ -0,0 +1,128 @@
|
||||
+/*
|
||||
+ * linux/drivers/char/crash.c
|
||||
+ *
|
||||
+ * Copyright (C) 2004 Dave Anderson <anderson@redhat.com>
|
||||
+ * Copyright (C) 2004 Red Hat, Inc.
|
||||
+ */
|
||||
+
|
||||
+/******************************************************************************
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or modify
|
||||
+ * it under the terms of the GNU General Public License as published by
|
||||
+ * the Free Software Foundation; either version 2, or (at your option)
|
||||
+ * any later version.
|
||||
+ *
|
||||
+ * This program is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+ * GNU General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU General Public License
|
||||
+ * along with this program; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
+ *
|
||||
+ *****************************************************************************/
|
||||
+
|
||||
+#include <linux/module.h>
|
||||
+#include <linux/types.h>
|
||||
+#include <linux/miscdevice.h>
|
||||
+#include <linux/init.h>
|
||||
+#include <asm/io.h>
|
||||
+#include <asm/uaccess.h>
|
||||
+#include <asm/types.h>
|
||||
+#include <asm/crash-driver.h>
|
||||
+
|
||||
+#define CRASH_VERSION "1.0"
|
||||
+
|
||||
+/*
|
||||
+ * These are the file operation functions that allow crash utility
|
||||
+ * access to physical memory.
|
||||
+ */
|
||||
+
|
||||
+static loff_t
|
||||
+crash_llseek(struct file * file, loff_t offset, int orig)
|
||||
+{
|
||||
+ switch (orig) {
|
||||
+ case 0:
|
||||
+ file->f_pos = offset;
|
||||
+ return file->f_pos;
|
||||
+ case 1:
|
||||
+ file->f_pos += offset;
|
||||
+ return file->f_pos;
|
||||
+ default:
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+/*
|
||||
+ * Determine the page address for an address offset value,
|
||||
+ * get a virtual address for it, and copy it out.
|
||||
+ * Accesses must fit within a page.
|
||||
+ */
|
||||
+static ssize_t
|
||||
+crash_read(struct file *file, char *buf, size_t count, loff_t *poff)
|
||||
+{
|
||||
+ void *vaddr;
|
||||
+ struct page *page;
|
||||
+ u64 offset;
|
||||
+ ssize_t read;
|
||||
+
|
||||
+ offset = *poff;
|
||||
+ if (offset >> PAGE_SHIFT != (offset+count-1) >> PAGE_SHIFT)
|
||||
+ return -EINVAL;
|
||||
+
|
||||
+ vaddr = map_virtual(offset, &page);
|
||||
+ if (!vaddr)
|
||||
+ return -EFAULT;
|
||||
+
|
||||
+ if (copy_to_user(buf, vaddr, count)) {
|
||||
+ unmap_virtual(page);
|
||||
+ return -EFAULT;
|
||||
+ }
|
||||
+ unmap_virtual(page);
|
||||
+
|
||||
+ read = count;
|
||||
+ *poff += read;
|
||||
+ return read;
|
||||
+}
|
||||
+
|
||||
+static struct file_operations crash_fops = {
|
||||
+ .owner = THIS_MODULE,
|
||||
+ .llseek = crash_llseek,
|
||||
+ .read = crash_read,
|
||||
+};
|
||||
+
|
||||
+static struct miscdevice crash_dev = {
|
||||
+ MISC_DYNAMIC_MINOR,
|
||||
+ "crash",
|
||||
+ &crash_fops
|
||||
+};
|
||||
+
|
||||
+static int __init
|
||||
+crash_init(void)
|
||||
+{
|
||||
+ int ret;
|
||||
+
|
||||
+ ret = misc_register(&crash_dev);
|
||||
+ if (ret) {
|
||||
+ printk(KERN_ERR
|
||||
+ "crash memory driver: cannot misc_register (MISC_DYNAMIC_MINOR)\n");
|
||||
+ goto out;
|
||||
+ }
|
||||
+
|
||||
+ ret = 0;
|
||||
+ printk(KERN_INFO "crash memory driver: version %s\n", CRASH_VERSION);
|
||||
+out:
|
||||
+ return ret;
|
||||
+}
|
||||
+
|
||||
+static void __exit
|
||||
+crash_cleanup_module(void)
|
||||
+{
|
||||
+ misc_deregister(&crash_dev);
|
||||
+}
|
||||
+
|
||||
+module_init(crash_init);
|
||||
+module_exit(crash_cleanup_module);
|
||||
+
|
||||
+MODULE_LICENSE("GPL");
|
||||
diff --git a/include/asm-generic/crash-driver.h b/include/asm-generic/crash-driver.h
|
||||
new file mode 100644
|
||||
index 000000000000..25ab9869d566
|
||||
--- /dev/null
|
||||
+++ b/include/asm-generic/crash-driver.h
|
||||
@@ -0,0 +1,72 @@
|
||||
+#ifndef __CRASH_H__
|
||||
+#define __CRASH_H__
|
||||
+
|
||||
+/*
|
||||
+ * include/linux/crash-driver.h
|
||||
+ *
|
||||
+ * Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or modify
|
||||
+ * it under the terms of the GNU General Public License as published by
|
||||
+ * the Free Software Foundation; either version 2, or (at your option)
|
||||
+ * any later version.
|
||||
+ *
|
||||
+ * This program is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+ * GNU General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU General Public License
|
||||
+ * along with this program; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+#ifdef __KERNEL__
|
||||
+
|
||||
+#include <linux/mm.h>
|
||||
+#include <linux/highmem.h>
|
||||
+
|
||||
+static inline void *
|
||||
+map_virtual(u64 offset, struct page **pp)
|
||||
+{
|
||||
+ struct page *page;
|
||||
+ unsigned long pfn;
|
||||
+ void *vaddr;
|
||||
+
|
||||
+ pfn = (unsigned long)(offset >> PAGE_SHIFT);
|
||||
+
|
||||
+ if (!page_is_ram(pfn)) {
|
||||
+ printk(KERN_INFO
|
||||
+ "crash memory driver: !page_is_ram(pfn: %lx)\n", pfn);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ if (!pfn_valid(pfn)) {
|
||||
+ printk(KERN_INFO
|
||||
+ "crash memory driver: invalid pfn: %lx )\n", pfn);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ page = pfn_to_page(pfn);
|
||||
+
|
||||
+ vaddr = kmap(page);
|
||||
+ if (!vaddr) {
|
||||
+ printk(KERN_INFO
|
||||
+ "crash memory driver: pfn: %lx kmap(page: %lx) failed\n",
|
||||
+ pfn, (unsigned long)page);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ *pp = page;
|
||||
+ return (vaddr + (offset & (PAGE_SIZE-1)));
|
||||
+}
|
||||
+
|
||||
+static inline void unmap_virtual(struct page *page)
|
||||
+{
|
||||
+ kunmap(page);
|
||||
+}
|
||||
+
|
||||
+#endif /* __KERNEL__ */
|
||||
+
|
||||
+#endif /* __CRASH_H__ */
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
diff --git a/init/Kconfig b/init/Kconfig
|
||||
index be8b7f5..7461760 100644
|
||||
--- a/init/Kconfig
|
||||
+++ b/init/Kconfig
|
||||
@@ -989,7 +989,7 @@ config DEBUG_BLK_CGROUP
|
||||
endif # CGROUPS
|
||||
|
||||
config CHECKPOINT_RESTORE
|
||||
- bool "Checkpoint/restore support" if EXPERT
|
||||
+ bool "Checkpoint/restore support"
|
||||
default n
|
||||
help
|
||||
Enables additional kernel features in a sake of checkpoint/restore.
|
||||
@@ -1000,7 +1000,7 @@ config CHECKPOINT_RESTORE
|
||||
If unsure, say N here.
|
||||
|
||||
menuconfig NAMESPACES
|
||||
- bool "Namespaces support" if EXPERT
|
||||
+ bool "Namespaces support"
|
||||
default !EXPERT
|
||||
help
|
||||
Provides the way to make tasks work with different objects using
|
|
@ -0,0 +1,30 @@
|
|||
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
|
||||
|
||||
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.
|
||||
---
|
||||
drivers/block/floppy.c | 3 +--
|
||||
1 files changed, 1 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
|
||||
index 90c4038..f4a0b90 100644
|
||||
--- a/drivers/block/floppy.c
|
||||
+++ b/drivers/block/floppy.c
|
||||
@@ -4619,8 +4619,7 @@ static const struct pnp_device_id floppy_pnpids[] = {
|
||||
{"PNP0700", 0},
|
||||
{}
|
||||
};
|
||||
-
|
||||
-MODULE_DEVICE_TABLE(pnp, floppy_pnpids);
|
||||
+/* MODULE_DEVICE_TABLE(pnp, floppy_pnpids); */
|
||||
|
||||
#else
|
||||
|
||||
--
|
||||
1.7.0.1
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
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
|
||||
|
||||
As those computers never had any i8042 controllers, and the
|
||||
current lookup code could potentially lock up/hang/wait for
|
||||
timeout for long periods of time.
|
||||
|
||||
Fixes intermittent hangs on boot on a MacbookAir1,1
|
||||
|
||||
Signed-off-by: Bastien Nocera <hadess@hadess.net>
|
||||
---
|
||||
drivers/input/serio/i8042.c | 22 ++++++++++++++++++++++
|
||||
1 files changed, 22 insertions(+), 0 deletions(-)
|
||||
|
||||
diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c
|
||||
index 6440a8f..4d7cf98 100644
|
||||
--- a/drivers/input/serio/i8042.c
|
||||
+++ b/drivers/input/serio/i8042.c
|
||||
@@ -1451,6 +1451,22 @@ static struct platform_driver i8042_driver = {
|
||||
.shutdown = i8042_shutdown,
|
||||
};
|
||||
|
||||
+#ifdef CONFIG_DMI
|
||||
+static struct dmi_system_id __initdata dmi_system_table[] = {
|
||||
+ {
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_BIOS_VENDOR, "Apple Computer, Inc.")
|
||||
+ },
|
||||
+ },
|
||||
+ {
|
||||
+ .matches = {
|
||||
+ DMI_MATCH(DMI_BIOS_VENDOR, "Apple Inc.")
|
||||
+ },
|
||||
+ },
|
||||
+ {}
|
||||
+};
|
||||
+#endif /*CONFIG_DMI*/
|
||||
+
|
||||
static int __init i8042_init(void)
|
||||
{
|
||||
struct platform_device *pdev;
|
||||
@@ -1458,6 +1474,12 @@ static int __init i8042_init(void)
|
||||
|
||||
dbg_init();
|
||||
|
||||
+#ifdef CONFIG_DMI
|
||||
+ /* Intel Apple Macs never have an i8042 controller */
|
||||
+ if (dmi_check_system(dmi_system_table) > 0)
|
||||
+ return -ENODEV;
|
||||
+#endif /*CONFIG_DMI*/
|
||||
+
|
||||
err = i8042_platform_init();
|
||||
if (err)
|
||||
return err;
|
||||
--
|
||||
1.7.0.1
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
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 44f2262a5553..09566acd995d 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,
|
||||
.nuclear_pageflip = 0,
|
||||
};
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue