diff options
author | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2015-02-17 11:53:09 -0200 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2015-02-17 11:53:09 -0200 |
commit | 5c9bb455b1ad5d20cc2555341989dbecfb5697a0 (patch) | |
tree | 602c0f904d74b2618ba9fbd1925283837b4c7ca6 | |
parent | 37fa573c35361676b855b460293134ff8fc0e7e9 (diff) | |
download | abslibre-5c9bb455b1ad5d20cc2555341989dbecfb5697a0.tar.gz abslibre-5c9bb455b1ad5d20cc2555341989dbecfb5697a0.tar.bz2 abslibre-5c9bb455b1ad5d20cc2555341989dbecfb5697a0.zip |
linux-libre-rt-3.18.7_gnu.rt1-1: updating version
-rw-r--r-- | kernels/linux-libre-rt/0001-Bluetooth-allocate-static-minor-for-vhci.patch | 74 | ||||
-rw-r--r-- | kernels/linux-libre-rt/0002-module-allow-multiple-calls-to-MODULE_DEVICE_TABLE-p.patch | 93 | ||||
-rw-r--r-- | kernels/linux-libre-rt/0003-module-remove-MODULE_GENERIC_TABLE.patch | 75 | ||||
-rw-r--r-- | kernels/linux-libre-rt/0006-genksyms-fix-typeof-handling.patch | 1360 | ||||
-rw-r--r-- | kernels/linux-libre-rt/3.18-rc6-48c0ad793f-loongson-community.patch (renamed from kernels/linux-libre-rt/3.14.14-a410a5e2b7-loongson-community.patch) | 4218 | ||||
-rw-r--r-- | kernels/linux-libre-rt/PKGBUILD | 53 | ||||
-rw-r--r-- | kernels/linux-libre-rt/change-default-console-loglevel.patch | 21 | ||||
-rw-r--r-- | kernels/linux-libre-rt/config.i686 | 605 | ||||
-rw-r--r-- | kernels/linux-libre-rt/config.mips64el | 676 | ||||
-rw-r--r-- | kernels/linux-libre-rt/config.x86_64 | 612 |
10 files changed, 3936 insertions, 3851 deletions
diff --git a/kernels/linux-libre-rt/0001-Bluetooth-allocate-static-minor-for-vhci.patch b/kernels/linux-libre-rt/0001-Bluetooth-allocate-static-minor-for-vhci.patch deleted file mode 100644 index 557da37ce..000000000 --- a/kernels/linux-libre-rt/0001-Bluetooth-allocate-static-minor-for-vhci.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 5d77ba2d26110c678b40fd723866a17d4036de12 Mon Sep 17 00:00:00 2001 -From: Lucas De Marchi <lucas.demarchi@intel.com> -Date: Tue, 18 Feb 2014 02:19:26 -0300 -Subject: [PATCH 01/10] Bluetooth: allocate static minor for vhci - -Commit bfacbb9 (Bluetooth: Use devname:vhci module alias for virtual HCI -driver) added the module alias to hci_vhci module so it's possible to -create the /dev/vhci node. However creating an alias without -specifying the minor doesn't allow us to create the node ahead, -triggerring module auto-load when it's first accessed. - -Starting with depmod from kmod 16 we started to warn if there's a -devname alias without specifying the major and minor. - -Let's do the same done for uhid, kvm, fuse and others, specifying a -fixed minor. In systems with systemd as the init the following will -happen: on early boot systemd will call "kmod static-nodes" to read -/lib/modules/$(uname -r)/modules.devname and then create the nodes. When -first accessed these "dead" nodes will trigger the module loading. - -Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> -Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -Signed-off-by: Marcel Holtmann <marcel@holtmann.org> ---- - Documentation/devices.txt | 1 + - drivers/bluetooth/hci_vhci.c | 3 ++- - include/linux/miscdevice.h | 1 + - 3 files changed, 4 insertions(+), 1 deletion(-) - -diff --git a/Documentation/devices.txt b/Documentation/devices.txt -index 10378cc..04356f5 100644 ---- a/Documentation/devices.txt -+++ b/Documentation/devices.txt -@@ -353,6 +353,7 @@ Your cooperation is appreciated. - 133 = /dev/exttrp External device trap - 134 = /dev/apm_bios Advanced Power Management BIOS - 135 = /dev/rtc Real Time Clock -+ 137 = /dev/vhci Bluetooth virtual HCI driver - 139 = /dev/openprom SPARC OpenBoot PROM - 140 = /dev/relay8 Berkshire Products Octal relay card - 141 = /dev/relay16 Berkshire Products ISO-16 relay card -diff --git a/drivers/bluetooth/hci_vhci.c b/drivers/bluetooth/hci_vhci.c -index 1ef6990..add1c6a 100644 ---- a/drivers/bluetooth/hci_vhci.c -+++ b/drivers/bluetooth/hci_vhci.c -@@ -359,7 +359,7 @@ static const struct file_operations vhci_fops = { - static struct miscdevice vhci_miscdev= { - .name = "vhci", - .fops = &vhci_fops, -- .minor = MISC_DYNAMIC_MINOR, -+ .minor = VHCI_MINOR, - }; - - static int __init vhci_init(void) -@@ -385,3 +385,4 @@ MODULE_DESCRIPTION("Bluetooth virtual HCI driver ver " VERSION); - MODULE_VERSION(VERSION); - MODULE_LICENSE("GPL"); - MODULE_ALIAS("devname:vhci"); -+MODULE_ALIAS_MISCDEV(VHCI_MINOR); -diff --git a/include/linux/miscdevice.h b/include/linux/miscdevice.h -index 3737f72..7bb6148 100644 ---- a/include/linux/miscdevice.h -+++ b/include/linux/miscdevice.h -@@ -23,6 +23,7 @@ - #define TEMP_MINOR 131 /* Temperature Sensor */ - #define RTC_MINOR 135 - #define EFI_RTC_MINOR 136 /* EFI Time services */ -+#define VHCI_MINOR 137 - #define SUN_OPENPROM_MINOR 139 - #define DMAPI_MINOR 140 /* DMAPI */ - #define NVRAM_MINOR 144 --- -1.9.2 - diff --git a/kernels/linux-libre-rt/0002-module-allow-multiple-calls-to-MODULE_DEVICE_TABLE-p.patch b/kernels/linux-libre-rt/0002-module-allow-multiple-calls-to-MODULE_DEVICE_TABLE-p.patch deleted file mode 100644 index 7db851cb9..000000000 --- a/kernels/linux-libre-rt/0002-module-allow-multiple-calls-to-MODULE_DEVICE_TABLE-p.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 9bc5b710f5957763d6944f38143b627d127c15ff Mon Sep 17 00:00:00 2001 -From: Tom Gundersen <teg@jklm.no> -Date: Mon, 3 Feb 2014 11:14:13 +1030 -Subject: [PATCH 02/10] module: allow multiple calls to MODULE_DEVICE_TABLE() - per module - -Commit 78551277e4df5: "Input: i8042 - add PNP modaliases" had a bug, where the -second call to MODULE_DEVICE_TABLE() overrode the first resulting in not all -the modaliases being exposed. - -This fixes the problem by including the name of the device_id table in the -__mod_*_device_table alias, allowing us to export several device_id tables -per module. - -Suggested-by: Kay Sievers <kay@vrfy.org> -Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> -Signed-off-by: Tom Gundersen <teg@jklm.no> -Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> ---- - include/linux/module.h | 2 +- - scripts/mod/file2alias.c | 14 +++++++++----- - 2 files changed, 10 insertions(+), 6 deletions(-) - -diff --git a/include/linux/module.h b/include/linux/module.h -index eaf60ff..ad18f60 100644 ---- a/include/linux/module.h -+++ b/include/linux/module.h -@@ -142,7 +142,7 @@ extern const struct gtype##_id __mod_##gtype##_table \ - #define MODULE_DESCRIPTION(_description) MODULE_INFO(description, _description) - - #define MODULE_DEVICE_TABLE(type, name) \ -- MODULE_GENERIC_TABLE(type##_device, name) -+ MODULE_GENERIC_TABLE(type##__##name##_device, name) - - /* Version of form [<epoch>:]<version>[-<extra-version>]. - * Or for CVS/RCS ID version, everything but the number is stripped. -diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c -index 25e5cb0..ce16404 100644 ---- a/scripts/mod/file2alias.c -+++ b/scripts/mod/file2alias.c -@@ -42,7 +42,7 @@ typedef unsigned char __u8; - - /* This array collects all instances that use the generic do_table */ - struct devtable { -- const char *device_id; /* name of table, __mod_<name>_device_table. */ -+ const char *device_id; /* name of table, __mod_<name>__*_device_table. */ - unsigned long id_size; - void *function; - }; -@@ -146,7 +146,8 @@ static void device_id_check(const char *modname, const char *device_id, - - if (size % id_size || size < id_size) { - fatal("%s: sizeof(struct %s_device_id)=%lu is not a modulo " -- "of the size of section __mod_%s_device_table=%lu.\n" -+ "of the size of " -+ "section __mod_%s__<identifier>_device_table=%lu.\n" - "Fix definition of struct %s_device_id " - "in mod_devicetable.h\n", - modname, device_id, id_size, device_id, size, device_id); -@@ -1206,7 +1207,7 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, - { - void *symval; - char *zeros = NULL; -- const char *name; -+ const char *name, *identifier; - unsigned int namelen; - - /* We're looking for a section relative symbol */ -@@ -1217,7 +1218,7 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, - if (ELF_ST_TYPE(sym->st_info) != STT_OBJECT) - return; - -- /* All our symbols are of form <prefix>__mod_XXX_device_table. */ -+ /* All our symbols are of form <prefix>__mod_<name>__<identifier>_device_table. */ - name = strstr(symname, "__mod_"); - if (!name) - return; -@@ -1227,7 +1228,10 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, - return; - if (strcmp(name + namelen - strlen("_device_table"), "_device_table")) - return; -- namelen -= strlen("_device_table"); -+ identifier = strstr(name, "__"); -+ if (!identifier) -+ return; -+ namelen = identifier - name; - - /* Handle all-NULL symbols allocated into .bss */ - if (info->sechdrs[get_secindex(info, sym)].sh_type & SHT_NOBITS) { --- -1.9.2 - diff --git a/kernels/linux-libre-rt/0003-module-remove-MODULE_GENERIC_TABLE.patch b/kernels/linux-libre-rt/0003-module-remove-MODULE_GENERIC_TABLE.patch deleted file mode 100644 index d7a022ce8..000000000 --- a/kernels/linux-libre-rt/0003-module-remove-MODULE_GENERIC_TABLE.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 06d2e746733a83469944481cb7f4fb1c7134a8ce Mon Sep 17 00:00:00 2001 -From: Rusty Russell <rusty@rustcorp.com.au> -Date: Mon, 3 Feb 2014 11:15:13 +1030 -Subject: [PATCH 03/10] module: remove MODULE_GENERIC_TABLE - -MODULE_DEVICE_TABLE() calles MODULE_GENERIC_TABLE(); make it do the -work directly. This also removes a wart introduced in the last patch, -where the alias is defined to be an unknown struct type "struct -type##__##name##_device_id" instead of "struct type##_device_id" (it's -an extern so GCC doesn't care, but it's wrong). - -The other user of MODULE_GENERIC_TABLE (ISAPNP_CARD_TABLE) is unused, -so delete it. - -Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> ---- - include/linux/isapnp.h | 4 ---- - include/linux/module.h | 19 ++++++++----------- - 2 files changed, 8 insertions(+), 15 deletions(-) - -diff --git a/include/linux/isapnp.h b/include/linux/isapnp.h -index e2d28b0..3c77bf9 100644 ---- a/include/linux/isapnp.h -+++ b/include/linux/isapnp.h -@@ -56,10 +56,6 @@ - #define ISAPNP_DEVICE_ID(_va, _vb, _vc, _function) \ - { .vendor = ISAPNP_VENDOR(_va, _vb, _vc), .function = ISAPNP_FUNCTION(_function) } - --/* export used IDs outside module */ --#define ISAPNP_CARD_TABLE(name) \ -- MODULE_GENERIC_TABLE(isapnp_card, name) -- - struct isapnp_card_id { - unsigned long driver_data; /* data private to the driver */ - unsigned short card_vendor, card_device; -diff --git a/include/linux/module.h b/include/linux/module.h -index ad18f60..5686b37 100644 ---- a/include/linux/module.h -+++ b/include/linux/module.h -@@ -82,15 +82,6 @@ void sort_extable(struct exception_table_entry *start, - void sort_main_extable(void); - void trim_init_extable(struct module *m); - --#ifdef MODULE --#define MODULE_GENERIC_TABLE(gtype, name) \ --extern const struct gtype##_id __mod_##gtype##_table \ -- __attribute__ ((unused, alias(__stringify(name)))) -- --#else /* !MODULE */ --#define MODULE_GENERIC_TABLE(gtype, name) --#endif -- - /* Generic info of form tag = "info" */ - #define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info) - -@@ -141,8 +132,14 @@ extern const struct gtype##_id __mod_##gtype##_table \ - /* What your module does. */ - #define MODULE_DESCRIPTION(_description) MODULE_INFO(description, _description) - --#define MODULE_DEVICE_TABLE(type, name) \ -- MODULE_GENERIC_TABLE(type##__##name##_device, name) -+#ifdef MODULE -+/* Creates an alias so file2alias.c can find device table. */ -+#define MODULE_DEVICE_TABLE(type, name) \ -+ extern const struct type##_device_id __mod_##type##__##name##_device_table \ -+ __attribute__ ((unused, alias(__stringify(name)))) -+#else /* !MODULE */ -+#define MODULE_DEVICE_TABLE(type, name) -+#endif - - /* Version of form [<epoch>:]<version>[-<extra-version>]. - * Or for CVS/RCS ID version, everything but the number is stripped. --- -1.9.2 - diff --git a/kernels/linux-libre-rt/0006-genksyms-fix-typeof-handling.patch b/kernels/linux-libre-rt/0006-genksyms-fix-typeof-handling.patch deleted file mode 100644 index fdd4b6d03..000000000 --- a/kernels/linux-libre-rt/0006-genksyms-fix-typeof-handling.patch +++ /dev/null @@ -1,1360 +0,0 @@ -From 39a7f4024e3e7d54a3bb49dcb645b3d7af16354e Mon Sep 17 00:00:00 2001 -From: Jan Beulich <JBeulich@suse.com> -Date: Thu, 3 Apr 2014 14:46:37 -0700 -Subject: [PATCH 06/10] genksyms: fix typeof() handling - -Recent increased use of typeof() throughout the tree resulted in a -number of symbols (25 in a typical distro config of ours) not getting a -proper CRC calculated for them anymore, due to the parser in genksyms -not coping with several of these uses (interestingly in the majority of -[if not all] cases the problem is due to the use of typeof() in code -preceding a certain export, not in the declaration/definition of the -exported function/object itself; I wasn't able to find a way to address -this more general parser shortcoming). - -The use of parameter_declaration is a little more relaxed than would be -ideal (permitting not just a bare type specification, but also one with -identifier), but since the same code is being passed through an actual -compiler, there's no apparent risk of allowing through any broken code. - -Otoh using parameter_declaration instead of the ad hoc -"decl_specifier_seq '*'" / "decl_specifier_seq" pair allows all types to -be handled rather than just plain ones and pointers to plain ones. - -Signed-off-by: Jan Beulich <jbeulich@suse.com> -Cc: Michal Marek <mmarek@suse.cz> -Signed-off-by: Andrew Morton <akpm@linux-foundation.org> -Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> ---- - scripts/genksyms/keywords.gperf | 5 +- - scripts/genksyms/keywords.hash.c_shipped | 133 +++---- - scripts/genksyms/lex.l | 51 ++- - scripts/genksyms/lex.lex.c_shipped | 51 ++- - scripts/genksyms/parse.tab.c_shipped | 608 ++++++++++++++++--------------- - scripts/genksyms/parse.tab.h_shipped | 29 +- - scripts/genksyms/parse.y | 5 +- - 7 files changed, 498 insertions(+), 384 deletions(-) - -diff --git a/scripts/genksyms/keywords.gperf b/scripts/genksyms/keywords.gperf -index 3e77a94..a9096d9 100644 ---- a/scripts/genksyms/keywords.gperf -+++ b/scripts/genksyms/keywords.gperf -@@ -23,6 +23,8 @@ __inline, INLINE_KEYW - __inline__, INLINE_KEYW - __signed, SIGNED_KEYW - __signed__, SIGNED_KEYW -+__typeof, TYPEOF_KEYW -+__typeof__, TYPEOF_KEYW - __volatile, VOLATILE_KEYW - __volatile__, VOLATILE_KEYW - # According to rth, c99 defines _Bool, __restrict, __restrict__, restrict. KAO -@@ -51,9 +53,8 @@ signed, SIGNED_KEYW - static, STATIC_KEYW - struct, STRUCT_KEYW - typedef, TYPEDEF_KEYW -+typeof, TYPEOF_KEYW - union, UNION_KEYW - unsigned, UNSIGNED_KEYW - void, VOID_KEYW - volatile, VOLATILE_KEYW --typeof, TYPEOF_KEYW --__typeof__, TYPEOF_KEYW -diff --git a/scripts/genksyms/keywords.hash.c_shipped b/scripts/genksyms/keywords.hash.c_shipped -index 8206260..e9452482 100644 ---- a/scripts/genksyms/keywords.hash.c_shipped -+++ b/scripts/genksyms/keywords.hash.c_shipped -@@ -34,7 +34,7 @@ struct resword; - static const struct resword *is_reserved_word(register const char *str, register unsigned int len); - #line 8 "scripts/genksyms/keywords.gperf" - struct resword { const char *name; int token; }; --/* maximum key range = 64, duplicates = 0 */ -+/* maximum key range = 98, duplicates = 0 */ - - #ifdef __GNUC__ - __inline -@@ -48,32 +48,32 @@ is_reserved_hash (register const char *str, register unsigned int len) - { - static const unsigned char asso_values[] = - { -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 0, -- 67, 67, 67, 67, 67, 67, 15, 67, 67, 67, -- 0, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 0, 67, 0, 67, 5, -- 25, 20, 15, 30, 67, 15, 67, 67, 10, 0, -- 10, 40, 20, 67, 10, 5, 0, 10, 15, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, -- 67, 67, 67, 67, 67, 67 -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 0, -+ 101, 101, 101, 101, 101, 101, 15, 101, 101, 101, -+ 0, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 0, 101, 0, 101, 5, -+ 25, 20, 55, 30, 101, 15, 101, 101, 10, 0, -+ 10, 40, 10, 101, 10, 5, 0, 10, 15, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, -+ 101, 101, 101, 101, 101, 101 - }; - return len + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[0]] + asso_values[(unsigned char)str[len - 1]]; - } -@@ -89,17 +89,17 @@ is_reserved_word (register const char *str, register unsigned int len) - { - enum - { -- TOTAL_KEYWORDS = 45, -+ TOTAL_KEYWORDS = 46, - MIN_WORD_LENGTH = 3, - MAX_WORD_LENGTH = 24, - MIN_HASH_VALUE = 3, -- MAX_HASH_VALUE = 66 -+ MAX_HASH_VALUE = 100 - }; - - static const struct resword wordlist[] = - { - {""}, {""}, {""}, --#line 33 "scripts/genksyms/keywords.gperf" -+#line 35 "scripts/genksyms/keywords.gperf" - {"asm", ASM_KEYW}, - {""}, - #line 15 "scripts/genksyms/keywords.gperf" -@@ -108,7 +108,7 @@ is_reserved_word (register const char *str, register unsigned int len) - #line 16 "scripts/genksyms/keywords.gperf" - {"__asm__", ASM_KEYW}, - {""}, {""}, --#line 59 "scripts/genksyms/keywords.gperf" -+#line 27 "scripts/genksyms/keywords.gperf" - {"__typeof__", TYPEOF_KEYW}, - {""}, - #line 19 "scripts/genksyms/keywords.gperf" -@@ -119,31 +119,31 @@ is_reserved_word (register const char *str, register unsigned int len) - {"__const__", CONST_KEYW}, - #line 25 "scripts/genksyms/keywords.gperf" - {"__signed__", SIGNED_KEYW}, --#line 51 "scripts/genksyms/keywords.gperf" -+#line 53 "scripts/genksyms/keywords.gperf" - {"static", STATIC_KEYW}, - {""}, --#line 46 "scripts/genksyms/keywords.gperf" -+#line 48 "scripts/genksyms/keywords.gperf" - {"int", INT_KEYW}, --#line 39 "scripts/genksyms/keywords.gperf" -+#line 41 "scripts/genksyms/keywords.gperf" - {"char", CHAR_KEYW}, --#line 40 "scripts/genksyms/keywords.gperf" -+#line 42 "scripts/genksyms/keywords.gperf" - {"const", CONST_KEYW}, --#line 52 "scripts/genksyms/keywords.gperf" -+#line 54 "scripts/genksyms/keywords.gperf" - {"struct", STRUCT_KEYW}, --#line 31 "scripts/genksyms/keywords.gperf" -+#line 33 "scripts/genksyms/keywords.gperf" - {"__restrict__", RESTRICT_KEYW}, --#line 32 "scripts/genksyms/keywords.gperf" -+#line 34 "scripts/genksyms/keywords.gperf" - {"restrict", RESTRICT_KEYW}, - #line 12 "scripts/genksyms/keywords.gperf" - {"EXPORT_SYMBOL_GPL_FUTURE", EXPORT_SYMBOL_KEYW}, - #line 23 "scripts/genksyms/keywords.gperf" - {"__inline__", INLINE_KEYW}, - {""}, --#line 27 "scripts/genksyms/keywords.gperf" -+#line 29 "scripts/genksyms/keywords.gperf" - {"__volatile__", VOLATILE_KEYW}, - #line 10 "scripts/genksyms/keywords.gperf" - {"EXPORT_SYMBOL", EXPORT_SYMBOL_KEYW}, --#line 30 "scripts/genksyms/keywords.gperf" -+#line 32 "scripts/genksyms/keywords.gperf" - {"_restrict", RESTRICT_KEYW}, - {""}, - #line 17 "scripts/genksyms/keywords.gperf" -@@ -152,56 +152,65 @@ is_reserved_word (register const char *str, register unsigned int len) - {"EXPORT_SYMBOL_GPL", EXPORT_SYMBOL_KEYW}, - #line 21 "scripts/genksyms/keywords.gperf" - {"__extension__", EXTENSION_KEYW}, --#line 42 "scripts/genksyms/keywords.gperf" -+#line 44 "scripts/genksyms/keywords.gperf" - {"enum", ENUM_KEYW}, - #line 13 "scripts/genksyms/keywords.gperf" - {"EXPORT_UNUSED_SYMBOL", EXPORT_SYMBOL_KEYW}, --#line 43 "scripts/genksyms/keywords.gperf" -+#line 45 "scripts/genksyms/keywords.gperf" - {"extern", EXTERN_KEYW}, - {""}, - #line 24 "scripts/genksyms/keywords.gperf" - {"__signed", SIGNED_KEYW}, - #line 14 "scripts/genksyms/keywords.gperf" - {"EXPORT_UNUSED_SYMBOL_GPL", EXPORT_SYMBOL_KEYW}, --#line 54 "scripts/genksyms/keywords.gperf" -+#line 57 "scripts/genksyms/keywords.gperf" - {"union", UNION_KEYW}, --#line 58 "scripts/genksyms/keywords.gperf" -- {"typeof", TYPEOF_KEYW}, --#line 53 "scripts/genksyms/keywords.gperf" -- {"typedef", TYPEDEF_KEYW}, -+ {""}, {""}, - #line 22 "scripts/genksyms/keywords.gperf" - {"__inline", INLINE_KEYW}, --#line 38 "scripts/genksyms/keywords.gperf" -+#line 40 "scripts/genksyms/keywords.gperf" - {"auto", AUTO_KEYW}, --#line 26 "scripts/genksyms/keywords.gperf" -+#line 28 "scripts/genksyms/keywords.gperf" - {"__volatile", VOLATILE_KEYW}, - {""}, {""}, --#line 55 "scripts/genksyms/keywords.gperf" -+#line 58 "scripts/genksyms/keywords.gperf" - {"unsigned", UNSIGNED_KEYW}, - {""}, --#line 49 "scripts/genksyms/keywords.gperf" -+#line 51 "scripts/genksyms/keywords.gperf" - {"short", SHORT_KEYW}, --#line 45 "scripts/genksyms/keywords.gperf" -+#line 47 "scripts/genksyms/keywords.gperf" - {"inline", INLINE_KEYW}, - {""}, --#line 57 "scripts/genksyms/keywords.gperf" -+#line 60 "scripts/genksyms/keywords.gperf" - {"volatile", VOLATILE_KEYW}, --#line 47 "scripts/genksyms/keywords.gperf" -+#line 49 "scripts/genksyms/keywords.gperf" - {"long", LONG_KEYW}, --#line 29 "scripts/genksyms/keywords.gperf" -+#line 31 "scripts/genksyms/keywords.gperf" - {"_Bool", BOOL_KEYW}, - {""}, {""}, --#line 48 "scripts/genksyms/keywords.gperf" -+#line 50 "scripts/genksyms/keywords.gperf" - {"register", REGISTER_KEYW}, --#line 56 "scripts/genksyms/keywords.gperf" -+#line 59 "scripts/genksyms/keywords.gperf" - {"void", VOID_KEYW}, --#line 44 "scripts/genksyms/keywords.gperf" -- {"float", FLOAT_KEYW}, --#line 41 "scripts/genksyms/keywords.gperf" -+ {""}, -+#line 43 "scripts/genksyms/keywords.gperf" - {"double", DOUBLE_KEYW}, -+ {""}, -+#line 26 "scripts/genksyms/keywords.gperf" -+ {"__typeof", TYPEOF_KEYW}, -+ {""}, {""}, -+#line 52 "scripts/genksyms/keywords.gperf" -+ {"signed", SIGNED_KEYW}, - {""}, {""}, {""}, {""}, --#line 50 "scripts/genksyms/keywords.gperf" -- {"signed", SIGNED_KEYW} -+#line 56 "scripts/genksyms/keywords.gperf" -+ {"typeof", TYPEOF_KEYW}, -+#line 55 "scripts/genksyms/keywords.gperf" -+ {"typedef", TYPEDEF_KEYW}, -+ {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -+ {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -+ {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -+#line 46 "scripts/genksyms/keywords.gperf" -+ {"float", FLOAT_KEYW} - }; - - if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) -diff --git a/scripts/genksyms/lex.l b/scripts/genksyms/lex.l -index f770071..e583565 100644 ---- a/scripts/genksyms/lex.l -+++ b/scripts/genksyms/lex.l -@@ -129,8 +129,9 @@ int - yylex(void) - { - static enum { -- ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_BRACKET, ST_BRACE, -- ST_EXPRESSION, ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4, -+ ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_TYPEOF, ST_TYPEOF_1, -+ ST_BRACKET, ST_BRACE, ST_EXPRESSION, -+ ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4, - ST_TABLE_5, ST_TABLE_6 - } lexstate = ST_NOTSTARTED; - -@@ -198,6 +199,10 @@ repeat: - lexstate = ST_ASM; - count = 0; - goto repeat; -+ case TYPEOF_KEYW: -+ lexstate = ST_TYPEOF; -+ count = 0; -+ goto repeat; - - case STRUCT_KEYW: - case UNION_KEYW: -@@ -284,6 +289,48 @@ repeat: - } - break; - -+ case ST_TYPEOF: -+ switch (token) -+ { -+ case '(': -+ if ( ++count == 1 ) -+ lexstate = ST_TYPEOF_1; -+ else -+ APP; -+ goto repeat; -+ case ')': -+ APP; -+ if (--count == 0) -+ { -+ lexstate = ST_NORMAL; -+ token = TYPEOF_PHRASE; -+ break; -+ } -+ goto repeat; -+ default: -+ APP; -+ goto repeat; -+ } -+ break; -+ -+ case ST_TYPEOF_1: -+ if (token == IDENT) -+ { -+ if (is_reserved_word(yytext, yyleng) -+ || find_symbol(yytext, SYM_TYPEDEF, 1)) -+ { -+ yyless(0); -+ unput('('); -+ lexstate = ST_NORMAL; -+ token = TYPEOF_KEYW; -+ break; -+ } -+ _APP("(", 1); -+ } -+ APP; -+ lexstate = ST_TYPEOF; -+ goto repeat; -+ - case ST_BRACKET: - APP; - switch (token) -diff --git a/scripts/genksyms/lex.lex.c_shipped b/scripts/genksyms/lex.lex.c_shipped -index 0bf4157..f82740a 100644 ---- a/scripts/genksyms/lex.lex.c_shipped -+++ b/scripts/genksyms/lex.lex.c_shipped -@@ -1938,8 +1938,9 @@ int - yylex(void) - { - static enum { -- ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_BRACKET, ST_BRACE, -- ST_EXPRESSION, ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4, -+ ST_NOTSTARTED, ST_NORMAL, ST_ATTRIBUTE, ST_ASM, ST_TYPEOF, ST_TYPEOF_1, -+ ST_BRACKET, ST_BRACE, ST_EXPRESSION, -+ ST_TABLE_1, ST_TABLE_2, ST_TABLE_3, ST_TABLE_4, - ST_TABLE_5, ST_TABLE_6 - } lexstate = ST_NOTSTARTED; - -@@ -2007,6 +2008,10 @@ repeat: - lexstate = ST_ASM; - count = 0; - goto repeat; -+ case TYPEOF_KEYW: -+ lexstate = ST_TYPEOF; -+ count = 0; -+ goto repeat; - - case STRUCT_KEYW: - case UNION_KEYW: -@@ -2093,6 +2098,48 @@ repeat: - } - break; - -+ case ST_TYPEOF: -+ switch (token) -+ { -+ case '(': -+ if ( ++count == 1 ) -+ lexstate = ST_TYPEOF_1; -+ else -+ APP; -+ goto repeat; -+ case ')': -+ APP; -+ if (--count == 0) -+ { -+ lexstate = ST_NORMAL; -+ token = TYPEOF_PHRASE; -+ break; -+ } -+ goto repeat; -+ default: -+ APP; -+ goto repeat; -+ } -+ break; -+ -+ case ST_TYPEOF_1: -+ if (token == IDENT) -+ { -+ if (is_reserved_word(yytext, yyleng) -+ || find_symbol(yytext, SYM_TYPEDEF, 1)) -+ { -+ yyless(0); -+ unput('('); -+ lexstate = ST_NORMAL; -+ token = TYPEOF_KEYW; -+ break; -+ } -+ _APP("(", 1); -+ } -+ APP; -+ lexstate = ST_TYPEOF; -+ goto repeat; -+ - case ST_BRACKET: - APP; - switch (token) -diff --git a/scripts/genksyms/parse.tab.c_shipped b/scripts/genksyms/parse.tab.c_shipped -index ece53c7..c9f0f0ce 100644 ---- a/scripts/genksyms/parse.tab.c_shipped -+++ b/scripts/genksyms/parse.tab.c_shipped -@@ -1,8 +1,8 @@ --/* A Bison parser, made by GNU Bison 2.5. */ -+/* A Bison parser, made by GNU Bison 2.5.1. */ - - /* Bison implementation for Yacc-like parsers in C - -- Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. -+ Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, 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 -@@ -44,7 +44,7 @@ - #define YYBISON 1 - - /* Bison version. */ --#define YYBISON_VERSION "2.5" -+#define YYBISON_VERSION "2.5.1" - - /* Skeleton name. */ - #define YYSKELETON_NAME "yacc.c" -@@ -117,6 +117,14 @@ static void record_compound(struct string_list **keyw, - - - -+# ifndef YY_NULL -+# if defined __cplusplus && 201103L <= __cplusplus -+# define YY_NULL nullptr -+# else -+# define YY_NULL 0 -+# endif -+# endif -+ - /* Enabling traces. */ - #ifndef YYDEBUG - # define YYDEBUG 1 -@@ -171,18 +179,19 @@ static void record_compound(struct string_list **keyw, - EXPORT_SYMBOL_KEYW = 284, - ASM_PHRASE = 285, - ATTRIBUTE_PHRASE = 286, -- BRACE_PHRASE = 287, -- BRACKET_PHRASE = 288, -- EXPRESSION_PHRASE = 289, -- CHAR = 290, -- DOTS = 291, -- IDENT = 292, -- INT = 293, -- REAL = 294, -- STRING = 295, -- TYPE = 296, -- OTHER = 297, -- FILENAME = 298 -+ TYPEOF_PHRASE = 287, -+ BRACE_PHRASE = 288, -+ BRACKET_PHRASE = 289, -+ EXPRESSION_PHRASE = 290, -+ CHAR = 291, -+ DOTS = 292, -+ IDENT = 293, -+ INT = 294, -+ REAL = 295, -+ STRING = 296, -+ TYPE = 297, -+ OTHER = 298, -+ FILENAME = 299 - }; - #endif - -@@ -304,6 +313,7 @@ YYID (yyi) - # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) - # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -+ /* Use EXIT_SUCCESS as a witness for stdlib.h. */ - # ifndef EXIT_SUCCESS - # define EXIT_SUCCESS 0 - # endif -@@ -395,20 +405,20 @@ union yyalloc - #endif - - #if defined YYCOPY_NEEDED && YYCOPY_NEEDED --/* Copy COUNT objects from FROM to TO. The source and destination do -+/* Copy COUNT objects from SRC to DST. The source and destination do - not overlap. */ - # ifndef YYCOPY - # if defined __GNUC__ && 1 < __GNUC__ --# define YYCOPY(To, From, Count) \ -- __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -+# define YYCOPY(Dst, Src, Count) \ -+ __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) - # else --# define YYCOPY(To, From, Count) \ -- do \ -- { \ -- YYSIZE_T yyi; \ -- for (yyi = 0; yyi < (Count); yyi++) \ -- (To)[yyi] = (From)[yyi]; \ -- } \ -+# define YYCOPY(Dst, Src, Count) \ -+ do \ -+ { \ -+ YYSIZE_T yyi; \ -+ for (yyi = 0; yyi < (Count); yyi++) \ -+ (Dst)[yyi] = (Src)[yyi]; \ -+ } \ - while (YYID (0)) - # endif - # endif -@@ -417,20 +427,20 @@ union yyalloc - /* YYFINAL -- State number of the termination state. */ - #define YYFINAL 4 - /* YYLAST -- Last index in YYTABLE. */ --#define YYLAST 532 -+#define YYLAST 514 - - /* YYNTOKENS -- Number of terminals. */ --#define YYNTOKENS 53 -+#define YYNTOKENS 54 - /* YYNNTS -- Number of nonterminals. */ - #define YYNNTS 49 - /* YYNRULES -- Number of rules. */ - #define YYNRULES 132 - /* YYNRULES -- Number of states. */ --#define YYNSTATES 188 -+#define YYNSTATES 187 - - /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ - #define YYUNDEFTOK 2 --#define YYMAXUTOK 298 -+#define YYMAXUTOK 299 - - #define YYTRANSLATE(YYX) \ - ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) -@@ -442,15 +452,15 @@ static const yytype_uint8 yytranslate[] = - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -- 47, 49, 48, 2, 46, 2, 2, 2, 2, 2, -- 2, 2, 2, 2, 2, 2, 2, 2, 52, 44, -- 2, 50, 2, 2, 2, 2, 2, 2, 2, 2, -+ 48, 49, 50, 2, 47, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 53, 45, -+ 2, 51, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -- 2, 2, 2, 51, 2, 45, 2, 2, 2, 2, -+ 2, 2, 2, 52, 2, 46, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -@@ -467,7 +477,7 @@ static const yytype_uint8 yytranslate[] = - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -- 35, 36, 37, 38, 39, 40, 41, 42, 43 -+ 35, 36, 37, 38, 39, 40, 41, 42, 43, 44 - }; - - #if YYDEBUG -@@ -478,78 +488,77 @@ static const yytype_uint16 yyprhs[] = - 0, 0, 3, 5, 8, 9, 12, 13, 18, 19, - 23, 25, 27, 29, 31, 34, 37, 41, 42, 44, - 46, 50, 55, 56, 58, 60, 63, 65, 67, 69, -- 71, 73, 75, 77, 79, 81, 87, 92, 95, 98, -- 101, 105, 109, 113, 116, 119, 122, 124, 126, 128, -- 130, 132, 134, 136, 138, 140, 142, 144, 147, 148, -- 150, 152, 155, 157, 159, 161, 163, 166, 168, 170, -- 175, 180, 183, 187, 191, 194, 196, 198, 200, 205, -- 210, 213, 217, 221, 224, 226, 230, 231, 233, 235, -- 239, 242, 245, 247, 248, 250, 252, 257, 262, 265, -- 269, 273, 277, 278, 280, 283, 287, 291, 292, 294, -- 296, 299, 303, 306, 307, 309, 311, 315, 318, 321, -- 323, 326, 327, 330, 334, 339, 341, 345, 347, 351, -- 354, 355, 357 -+ 71, 73, 75, 77, 79, 81, 86, 88, 91, 94, -+ 97, 101, 105, 109, 112, 115, 118, 120, 122, 124, -+ 126, 128, 130, 132, 134, 136, 138, 140, 143, 144, -+ 146, 148, 151, 153, 155, 157, 159, 162, 164, 166, -+ 171, 176, 179, 183, 187, 190, 192, 194, 196, 201, -+ 206, 209, 213, 217, 220, 222, 226, 227, 229, 231, -+ 235, 238, 241, 243, 244, 246, 248, 253, 258, 261, -+ 265, 269, 273, 274, 276, 279, 283, 287, 288, 290, -+ 292, 295, 299, 302, 303, 305, 307, 311, 314, 317, -+ 319, 322, 323, 326, 330, 335, 337, 341, 343, 347, -+ 350, 351, 353 - }; - - /* YYRHS -- A `-1'-separated list of the rules' RHS. */ - static const yytype_int8 yyrhs[] = - { -- 54, 0, -1, 55, -1, 54, 55, -1, -1, 56, -- 57, -1, -1, 12, 23, 58, 60, -1, -1, 23, -- 59, 60, -1, 60, -1, 84, -1, 99, -1, 101, -- -1, 1, 44, -1, 1, 45, -1, 64, 61, 44, -- -1, -1, 62, -1, 63, -1, 62, 46, 63, -1, -- 74, 100, 95, 85, -1, -1, 65, -1, 66, -1, -- 65, 66, -1, 67, -1, 68, -1, 5, -1, 17, -- -1, 21, -1, 11, -1, 14, -1, 69, -1, 73, -- -1, 28, 47, 65, 48, 49, -1, 28, 47, 65, -- 49, -1, 22, 37, -1, 24, 37, -1, 10, 37, -- -1, 22, 37, 87, -1, 24, 37, 87, -1, 10, -- 37, 96, -1, 10, 96, -1, 22, 87, -1, 24, -- 87, -1, 7, -1, 19, -1, 15, -1, 16, -1, -- 20, -1, 25, -1, 13, -1, 9, -1, 26, -1, -- 6, -1, 41, -1, 48, 71, -1, -1, 72, -1, -- 73, -1, 72, 73, -1, 8, -1, 27, -1, 31, -- -1, 18, -1, 70, 74, -1, 75, -1, 37, -1, -- 75, 47, 78, 49, -1, 75, 47, 1, 49, -1, -- 75, 33, -1, 47, 74, 49, -1, 47, 1, 49, -- -1, 70, 76, -1, 77, -1, 37, -1, 41, -1, -- 77, 47, 78, 49, -1, 77, 47, 1, 49, -1, -- 77, 33, -1, 47, 76, 49, -1, 47, 1, 49, -- -1, 79, 36, -1, 79, -1, 80, 46, 36, -1, -- -1, 80, -1, 81, -1, 80, 46, 81, -1, 65, -- 82, -1, 70, 82, -1, 83, -1, -1, 37, -1, -- 41, -1, 83, 47, 78, 49, -1, 83, 47, 1, -- 49, -1, 83, 33, -1, 47, 82, 49, -1, 47, -- 1, 49, -1, 64, 74, 32, -1, -1, 86, -1, -- 50, 34, -1, 51, 88, 45, -1, 51, 1, 45, -- -1, -1, 89, -1, 90, -1, 89, 90, -1, 64, -- 91, 44, -1, 1, 44, -1, -1, 92, -1, 93, -- -1, 92, 46, 93, -1, 76, 95, -1, 37, 94, -- -1, 94, -1, 52, 34, -1, -1, 95, 31, -1, -- 51, 97, 45, -1, 51, 97, 46, 45, -1, 98, -- -1, 97, 46, 98, -1, 37, -1, 37, 50, 34, -- -1, 30, 44, -1, -1, 30, -1, 29, 47, 37, -- 49, 44, -1 -+ 55, 0, -1, 56, -1, 55, 56, -1, -1, 57, -+ 58, -1, -1, 12, 23, 59, 61, -1, -1, 23, -+ 60, 61, -1, 61, -1, 85, -1, 100, -1, 102, -+ -1, 1, 45, -1, 1, 46, -1, 65, 62, 45, -+ -1, -1, 63, -1, 64, -1, 63, 47, 64, -1, -+ 75, 101, 96, 86, -1, -1, 66, -1, 67, -1, -+ 66, 67, -1, 68, -1, 69, -1, 5, -1, 17, -+ -1, 21, -1, 11, -1, 14, -1, 70, -1, 74, -+ -1, 28, 48, 82, 49, -1, 32, -1, 22, 38, -+ -1, 24, 38, -1, 10, 38, -1, 22, 38, 88, -+ -1, 24, 38, 88, -1, 10, 38, 97, -1, 10, -+ 97, -1, 22, 88, -1, 24, 88, -1, 7, -1, -+ 19, -1, 15, -1, 16, -1, 20, -1, 25, -1, -+ 13, -1, 9, -1, 26, -1, 6, -1, 42, -1, -+ 50, 72, -1, -1, 73, -1, 74, -1, 73, 74, -+ -1, 8, -1, 27, -1, 31, -1, 18, -1, 71, -+ 75, -1, 76, -1, 38, -1, 76, 48, 79, 49, -+ -1, 76, 48, 1, 49, -1, 76, 34, -1, 48, -+ 75, 49, -1, 48, 1, 49, -1, 71, 77, -1, -+ 78, -1, 38, -1, 42, -1, 78, 48, 79, 49, -+ -1, 78, 48, 1, 49, -1, 78, 34, -1, 48, -+ 77, 49, -1, 48, 1, 49, -1, 80, 37, -1, -+ 80, -1, 81, 47, 37, -1, -1, 81, -1, 82, -+ -1, 81, 47, 82, -1, 66, 83, -1, 71, 83, -+ -1, 84, -1, -1, 38, -1, 42, -1, 84, 48, -+ 79, 49, -1, 84, 48, 1, 49, -1, 84, 34, -+ -1, 48, 83, 49, -1, 48, 1, 49, -1, 65, -+ 75, 33, -1, -1, 87, -1, 51, 35, -1, 52, -+ 89, 46, -1, 52, 1, 46, -1, -1, 90, -1, -+ 91, -1, 90, 91, -1, 65, 92, 45, -1, 1, -+ 45, -1, -1, 93, -1, 94, -1, 93, 47, 94, -+ -1, 77, 96, -1, 38, 95, -1, 95, -1, 53, -+ 35, -1, -1, 96, 31, -1, 52, 98, 46, -1, -+ 52, 98, 47, 46, -1, 99, -1, 98, 47, 99, -+ -1, 38, -1, 38, 51, 35, -1, 30, 45, -1, -+ -1, 30, -1, 29, 48, 38, 49, 45, -1 - }; - - /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ - static const yytype_uint16 yyrline[] = - { -- 0, 123, 123, 124, 128, 128, 134, 134, 136, 136, -- 138, 139, 140, 141, 142, 143, 147, 161, 162, 166, -- 174, 187, 193, 194, 198, 199, 203, 209, 213, 214, -- 215, 216, 217, 221, 222, 223, 224, 228, 230, 232, -- 236, 238, 240, 245, 248, 249, 253, 254, 255, 256, -- 257, 258, 259, 260, 261, 262, 263, 267, 272, 273, -- 277, 278, 282, 282, 282, 283, 291, 292, 296, 305, -- 307, 309, 311, 313, 320, 321, 325, 326, 327, 329, -- 331, 333, 335, 340, 341, 342, 346, 347, 351, 352, -- 357, 362, 364, 368, 369, 377, 381, 383, 385, 387, -- 389, 394, 403, 404, 409, 414, 415, 419, 420, 424, -- 425, 429, 431, 436, 437, 441, 442, 446, 447, 448, -- 452, 456, 457, 461, 462, 466, 467, 470, 475, 483, -- 487, 488, 492 -+ 0, 124, 124, 125, 129, 129, 135, 135, 137, 137, -+ 139, 140, 141, 142, 143, 144, 148, 162, 163, 167, -+ 175, 188, 194, 195, 199, 200, 204, 210, 214, 215, -+ 216, 217, 218, 222, 223, 224, 225, 229, 231, 233, -+ 237, 239, 241, 246, 249, 250, 254, 255, 256, 257, -+ 258, 259, 260, 261, 262, 263, 264, 268, 273, 274, -+ 278, 279, 283, 283, 283, 284, 292, 293, 297, 306, -+ 308, 310, 312, 314, 321, 322, 326, 327, 328, 330, -+ 332, 334, 336, 341, 342, 343, 347, 348, 352, 353, -+ 358, 363, 365, 369, 370, 378, 382, 384, 386, 388, -+ 390, 395, 404, 405, 410, 415, 416, 420, 421, 425, -+ 426, 430, 432, 437, 438, 442, 443, 447, 448, 449, -+ 453, 457, 458, 462, 463, 467, 468, 471, 476, 484, -+ 488, 489, 493 - }; - #endif - -@@ -565,9 +574,9 @@ static const char *const yytname[] = - "SHORT_KEYW", "SIGNED_KEYW", "STATIC_KEYW", "STRUCT_KEYW", - "TYPEDEF_KEYW", "UNION_KEYW", "UNSIGNED_KEYW", "VOID_KEYW", - "VOLATILE_KEYW", "TYPEOF_KEYW", "EXPORT_SYMBOL_KEYW", "ASM_PHRASE", -- "ATTRIBUTE_PHRASE", "BRACE_PHRASE", "BRACKET_PHRASE", -+ "ATTRIBUTE_PHRASE", "TYPEOF_PHRASE", "BRACE_PHRASE", "BRACKET_PHRASE", - "EXPRESSION_PHRASE", "CHAR", "DOTS", "IDENT", "INT", "REAL", "STRING", -- "TYPE", "OTHER", "FILENAME", "';'", "'}'", "','", "'('", "'*'", "')'", -+ "TYPE", "OTHER", "FILENAME", "';'", "'}'", "','", "'('", "')'", "'*'", - "'='", "'{'", "':'", "$accept", "declaration_seq", "declaration", "$@1", - "declaration1", "$@2", "$@3", "simple_declaration", - "init_declarator_list_opt", "init_declarator_list", "init_declarator", -@@ -584,7 +593,7 @@ static const char *const yytname[] = - "member_declarator_list_opt", "member_declarator_list", - "member_declarator", "member_bitfield_declarator", "attribute_opt", - "enum_body", "enumerator_list", "enumerator", "asm_definition", -- "asm_phrase_opt", "export_definition", 0 -+ "asm_phrase_opt", "export_definition", YY_NULL - }; - #endif - -@@ -597,28 +606,28 @@ static const yytype_uint16 yytoknum[] = - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, -- 295, 296, 297, 298, 59, 125, 44, 40, 42, 41, -- 61, 123, 58 -+ 295, 296, 297, 298, 299, 59, 125, 44, 40, 41, -+ 42, 61, 123, 58 - }; - # endif - - /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ - static const yytype_uint8 yyr1[] = - { -- 0, 53, 54, 54, 56, 55, 58, 57, 59, 57, -- 57, 57, 57, 57, 57, 57, 60, 61, 61, 62, -- 62, 63, 64, 64, 65, 65, 66, 66, 67, 67, -- 67, 67, 67, 68, 68, 68, 68, 68, 68, 68, -- 68, 68, 68, 68, 68, 68, 69, 69, 69, 69, -- 69, 69, 69, 69, 69, 69, 69, 70, 71, 71, -- 72, 72, 73, 73, 73, 73, 74, 74, 75, 75, -- 75, 75, 75, 75, 76, 76, 77, 77, 77, 77, -- 77, 77, 77, 78, 78, 78, 79, 79, 80, 80, -- 81, 82, 82, 83, 83, 83, 83, 83, 83, 83, -- 83, 84, 85, 85, 86, 87, 87, 88, 88, 89, -- 89, 90, 90, 91, 91, 92, 92, 93, 93, 93, -- 94, 95, 95, 96, 96, 97, 97, 98, 98, 99, -- 100, 100, 101 -+ 0, 54, 55, 55, 57, 56, 59, 58, 60, 58, -+ 58, 58, 58, 58, 58, 58, 61, 62, 62, 63, -+ 63, 64, 65, 65, 66, 66, 67, 67, 68, 68, -+ 68, 68, 68, 69, 69, 69, 69, 69, 69, 69, -+ 69, 69, 69, 69, 69, 69, 70, 70, 70, 70, -+ 70, 70, 70, 70, 70, 70, 70, 71, 72, 72, -+ 73, 73, 74, 74, 74, 74, 75, 75, 76, 76, -+ 76, 76, 76, 76, 77, 77, 78, 78, 78, 78, -+ 78, 78, 78, 79, 79, 79, 80, 80, 81, 81, -+ 82, 83, 83, 84, 84, 84, 84, 84, 84, 84, -+ 84, 85, 86, 86, 87, 88, 88, 89, 89, 90, -+ 90, 91, 91, 92, 92, 93, 93, 94, 94, 94, -+ 95, 96, 96, 97, 97, 98, 98, 99, 99, 100, -+ 101, 101, 102 - }; - - /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ -@@ -627,7 +636,7 @@ static const yytype_uint8 yyr2[] = - 0, 2, 1, 2, 0, 2, 0, 4, 0, 3, - 1, 1, 1, 1, 2, 2, 3, 0, 1, 1, - 3, 4, 0, 1, 1, 2, 1, 1, 1, 1, -- 1, 1, 1, 1, 1, 5, 4, 2, 2, 2, -+ 1, 1, 1, 1, 1, 4, 1, 2, 2, 2, - 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 2, 0, 1, - 1, 2, 1, 1, 1, 1, 2, 1, 1, 4, -@@ -648,68 +657,68 @@ static const yytype_uint8 yydefact[] = - 4, 4, 2, 0, 1, 3, 0, 28, 55, 46, - 62, 53, 0, 31, 0, 52, 32, 48, 49, 29, - 65, 47, 50, 30, 0, 8, 0, 51, 54, 63, -- 0, 0, 0, 64, 56, 5, 10, 17, 23, 24, -- 26, 27, 33, 34, 11, 12, 13, 14, 15, 39, -- 0, 43, 6, 37, 0, 44, 22, 38, 45, 0, -- 0, 129, 68, 0, 58, 0, 18, 19, 0, 130, -- 67, 25, 42, 127, 0, 125, 22, 40, 0, 113, -- 0, 0, 109, 9, 17, 41, 0, 0, 0, 0, -- 57, 59, 60, 16, 0, 66, 131, 101, 121, 71, -- 0, 0, 123, 0, 7, 112, 106, 76, 77, 0, -- 0, 0, 121, 75, 0, 114, 115, 119, 105, 0, -- 110, 130, 0, 36, 0, 73, 72, 61, 20, 102, -- 0, 93, 0, 84, 87, 88, 128, 124, 126, 118, -- 0, 76, 0, 120, 74, 117, 80, 0, 111, 0, -- 35, 132, 122, 0, 21, 103, 70, 94, 56, 0, -- 93, 90, 92, 69, 83, 0, 82, 81, 0, 0, -- 116, 104, 0, 95, 0, 91, 98, 0, 85, 89, -- 79, 78, 100, 99, 0, 0, 97, 96 -+ 0, 0, 0, 64, 36, 56, 5, 10, 17, 23, -+ 24, 26, 27, 33, 34, 11, 12, 13, 14, 15, -+ 39, 0, 43, 6, 37, 0, 44, 22, 38, 45, -+ 0, 0, 129, 68, 0, 58, 0, 18, 19, 0, -+ 130, 67, 25, 42, 127, 0, 125, 22, 40, 0, -+ 113, 0, 0, 109, 9, 17, 41, 93, 0, 0, -+ 0, 0, 57, 59, 60, 16, 0, 66, 131, 101, -+ 121, 71, 0, 0, 123, 0, 7, 112, 106, 76, -+ 77, 0, 0, 0, 121, 75, 0, 114, 115, 119, -+ 105, 0, 110, 130, 94, 56, 0, 93, 90, 92, -+ 35, 0, 73, 72, 61, 20, 102, 0, 0, 84, -+ 87, 88, 128, 124, 126, 118, 0, 76, 0, 120, -+ 74, 117, 80, 0, 111, 0, 0, 95, 0, 91, -+ 98, 0, 132, 122, 0, 21, 103, 70, 69, 83, -+ 0, 82, 81, 0, 0, 116, 100, 99, 0, 0, -+ 104, 85, 89, 79, 78, 97, 96 - }; - - /* YYDEFGOTO[NTERM-NUM]. */ - static const yytype_int16 yydefgoto[] = - { -- -1, 1, 2, 3, 35, 76, 56, 36, 65, 66, -- 67, 79, 38, 39, 40, 41, 42, 68, 90, 91, -- 43, 121, 70, 112, 113, 132, 133, 134, 135, 161, -- 162, 44, 154, 155, 55, 80, 81, 82, 114, 115, -- 116, 117, 129, 51, 74, 75, 45, 98, 46 -+ -1, 1, 2, 3, 36, 77, 57, 37, 66, 67, -+ 68, 80, 39, 40, 41, 42, 43, 69, 92, 93, -+ 44, 123, 71, 114, 115, 138, 139, 140, 141, 128, -+ 129, 45, 165, 166, 56, 81, 82, 83, 116, 117, -+ 118, 119, 136, 52, 75, 76, 46, 100, 47 - }; - - /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing - STATE-NUM. */ --#define YYPACT_NINF -135 -+#define YYPACT_NINF -140 - static const yytype_int16 yypact[] = - { -- -135, 20, -135, 321, -135, -135, 30, -135, -135, -135, -- -135, -135, -28, -135, 2, -135, -135, -135, -135, -135, -- -135, -135, -135, -135, -6, -135, 9, -135, -135, -135, -- -5, 15, -17, -135, -135, -135, -135, 18, 491, -135, -- -135, -135, -135, -135, -135, -135, -135, -135, -135, -22, -- 31, -135, -135, 19, 106, -135, 491, 19, -135, 491, -- 50, -135, -135, 11, -3, 51, 57, -135, 18, -14, -- 14, -135, -135, 48, 46, -135, 491, -135, 33, 32, -- 59, 154, -135, -135, 18, -135, 365, 56, 60, 61, -- -135, -3, -135, -135, 18, -135, -135, -135, -135, -135, -- 202, 74, -135, -23, -135, -135, -135, 77, -135, 16, -- 101, 49, -135, 34, 92, 93, -135, -135, -135, 94, -- -135, 110, 95, -135, 97, -135, -135, -135, -135, -20, -- 96, 410, 99, 113, 100, -135, -135, -135, -135, -135, -- 103, -135, 107, -135, -135, 111, -135, 239, -135, 32, -- -135, -135, -135, 123, -135, -135, -135, -135, -135, 3, -- 52, -135, 38, -135, -135, 454, -135, -135, 117, 128, -- -135, -135, 134, -135, 135, -135, -135, 276, -135, -135, -- -135, -135, -135, -135, 137, 138, -135, -135 -+ -140, 29, -140, 207, -140, -140, 40, -140, -140, -140, -+ -140, -140, -27, -140, 44, -140, -140, -140, -140, -140, -+ -140, -140, -140, -140, -22, -140, -18, -140, -140, -140, -+ -9, 22, 28, -140, -140, -140, -140, -140, 42, 472, -+ -140, -140, -140, -140, -140, -140, -140, -140, -140, -140, -+ 46, 43, -140, -140, 47, 107, -140, 472, 47, -140, -+ 472, 62, -140, -140, 16, -3, 57, 56, -140, 42, -+ 35, -11, -140, -140, 53, 48, -140, 472, -140, 51, -+ 21, 59, 157, -140, -140, 42, -140, 388, 58, 60, -+ 70, 81, -140, -3, -140, -140, 42, -140, -140, -140, -+ -140, -140, 253, 71, -140, -20, -140, -140, -140, 83, -+ -140, 5, 102, 34, -140, 12, 95, 94, -140, -140, -+ -140, 97, -140, 113, -140, -140, 2, 41, -140, 27, -+ -140, 99, -140, -140, -140, -140, -24, 98, 101, 109, -+ 104, -140, -140, -140, -140, -140, 105, -140, 110, -140, -+ -140, 117, -140, 298, -140, 21, 112, -140, 120, -140, -+ -140, 343, -140, -140, 121, -140, -140, -140, -140, -140, -+ 434, -140, -140, 131, 137, -140, -140, -140, 138, 141, -+ -140, -140, -140, -140, -140, -140, -140 - }; - - /* YYPGOTO[NTERM-NUM]. */ - static const yytype_int16 yypgoto[] = - { -- -135, -135, 187, -135, -135, -135, -135, -50, -135, -135, -- 98, 0, -59, -37, -135, -135, -135, -77, -135, -135, -- -54, -30, -135, -90, -135, -134, -135, -135, 24, -58, -- -135, -135, -135, -135, -18, -135, -135, 109, -135, -135, -- 44, 87, 84, 148, -135, 102, -135, -135, -135 -+ -140, -140, 190, -140, -140, -140, -140, -45, -140, -140, -+ 96, 1, -60, -31, -140, -140, -140, -78, -140, -140, -+ -55, -7, -140, -92, -140, -139, -140, -140, -59, -39, -+ -140, -140, -140, -140, -13, -140, -140, 111, -140, -140, -+ 39, 87, 84, 147, -140, 106, -140, -140, -140 - }; - - /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If -@@ -718,149 +727,145 @@ static const yytype_int16 yypgoto[] = - #define YYTABLE_NINF -109 - static const yytype_int16 yytable[] = - { -- 86, 71, 111, 37, 172, 10, 83, 69, 58, 49, -- 92, 152, 88, 169, 73, 20, 96, 140, 97, 142, -- 4, 144, 137, 50, 29, 52, 104, 61, 33, 50, -- 153, 53, 111, 89, 111, 77, -93, 127, 95, 85, -- 157, 131, 59, 185, 173, 54, 57, 99, 62, 71, -- 159, 64, -93, 141, 160, 62, 84, 108, 63, 64, -- 54, 100, 60, 109, 64, 63, 64, 146, 73, 107, -- 54, 176, 111, 108, 47, 48, 84, 105, 106, 109, -- 64, 147, 160, 160, 110, 177, 141, 87, 131, 157, -- 108, 102, 103, 173, 71, 93, 109, 64, 101, 159, -- 64, 174, 175, 94, 118, 124, 131, 78, 136, 125, -- 126, 7, 8, 9, 10, 11, 12, 13, 131, 15, -- 16, 17, 18, 19, 20, 21, 22, 23, 24, 110, -- 26, 27, 28, 29, 30, 143, 148, 33, 105, 149, -- 96, 151, 152, -22, 150, 156, 165, 34, 163, 164, -- -22, -107, 166, -22, -22, 119, 167, 171, -22, 7, -- 8, 9, 10, 11, 12, 13, 180, 15, 16, 17, -- 18, 19, 20, 21, 22, 23, 24, 181, 26, 27, -- 28, 29, 30, 182, 183, 33, 186, 187, 5, 179, -- 120, -22, 128, 170, 139, 34, 145, 72, -22, -108, -- 0, -22, -22, 130, 0, 138, -22, 7, 8, 9, -- 10, 11, 12, 13, 0, 15, 16, 17, 18, 19, -- 20, 21, 22, 23, 24, 0, 26, 27, 28, 29, -- 30, 0, 0, 33, 0, 0, 0, 0, -86, 0, -- 168, 0, 0, 34, 7, 8, 9, 10, 11, 12, -- 13, -86, 15, 16, 17, 18, 19, 20, 21, 22, -- 23, 24, 0, 26, 27, 28, 29, 30, 0, 0, -- 33, 0, 0, 0, 0, -86, 0, 184, 0, 0, -- 34, 7, 8, 9, 10, 11, 12, 13, -86, 15, -- 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, -- 26, 27, 28, 29, 30, 0, 0, 33, 0, 0, -- 0, 0, -86, 0, 0, 0, 0, 34, 0, 0, -- 0, 0, 6, 0, 0, -86, 7, 8, 9, 10, -- 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -- 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, -- 31, 32, 33, 0, 0, 0, 0, 0, -22, 0, -- 0, 0, 34, 0, 0, -22, 0, 0, -22, -22, -- 7, 8, 9, 10, 11, 12, 13, 0, 15, 16, -- 17, 18, 19, 20, 21, 22, 23, 24, 0, 26, -- 27, 28, 29, 30, 0, 0, 33, 0, 0, 0, -- 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, -- 0, 0, 0, 122, 123, 7, 8, 9, 10, 11, -- 12, 13, 0, 15, 16, 17, 18, 19, 20, 21, -- 22, 23, 24, 0, 26, 27, 28, 29, 30, 0, -- 0, 33, 0, 0, 0, 0, 0, 157, 0, 0, -- 0, 158, 0, 0, 0, 0, 0, 159, 64, 7, -+ 87, 88, 113, 156, 38, 10, 146, 163, 72, 127, -+ 94, 50, 84, 59, 174, 20, 54, 90, 74, 148, -+ 58, 150, 179, 101, 29, 51, 143, 164, 33, 4, -+ 55, 70, 106, 113, 55, 113, -93, 102, 134, 60, -+ 124, 78, 87, 147, 157, 86, 152, 110, 127, 127, -+ 126, -93, 65, 111, 63, 65, 72, 91, 85, 109, -+ 153, 160, 97, 110, 64, 98, 65, 53, 99, 111, -+ 61, 65, 147, 62, 112, 161, 110, 113, 85, 124, -+ 63, 74, 111, 157, 65, 48, 49, 158, 159, 126, -+ 64, 65, 65, 87, 104, 105, 107, 108, 51, 55, -+ 89, 87, 95, 96, 103, 120, 142, 130, 79, 131, -+ 87, 182, 7, 8, 9, 10, 11, 12, 13, 132, -+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, -+ 133, 26, 27, 28, 29, 30, 112, 149, 33, 34, -+ 154, 155, 107, 98, 162, -22, 169, 167, 163, 35, -+ 168, 170, -22, -107, 171, -22, 180, -22, 121, 172, -+ -22, 176, 7, 8, 9, 10, 11, 12, 13, 177, -+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, -+ 183, 26, 27, 28, 29, 30, 184, 185, 33, 34, -+ 186, 5, 135, 122, 175, -22, 145, 73, 151, 35, -+ 0, 0, -22, -108, 0, -22, 0, -22, 6, 0, -+ -22, 144, 7, 8, 9, 10, 11, 12, 13, 14, -+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, -+ 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -+ 0, 0, 0, 0, 0, -22, 0, 0, 0, 35, -+ 0, 0, -22, 0, 137, -22, 0, -22, 7, 8, -+ 9, 10, 11, 12, 13, 0, 15, 16, 17, 18, -+ 19, 20, 21, 22, 23, 24, 0, 26, 27, 28, -+ 29, 30, 0, 0, 33, 34, 0, 0, 0, 0, -+ -86, 0, 0, 0, 0, 35, 0, 0, 0, 173, -+ 0, 0, -86, 7, 8, 9, 10, 11, 12, 13, -+ 0, 15, 16, 17, 18, 19, 20, 21, 22, 23, -+ 24, 0, 26, 27, 28, 29, 30, 0, 0, 33, -+ 34, 0, 0, 0, 0, -86, 0, 0, 0, 0, -+ 35, 0, 0, 0, 178, 0, 0, -86, 7, 8, -+ 9, 10, 11, 12, 13, 0, 15, 16, 17, 18, -+ 19, 20, 21, 22, 23, 24, 0, 26, 27, 28, -+ 29, 30, 0, 0, 33, 34, 0, 0, 0, 0, -+ -86, 0, 0, 0, 0, 35, 0, 0, 0, 0, -+ 0, 0, -86, 7, 8, 9, 10, 11, 12, 13, -+ 0, 15, 16, 17, 18, 19, 20, 21, 22, 23, -+ 24, 0, 26, 27, 28, 29, 30, 0, 0, 33, -+ 34, 0, 0, 0, 0, 0, 124, 0, 0, 0, -+ 125, 0, 0, 0, 0, 0, 126, 0, 65, 7, - 8, 9, 10, 11, 12, 13, 0, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 0, 26, 27, -- 28, 29, 30, 0, 0, 33, 0, 0, 0, 0, -- 178, 0, 0, 0, 0, 34, 7, 8, 9, 10, -- 11, 12, 13, 0, 15, 16, 17, 18, 19, 20, -- 21, 22, 23, 24, 0, 26, 27, 28, 29, 30, -- 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, -- 0, 0, 34 -+ 28, 29, 30, 0, 0, 33, 34, 0, 0, 0, -+ 0, 181, 0, 0, 0, 0, 35, 7, 8, 9, -+ 10, 11, 12, 13, 0, 15, 16, 17, 18, 19, -+ 20, 21, 22, 23, 24, 0, 26, 27, 28, 29, -+ 30, 0, 0, 33, 34, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 35 - }; - - #define yypact_value_is_default(yystate) \ -- ((yystate) == (-135)) -+ ((yystate) == (-140)) - - #define yytable_value_is_error(yytable_value) \ - YYID (0) - - static const yytype_int16 yycheck[] = - { -- 59, 38, 79, 3, 1, 8, 56, 37, 26, 37, -- 64, 31, 1, 147, 37, 18, 30, 1, 32, 109, -- 0, 111, 45, 51, 27, 23, 76, 44, 31, 51, -- 50, 37, 109, 63, 111, 53, 33, 91, 68, 57, -- 37, 100, 47, 177, 41, 51, 37, 33, 37, 86, -- 47, 48, 49, 37, 131, 37, 56, 41, 47, 48, -- 51, 47, 47, 47, 48, 47, 48, 33, 37, 37, -- 51, 33, 149, 41, 44, 45, 76, 44, 45, 47, -- 48, 47, 159, 160, 52, 47, 37, 37, 147, 37, -- 41, 45, 46, 41, 131, 44, 47, 48, 50, 47, -- 48, 159, 160, 46, 45, 49, 165, 1, 34, 49, -- 49, 5, 6, 7, 8, 9, 10, 11, 177, 13, -- 14, 15, 16, 17, 18, 19, 20, 21, 22, 52, -- 24, 25, 26, 27, 28, 34, 44, 31, 44, 46, -- 30, 44, 31, 37, 49, 49, 46, 41, 49, 36, -- 44, 45, 49, 47, 48, 1, 49, 34, 52, 5, -- 6, 7, 8, 9, 10, 11, 49, 13, 14, 15, -- 16, 17, 18, 19, 20, 21, 22, 49, 24, 25, -- 26, 27, 28, 49, 49, 31, 49, 49, 1, 165, -- 81, 37, 94, 149, 107, 41, 112, 49, 44, 45, -- -1, 47, 48, 1, -1, 103, 52, 5, 6, 7, -- 8, 9, 10, 11, -1, 13, 14, 15, 16, 17, -- 18, 19, 20, 21, 22, -1, 24, 25, 26, 27, -- 28, -1, -1, 31, -1, -1, -1, -1, 36, -1, -- 1, -1, -1, 41, 5, 6, 7, 8, 9, 10, -- 11, 49, 13, 14, 15, 16, 17, 18, 19, 20, -- 21, 22, -1, 24, 25, 26, 27, 28, -1, -1, -- 31, -1, -1, -1, -1, 36, -1, 1, -1, -1, -- 41, 5, 6, 7, 8, 9, 10, 11, 49, 13, -- 14, 15, 16, 17, 18, 19, 20, 21, 22, -1, -- 24, 25, 26, 27, 28, -1, -1, 31, -1, -1, -- -1, -1, 36, -1, -1, -1, -1, 41, -1, -1, -- -1, -1, 1, -1, -1, 49, 5, 6, 7, 8, -- 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, -- 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, -- 29, 30, 31, -1, -1, -1, -1, -1, 37, -1, -- -1, -1, 41, -1, -1, 44, -1, -1, 47, 48, -- 5, 6, 7, 8, 9, 10, 11, -1, 13, 14, -- 15, 16, 17, 18, 19, 20, 21, 22, -1, 24, -- 25, 26, 27, 28, -1, -1, 31, -1, -1, -1, -- -1, -1, -1, -1, -1, -1, 41, -1, -1, -1, -- -1, -1, -1, 48, 49, 5, 6, 7, 8, 9, -- 10, 11, -1, 13, 14, 15, 16, 17, 18, 19, -- 20, 21, 22, -1, 24, 25, 26, 27, 28, -1, -- -1, 31, -1, -1, -1, -1, -1, 37, -1, -1, -- -1, 41, -1, -1, -1, -1, -1, 47, 48, 5, -+ 60, 60, 80, 1, 3, 8, 1, 31, 39, 87, -+ 65, 38, 57, 26, 153, 18, 38, 1, 38, 111, -+ 38, 113, 161, 34, 27, 52, 46, 51, 31, 0, -+ 52, 38, 77, 111, 52, 113, 34, 48, 93, 48, -+ 38, 54, 102, 38, 42, 58, 34, 42, 126, 127, -+ 48, 49, 50, 48, 38, 50, 87, 64, 57, 38, -+ 48, 34, 69, 42, 48, 30, 50, 23, 33, 48, -+ 48, 50, 38, 45, 53, 48, 42, 155, 77, 38, -+ 38, 38, 48, 42, 50, 45, 46, 126, 127, 48, -+ 48, 50, 50, 153, 46, 47, 45, 46, 52, 52, -+ 38, 161, 45, 47, 51, 46, 35, 49, 1, 49, -+ 170, 170, 5, 6, 7, 8, 9, 10, 11, 49, -+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, -+ 49, 24, 25, 26, 27, 28, 53, 35, 31, 32, -+ 45, 47, 45, 30, 45, 38, 37, 49, 31, 42, -+ 49, 47, 45, 46, 49, 48, 35, 50, 1, 49, -+ 53, 49, 5, 6, 7, 8, 9, 10, 11, 49, -+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, -+ 49, 24, 25, 26, 27, 28, 49, 49, 31, 32, -+ 49, 1, 96, 82, 155, 38, 109, 50, 114, 42, -+ -1, -1, 45, 46, -1, 48, -1, 50, 1, -1, -+ 53, 105, 5, 6, 7, 8, 9, 10, 11, 12, -+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, -+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -+ -1, -1, -1, -1, -1, 38, -1, -1, -1, 42, -+ -1, -1, 45, -1, 1, 48, -1, 50, 5, 6, -+ 7, 8, 9, 10, 11, -1, 13, 14, 15, 16, -+ 17, 18, 19, 20, 21, 22, -1, 24, 25, 26, -+ 27, 28, -1, -1, 31, 32, -1, -1, -1, -1, -+ 37, -1, -1, -1, -1, 42, -1, -1, -1, 1, -+ -1, -1, 49, 5, 6, 7, 8, 9, 10, 11, -+ -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, -+ 22, -1, 24, 25, 26, 27, 28, -1, -1, 31, -+ 32, -1, -1, -1, -1, 37, -1, -1, -1, -1, -+ 42, -1, -1, -1, 1, -1, -1, 49, 5, 6, -+ 7, 8, 9, 10, 11, -1, 13, 14, 15, 16, -+ 17, 18, 19, 20, 21, 22, -1, 24, 25, 26, -+ 27, 28, -1, -1, 31, 32, -1, -1, -1, -1, -+ 37, -1, -1, -1, -1, 42, -1, -1, -1, -1, -+ -1, -1, 49, 5, 6, 7, 8, 9, 10, 11, -+ -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, -+ 22, -1, 24, 25, 26, 27, 28, -1, -1, 31, -+ 32, -1, -1, -1, -1, -1, 38, -1, -1, -1, -+ 42, -1, -1, -1, -1, -1, 48, -1, 50, 5, - 6, 7, 8, 9, 10, 11, -1, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, -1, 24, 25, -- 26, 27, 28, -1, -1, 31, -1, -1, -1, -1, -- 36, -1, -1, -1, -1, 41, 5, 6, 7, 8, -- 9, 10, 11, -1, 13, 14, 15, 16, 17, 18, -- 19, 20, 21, 22, -1, 24, 25, 26, 27, 28, -- -1, -1, 31, -1, -1, -1, -1, -1, -1, -1, -- -1, -1, 41 -+ 26, 27, 28, -1, -1, 31, 32, -1, -1, -1, -+ -1, 37, -1, -1, -1, -1, 42, 5, 6, 7, -+ 8, 9, 10, 11, -1, 13, 14, 15, 16, 17, -+ 18, 19, 20, 21, 22, -1, 24, 25, 26, 27, -+ 28, -1, -1, 31, 32, -1, -1, -1, -1, -1, -+ -1, -1, -1, -1, 42 - }; - - /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing - symbol of state STATE-NUM. */ - static const yytype_uint8 yystos[] = - { -- 0, 54, 55, 56, 0, 55, 1, 5, 6, 7, -+ 0, 55, 56, 57, 0, 56, 1, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, -- 28, 29, 30, 31, 41, 57, 60, 64, 65, 66, -- 67, 68, 69, 73, 84, 99, 101, 44, 45, 37, -- 51, 96, 23, 37, 51, 87, 59, 37, 87, 47, -- 47, 44, 37, 47, 48, 61, 62, 63, 70, 74, -- 75, 66, 96, 37, 97, 98, 58, 87, 1, 64, -- 88, 89, 90, 60, 64, 87, 65, 37, 1, 74, -- 71, 72, 73, 44, 46, 74, 30, 32, 100, 33, -- 47, 50, 45, 46, 60, 44, 45, 37, 41, 47, -- 52, 70, 76, 77, 91, 92, 93, 94, 45, 1, -- 90, 74, 48, 49, 49, 49, 49, 73, 63, 95, -- 1, 65, 78, 79, 80, 81, 34, 45, 98, 94, -- 1, 37, 76, 34, 76, 95, 33, 47, 44, 46, -- 49, 44, 31, 50, 85, 86, 49, 37, 41, 47, -- 70, 82, 83, 49, 36, 46, 49, 49, 1, 78, -- 93, 34, 1, 41, 82, 82, 33, 47, 36, 81, -- 49, 49, 49, 49, 1, 78, 49, 49 -+ 28, 29, 30, 31, 32, 42, 58, 61, 65, 66, -+ 67, 68, 69, 70, 74, 85, 100, 102, 45, 46, -+ 38, 52, 97, 23, 38, 52, 88, 60, 38, 88, -+ 48, 48, 45, 38, 48, 50, 62, 63, 64, 71, -+ 75, 76, 67, 97, 38, 98, 99, 59, 88, 1, -+ 65, 89, 90, 91, 61, 65, 88, 66, 82, 38, -+ 1, 75, 72, 73, 74, 45, 47, 75, 30, 33, -+ 101, 34, 48, 51, 46, 47, 61, 45, 46, 38, -+ 42, 48, 53, 71, 77, 78, 92, 93, 94, 95, -+ 46, 1, 91, 75, 38, 42, 48, 71, 83, 84, -+ 49, 49, 49, 49, 74, 64, 96, 1, 79, 80, -+ 81, 82, 35, 46, 99, 95, 1, 38, 77, 35, -+ 77, 96, 34, 48, 45, 47, 1, 42, 83, 83, -+ 34, 48, 45, 31, 51, 86, 87, 49, 49, 37, -+ 47, 49, 49, 1, 79, 94, 49, 49, 1, 79, -+ 35, 37, 82, 49, 49, 49, 49 - }; - - #define yyerrok (yyerrstatus = 0) -@@ -890,17 +895,18 @@ static const yytype_uint8 yystos[] = - - #define YYRECOVERING() (!!yyerrstatus) - --#define YYBACKUP(Token, Value) \ --do \ -- if (yychar == YYEMPTY && yylen == 1) \ -- { \ -- yychar = (Token); \ -- yylval = (Value); \ -- YYPOPSTACK (1); \ -- goto yybackup; \ -- } \ -- else \ -- { \ -+#define YYBACKUP(Token, Value) \ -+do \ -+ if (yychar == YYEMPTY) \ -+ { \ -+ yychar = (Token); \ -+ yylval = (Value); \ -+ YYPOPSTACK (yylen); \ -+ yystate = *yyssp; \ -+ goto yybackup; \ -+ } \ -+ else \ -+ { \ - yyerror (YY_("syntax error: cannot back up")); \ - YYERROR; \ - } \ -@@ -995,6 +1001,8 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep) - YYSTYPE const * const yyvaluep; - #endif - { -+ FILE *yyo = yyoutput; -+ YYUSE (yyo); - if (!yyvaluep) - return; - # ifdef YYPRINT -@@ -1246,12 +1254,12 @@ static int - yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, - yytype_int16 *yyssp, int yytoken) - { -- YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]); -+ YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]); - YYSIZE_T yysize = yysize0; - YYSIZE_T yysize1; - enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; - /* Internationalized format string. */ -- const char *yyformat = 0; -+ const char *yyformat = YY_NULL; - /* Arguments of yyformat. */ - char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - /* Number of reported tokens (one for the "unexpected", one per -@@ -1311,7 +1319,7 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, - break; - } - yyarg[yycount++] = yytname[yyx]; -- yysize1 = yysize + yytnamerr (0, yytname[yyx]); -+ yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]); - if (! (yysize <= yysize1 - && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) - return 2; -@@ -1463,7 +1471,7 @@ yyparse () - `yyss': related to states. - `yyvs': related to semantic values. - -- Refer to the stacks thru separate pointers, to allow yyoverflow -+ Refer to the stacks through separate pointers, to allow yyoverflow - to reallocate them elsewhere. */ - - /* The state stack. */ -@@ -2346,7 +2354,7 @@ yyabortlab: - yyresult = 1; - goto yyreturn; - --#if !defined(yyoverflow) || YYERROR_VERBOSE -+#if !defined yyoverflow || YYERROR_VERBOSE - /*-------------------------------------------------. - | yyexhaustedlab -- memory exhaustion comes here. | - `-------------------------------------------------*/ -diff --git a/scripts/genksyms/parse.tab.h_shipped b/scripts/genksyms/parse.tab.h_shipped -index 93240a3..a4737de 100644 ---- a/scripts/genksyms/parse.tab.h_shipped -+++ b/scripts/genksyms/parse.tab.h_shipped -@@ -1,8 +1,8 @@ --/* A Bison parser, made by GNU Bison 2.5. */ -+/* A Bison parser, made by GNU Bison 2.5.1. */ - - /* Bison interface for Yacc-like parsers in C - -- Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. -+ Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, 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 -@@ -66,18 +66,19 @@ - EXPORT_SYMBOL_KEYW = 284, - ASM_PHRASE = 285, - ATTRIBUTE_PHRASE = 286, -- BRACE_PHRASE = 287, -- BRACKET_PHRASE = 288, -- EXPRESSION_PHRASE = 289, -- CHAR = 290, -- DOTS = 291, -- IDENT = 292, -- INT = 293, -- REAL = 294, -- STRING = 295, -- TYPE = 296, -- OTHER = 297, -- FILENAME = 298 -+ TYPEOF_PHRASE = 287, -+ BRACE_PHRASE = 288, -+ BRACKET_PHRASE = 289, -+ EXPRESSION_PHRASE = 290, -+ CHAR = 291, -+ DOTS = 292, -+ IDENT = 293, -+ INT = 294, -+ REAL = 295, -+ STRING = 296, -+ TYPE = 297, -+ OTHER = 298, -+ FILENAME = 299 - }; - #endif - -diff --git a/scripts/genksyms/parse.y b/scripts/genksyms/parse.y -index 23c3999..b9f4cf2 100644 ---- a/scripts/genksyms/parse.y -+++ b/scripts/genksyms/parse.y -@@ -103,6 +103,7 @@ static void record_compound(struct string_list **keyw, - - %token ASM_PHRASE - %token ATTRIBUTE_PHRASE -+%token TYPEOF_PHRASE - %token BRACE_PHRASE - %token BRACKET_PHRASE - %token EXPRESSION_PHRASE -@@ -220,8 +221,8 @@ storage_class_specifier: - type_specifier: - simple_type_specifier - | cvar_qualifier -- | TYPEOF_KEYW '(' decl_specifier_seq '*' ')' -- | TYPEOF_KEYW '(' decl_specifier_seq ')' -+ | TYPEOF_KEYW '(' parameter_declaration ')' -+ | TYPEOF_PHRASE - - /* References to s/u/e's defined elsewhere. Rearrange things - so that it is easier to expand the definition fully later. */ --- -1.9.2 - diff --git a/kernels/linux-libre-rt/3.14.14-a410a5e2b7-loongson-community.patch b/kernels/linux-libre-rt/3.18-rc6-48c0ad793f-loongson-community.patch index c7a63c2e5..b71da05e1 100644 --- a/kernels/linux-libre-rt/3.14.14-a410a5e2b7-loongson-community.patch +++ b/kernels/linux-libre-rt/3.18-rc6-48c0ad793f-loongson-community.patch @@ -1,19 +1,19 @@ diff --git a/Makefile b/Makefile -index 230c7f6..69dfbc4 100644 +index 2fd5c4e..a08399d 100644 --- a/Makefile +++ b/Makefile -@@ -244,8 +244,8 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ +@@ -297,8 +297,8 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ HOSTCC = gcc HOSTCXX = g++ --HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer +-HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -HOSTCXXFLAGS = -O2 -+HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O3 -fomit-frame-pointer ++HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O3 -fomit-frame-pointer -std=gnu89 +HOSTCXXFLAGS = -O3 - # Decide whether to build built-in, modular, or both. - # Normally, just do built-in. -@@ -582,7 +582,7 @@ all: vmlinux + ifeq ($(shell $(HOSTCC) -v 2>&1 | grep -c "clang version"), 1) + HOSTCFLAGS += -Wno-unused-value -Wno-unused-parameter \ +@@ -614,7 +614,7 @@ KBUILD_CFLAGS += $(call cc-option,-fno-delete-null-pointer-checks,) ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) else @@ -21,12 +21,12 @@ index 230c7f6..69dfbc4 100644 +KBUILD_CFLAGS += -O3 endif - include $(srctree)/arch/$(SRCARCH)/Makefile + # Tell gcc to never replace conditional load with a non-conditional one diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig -index 95fa1f1..82dc7e8 100644 +index f43aa53..4f71ec5 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -278,7 +278,7 @@ config LASAT +@@ -289,7 +289,7 @@ config LASAT config MACH_LOONGSON bool "Loongson family of machines" @@ -35,7 +35,7 @@ index 95fa1f1..82dc7e8 100644 help This enables the support of Loongson family of machines. -@@ -885,6 +885,60 @@ config CSRC_IOASIC +@@ -926,6 +926,60 @@ config CSRC_IOASIC config CSRC_R4K bool @@ -94,9 +94,9 @@ index 95fa1f1..82dc7e8 100644 + } + config CSRC_GIC + select MIPS_CM bool - -@@ -1492,6 +1546,15 @@ config CPU_LOONGSON2 +@@ -1564,6 +1618,15 @@ config CPU_LOONGSON2 bool select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL @@ -112,7 +112,7 @@ index 95fa1f1..82dc7e8 100644 select CPU_SUPPORTS_HIGHMEM select CPU_SUPPORTS_HUGEPAGES -@@ -2110,7 +2173,7 @@ config SYS_SUPPORTS_MICROMIPS +@@ -2212,7 +2275,7 @@ config CPU_SUPPORTS_MSA config ARCH_FLATMEM_ENABLE def_bool y @@ -121,22 +121,6 @@ index 95fa1f1..82dc7e8 100644 config ARCH_DISCONTIGMEM_ENABLE bool -diff --git a/arch/mips/Kconfig.debug b/arch/mips/Kconfig.debug -index b147e70..f32dfb0 100644 ---- a/arch/mips/Kconfig.debug -+++ b/arch/mips/Kconfig.debug -@@ -7,9 +7,9 @@ config TRACE_IRQFLAGS_SUPPORT - source "lib/Kconfig.debug" - - config EARLY_PRINTK -- bool "Early printk" if EXPERT -+ bool "Early printk" - depends on SYS_HAS_EARLY_PRINTK -- default y -+ default n - help - This option enables special console drivers which allow the kernel - to print messages very early in the bootup process. diff --git a/arch/mips/boot/compressed/Makefile b/arch/mips/boot/compressed/Makefile index 61af6b6..8598044 100644 --- a/arch/mips/boot/compressed/Makefile @@ -205,10 +189,10 @@ index 61af6b6..8598044 100644 -clean-files := $(objtree)/vmlinuz $(objtree)/vmlinuz.{32,ecoff,bin,srec} +clean-files := $(objtree)/vmlinuz $(objtree)/vmlinuz.{32,ecoff,bin,srec,unsstrip} diff --git a/arch/mips/boot/compressed/decompress.c b/arch/mips/boot/compressed/decompress.c -index c00c4dd..f4a656d 100644 +index 31903cf..14da73c 100644 --- a/arch/mips/boot/compressed/decompress.c +++ b/arch/mips/boot/compressed/decompress.c -@@ -27,8 +27,13 @@ unsigned long free_mem_end_ptr; +@@ -28,8 +28,13 @@ unsigned long free_mem_end_ptr; extern unsigned char __image_begin, __image_end; /* debug interfaces */ @@ -233,33 +217,15 @@ index 5a33409..de04ac9 100644 + *(.gnu.attributes) } } -diff --git a/arch/mips/include/asm/dma-mapping.h b/arch/mips/include/asm/dma-mapping.h -index 84238c5..28e0b03 100644 ---- a/arch/mips/include/asm/dma-mapping.h -+++ b/arch/mips/include/asm/dma-mapping.h -@@ -6,9 +6,7 @@ - #include <asm/cache.h> - #include <asm-generic/dma-coherent.h> - --#ifndef CONFIG_SGI_IP27 /* Kludge to fix 2.6.39 build for IP27 */ - #include <dma-coherence.h> --#endif - - extern struct dma_map_ops *mips_dma_map_ops; - diff --git a/arch/mips/include/asm/mach-loongson/cs5536/cs5536.h b/arch/mips/include/asm/mach-loongson/cs5536/cs5536.h -index a0ee0cb..c6df1c4 100644 +index a0ee0cb..4e18add 100644 --- a/arch/mips/include/asm/mach-loongson/cs5536/cs5536.h +++ b/arch/mips/include/asm/mach-loongson/cs5536/cs5536.h -@@ -299,7 +299,42 @@ extern void _wrmsr(u32 msr, u32 hi, u32 lo); - - /****************** NATIVE ***************************/ +@@ -301,5 +301,40 @@ extern void _wrmsr(u32 msr, u32 hi, u32 lo); /* GPIO : I/O SPACE; REG : 32BITS */ --#define GPIOL_OUT_VAL 0x00 --#define GPIOL_OUT_EN 0x04 -+#define GPIOL_OUT_VAL 0x00 -+#define GPIOL_OUT_EN 0x04 -+#define GPIOL_OUT_AUX1_SEL 0x10 + #define GPIOL_OUT_VAL 0x00 + #define GPIOL_OUT_EN 0x04 ++#define GPIOL_OUT_AUX1_SEL 0x10 +/* SMB : I/O SPACE, REG : 8BITS WIDTH */ +#define SMB_SDA 0x00 +#define SMB_STS 0x01 @@ -297,194 +263,51 @@ index a0ee0cb..c6df1c4 100644 #endif /* _CS5536_H */ diff --git a/arch/mips/include/asm/mach-loongson/cs5536/cs5536_mfgpt.h b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_mfgpt.h -index 021d017..d058e46 100644 +index 021d017..50aafca 100644 --- a/arch/mips/include/asm/mach-loongson/cs5536/cs5536_mfgpt.h +++ b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_mfgpt.h -@@ -10,26 +10,45 @@ - - #ifdef CONFIG_CS5536_MFGPT - extern void setup_mfgpt0_timer(void); --extern void disable_mfgpt0_counter(void); --extern void enable_mfgpt0_counter(void); -+extern void disable_mfgpt_counter(void); -+extern void enable_mfgpt_counter(void); - #else - static inline void __maybe_unused setup_mfgpt0_timer(void) - { - } --static inline void __maybe_unused disable_mfgpt0_counter(void) -+static inline void __maybe_unused disable_mfgpt_counter(void) - { - } --static inline void __maybe_unused enable_mfgpt0_counter(void) -+static inline void __maybe_unused enable_mfgpt_counter(void) - { - } - #endif +@@ -28,8 +28,19 @@ static inline void __maybe_unused enable_mfgpt0_counter(void) + #define COMPARE ((MFGPT_TICK_RATE + HZ/2) / HZ) --#define MFGPT_TICK_RATE 14318000 --#define COMPARE ((MFGPT_TICK_RATE + HZ/2) / HZ) -+#define MFGPT_CLK_RATE(c) ((14318000UL-32768)*c + 32768) -+#define MFGPT_TICK_RATE(c, scale) (MFGPT_CLK_RATE(c) / (1 << scale)) -+#define MFGPT_COMPARE(c, scale) ((MFGPT_TICK_RATE(c, scale)+HZ/2)/HZ) + #define MFGPT_BASE mfgpt_base ++#define MFGPT0_CMP1 (MFGPT_BASE + 0) + #define MFGPT0_CMP2 (MFGPT_BASE + 2) + #define MFGPT0_CNT (MFGPT_BASE + 4) + #define MFGPT0_SETUP (MFGPT_BASE + 6) --#define MFGPT_BASE mfgpt_base --#define MFGPT0_CMP2 (MFGPT_BASE + 2) --#define MFGPT0_CNT (MFGPT_BASE + 4) --#define MFGPT0_SETUP (MFGPT_BASE + 6) -+#define MFGPT_SETUP_ENABLE (1 << 15) -+#define MFGPT_SETUP_ACK (3 << 13) -+#define MFGPT_SETUP_SETUP (1 << 12) -+#define MFGPT_SETUP_CMP2EVT (3 << 8) -+#define MFGPT_SETUP_CMP1EVT (3 << 6) -+#define MFGPT_SETUP_CLOCK(c) (c << 4) -+#define MFGPT_SETUP_SCALE(scale) scale -+ -+#define MFGPT0_CMP1 mfgpt_base -+#define MFGPT0_CMP2 (mfgpt_base + 0x02) -+#define MFGPT0_CNT (mfgpt_base + 0x04) -+#define MFGPT0_SETUP (mfgpt_base + 0x06) -+ -+#define MFGPT1_CMP1 (mfgpt_base + 0x08) -+#define MFGPT1_CMP2 (mfgpt_base + 0x0A) -+#define MFGPT1_CNT (mfgpt_base + 0x0C) -+#define MFGPT1_SETUP (mfgpt_base + 0x0E) -+ -+#define MFGPT2_CMP1 (mfgpt_base + 0x10) -+#define MFGPT2_CMP2 (mfgpt_base + 0x12) -+#define MFGPT2_CNT (mfgpt_base + 0x14) -+#define MFGPT2_SETUP (mfgpt_base + 0x16) - - #endif /*!_CS5536_MFGPT_H */ -diff --git a/arch/mips/include/asm/mach-loongson/cs5536/cs5536_pci.h b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_pci.h -index 8a7ecb4..ac01334 100644 ---- a/arch/mips/include/asm/mach-loongson/cs5536/cs5536_pci.h -+++ b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_pci.h -@@ -13,6 +13,7 @@ - - #include <linux/types.h> - #include <linux/pci_regs.h> -+#include <linux/pci_ids.h> - - extern void cs5536_pci_conf_write4(int function, int reg, u32 value); - extern u32 cs5536_pci_conf_read4(int function, int reg); -diff --git a/arch/mips/include/asm/mach-loongson/cs5536/cs5536_vsm.h b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_vsm.h -index 1f17c18..9bc368f0d 100644 ---- a/arch/mips/include/asm/mach-loongson/cs5536/cs5536_vsm.h -+++ b/arch/mips/include/asm/mach-loongson/cs5536/cs5536_vsm.h -@@ -17,15 +17,43 @@ typedef u32 (*cs5536_pci_vsm_read)(int reg); - extern void pci_##name##_write_reg(int reg, u32 value); \ - extern u32 pci_##name##_read_reg(int reg); - -+#define DEFINE_CS5536_MODULE(name) \ -+static void pci_##name##_write_reg(int reg, u32 value) {} \ -+static u32 pci_##name##_read_reg(int reg) { return 0; } -+ -+/* isa module */ -+#ifdef CONFIG_CS5536_ISA -+DECLARE_CS5536_MODULE(isa) -+#else -+DEFINE_CS5536_MODULE(isa) -+#endif -+ - /* ide module */ -+#ifdef CONFIG_CS5536_IDE - DECLARE_CS5536_MODULE(ide) -+#else -+DEFINE_CS5536_MODULE(ide) -+#endif -+ - /* acc module */ -+#ifdef CONFIG_CS5536_AUDIO - DECLARE_CS5536_MODULE(acc) -+#else -+DEFINE_CS5536_MODULE(acc) -+#endif -+ - /* ohci module */ -+#ifdef CONFIG_CS5536_OHCI - DECLARE_CS5536_MODULE(ohci) --/* isa module */ --DECLARE_CS5536_MODULE(isa) -+#else -+DEFINE_CS5536_MODULE(ohci) -+#endif ++#define MFGPT1_CMP1 (MFGPT_BASE + 0x08) ++#define MFGPT1_CMP2 (MFGPT_BASE + 0x0A) ++#define MFGPT1_CNT (MFGPT_BASE + 0x0C) ++#define MFGPT1_SETUP (MFGPT_BASE + 0x0E) + - /* ehci module */ -+#ifdef CONFIG_CS5536_EHCI - DECLARE_CS5536_MODULE(ehci) -+#else -+DEFINE_CS5536_MODULE(ehci) -+#endif - - #endif /* _CS5536_VSM_H */ -diff --git a/arch/mips/include/asm/mach-loongson/gpio.h b/arch/mips/include/asm/mach-loongson/gpio.h -index 211a7b7..f15db3c 100644 ---- a/arch/mips/include/asm/mach-loongson/gpio.h -+++ b/arch/mips/include/asm/mach-loongson/gpio.h -@@ -13,12 +13,16 @@ - #ifndef __STLS2F_GPIO_H - #define __STLS2F_GPIO_H - -+#ifdef CONFIG_GPIOLIB -+#define ARCH_NR_GPIOS 4 - #include <asm-generic/gpio.h> - - extern void gpio_set_value(unsigned gpio, int value); - extern int gpio_get_value(unsigned gpio); - extern int gpio_cansleep(unsigned gpio); - -+#endif ++#define MFGPT2_CMP1 (MFGPT_BASE + 0x10) ++#define MFGPT2_CMP2 (MFGPT_BASE + 0x12) ++#define MFGPT2_CNT (MFGPT_BASE + 0x14) ++#define MFGPT2_SETUP (MFGPT_BASE + 0x16) + - /* The chip can do interrupt - * but it has not been tested and doc not clear - */ + #endif /*!_CS5536_MFGPT_H */ diff --git a/arch/mips/include/asm/mach-loongson/loongson.h b/arch/mips/include/asm/mach-loongson/loongson.h -index b286534..222d179 100644 +index 92bf76c..e05a016 100644 --- a/arch/mips/include/asm/mach-loongson/loongson.h +++ b/arch/mips/include/asm/mach-loongson/loongson.h -@@ -32,17 +32,13 @@ extern void __init prom_init_memory(void); - extern void __init prom_init_cmdline(void); - extern void __init prom_init_machtype(void); - extern void __init prom_init_env(void); --#ifdef CONFIG_LOONGSON_UART_BASE --extern unsigned long _loongson_uart_base, loongson_uart_base; --extern void prom_init_loongson_uart_base(void); --#endif -+extern void __init prom_init_uart_base(void); +@@ -46,6 +46,12 @@ static inline void prom_init_uart_base(void) + #endif + } --static inline void prom_init_uart_base(void) --{ --#ifdef CONFIG_LOONGSON_UART_BASE -- prom_init_loongson_uart_base(); --#endif --} +/* + * Copy kernel command line from arcs_cmdline + */ +#include <asm/setup.h> +extern char loongson_cmdline[COMMAND_LINE_SIZE]; - ++ /* irq operation functions */ extern void bonito_irqdispatch(void); -@@ -249,6 +245,12 @@ extern struct cpufreq_frequency_table loongson2_clockmod_table[]; - - /* Chip Config */ - #define LOONGSON_CHIPCFG0 LOONGSON_REG(LOONGSON_REGBASE + 0x80) -+#define LOONGSON_GET_CPUFREQ() (LOONGSON_CHIPCFG0 & 7) -+ -+#define LOONGSON_SET_CPUFREQ(level) do { \ -+ LOONGSON_CHIPCFG0 = (LOONGSON_CHIPCFG0 & (~7)) | (level); \ -+} while (0) -+ - #endif - - /* + extern void __init bonito_irq_init(void); diff --git a/arch/mips/include/asm/mach-loongson/machine.h b/arch/mips/include/asm/mach-loongson/machine.h -index 3810d5c..d219499 100644 +index 228e3784..a2faa87 100644 --- a/arch/mips/include/asm/mach-loongson/machine.h +++ b/arch/mips/include/asm/mach-loongson/machine.h -@@ -24,4 +24,10 @@ +@@ -24,6 +24,12 @@ #endif @@ -494,7 +317,9 @@ index 3810d5c..d219499 100644 + +#endif + - #endif /* __ASM_MACH_LOONGSON_MACHINE_H */ + #ifdef CONFIG_LOONGSON_MACH3X + + #define LOONGSON_MACHTYPE MACH_LEMOTE_A1101 diff --git a/arch/mips/include/asm/mach-loongson1/clock.h b/arch/mips/include/asm/mach-loongson1/clock.h new file mode 100644 index 0000000..dd1afdb @@ -585,24 +410,28 @@ index 0000000..6d5db23 +#define LS1X_INTC_INTEDGE(n) LS1X_INTC_REG(n, 0x14) + +#endif /* __ASM_MACH_LOONGSON1_REGS_INTC_H */ -diff --git a/arch/mips/include/asm/module.h b/arch/mips/include/asm/module.h -index 44b705d..c28a782 100644 ---- a/arch/mips/include/asm/module.h -+++ b/arch/mips/include/asm/module.h -@@ -126,6 +126,8 @@ search_module_dbetables(unsigned long addr) - #define MODULE_PROC_FAMILY "LOONGSON1 " - #elif defined CONFIG_CPU_LOONGSON2 - #define MODULE_PROC_FAMILY "LOONGSON2 " -+#elif defined CONFIG_CPU_LOONGSON1 -+#define MODULE_PROC_FAMILY "LOONGSON1 " - #elif defined CONFIG_CPU_CAVIUM_OCTEON - #define MODULE_PROC_FAMILY "OCTEON " - #elif defined CONFIG_CPU_XLR +diff --git a/arch/mips/include/asm/sparsemem.h b/arch/mips/include/asm/sparsemem.h +index b1071c1..8b8e551 100644 +--- a/arch/mips/include/asm/sparsemem.h ++++ b/arch/mips/include/asm/sparsemem.h +@@ -11,7 +11,11 @@ + #else + # define SECTION_SIZE_BITS 28 + #endif +-#define MAX_PHYSMEM_BITS 48 ++#if !defined(CONFIG_MACH_LOONGSON) || !defined(CONFIG_CPU_LOONGSON2) /* Commit c461731836 broke Loongson2. */ ++# define MAX_PHYSMEM_BITS 48 ++#else ++# define MAX_PHYSMEM_BITS 35 ++#endif + + #endif /* CONFIG_SPARSEMEM */ + #endif /* _MIPS_SPARSEMEM_H */ diff --git a/arch/mips/include/asm/timex.h b/arch/mips/include/asm/timex.h -index c542475..74fef34 100644 +index b05bb70..44c9a69 100644 --- a/arch/mips/include/asm/timex.h +++ b/arch/mips/include/asm/timex.h -@@ -10,6 +10,10 @@ +@@ -11,6 +11,10 @@ #ifdef __KERNEL__ @@ -610,14 +439,14 @@ index c542475..74fef34 100644 +#define ARCH_HAS_PREPARED_LPJ +#endif + - #include <asm/cpu-features.h> - #include <asm/mipsregs.h> - #include <asm/cpu-type.h> + #include <linux/compiler.h> + + #include <asm/cpu.h> diff --git a/arch/mips/include/uapi/asm/inst.h b/arch/mips/include/uapi/asm/inst.h -index f25181b..d243152 100644 +index 4bfdb9d..f57d892 100644 --- a/arch/mips/include/uapi/asm/inst.h +++ b/arch/mips/include/uapi/asm/inst.h -@@ -62,6 +62,8 @@ enum spec_op { +@@ -65,6 +65,8 @@ enum spec_op { enum spec2_op { madd_op, maddu_op, mul_op, spec2_3_unused_op, msub_op, msubu_op, /* more unused ops */ @@ -626,7 +455,7 @@ index f25181b..d243152 100644 clz_op = 0x20, clo_op, dclz_op = 0x24, dclo_op, sdbpp_op = 0x3f -@@ -135,7 +137,7 @@ enum cop0_com_func { +@@ -146,7 +148,7 @@ enum cop0_com_func { */ enum cop1_fmt { s_fmt, d_fmt, e_fmt, q_fmt, @@ -635,7 +464,7 @@ index f25181b..d243152 100644 }; /* -@@ -164,7 +166,8 @@ enum cop1_sdw_func { +@@ -175,7 +177,8 @@ enum cop1_sdw_func { enum cop1x_func { lwxc1_op = 0x00, ldxc1_op = 0x01, swxc1_op = 0x08, sdxc1_op = 0x09, @@ -646,7 +475,7 @@ index f25181b..d243152 100644 msub_s_op = 0x28, msub_d_op = 0x29, msub_e_op = 0x2a, nmadd_s_op = 0x30, diff --git a/arch/mips/kernel/scall64-o32.S b/arch/mips/kernel/scall64-o32.S -index 6788727..0f81805 100644 +index 6f8db9f..196bb27 100644 --- a/arch/mips/kernel/scall64-o32.S +++ b/arch/mips/kernel/scall64-o32.S @@ -26,6 +26,18 @@ @@ -669,10 +498,10 @@ index 6788727..0f81805 100644 SAVE_SOME TRACE_IRQS_ON_RELOAD diff --git a/arch/mips/kernel/time.c b/arch/mips/kernel/time.c -index dcb8e5d..45177bc 100644 +index 8d01709..9cd25da 100644 --- a/arch/mips/kernel/time.c +++ b/arch/mips/kernel/time.c -@@ -120,6 +120,11 @@ static __init int cpu_has_mfc0_count_bug(void) +@@ -119,6 +119,11 @@ static __init int cpu_has_mfc0_count_bug(void) void __init time_init(void) { @@ -705,7 +534,7 @@ index eeddc58..d7bec00 100644 obj-$(CONFIG_PCI) += iomap-pci.o diff --git a/arch/mips/loongson/Kconfig b/arch/mips/loongson/Kconfig -index 263beb9..d56d594 100644 +index 1b91fc6a..aa1fd8e 100644 --- a/arch/mips/loongson/Kconfig +++ b/arch/mips/loongson/Kconfig @@ -32,12 +32,12 @@ config LEMOTE_FULOONG2E @@ -723,7 +552,7 @@ index 263beb9..d56d594 100644 select CSRC_R4K if ! MIPS_EXTERNAL_TIMER select DMA_NONCOHERENT select GENERIC_ISA_DMA_SUPPORT_BROKEN -@@ -45,23 +45,68 @@ config LEMOTE_MACH2F +@@ -45,14 +45,13 @@ config LEMOTE_MACH2F select HW_HAS_PCI select I8259 select IRQ_CPU @@ -740,10 +569,10 @@ index 263beb9..d56d594 100644 help Lemote Loongson 2F family machines utilize the 2F revision of Loongson processor and the AMD CS5536 south bridge. - +@@ -60,6 +59,31 @@ config LEMOTE_MACH2F These family machines include fuloong2f mini PC, yeeloong2f notebook, LingLoong allinone PC and so forth. -+ + +config DEXXON_GDIUM + bool "Dexxon Gdium Netbook" + select ARCH_SPARSEMEM_ENABLE @@ -768,43 +597,11 @@ index 263beb9..d56d594 100644 + select HAVE_PWM if MFD_SM501 + help + Dexxon gdium netbook based on Loongson 2F and SM502. - endchoice - - config CS5536 -+ select CS5536_IDE if (PATA_AMD || BLK_DEV_AMD74XX || PATA_CS5536) -+ select CS5536_OHCI if USB_OHCI_HCD -+ select CS5536_EHCI if USB_EHCI_HCD -+ select CS5536_AUDIO if SND_CS5535AUDIO -+ select CS5536_ISA -+ bool -+ -+config CS5536_ISA -+ select ISA -+ bool -+ -+config CS5536_IDE -+ bool -+ -+config CS5536_OHCI -+ bool + -+config CS5536_EHCI -+ bool -+ -+config CS5536_AUDIO - bool - - config CS5536_MFGPT -@@ -81,13 +126,25 @@ config LOONGSON_SUSPEND - default y - depends on CPU_SUPPORTS_CPUFREQ && SUSPEND - --config LOONGSON_UART_BASE -- bool -- default y -- depends on EARLY_PRINTK || SERIAL_8250 -- - config LOONGSON_MC146818 + config LOONGSON_MACH3X + bool "Generic Loongson 3 family machines" + select ARCH_SPARSEMEM_ENABLE +@@ -135,6 +159,24 @@ config LOONGSON_MC146818 bool default n @@ -825,42 +622,37 @@ index 263beb9..d56d594 100644 + I have no information about how to determine which version your board + is, If the default config doesn't work for it, please change it to + smaller ones. - endif # MACH_LOONGSON ++ + config LEFI_FIRMWARE_INTERFACE + bool + diff --git a/arch/mips/loongson/Makefile b/arch/mips/loongson/Makefile -index 0dc0055..4b69866 100644 +index 7429994..63214c8 100644 --- a/arch/mips/loongson/Makefile +++ b/arch/mips/loongson/Makefile -@@ -15,3 +15,9 @@ obj-$(CONFIG_LEMOTE_FULOONG2E) += fuloong-2e/ - # - +@@ -17,6 +17,12 @@ obj-$(CONFIG_LEMOTE_FULOONG2E) += fuloong-2e/ obj-$(CONFIG_LEMOTE_MACH2F) += lemote-2f/ -+ -+# + + # +# Dexxon gdium netbook, based on loongson 2F and SM502 +# + +obj-$(CONFIG_DEXXON_GDIUM) += gdium/ ++ ++# + # All Loongson-3 family machines + # + diff --git a/arch/mips/loongson/Platform b/arch/mips/loongson/Platform -index 29692e5..6be5dff 100644 +index 0ac20eb..cd957dd 100644 --- a/arch/mips/loongson/Platform +++ b/arch/mips/loongson/Platform -@@ -30,3 +30,4 @@ platform-$(CONFIG_MACH_LOONGSON) += loongson/ +@@ -30,4 +30,5 @@ platform-$(CONFIG_MACH_LOONGSON) += loongson/ cflags-$(CONFIG_MACH_LOONGSON) += -I$(srctree)/arch/mips/include/asm/mach-loongson -mno-branch-likely load-$(CONFIG_LEMOTE_FULOONG2E) += 0xffffffff80100000 load-$(CONFIG_LEMOTE_MACH2F) += 0xffffffff80200000 +load-$(CONFIG_DEXXON_GDIUM) += 0xffffffff80200000 -diff --git a/arch/mips/loongson/common/Makefile b/arch/mips/loongson/common/Makefile -index 9e4484c..73f1f9f 100644 ---- a/arch/mips/loongson/common/Makefile -+++ b/arch/mips/loongson/common/Makefile -@@ -12,7 +12,6 @@ obj-$(CONFIG_PCI) += pci.o - # - obj-$(CONFIG_EARLY_PRINTK) += early_printk.o - obj-$(CONFIG_SERIAL_8250) += serial.o --obj-$(CONFIG_LOONGSON_UART_BASE) += uart_base.o - obj-$(CONFIG_LOONGSON_MC146818) += rtc.o - - # + load-$(CONFIG_LOONGSON_MACH3X) += 0xffffffff80200000 diff --git a/arch/mips/loongson/common/cmdline.c b/arch/mips/loongson/common/cmdline.c index 72fed00..96d5919 100644 --- a/arch/mips/loongson/common/cmdline.c @@ -913,921 +705,18 @@ index 72fed00..96d5919 100644 + /* copy arcs_cmdline into loongson_cmdline */ + strncpy(loongson_cmdline, arcs_cmdline, COMMAND_LINE_SIZE); } -diff --git a/arch/mips/loongson/common/cs5536/Makefile b/arch/mips/loongson/common/cs5536/Makefile -index f12e640..70f6057 100644 ---- a/arch/mips/loongson/common/cs5536/Makefile -+++ b/arch/mips/loongson/common/cs5536/Makefile -@@ -2,8 +2,13 @@ - # Makefile for CS5536 support. - # - --obj-$(CONFIG_CS5536) += cs5536_pci.o cs5536_ide.o cs5536_acc.o cs5536_ohci.o \ -- cs5536_isa.o cs5536_ehci.o -+obj-$(CONFIG_CS5536) += cs5536_pci.o -+ -+obj-$(CONFIG_ISA) += cs5536_isa.o -+obj-$(CONFIG_CS5536_IDE) += cs5536_ide.o -+obj-$(CONFIG_CS5536_AUDIO) += cs5536_acc.o -+obj-$(CONFIG_CS5536_OHCI) += cs5536_ohci.o -+obj-$(CONFIG_CS5536_EHCI) += cs5536_ehci.o - - # - # Enable cs5536 mfgpt Timer -diff --git a/arch/mips/loongson/common/cs5536/cs5536_mfgpt.c b/arch/mips/loongson/common/cs5536/cs5536_mfgpt.c -index c639b9d..a7078ae 100644 ---- a/arch/mips/loongson/common/cs5536/cs5536_mfgpt.c -+++ b/arch/mips/loongson/common/cs5536/cs5536_mfgpt.c -@@ -7,6 +7,9 @@ - * Copyright (C) 2009 Lemote Inc. - * Author: Wu zhangjin, wuzhangjin@gmail.com - * -+ * Copyright (C) 2010 Lemote Inc. -+ * Author: Gang Liang, randomizedthinking@gmail.com -+ * - * Reference: AMD Geode(TM) CS5536 Companion Device Data Book - * - * This program is free software; you can redistribute it and/or modify it -@@ -15,11 +18,24 @@ - * option) any later version. - */ - -+/* -+ * The MFGPT base address is variable, i.e., it could change over time. In -+ * reality, it only changes once when setting up the PCI memory mapping (occurs -+ * about 0.2 second from boot). But because of this, we have to read in the -+ * mfgpt base address repeatly in the beginning of various routines, most -+ * noticeably, mfgpt1_read_cycle (for sched_clock), and mfgpt1_interrupt. -+ * -+ * The source of problem is that PMON and the current cs5536 set up pci -+ * register window differently (to be further confirmed). Can we set -+ * them the same so as to save the trouble here? -+ * -+ * Now an ugly hack is used to save a few CPU cycles... likely an -+ * over-optimization. Feel free to remove it. -+ */ -+ - #include <linux/io.h> - #include <linux/init.h> - #include <linux/module.h> --#include <linux/jiffies.h> --#include <linux/spinlock.h> - #include <linux/interrupt.h> - #include <linux/clockchips.h> - -@@ -27,108 +43,143 @@ - - #include <cs5536/cs5536_mfgpt.h> - --DEFINE_SPINLOCK(mfgpt_lock); --EXPORT_SYMBOL(mfgpt_lock); -+static void mfgpt0_set_mode(enum clock_event_mode, struct clock_event_device*); -+static int mfgpt0_next_event(unsigned long, struct clock_event_device*); -+static irqreturn_t mfgpt0_interrupt(int irq, void *dev_id); -+static void mfgpt0_start_timer(u16 delta); - -+static cycle_t mfgpt1_read_cycle(struct clocksource *cs); -+ -+static enum clock_event_mode mfgpt0_mode = CLOCK_EVT_MODE_SHUTDOWN; - static u32 mfgpt_base; - --/* -- * Initialize the MFGPT timer. -- * -- * This is also called after resume to bring the MFGPT into operation again. -- */ -+static struct clock_event_device mfgpt0_clockevent = { -+ .name = "mfgpt0", -+ .features = CLOCK_EVT_MODE_ONESHOT | CLOCK_EVT_FEAT_PERIODIC, -+ .set_mode = mfgpt0_set_mode, -+ .set_next_event = mfgpt0_next_event, -+ .rating = 220, -+ .irq = CS5536_MFGPT_INTR, -+}; -+ -+static struct irqaction irq5 = { -+ .handler = mfgpt0_interrupt, -+ .flags = IRQF_DISABLED | IRQF_NOBALANCING | IRQF_TIMER, -+ .name = "mfgpt0-timer" -+}; -+ -+static struct clocksource mfgpt1_clocksource = { -+ .name = "mfgpt1", -+ .rating = 210, -+ .read = mfgpt1_read_cycle, -+ .mask = CLOCKSOURCE_MASK(16), -+ .flags = CLOCK_SOURCE_IS_CONTINUOUS -+}; - --/* disable counter */ --void disable_mfgpt0_counter(void) -+static inline void enable_mfgpt0_counter(void) - { -- outw(inw(MFGPT0_SETUP) & 0x7fff, MFGPT0_SETUP); -+ u32 basehi; -+ _rdmsr(DIVIL_MSR_REG(DIVIL_LBAR_MFGPT), &basehi, &mfgpt_base); -+ -+ /* clockevent: 14M, divisor = 8 (scale=3), CMP2 event mode */ -+ outw(MFGPT_SETUP_ACK | MFGPT_SETUP_CMP2EVT | -+ MFGPT_SETUP_CLOCK(1) | MFGPT_SETUP_SCALE(3), MFGPT0_SETUP); -+ outw(0, MFGPT0_CNT); -+ outw(MFGPT_COMPARE(1, 3), MFGPT0_CMP2); -+ outw(0xFFFF, MFGPT0_SETUP); - } --EXPORT_SYMBOL(disable_mfgpt0_counter); - --/* enable counter, comparator2 to event mode, 14.318MHz clock */ --void enable_mfgpt0_counter(void) -+static inline void enable_mfgpt1_counter(void) - { -- outw(0xe310, MFGPT0_SETUP); -+ u32 basehi; -+ _rdmsr(DIVIL_MSR_REG(DIVIL_LBAR_MFGPT), &basehi, &mfgpt_base); -+ -+ /* clocksource: 32K w/ divisor = 2 (scale=1) */ -+ outw(MFGPT_SETUP_ACK | MFGPT_SETUP_CLOCK(0) | -+ MFGPT_SETUP_SCALE(1), MFGPT1_SETUP); -+ -+ outw(0, MFGPT1_CNT); -+ outw(0xFFFF, MFGPT1_CMP2); /* CNT won't tick with no CMP set */ -+ outw(0xFFFF, MFGPT1_SETUP); - } --EXPORT_SYMBOL(enable_mfgpt0_counter); - --static void init_mfgpt_timer(enum clock_event_mode mode, -- struct clock_event_device *evt) -+void enable_mfgpt_counter(void) - { -- spin_lock(&mfgpt_lock); -- -- switch (mode) { -- case CLOCK_EVT_MODE_PERIODIC: -- outw(COMPARE, MFGPT0_CMP2); /* set comparator2 */ -- outw(0, MFGPT0_CNT); /* set counter to 0 */ -- enable_mfgpt0_counter(); -- break; -- -- case CLOCK_EVT_MODE_SHUTDOWN: -- case CLOCK_EVT_MODE_UNUSED: -- if (evt->mode == CLOCK_EVT_MODE_PERIODIC || -- evt->mode == CLOCK_EVT_MODE_ONESHOT) -- disable_mfgpt0_counter(); -- break; -- -- case CLOCK_EVT_MODE_ONESHOT: -- /* The oneshot mode have very high deviation, Not use it! */ -- break; -- -- case CLOCK_EVT_MODE_RESUME: -- /* Nothing to do here */ -- break; -- } -- spin_unlock(&mfgpt_lock); -+ /* TODO: add a mfgpt system hard reset here -+ * timers might not reset correctly when OS crashes -+ */ -+ -+ enable_mfgpt0_counter(); -+ enable_mfgpt1_counter(); - } -+EXPORT_SYMBOL(enable_mfgpt_counter); - --static struct clock_event_device mfgpt_clockevent = { -- .name = "mfgpt", -- .features = CLOCK_EVT_FEAT_PERIODIC, -- .set_mode = init_mfgpt_timer, -- .irq = CS5536_MFGPT_INTR, --}; -+void disable_mfgpt_counter(void) -+{ -+ outw(0x7FFF, MFGPT0_SETUP); -+ outw(0x7FFF, MFGPT1_SETUP); -+} -+EXPORT_SYMBOL(disable_mfgpt_counter); - --static irqreturn_t timer_interrupt(int irq, void *dev_id) -+static void mfgpt0_start_timer(u16 delta) - { -- u32 basehi; -+ outw(0x7FFF, MFGPT0_SETUP); -+ outw(0, MFGPT0_CNT); -+ outw(delta, MFGPT0_CMP2); -+ outw(0xFFFF, MFGPT0_SETUP); -+} - -- /* -- * get MFGPT base address -- * -- * NOTE: do not remove me, it's need for the value of mfgpt_base is -- * variable -- */ -+static void mfgpt0_set_mode(enum clock_event_mode mode, -+ struct clock_event_device *evt) -+{ -+ outw(0x7FFF, MFGPT0_SETUP); -+ if (mode == CLOCK_EVT_MODE_PERIODIC) -+ mfgpt0_start_timer(MFGPT_COMPARE(1, 3)); -+ -+ mfgpt0_mode = mode; -+} -+ -+static int mfgpt0_next_event(unsigned long delta, -+ struct clock_event_device *evt) -+{ -+ mfgpt0_start_timer(delta); -+ return 0; -+} -+ -+static irqreturn_t mfgpt0_interrupt(int irq, void *dev_id) -+{ -+ u32 basehi; - _rdmsr(DIVIL_MSR_REG(DIVIL_LBAR_MFGPT), &basehi, &mfgpt_base); - -- /* ack */ -- outw(inw(MFGPT0_SETUP) | 0x4000, MFGPT0_SETUP); -+ /* stop the timer and ack the interrupt */ -+ outw(0x7FFF, MFGPT0_SETUP); - -- mfgpt_clockevent.event_handler(&mfgpt_clockevent); -+ if (mfgpt0_mode == CLOCK_EVT_MODE_SHUTDOWN) -+ return IRQ_HANDLED; - -+ /* restart timer for periodic mode */ -+ if (mfgpt0_mode == CLOCK_EVT_MODE_PERIODIC) -+ outw(0xFFFF, MFGPT0_SETUP); -+ -+ mfgpt0_clockevent.event_handler(&mfgpt0_clockevent); - return IRQ_HANDLED; - } - --static struct irqaction irq5 = { -- .handler = timer_interrupt, -- .flags = IRQF_NOBALANCING | IRQF_TIMER, -- .name = "timer" --}; -- - /* - * Initialize the conversion factor and the min/max deltas of the clock event - * structure and register the clock event source with the framework. - */ - void __init setup_mfgpt0_timer(void) - { -- u32 basehi; -- struct clock_event_device *cd = &mfgpt_clockevent; -+ struct clock_event_device *cd = &mfgpt0_clockevent; - unsigned int cpu = smp_processor_id(); -- - cd->cpumask = cpumask_of(cpu); -- clockevent_set_clock(cd, MFGPT_TICK_RATE); -- cd->max_delta_ns = clockevent_delta2ns(0xffff, cd); -- cd->min_delta_ns = clockevent_delta2ns(0xf, cd); -+ -+ cd->shift = 22; -+ cd->mult = div_sc(MFGPT_TICK_RATE(1, 3), NSEC_PER_SEC, cd->shift); -+ -+ cd->min_delta_ns = clockevent_delta2ns(0xF, cd); -+ cd->max_delta_ns = clockevent_delta2ns(0xFFFF, cd); - - /* Enable MFGPT0 Comparator 2 Output to the Interrupt Mapper */ - _wrmsr(DIVIL_MSR_REG(MFGPT_IRQ), 0, 0x100); -@@ -136,79 +187,24 @@ void __init setup_mfgpt0_timer(void) - /* Enable Interrupt Gate 5 */ - _wrmsr(DIVIL_MSR_REG(PIC_ZSEL_LOW), 0, 0x50000); - -- /* get MFGPT base address */ -- _rdmsr(DIVIL_MSR_REG(DIVIL_LBAR_MFGPT), &basehi, &mfgpt_base); -- -+ enable_mfgpt0_counter(); - clockevents_register_device(cd); -- - setup_irq(CS5536_MFGPT_INTR, &irq5); - } - --/* -- * Since the MFGPT overflows every tick, its not very useful -- * to just read by itself. So use jiffies to emulate a free -- * running counter: -- */ --static cycle_t mfgpt_read(struct clocksource *cs) -+static cycle_t mfgpt1_read_cycle(struct clocksource *cs) - { -- unsigned long flags; -- int count; -- u32 jifs; -- static int old_count; -- static u32 old_jifs; -- -- spin_lock_irqsave(&mfgpt_lock, flags); -- /* -- * Although our caller may have the read side of xtime_lock, -- * this is now a seqlock, and we are cheating in this routine -- * by having side effects on state that we cannot undo if -- * there is a collision on the seqlock and our caller has to -- * retry. (Namely, old_jifs and old_count.) So we must treat -- * jiffies as volatile despite the lock. We read jiffies -- * before latching the timer count to guarantee that although -- * the jiffies value might be older than the count (that is, -- * the counter may underflow between the last point where -- * jiffies was incremented and the point where we latch the -- * count), it cannot be newer. -- */ -- jifs = jiffies; -- /* read the count */ -- count = inw(MFGPT0_CNT); -- -- /* -- * It's possible for count to appear to go the wrong way for this -- * reason: -- * -- * The timer counter underflows, but we haven't handled the resulting -- * interrupt and incremented jiffies yet. -- * -- * Previous attempts to handle these cases intelligently were buggy, so -- * we just do the simple thing now. -- */ -- if (count < old_count && jifs == old_jifs) -- count = old_count; -- -- old_count = count; -- old_jifs = jifs; -- -- spin_unlock_irqrestore(&mfgpt_lock, flags); -- -- return (cycle_t) (jifs * COMPARE) + count; -+ return inw(MFGPT1_CNT); - } - --static struct clocksource clocksource_mfgpt = { -- .name = "mfgpt", -- .rating = 120, /* Functional for real use, but not desired */ -- .read = mfgpt_read, -- .mask = CLOCKSOURCE_MASK(32), --}; -- --int __init init_mfgpt_clocksource(void) -+int __init init_mfgpt1_clocksource(void) - { - if (num_possible_cpus() > 1) /* MFGPT does not scale! */ - return 0; - -- return clocksource_register_hz(&clocksource_mfgpt, MFGPT_TICK_RATE); -+ enable_mfgpt1_counter(); -+ -+ return clocksource_register_hz(&mfgpt1_clocksource, MFGPT_TICK_RATE(0, 1)); - } - --arch_initcall(init_mfgpt_clocksource); -+arch_initcall(init_mfgpt1_clocksource); -diff --git a/arch/mips/loongson/common/early_printk.c b/arch/mips/loongson/common/early_printk.c -index ced461b..89aecbf 100644 ---- a/arch/mips/loongson/common/early_printk.c -+++ b/arch/mips/loongson/common/early_printk.c -@@ -10,9 +10,13 @@ - * option) any later version. - */ - #include <linux/serial_reg.h> -+#include <linux/module.h> -+#include <asm/bootinfo.h> - - #include <loongson.h> - -+unsigned long _loongson_uart_base; -+ - #define PORT(base, offset) (u8 *)(base + offset) - - static inline unsigned int serial_in(unsigned char *base, int offset) -@@ -39,3 +43,29 @@ void prom_putchar(char c) - - serial_out(uart_base, UART_TX, c); - } -+ -+void __init prom_init_uart_base(void) -+{ -+ unsigned long loongson_uart_base; -+ -+ switch (mips_machtype) { -+ case MACH_LEMOTE_FL2E: -+ loongson_uart_base = LOONGSON_PCIIO_BASE + 0x3f8; -+ break; -+ case MACH_LEMOTE_FL2F: -+ case MACH_LEMOTE_LL2F: -+ loongson_uart_base = LOONGSON_PCIIO_BASE + 0x2f8; -+ break; -+ case MACH_LEMOTE_ML2F7: -+ case MACH_LEMOTE_YL2F89: -+ case MACH_DEXXON_GDIUM2F10: -+ case MACH_LEMOTE_NAS: -+ default: -+ /* The CPU provided serial port */ -+ loongson_uart_base = LOONGSON_LIO1_BASE + 0x3f8; -+ break; -+ } -+ -+ _loongson_uart_base = -+ (unsigned long)ioremap_nocache(loongson_uart_base, 8); -+} -diff --git a/arch/mips/loongson/common/init.c b/arch/mips/loongson/common/init.c -index ae7af1f..3083978 100644 ---- a/arch/mips/loongson/common/init.c -+++ b/arch/mips/loongson/common/init.c -@@ -30,8 +30,10 @@ void __init prom_init(void) - prom_init_env(); - prom_init_memory(); - -+#ifdef CONFIG_EARLY_PRINTK - /*init the uart base address */ - prom_init_uart_base(); -+#endif - } - - void __init prom_free_prom_memory(void) -diff --git a/arch/mips/loongson/common/irq.c b/arch/mips/loongson/common/irq.c -index 687003b..d62fa77 100644 ---- a/arch/mips/loongson/common/irq.c -+++ b/arch/mips/loongson/common/irq.c -@@ -10,6 +10,10 @@ - #include <linux/delay.h> - #include <linux/interrupt.h> - -+#include <asm/irq_cpu.h> -+#include <asm/i8259.h> -+#include <asm/mipsregs.h> -+ - #include <loongson.h> - /* - * the first level int-handler will jump here if it is a bonito irq -@@ -48,20 +52,32 @@ asmlinkage void plat_irq_dispatch(void) - void __init arch_init_irq(void) - { - /* -- * Clear all of the interrupts while we change the able around a bit. -- * int-handler is not on bootstrap -+ * The vector addresses of the generic exceptions are in the cached -+ * address space. - */ -- clear_c0_status(ST0_IM | ST0_BEV); -+ clear_c0_status(ST0_BEV); - -- /* no steer */ -+ /* No steer */ - LOONGSON_INTSTEER = 0; - - /* -- * Mask out all interrupt by writing "1" to all bit position in -- * the interrupt reset reg. -+ * Clear all interrupts - */ - LOONGSON_INTENCLR = ~0; - -+ /* -+ * Sets the first-level interrupt dispatcher: -+ * -+ * 0-15: i8259 interrupt (If CONFIG_I8259 selected) -+ * 16-23: mips cpu interrupt -+ * 32-63: bonito irq -+ */ -+ mips_cpu_irq_init(); -+ bonito_irq_init(); -+#ifdef CONFIG_I8259 -+ init_i8259_irqs(); -+#endif -+ - /* machine specific irq init */ - mach_init_irq(); - } -diff --git a/arch/mips/loongson/common/mem.c b/arch/mips/loongson/common/mem.c -index 8626a42..7aea259 100644 ---- a/arch/mips/loongson/common/mem.c -+++ b/arch/mips/loongson/common/mem.c -@@ -14,39 +14,24 @@ - #include <mem.h> - #include <pci.h> - -+#define MB(x) ((x) << 20) -+ - void __init prom_init_memory(void) - { -- add_memory_region(0x0, (memsize << 20), BOOT_MEM_RAM); -- -- add_memory_region(memsize << 20, LOONGSON_PCI_MEM_START - (memsize << -- 20), BOOT_MEM_RESERVED); -- -+ add_memory_region(0x0, MB(memsize), BOOT_MEM_RAM); -+ add_memory_region(MB(memsize), LOONGSON_PCI_MEM_START - MB(memsize), BOOT_MEM_RESERVED); - #ifdef CONFIG_CPU_SUPPORTS_ADDRWINCFG -- { -- int bit; -- -- bit = fls(memsize + highmemsize); -- if (bit != ffs(memsize + highmemsize)) -- bit += 20; -- else -- bit = bit + 20 - 1; -- -- /* set cpu window3 to map CPU to DDR: 2G -> 2G */ -- LOONGSON_ADDRWIN_CPUTODDR(ADDRWIN_WIN3, 0x80000000ul, -- 0x80000000ul, (1 << bit)); -- mmiowb(); -- } --#endif /* !CONFIG_CPU_SUPPORTS_ADDRWINCFG */ -+ /* set cpu window3 to map CPU to DDR: 2G -> 0G */ -+ LOONGSON_ADDRWIN_CPUTODDR(ADDRWIN_WIN3, 0x80000000ul, 0, MB(memsize + highmemsize)); -+ mmiowb(); -+#endif - - #ifdef CONFIG_64BIT - if (highmemsize > 0) -- add_memory_region(LOONGSON_HIGHMEM_START, -- highmemsize << 20, BOOT_MEM_RAM); -- -+ add_memory_region(LOONGSON_HIGHMEM_START, MB(highmemsize), BOOT_MEM_RAM); - add_memory_region(LOONGSON_PCI_MEM_END + 1, LOONGSON_HIGHMEM_START - -- LOONGSON_PCI_MEM_END - 1, BOOT_MEM_RESERVED); -- --#endif /* !CONFIG_64BIT */ -+ LOONGSON_PCI_MEM_END - 1, BOOT_MEM_RESERVED); -+#endif - } - - /* override of arch/mips/mm/cache.c: __uncached_access */ -diff --git a/arch/mips/loongson/common/mtd.c b/arch/mips/loongson/common/mtd.c -new file mode 100644 -index 0000000..49a57a7 ---- /dev/null -+++ b/arch/mips/loongson/common/mtd.c -@@ -0,0 +1,91 @@ -+/* -+ * Driver for flushing/dumping ROM of PMON on loongson family machines -+ * -+ * Copyright (C) 2008-2009 Lemote Inc. -+ * Author: Yan Hua <yanh@lemote.com> -+ * -+ * 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 of the License, or (at your -+ * option) any later version. -+ */ -+ -+#include <linux/module.h> -+#include <linux/types.h> -+#include <linux/kernel.h> -+#include <linux/init.h> -+#include <linux/mtd/mtd.h> -+#include <linux/mtd/map.h> -+#include <linux/mtd/partitions.h> -+ -+#include <asm/io.h> -+ -+#include <loongson.h> -+ -+#define FLASH_PHYS_ADDR LOONGSON_BOOT_BASE -+#define FLASH_SIZE 0x080000 -+ -+#define FLASH_PARTITION0_ADDR 0x00000000 -+#define FLASH_PARTITION0_SIZE 0x00080000 -+ -+struct map_info flash_map = { -+ .name = "flash device", -+ .size = FLASH_SIZE, -+ .bankwidth = 1, -+}; -+ -+struct mtd_partition flash_parts[] = { -+ { -+ .name = "Bootloader", -+ .offset = FLASH_PARTITION0_ADDR, -+ .size = FLASH_PARTITION0_SIZE}, -+}; -+ -+#define PARTITION_COUNT ARRAY_SIZE(flash_parts) -+ -+static struct mtd_info *mymtd; -+ -+int __init init_flash(void) -+{ -+ printk(KERN_NOTICE "flash device: %x at %x\n", -+ FLASH_SIZE, FLASH_PHYS_ADDR); -+ -+ flash_map.phys = FLASH_PHYS_ADDR; -+ flash_map.virt = ioremap(FLASH_PHYS_ADDR, FLASH_SIZE); -+ -+ if (!flash_map.virt) { -+ printk(KERN_NOTICE "Failed to ioremap\n"); -+ return -EIO; -+ } -+ -+ simple_map_init(&flash_map); -+ -+ mymtd = do_map_probe("cfi_probe", &flash_map); -+ if (mymtd) { -+ add_mtd_partitions(mymtd, flash_parts, PARTITION_COUNT); -+ printk(KERN_NOTICE "pmon flash device initialized\n"); -+ return 0; -+ } -+ -+ iounmap((void *)flash_map.virt); -+ return -ENXIO; -+} -+ -+static void __exit cleanup_flash(void) -+{ -+ if (mymtd) { -+ del_mtd_partitions(mymtd); -+ map_destroy(mymtd); -+ } -+ if (flash_map.virt) { -+ iounmap((void *)flash_map.virt); -+ flash_map.virt = 0; -+ } -+} -+ -+module_init(init_flash); -+module_exit(cleanup_flash); -+ -+MODULE_LICENSE("GPL"); -+MODULE_AUTHOR("Yanhua <yanh@lemote.com>"); -+MODULE_DESCRIPTION("MTD driver for pmon flushing/dumping"); -diff --git a/arch/mips/loongson/common/pci.c b/arch/mips/loongson/common/pci.c -index fa77844..a992931 100644 ---- a/arch/mips/loongson/common/pci.c -+++ b/arch/mips/loongson/common/pci.c -@@ -50,11 +50,11 @@ static void __init setup_pcimap(void) - LOONGSON_PCIMAP_WIN(0, 0); - - /* -- * PCI-DMA to local mapping: [2G,2G+256M] -> [0M,256M] -+ * PCI-DMA to local mapping: [2G,4G] -> [0M,2G] - */ - LOONGSON_PCIBASE0 = 0x80000000ul; /* base: 2G -> mmap: 0M */ -- /* size: 256M, burst transmission, pre-fetch enable, 64bit */ -- LOONGSON_PCI_HIT0_SEL_L = 0xc000000cul; -+ /* size: 2G, burst transmission, pre-fetch enable, 64bit */ -+ LOONGSON_PCI_HIT0_SEL_L = 0x8000000cul; - LOONGSON_PCI_HIT0_SEL_H = 0xfffffffful; - LOONGSON_PCI_HIT1_SEL_L = 0x00000006ul; /* set this BAR as invalid */ - LOONGSON_PCI_HIT1_SEL_H = 0x00000000ul; -diff --git a/arch/mips/loongson/common/serial.c b/arch/mips/loongson/common/serial.c -index 5f2b78a..c828600 100644 ---- a/arch/mips/loongson/common/serial.c -+++ b/arch/mips/loongson/common/serial.c -@@ -10,6 +10,7 @@ - * Author: Wu Zhangjin (wuzhangjin@gmail.com) - */ - -+#include <linux/module.h> - #include <linux/io.h> - #include <linux/init.h> - #include <linux/serial_8250.h> -@@ -19,58 +20,44 @@ - #include <loongson.h> - #include <machine.h> - --#define PORT(int) \ -+#define PORT(int, base_baud, io_type, port) \ - { \ - .irq = int, \ -- .uartclk = 1843200, \ -- .iotype = UPIO_PORT, \ -+ .uartclk = base_baud, \ -+ .iotype = io_type, \ - .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, \ - .regshift = 0, \ -+ .iobase = port, \ - } - --#define PORT_M(int) \ --{ \ -- .irq = MIPS_CPU_IRQ_BASE + (int), \ -- .uartclk = 3686400, \ -- .iotype = UPIO_MEM, \ -- .membase = (void __iomem *)NULL, \ -- .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, \ -- .regshift = 0, \ --} -- --static struct plat_serial8250_port uart8250_data[][2] = { -- [MACH_LOONGSON_UNKNOWN] {}, -- [MACH_LEMOTE_FL2E] {PORT(4), {} }, -- [MACH_LEMOTE_FL2F] {PORT(3), {} }, -- [MACH_LEMOTE_ML2F7] {PORT_M(3), {} }, -- [MACH_LEMOTE_YL2F89] {PORT_M(3), {} }, -- [MACH_DEXXON_GDIUM2F10] {PORT_M(3), {} }, -- [MACH_LEMOTE_NAS] {PORT_M(3), {} }, -- [MACH_LEMOTE_LL2F] {PORT(3), {} }, -- [MACH_LOONGSON_END] {}, -+static struct plat_serial8250_port uart8250_data[] = { -+ /* ttyS0: cpu_uart0 Yeeloong, Gdium, UNAS, ... */ -+ PORT((MIPS_CPU_IRQ_BASE + 3), 3686400, UPIO_MEM, 0x3f8), -+ /* ttyS1: sb_uart1 2E */ -+ PORT(4, 1843200, UPIO_PORT, 0x3f8), -+ /* ttyS2: sb_uart2 fuloong2f */ -+ PORT(3, 1843200, UPIO_PORT, 0x2f8), -+ {}, - }; - - static struct platform_device uart8250_device = { - .name = "serial8250", - .id = PLAT8250_DEV_PLATFORM, -+ .dev = { -+ .platform_data = uart8250_data, -+ }, - }; - - static int __init serial_init(void) - { -- unsigned char iotype; -- -- iotype = uart8250_data[mips_machtype][0].iotype; -- -- if (UPIO_MEM == iotype) -- uart8250_data[mips_machtype][0].membase = -- (void __iomem *)_loongson_uart_base; -- else if (UPIO_PORT == iotype) -- uart8250_data[mips_machtype][0].iobase = -- loongson_uart_base - LOONGSON_PCIIO_BASE; -- -- uart8250_device.dev.platform_data = uart8250_data[mips_machtype]; -+ uart8250_data[0].membase = (void __iomem *)ioremap_nocache( -+ LOONGSON_LIO1_BASE + uart8250_data[0].iobase, 8); - -- return platform_device_register(&uart8250_device); -+ platform_device_register(&uart8250_device); -+ return 0; - } - - device_initcall(serial_init); -+MODULE_LICENSE("GPL"); -+MODULE_AUTHOR("liu shiwei <liushiwei@anheng.com.cn>"); -+MODULE_DESCRIPTION("loongson serial"); -diff --git a/arch/mips/loongson/common/time.c b/arch/mips/loongson/common/time.c -index 262a1f6..eebbeef 100644 ---- a/arch/mips/loongson/common/time.c -+++ b/arch/mips/loongson/common/time.c -@@ -10,6 +10,8 @@ - * Free Software Foundation; either version 2 of the License, or (at your - * option) any later version. - */ -+#include <linux/rtc.h> -+ - #include <asm/mc146818-time.h> - #include <asm/time.h> - -@@ -24,8 +26,81 @@ void __init plat_time_init(void) - setup_mfgpt0_timer(); - } - -+#ifdef CONFIG_LOONGSON_MC146818 - void read_persistent_clock(struct timespec *ts) - { - ts->tv_sec = mc146818_get_cmos_time(); - ts->tv_nsec = 0; - } -+#else -+ -+/* If no CMOS RTC, use the one below */ -+ -+/* -+ * Cloned from drivers/rtc/hctosys.c -+ * -+ * If CONFIG_RTC_HCTOSYS=y is enabled, the system time can be set from the -+ * hardware clock(when boot and resuming from suspend), this may be also done -+ * (duplicately) by the timekeeper, which may need to be avoided(TODO). -+ * -+ * read_persistent_clock() may be useful in some places, e.g. there is not -+ * peristent clock in the system, we can use this to recover the system time. -+ * -+ * Note: The device indicated by CONFIG_RTC_HCTOSYS_DEVICE must be the one -+ * created by the RTC driver. Use Gdium as an example, We must disable the -+ * rt_cmos driver If we want to use the rtc_m41t80 driver for -+ * CONFIG_RTC_HCTOSYS_DEVICE is configured as /dev/rtc0, if rtc_cmos is -+ * enabled, rtc_cmos driver will be used, but it is not supported by Gdium. -+ * So, for Gdium, please ensure "# CONFIG_RTC_DRV_CMOS is not set" -+ */ -+ -+#ifdef CONFIG_RTC_HCTOSYS -+void read_persistent_clock(struct timespec *ts) -+{ -+ int err = -ENODEV; -+ struct rtc_time tm; -+ struct rtc_device *rtc; -+ -+ /* We can not access the RTC device before it is initialized ... */ -+ if (rtc_hctosys_ret != 0) { -+ ts->tv_sec = 0; -+ ts->tv_nsec = 0; -+ return; -+ } -+ -+ rtc = rtc_class_open(CONFIG_RTC_HCTOSYS_DEVICE); -+ -+ if (rtc == NULL) { -+ pr_err("%s: unable to open rtc device (%s)\n", -+ __FILE__, CONFIG_RTC_HCTOSYS_DEVICE); -+ goto err_open; -+ } -+ -+ err = rtc_read_time(rtc, &tm); -+ if (err) { -+ dev_err(rtc->dev.parent, -+ "hctosys: unable to read the hardware clock\n"); -+ goto err_read; -+ -+ } -+ -+ err = rtc_valid_tm(&tm); -+ if (err) { -+ dev_err(rtc->dev.parent, -+ "hctosys: invalid date/time\n"); -+ goto err_invalid; -+ } -+ -+ ts->tv_nsec = NSEC_PER_SEC >> 1, -+ rtc_tm_to_time(&tm, &ts->tv_sec); -+ -+err_invalid: -+err_read: -+ rtc_class_close(rtc); -+ -+err_open: -+ rtc_hctosys_ret = err; -+} -+#endif /* CONFIG_RTC_HCTOSYS */ -+ -+#endif /* !CONFIG_LOONGSON_MC146818 */ -diff --git a/arch/mips/loongson/common/uart_base.c b/arch/mips/loongson/common/uart_base.c -deleted file mode 100644 -index e192ad0..0000000 ---- a/arch/mips/loongson/common/uart_base.c -+++ /dev/null -@@ -1,45 +0,0 @@ --/* -- * Copyright (C) 2009 Lemote Inc. -- * Author: Wu Zhangjin, wuzhangjin@gmail.com -- * -- * 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 of the License, or (at your -- * option) any later version. -- */ -- --#include <linux/module.h> --#include <asm/bootinfo.h> -- --#include <loongson.h> -- --/* ioremapped */ --unsigned long _loongson_uart_base; --EXPORT_SYMBOL(_loongson_uart_base); --/* raw */ --unsigned long loongson_uart_base; --EXPORT_SYMBOL(loongson_uart_base); -- --void prom_init_loongson_uart_base(void) --{ -- switch (mips_machtype) { -- case MACH_LEMOTE_FL2E: -- loongson_uart_base = LOONGSON_PCIIO_BASE + 0x3f8; -- break; -- case MACH_LEMOTE_FL2F: -- case MACH_LEMOTE_LL2F: -- loongson_uart_base = LOONGSON_PCIIO_BASE + 0x2f8; -- break; -- case MACH_LEMOTE_ML2F7: -- case MACH_LEMOTE_YL2F89: -- case MACH_DEXXON_GDIUM2F10: -- case MACH_LEMOTE_NAS: -- default: -- /* The CPU provided serial port */ -- loongson_uart_base = LOONGSON_LIO1_BASE + 0x3f8; -- break; -- } -- -- _loongson_uart_base = -- (unsigned long)ioremap_nocache(loongson_uart_base, 8); --} -diff --git a/arch/mips/loongson/fuloong-2e/irq.c b/arch/mips/loongson/fuloong-2e/irq.c -index ef5ec8f..232930e 100644 ---- a/arch/mips/loongson/fuloong-2e/irq.c -+++ b/arch/mips/loongson/fuloong-2e/irq.c -@@ -9,7 +9,6 @@ - */ - #include <linux/interrupt.h> - --#include <asm/irq_cpu.h> - #include <asm/i8259.h> - - #include <loongson.h> -@@ -57,11 +56,6 @@ void __init mach_init_irq(void) - LOONGSON_INTEDGE = LOONGSON_ICU_SYSTEMERR | LOONGSON_ICU_MASTERERR | - LOONGSON_ICU_RETRYERR | LOONGSON_ICU_MBOXES; - -- /* Sets the first-level interrupt dispatcher. */ -- mips_cpu_irq_init(); -- init_i8259_irqs(); -- bonito_irq_init(); -- - /* bonito irq at IP2 */ - setup_irq(MIPS_CPU_IRQ_BASE + 2, &cascade_irqaction); - /* 8259 irq at IP5 */ +diff --git a/arch/mips/loongson/common/env.c b/arch/mips/loongson/common/env.c +index f152285..c7671ef 100644 +--- a/arch/mips/loongson/common/env.c ++++ b/arch/mips/loongson/common/env.c +@@ -28,6 +28,7 @@ struct efi_memory_map_loongson *loongson_memmap; + struct loongson_system_configuration loongson_sysconf; + + u64 loongson_chipcfg[MAX_PACKAGES] = {0xffffffffbfc00180}; ++EXPORT_SYMBOL_GPL(loongson_chipcfg); + u64 loongson_freqctrl[MAX_PACKAGES]; + + unsigned long long smp_group[4]; diff --git a/arch/mips/loongson/gdium/Makefile b/arch/mips/loongson/gdium/Makefile new file mode 100644 index 0000000..f3f4f51 @@ -2794,32 +1683,6 @@ index 4f9eaa3..f945bd7a 100644 # # Suspend Support -diff --git a/arch/mips/loongson/lemote-2f/irq.c b/arch/mips/loongson/lemote-2f/irq.c -index 6f8682e..2d54037 100644 ---- a/arch/mips/loongson/lemote-2f/irq.c -+++ b/arch/mips/loongson/lemote-2f/irq.c -@@ -11,9 +11,7 @@ - #include <linux/interrupt.h> - #include <linux/module.h> - --#include <asm/irq_cpu.h> - #include <asm/i8259.h> --#include <asm/mipsregs.h> - - #include <loongson.h> - #include <machine.h> -@@ -117,11 +115,6 @@ void __init mach_init_irq(void) - LOONGSON_INTPOL = LOONGSON_INT_BIT_INT0 | LOONGSON_INT_BIT_INT1; - LOONGSON_INTEDGE &= ~(LOONGSON_INT_BIT_INT0 | LOONGSON_INT_BIT_INT1); - -- /* Sets the first-level interrupt dispatcher. */ -- mips_cpu_irq_init(); -- init_i8259_irqs(); -- bonito_irq_init(); -- - /* setup north bridge irq (bonito) */ - setup_irq(LOONGSON_NORTH_BRIDGE_IRQ, &ip6_irqaction); - /* setup source bridge irq (i8259) */ diff --git a/arch/mips/loongson/lemote-2f/platform.c b/arch/mips/loongson/lemote-2f/platform.c new file mode 100644 index 0000000..5316360 @@ -2874,25 +1737,8 @@ index 0000000..5316360 +} + +arch_initcall(lemote2f_platform_init); -diff --git a/arch/mips/loongson/lemote-2f/pm.c b/arch/mips/loongson/lemote-2f/pm.c -index cac4d38..2b6e0ef 100644 ---- a/arch/mips/loongson/lemote-2f/pm.c -+++ b/arch/mips/loongson/lemote-2f/pm.c -@@ -140,10 +140,10 @@ int wakeup_loongson(void) - - void __weak mach_suspend(void) - { -- disable_mfgpt0_counter(); -+ disable_mfgpt_counter(); - } - - void __weak mach_resume(void) - { -- enable_mfgpt0_counter(); -+ enable_mfgpt_counter(); - } diff --git a/arch/mips/math-emu/cp1emu.c b/arch/mips/math-emu/cp1emu.c -index 0b4e2e3..60fad2c 100644 +index cac529a..aee7d4a 100644 --- a/arch/mips/math-emu/cp1emu.c +++ b/arch/mips/math-emu/cp1emu.c @@ -7,6 +7,9 @@ @@ -2905,33 +1751,19 @@ index 0b4e2e3..60fad2c 100644 * This program is free software; you can distribute it and/or modify it * under the terms of the GNU General Public License (Version 2) as * published by the Free Software Foundation. -@@ -58,6 +61,14 @@ - #endif - #define __mips 4 - -+#ifdef __loongson_fp -+#undef __loongson_fp -+#endif -+#if __mips >= 4 && __mips != 32 -+/* Include support for Loongson floating point instructions */ -+#define __loongson_fp 1 -+#endif -+ - /* Function which emulates a floating point instruction. */ - - static int fpu_emu(struct pt_regs *, struct mips_fpu_struct *, -@@ -67,6 +78,10 @@ static int fpu_emu(struct pt_regs *, struct mips_fpu_struct *, +@@ -59,6 +62,11 @@ static int fpu_emu(struct pt_regs *, struct mips_fpu_struct *, static int fpux_emu(struct pt_regs *, struct mips_fpu_struct *, mips_instruction, void *__user *); - #endif -+#ifdef __loongson_fp + ++#ifdef CONFIG_MACH_LOONGSON +static int loongson_spec2_emu(struct pt_regs *, + struct mips_fpu_struct *, mips_instruction, void *__user *); +#endif ++ + /* Control registers */ - /* Further private data for which no space exists in mips_fpu_struct */ - -@@ -896,6 +911,14 @@ static inline int cop1_64bit(struct pt_regs *xcp) + #define FPCREG_RID 0 /* $0 = revision id */ +@@ -690,6 +698,14 @@ do { \ #define DPFROMREG(dp, x) DIFROMREG((dp).bits, x) #define DPTOREG(dp, x) DITOREG((dp).bits, x) @@ -2946,11 +1778,12 @@ index 0b4e2e3..60fad2c 100644 /* * Emulate the single floating point instruction pointed at by EPC. * Two instructions if the instruction is in a branch delay slot. -@@ -1291,6 +1314,15 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_struct *ctx, +@@ -1083,6 +1099,16 @@ emul: + xcp->regs[MIPSInst_RD(ir)] = + xcp->regs[MIPSInst_RS(ir)]; break; - #endif - -+#ifdef __loongson_fp ++ ++#ifdef CONFIG_MACH_LOONGSON + case spec2_op:{ + int sig = loongson_spec2_emu(xcp, ctx, ir, fault_addr); + if (sig) @@ -2962,21 +1795,21 @@ index 0b4e2e3..60fad2c 100644 default: sigill: return SIGILL; -@@ -1370,6 +1402,172 @@ DEF3OP(msub, dp, ieee754dp_mul, ieee754dp_sub, ); +@@ -1160,6 +1186,172 @@ DEF3OP(msub, dp, ieee754dp_mul, ieee754dp_sub, ); DEF3OP(nmadd, dp, ieee754dp_mul, ieee754dp_add, ieee754dp_neg); DEF3OP(nmsub, dp, ieee754dp_mul, ieee754dp_sub, ieee754dp_neg); -+#ifdef __loongson_fp ++#ifdef CONFIG_MACH_LOONGSON +static int loongson_spec2_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, + mips_instruction ir, void *__user *fault_addr) +{ + int rfmt; /* resulting format */ + unsigned rcsr = 0; /* resulting csr */ + union { -+ ieee754dp d; ++ union ieee754dp d; + struct { -+ ieee754sp s; -+ ieee754sp s2; ++ union ieee754sp s; ++ union ieee754sp s2; + }; + } rv; /* resulting value */ + @@ -2985,8 +1818,8 @@ index 0b4e2e3..60fad2c 100644 + + switch (rfmt = (MIPSInst_FFMT(ir) & 0xf)) { + case s_fmt:{ -+ ieee754sp(*handler) (ieee754sp, ieee754sp, ieee754sp); -+ ieee754sp fd, fs, ft; ++ union ieee754sp(*handler) (union ieee754sp, union ieee754sp, union ieee754sp); ++ union ieee754sp fd, fs, ft; + + switch (MIPSInst_FUNC(ir)) { + case loongson_madd_op: @@ -3027,8 +1860,8 @@ index 0b4e2e3..60fad2c 100644 + } + + case d_fmt:{ -+ ieee754dp(*handler) (ieee754dp, ieee754dp, ieee754dp); -+ ieee754dp fd, fs, ft; ++ union ieee754dp(*handler) (union ieee754dp, union ieee754dp, union ieee754dp); ++ union ieee754dp fd, fs, ft; + + switch (MIPSInst_FUNC(ir)) { + case loongson_madd_op: @@ -3058,10 +1891,10 @@ index 0b4e2e3..60fad2c 100644 + } + + case ps_fmt:{ -+ ieee754sp(*handler) (ieee754sp, ieee754sp, ieee754sp); ++ union ieee754sp(*handler) (union ieee754sp, union ieee754sp, union ieee754sp); + struct _ieee754_csr ieee754_csr_save; -+ ieee754sp fd1, fs1, ft1; -+ ieee754sp fd2, fs2, ft2; ++ union ieee754sp fd1, fs1, ft1; ++ union ieee754sp fd2, fs2, ft2; + + switch (MIPSInst_FUNC(ir)) { + case loongson_madd_op: @@ -3135,7 +1968,7 @@ index 0b4e2e3..60fad2c 100644 static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, mips_instruction ir, void *__user *fault_addr) { -@@ -1463,7 +1661,7 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, +@@ -1261,7 +1453,7 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, break; default: @@ -3144,7 +1977,7 @@ index 0b4e2e3..60fad2c 100644 } break; } -@@ -1533,7 +1731,7 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, +@@ -1331,7 +1523,7 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, goto copcsr; default: @@ -3153,7 +1986,7 @@ index 0b4e2e3..60fad2c 100644 } break; } -@@ -1546,6 +1744,11 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, +@@ -1344,6 +1536,11 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, break; default: @@ -3165,21 +1998,21 @@ index 0b4e2e3..60fad2c 100644 return SIGILL; } -@@ -1566,7 +1769,12 @@ static int fpu_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, +@@ -1365,7 +1562,12 @@ static int fpu_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, unsigned cond; union { - ieee754dp d; -- ieee754sp s; + union ieee754dp d; +- union ieee754sp s; + struct { -+ ieee754sp s; -+#ifdef __loongson_fp -+ ieee754sp s2; /* for Loongson paired singles */ ++ union ieee754sp s; ++#ifdef CONFIG_MACH_LOONGSON ++ union ieee754sp s2; /* for Loongson paired singles */ +#endif + }; int w; - #ifdef __mips64 s64 l; -@@ -1638,7 +1846,7 @@ static int fpu_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, + } rv; /* resulting value */ +@@ -1462,7 +1664,7 @@ static int fpu_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, case fmov_op: /* an easy one */ SPFROMREG(rv.s, MIPSInst_FS(ir)); @@ -3187,8 +2020,8 @@ index 0b4e2e3..60fad2c 100644 + break; /* binary op on handler */ - scopbop: -@@ -1825,7 +2033,7 @@ static int fpu_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, + scopbop: +@@ -1659,7 +1861,7 @@ copcsr: case fmov_op: /* an easy one */ DPFROMREG(rv.d, MIPSInst_FS(ir)); @@ -3196,17 +2029,17 @@ index 0b4e2e3..60fad2c 100644 + break; /* binary op on handler */ - dcopbop:{ -@@ -1936,6 +2144,83 @@ static int fpu_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, + dcopbop: +@@ -1776,6 +1978,83 @@ dcopuop: break; } -+#ifdef __loongson_fp ++#ifdef CONFIG_MACH_LOONGSON + case ps_fmt:{ /* 6 */ + /* Support for Loongson paired single fp instructions */ + union { -+ ieee754sp(*b) (ieee754sp, ieee754sp); -+ ieee754sp(*u) (ieee754sp); ++ union ieee754sp(*b) (union ieee754sp, union ieee754sp); ++ union ieee754sp(*u) (union ieee754sp); + } handler; + + switch (MIPSInst_FUNC(ir)) { @@ -3236,8 +2069,8 @@ index 0b4e2e3..60fad2c 100644 + pscopbop: /* paired binary op handler */ + { + struct _ieee754_csr ieee754_csr_save; -+ ieee754sp fs1, ft1; -+ ieee754sp fs2, ft2; ++ union ieee754sp fs1, ft1; ++ union ieee754sp fs2, ft2; + + PSPFROMREG(fs1, fs2, MIPSInst_FS(ir)); + PSPFROMREG(ft1, ft2, MIPSInst_FT(ir)); @@ -3251,8 +2084,8 @@ index 0b4e2e3..60fad2c 100644 + pscopuop: /* paired unary op handler */ + { + struct _ieee754_csr ieee754_csr_save; -+ ieee754sp fs1; -+ ieee754sp fs2; ++ union ieee754sp fs1; ++ union ieee754sp fs2; + + PSPFROMREG(fs1, fs2, MIPSInst_FS(ir)); + rv.s = (*handler.u) (fs1); @@ -3278,14 +2111,14 @@ index 0b4e2e3..60fad2c 100644 + } +#endif + - case w_fmt:{ - ieee754sp fs; + case l_fmt: + + if (!cpu_has_mips_3_4_5 && !cpu_has_mips64) +@@ -1847,6 +2126,11 @@ dcopuop: -@@ -2025,6 +2310,11 @@ static int fpu_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, DITOREG(rv.l, MIPSInst_FD(ir)); break; - #endif -+#ifdef __loongson_fp ++#ifdef CONFIG_MACH_LOONGSON + case ps_fmt: + PSPTOREG(rv.s, rv.s2, MIPSInst_FD(ir)); + break; @@ -3293,30 +2126,8 @@ index 0b4e2e3..60fad2c 100644 default: return SIGILL; } -diff --git a/arch/mips/mm/dma-default.c b/arch/mips/mm/dma-default.c -index 44b6dff..e782fae 100644 ---- a/arch/mips/mm/dma-default.c -+++ b/arch/mips/mm/dma-default.c -@@ -336,7 +336,7 @@ int mips_dma_supported(struct device *dev, u64 mask) - return plat_dma_supported(dev, mask); - } - --void dma_cache_sync(struct device *dev, void *vaddr, size_t size, -+void mips_dma_cache_sync(struct device *dev, void *vaddr, size_t size, - enum dma_data_direction direction) - { - BUG_ON(direction == DMA_NONE); -@@ -345,8 +345,6 @@ void dma_cache_sync(struct device *dev, void *vaddr, size_t size, - __dma_sync_virtual(vaddr, size, direction); - } - --EXPORT_SYMBOL(dma_cache_sync); -- - static struct dma_map_ops mips_default_dma_map_ops = { - .alloc = mips_dma_alloc_coherent, - .free = mips_dma_free_coherent, diff --git a/arch/mips/pci/Makefile b/arch/mips/pci/Makefile -index 137f2a6..b9845dc 100644 +index 6523d55..094f034 100644 --- a/arch/mips/pci/Makefile +++ b/arch/mips/pci/Makefile @@ -29,6 +29,7 @@ obj-$(CONFIG_LASAT) += pci-lasat.o @@ -3324,9 +2135,9 @@ index 137f2a6..b9845dc 100644 obj-$(CONFIG_LEMOTE_FULOONG2E) += fixup-fuloong2e.o ops-loongson2.o obj-$(CONFIG_LEMOTE_MACH2F) += fixup-lemote2f.o ops-loongson2.o +obj-$(CONFIG_DEXXON_GDIUM) += fixup-gdium.o ops-loongson2.o + obj-$(CONFIG_LOONGSON_MACH3X) += fixup-loongson3.o ops-loongson3.o obj-$(CONFIG_MIPS_MALTA) += fixup-malta.o pci-malta.o obj-$(CONFIG_PMC_MSP7120_GW) += fixup-pmcmsp.o ops-pmcmsp.o - obj-$(CONFIG_PMC_MSP7120_EVAL) += fixup-pmcmsp.o ops-pmcmsp.o diff --git a/arch/mips/pci/fixup-gdium.c b/arch/mips/pci/fixup-gdium.c new file mode 100644 index 0000000..b296220 @@ -3424,35 +2235,65 @@ index 0000000..b296220 + gdium_usb_host_fixup); +#endif diff --git a/arch/mips/power/hibernate.S b/arch/mips/power/hibernate.S -index 32a7c82..7e0277a 100644 +index 32a7c82..3a89502 100644 --- a/arch/mips/power/hibernate.S +++ b/arch/mips/power/hibernate.S -@@ -43,7 +43,6 @@ LEAF(swsusp_arch_resume) +@@ -43,7 +43,9 @@ LEAF(swsusp_arch_resume) bne t1, t3, 1b PTR_L t0, PBE_NEXT(t0) bnez t0, 0b -- jal local_flush_tlb_all /* Avoid TLB mismatch after kernel resume */ ++#if !defined(CONFIG_MACH_LOONGSON) || !defined(CONFIG_CPU_LOONGSON2) /* Commit 771004298d broke Loongson2. */ + jal local_flush_tlb_all /* Avoid TLB mismatch after kernel resume */ ++#endif PTR_LA t0, saved_regs PTR_L ra, PT_R31(t0) PTR_L sp, PT_R29(t0) -diff --git a/drivers/ata/pata_cs5536.c b/drivers/ata/pata_cs5536.c -index 0448860..fa7cfab 100644 ---- a/drivers/ata/pata_cs5536.c -+++ b/drivers/ata/pata_cs5536.c -@@ -46,8 +46,6 @@ static int use_msr; - module_param_named(msr, use_msr, int, 0644); - MODULE_PARM_DESC(msr, "Force using MSR to configure IDE function (Default: 0)"); - #else --#undef rdmsr /* avoid accidental MSR usage on, e.g. x86-64 */ --#undef wrmsr - #define rdmsr(x, y, z) do { } while (0) - #define wrmsr(x, y, z) do { } while (0) - #define use_msr 0 +diff --git a/drivers/cpufreq/loongson2_cpufreq.c b/drivers/cpufreq/loongson2_cpufreq.c +index 9fa1772..b17bbe3 100644 +--- a/drivers/cpufreq/loongson2_cpufreq.c ++++ b/drivers/cpufreq/loongson2_cpufreq.c +@@ -162,20 +162,32 @@ static int __init cpufreq_init(void) + /* Register platform stuff */ + ret = platform_driver_register(&platform_driver); + if (ret) +- return ret; ++ goto err_return; + + pr_info("cpufreq: Loongson-2F CPU frequency driver.\n"); + +- cpufreq_register_notifier(&loongson2_cpufreq_notifier_block, +- CPUFREQ_TRANSITION_NOTIFIER); ++ ret = cpufreq_register_notifier(&loongson2_cpufreq_notifier_block, ++ CPUFREQ_TRANSITION_NOTIFIER); ++ if (ret) ++ goto err_platform_driver_unregister; + + ret = cpufreq_register_driver(&loongson2_cpufreq_driver); ++ if (ret) ++ goto err_cpufreq_unregister_notifier; + +- if (!ret && !nowait) { ++ if (!nowait) { + saved_cpu_wait = cpu_wait; + cpu_wait = loongson2_cpu_wait; + } + ++ return 0; ++ ++ err_cpufreq_unregister_notifier: ++ cpufreq_unregister_notifier(&loongson2_cpufreq_notifier_block, ++ CPUFREQ_TRANSITION_NOTIFIER); ++ err_platform_driver_unregister: ++ platform_driver_unregister(&platform_driver); ++ err_return: + return ret; + } + diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig -index f722001..5af02de 100644 +index f42df4d..b35fcd2 100644 --- a/drivers/hid/Kconfig +++ b/drivers/hid/Kconfig -@@ -786,6 +786,13 @@ config HID_ZYDACRON +@@ -840,6 +840,13 @@ config HID_ZYDACRON ---help--- Support for Zydacron remote control. @@ -3465,14 +2306,14 @@ index f722001..5af02de 100644 + config HID_SENSOR_HUB tristate "HID Sensors framework support" - depends on HID + depends on HID && HAS_IOMEM diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile -index 30e4431..e41ca68 100644 +index e2850d8..841d2e0 100644 --- a/drivers/hid/Makefile +++ b/drivers/hid/Makefile -@@ -115,6 +115,7 @@ obj-$(CONFIG_HID_ZEROPLUS) += hid-zpff.o - obj-$(CONFIG_HID_ZYDACRON) += hid-zydacron.o - obj-$(CONFIG_HID_WACOM) += hid-wacom.o +@@ -121,6 +121,7 @@ obj-$(CONFIG_HID_ZYDACRON) += hid-zydacron.o + wacom-objs := wacom_wac.o wacom_sys.o + obj-$(CONFIG_HID_WACOM) += wacom.o obj-$(CONFIG_HID_WALTOP) += hid-waltop.o +obj-$(CONFIG_HID_GDIUM) += hid-gdium.o obj-$(CONFIG_HID_WIIMOTE) += hid-wiimote.o @@ -3695,10 +2536,10 @@ index 0000000..67cc095 +MODULE_LICENSE("GPL"); + diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h -index 6e12cd0..1ce18ed 100644 +index 7c86373..fa28b0c 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h -@@ -956,6 +956,9 @@ +@@ -994,6 +994,9 @@ #define USB_VENDOR_ID_ZYTRONIC 0x14c8 #define USB_DEVICE_ID_ZYTRONIC_ZXY100 0x0005 @@ -3708,19 +2549,6 @@ index 6e12cd0..1ce18ed 100644 #define USB_VENDOR_ID_PRIMAX 0x0461 #define USB_DEVICE_ID_PRIMAX_KEYBOARD 0x4e05 -diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig -index c5eec02..9e4eb1d 100644 ---- a/drivers/i2c/busses/Kconfig -+++ b/drivers/i2c/busses/Kconfig -@@ -1002,7 +1002,7 @@ config SCx200_I2C_SDA - - config SCx200_ACB - tristate "Geode ACCESS.bus support" -- depends on X86_32 && PCI -+ depends on PCI - help - Enable the use of the ACCESS.bus controllers on the Geode SCx200 and - SC1100 processors and the CS5535 and CS5536 Geode companion devices. diff --git a/drivers/ide/ide-iops.c b/drivers/ide/ide-iops.c index 376f2dc..b576801 100644 --- a/drivers/ide/ide-iops.c @@ -3749,7 +2577,7 @@ index 376f2dc..b576801 100644 if (strstr(m, *list) != NULL) { drive->dev_flags |= IDE_DFLAG_NIEN_QUIRK; diff --git a/drivers/mfd/sm501.c b/drivers/mfd/sm501.c -index e7dc441..124e8c3 100644 +index 6ce6e62..ca11560 100644 --- a/drivers/mfd/sm501.c +++ b/drivers/mfd/sm501.c @@ -58,7 +58,7 @@ struct sm501_gpio { @@ -3761,7 +2589,7 @@ index e7dc441..124e8c3 100644 struct sm501_devdata { spinlock_t reg_lock; -@@ -1135,6 +1135,22 @@ static inline int sm501_gpio_isregistered(struct sm501_devdata *sm) +@@ -1124,6 +1124,22 @@ static inline int sm501_gpio_isregistered(struct sm501_devdata *sm) { return sm->gpio.registered; } @@ -3784,7 +2612,7 @@ index e7dc441..124e8c3 100644 #else static inline int sm501_register_gpio(struct sm501_devdata *sm) { -@@ -1154,7 +1170,13 @@ static inline int sm501_gpio_isregistered(struct sm501_devdata *sm) +@@ -1143,7 +1159,13 @@ static inline int sm501_gpio_isregistered(struct sm501_devdata *sm) { return 0; } @@ -3799,7 +2627,7 @@ index e7dc441..124e8c3 100644 static int sm501_register_gpio_i2c_instance(struct sm501_devdata *sm, struct sm501_platdata_gpio_i2c *iic) -@@ -1209,6 +1231,20 @@ static int sm501_register_gpio_i2c(struct sm501_devdata *sm, +@@ -1198,6 +1220,20 @@ static int sm501_register_gpio_i2c(struct sm501_devdata *sm, return 0; } @@ -3820,7 +2648,7 @@ index e7dc441..124e8c3 100644 /* sm501_dbg_regs * * Debug attribute to attach to parent device to show core registers -@@ -1367,6 +1403,8 @@ static int sm501_init_dev(struct sm501_devdata *sm) +@@ -1356,6 +1392,8 @@ static int sm501_init_dev(struct sm501_devdata *sm) sm501_register_uart(sm, idata->devices); if (idata->devices & SM501_USE_GPIO) sm501_register_gpio(sm); @@ -3829,7 +2657,7 @@ index e7dc441..124e8c3 100644 } if (pdata && pdata->gpio_i2c != NULL && pdata->gpio_i2c_nr > 0) { -@@ -1553,10 +1591,15 @@ static struct sm501_initdata sm501_pci_initdata = { +@@ -1542,10 +1580,15 @@ static struct sm501_initdata sm501_pci_initdata = { .devices = SM501_USE_ALL, /* Errata AB-3 says that 72MHz is the fastest available @@ -9163,7 +7991,7 @@ index 0000000..1bfe4cf +MODULE_LICENSE("GPL"); diff --git a/drivers/platform/mips/yeeloong_laptop.c b/drivers/platform/mips/yeeloong_laptop.c new file mode 100644 -index 0000000..c285a67 +index 0000000..32a2bdb --- /dev/null +++ b/drivers/platform/mips/yeeloong_laptop.c @@ -0,0 +1,1360 @@ @@ -9628,7 +8456,7 @@ index 0000000..c285a67 + if (!count) + return 0; + -+ ret = strict_strtoul(buf, 10, &value); ++ ret = kstrtoul(buf, 10, &value); + if (ret) + return ret; + @@ -10528,10 +9356,10 @@ index 0000000..c285a67 +MODULE_DESCRIPTION("YeeLoong laptop driver"); +MODULE_LICENSE("GPL"); diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig -index db933de..1232c4b 100644 +index 6dd12dd..78d9c47 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig -@@ -649,6 +649,7 @@ comment "Platform RTC drivers" +@@ -708,6 +708,7 @@ comment "Platform RTC drivers" config RTC_DRV_CMOS tristate "PC-style 'CMOS'" depends on X86 || ARM || M32R || PPC || MIPS || SPARC64 @@ -10539,39 +9367,6 @@ index db933de..1232c4b 100644 default y if X86 help Say "yes" here to get direct support for the real time clock -diff --git a/drivers/staging/sm7xxfb/sm7xxfb.c b/drivers/staging/sm7xxfb/sm7xxfb.c -index 6176d98..e40ce80 100644 ---- a/drivers/staging/sm7xxfb/sm7xxfb.c -+++ b/drivers/staging/sm7xxfb/sm7xxfb.c -@@ -101,6 +101,7 @@ static struct vesa_mode vesa_mode_table[] = { - {"0x307", 1280, 1024, 8}, - - {"0x311", 640, 480, 16}, -+ {"0x313", 800, 480, 16}, - {"0x314", 800, 600, 16}, - {"0x317", 1024, 768, 16}, - {"0x31A", 1280, 1024, 16}, -diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c -index 3586460..15f66e5 100644 ---- a/drivers/usb/host/ohci-hcd.c -+++ b/drivers/usb/host/ohci-hcd.c -@@ -864,9 +864,13 @@ static irqreturn_t ohci_irq (struct usb_hcd *hcd) - } - - if (ints & OHCI_INTR_WDH) { -- spin_lock (&ohci->lock); -- dl_done_list (ohci); -- spin_unlock (&ohci->lock); -+ if (ohci->hcca->done_head == 0) { -+ ints &= ~OHCI_INTR_WDH; -+ } else { -+ spin_lock (&ohci->lock); -+ dl_done_list (ohci); -+ spin_unlock (&ohci->lock); -+ } - } - - if (quirk_zfmicro(ohci) && (ints & OHCI_INTR_SF)) { diff --git a/drivers/usb/host/pci-quirks.c b/drivers/usb/host/pci-quirks.c index 2f3aceb..6647c3f 100644 --- a/drivers/usb/host/pci-quirks.c @@ -10642,7 +9437,7 @@ index 2f3aceb..6647c3f 100644 static void quirk_usb_early_handoff(struct pci_dev *pdev) { diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c -index 9da566a..fffecfb 100644 +index 7a4c21b..aa1c8f7 100644 --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c @@ -79,6 +79,9 @@ static void option_instat_callback(struct urb *urb); @@ -10655,7 +9450,7 @@ index 9da566a..fffecfb 100644 #define HUAWEI_VENDOR_ID 0x12D1 #define HUAWEI_PRODUCT_E173 0x140C #define HUAWEI_PRODUCT_E1750 0x1406 -@@ -610,6 +613,7 @@ static const struct usb_device_id option_ids[] = { +@@ -634,6 +637,7 @@ static const struct usb_device_id option_ids[] = { { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GLE) }, { USB_DEVICE(QUANTA_VENDOR_ID, 0xea42), .driver_info = (kernel_ulong_t)&net_intf4_blacklist }, @@ -10663,6 +9458,2472 @@ index 9da566a..fffecfb 100644 { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0x1c05, USB_CLASS_COMM, 0x02, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0x1c1f, USB_CLASS_COMM, 0x02, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0x1c23, USB_CLASS_COMM, 0x02, 0xff) }, +diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig +index 8bf495f..f6a15b6 100644 +--- a/drivers/video/Kconfig ++++ b/drivers/video/Kconfig +@@ -36,6 +36,12 @@ config VGASTATE + tristate + default n + ++config VIDEO_OUTPUT_CONTROL ++ tristate "Lowlevel video output switch controls" ++ help ++ This framework adds support for low-level control of the video ++ output switch. ++ + config VIDEOMODE_HELPERS + bool + +diff --git a/drivers/video/Makefile b/drivers/video/Makefile +index 9ad3c17..3d869d9 100644 +--- a/drivers/video/Makefile ++++ b/drivers/video/Makefile +@@ -7,6 +7,8 @@ obj-y += backlight/ + + obj-y += fbdev/ + ++#video output switch sysfs driver ++obj-$(CONFIG_VIDEO_OUTPUT_CONTROL) += output.o + obj-$(CONFIG_VIDEOMODE_HELPERS) += display_timing.o videomode.o + ifeq ($(CONFIG_OF),y) + obj-$(CONFIG_VIDEOMODE_HELPERS) += of_display_timing.o of_videomode.o +diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig +index c7bf606..6d5662b 100644 +--- a/drivers/video/fbdev/Kconfig ++++ b/drivers/video/fbdev/Kconfig +@@ -2470,6 +2470,19 @@ config FB_SIMPLE + Configuration re: surface address, size, and format must be provided + through device tree, or plain old platform data. + ++config FB_SM712 ++ tristate "Silicon Motion SM712 framebuffer support" ++ depends on FB && PCI ++ select FB_CFB_FILLRECT ++ select FB_CFB_COPYAREA ++ select FB_CFB_IMAGEBLIT ++ help ++ Frame buffer driver for the Silicon Motion SM712 chip. ++ ++ This driver is also available as a module. The module will be ++ called sm712fb. If you want to compile it as a module, say M ++ here and read <file:Documentation/kbuild/modules.txt>. ++ + source "drivers/video/fbdev/omap/Kconfig" + source "drivers/video/fbdev/omap2/Kconfig" + source "drivers/video/fbdev/exynos/Kconfig" +diff --git a/drivers/video/fbdev/Makefile b/drivers/video/fbdev/Makefile +index 1979aff..9b694f9 100644 +--- a/drivers/video/fbdev/Makefile ++++ b/drivers/video/fbdev/Makefile +@@ -114,6 +114,7 @@ obj-$(CONFIG_FB_COBALT) += cobalt_lcdfb.o + obj-$(CONFIG_FB_IBM_GXT4500) += gxt4500.o + obj-$(CONFIG_FB_PS3) += ps3fb.o + obj-$(CONFIG_FB_SM501) += sm501fb.o ++obj-$(CONFIG_FB_SM712) += sm712fb/ + obj-$(CONFIG_FB_UDL) += udlfb.o + obj-$(CONFIG_FB_SMSCUFX) += smscufx.o + obj-$(CONFIG_FB_XILINX) += xilinxfb.o +diff --git a/drivers/video/fbdev/sm712fb/Makefile b/drivers/video/fbdev/sm712fb/Makefile +new file mode 100644 +index 0000000..9bf3519 +--- /dev/null ++++ b/drivers/video/fbdev/sm712fb/Makefile +@@ -0,0 +1,3 @@ ++obj-$(CONFIG_FB_SM712) += sm712fb.o ++ ++sm712fb-objs := sm712fb_drv.o sm712fb_accel.o +diff --git a/drivers/video/fbdev/sm712fb/TODO b/drivers/video/fbdev/sm712fb/TODO +new file mode 100644 +index 0000000..dcfd4e7 +--- /dev/null ++++ b/drivers/video/fbdev/sm712fb/TODO +@@ -0,0 +1,7 @@ ++TODO: ++- Dual head support ++- refine the code, convert more registers magic numbers to macros ++- Does it really works on Big Endian machines? ++ ++Please send any patches to Greg Kroah-Hartman <greg@kroah.com> and ++Tom Li <biergaizi@member.fsf.org>. +diff --git a/drivers/video/fbdev/sm712fb/sm712fb_accel.c b/drivers/video/fbdev/sm712fb/sm712fb_accel.c +new file mode 100644 +index 0000000..12fce1f +--- /dev/null ++++ b/drivers/video/fbdev/sm712fb/sm712fb_accel.c +@@ -0,0 +1,246 @@ ++/* ++ * Silicon Motion SM712 frame buffer device ++ * ++ * Copyright (C) 2006 Silicon Motion Technology Corp. ++ * Authors: Ge Wang, gewang@siliconmotion.com ++ * Boyod boyod.yang@siliconmotion.com.cn ++ * ++ * Copyright (C) 2009 Lemote, Inc. ++ * Author: Wu Zhangjin, wuzhangjin@gmail.com ++ * ++ * Copyright (C) 2011 Igalia, S.L. ++ * Author: Javier M. Mellid <jmunhoz@igalia.com> ++ * ++ * Copyright (C) 2014 Tom Li. ++ * Author: Tom Li (Yifeng Li) <biergaizi@member.fsf.org> ++ * ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file COPYING in the main directory of this archive for ++ * more details. ++ * ++ * Framebuffer driver for Silicon Motion SM712 chip ++ */ ++ ++#include <linux/fb.h> ++#include <linux/screen_info.h> ++#include <linux/delay.h> ++ ++#include "sm712fb_drv.h" ++#include "sm712fb_accel.h" ++ ++static inline u32 bytes_to_dword(const u8 *bytes, int length) ++{ ++ u32 dword = 0; ++ ++ switch (length) { ++ case 4: ++#ifdef __BIG_ENDIAN ++ dword += bytes[3]; ++#else ++ dword += bytes[3] << 24; ++#endif ++ case 3: ++#ifdef __BIG_ENDIAN ++ dword += bytes[2] << 8; ++#else ++ dword += bytes[2] << 16; ++#endif ++ case 2: ++#ifdef __BIG_ENDIAN ++ dword += bytes[1] << 16; ++#else ++ dword += bytes[1] << 8; ++#endif ++ case 1: ++#ifdef __BIG_ENDIAN ++ dword += bytes[0] << 24; ++#else ++ dword += bytes[0]; ++#endif ++ } ++ return dword; ++} ++ ++int sm712fb_init_accel(struct sm712fb_info *fb) ++{ ++ u8 reg; ++ ++ /* reset the 2D engine */ ++ sm712_write_seq(fb, 0x21, sm712_read_seq(fb, 0x21) & 0xf8); ++ reg = sm712_read_seq(fb, 0x15); ++ sm712_write_seq(fb, 0x15, reg | 0x30); ++ sm712_write_seq(fb, 0x15, reg); ++ ++ if (sm712fb_wait(fb) != 0) ++ return -1; ++ ++ sm712_write_dpr(fb, DPR_CROP_TOPLEFT_COORDS, DPR_COORDS(0, 0)); ++ ++ /* same width for DPR_PITCH and DPR_SRC_WINDOW */ ++ sm712_write_dpr(fb, DPR_PITCH, ++ DPR_COORDS(fb->fb.var.xres, fb->fb.var.xres)); ++ sm712_write_dpr(fb, DPR_SRC_WINDOW, ++ DPR_COORDS(fb->fb.var.xres, fb->fb.var.xres)); ++ ++ sm712_write_dpr(fb, DPR_BYTE_BIT_MASK, 0xffffffff); ++ sm712_write_dpr(fb, DPR_COLOR_COMPARE_MASK, 0); ++ sm712_write_dpr(fb, DPR_COLOR_COMPARE, 0); ++ sm712_write_dpr(fb, DPR_SRC_BASE, 0); ++ sm712_write_dpr(fb, DPR_DST_BASE, 0); ++ sm712_read_dpr(fb, DPR_DST_BASE); ++ ++ return 0; ++} ++ ++int sm712fb_wait(struct sm712fb_info *fb) ++{ ++ int i; ++ u8 reg; ++ ++ for (i = 0; i < 10000; i++) { ++ reg = sm712_read_seq(fb, SCR_DE_STATUS); ++ if ((reg & SCR_DE_STATUS_MASK) == SCR_DE_ENGINE_IDLE) ++ return 0; ++ udelay(1); ++ } ++ return -EBUSY; ++} ++ ++void sm712fb_fillrect(struct fb_info *info, const struct fb_fillrect *rect) ++{ ++ u32 width = rect->width, height = rect->height; ++ u32 dx = rect->dx, dy = rect->dy; ++ u32 color; ++ ++ struct sm712fb_info *sfb = info->par; ++ ++ if (unlikely(info->state != FBINFO_STATE_RUNNING)) ++ return; ++ if ((rect->dx >= info->var.xres_virtual) || ++ (rect->dy >= info->var.yres_virtual)) ++ return; ++ ++ if (info->fix.visual == FB_VISUAL_TRUECOLOR || ++ info->fix.visual == FB_VISUAL_DIRECTCOLOR) ++ color = ((u32 *) (info->pseudo_palette))[rect->color]; ++ else ++ color = rect->color; ++ ++ sm712_write_dpr(sfb, DPR_FG_COLOR, color); ++ sm712_write_dpr(sfb, DPR_DST_COORDS, DPR_COORDS(dx, dy)); ++ sm712_write_dpr(sfb, DPR_SPAN_COORDS, DPR_COORDS(width, height)); ++ sm712_write_dpr(sfb, DPR_DE_CTRL, DE_CTRL_START | DE_CTRL_ROP_ENABLE | ++ (DE_CTRL_COMMAND_SOLIDFILL << DE_CTRL_COMMAND_SHIFT) | ++ (DE_CTRL_ROP_SRC << DE_CTRL_ROP_SHIFT)); ++ sm712_read_dpr(sfb, DPR_DE_CTRL); ++ sm712fb_wait(sfb); ++} ++ ++void sm712fb_copyarea(struct fb_info *info, const struct fb_copyarea *area) ++{ ++ u32 sx = area->sx, sy = area->sy; ++ u32 dx = area->dx, dy = area->dy; ++ u32 height = area->height, width = area->width; ++ u32 direction; ++ ++ struct sm712fb_info *sfb = info->par; ++ ++ if (unlikely(info->state != FBINFO_STATE_RUNNING)) ++ return; ++ if ((sx >= info->var.xres_virtual) || (sy >= info->var.yres_virtual)) ++ return; ++ ++ if (sy < dy || (sy == dy && sx <= dx)) { ++ sx += width - 1; ++ dx += width - 1; ++ sy += height - 1; ++ dy += height - 1; ++ direction = DE_CTRL_RTOL; ++ } else ++ direction = 0; ++ ++ sm712_write_dpr(sfb, DPR_SRC_COORDS, DPR_COORDS(sx, sy)); ++ sm712_write_dpr(sfb, DPR_DST_COORDS, DPR_COORDS(dx, dy)); ++ sm712_write_dpr(sfb, DPR_SPAN_COORDS, DPR_COORDS(width, height)); ++ sm712_write_dpr(sfb, DPR_DE_CTRL, ++ DE_CTRL_START | DE_CTRL_ROP_ENABLE | direction | ++ (DE_CTRL_COMMAND_BITBLT << DE_CTRL_COMMAND_SHIFT) | ++ (DE_CTRL_ROP_SRC << DE_CTRL_ROP_SHIFT)); ++ sm712_read_dpr(sfb, DPR_DE_CTRL); ++ sm712fb_wait(sfb); ++} ++ ++void sm712fb_imageblit(struct fb_info *info, const struct fb_image *image) ++{ ++ u32 dx = image->dx, dy = image->dy; ++ u32 width = image->width, height = image->height; ++ u32 fg_color, bg_color; ++ ++ struct sm712fb_info *sfb = info->par; ++ ++ u32 imgidx = 0; ++ u32 line = image->width >> 3; ++ ++ int i, j; ++ u32 total_bytes, total_dwords, remain_bytes; ++ ++ if (unlikely(info->state != FBINFO_STATE_RUNNING)) ++ return; ++ if ((image->dx >= info->var.xres_virtual) || ++ (image->dy >= info->var.yres_virtual)) ++ return; ++ ++ if (unlikely(image->depth != 1)) { ++ /* unsupported depth, fallback to draw Tux */ ++ cfb_imageblit(info, image); ++ return; ++ } ++ ++ if (info->fix.visual == FB_VISUAL_TRUECOLOR || ++ info->fix.visual == FB_VISUAL_DIRECTCOLOR) { ++ fg_color = ((u32 *) (info->pseudo_palette))[image->fg_color]; ++ bg_color = ((u32 *) (info->pseudo_palette))[image->bg_color]; ++ } else { ++ fg_color = image->fg_color; ++ bg_color = image->bg_color; ++ } ++ ++ /* total bytes we need to write */ ++ total_bytes = (width + 7) / 8; ++ ++ /* split the bytes into dwords and remainder bytes */ ++ total_dwords = (total_bytes & ~3) / 4; ++ remain_bytes = total_bytes & 3; ++ ++ sm712_write_dpr(sfb, DPR_SRC_COORDS, 0); ++ sm712_write_dpr(sfb, DPR_DST_COORDS, DPR_COORDS(dx, dy)); ++ sm712_write_dpr(sfb, DPR_SPAN_COORDS, DPR_COORDS(width, height)); ++ sm712_write_dpr(sfb, DPR_FG_COLOR, fg_color); ++ sm712_write_dpr(sfb, DPR_BG_COLOR, bg_color); ++ ++ sm712_write_dpr(sfb, DPR_DE_CTRL, DE_CTRL_START | DE_CTRL_ROP_ENABLE | ++ (DE_CTRL_COMMAND_HOST_WRITE << DE_CTRL_COMMAND_SHIFT) | ++ (DE_CTRL_HOST_MONO << DE_CTRL_HOST_SHIFT) | ++ (DE_CTRL_ROP_SRC << DE_CTRL_ROP_SHIFT)); ++ ++ for (i = 0; i < height; i++) { ++ /* cast bytes data into dwords and write to the dataport */ ++ for (j = 0; j < total_dwords; j++) { ++ sm712_write_dataport(sfb, ++ bytes_to_dword(&image-> ++ data[imgidx] + ++ j * 4, 4)); ++ } ++ ++ if (remain_bytes) { ++ sm712_write_dataport(sfb, ++ bytes_to_dword(&image-> ++ data[imgidx] + ++ (total_dwords * 4), ++ remain_bytes)); ++ } ++ imgidx += line; ++ } ++ sm712_read_dpr(sfb, DPR_DE_CTRL); ++ sm712fb_wait(sfb); ++} +diff --git a/drivers/video/fbdev/sm712fb/sm712fb_accel.h b/drivers/video/fbdev/sm712fb/sm712fb_accel.h +new file mode 100644 +index 0000000..6f79177 +--- /dev/null ++++ b/drivers/video/fbdev/sm712fb/sm712fb_accel.h +@@ -0,0 +1,33 @@ ++/* ++ * Silicon Motion SM712 frame buffer device ++ * ++ * Copyright (C) 2006 Silicon Motion Technology Corp. ++ * Authors: Ge Wang, gewang@siliconmotion.com ++ * Boyod boyod.yang@siliconmotion.com.cn ++ * ++ * Copyright (C) 2009 Lemote, Inc. ++ * Author: Wu Zhangjin, wuzhangjin@gmail.com ++ * ++ * Copyright (C) 2011 Igalia, S.L. ++ * Author: Javier M. Mellid <jmunhoz@igalia.com> ++ * ++ * Copyright (C) 2014 Tom Li. ++ * Author: Tom Li (Yifeng Li) <biergaizi@member.fsf.org> ++ * ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file COPYING in the main directory of this archive for ++ * more details. ++ * ++ * Framebuffer driver for Silicon Motion SM712 chip ++ */ ++ ++#ifndef _SM712FB_ACCEL_H ++#define _SM712FB_ACCEL_H ++ ++int sm712fb_init_accel(struct sm712fb_info *fb); ++int sm712fb_wait(struct sm712fb_info *fb); ++void sm712fb_fillrect(struct fb_info *info, const struct fb_fillrect *rect); ++void sm712fb_copyarea(struct fb_info *info, const struct fb_copyarea *area); ++void sm712fb_imageblit(struct fb_info *info, const struct fb_image *image); ++ ++#endif +diff --git a/drivers/video/fbdev/sm712fb/sm712fb_drv.c b/drivers/video/fbdev/sm712fb/sm712fb_drv.c +new file mode 100644 +index 0000000..7f7cd4f +--- /dev/null ++++ b/drivers/video/fbdev/sm712fb/sm712fb_drv.c +@@ -0,0 +1,1022 @@ ++/* ++ * Silicon Motion SM712 frame buffer device ++ * ++ * Copyright (C) 2006 Silicon Motion Technology Corp. ++ * Authors: Ge Wang, gewang@siliconmotion.com ++ * Boyod boyod.yang@siliconmotion.com.cn ++ * ++ * Copyright (C) 2009 Lemote, Inc. ++ * Author: Wu Zhangjin, wuzhangjin@gmail.com ++ * ++ * Copyright (C) 2011 Igalia, S.L. ++ * Author: Javier M. Mellid <jmunhoz@igalia.com> ++ * ++ * Copyright (C) 2014 Tom Li. ++ * Author: Tom Li (Yifeng Li) <biergaizi@member.fsf.org> ++ * ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file COPYING in the main directory of this archive for ++ * more details. ++ * ++ * Framebuffer driver for Silicon Motion SM712 chip ++ */ ++ ++#include <linux/io.h> ++#include <linux/fb.h> ++#include <linux/pci.h> ++#include <linux/init.h> ++#include <linux/slab.h> ++#include <linux/uaccess.h> ++#include <linux/module.h> ++#include <linux/console.h> ++#include <linux/screen_info.h> ++ ++#ifdef CONFIG_PM ++#include <linux/pm.h> ++#endif ++ ++#include "sm712fb_drv.h" ++#include "sm712fb_accel.h" ++#include "sm712fb_modedb.h" ++ ++static struct fb_var_screeninfo sm712fb_var = { ++ .xres = 1024, ++ .yres = 600, ++ .xres_virtual = 1024, ++ .yres_virtual = 600, ++ .bits_per_pixel = 16, ++ .red = {16, 8, 0}, ++ .green = {8, 8, 0}, ++ .blue = {0, 8, 0}, ++ .activate = FB_ACTIVATE_NOW, ++ .height = -1, ++ .width = -1, ++ .vmode = FB_VMODE_NONINTERLACED, ++ .nonstd = 0, ++ .accel_flags = FB_ACCELF_TEXT, ++}; ++ ++static struct fb_fix_screeninfo sm712fb_fix = { ++ .id = "smXXXfb", ++ .type = FB_TYPE_PACKED_PIXELS, ++ .visual = FB_VISUAL_TRUECOLOR, ++ .line_length = 800 * 3, ++ .accel = FB_ACCEL_SMI_LYNX, ++ .type_aux = 0, ++ .xpanstep = 0, ++ .ypanstep = 0, ++ .ywrapstep = 0, ++}; ++ ++struct vesa_mode { ++ char index[6]; ++ u16 lfb_width; ++ u16 lfb_height; ++ u16 lfb_depth; ++}; ++ ++static bool accel = 1; ++ ++static struct vesa_mode vesa_mode_table[] = { ++ {"0x301", 640, 480, 8}, ++ {"0x303", 800, 600, 8}, ++ {"0x305", 1024, 768, 8}, ++ {"0x307", 1280, 1024, 8}, ++ ++ {"0x311", 640, 480, 16}, ++ {"0x314", 800, 600, 16}, ++ {"0x317", 1024, 768, 16}, ++ {"0x31A", 1280, 1024, 16}, ++ ++ {"0x312", 640, 480, 24}, ++ {"0x315", 800, 600, 24}, ++ {"0x318", 1024, 768, 24}, ++ {"0x31B", 1280, 1024, 24}, ++}; ++ ++struct screen_info sm712_scr_info; ++ ++static int sm712fb_setup(char *options) ++{ ++ char *this_opt; ++ ++ if (!options || !*options) ++ return 0; ++ ++ while ((this_opt = strsep(&options, ",")) != NULL) { ++ if (!*this_opt) ++ continue; ++ ++ if (!strcmp(this_opt, "accel:0")) ++ accel = false; ++ else if (!strcmp(this_opt, "accel:1")) ++ accel = true; ++ } ++ return 0; ++} ++ ++/* process command line options, get vga parameter */ ++static int __init sm712_vga_setup(char *options) ++{ ++ int i; ++ ++ if (!options || !*options) ++ return -EINVAL; ++ ++ sm712_scr_info.lfb_width = 0; ++ sm712_scr_info.lfb_height = 0; ++ sm712_scr_info.lfb_depth = 0; ++ ++ pr_debug("sm712_vga_setup = %s\n", options); ++ ++ for (i = 0; i < ARRAY_SIZE(vesa_mode_table); i++) { ++ if (strstr(options, vesa_mode_table[i].index)) { ++ sm712_scr_info.lfb_width = vesa_mode_table[i].lfb_width; ++ sm712_scr_info.lfb_height = ++ vesa_mode_table[i].lfb_height; ++ sm712_scr_info.lfb_depth = vesa_mode_table[i].lfb_depth; ++ return 0; ++ } ++ } ++ ++ return -1; ++} ++ ++__setup("vga=", sm712_vga_setup); ++ ++static void sm712_setpalette(int regno, unsigned red, unsigned green, ++ unsigned blue, struct fb_info *info) ++{ ++ struct sm712fb_info *sfb = info->par; ++ ++ /* set bit 5:4 = 01 (write LCD RAM only) */ ++ sm712_write_seq(sfb, 0x66, (sm712_read_seq(sfb, 0x66) & 0xC3) | 0x10); ++ ++ sm712_writeb(sfb->mmio, DAC_REG, regno); ++ sm712_writeb(sfb->mmio, DAC_VAL, red >> 10); ++ sm712_writeb(sfb->mmio, DAC_VAL, green >> 10); ++ sm712_writeb(sfb->mmio, DAC_VAL, blue >> 10); ++} ++ ++/* chan_to_field ++ * ++ * convert a colour value into a field position ++ * ++ * from pxafb.c ++ */ ++ ++static inline unsigned int chan_to_field(unsigned int chan, ++ struct fb_bitfield *bf) ++{ ++ chan &= 0xffff; ++ chan >>= 16 - bf->length; ++ return chan << bf->offset; ++} ++ ++static int sm712_blank(int blank_mode, struct fb_info *info) ++{ ++ struct sm712fb_info *sfb = info->par; ++ ++ /* clear DPMS setting */ ++ switch (blank_mode) { ++ case FB_BLANK_UNBLANK: ++ /* Screen On: HSync: On, VSync : On */ ++ sm712_write_seq(sfb, 0x01, ++ (sm712_read_seq(sfb, 0x01) & (~0x20))); ++ sm712_write_seq(sfb, 0x6a, 0x16); ++ sm712_write_seq(sfb, 0x6b, 0x02); ++ sm712_write_seq(sfb, 0x21, (sm712_read_seq(sfb, 0x21) & 0x77)); ++ sm712_write_seq(sfb, 0x22, ++ (sm712_read_seq(sfb, 0x22) & (~0x30))); ++ sm712_write_seq(sfb, 0x23, ++ (sm712_read_seq(sfb, 0x23) & (~0xc0))); ++ sm712_write_seq(sfb, 0x24, (sm712_read_seq(sfb, 0x24) | 0x01)); ++ sm712_write_seq(sfb, 0x31, (sm712_read_seq(sfb, 0x31) | 0x03)); ++ break; ++ case FB_BLANK_NORMAL: ++ /* Screen Off: HSync: On, VSync : On Soft blank */ ++ sm712_write_seq(sfb, 0x01, ++ (sm712_read_seq(sfb, 0x01) & (~0x20))); ++ sm712_write_seq(sfb, 0x6a, 0x16); ++ sm712_write_seq(sfb, 0x6b, 0x02); ++ sm712_write_seq(sfb, 0x22, ++ (sm712_read_seq(sfb, 0x22) & (~0x30))); ++ sm712_write_seq(sfb, 0x23, ++ (sm712_read_seq(sfb, 0x23) & (~0xc0))); ++ sm712_write_seq(sfb, 0x24, (sm712_read_seq(sfb, 0x24) | 0x01)); ++ sm712_write_seq(sfb, 0x31, ++ ((sm712_read_seq(sfb, 0x31) & (~0x07)) | 0x00)); ++ break; ++ case FB_BLANK_VSYNC_SUSPEND: ++ /* Screen On: HSync: On, VSync : Off */ ++ sm712_write_seq(sfb, 0x01, (sm712_read_seq(sfb, 0x01) | 0x20)); ++ sm712_write_seq(sfb, 0x20, ++ (sm712_read_seq(sfb, 0x20) & (~0xB0))); ++ sm712_write_seq(sfb, 0x6a, 0x0c); ++ sm712_write_seq(sfb, 0x6b, 0x02); ++ sm712_write_seq(sfb, 0x21, (sm712_read_seq(sfb, 0x21) | 0x88)); ++ sm712_write_seq(sfb, 0x22, ++ ((sm712_read_seq(sfb, 0x22) & (~0x30)) | 0x20)); ++ sm712_write_seq(sfb, 0x23, ++ ((sm712_read_seq(sfb, 0x23) & (~0xc0)) | 0x20)); ++ sm712_write_seq(sfb, 0x24, ++ (sm712_read_seq(sfb, 0x24) & (~0x01))); ++ sm712_write_seq(sfb, 0x31, ++ ((sm712_read_seq(sfb, 0x31) & (~0x07)) | 0x00)); ++ sm712_write_seq(sfb, 0x34, (sm712_read_seq(sfb, 0x34) | 0x80)); ++ break; ++ case FB_BLANK_HSYNC_SUSPEND: ++ /* Screen On: HSync: Off, VSync : On */ ++ sm712_write_seq(sfb, 0x01, (sm712_read_seq(sfb, 0x01) | 0x20)); ++ sm712_write_seq(sfb, 0x20, ++ (sm712_read_seq(sfb, 0x20) & (~0xB0))); ++ sm712_write_seq(sfb, 0x6a, 0x0c); ++ sm712_write_seq(sfb, 0x6b, 0x02); ++ sm712_write_seq(sfb, 0x21, (sm712_read_seq(sfb, 0x21) | 0x88)); ++ sm712_write_seq(sfb, 0x22, ++ ((sm712_read_seq(sfb, 0x22) & (~0x30)) | 0x10)); ++ sm712_write_seq(sfb, 0x23, ++ ((sm712_read_seq(sfb, 0x23) & (~0xc0)) | 0xD8)); ++ sm712_write_seq(sfb, 0x24, ++ (sm712_read_seq(sfb, 0x24) & (~0x01))); ++ sm712_write_seq(sfb, 0x31, ++ ((sm712_read_seq(sfb, 0x31) & (~0x07)) | 0x00)); ++ sm712_write_seq(sfb, 0x34, (sm712_read_seq(sfb, 0x34) | 0x80)); ++ break; ++ case FB_BLANK_POWERDOWN: ++ /* Screen On: HSync: Off, VSync : Off */ ++ sm712_write_seq(sfb, 0x01, (sm712_read_seq(sfb, 0x01) | 0x20)); ++ sm712_write_seq(sfb, 0x20, ++ (sm712_read_seq(sfb, 0x20) & (~0xB0))); ++ sm712_write_seq(sfb, 0x6a, 0x5a); ++ sm712_write_seq(sfb, 0x6b, 0x20); ++ sm712_write_seq(sfb, 0x21, (sm712_read_seq(sfb, 0x21) | 0x88)); ++ sm712_write_seq(sfb, 0x22, ++ ((sm712_read_seq(sfb, 0x22) & (~0x30)) | 0x30)); ++ sm712_write_seq(sfb, 0x23, ++ ((sm712_read_seq(sfb, 0x23) & (~0xc0)) | 0xD8)); ++ sm712_write_seq(sfb, 0x24, ++ (sm712_read_seq(sfb, 0x24) & (~0x01))); ++ sm712_write_seq(sfb, 0x31, ++ ((sm712_read_seq(sfb, 0x31) & (~0x07)) | 0x00)); ++ sm712_write_seq(sfb, 0x34, (sm712_read_seq(sfb, 0x34) | 0x80)); ++ break; ++ default: ++ return -EINVAL; ++ } ++ ++ return 0; ++} ++ ++static int sm712_setcolreg(unsigned regno, unsigned red, unsigned green, ++ unsigned blue, unsigned trans, struct fb_info *info) ++{ ++ struct sm712fb_info *sfb; ++ u32 val; ++ ++ sfb = info->par; ++ ++ if (regno > 255) ++ return 1; ++ ++ switch (sfb->fb.fix.visual) { ++ case FB_VISUAL_DIRECTCOLOR: ++ case FB_VISUAL_TRUECOLOR: ++ /* ++ * 16/32 bit true-colour, use pseudo-palette for 16 base color ++ */ ++ if (regno < 16) { ++ if (sfb->fb.var.bits_per_pixel == 16) { ++ u32 *pal = sfb->fb.pseudo_palette; ++ ++ val = chan_to_field(red, &sfb->fb.var.red); ++ val |= chan_to_field(green, &sfb->fb.var.green); ++ val |= chan_to_field(blue, &sfb->fb.var.blue); ++#ifdef __BIG_ENDIAN ++ pal[regno] = ++ ((red & 0xf800) >> 8) | ++ ((green & 0xe000) >> 13) | ++ ((green & 0x1c00) << 3) | ++ ((blue & 0xf800) >> 3); ++#else ++ pal[regno] = val; ++#endif ++ } else { ++ u32 *pal = sfb->fb.pseudo_palette; ++ ++ val = chan_to_field(red, &sfb->fb.var.red); ++ val |= chan_to_field(green, &sfb->fb.var.green); ++ val |= chan_to_field(blue, &sfb->fb.var.blue); ++#ifdef __BIG_ENDIAN ++ val = ++ (val & 0xff00ff00 >> 8) | ++ (val & 0x00ff00ff << 8); ++#endif ++ pal[regno] = val; ++ } ++ } ++ break; ++ ++ case FB_VISUAL_PSEUDOCOLOR: ++ /* color depth 8 bit */ ++ sm712_setpalette(regno, red, green, blue, info); ++ break; ++ ++ default: ++ return 1; /* unknown type */ ++ } ++ ++ return 0; ++ ++} ++ ++#ifdef __BIG_ENDIAN ++static ssize_t sm712fb_read(struct fb_info *info, char __user *buf, ++ size_t count, loff_t *ppos) ++{ ++ unsigned long p = *ppos; ++ ++ u32 *buffer, *dst; ++ u32 __iomem *src; ++ int c, i, cnt = 0, err = 0; ++ unsigned long total_size; ++ ++ if (!info || !info->screen_base) ++ return -ENODEV; ++ ++ if (info->state != FBINFO_STATE_RUNNING) ++ return -EPERM; ++ ++ total_size = info->screen_size; ++ ++ if (total_size == 0) ++ total_size = info->fix.smem_len; ++ ++ if (p >= total_size) ++ return 0; ++ ++ if (count >= total_size) ++ count = total_size; ++ ++ if (count + p > total_size) ++ count = total_size - p; ++ ++ buffer = kmalloc((count > PAGE_SIZE) ? PAGE_SIZE : count, GFP_KERNEL); ++ if (!buffer) ++ return -ENOMEM; ++ ++ src = (u32 __iomem *) (info->screen_base + p); ++ ++ if (info->fbops->fb_sync) ++ info->fbops->fb_sync(info); ++ ++ while (count) { ++ c = (count > PAGE_SIZE) ? PAGE_SIZE : count; ++ dst = buffer; ++ for (i = c >> 2; i--;) { ++ *dst = fb_readl(src++); ++ *dst = ++ (*dst & 0xff00ff00 >> 8) | (*dst & 0x00ff00ff << 8); ++ dst++; ++ } ++ if (c & 3) { ++ u8 *dst8 = (u8 *) dst; ++ u8 __iomem *src8 = (u8 __iomem *) src; ++ ++ for (i = c & 3; i--;) { ++ if (i & 1) { ++ *dst8++ = fb_readb(++src8); ++ } else { ++ *dst8++ = fb_readb(--src8); ++ src8 += 2; ++ } ++ } ++ src = (u32 __iomem *) src8; ++ } ++ ++ if (copy_to_user(buf, buffer, c)) { ++ err = -EFAULT; ++ break; ++ } ++ *ppos += c; ++ buf += c; ++ cnt += c; ++ count -= c; ++ } ++ ++ kfree(buffer); ++ ++ return (err) ? err : cnt; ++} ++ ++static ssize_t ++sm712fb_write(struct fb_info *info, const char __user *buf, size_t count, ++ loff_t *ppos) ++{ ++ unsigned long p = *ppos; ++ ++ u32 *buffer, *src; ++ u32 __iomem *dst; ++ int c, i, cnt = 0, err = 0; ++ unsigned long total_size; ++ ++ if (!info || !info->screen_base) ++ return -ENODEV; ++ ++ if (info->state != FBINFO_STATE_RUNNING) ++ return -EPERM; ++ ++ total_size = info->screen_size; ++ ++ if (total_size == 0) ++ total_size = info->fix.smem_len; ++ ++ if (p > total_size) ++ return -EFBIG; ++ ++ if (count > total_size) { ++ err = -EFBIG; ++ count = total_size; ++ } ++ ++ if (count + p > total_size) { ++ if (!err) ++ err = -ENOSPC; ++ ++ count = total_size - p; ++ } ++ ++ buffer = kmalloc((count > PAGE_SIZE) ? PAGE_SIZE : count, GFP_KERNEL); ++ if (!buffer) ++ return -ENOMEM; ++ ++ dst = (u32 __iomem *) (info->screen_base + p); ++ ++ if (info->fbops->fb_sync) ++ info->fbops->fb_sync(info); ++ ++ while (count) { ++ c = (count > PAGE_SIZE) ? PAGE_SIZE : count; ++ src = buffer; ++ ++ if (copy_from_user(src, buf, c)) { ++ err = -EFAULT; ++ break; ++ } ++ ++ for (i = c >> 2; i--;) { ++ fb_writel((*src & 0xff00ff00 >> 8) | ++ (*src & 0x00ff00ff << 8), dst++); ++ src++; ++ } ++ if (c & 3) { ++ u8 *src8 = (u8 *) src; ++ u8 __iomem *dst8 = (u8 __iomem *) dst; ++ ++ for (i = c & 3; i--;) { ++ if (i & 1) { ++ fb_writeb(*src8++, ++dst8); ++ } else { ++ fb_writeb(*src8++, --dst8); ++ dst8 += 2; ++ } ++ } ++ dst = (u32 __iomem *) dst8; ++ } ++ ++ *ppos += c; ++ buf += c; ++ cnt += c; ++ count -= c; ++ } ++ ++ kfree(buffer); ++ ++ return (cnt) ? cnt : err; ++} ++#endif /* ! __BIG_ENDIAN */ ++ ++static void sm712_set_timing(struct sm712fb_info *sfb) ++{ ++ int i = 0, j = 0; ++ u32 m_nScreenStride; ++ ++ dev_dbg(&sfb->pdev->dev, ++ "sfb->width=%d sfb->height=%d " ++ "sfb->fb.var.bits_per_pixel=%d sfb->hz=%d\n", ++ sfb->width, sfb->height, sfb->fb.var.bits_per_pixel, sfb->hz); ++ ++ for (j = 0; j < numVGAModes; j++) { ++ if (VGAMode[j].mmSizeX != sfb->width || ++ VGAMode[j].mmSizeY != sfb->height || ++ VGAMode[j].bpp != sfb->fb.var.bits_per_pixel || ++ VGAMode[j].hz != sfb->hz) { ++ continue; ++ } ++ ++ dev_dbg(&sfb->pdev->dev, ++ "VGAMode[j].mmSizeX=%d VGAMode[j].mmSizeY=%d " ++ "VGAMode[j].bpp=%d VGAMode[j].hz=%d\n", ++ VGAMode[j].mmSizeX, VGAMode[j].mmSizeY, ++ VGAMode[j].bpp, VGAMode[j].hz); ++ ++ dev_dbg(&sfb->pdev->dev, "VGAMode index=%d\n", j); ++ ++ sm712_writeb(sfb->mmio, 0x3c6, 0x0); ++ ++ sm712_write_seq(sfb, 0, 0x1); ++ ++ sm712_writeb(sfb->mmio, 0x3c2, VGAMode[j].Init_MISC); ++ ++ /* init SEQ register SR00 - SR04 */ ++ for (i = 0; i < SR00_SR04_SIZE; i++) ++ sm712_write_seq(sfb, i, VGAMode[j].Init_SR00_SR04[i]); ++ ++ /* init SEQ register SR10 - SR24 */ ++ for (i = 0; i < SR10_SR24_SIZE; i++) ++ sm712_write_seq(sfb, i + 0x10, ++ VGAMode[j].Init_SR10_SR24[i]); ++ ++ /* init SEQ register SR30 - SR75 */ ++ for (i = 0; i < SR30_SR75_SIZE; i++) ++ if ((i + 0x30) != 0x62 && ++ (i + 0x30) != 0x6a && (i + 0x30) != 0x6b) ++ sm712_write_seq(sfb, i + 0x30, ++ VGAMode[j].Init_SR30_SR75[i]); ++ ++ /* init SEQ register SR80 - SR93 */ ++ for (i = 0; i < SR80_SR93_SIZE; i++) ++ sm712_write_seq(sfb, i + 0x80, ++ VGAMode[j].Init_SR80_SR93[i]); ++ ++ /* init SEQ register SRA0 - SRAF */ ++ for (i = 0; i < SRA0_SRAF_SIZE; i++) ++ sm712_write_seq(sfb, i + 0xa0, ++ VGAMode[j].Init_SRA0_SRAF[i]); ++ ++ /* init Graphic register GR00 - GR08 */ ++ for (i = 0; i < GR00_GR08_SIZE; i++) ++ sm712_write_grph(sfb, i, VGAMode[j].Init_GR00_GR08[i]); ++ ++ /* init Attribute register AR00 - AR14 */ ++ for (i = 0; i < AR00_AR14_SIZE; i++) ++ sm712_write_attr(sfb, i, VGAMode[j].Init_AR00_AR14[i]); ++ ++ /* init CRTC register CR00 - CR18 */ ++ for (i = 0; i < CR00_CR18_SIZE; i++) ++ sm712_write_crtc(sfb, i, VGAMode[j].Init_CR00_CR18[i]); ++ ++ /* init CRTC register CR30 - CR4D */ ++ for (i = 0; i < CR30_CR4D_SIZE; i++) ++ sm712_write_crtc(sfb, i + 0x30, ++ VGAMode[j].Init_CR30_CR4D[i]); ++ ++ /* init CRTC register CR90 - CRA7 */ ++ for (i = 0; i < CR90_CRA7_SIZE; i++) ++ sm712_write_crtc(sfb, i + 0x90, ++ VGAMode[j].Init_CR90_CRA7[i]); ++ } ++ sm712_writeb(sfb->mmio, 0x3c2, 0x67); ++ ++ /* set VPR registers */ ++ sm712_writel(sfb->vpr, 0x0C, 0x0); ++ sm712_writel(sfb->vpr, 0x40, 0x0); ++ ++ /* set data width */ ++ m_nScreenStride = (sfb->width * sfb->fb.var.bits_per_pixel) / 64; ++ switch (sfb->fb.var.bits_per_pixel) { ++ case 8: ++ sm712_writel(sfb->vpr, 0x0, 0x0); ++ break; ++ case 16: ++ sm712_writel(sfb->vpr, 0x0, 0x00020000); ++ break; ++ case 24: ++ sm712_writel(sfb->vpr, 0x0, 0x00040000); ++ break; ++ case 32: ++ sm712_writel(sfb->vpr, 0x0, 0x00030000); ++ break; ++ } ++ sm712_writel(sfb->vpr, 0x10, ++ (u32) (((m_nScreenStride + 2) << 16) | m_nScreenStride)); ++} ++ ++static void sm712fb_setmode(struct sm712fb_info *sfb) ++{ ++ switch (sfb->fb.var.bits_per_pixel) { ++ case 32: ++ sfb->fb.fix.visual = FB_VISUAL_TRUECOLOR; ++ sfb->fb.fix.line_length = sfb->fb.var.xres * 4; ++ sfb->fb.var.red.length = 8; ++ sfb->fb.var.green.length = 8; ++ sfb->fb.var.blue.length = 8; ++ sfb->fb.var.red.offset = 16; ++ sfb->fb.var.green.offset = 8; ++ sfb->fb.var.blue.offset = 0; ++ break; ++ case 24: ++ sfb->fb.fix.visual = FB_VISUAL_TRUECOLOR; ++ sfb->fb.fix.line_length = sfb->fb.var.xres * 3; ++ sfb->fb.var.red.length = 8; ++ sfb->fb.var.green.length = 8; ++ sfb->fb.var.blue.length = 8; ++ sfb->fb.var.red.offset = 16; ++ sfb->fb.var.green.offset = 8; ++ sfb->fb.var.blue.offset = 0; ++ break; ++ case 8: ++ sfb->fb.fix.visual = FB_VISUAL_PSEUDOCOLOR; ++ sfb->fb.fix.line_length = sfb->fb.var.xres; ++ sfb->fb.var.red.length = 3; ++ sfb->fb.var.green.length = 3; ++ sfb->fb.var.blue.length = 2; ++ sfb->fb.var.red.offset = 5; ++ sfb->fb.var.green.offset = 2; ++ sfb->fb.var.blue.offset = 0; ++ break; ++ case 16: ++ default: ++ sfb->fb.fix.visual = FB_VISUAL_TRUECOLOR; ++ sfb->fb.fix.line_length = sfb->fb.var.xres * 2; ++ sfb->fb.var.red.length = 5; ++ sfb->fb.var.green.length = 6; ++ sfb->fb.var.blue.length = 5; ++ sfb->fb.var.red.offset = 11; ++ sfb->fb.var.green.offset = 5; ++ sfb->fb.var.blue.offset = 0; ++ break; ++ } ++ ++ sfb->width = sfb->fb.var.xres; ++ sfb->height = sfb->fb.var.yres; ++ sfb->hz = 60; ++ sm712_set_timing(sfb); ++} ++ ++static int sm712_check_var(struct fb_var_screeninfo *var, struct fb_info *info) ++{ ++ /* sanity checks */ ++ if (var->xres_virtual < var->xres) ++ var->xres_virtual = var->xres; ++ ++ if (var->yres_virtual < var->yres) ++ var->yres_virtual = var->yres; ++ ++ /* set valid default bpp */ ++ if ((var->bits_per_pixel != 8) && (var->bits_per_pixel != 16) && ++ (var->bits_per_pixel != 24) && (var->bits_per_pixel != 32)) ++ var->bits_per_pixel = 16; ++ ++ return 0; ++} ++ ++static int sm712_set_par(struct fb_info *info) ++{ ++ sm712fb_setmode(info->par); ++ ++ return 0; ++} ++ ++static struct fb_ops sm712fb_ops = { ++ .owner = THIS_MODULE, ++ .fb_check_var = sm712_check_var, ++ .fb_set_par = sm712_set_par, ++ .fb_setcolreg = sm712_setcolreg, ++ .fb_blank = sm712_blank, ++ .fb_fillrect = cfb_fillrect, ++ .fb_imageblit = cfb_imageblit, ++ .fb_copyarea = cfb_copyarea, ++#ifdef __BIG_ENDIAN ++ .fb_read = sm712fb_read, ++ .fb_write = sm712fb_write, ++#endif ++}; ++ ++/* ++ * alloc struct sm712fb_info and assign default values ++ */ ++static struct sm712fb_info *sm712_fb_info_new(struct pci_dev *pdev) ++{ ++ struct sm712fb_info *sfb; ++ ++ sfb = kzalloc(sizeof(*sfb), GFP_KERNEL); ++ ++ if (!sfb) ++ return NULL; ++ ++ sfb->pdev = pdev; ++ ++ sfb->fb.flags = FBINFO_FLAG_DEFAULT; ++ sfb->fb.fbops = &sm712fb_ops; ++ sfb->fb.fix = sm712fb_fix; ++ sfb->fb.var = sm712fb_var; ++ sfb->fb.pseudo_palette = sfb->colreg; ++ sfb->fb.par = sfb; ++ sfb->accel = accel; ++ ++ return sfb; ++} ++ ++/* ++ * free struct sm712fb_info ++ */ ++static void sm712_fb_info_free(struct sm712fb_info *sfb) ++{ ++ kfree(sfb); ++} ++ ++/* ++ * Map in the screen memory ++ */ ++ ++static int sm712_map_smem(struct sm712fb_info *sfb, ++ struct pci_dev *pdev, u_long smem_len) ++{ ++ ++ sfb->fb.fix.smem_start = pci_resource_start(pdev, 0); ++ ++#ifdef __BIG_ENDIAN ++ if (sfb->fb.var.bits_per_pixel == 32) ++ sfb->fb.fix.smem_start += 0x800000; ++#endif ++ ++ sfb->fb.fix.smem_len = smem_len; ++ ++ sfb->fb.screen_base = sfb->lfb; ++ ++ if (!sfb->fb.screen_base) { ++ dev_err(&pdev->dev, ++ "%s: unable to map screen memory\n", sfb->fb.fix.id); ++ return -ENOMEM; ++ } ++ ++ return 0; ++} ++ ++/* ++ * Unmap in the screen memory ++ * ++ */ ++static void sm712_unmap_smem(struct sm712fb_info *sfb) ++{ ++ if (sfb && sfb->fb.screen_base) { ++ iounmap(sfb->fb.screen_base); ++ sfb->fb.screen_base = NULL; ++ sfb->lfb = NULL; ++ } ++} ++ ++static inline void sm712_init_hw(struct sm712fb_info *sfb) ++{ ++ /* enable linear memory mode and packed pixel format */ ++ outb_p(0x18, 0x3c4); ++ outb_p(0x11, 0x3c5); ++ ++ /* set MCLK = 14.31818 * (0x16 / 0x2) */ ++ sm712_write_seq(sfb, 0x6a, 0x16); ++ sm712_write_seq(sfb, 0x6b, 0x02); ++ sm712_write_seq(sfb, 0x62, 0x3e); ++ ++ /* enable PCI burst */ ++ sm712_write_seq(sfb, 0x17, 0x20); ++ ++#ifdef __BIG_ENDIAN ++ /* enable word swap */ ++ if (sfb->fb.var.bits_per_pixel == 32) ++ sm712_write_seq(sfb, 0x17, 0x30); ++#endif ++ ++ if (!sfb->accel) { ++ dev_info(&sfb->pdev->dev, "2d acceleration was disabled by user.\n"); ++ sfb->fb.flags = FBINFO_FLAG_DEFAULT | FBINFO_HWACCEL_NONE; ++ return; ++ } ++ ++ if (sm712fb_init_accel(sfb) < 0) { ++ dev_info(&sfb->pdev->dev, "failed to enable 2d accleration.\n"); ++ sfb->fb.flags = FBINFO_FLAG_DEFAULT | FBINFO_HWACCEL_NONE; ++ return; ++ } else { ++ sm712fb_ops.fb_fillrect = sm712fb_fillrect; ++ sm712fb_ops.fb_copyarea = sm712fb_copyarea; ++ sm712fb_ops.fb_imageblit = sm712fb_imageblit; ++ sfb->fb.flags |= FBINFO_HWACCEL_COPYAREA | ++ FBINFO_HWACCEL_FILLRECT | ++ FBINFO_HWACCEL_IMAGEBLIT | ++ FBINFO_READS_FAST; ++ dev_info(&sfb->pdev->dev, "sm712fb: enable 2d acceleration.\n"); ++ } ++} ++ ++static int sm712fb_pci_probe(struct pci_dev *pdev, ++ const struct pci_device_id *ent) ++{ ++ struct sm712fb_info *sfb; ++ int err; ++ unsigned long mmio_base; ++ ++#ifndef MODULE ++ char *option = NULL; ++ ++ if (!fb_get_options("sm712fb", &option)) ++ sm712fb_setup(option); ++#endif ++ ++ dev_info(&pdev->dev, "Silicon Motion display driver."); ++ ++ err = pci_enable_device(pdev); /* enable SMTC chip */ ++ if (err) ++ return err; ++ ++ sprintf(sm712fb_fix.id, "sm712fb"); ++ ++ sfb = sm712_fb_info_new(pdev); ++ ++ if (!sfb) { ++ err = -ENOMEM; ++ goto free_fail; ++ } ++ ++ sfb->chip_id = ent->device; ++ ++ pci_set_drvdata(pdev, sfb); ++ ++ /* get mode parameter from sm712_scr_info */ ++ if (sm712_scr_info.lfb_width != 0) { ++ sfb->fb.var.xres = sm712_scr_info.lfb_width; ++ sfb->fb.var.yres = sm712_scr_info.lfb_height; ++ sfb->fb.var.bits_per_pixel = sm712_scr_info.lfb_depth; ++ } else { ++ /* default resolution 1024x600 16bit mode */ ++ sfb->fb.var.xres = SM712_DEFAULT_XRES; ++ sfb->fb.var.yres = SM712_DEFAULT_YRES; ++ sfb->fb.var.bits_per_pixel = SM712_DEFAULT_BPP; ++ } ++ ++#ifdef __BIG_ENDIAN ++ if (sfb->fb.var.bits_per_pixel == 24) ++ sfb->fb.var.bits_per_pixel = (sm712_scr_info.lfb_depth = 32); ++#endif ++ ++ /* Map address and memory detection */ ++ mmio_base = pci_resource_start(pdev, 0); ++ pci_read_config_byte(pdev, PCI_REVISION_ID, &sfb->chip_rev_id); ++ ++ if (sfb->chip_id != 0x712) { ++ dev_err(&pdev->dev, ++ "No valid Silicon Motion display chip was detected!"); ++ ++ goto fb_fail; ++ } ++ ++ sfb->fb.fix.mmio_start = mmio_base + SM712_REG_BASE; ++ sfb->fb.fix.mmio_len = SM712_REG_SIZE; ++#ifdef __BIG_ENDIAN ++ sfb->lfb = ioremap(mmio_base, 0x00c00000); ++#else ++ sfb->lfb = ioremap(mmio_base, 0x00800000); ++#endif ++ sfb->mmio = sfb->lfb + SM712_MMIO_BASE; ++ sfb->dpr = sfb->lfb + SM712_DPR_BASE; ++ sfb->vpr = sfb->lfb + SM712_VPR_BASE; ++ sfb->dataport = sfb->lfb + SM712_DATAPORT_BASE; ++#ifdef __BIG_ENDIAN ++ if (sfb->fb.var.bits_per_pixel == 32) { ++ sfb->lfb += 0x800000; ++ dev_info(&pdev->dev, "sfb->lfb=%p", sfb->lfb); ++ } ++#endif ++ if (!sfb->mmio) { ++ dev_err(&pdev->dev, ++ "%s: unable to map memory mapped IO!", sfb->fb.fix.id); ++ err = -ENOMEM; ++ goto fb_fail; ++ } ++ ++ sm712_init_hw(sfb); ++ ++ /* can support 32 bpp */ ++ if (15 == sfb->fb.var.bits_per_pixel) ++ sfb->fb.var.bits_per_pixel = 16; ++ ++ sfb->fb.var.xres_virtual = sfb->fb.var.xres; ++ sfb->fb.var.yres_virtual = sfb->fb.var.yres; ++ err = sm712_map_smem(sfb, pdev, SM712_VRAM_SIZE); ++ if (err) ++ goto fail; ++ ++ sm712fb_setmode(sfb); ++ ++ err = register_framebuffer(&sfb->fb); ++ if (err < 0) ++ goto fail; ++ ++ dev_info(&pdev->dev, ++ "Silicon Motion SM%X Rev%X primary display mode %dx%d-%d Init Complete.", ++ sfb->chip_id, sfb->chip_rev_id, sfb->fb.var.xres, ++ sfb->fb.var.yres, sfb->fb.var.bits_per_pixel); ++ ++ return 0; ++ ++fail: ++ dev_err(&pdev->dev, "Silicon Motion, Inc. primary display init fail."); ++ ++ sm712_unmap_smem(sfb); ++fb_fail: ++ sm712_fb_info_free(sfb); ++free_fail: ++ pci_disable_device(pdev); ++ ++ return err; ++} ++ ++/* ++ * 0x712 (LynxEM+) ++ */ ++static const struct pci_device_id sm712fb_pci_table[] = { ++ {PCI_DEVICE(0x126f, 0x712),}, ++ {0,} ++}; ++ ++static void sm712fb_pci_remove(struct pci_dev *pdev) ++{ ++ struct sm712fb_info *sfb; ++ ++ sfb = pci_get_drvdata(pdev); ++ sm712_unmap_smem(sfb); ++ unregister_framebuffer(&sfb->fb); ++ sm712_fb_info_free(sfb); ++} ++ ++#ifdef CONFIG_PM ++static int sm712fb_pci_suspend(struct device *device) ++{ ++ struct pci_dev *pdev = to_pci_dev(device); ++ struct sm712fb_info *sfb; ++ ++ sfb = pci_get_drvdata(pdev); ++ ++ /* set the hw in sleep mode use external clock and self memory refresh ++ * so that we can turn off internal PLLs later on ++ */ ++ sm712_write_seq(sfb, 0x20, (sm712_read_seq(sfb, 0x20) | 0xc0)); ++ sm712_write_seq(sfb, 0x69, (sm712_read_seq(sfb, 0x69) & 0xf7)); ++ ++ console_lock(); ++ fb_set_suspend(&sfb->fb, 1); ++ console_unlock(); ++ ++ /* additionally turn off all function blocks including internal PLLs */ ++ sm712_write_seq(sfb, 0x21, 0xff); ++ ++ return 0; ++} ++ ++static int sm712fb_pci_resume(struct device *device) ++{ ++ struct pci_dev *pdev = to_pci_dev(device); ++ struct sm712fb_info *sfb; ++ ++ sfb = pci_get_drvdata(pdev); ++ ++ /* reinit hardware */ ++ sm712_init_hw(sfb); ++ ++ sm712_write_seq(sfb, 0x34, (sm712_read_seq(sfb, 0x34) | 0xc0)); ++ sm712_write_seq(sfb, 0x33, ((sm712_read_seq(sfb, 0x33) | 0x08) & 0xfb)); ++ ++ sm712fb_setmode(sfb); ++ ++ console_lock(); ++ fb_set_suspend(&sfb->fb, 0); ++ console_unlock(); ++ ++ return 0; ++} ++ ++static SIMPLE_DEV_PM_OPS(sm712_pm_ops, sm712fb_pci_suspend, sm712fb_pci_resume); ++#define SM712_PM_OPS (&sm712_pm_ops) ++ ++#else /* !CONFIG_PM */ ++ ++#define SM712_PM_OPS NULL ++ ++#endif /* !CONFIG_PM */ ++ ++static struct pci_driver sm712fb_driver = { ++ .name = "sm712fb", ++ .id_table = sm712fb_pci_table, ++ .probe = sm712fb_pci_probe, ++ .remove = sm712fb_pci_remove, ++ .driver.pm = SM712_PM_OPS, ++}; ++ ++module_pci_driver(sm712fb_driver); ++ ++module_param(accel, bool, S_IRUGO); ++MODULE_PARM_DESC(accel, "Enable or disable 2D Acceleration"); ++ ++MODULE_AUTHOR("Siliconmotion "); ++MODULE_DESCRIPTION("Framebuffer driver for Silicon Motion SM712 Graphic Cards"); ++MODULE_LICENSE("GPL"); +diff --git a/drivers/video/fbdev/sm712fb/sm712fb_drv.h b/drivers/video/fbdev/sm712fb/sm712fb_drv.h +new file mode 100644 +index 0000000..bf81bff +--- /dev/null ++++ b/drivers/video/fbdev/sm712fb/sm712fb_drv.h +@@ -0,0 +1,130 @@ ++/* ++ * Silicon Motion SM712 frame buffer device ++ * ++ * Copyright (C) 2006 Silicon Motion Technology Corp. ++ * Authors: Ge Wang, gewang@siliconmotion.com ++ * Boyod boyod.yang@siliconmotion.com.cn ++ * ++ * Copyright (C) 2009 Lemote, Inc. ++ * Author: Wu Zhangjin, wuzhangjin@gmail.com ++ * ++ * Copyright (C) 2011 Igalia, S.L. ++ * Author: Javier M. Mellid <jmunhoz@igalia.com> ++ * ++ * Copyright (C) 2014 Tom Li. ++ * Author: Tom Li (Yifeng Li) <biergaizi@member.fsf.org> ++ * ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file COPYING in the main directory of this archive for ++ * more details. ++ * ++ * Framebuffer driver for Silicon Motion SM712 chip ++ */ ++ ++#ifndef _SM712FB_DRV_H ++#define _SM712FB_DRV_H ++ ++/* ++* Private structure ++*/ ++struct sm712fb_info { ++ struct pci_dev *pdev; ++ struct fb_info fb; ++ u16 chip_id; ++ u8 chip_rev_id; ++ ++ void __iomem *lfb; /* linear frame buffer, the base address */ ++ ++ void __iomem *dpr; /* drawing processor control regs */ ++ void __iomem *vpr; /* video processor control regs */ ++ void __iomem *cpr; /* capture processor control regs */ ++ void __iomem *mmio; /* memory map IO port */ ++ void __iomem *dataport; /* 2d drawing engine data port */ ++ ++ u_int width; ++ u_int height; ++ u_int hz; ++ ++ u32 colreg[17]; ++ ++ bool accel; ++}; ++ ++/* constants for registers operations */ ++ ++#include "sm712fb_io.h" ++ ++#define FB_ACCEL_SMI_LYNX 88 ++ ++#define SM712_DEFAULT_XRES 1024 ++#define SM712_DEFAULT_YRES 600 ++#define SM712_DEFAULT_BPP 16 ++ ++#define SM712_VRAM_SIZE 0x00400000 ++ ++#define SM712_REG_BASE 0x00400000 ++#define SM712_REG_SIZE 0x00400000 ++ ++#define SM712_MMIO_BASE 0x00700000 ++ ++#define SM712_DPR_BASE 0x00408000 ++#define SM712_DPR_SIZE (0x6C + 1) ++ ++#define DPR_COORDS(x, y) (((x) << 16) | (y)) ++ ++#define DPR_SRC_COORDS 0x00 ++#define DPR_DST_COORDS 0x04 ++#define DPR_SPAN_COORDS 0x08 ++#define DPR_DE_CTRL 0x0c ++#define DPR_PITCH 0x10 ++#define DPR_FG_COLOR 0x14 ++#define DPR_BG_COLOR 0x18 ++#define DPR_STRETCH 0x1c ++#define DPR_COLOR_COMPARE 0x20 ++#define DPR_COLOR_COMPARE_MASK 0x24 ++#define DPR_BYTE_BIT_MASK 0x28 ++#define DPR_CROP_TOPLEFT_COORDS 0x2c ++#define DPR_CROP_BOTRIGHT_COORDS 0x30 ++#define DPR_SRC_WINDOW 0x3c ++#define DPR_SRC_BASE 0x40 ++#define DPR_DST_BASE 0x44 ++ ++#define DE_CTRL_START 0x80000000 ++#define DE_CTRL_RTOL 0x08000000 ++#define DE_CTRL_COMMAND_MASK 0x001f0000 ++#define DE_CTRL_COMMAND_SHIFT 16 ++#define DE_CTRL_COMMAND_BITBLT 0x00 ++#define DE_CTRL_COMMAND_SOLIDFILL 0x01 ++#define DE_CTRL_COMMAND_HOST_WRITE 0x08 ++#define DE_CTRL_ROP_ENABLE 0x00008000 ++#define DE_CTRL_ROP_MASK 0x000000ff ++#define DE_CTRL_ROP_SHIFT 0 ++#define DE_CTRL_ROP_SRC 0x0c ++ ++#define DE_CTRL_HOST_SHIFT 22 ++#define DE_CTRL_HOST_MONO 1 ++ ++#define SCR_DE_STATUS 0x16 ++#define SCR_DE_STATUS_MASK 0x18 ++#define SCR_DE_ENGINE_IDLE 0x10 ++ ++#define SM712_VPR_BASE 0x0040c000 ++#define SM712_VPR_SIZE (0x44 + 1) ++ ++#define SM712_DATAPORT_BASE 0x00400000 ++ ++#define SR00_SR04_SIZE (0x04 - 0x00 + 1) ++#define SR10_SR24_SIZE (0x24 - 0x10 + 1) ++#define SR30_SR75_SIZE (0x75 - 0x30 + 1) ++#define SR80_SR93_SIZE (0x93 - 0x80 + 1) ++#define SRA0_SRAF_SIZE (0xAF - 0xA0 + 1) ++#define GR00_GR08_SIZE (0x08 - 0x00 + 1) ++#define AR00_AR14_SIZE (0x14 - 0x00 + 1) ++#define CR00_CR18_SIZE (0x18 - 0x00 + 1) ++#define CR30_CR4D_SIZE (0x4D - 0x30 + 1) ++#define CR90_CRA7_SIZE (0xA7 - 0x90 + 1) ++ ++#define DAC_REG (0x3c8) ++#define DAC_VAL (0x3c9) ++ ++#endif +diff --git a/drivers/video/fbdev/sm712fb/sm712fb_io.h b/drivers/video/fbdev/sm712fb/sm712fb_io.h +new file mode 100644 +index 0000000..93346a0 +--- /dev/null ++++ b/drivers/video/fbdev/sm712fb/sm712fb_io.h +@@ -0,0 +1,90 @@ ++/* ++ * Silicon Motion SM712 frame buffer device ++ * ++ * Copyright (C) 2006 Silicon Motion Technology Corp. ++ * Authors: Ge Wang, gewang@siliconmotion.com ++ * Boyod boyod.yang@siliconmotion.com.cn ++ * ++ * Copyright (C) 2009 Lemote, Inc. ++ * Author: Wu Zhangjin, wuzhangjin@gmail.com ++ * ++ * Copyright (C) 2011 Igalia, S.L. ++ * Author: Javier M. Mellid <jmunhoz@igalia.com> ++ * ++ * Copyright (C) 2014 Tom Li. ++ * Author: Tom Li (Yifeng Li) <biergaizi@member.fsf.org> ++ * ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file COPYING in the main directory of this archive for ++ * more details. ++ * ++ */ ++ ++ ++#define sm712_writeb(base, reg, dat) writeb(dat, base + reg) ++#define sm712_writew(base, reg, dat) writew(dat, base + reg) ++#define sm712_writel(base, reg, dat) writel(dat, base + reg) ++ ++#define sm712_readb(base, reg) readb(base + reg) ++#define sm712_readw(base, reg) readw(base + reg) ++#define sm712_readl(base, reg) readl(base + reg) ++ ++ ++static inline void sm712_write_crtc(struct sm712fb_info *fb, u8 reg, u8 val) ++{ ++ sm712_writeb(fb->mmio, 0x3d4, reg); ++ sm712_writeb(fb->mmio, 0x3d5, val); ++} ++ ++static inline u8 sm712_read_crtc(struct sm712fb_info *fb, u8 reg) ++{ ++ sm712_writeb(fb->mmio, 0x3d4, reg); ++ return sm712_readb(fb->mmio, 0x3d5); ++} ++ ++static inline void sm712_write_grph(struct sm712fb_info *fb, u8 reg, u8 val) ++{ ++ sm712_writeb(fb->mmio, 0x3ce, reg); ++ sm712_writeb(fb->mmio, 0x3cf, val); ++} ++ ++static inline u8 sm712_read_grph(struct sm712fb_info *fb, u8 reg) ++{ ++ sm712_writeb(fb->mmio, 0x3ce, reg); ++ return sm712_readb(fb->mmio, 0x3cf); ++} ++ ++static inline void sm712_write_attr(struct sm712fb_info *fb, u8 reg, u8 val) ++{ ++ sm712_readb(fb->mmio, 0x3da); ++ sm712_writeb(fb->mmio, 0x3c0, reg); ++ sm712_readb(fb->mmio, 0x3c1); ++ sm712_writeb(fb->mmio, 0x3c0, val); ++} ++ ++static inline void sm712_write_seq(struct sm712fb_info *fb, u8 reg, u8 val) ++{ ++ sm712_writeb(fb->mmio, 0x3c4, reg); ++ sm712_writeb(fb->mmio, 0x3c5, val); ++} ++ ++static inline u8 sm712_read_seq(struct sm712fb_info *fb, u8 reg) ++{ ++ sm712_writeb(fb->mmio, 0x3c4, reg); ++ return sm712_readb(fb->mmio, 0x3c5); ++} ++ ++static inline u32 sm712_read_dpr(struct sm712fb_info *fb, u8 reg) ++{ ++ return sm712_readl(fb->dpr, reg); ++} ++ ++static inline void sm712_write_dpr(struct sm712fb_info *fb, u8 reg, u32 val) ++{ ++ sm712_writel(fb->dpr, reg, val); ++} ++ ++static inline void sm712_write_dataport(struct sm712fb_info *fb, u32 val) ++{ ++ sm712_writel(fb->dataport, 0, val); ++} +diff --git a/drivers/video/fbdev/sm712fb/sm712fb_modedb.h b/drivers/video/fbdev/sm712fb/sm712fb_modedb.h +new file mode 100644 +index 0000000..16ee7e3 +--- /dev/null ++++ b/drivers/video/fbdev/sm712fb/sm712fb_modedb.h +@@ -0,0 +1,682 @@ ++/* The next structure holds all information relevant for a specific video mode. ++ */ ++ ++struct ModeInit { ++ int mmSizeX; ++ int mmSizeY; ++ int bpp; ++ int hz; ++ unsigned char Init_MISC; ++ unsigned char Init_SR00_SR04[SR00_SR04_SIZE]; ++ unsigned char Init_SR10_SR24[SR10_SR24_SIZE]; ++ unsigned char Init_SR30_SR75[SR30_SR75_SIZE]; ++ unsigned char Init_SR80_SR93[SR80_SR93_SIZE]; ++ unsigned char Init_SRA0_SRAF[SRA0_SRAF_SIZE]; ++ unsigned char Init_GR00_GR08[GR00_GR08_SIZE]; ++ unsigned char Init_AR00_AR14[AR00_AR14_SIZE]; ++ unsigned char Init_CR00_CR18[CR00_CR18_SIZE]; ++ unsigned char Init_CR30_CR4D[CR30_CR4D_SIZE]; ++ unsigned char Init_CR90_CRA7[CR90_CRA7_SIZE]; ++}; ++ ++/********************************************************************** ++ SM712 Mode table. ++ **********************************************************************/ ++struct ModeInit VGAMode[] = { ++ { ++ /* mode#0: 640 x 480 16Bpp 60Hz */ ++ 640, 480, 16, 60, ++ /* Init_MISC */ ++ 0xE3, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x00, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEF, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x32, 0x03, 0xA0, 0x09, 0xC0, 0x32, 0x32, 0x32, ++ 0x32, 0x32, 0x32, 0x32, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x32, 0x32, 0x32, ++ 0x04, 0x24, 0x63, 0x4F, 0x52, 0x0B, 0xDF, 0xEA, ++ 0x04, 0x50, 0x19, 0x32, 0x32, 0x00, 0x00, 0x32, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x07, 0x82, 0x07, 0x04, ++ 0x00, 0x45, 0x30, 0x30, 0x40, 0x30, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x32, ++ 0xF7, 0x00, 0x00, 0x00, 0xEF, 0xFF, 0x32, 0x32, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xFF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x5F, 0x4F, 0x4F, 0x00, 0x53, 0x1F, 0x0B, 0x3E, ++ 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xEA, 0x0C, 0xDF, 0x50, 0x40, 0xDF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xFF, 0xFD, ++ 0x5F, 0x4F, 0x00, 0x54, 0x00, 0x0B, 0xDF, 0x00, ++ 0xEA, 0x0C, 0x2E, 0x00, 0x4F, 0xDF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0xDD, 0x5E, 0xEA, 0x87, 0x44, 0x8F, 0x55, ++ 0x0A, 0x8F, 0x55, 0x0A, 0x00, 0x00, 0x18, 0x00, ++ 0x11, 0x10, 0x0B, 0x0A, 0x0A, 0x0A, 0x0A, 0x00, ++ }, ++ }, ++ { ++ /* mode#1: 640 x 480 24Bpp 60Hz */ ++ 640, 480, 24, 60, ++ /* Init_MISC */ ++ 0xE3, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x00, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEF, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x32, 0x03, 0xA0, 0x09, 0xC0, 0x32, 0x32, 0x32, ++ 0x32, 0x32, 0x32, 0x32, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x32, 0x32, 0x32, ++ 0x04, 0x24, 0x63, 0x4F, 0x52, 0x0B, 0xDF, 0xEA, ++ 0x04, 0x50, 0x19, 0x32, 0x32, 0x00, 0x00, 0x32, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x07, 0x82, 0x07, 0x04, ++ 0x00, 0x45, 0x30, 0x30, 0x40, 0x30, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x32, ++ 0xF7, 0x00, 0x00, 0x00, 0xEF, 0xFF, 0x32, 0x32, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xFF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x5F, 0x4F, 0x4F, 0x00, 0x53, 0x1F, 0x0B, 0x3E, ++ 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xEA, 0x0C, 0xDF, 0x50, 0x40, 0xDF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xFF, 0xFD, ++ 0x5F, 0x4F, 0x00, 0x54, 0x00, 0x0B, 0xDF, 0x00, ++ 0xEA, 0x0C, 0x2E, 0x00, 0x4F, 0xDF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0xDD, 0x5E, 0xEA, 0x87, 0x44, 0x8F, 0x55, ++ 0x0A, 0x8F, 0x55, 0x0A, 0x00, 0x00, 0x18, 0x00, ++ 0x11, 0x10, 0x0B, 0x0A, 0x0A, 0x0A, 0x0A, 0x00, ++ }, ++ }, ++ { ++ /* mode#0: 640 x 480 32Bpp 60Hz */ ++ 640, 480, 32, 60, ++ /* Init_MISC */ ++ 0xE3, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x00, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEF, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x32, 0x03, 0xA0, 0x09, 0xC0, 0x32, 0x32, 0x32, ++ 0x32, 0x32, 0x32, 0x32, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x32, 0x32, 0x32, ++ 0x04, 0x24, 0x63, 0x4F, 0x52, 0x0B, 0xDF, 0xEA, ++ 0x04, 0x50, 0x19, 0x32, 0x32, 0x00, 0x00, 0x32, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x07, 0x82, 0x07, 0x04, ++ 0x00, 0x45, 0x30, 0x30, 0x40, 0x30, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x32, ++ 0xF7, 0x00, 0x00, 0x00, 0xEF, 0xFF, 0x32, 0x32, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xFF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x5F, 0x4F, 0x4F, 0x00, 0x53, 0x1F, 0x0B, 0x3E, ++ 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xEA, 0x0C, 0xDF, 0x50, 0x40, 0xDF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xFF, 0xFD, ++ 0x5F, 0x4F, 0x00, 0x54, 0x00, 0x0B, 0xDF, 0x00, ++ 0xEA, 0x0C, 0x2E, 0x00, 0x4F, 0xDF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0xDD, 0x5E, 0xEA, 0x87, 0x44, 0x8F, 0x55, ++ 0x0A, 0x8F, 0x55, 0x0A, 0x00, 0x00, 0x18, 0x00, ++ 0x11, 0x10, 0x0B, 0x0A, 0x0A, 0x0A, 0x0A, 0x00, ++ }, ++ }, ++ ++ { /* mode#2: 800 x 600 16Bpp 60Hz */ ++ 800, 600, 16, 60, ++ /* Init_MISC */ ++ 0x2B, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEE, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x34, 0x03, 0x20, 0x09, 0xC0, 0x24, 0x24, 0x24, ++ 0x24, 0x24, 0x24, 0x24, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x38, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x24, 0x24, 0x24, ++ 0x04, 0x48, 0x83, 0x63, 0x68, 0x72, 0x57, 0x58, ++ 0x04, 0x55, 0x59, 0x24, 0x24, 0x00, 0x00, 0x24, ++ 0x01, 0x80, 0x7A, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x1C, 0x85, 0x35, 0x13, ++ 0x02, 0x45, 0x30, 0x35, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0x00, 0x00, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x24, ++ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x24, 0x24, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x7F, 0x63, 0x63, 0x00, 0x68, 0x18, 0x72, 0xF0, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x58, 0x0C, 0x57, 0x64, 0x40, 0x57, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xBF, 0xFD, ++ 0x7F, 0x63, 0x00, 0x69, 0x18, 0x72, 0x57, 0x00, ++ 0x58, 0x0C, 0xE0, 0x20, 0x63, 0x57, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0x4B, 0x5E, 0x55, 0x86, 0x9D, 0x8E, 0xAA, ++ 0xDB, 0x2A, 0xDF, 0x33, 0x00, 0x00, 0x18, 0x00, ++ 0x20, 0x1F, 0x1A, 0x19, 0x0F, 0x0F, 0x0F, 0x00, ++ }, ++ }, ++ { /* mode#3: 800 x 600 24Bpp 60Hz */ ++ 800, 600, 24, 60, ++ 0x2B, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEE, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x36, 0x03, 0x20, 0x09, 0xC0, 0x36, 0x36, 0x36, ++ 0x36, 0x36, 0x36, 0x36, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x36, 0x36, 0x36, ++ 0x04, 0x48, 0x83, 0x63, 0x68, 0x72, 0x57, 0x58, ++ 0x04, 0x55, 0x59, 0x36, 0x36, 0x00, 0x00, 0x36, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x1C, 0x85, 0x35, 0x13, ++ 0x02, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x36, ++ 0xF7, 0x00, 0x00, 0x00, 0xEF, 0xFF, 0x36, 0x36, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x7F, 0x63, 0x63, 0x00, 0x68, 0x18, 0x72, 0xF0, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x58, 0x0C, 0x57, 0x64, 0x40, 0x57, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xBF, 0xFD, ++ 0x7F, 0x63, 0x00, 0x69, 0x18, 0x72, 0x57, 0x00, ++ 0x58, 0x0C, 0xE0, 0x20, 0x63, 0x57, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0x4B, 0x5E, 0x55, 0x86, 0x9D, 0x8E, 0xAA, ++ 0xDB, 0x2A, 0xDF, 0x33, 0x00, 0x00, 0x18, 0x00, ++ 0x20, 0x1F, 0x1A, 0x19, 0x0F, 0x0F, 0x0F, 0x00, ++ }, ++ }, ++ { /* mode#7: 800 x 600 32Bpp 60Hz */ ++ 800, 600, 32, 60, ++ /* Init_MISC */ ++ 0x2B, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xFF, 0xBE, 0xEE, 0xFF, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x34, 0x03, 0x20, 0x09, 0xC0, 0x24, 0x24, 0x24, ++ 0x24, 0x24, 0x24, 0x24, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x38, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x24, 0x24, 0x24, ++ 0x04, 0x48, 0x83, 0x63, 0x68, 0x72, 0x57, 0x58, ++ 0x04, 0x55, 0x59, 0x24, 0x24, 0x00, 0x00, 0x24, ++ 0x01, 0x80, 0x7A, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x1C, 0x85, 0x35, 0x13, ++ 0x02, 0x45, 0x30, 0x35, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0x00, 0x00, 0x00, 0x6F, 0x7F, 0x7F, 0xFF, 0x24, ++ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x24, 0x24, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFF, 0xBF, 0xFF, 0xFF, 0xED, 0xED, 0xED, ++ 0x7B, 0xFF, 0xFF, 0xFF, 0xBF, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0x7F, 0x63, 0x63, 0x00, 0x68, 0x18, 0x72, 0xF0, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x58, 0x0C, 0x57, 0x64, 0x40, 0x57, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x03, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xE7, 0xBF, 0xFD, ++ 0x7F, 0x63, 0x00, 0x69, 0x18, 0x72, 0x57, 0x00, ++ 0x58, 0x0C, 0xE0, 0x20, 0x63, 0x57, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x56, 0x4B, 0x5E, 0x55, 0x86, 0x9D, 0x8E, 0xAA, ++ 0xDB, 0x2A, 0xDF, 0x33, 0x00, 0x00, 0x18, 0x00, ++ 0x20, 0x1F, 0x1A, 0x19, 0x0F, 0x0F, 0x0F, 0x00, ++ }, ++ }, ++ /* We use 1024x768 table to light 1024x600 panel for lemote */ ++ { /* mode#4: 1024 x 600 16Bpp 60Hz */ ++ 1024, 600, 16, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x00, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xC8, 0x40, 0x14, 0x60, 0x00, 0x0A, 0x17, 0x20, ++ 0x51, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x00, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x22, 0x03, 0x24, 0x09, 0xC0, 0x22, 0x22, 0x22, ++ 0x22, 0x22, 0x22, 0x22, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x22, 0x22, 0x22, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x22, 0x22, 0x00, 0x00, 0x22, ++ 0x01, 0x80, 0x7A, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x16, 0x02, 0x0D, 0x82, 0x09, 0x02, ++ 0x04, 0x45, 0x3F, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0xA3, 0x7F, 0x00, 0x82, 0x0b, 0x6f, 0x57, 0x00, ++ 0x5c, 0x0f, 0xE0, 0xe0, 0x7F, 0x57, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++ { /* mode#5: 1024 x 768 24Bpp 60Hz */ ++ 1024, 768, 24, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xF3, 0xB6, 0xC0, 0xDD, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x30, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x38, 0x03, 0x20, 0x09, 0xC0, 0x3A, 0x3A, 0x3A, ++ 0x3A, 0x3A, 0x3A, 0x3A, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x00, 0x00, 0x3A, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x3A, 0x3A, 0x00, 0x00, 0x3A, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x3B, 0x0D, 0x09, 0x02, ++ 0x04, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0xA3, 0x7F, 0x00, 0x86, 0x15, 0x24, 0xFF, 0x00, ++ 0x01, 0x07, 0xE5, 0x20, 0x7F, 0xFF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++ { /* mode#4: 1024 x 768 32Bpp 60Hz */ ++ 1024, 768, 32, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xF3, 0xB6, 0xC0, 0xDD, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x32, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x38, 0x03, 0x20, 0x09, 0xC0, 0x3A, 0x3A, 0x3A, ++ 0x3A, 0x3A, 0x3A, 0x3A, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x00, 0x00, 0x3A, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x3A, 0x3A, 0x00, 0x00, 0x3A, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x3B, 0x0D, 0x09, 0x02, ++ 0x04, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x00, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0xA3, 0x7F, 0x00, 0x86, 0x15, 0x24, 0xFF, 0x00, ++ 0x01, 0x07, 0xE5, 0x20, 0x7F, 0xFF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++ { /* mode#6: 320 x 240 16Bpp 60Hz */ ++ 320, 240, 16, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xF3, 0xB6, 0xC0, 0xDD, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x32, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x38, 0x03, 0x20, 0x09, 0xC0, 0x3A, 0x3A, 0x3A, ++ 0x3A, 0x3A, 0x3A, 0x3A, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x00, 0x00, 0x3A, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x3A, 0x3A, 0x00, 0x00, 0x3A, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x08, 0x43, 0x08, 0x43, ++ 0x04, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x30, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0x2E, 0x27, 0x00, 0x2b, 0x0c, 0x0F, 0xEF, 0x00, ++ 0xFe, 0x0f, 0x01, 0xC0, 0x27, 0xEF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++ ++ { /* mode#8: 320 x 240 32Bpp 60Hz */ ++ 320, 240, 32, 60, ++ /* Init_MISC */ ++ 0xEB, ++ { /* Init_SR0_SR4 */ ++ 0x03, 0x01, 0x0F, 0x03, 0x0E, ++ }, ++ { /* Init_SR10_SR24 */ ++ 0xF3, 0xB6, 0xC0, 0xDD, 0x00, 0x0E, 0x17, 0x2C, ++ 0x99, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0xC4, 0x32, 0x02, 0x01, 0x01, ++ }, ++ { /* Init_SR30_SR75 */ ++ 0x38, 0x03, 0x20, 0x09, 0xC0, 0x3A, 0x3A, 0x3A, ++ 0x3A, 0x3A, 0x3A, 0x3A, 0x00, 0x00, 0x03, 0xFF, ++ 0x00, 0xFC, 0x00, 0x00, 0x20, 0x18, 0x00, 0xFC, ++ 0x20, 0x0C, 0x44, 0x20, 0x00, 0x00, 0x00, 0x3A, ++ 0x06, 0x68, 0xA7, 0x7F, 0x83, 0x24, 0xFF, 0x03, ++ 0x00, 0x60, 0x59, 0x3A, 0x3A, 0x00, 0x00, 0x3A, ++ 0x01, 0x80, 0x7E, 0x1A, 0x1A, 0x00, 0x00, 0x00, ++ 0x50, 0x03, 0x74, 0x14, 0x08, 0x43, 0x08, 0x43, ++ 0x04, 0x45, 0x30, 0x30, 0x40, 0x20, ++ }, ++ { /* Init_SR80_SR93 */ ++ 0xFF, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x3A, ++ 0xF7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3A, 0x3A, ++ 0x00, 0x00, 0x00, 0x00, ++ }, ++ { /* Init_SRA0_SRAF */ ++ 0x00, 0xFB, 0x9F, 0x01, 0x00, 0xED, 0xED, 0xED, ++ 0x7B, 0xFB, 0xFF, 0xFF, 0x97, 0xEF, 0xBF, 0xDF, ++ }, ++ { /* Init_GR00_GR08 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0F, ++ 0xFF, ++ }, ++ { /* Init_AR00_AR14 */ ++ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, ++ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, ++ 0x41, 0x00, 0x0F, 0x00, 0x00, ++ }, ++ { /* Init_CR00_CR18 */ ++ 0xA3, 0x7F, 0x7F, 0x00, 0x85, 0x16, 0x24, 0xF5, ++ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ++ 0x03, 0x09, 0xFF, 0x80, 0x40, 0xFF, 0x00, 0xE3, ++ 0xFF, ++ }, ++ { /* Init_CR30_CR4D */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x20, ++ 0x00, 0x00, 0x30, 0x40, 0x00, 0xFF, 0xBF, 0xFF, ++ 0x2E, 0x27, 0x00, 0x2b, 0x0c, 0x0F, 0xEF, 0x00, ++ 0xFe, 0x0f, 0x01, 0xC0, 0x27, 0xEF, ++ }, ++ { /* Init_CR90_CRA7 */ ++ 0x55, 0xD9, 0x5D, 0xE1, 0x86, 0x1B, 0x8E, 0x26, ++ 0xDA, 0x8D, 0xDE, 0x94, 0x00, 0x00, 0x18, 0x00, ++ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x15, 0x03, ++ }, ++ }, ++}; ++ ++#define numVGAModes ARRAY_SIZE(VGAMode) +diff --git a/drivers/video/output.c b/drivers/video/output.c +new file mode 100644 +index 0000000..1446c49 +--- /dev/null ++++ b/drivers/video/output.c +@@ -0,0 +1,133 @@ ++/* ++ * output.c - Display Output Switch driver ++ * ++ * Copyright (C) 2006 Luming Yu <luming.yu@intel.com> ++ * ++ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ++ * ++ * 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 of the License, 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., ++ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. ++ * ++ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ++ */ ++#include <linux/module.h> ++#include <linux/video_output.h> ++#include <linux/slab.h> ++#include <linux/err.h> ++#include <linux/ctype.h> ++ ++ ++MODULE_DESCRIPTION("Display Output Switcher Lowlevel Control Abstraction"); ++MODULE_LICENSE("GPL"); ++MODULE_AUTHOR("Luming Yu <luming.yu@intel.com>"); ++ ++static ssize_t state_show(struct device *dev, struct device_attribute *attr, ++ char *buf) ++{ ++ ssize_t ret_size = 0; ++ struct output_device *od = to_output_device(dev); ++ if (od->props) ++ ret_size = sprintf(buf,"%.8x\n",od->props->get_status(od)); ++ return ret_size; ++} ++ ++static ssize_t state_store(struct device *dev, struct device_attribute *attr, ++ const char *buf,size_t count) ++{ ++ char *endp; ++ struct output_device *od = to_output_device(dev); ++ int request_state = simple_strtoul(buf,&endp,0); ++ size_t size = endp - buf; ++ ++ if (isspace(*endp)) ++ size++; ++ if (size != count) ++ return -EINVAL; ++ ++ if (od->props) { ++ od->request_state = request_state; ++ od->props->set_state(od); ++ } ++ return count; ++} ++static DEVICE_ATTR_RW(state); ++ ++static void video_output_release(struct device *dev) ++{ ++ struct output_device *od = to_output_device(dev); ++ kfree(od); ++} ++ ++static struct attribute *video_output_attrs[] = { ++ &dev_attr_state.attr, ++ NULL, ++}; ++ATTRIBUTE_GROUPS(video_output); ++ ++static struct class video_output_class = { ++ .name = "video_output", ++ .dev_release = video_output_release, ++ .dev_groups = video_output_groups, ++}; ++ ++struct output_device *video_output_register(const char *name, ++ struct device *dev, ++ void *devdata, ++ struct output_properties *op) ++{ ++ struct output_device *new_dev; ++ int ret_code = 0; ++ ++ new_dev = kzalloc(sizeof(struct output_device),GFP_KERNEL); ++ if (!new_dev) { ++ ret_code = -ENOMEM; ++ goto error_return; ++ } ++ new_dev->props = op; ++ new_dev->dev.class = &video_output_class; ++ new_dev->dev.parent = dev; ++ dev_set_name(&new_dev->dev, "%s", name); ++ dev_set_drvdata(&new_dev->dev, devdata); ++ ret_code = device_register(&new_dev->dev); ++ if (ret_code) { ++ kfree(new_dev); ++ goto error_return; ++ } ++ return new_dev; ++ ++error_return: ++ return ERR_PTR(ret_code); ++} ++EXPORT_SYMBOL(video_output_register); ++ ++void video_output_unregister(struct output_device *dev) ++{ ++ if (!dev) ++ return; ++ device_unregister(&dev->dev); ++} ++EXPORT_SYMBOL(video_output_unregister); ++ ++static void __exit video_output_class_exit(void) ++{ ++ class_unregister(&video_output_class); ++} ++ ++static int __init video_output_class_init(void) ++{ ++ return class_register(&video_output_class); ++} ++ ++postcore_initcall(video_output_class_init); ++module_exit(video_output_class_exit); diff --git a/include/linux/sm501.h b/include/linux/sm501.h index 02fde50..a8677f0 100644 --- a/include/linux/sm501.h @@ -10685,8 +11946,71 @@ index 02fde50..a8677f0 100644 #define SM501_USE_ALL (0xffffffff) +diff --git a/include/linux/video_output.h b/include/linux/video_output.h +new file mode 100644 +index 0000000..ed5cdeb +--- /dev/null ++++ b/include/linux/video_output.h +@@ -0,0 +1,57 @@ ++/* ++ * ++ * Copyright (C) 2006 Luming Yu <luming.yu@intel.com> ++ * ++ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ++ * ++ * 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 of the License, 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., ++ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. ++ * ++ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ++ */ ++#ifndef _LINUX_VIDEO_OUTPUT_H ++#define _LINUX_VIDEO_OUTPUT_H ++#include <linux/device.h> ++#include <linux/err.h> ++struct output_device; ++struct output_properties { ++ int (*set_state)(struct output_device *); ++ int (*get_status)(struct output_device *); ++}; ++struct output_device { ++ int request_state; ++ struct output_properties *props; ++ struct device dev; ++}; ++#define to_output_device(obj) container_of(obj, struct output_device, dev) ++#if defined(CONFIG_VIDEO_OUTPUT_CONTROL) || defined(CONFIG_VIDEO_OUTPUT_CONTROL_MODULE) ++struct output_device *video_output_register(const char *name, ++ struct device *dev, ++ void *devdata, ++ struct output_properties *op); ++void video_output_unregister(struct output_device *dev); ++#else ++static struct output_device *video_output_register(const char *name, ++ struct device *dev, ++ void *devdata, ++ struct output_properties *op) ++{ ++ return ERR_PTR(-ENODEV); ++} ++static void video_output_unregister(struct output_device *dev) ++{ ++ return; ++} ++#endif ++#endif diff --git a/init/calibrate.c b/init/calibrate.c -index 520702d..e78762a 100644 +index ce635dc..10e775d 100644 --- a/init/calibrate.c +++ b/init/calibrate.c @@ -21,6 +21,7 @@ static int __init lpj_setup(char *str) @@ -10705,7 +12029,7 @@ index 520702d..e78762a 100644 /* * This is the number of bits of precision for the loops_per_jiffy. Each -@@ -282,6 +284,7 @@ void calibrate_delay(void) +@@ -291,6 +293,7 @@ void calibrate_delay(void) lpj = lpj_fine; pr_info("Calibrating delay loop (skipped), " "value calculated using timer frequency.. "); @@ -10713,7 +12037,7 @@ index 520702d..e78762a 100644 } else if ((lpj = calibrate_delay_is_known())) { ; } else if ((lpj = calibrate_delay_direct()) != 0) { -@@ -292,6 +295,7 @@ void calibrate_delay(void) +@@ -301,6 +304,7 @@ void calibrate_delay(void) if (!printed) pr_info("Calibrating delay loop... "); lpj = calibrate_delay_converge(); @@ -10722,7 +12046,7 @@ index 520702d..e78762a 100644 per_cpu(cpu_loops_per_jiffy, this_cpu) = lpj; if (!printed) diff --git a/net/rfkill/core.c b/net/rfkill/core.c -index ed7e0b4..6cb1ae8 100644 +index fa7cd79..616abb5 100644 --- a/net/rfkill/core.c +++ b/net/rfkill/core.c @@ -111,7 +111,7 @@ static LIST_HEAD(rfkill_list); /* list of registered rf switches */ @@ -10735,10 +12059,10 @@ index ed7e0b4..6cb1ae8 100644 MODULE_PARM_DESC(default_state, "Default initial state for all radio types, 0 = radio off"); diff --git a/scripts/recordmcount.pl b/scripts/recordmcount.pl -index 91280b8..6b147ae 100755 +index d4b6656..35e2000 100755 --- a/scripts/recordmcount.pl +++ b/scripts/recordmcount.pl -@@ -307,14 +307,33 @@ if ($arch eq "x86_64") { +@@ -305,14 +305,33 @@ if ($arch eq "x86_64") { $cc .= " -m64"; $objcopy .= " -O elf64-sparc"; } elsif ($arch eq "mips") { @@ -10780,7 +12104,7 @@ index 91280b8..6b147ae 100755 # # c: 3c030000 lui v1,0x0 # c: R_MIPS_HI16 _mcount -@@ -326,19 +345,12 @@ if ($arch eq "x86_64") { +@@ -324,19 +343,12 @@ if ($arch eq "x86_64") { # 10: R_MIPS_NONE *ABS* # 14: 03e0082d move at,ra # 18: 0060f809 jalr v1 diff --git a/kernels/linux-libre-rt/PKGBUILD b/kernels/linux-libre-rt/PKGBUILD index 9298d357d..81ee09dd3 100644 --- a/kernels/linux-libre-rt/PKGBUILD +++ b/kernels/linux-libre-rt/PKGBUILD @@ -11,10 +11,10 @@ # Contributor: Luke Shumaker <lukeshu@sbcglobal.net> pkgbase=linux-libre-rt # Build stock -rt kernel -_pkgbasever=3.14-gnu -_pkgver=3.14.31-gnu -_rtbasever=3.14 -_rtpatchver=rt28 +_pkgbasever=3.18-gnu +_pkgver=3.18.7-gnu +_rtbasever=3.18 +_rtpatchver=rt1 _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname _replacesoldkernels=('kernel26%' 'kernel26-libre%') # '%' gets replaced with _kernelname @@ -34,41 +34,30 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li "http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgver}/patch-${_pkgbasever}-${_pkgver}.xz" "http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgver}/patch-${_pkgbasever}-${_pkgver}.xz.sign" "http://www.kernel.org/pub/linux/kernel/projects/rt/${_rtbasever}/patch-${_pkgver%-*}-${_rtpatchver}.patch.xz" - #"patch-${_pkgver%-*}-${_rtpatchver}.patch.xz.sign::http://www.kernel.org/pub/linux/kernel/projects/rt/${_rtbasever}/patch-${_pkgver%-*}-${_rtpatchver}.patch.sign" # the main kernel config files 'config.i686' 'config.x86_64' 'config.mips64el' # standard config files for mkinitcpio ramdisk 'linux.preset' 'logo_linux_'{clut224.ppm,vga16.ppm,mono.pbm} 'change-default-console-loglevel.patch' - '0001-Bluetooth-allocate-static-minor-for-vhci.patch' - '0002-module-allow-multiple-calls-to-MODULE_DEVICE_TABLE-p.patch' - '0003-module-remove-MODULE_GENERIC_TABLE.patch' - '0006-genksyms-fix-typeof-handling.patch' # loongson-community patch: http://linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/ - '3.14.14-a410a5e2b7-loongson-community.patch') -sha256sums=('477555c709b9407fe37dbd70d3331ff9dde1f9d874aba2741f138d07ae6f281b' + '3.18-rc6-48c0ad793f-loongson-community.patch') +sha256sums=('0f347d8eba8a6878246b94b3559eb0371d96a3f43de2f134513e274de11a60cf' 'SKIP' - '84411639f46024e04b00f69348f619f1aebe9058125d5695afed8df8f07adb9c' + '84de335ee8a7c579f643980bbad7713f191b6a3a46ea502093bf54ff72fc4af6' 'SKIP' - '0aafc2e25dbfcb98f678276b30bd681b07209452269538ab7e268967d9fda03e' - #'SKIP' - '3bfd1d22915bb891a6826f45d3f4f636ddc9f0476dbffff3e650f900f681399d' - 'd9b1276ffaa8b4e0d08c8d47114e90167e6c0107764d6004b48a27079efcc40c' - 'f84a820e603b0fa980b6b53a36a84383d2d851539aeaaac9fb72c962e3ee1975' + 'd90a4a3f2d56dd80d449de64a875111bd2db1c5a4f4d79771df06fda227b0b1c' + '4bcc0d264549427339a9119f41bf828df49f8f53bd6b36fcff9b5d5c4dfd4289' + '490f914f97547fb50526b4d30c6dd9903d51c30d61c2c56cb0d2fdb54a608ad1' + '321861df7720b74959dddcade046156427ee45ee051e09a5d73bef7cb37b558b' 'f0d90e756f14533ee67afda280500511a62465b4f76adcc5effa95a40045179c' '074b67818582874146c389c029bc43648d145891a27e47aa2c5c42d3571f0264' '2e87a8ec1cc0c91938cac24992d8a3d4362b3e9d939767e4c9d2ec8e6d969d53' 'f67f60a30bcf2e9a2ba88ad97cace308da7a7f94919bb95c3dc030f5885a8015' - 'faced4eb4c47c4eb1a9ee8a5bf8a7c4b49d6b4d78efbe426e410730e6267d182' - '6d72e14552df59e6310f16c176806c408355951724cd5b48a47bf01591b8be02' - '52dec83a8805a8642d74d764494acda863e0aa23e3d249e80d4b457e20a3fd29' - '65d58f63215ee3c5f9c4fc6bce36fc5311a6c7dbdbe1ad29de40647b47ff9c0d' - 'cf2e7a2d00787f754028e7459688c2755a406e632ce48b60952fa4ff7ed6f4b7' - '3baf1279805edd561e80877a1baf32d98fe07220dc6e7cb4ced73ab531947bc4') + '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99' + '81adca8b3f58156f4a245cb7f20750041a9e6848b282942d7d9e213a04c96c9f') validpgpkeys=( '474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva - #'5ED9A48FC54C0A22D1D0804CEBC26CDB5A56DE73' # Steven Rostedt ) _kernelname=${pkgbase#linux-libre} @@ -105,20 +94,9 @@ prepare() { # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) patch -p1 -i "${srcdir}/change-default-console-loglevel.patch" - # Fix vhci warning in kmod (to restore every kernel maintainer's sanity) - patch -p1 -i "${srcdir}/0001-Bluetooth-allocate-static-minor-for-vhci.patch" - - # Fix atkbd aliases - patch -p1 -i "${srcdir}/0002-module-allow-multiple-calls-to-MODULE_DEVICE_TABLE-p.patch" - patch -p1 -i "${srcdir}/0003-module-remove-MODULE_GENERIC_TABLE.patch" - - # Fix generation of symbol CRCs - # http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=dc53324060f324e8af6867f57bf4891c13c6ef18 - patch -p1 -i "${srcdir}/0006-genksyms-fix-typeof-handling.patch" - # Adding loongson-community patch if [ "${CARCH}" == "mips64el" ]; then - patch -p1 -i ${srcdir}/3.14.14-a410a5e2b7-loongson-community.patch + patch -p1 -i ${srcdir}/3.18-rc6-48c0ad793f-loongson-community.patch fi cat "${srcdir}/config.${CARCH}" > ./.config @@ -304,7 +282,8 @@ _package-headers() { # add xfs and shmem for aufs building mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/fs/xfs" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/mm" - cp fs/xfs/xfs_sb.h "${pkgdir}/usr/lib/modules/${_kernver}/build/fs/xfs/xfs_sb.h" + # removed in 3.17-gnu series + # cp fs/xfs/xfs_sb.h "${pkgdir}/usr/lib/modules/${_kernver}/build/fs/xfs/xfs_sb.h" # copy in Kconfig files for i in $(find . -name "Kconfig*"); do diff --git a/kernels/linux-libre-rt/change-default-console-loglevel.patch b/kernels/linux-libre-rt/change-default-console-loglevel.patch index 22cd69a09..11da2a9d8 100644 --- a/kernels/linux-libre-rt/change-default-console-loglevel.patch +++ b/kernels/linux-libre-rt/change-default-console-loglevel.patch @@ -1,12 +1,11 @@ -diff -upr linux-3.0.orig/kernel/printk.c linux-3.0/kernel/printk.c ---- linux-3.0.orig/kernel/printk/printk.c 2011-07-22 05:17:23.000000000 +0300 -+++ linux-3.0/kernel/printk/printk.c 2011-07-27 14:43:07.000000000 +0300 -@@ -58,7 +58,7 @@ void asmlinkage __attribute__((weak)) ea - - /* We show everything that is MORE important than this.. */ - #define MINIMUM_CONSOLE_LOGLEVEL 1 /* Minimum loglevel we let people use */ --#define DEFAULT_CONSOLE_LOGLEVEL 7 /* anything MORE serious than KERN_DEBUG */ -+#define DEFAULT_CONSOLE_LOGLEVEL 4 /* anything MORE serious than KERN_WARNING */ - - DECLARE_WAIT_QUEUE_HEAD(log_wait); +--- linux-3.16/include/linux/printk.h.old 2014-08-04 18:48:30.686043266 +0200 ++++ linux-3.16/include/linux/printk.h 2014-08-04 18:48:47.706218528 +0200 +@@ -37,7 +37,7 @@ + #define CONSOLE_LOGLEVEL_SILENT 0 /* Mum's the word */ + #define CONSOLE_LOGLEVEL_MIN 1 /* Minimum loglevel we let people use */ + #define CONSOLE_LOGLEVEL_QUIET 4 /* Shhh ..., when booted with "quiet" */ +-#define CONSOLE_LOGLEVEL_DEFAULT 7 /* anything MORE serious than KERN_DEBUG */ ++#define CONSOLE_LOGLEVEL_DEFAULT 4 /* anything MORE serious than KERN_DEBUG */ + #define CONSOLE_LOGLEVEL_DEBUG 10 /* issue debug messages */ + #define CONSOLE_LOGLEVEL_MOTORMOUTH 15 /* You can't shut this one up */ diff --git a/kernels/linux-libre-rt/config.i686 b/kernels/linux-libre-rt/config.i686 index 71c85cb91..966450c25 100644 --- a/kernels/linux-libre-rt/config.i686 +++ b/kernels/linux-libre-rt/config.i686 @@ -1,11 +1,12 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 3.14.23-gnu-rt20-1-rt Kernel Configuration +# Linux/x86 3.18.7-gnu-rt1-1-rt Kernel Configuration # # CONFIG_64BIT is not set CONFIG_X86_32=y CONFIG_X86=y CONFIG_INSTRUCTION_DECODER=y +CONFIG_PERF_EVENTS_INTEL_UNCORE=y CONFIG_OUTPUT_FORMAT="elf32-i386" CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" CONFIG_LOCKDEP_SUPPORT=y @@ -23,7 +24,6 @@ CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_ARCH_HAS_CPU_RELAX=y CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_ARCH_HAS_CPU_AUTOPROBE=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y @@ -40,6 +40,7 @@ CONFIG_X86_32_SMP=y CONFIG_X86_HT=y CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx" CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_FIX_EARLYCON_MEM=y CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" CONFIG_IRQ_WORK=y CONFIG_BUILDTIME_EXTABLE_SORT=y @@ -70,21 +71,27 @@ CONFIG_SYSVIPC=y CONFIG_SYSVIPC_SYSCTL=y CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_FHANDLE=y +CONFIG_USELIB=y # CONFIG_AUDIT is not set +CONFIG_HAVE_ARCH_AUDITSYSCALL=y # # IRQ subsystem # CONFIG_GENERIC_IRQ_PROBE=y CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_LEGACY_ALLOC_HWIRQ=y CONFIG_GENERIC_PENDING_IRQ=y CONFIG_IRQ_DOMAIN=y # CONFIG_IRQ_DOMAIN_DEBUG is not set CONFIG_IRQ_FORCED_THREADING=y CONFIG_SPARSE_IRQ=y CONFIG_CLOCKSOURCE_WATCHDOG=y -CONFIG_KTIME_SCALAR=y +CONFIG_ARCH_CLOCKSOURCE_DATA=y +CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y +CONFIG_GENERIC_TIME_VSYSCALL=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y @@ -115,8 +122,10 @@ CONFIG_TASK_IO_ACCOUNTING=y # # RCU Subsystem # +# CONFIG_TREE_RCU is not set CONFIG_TREE_PREEMPT_RCU=y CONFIG_PREEMPT_RCU=y +# CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y CONFIG_RCU_FANOUT=32 CONFIG_RCU_FANOUT_LEAF=16 @@ -124,12 +133,12 @@ CONFIG_RCU_FANOUT_LEAF=16 # CONFIG_TREE_RCU_TRACE is not set # CONFIG_RCU_BOOST is not set # CONFIG_RCU_NOCB_CPU is not set +CONFIG_BUILD_BIN2C=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y CONFIG_LOG_BUF_SHIFT=19 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y -CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y -CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y CONFIG_CGROUPS=y # CONFIG_CGROUP_DEBUG is not set CONFIG_CGROUP_FREEZER=y @@ -157,7 +166,6 @@ CONFIG_IPC_NS=y CONFIG_PID_NS=y CONFIG_NET_NS=y CONFIG_SCHED_AUTOGROUP=y -CONFIG_MM_OWNER=y # CONFIG_SYSFS_DEPRECATED is not set CONFIG_RELAY=y CONFIG_BLK_DEV_INITRD=y @@ -174,8 +182,11 @@ CONFIG_ANON_INODES=y CONFIG_HAVE_UID16=y CONFIG_SYSCTL_EXCEPTION_TRACE=y CONFIG_HAVE_PCSPKR_PLATFORM=y +CONFIG_BPF=y # CONFIG_EXPERT is not set CONFIG_UID16=y +CONFIG_SGETMASK_SYSCALL=y +CONFIG_SYSFS_SYSCALL=y # CONFIG_SYSCTL_SYSCALL is not set CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y @@ -189,8 +200,10 @@ CONFIG_EPOLL=y CONFIG_SIGNALFD=y CONFIG_TIMERFD=y CONFIG_EVENTFD=y +# CONFIG_BPF_SYSCALL is not set CONFIG_SHMEM=y CONFIG_AIO=y +CONFIG_ADVISE_SYSCALLS=y CONFIG_PCI_QUIRKS=y # CONFIG_EMBEDDED is not set CONFIG_HAVE_PERF_EVENTS=y @@ -203,6 +216,7 @@ CONFIG_PERF_EVENTS=y CONFIG_VM_EVENT_COUNTERS=y CONFIG_SLUB_DEBUG=y # CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set CONFIG_SLUB=y CONFIG_SLUB_CPU_PARTIAL=y # CONFIG_SYSTEM_TRUSTED_KEYRING is not set @@ -252,7 +266,6 @@ CONFIG_CC_STACKPROTECTOR=y CONFIG_CC_STACKPROTECTOR_STRONG=y CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y -CONFIG_HAVE_ARCH_SOFT_DIRTY=y CONFIG_MODULES_USE_ELF_REL=y CONFIG_CLONE_BACKWARDS=y CONFIG_OLD_SIGSUSPEND3=y @@ -273,6 +286,7 @@ CONFIG_MODULE_FORCE_UNLOAD=y CONFIG_MODVERSIONS=y # CONFIG_MODULE_SRCVERSION_ALL is not set # CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set CONFIG_STOP_MACHINE=y CONFIG_BLOCK=y CONFIG_LBDAF=y @@ -322,6 +336,8 @@ CONFIG_PREEMPT_NOTIFIERS=y CONFIG_PADATA=y CONFIG_ASN1=m CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_ARCH_USE_QUEUE_RWLOCK=y +CONFIG_QUEUE_RWLOCK=y CONFIG_FREEZER=y # @@ -329,10 +345,12 @@ CONFIG_FREEZER=y # CONFIG_ZONE_DMA=y CONFIG_SMP=y +CONFIG_X86_FEATURE_NAMES=y CONFIG_X86_MPPARSE=y # CONFIG_X86_BIGSMP is not set # CONFIG_X86_EXTENDED_PLATFORM is not set CONFIG_X86_INTEL_LPSS=y +# CONFIG_IOSF_MBI is not set CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y CONFIG_X86_32_IRIS=m CONFIG_SCHED_OMIT_FRAME_POINTER=y @@ -340,7 +358,6 @@ CONFIG_HYPERVISOR_GUEST=y CONFIG_PARAVIRT=y # CONFIG_PARAVIRT_DEBUG is not set # CONFIG_PARAVIRT_SPINLOCKS is not set -# CONFIG_XEN_PRIVILEGED_GUEST is not set CONFIG_KVM_GUEST=y # CONFIG_KVM_DEBUG_FS is not set # CONFIG_LGUEST_GUEST is not set @@ -403,6 +420,7 @@ CONFIG_PREEMPT_LAZY=y # CONFIG_PREEMPT_RTB is not set CONFIG_PREEMPT_RT_FULL=y CONFIG_PREEMPT_COUNT=y +CONFIG_X86_UP_APIC_MSI=y CONFIG_X86_LOCAL_APIC=y CONFIG_X86_IO_APIC=y CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y @@ -447,6 +465,7 @@ CONFIG_MEMORY_ISOLATION=y # CONFIG_HAVE_BOOTMEM_INFO_NODE is not set CONFIG_PAGEFLAGS_EXTENDED=y CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_MEMORY_BALLOON=y CONFIG_BALLOON_COMPACTION=y CONFIG_COMPACTION=y CONFIG_MIGRATION=y @@ -460,14 +479,15 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y CONFIG_MEMORY_FAILURE=y CONFIG_HWPOISON_INJECT=m -CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CLEANCACHE=y CONFIG_FRONTSWAP=y # CONFIG_CMA is not set -CONFIG_ZBUD=y CONFIG_ZSWAP=y +CONFIG_ZPOOL=y +CONFIG_ZBUD=y CONFIG_ZSMALLOC=y # CONFIG_PGTABLE_MAPPING is not set +CONFIG_GENERIC_EARLY_IOREMAP=y # CONFIG_HIGHPTE is not set CONFIG_X86_CHECK_BIOS_CORRUPTION=y CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y @@ -495,6 +515,7 @@ CONFIG_KEXEC=y CONFIG_KEXEC_JUMP=y CONFIG_PHYSICAL_START=0x1000000 CONFIG_RELOCATABLE=y +# CONFIG_RANDOMIZE_BASE is not set CONFIG_X86_NEED_RELOCS=y CONFIG_PHYSICAL_ALIGN=0x1000000 CONFIG_HOTPLUG_CPU=y @@ -530,8 +551,9 @@ CONFIG_PM_TRACE_RTC=y CONFIG_PM_CLK=y # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_ACPI=y +CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y +CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y CONFIG_ACPI_SLEEP=y -# CONFIG_ACPI_PROCFS is not set # CONFIG_ACPI_PROCFS_POWER is not set CONFIG_ACPI_EC_DEBUGFS=m CONFIG_ACPI_AC=m @@ -555,6 +577,9 @@ CONFIG_ACPI_SBS=m CONFIG_ACPI_HED=y CONFIG_ACPI_CUSTOM_METHOD=m CONFIG_ACPI_BGRT=y +# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set +CONFIG_HAVE_ACPI_APEI=y +CONFIG_HAVE_ACPI_APEI_NMI=y CONFIG_ACPI_APEI=y CONFIG_ACPI_APEI_GHES=y CONFIG_ACPI_APEI_PCIEAER=y @@ -587,6 +612,7 @@ CONFIG_CPU_FREQ_GOV_POWERSAVE=m CONFIG_CPU_FREQ_GOV_USERSPACE=m CONFIG_CPU_FREQ_GOV_ONDEMAND=y CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m +# CONFIG_CPUFREQ_DT is not set # # x86 CPU frequency scaling drivers @@ -620,7 +646,6 @@ CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y # CPU Idle # CONFIG_CPU_IDLE=y -# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set CONFIG_CPU_IDLE_GOV_LADDER=y CONFIG_CPU_IDLE_GOV_MENU=y # CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set @@ -738,6 +763,7 @@ CONFIG_HAVE_AOUT=y CONFIG_BINFMT_MISC=y CONFIG_COREDUMP=y CONFIG_HAVE_ATOMIC_IOMAP=y +CONFIG_PMC_ATOM=y CONFIG_NET=y # @@ -776,6 +802,9 @@ CONFIG_IP_PIMSM_V1=y CONFIG_IP_PIMSM_V2=y CONFIG_SYN_COOKIES=y CONFIG_NET_IPVTI=m +CONFIG_NET_UDP_TUNNEL=m +# CONFIG_NET_FOU is not set +# CONFIG_GENEVE is not set CONFIG_INET_AH=m CONFIG_INET_ESP=m CONFIG_INET_IPCOMP=m @@ -801,6 +830,7 @@ CONFIG_TCP_CONG_LP=m CONFIG_TCP_CONG_VENO=m CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_CONG_ILLINOIS=m +# CONFIG_TCP_CONG_DCTCP is not set CONFIG_DEFAULT_CUBIC=y # CONFIG_DEFAULT_RENO is not set CONFIG_DEFAULT_TCP_CONG="cubic" @@ -830,11 +860,12 @@ CONFIG_IPV6_SUBTREES=y # CONFIG_IPV6_MROUTE is not set CONFIG_NETLABEL=y CONFIG_NETWORK_SECMARK=y +CONFIG_NET_PTP_CLASSIFY=y CONFIG_NETWORK_PHY_TIMESTAMPING=y CONFIG_NETFILTER=y # CONFIG_NETFILTER_DEBUG is not set CONFIG_NETFILTER_ADVANCED=y -CONFIG_BRIDGE_NETFILTER=y +CONFIG_BRIDGE_NETFILTER=m # # Core Netfilter Configuration @@ -844,6 +875,7 @@ CONFIG_NETFILTER_NETLINK_ACCT=m CONFIG_NETFILTER_NETLINK_QUEUE=m CONFIG_NETFILTER_NETLINK_LOG=m CONFIG_NF_CONNTRACK=m +CONFIG_NF_LOG_COMMON=m CONFIG_NF_CONNTRACK_MARK=y CONFIG_NF_CONNTRACK_SECMARK=y CONFIG_NF_CONNTRACK_ZONES=y @@ -892,6 +924,7 @@ CONFIG_NFT_HASH=m CONFIG_NFT_COUNTER=m CONFIG_NFT_LOG=m CONFIG_NFT_LIMIT=m +# CONFIG_NFT_MASQ is not set CONFIG_NFT_NAT=m CONFIG_NFT_QUEUE=m CONFIG_NFT_REJECT=m @@ -921,6 +954,7 @@ CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m CONFIG_NETFILTER_XT_TARGET_LED=m CONFIG_NETFILTER_XT_TARGET_LOG=m CONFIG_NETFILTER_XT_TARGET_MARK=m +# CONFIG_NETFILTER_XT_NAT is not set CONFIG_NETFILTER_XT_TARGET_NETMAP=m CONFIG_NETFILTER_XT_TARGET_NFLOG=m CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m @@ -989,9 +1023,11 @@ CONFIG_IP_SET_BITMAP_IP=m CONFIG_IP_SET_BITMAP_IPMAC=m CONFIG_IP_SET_BITMAP_PORT=m CONFIG_IP_SET_HASH_IP=m +# CONFIG_IP_SET_HASH_IPMARK is not set CONFIG_IP_SET_HASH_IPPORT=m CONFIG_IP_SET_HASH_IPPORTIP=m CONFIG_IP_SET_HASH_IPPORTNET=m +# CONFIG_IP_SET_HASH_MAC is not set CONFIG_IP_SET_HASH_NETPORTNET=m CONFIG_IP_SET_HASH_NET=m CONFIG_IP_SET_HASH_NETNET=m @@ -1020,6 +1056,7 @@ CONFIG_IP_VS_RR=m CONFIG_IP_VS_WRR=m CONFIG_IP_VS_LC=m CONFIG_IP_VS_WLC=m +# CONFIG_IP_VS_FO is not set CONFIG_IP_VS_LBLC=m CONFIG_IP_VS_LBLCR=m CONFIG_IP_VS_DH=m @@ -1045,11 +1082,20 @@ CONFIG_IP_VS_PE_SIP=m CONFIG_NF_DEFRAG_IPV4=m CONFIG_NF_CONNTRACK_IPV4=m # CONFIG_NF_CONNTRACK_PROC_COMPAT is not set +# CONFIG_NF_LOG_ARP is not set +CONFIG_NF_LOG_IPV4=m CONFIG_NF_TABLES_IPV4=m CONFIG_NFT_CHAIN_ROUTE_IPV4=m -CONFIG_NFT_CHAIN_NAT_IPV4=m +CONFIG_NF_REJECT_IPV4=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NF_TABLES_ARP=m +CONFIG_NF_NAT_IPV4=m +CONFIG_NFT_CHAIN_NAT_IPV4=m +# CONFIG_NF_NAT_MASQUERADE_IPV4 is not set +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_MATCH_AH=m CONFIG_IP_NF_MATCH_ECN=m @@ -1058,15 +1104,7 @@ CONFIG_IP_NF_MATCH_TTL=m CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_TARGET_REJECT=m CONFIG_IP_NF_TARGET_SYNPROXY=m -CONFIG_IP_NF_TARGET_ULOG=m -CONFIG_NF_NAT_IPV4=m -CONFIG_IP_NF_TARGET_MASQUERADE=m -CONFIG_IP_NF_TARGET_NETMAP=m -CONFIG_IP_NF_TARGET_REDIRECT=m -CONFIG_NF_NAT_SNMP_BASIC=m -CONFIG_NF_NAT_PROTO_GRE=m -CONFIG_NF_NAT_PPTP=m -CONFIG_NF_NAT_H323=m +# CONFIG_IP_NF_NAT is not set CONFIG_IP_NF_MANGLE=m CONFIG_IP_NF_TARGET_CLUSTERIP=m CONFIG_IP_NF_TARGET_ECN=m @@ -1084,8 +1122,12 @@ CONFIG_NF_DEFRAG_IPV6=m CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_TABLES_IPV6=m CONFIG_NFT_CHAIN_ROUTE_IPV6=m -CONFIG_NFT_CHAIN_NAT_IPV6=m +CONFIG_NF_REJECT_IPV6=m CONFIG_NFT_REJECT_IPV6=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_NAT_IPV6=m +CONFIG_NFT_CHAIN_NAT_IPV6=m +# CONFIG_NF_NAT_MASQUERADE_IPV6 is not set CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_MATCH_AH=m CONFIG_IP6_NF_MATCH_EUI64=m @@ -1103,10 +1145,11 @@ CONFIG_IP6_NF_TARGET_SYNPROXY=m CONFIG_IP6_NF_MANGLE=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m -CONFIG_NF_NAT_IPV6=m -CONFIG_IP6_NF_TARGET_MASQUERADE=m -CONFIG_IP6_NF_TARGET_NPT=m +# CONFIG_IP6_NF_NAT is not set CONFIG_NF_TABLES_BRIDGE=m +# CONFIG_NFT_BRIDGE_META is not set +# CONFIG_NFT_BRIDGE_REJECT is not set +# CONFIG_NF_LOG_BRIDGE is not set CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_EBT_BROUTE=m CONFIG_BRIDGE_EBT_T_FILTER=m @@ -1127,7 +1170,6 @@ CONFIG_BRIDGE_EBT_MARK_T=m CONFIG_BRIDGE_EBT_REDIRECT=m CONFIG_BRIDGE_EBT_SNAT=m CONFIG_BRIDGE_EBT_LOG=m -CONFIG_BRIDGE_EBT_ULOG=m CONFIG_BRIDGE_EBT_NFLOG=m CONFIG_IP_DCCP=m CONFIG_INET_DCCP_DIAG=m @@ -1188,9 +1230,8 @@ CONFIG_LLC2=m # CONFIG_X25 is not set # CONFIG_LAPB is not set CONFIG_PHONET=m +# CONFIG_6LOWPAN is not set CONFIG_IEEE802154=m -CONFIG_IEEE802154_6LOWPAN=m -CONFIG_6LOWPAN_IPHC=m CONFIG_MAC802154=m CONFIG_NET_SCHED=y @@ -1259,6 +1300,7 @@ CONFIG_BATMAN_ADV=m CONFIG_BATMAN_ADV_BLA=y CONFIG_BATMAN_ADV_DAT=y CONFIG_BATMAN_ADV_NC=y +# CONFIG_BATMAN_ADV_MCAST is not set # CONFIG_BATMAN_ADV_DEBUG is not set CONFIG_OPENVSWITCH=m CONFIG_OPENVSWITCH_GRE=y @@ -1272,7 +1314,7 @@ CONFIG_HSR=m CONFIG_RPS=y CONFIG_RFS_ACCEL=y CONFIG_XPS=y -CONFIG_CGROUP_NET_PRIO=m +# CONFIG_CGROUP_NET_PRIO is not set CONFIG_CGROUP_NET_CLASSID=y CONFIG_NET_RX_BUSY_POLL=y CONFIG_BQL=y @@ -1461,6 +1503,7 @@ CONFIG_NFC_HCI=m # CONFIG_NFC_PN533=m CONFIG_NFC_WILINK=m +# CONFIG_NFC_TRF7970A is not set CONFIG_NFC_MEI_PHY=m CONFIG_NFC_SIM=m CONFIG_NFC_PORT100=m @@ -1470,6 +1513,8 @@ CONFIG_NFC_MICROREAD=m CONFIG_NFC_MICROREAD_MEI=m CONFIG_NFC_MRVL=m CONFIG_NFC_MRVL_USB=m +# CONFIG_NFC_ST21NFCA is not set +# CONFIG_NFC_ST21NFCB is not set # # Device Drivers @@ -1478,6 +1523,7 @@ CONFIG_NFC_MRVL_USB=m # # Generic Driver Options # +CONFIG_UEVENT_HELPER=y CONFIG_UEVENT_HELPER_PATH="" CONFIG_DEVTMPFS=y # CONFIG_DEVTMPFS_MOUNT is not set @@ -1486,16 +1532,20 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_FW_LOADER=y # CONFIG_FIRMWARE_IN_KERNEL is not set CONFIG_EXTRA_FIRMWARE="" -# CONFIG_FW_LOADER_USER_HELPER is not set +# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set +CONFIG_ALLOW_DEV_COREDUMP=y # CONFIG_DEBUG_DRIVER is not set # CONFIG_DEBUG_DEVRES is not set # CONFIG_SYS_HYPERVISOR is not set # CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_GENERIC_CPU_AUTOPROBE=y CONFIG_REGMAP=y CONFIG_REGMAP_I2C=m +CONFIG_REGMAP_SPI=m CONFIG_REGMAP_MMIO=m CONFIG_REGMAP_IRQ=y CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_FENCE_TRACE is not set # # Bus devices @@ -1559,9 +1609,6 @@ CONFIG_MTD_ABSENT=m CONFIG_MTD_COMPLEX_MAPPINGS=y # CONFIG_MTD_PHYSMAP is not set CONFIG_MTD_PHYSMAP_OF=m -CONFIG_MTD_SC520CDP=m -CONFIG_MTD_NETSC520=m -CONFIG_MTD_TS5500=m # CONFIG_MTD_SBC_GXX is not set # CONFIG_MTD_AMD76XROM is not set # CONFIG_MTD_ICHXROM is not set @@ -1584,7 +1631,6 @@ CONFIG_MTD_PMC551=m # CONFIG_MTD_PMC551_BUGFIX is not set # CONFIG_MTD_PMC551_DEBUG is not set # CONFIG_MTD_DATAFLASH is not set -# CONFIG_MTD_M25P80 is not set # CONFIG_MTD_SST25L is not set # CONFIG_MTD_SLRAM is not set CONFIG_MTD_PHRAM=m @@ -1606,6 +1652,7 @@ CONFIG_MTD_NAND=m CONFIG_MTD_SM_COMMON=m # CONFIG_MTD_NAND_DENALI is not set CONFIG_MTD_NAND_GPIO=m +# CONFIG_MTD_NAND_OMAP_BCH_BUILD is not set CONFIG_MTD_NAND_IDS=m CONFIG_MTD_NAND_RICOH=m CONFIG_MTD_NAND_DISKONCHIP=m @@ -1620,24 +1667,25 @@ CONFIG_MTD_NAND_NANDSIM=m # CONFIG_MTD_ONENAND is not set # -# LPDDR flash memory drivers +# LPDDR & LPDDR2 PCM memory drivers # CONFIG_MTD_LPDDR=m CONFIG_MTD_QINFO_PROBE=m +# CONFIG_MTD_SPI_NOR is not set CONFIG_MTD_UBI=m CONFIG_MTD_UBI_WL_THRESHOLD=4096 CONFIG_MTD_UBI_BEB_LIMIT=20 # CONFIG_MTD_UBI_FASTMAP is not set # CONFIG_MTD_UBI_GLUEBI is not set +# CONFIG_MTD_UBI_BLOCK is not set CONFIG_OF=y # # Device Tree and Open Firmware support # -CONFIG_PROC_DEVICETREE=y -# CONFIG_OF_SELFTEST is not set CONFIG_OF_PROMTREE=y CONFIG_OF_ADDRESS=y +CONFIG_OF_ADDRESS_PCI=y CONFIG_OF_IRQ=y CONFIG_OF_NET=y CONFIG_OF_MDIO=m @@ -1670,6 +1718,7 @@ CONFIG_BLK_DEV_FD=m # CONFIG_PARIDE is not set CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m CONFIG_ZRAM=m +# CONFIG_ZRAM_LZ4_COMPRESS is not set # CONFIG_ZRAM_DEBUG is not set CONFIG_BLK_CPQ_CISS_DA=m # CONFIG_CISS_SCSI_TAPE is not set @@ -1705,7 +1754,6 @@ CONFIG_SENSORS_LIS3LV02D=m CONFIG_AD525X_DPOT=m CONFIG_AD525X_DPOT_I2C=m # CONFIG_AD525X_DPOT_SPI is not set -# CONFIG_ATMEL_PWM is not set # CONFIG_DUMMY_IRQ is not set # CONFIG_IBM_ASM is not set CONFIG_HWLAT_DETECTOR=m @@ -1714,7 +1762,6 @@ CONFIG_SGI_IOC4=m CONFIG_TIFM_CORE=m CONFIG_TIFM_7XX1=m CONFIG_ICS932S401=m -# CONFIG_ATMEL_SSC is not set CONFIG_ENCLOSURE_SERVICES=m CONFIG_CS5535_MFGPT=m CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7 @@ -1766,15 +1813,22 @@ CONFIG_SENSORS_LIS3_I2C=m CONFIG_ALTERA_STAPL=m CONFIG_INTEL_MEI=m CONFIG_INTEL_MEI_ME=m +# CONFIG_INTEL_MEI_TXE is not set CONFIG_VMWARE_VMCI=m # +# Intel MIC Bus Driver +# + +# # Intel MIC Host Driver # # # Intel MIC Card Driver # +CONFIG_ECHO=m +# CONFIG_CXL_BASE is not set CONFIG_HAVE_IDE=y # CONFIG_IDE is not set @@ -1785,8 +1839,8 @@ CONFIG_SCSI_MOD=m CONFIG_RAID_ATTRS=m CONFIG_SCSI=m CONFIG_SCSI_DMA=y -CONFIG_SCSI_TGT=m CONFIG_SCSI_NETLINK=y +# CONFIG_SCSI_MQ_DEFAULT is not set CONFIG_SCSI_PROC_FS=y # @@ -1800,7 +1854,6 @@ CONFIG_BLK_DEV_SR_VENDOR=y CONFIG_CHR_DEV_SG=m CONFIG_CHR_DEV_SCH=m CONFIG_SCSI_ENCLOSURE=m -CONFIG_SCSI_MULTI_LUN=y # CONFIG_SCSI_CONSTANTS is not set # CONFIG_SCSI_LOGGING is not set CONFIG_SCSI_SCAN_ASYNC=y @@ -1810,14 +1863,12 @@ CONFIG_SCSI_SCAN_ASYNC=y # CONFIG_SCSI_SPI_ATTRS=m CONFIG_SCSI_FC_ATTRS=m -# CONFIG_SCSI_FC_TGT_ATTRS is not set CONFIG_SCSI_ISCSI_ATTRS=m CONFIG_SCSI_SAS_ATTRS=m CONFIG_SCSI_SAS_LIBSAS=m CONFIG_SCSI_SAS_ATA=y CONFIG_SCSI_SAS_HOST_SMP=y CONFIG_SCSI_SRP_ATTRS=m -CONFIG_SCSI_SRP_TGT_ATTRS=y CONFIG_SCSI_LOWLEVEL=y CONFIG_ISCSI_TCP=m CONFIG_ISCSI_BOOT_SYSFS=m @@ -1914,7 +1965,6 @@ CONFIG_SCSI_PAS16=m CONFIG_SCSI_QLOGIC_FAS=m CONFIG_SCSI_QLOGIC_1280=m CONFIG_SCSI_QLA_FC=m -CONFIG_TCM_QLA2XXX=m CONFIG_SCSI_QLA_ISCSI=m CONFIG_SCSI_LPFC=m # CONFIG_SCSI_LPFC_DEBUG_FS is not set @@ -1931,7 +1981,6 @@ CONFIG_SCSI_NSP32=m # CONFIG_SCSI_DEBUG is not set CONFIG_SCSI_PMCRAID=m CONFIG_SCSI_PM8001=m -CONFIG_SCSI_SRP=m CONFIG_SCSI_BFA_FC=m CONFIG_SCSI_VIRTIO=m CONFIG_SCSI_CHELSIO_FCOE=m @@ -1979,11 +2028,9 @@ CONFIG_ATA_BMDMA=y # SATA SFF controllers with BMDMA # CONFIG_ATA_PIIX=m -CONFIG_SATA_HIGHBANK=m CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PROMISE=m -CONFIG_SATA_RCAR=m CONFIG_SATA_SIL=m CONFIG_SATA_SIS=m CONFIG_SATA_SVW=m @@ -1996,7 +2043,6 @@ CONFIG_SATA_VITESSE=m # CONFIG_PATA_ALI=m CONFIG_PATA_AMD=m -CONFIG_PATA_ARASAN_CF=m CONFIG_PATA_ARTOP=m CONFIG_PATA_ATIIXP=m CONFIG_PATA_ATP867X=m @@ -2076,6 +2122,7 @@ CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_CACHE=m CONFIG_DM_CACHE_MQ=m CONFIG_DM_CACHE_CLEANER=m +# CONFIG_DM_ERA is not set CONFIG_DM_MIRROR=m CONFIG_DM_LOG_USERSPACE=m CONFIG_DM_RAID=m @@ -2092,6 +2139,7 @@ CONFIG_TARGET_CORE=m CONFIG_TCM_IBLOCK=m CONFIG_TCM_FILEIO=m CONFIG_TCM_PSCSI=m +# CONFIG_TCM_USER is not set CONFIG_LOOPBACK_TARGET=m CONFIG_TCM_FC=m CONFIG_ISCSI_TARGET=m @@ -2143,7 +2191,6 @@ CONFIG_VXLAN=m CONFIG_NETCONSOLE=m CONFIG_NETCONSOLE_DYNAMIC=y CONFIG_NETPOLL=y -# CONFIG_NETPOLL_TRAP is not set CONFIG_NET_POLL_CONTROLLER=y CONFIG_RIONET=m CONFIG_RIONET_TX_SIZE=128 @@ -2206,6 +2253,8 @@ CONFIG_NET_DSA_MV88E6060=m CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y CONFIG_NET_DSA_MV88E6131=m CONFIG_NET_DSA_MV88E6123_61_65=m +# CONFIG_NET_DSA_MV88E6171 is not set +# CONFIG_NET_DSA_BCM_SF2 is not set CONFIG_ETHERNET=y CONFIG_MDIO=m CONFIG_NET_VENDOR_3COM=y @@ -2217,16 +2266,22 @@ CONFIG_VORTEX=m CONFIG_TYPHOON=m CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_ADAPTEC_STARFIRE=m +CONFIG_NET_VENDOR_AGERE=y +CONFIG_ET131X=m CONFIG_NET_VENDOR_ALTEON=y CONFIG_ACENIC=m # CONFIG_ACENIC_OMIT_TIGON_I is not set +# CONFIG_ALTERA_TSE is not set CONFIG_NET_VENDOR_AMD=y CONFIG_AMD8111_ETH=m CONFIG_LANCE=m CONFIG_PCNET32=m CONFIG_PCMCIA_NMCLAN=m CONFIG_NI65=m +# CONFIG_AMD_XGBE is not set +# CONFIG_NET_XGENE is not set CONFIG_NET_VENDOR_ARC=y +CONFIG_ARC_EMAC_CORE=m CONFIG_ARC_EMAC=m CONFIG_NET_VENDOR_ATHEROS=y CONFIG_ATL2=m @@ -2234,22 +2289,20 @@ CONFIG_ATL1=m CONFIG_ATL1E=m CONFIG_ATL1C=m CONFIG_ALX=m -CONFIG_NET_CADENCE=y -CONFIG_ARM_AT91_ETHER=m -CONFIG_MACB=m CONFIG_NET_VENDOR_BROADCOM=y CONFIG_B44=m CONFIG_B44_PCI_AUTOSELECT=y CONFIG_B44_PCICORE_AUTOSELECT=y CONFIG_B44_PCI=y +# CONFIG_BCMGENET is not set CONFIG_BNX2=m CONFIG_CNIC=m CONFIG_TIGON3=m CONFIG_BNX2X=m CONFIG_BNX2X_SRIOV=y +# CONFIG_SYSTEMPORT is not set CONFIG_NET_VENDOR_BROCADE=y CONFIG_BNA=m -CONFIG_NET_CALXEDA_XGMAC=m CONFIG_NET_VENDOR_CHELSIO=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T1_1G=y @@ -2261,6 +2314,7 @@ CONFIG_CS89x0=m # CONFIG_CS89x0_PLATFORM is not set CONFIG_NET_VENDOR_CISCO=y CONFIG_ENIC=m +# CONFIG_CX_ECAT is not set CONFIG_DNET=m CONFIG_NET_VENDOR_DEC=y CONFIG_NET_TULIP=y @@ -2281,6 +2335,7 @@ CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_NET_VENDOR_EMULEX=y CONFIG_BE2NET=m +CONFIG_BE2NET_VXLAN=y CONFIG_NET_VENDOR_EXAR=y CONFIG_S2IO=m CONFIG_VXGE=m @@ -2305,6 +2360,7 @@ CONFIG_IXGBEVF=m CONFIG_I40E=m CONFIG_I40E_VXLAN=y CONFIG_I40EVF=m +# CONFIG_FM10K is not set CONFIG_NET_VENDOR_I825XX=y CONFIG_IP1000=m CONFIG_JME=m @@ -2317,6 +2373,7 @@ CONFIG_SKY2=m # CONFIG_SKY2_DEBUG is not set CONFIG_NET_VENDOR_MELLANOX=y CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_VXLAN=y CONFIG_MLX4_CORE=m CONFIG_MLX4_DEBUG=y CONFIG_MLX5_CORE=m @@ -2354,8 +2411,12 @@ CONFIG_NET_VENDOR_QLOGIC=y CONFIG_QLA3XXX=m CONFIG_QLCNIC=m CONFIG_QLCNIC_SRIOV=y +# CONFIG_QLCNIC_VXLAN is not set +CONFIG_QLCNIC_HWMON=y CONFIG_QLGE=m CONFIG_NETXEN_NIC=m +CONFIG_NET_VENDOR_QUALCOMM=y +# CONFIG_QCA7000 is not set CONFIG_NET_VENDOR_REALTEK=y CONFIG_ATP=m CONFIG_8139CP=m @@ -2365,9 +2426,10 @@ CONFIG_8139TOO_TUNE_TWISTER=y CONFIG_8139TOO_8129=y # CONFIG_8139_OLD_RX_RESET is not set CONFIG_R8169=m -CONFIG_SH_ETH=m CONFIG_NET_VENDOR_RDC=y CONFIG_R6040=m +CONFIG_NET_VENDOR_SAMSUNG=y +# CONFIG_SXGBE_ETH is not set CONFIG_NET_VENDOR_SEEQ=y CONFIG_NET_VENDOR_SILAN=y CONFIG_SC92031=m @@ -2422,6 +2484,7 @@ CONFIG_PHYLIB=m # CONFIG_AT803X_PHY=m CONFIG_AMD_PHY=m +# CONFIG_AMD_XGBE_PHY is not set CONFIG_MARVELL_PHY=m CONFIG_DAVICOM_PHY=m CONFIG_QSEMI_PHY=m @@ -2430,6 +2493,7 @@ CONFIG_CICADA_PHY=m CONFIG_VITESSE_PHY=m CONFIG_SMSC_PHY=m CONFIG_BROADCOM_PHY=m +# CONFIG_BCM7XXX_PHY is not set CONFIG_BCM87XX_PHY=m CONFIG_ICPLUS_PHY=m CONFIG_REALTEK_PHY=m @@ -2442,6 +2506,7 @@ CONFIG_MDIO_BITBANG=m CONFIG_MDIO_BUS_MUX=m CONFIG_MDIO_BUS_MUX_GPIO=m CONFIG_MDIO_BUS_MUX_MMIOREG=m +# CONFIG_MDIO_BCM_UNIMAC is not set # CONFIG_MICREL_KS8995MA is not set CONFIG_PLIP=m CONFIG_PPP=m @@ -2463,8 +2528,9 @@ CONFIG_SLHC=m # CONFIG_SLIP_MODE_SLIP6 is not set # -# USB Network Adapters +# Host-side USB support is needed for USB Network Adapter support # +CONFIG_USB_NET_DRIVERS=m CONFIG_USB_CATC=m CONFIG_USB_KAWETH=m CONFIG_USB_PEGASUS=m @@ -2540,9 +2606,10 @@ CONFIG_ATH9K=m CONFIG_ATH9K_PCI=y CONFIG_ATH9K_AHB=y # CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_DYNACK is not set CONFIG_ATH9K_WOW=y -# CONFIG_ATH9K_LEGACY_RATE_CONTROL is not set CONFIG_ATH9K_RFKILL=y +# CONFIG_ATH9K_CHANNEL_CONTEXT is not set CONFIG_ATH9K_HTC=m # CONFIG_ATH9K_HTC_DEBUGFS is not set CONFIG_CARL9170=m @@ -2568,12 +2635,16 @@ CONFIG_WCN36XX=m CONFIG_B43=m CONFIG_B43_BCMA=y CONFIG_B43_SSB=y +CONFIG_B43_BUSES_BCMA_AND_SSB=y +# CONFIG_B43_BUSES_BCMA is not set +# CONFIG_B43_BUSES_SSB is not set CONFIG_B43_PCI_AUTOSELECT=y CONFIG_B43_PCICORE_AUTOSELECT=y CONFIG_B43_PCMCIA=y CONFIG_B43_SDIO=y CONFIG_B43_BCMA_PIO=y CONFIG_B43_PIO=y +CONFIG_B43_PHY_G=y CONFIG_B43_PHY_N=y CONFIG_B43_PHY_LP=y CONFIG_B43_PHY_HT=y @@ -2594,8 +2665,10 @@ CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y CONFIG_BRCMUTIL=m CONFIG_BRCMSMAC=m CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_PROTO_BCDC=y CONFIG_BRCMFMAC_SDIO=y CONFIG_BRCMFMAC_USB=y +# CONFIG_BRCMFMAC_PCIE is not set # CONFIG_BRCM_TRACING is not set # CONFIG_BRCMDBG is not set CONFIG_HOSTAP=m @@ -2607,9 +2680,12 @@ CONFIG_HOSTAP_CS=m # CONFIG_IPW2100 is not set # CONFIG_IPW2200 is not set CONFIG_IWLWIFI=m +CONFIG_IWLWIFI_LEDS=y CONFIG_IWLDVM=m CONFIG_IWLMVM=m CONFIG_IWLWIFI_OPMODE_MODULAR=y +# CONFIG_IWLWIFI_BCAST_FILTERING is not set +# CONFIG_IWLWIFI_UAPSD is not set # # Debugging Options @@ -2680,13 +2756,18 @@ CONFIG_RTL8192CE=m CONFIG_RTL8192SE=m CONFIG_RTL8192DE=m CONFIG_RTL8723AE=m +# CONFIG_RTL8723BE is not set CONFIG_RTL8188EE=m +# CONFIG_RTL8192EE is not set +# CONFIG_RTL8821AE is not set CONFIG_RTL8192CU=m CONFIG_RTLWIFI=m CONFIG_RTLWIFI_PCI=m CONFIG_RTLWIFI_USB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTL8192C_COMMON=m +CONFIG_RTL8723_COMMON=m +CONFIG_RTLBTCOEXIST=m CONFIG_WL_TI=y CONFIG_WL1251=m # CONFIG_WL1251_SPI is not set @@ -2706,6 +2787,7 @@ CONFIG_MWIFIEX_USB=m CONFIG_CW1200=m CONFIG_CW1200_WLAN_SDIO=m CONFIG_CW1200_WLAN_SPI=m +# CONFIG_RSI_91X is not set # # WiMAX Wireless Broadband devices @@ -2719,6 +2801,7 @@ CONFIG_IEEE802154_FAKEHARD=m CONFIG_IEEE802154_FAKELB=m CONFIG_IEEE802154_AT86RF230=m # CONFIG_IEEE802154_MRF24J40 is not set +# CONFIG_IEEE802154_CC2520 is not set CONFIG_VMXNET3=m CONFIG_HYPERV_NET=m CONFIG_ISDN=y @@ -2814,11 +2897,11 @@ CONFIG_ISDN_DRV_PCBIT=m CONFIG_ISDN_DRV_SC=m CONFIG_ISDN_DRV_ACT2000=m CONFIG_ISDN_CAPI=m -CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y CONFIG_CAPI_TRACE=y CONFIG_ISDN_CAPI_CAPI20=m CONFIG_ISDN_CAPI_MIDDLEWARE=y CONFIG_ISDN_CAPI_CAPIDRV=m +# CONFIG_ISDN_CAPI_CAPIDRV_VERBOSE is not set # # CAPI hardware drivers @@ -2913,8 +2996,10 @@ CONFIG_KEYBOARD_MPR121=m # CONFIG_KEYBOARD_SAMSUNG is not set # CONFIG_KEYBOARD_STOWAWAY is not set # CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_OMAP4 is not set # CONFIG_KEYBOARD_XTKBD is not set # CONFIG_KEYBOARD_CROS_EC is not set +# CONFIG_KEYBOARD_CAP1106 is not set CONFIG_INPUT_MOUSE=y CONFIG_MOUSE_PS2=m CONFIG_MOUSE_PS2_ALPS=y @@ -2976,13 +3061,15 @@ CONFIG_TABLET_USB_AIPTEK=m CONFIG_TABLET_USB_GTCO=m CONFIG_TABLET_USB_HANWANG=m CONFIG_TABLET_USB_KBTAB=m -CONFIG_TABLET_USB_WACOM=m +# CONFIG_TABLET_SERIAL_WACOM4 is not set CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_OF_TOUCHSCREEN=y # CONFIG_TOUCHSCREEN_ADS7846 is not set # CONFIG_TOUCHSCREEN_AD7877 is not set CONFIG_TOUCHSCREEN_AD7879=m CONFIG_TOUCHSCREEN_AD7879_I2C=m # CONFIG_TOUCHSCREEN_AD7879_SPI is not set +# CONFIG_TOUCHSCREEN_AR1021_I2C is not set CONFIG_TOUCHSCREEN_ATMEL_MXT=m CONFIG_TOUCHSCREEN_AUO_PIXCIR=m CONFIG_TOUCHSCREEN_BU21013=m @@ -3045,7 +3132,6 @@ CONFIG_TOUCHSCREEN_TOUCHIT213=m CONFIG_TOUCHSCREEN_TSC_SERIO=m # CONFIG_TOUCHSCREEN_TSC2005 is not set CONFIG_TOUCHSCREEN_TSC2007=m -# CONFIG_TOUCHSCREEN_W90X900 is not set CONFIG_TOUCHSCREEN_ST1232=m CONFIG_TOUCHSCREEN_SUR40=m CONFIG_TOUCHSCREEN_TPS6507X=m @@ -3076,6 +3162,7 @@ CONFIG_INPUT_RETU_PWRBUTTON=m CONFIG_INPUT_UINPUT=m CONFIG_INPUT_PCF50633_PMU=m CONFIG_INPUT_PCF8574=m +# CONFIG_INPUT_PWM_BEEPER is not set CONFIG_INPUT_GPIO_ROTARY_ENCODER=m CONFIG_INPUT_ADXL34X=m CONFIG_INPUT_ADXL34X_I2C=m @@ -3084,6 +3171,8 @@ CONFIG_INPUT_ADXL34X_SPI=m CONFIG_INPUT_CMA3000=m CONFIG_INPUT_CMA3000_I2C=m CONFIG_INPUT_IDEAPAD_SLIDEBAR=m +# CONFIG_INPUT_DRV260X_HAPTICS is not set +# CONFIG_INPUT_DRV2667_HAPTICS is not set # # Hardware I/O ports @@ -3142,11 +3231,11 @@ CONFIG_TRACE_SINK=m # # Serial drivers # +CONFIG_SERIAL_EARLYCON=y CONFIG_SERIAL_8250=y # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set CONFIG_SERIAL_8250_PNP=y CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_FIX_EARLYCON_MEM=y CONFIG_SERIAL_8250_DMA=y CONFIG_SERIAL_8250_PCI=y CONFIG_SERIAL_8250_CS=m @@ -3154,6 +3243,7 @@ CONFIG_SERIAL_8250_NR_UARTS=32 CONFIG_SERIAL_8250_RUNTIME_UARTS=4 # CONFIG_SERIAL_8250_EXTENDED is not set CONFIG_SERIAL_8250_DW=m +# CONFIG_SERIAL_8250_FINTEK is not set # # Non-8250 serial port support @@ -3167,6 +3257,7 @@ CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_JSM=m CONFIG_SERIAL_OF_PLATFORM=m CONFIG_SERIAL_SCCNXP=m +# CONFIG_SERIAL_SC16IS7XX is not set # CONFIG_SERIAL_TIMBERDALE is not set CONFIG_SERIAL_ALTERA_JTAGUART=m CONFIG_SERIAL_ALTERA_UART=m @@ -3189,17 +3280,16 @@ CONFIG_IPMI_HANDLER=m # CONFIG_IPMI_PANIC_EVENT is not set CONFIG_IPMI_DEVICE_INTERFACE=m CONFIG_IPMI_SI=m +# CONFIG_IPMI_SI_PROBE_DEFAULTS is not set CONFIG_IPMI_WATCHDOG=m CONFIG_IPMI_POWEROFF=m CONFIG_HW_RANDOM=m CONFIG_HW_RANDOM_TIMERIOMEM=m CONFIG_HW_RANDOM_INTEL=m CONFIG_HW_RANDOM_AMD=m -CONFIG_HW_RANDOM_ATMEL=m CONFIG_HW_RANDOM_GEODE=m CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m -CONFIG_HW_RANDOM_EXYNOS=m CONFIG_HW_RANDOM_TPM=m CONFIG_NVRAM=m CONFIG_DTLK=m @@ -3234,6 +3324,11 @@ CONFIG_TCG_INFINEON=m CONFIG_TCG_ST33_I2C=m CONFIG_TELCLOCK=m CONFIG_DEVPORT=y +# CONFIG_XILLYBUS is not set + +# +# I2C support +# CONFIG_I2C=m CONFIG_I2C_BOARDINFO=y CONFIG_I2C_COMPAT=y @@ -3296,6 +3391,7 @@ CONFIG_I2C_OCORES=m CONFIG_I2C_PCA_PLATFORM=m CONFIG_I2C_PXA=m CONFIG_I2C_PXA_PCI=y +# CONFIG_I2C_RK3X is not set CONFIG_I2C_SIMTEC=m CONFIG_I2C_XILINX=m @@ -3314,6 +3410,7 @@ CONFIG_I2C_VIPERBOARD=m # Other I2C/SMBus bus drivers # CONFIG_I2C_PCA_ISA=m +# CONFIG_I2C_CROS_EC_TUNNEL is not set CONFIG_SCx200_ACB=m # CONFIG_I2C_STUB is not set # CONFIG_I2C_DEBUG_CORE is not set @@ -3350,6 +3447,7 @@ CONFIG_SPI_DW_MMIO=m # CONFIG_SPI_SPIDEV=m CONFIG_SPI_TLE62X0=m +# CONFIG_SPMI is not set # CONFIG_HSI is not set # @@ -3382,18 +3480,15 @@ CONFIG_PINCTRL=y # # Pin controllers # -# CONFIG_PINMUX is not set -# CONFIG_PINCONF is not set # CONFIG_DEBUG_PINCTRL is not set # CONFIG_PINCTRL_BAYTRAIL is not set -# CONFIG_PINCTRL_CAPRI is not set -# CONFIG_PINCTRL_MSM8X74 is not set # CONFIG_PINCTRL_SINGLE is not set CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y CONFIG_GPIOLIB=y CONFIG_GPIO_DEVRES=y CONFIG_OF_GPIO=y CONFIG_GPIO_ACPI=y +CONFIG_GPIOLIB_IRQCHIP=y # CONFIG_DEBUG_GPIO is not set CONFIG_GPIO_SYSFS=y @@ -3401,10 +3496,10 @@ CONFIG_GPIO_SYSFS=y # Memory mapped GPIO drivers: # # CONFIG_GPIO_GENERIC_PLATFORM is not set +# CONFIG_GPIO_DWAPB is not set # CONFIG_GPIO_IT8761E is not set # CONFIG_GPIO_F7188X is not set CONFIG_GPIO_SCH311X=m -# CONFIG_GPIO_TS5500 is not set CONFIG_GPIO_SCH=m CONFIG_GPIO_ICH=m # CONFIG_GPIO_VX855 is not set @@ -3454,7 +3549,6 @@ CONFIG_GPIO_UCB1400=m # # MODULbus GPIO expanders: # -# CONFIG_GPIO_BCM_KONA is not set # # USB GPIO expanders: @@ -3484,6 +3578,9 @@ CONFIG_CHARGER_BQ24735=m # CONFIG_CHARGER_SMB347 is not set CONFIG_POWER_RESET=y CONFIG_POWER_RESET_GPIO=y +# CONFIG_POWER_RESET_GPIO_RESTART is not set +# CONFIG_POWER_RESET_LTC2952 is not set +# CONFIG_POWER_RESET_SYSCON is not set CONFIG_POWER_AVS=y CONFIG_HWMON=m CONFIG_HWMON_VID=m @@ -3497,7 +3594,6 @@ CONFIG_SENSORS_ABITUGURU3=m CONFIG_SENSORS_AD7314=m CONFIG_SENSORS_AD7414=m CONFIG_SENSORS_AD7418=m -CONFIG_SENSORS_ADCXX=m CONFIG_SENSORS_ADM1021=m CONFIG_SENSORS_ADM1025=m CONFIG_SENSORS_ADM1026=m @@ -3515,6 +3611,7 @@ CONFIG_SENSORS_ASC7621=m CONFIG_SENSORS_K8TEMP=m CONFIG_SENSORS_K10TEMP=m CONFIG_SENSORS_FAM15H_POWER=m +CONFIG_SENSORS_APPLESMC=m CONFIG_SENSORS_ASB100=m CONFIG_SENSORS_ATXP1=m CONFIG_SENSORS_DS620=m @@ -3523,20 +3620,40 @@ CONFIG_SENSORS_I5K_AMB=m CONFIG_SENSORS_F71805F=m CONFIG_SENSORS_F71882FG=m CONFIG_SENSORS_F75375S=m +CONFIG_SENSORS_MC13783_ADC=m CONFIG_SENSORS_FSCHMD=m -CONFIG_SENSORS_G760A=m -CONFIG_SENSORS_G762=m CONFIG_SENSORS_GL518SM=m CONFIG_SENSORS_GL520SM=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m CONFIG_SENSORS_GPIO_FAN=m CONFIG_SENSORS_HIH6130=m -CONFIG_SENSORS_HTU21=m -CONFIG_SENSORS_CORETEMP=m CONFIG_SENSORS_IBMAEM=m CONFIG_SENSORS_IBMPEX=m +CONFIG_SENSORS_CORETEMP=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_JC42=m +# CONFIG_SENSORS_POWR1220 is not set CONFIG_SENSORS_LINEAGE=m +# CONFIG_SENSORS_LTC2945 is not set +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +# CONFIG_SENSORS_LTC4222 is not set +CONFIG_SENSORS_LTC4245=m +# CONFIG_SENSORS_LTC4260 is not set +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_MAX1111=m +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_HTU21=m +CONFIG_SENSORS_MCP3021=m +CONFIG_SENSORS_ADCXX=m CONFIG_SENSORS_LM63=m CONFIG_SENSORS_LM70=m CONFIG_SENSORS_LM73=m @@ -3550,27 +3667,14 @@ CONFIG_SENSORS_LM87=m CONFIG_SENSORS_LM90=m CONFIG_SENSORS_LM92=m CONFIG_SENSORS_LM93=m -CONFIG_SENSORS_LTC4151=m -CONFIG_SENSORS_LTC4215=m -CONFIG_SENSORS_LTC4245=m -CONFIG_SENSORS_LTC4261=m CONFIG_SENSORS_LM95234=m CONFIG_SENSORS_LM95241=m CONFIG_SENSORS_LM95245=m -CONFIG_SENSORS_MAX1111=m -CONFIG_SENSORS_MAX16065=m -CONFIG_SENSORS_MAX1619=m -CONFIG_SENSORS_MAX1668=m -CONFIG_SENSORS_MAX197=m -CONFIG_SENSORS_MAX6639=m -CONFIG_SENSORS_MAX6642=m -CONFIG_SENSORS_MAX6650=m -CONFIG_SENSORS_MAX6697=m -CONFIG_SENSORS_MCP3021=m -CONFIG_SENSORS_NCT6775=m -CONFIG_SENSORS_NTC_THERMISTOR=m CONFIG_SENSORS_PC87360=m CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_NTC_THERMISTOR=m +# CONFIG_SENSORS_NCT6683 is not set +CONFIG_SENSORS_NCT6775=m CONFIG_SENSORS_PCF8591=m CONFIG_PMBUS=m CONFIG_SENSORS_PMBUS=m @@ -3580,13 +3684,15 @@ CONFIG_SENSORS_LTC2978=m CONFIG_SENSORS_MAX16064=m CONFIG_SENSORS_MAX34440=m CONFIG_SENSORS_MAX8688=m +# CONFIG_SENSORS_TPS40422 is not set CONFIG_SENSORS_UCD9000=m CONFIG_SENSORS_UCD9200=m CONFIG_SENSORS_ZL6100=m +# CONFIG_SENSORS_PWM_FAN is not set CONFIG_SENSORS_SHT15=m CONFIG_SENSORS_SHT21=m +# CONFIG_SENSORS_SHTC1 is not set CONFIG_SENSORS_SIS5595=m -CONFIG_SENSORS_SMM665=m CONFIG_SENSORS_DME1737=m CONFIG_SENSORS_EMC1403=m CONFIG_SENSORS_EMC2103=m @@ -3597,6 +3703,8 @@ CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SCH56XX_COMMON=m CONFIG_SENSORS_SCH5627=m CONFIG_SENSORS_SCH5636=m +CONFIG_SENSORS_SMM665=m +# CONFIG_SENSORS_ADC128D818 is not set CONFIG_SENSORS_ADS1015=m CONFIG_SENSORS_ADS7828=m CONFIG_SENSORS_ADS7871=m @@ -3605,6 +3713,7 @@ CONFIG_SENSORS_INA209=m CONFIG_SENSORS_INA2XX=m CONFIG_SENSORS_THMC50=m CONFIG_SENSORS_TMP102=m +# CONFIG_SENSORS_TMP103 is not set CONFIG_SENSORS_TMP401=m CONFIG_SENSORS_TMP421=m CONFIG_SENSORS_VIA_CPUTEMP=m @@ -3621,8 +3730,6 @@ CONFIG_SENSORS_W83L785TS=m CONFIG_SENSORS_W83L786NG=m CONFIG_SENSORS_W83627HF=m CONFIG_SENSORS_W83627EHF=m -CONFIG_SENSORS_APPLESMC=m -CONFIG_SENSORS_MC13783_ADC=m # # ACPI drivers @@ -3636,12 +3743,13 @@ CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y # CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set CONFIG_THERMAL_GOV_FAIR_SHARE=y CONFIG_THERMAL_GOV_STEP_WISE=y +# CONFIG_THERMAL_GOV_BANG_BANG is not set CONFIG_THERMAL_GOV_USER_SPACE=y # CONFIG_CPU_THERMAL is not set # CONFIG_THERMAL_EMULATION is not set CONFIG_INTEL_POWERCLAMP=m CONFIG_X86_PKG_TEMP_THERMAL=m -CONFIG_ACPI_INT3403_THERMAL=m +# CONFIG_INT340X_THERMAL is not set # # Texas Instruments thermal drivers @@ -3655,6 +3763,7 @@ CONFIG_WATCHDOG_CORE=y # CONFIG_SOFT_WATCHDOG=m CONFIG_GPIO_WATCHDOG=m +# CONFIG_XILINX_WATCHDOG is not set CONFIG_DW_WATCHDOG=m CONFIG_RETU_WATCHDOG=m CONFIG_ACQUIRE_WDT=m @@ -3664,7 +3773,6 @@ CONFIG_ALIM7101_WDT=m CONFIG_F71808E_WDT=m CONFIG_SP5100_TCO=m CONFIG_GEODE_WDT=m -CONFIG_SC520_WDT=m CONFIG_SBC_FITPC2_WATCHDOG=m CONFIG_EUROTECH_WDT=m CONFIG_IB700_WDT=m @@ -3689,8 +3797,6 @@ CONFIG_SMSC_SCH311X_WDT=m CONFIG_SMSC37B787_WDT=m CONFIG_VIA_WDT=m CONFIG_W83627HF_WDT=m -CONFIG_W83697HF_WDT=m -CONFIG_W83697UG_WDT=m CONFIG_W83877F_WDT=m CONFIG_W83977F_WDT=m CONFIG_MACHZ_WDT=m @@ -3752,6 +3858,7 @@ CONFIG_BCMA_DRIVER_GPIO=y # CONFIG_MFD_CORE=y CONFIG_MFD_CS5535=m +# CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC_SPI=m @@ -3759,11 +3866,13 @@ CONFIG_MFD_CROS_EC_SPI=m CONFIG_MFD_MC13XXX=m # CONFIG_MFD_MC13XXX_SPI is not set CONFIG_MFD_MC13XXX_I2C=m +# CONFIG_MFD_HI6421_PMIC is not set CONFIG_HTC_PASIC3=m CONFIG_LPC_ICH=m CONFIG_LPC_SCH=m # CONFIG_MFD_JANZ_CMODIO is not set # CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_MENF21BMC is not set # CONFIG_EZX_PCAP is not set CONFIG_MFD_VIPERBOARD=m CONFIG_MFD_RETU=m @@ -3773,6 +3882,9 @@ CONFIG_PCF50633_GPIO=m CONFIG_UCB1400_CORE=m CONFIG_MFD_RDC321X=m CONFIG_MFD_RTSX_PCI=m +# CONFIG_MFD_RTSX_USB is not set +# CONFIG_MFD_RK808 is not set +# CONFIG_MFD_RN5T618 is not set CONFIG_MFD_SI476X_CORE=m CONFIG_MFD_SM501=m CONFIG_MFD_SM501_GPIO=y @@ -3785,6 +3897,7 @@ CONFIG_MFD_LP3943=m CONFIG_TPS65010=m CONFIG_TPS6507X=m CONFIG_MFD_TPS65217=m +# CONFIG_MFD_TPS65218 is not set # CONFIG_MFD_TPS65912 is not set # CONFIG_MFD_TPS65912_SPI is not set CONFIG_MFD_WL1273_CORE=m @@ -3799,6 +3912,7 @@ CONFIG_MFD_WM5102=y CONFIG_MFD_WM5110=y # CONFIG_MFD_WM8997 is not set # CONFIG_MFD_WM831X_SPI is not set +# CONFIG_MFD_WM8994 is not set # CONFIG_REGULATOR is not set CONFIG_MEDIA_SUPPORT=m @@ -3809,6 +3923,7 @@ CONFIG_MEDIA_CAMERA_SUPPORT=y CONFIG_MEDIA_ANALOG_TV_SUPPORT=y CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y CONFIG_MEDIA_RADIO_SUPPORT=y +# CONFIG_MEDIA_SDR_SUPPORT is not set CONFIG_MEDIA_RC_SUPPORT=y CONFIG_MEDIA_CONTROLLER=y CONFIG_VIDEO_DEV=m @@ -3827,6 +3942,7 @@ CONFIG_VIDEOBUF2_MEMOPS=m CONFIG_VIDEOBUF2_DMA_CONTIG=m CONFIG_VIDEOBUF2_VMALLOC=m CONFIG_VIDEOBUF2_DMA_SG=m +CONFIG_VIDEOBUF2_DVB=m CONFIG_DVB_CORE=m CONFIG_DVB_NET=y CONFIG_TTPCI_EEPROM=m @@ -3846,12 +3962,14 @@ CONFIG_IR_RC5_DECODER=m CONFIG_IR_RC6_DECODER=m CONFIG_IR_JVC_DECODER=m CONFIG_IR_SONY_DECODER=m -CONFIG_IR_RC5_SZ_DECODER=m CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_SHARP_DECODER=m CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_IR_XMP_DECODER=m CONFIG_RC_DEVICES=y CONFIG_RC_ATI_REMOTE=m CONFIG_IR_ENE=m +# CONFIG_IR_HIX5HD2 is not set CONFIG_IR_IMON=m CONFIG_IR_MCEUSB=m CONFIG_IR_ITE_CIR=m @@ -3862,6 +3980,7 @@ CONFIG_IR_STREAMZAP=m CONFIG_IR_WINBOND_CIR=m CONFIG_IR_IGUANA=m CONFIG_IR_TTUSBIR=m +# CONFIG_IR_IMG is not set CONFIG_RC_LOOPBACK=m CONFIG_IR_GPIO_CIR=m CONFIG_MEDIA_USB_SUPPORT=y @@ -3878,6 +3997,7 @@ CONFIG_USB_GL860=m CONFIG_USB_GSPCA_BENQ=m CONFIG_USB_GSPCA_CONEX=m CONFIG_USB_GSPCA_CPIA1=m +# CONFIG_USB_GSPCA_DTCS033 is not set CONFIG_USB_GSPCA_ETOMS=m CONFIG_USB_GSPCA_FINEPIX=m CONFIG_USB_GSPCA_JEILINJ=m @@ -3941,12 +4061,17 @@ CONFIG_VIDEO_USBVISION=m CONFIG_VIDEO_STK1160_COMMON=m CONFIG_VIDEO_STK1160_AC97=y CONFIG_VIDEO_STK1160=m +CONFIG_VIDEO_GO7007=m +CONFIG_VIDEO_GO7007_USB=m +CONFIG_VIDEO_GO7007_LOADER=m +# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set # # Analog/digital TV USB devices # CONFIG_VIDEO_AU0828=m CONFIG_VIDEO_AU0828_V4L2=y +# CONFIG_VIDEO_AU0828_RC is not set CONFIG_VIDEO_CX231XX=m CONFIG_VIDEO_CX231XX_RC=y CONFIG_VIDEO_CX231XX_ALSA=m @@ -3994,15 +4119,16 @@ CONFIG_DVB_USB_AZ6007=m CONFIG_DVB_USB_CE6230=m CONFIG_DVB_USB_EC168=m CONFIG_DVB_USB_GL861=m -CONFIG_DVB_USB_IT913X=m CONFIG_DVB_USB_LME2510=m CONFIG_DVB_USB_MXL111SF=m CONFIG_DVB_USB_RTL28XXU=m +# CONFIG_DVB_USB_DVBSKY is not set CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m CONFIG_SMS_USB_DRV=m CONFIG_DVB_B2C2_FLEXCOP_USB=m # CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set +CONFIG_DVB_AS102=m # # Webcam, TV (analog/digital) USB devices @@ -4036,6 +4162,8 @@ CONFIG_VIDEO_ZORAN_AVS6EYES=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m CONFIG_VIDEO_MXB=m +# CONFIG_VIDEO_SOLO6X10 is not set +# CONFIG_VIDEO_TW68 is not set # # Media capture/analog/hybrid TV support @@ -4059,11 +4187,13 @@ CONFIG_VIDEO_SAA7134=m CONFIG_VIDEO_SAA7134_ALSA=m CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7134_DVB=m +# CONFIG_VIDEO_SAA7134_GO7007 is not set CONFIG_VIDEO_SAA7164=m # # Media digital TV PCI Adapters # +CONFIG_DVB_AV7110_IR=y CONFIG_DVB_AV7110=m CONFIG_DVB_AV7110_OSD=y CONFIG_DVB_BUDGET_CORE=m @@ -4076,6 +4206,7 @@ CONFIG_DVB_B2C2_FLEXCOP_PCI=m CONFIG_DVB_PLUTO2=m CONFIG_DVB_DM1105=m CONFIG_DVB_PT1=m +# CONFIG_DVB_PT3 is not set CONFIG_MANTIS_CORE=m CONFIG_DVB_MANTIS=m CONFIG_DVB_HOPPER=m @@ -4085,7 +4216,6 @@ CONFIG_DVB_DDBRIDGE=m CONFIG_V4L_MEM2MEM_DRIVERS=y CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m CONFIG_VIDEO_SH_VEU=m -CONFIG_VIDEO_RENESAS_VSP1=m # CONFIG_V4L_TEST_DRIVERS is not set # @@ -4263,6 +4393,7 @@ CONFIG_MEDIA_TUNER_E4000=m CONFIG_MEDIA_TUNER_FC2580=m CONFIG_MEDIA_TUNER_M88TS2022=m CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_SI2157=m CONFIG_MEDIA_TUNER_IT913X=m CONFIG_MEDIA_TUNER_R820T=m @@ -4280,6 +4411,7 @@ CONFIG_DVB_M88DS3103=m # CONFIG_DVB_DRXK=m CONFIG_DVB_TDA18271C2DD=m +CONFIG_DVB_SI2165=m # # DVB-S (satellite) frontends @@ -4335,6 +4467,8 @@ CONFIG_DVB_STV0367=m CONFIG_DVB_CXD2820R=m CONFIG_DVB_RTL2830=m CONFIG_DVB_RTL2832=m +CONFIG_DVB_SI2168=m +CONFIG_DVB_AS102_FE=m # # DVB-C (cable) frontends @@ -4377,6 +4511,7 @@ CONFIG_DVB_TUNER_DIB0090=m # # SEC control devices for DVB-S # +CONFIG_DVB_DRX39XYJ=m CONFIG_DVB_LNBP21=m CONFIG_DVB_LNBP22=m CONFIG_DVB_ISL6405=m @@ -4387,7 +4522,6 @@ CONFIG_DVB_LGS8GXX=m CONFIG_DVB_ATBM8830=m CONFIG_DVB_TDA665x=m CONFIG_DVB_IX2505V=m -CONFIG_DVB_IT913X_FE=m CONFIG_DVB_M88RS2000=m CONFIG_DVB_AF9033=m @@ -4414,8 +4548,11 @@ CONFIG_INTEL_GTT=m CONFIG_VGA_ARB=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_SWITCHEROO=y + +# +# Direct Rendering Manager +# CONFIG_DRM=m -CONFIG_DRM_USB=m CONFIG_DRM_KMS_HELPER=m CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_LOAD_EDID_FIRMWARE=y @@ -4427,6 +4564,7 @@ CONFIG_DRM_TTM=m CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_SIL164=m CONFIG_DRM_I2C_NXP_TDA998X=m +# CONFIG_DRM_PTN3460 is not set CONFIG_DRM_TDFX=m CONFIG_DRM_R128=m CONFIG_DRM_RADEON=m @@ -4439,7 +4577,6 @@ CONFIG_DRM_I915=m CONFIG_DRM_I915_KMS=y CONFIG_DRM_I915_FBDEV=y # CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT is not set -# CONFIG_DRM_I915_UMS is not set CONFIG_DRM_MGA=m CONFIG_DRM_SIS=m CONFIG_DRM_VIA=m @@ -4455,11 +4592,13 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_CIRRUS_QEMU=m CONFIG_DRM_QXL=m CONFIG_DRM_BOCHS=m -CONFIG_VGASTATE=m -CONFIG_VIDEO_OUTPUT_CONTROL=m -CONFIG_HDMI=y + +# +# Frame buffer Devices +# CONFIG_FB=y CONFIG_FIRMWARE_EDID=y +CONFIG_FB_CMDLINE=y CONFIG_FB_DDC=m CONFIG_FB_BOOT_VESA_SUPPORT=y CONFIG_FB_CFB_FILLRECT=y @@ -4472,7 +4611,7 @@ CONFIG_FB_SYS_IMAGEBLIT=m # CONFIG_FB_FOREIGN_ENDIAN is not set CONFIG_FB_SYS_FOPS=m CONFIG_FB_DEFERRED_IO=y -# CONFIG_FB_SVGALIB is not set +CONFIG_FB_SVGALIB=m # CONFIG_FB_MACMODES is not set CONFIG_FB_BACKLIGHT=y CONFIG_FB_MODE_HELPERS=y @@ -4522,11 +4661,9 @@ CONFIG_FB_VT8623=m # CONFIG_FB_PM3 is not set # CONFIG_FB_CARMINE is not set # CONFIG_FB_GEODE is not set -# CONFIG_FB_TMIO is not set # CONFIG_FB_SM501 is not set # CONFIG_FB_SMSCUFX is not set CONFIG_FB_UDL=m -# CONFIG_FB_GOLDFISH is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_METRONOME is not set # CONFIG_FB_MB862XX is not set @@ -4534,7 +4671,7 @@ CONFIG_FB_VIRTUAL=m # CONFIG_FB_AUO_K190X is not set CONFIG_FB_HYPERV=m # CONFIG_FB_SIMPLE is not set -# CONFIG_EXYNOS_VIDEO is not set +CONFIG_FB_SSD1307=m CONFIG_BACKLIGHT_LCD_SUPPORT=y CONFIG_LCD_CLASS_DEVICE=m # CONFIG_LCD_L4F00242T03 is not set @@ -4567,6 +4704,8 @@ CONFIG_BACKLIGHT_LM3630A=m # CONFIG_BACKLIGHT_GPIO is not set # CONFIG_BACKLIGHT_LV5207LP is not set # CONFIG_BACKLIGHT_BD6107 is not set +CONFIG_VGASTATE=m +CONFIG_HDMI=y # # Console display driver support @@ -4579,7 +4718,6 @@ CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y # CONFIG_LOGO is not set -CONFIG_FB_SSD1307=m CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE=y # CONFIG_SOUND_OSS_CORE_PRECLAIM is not set @@ -4716,30 +4854,6 @@ CONFIG_SND_ES1968_INPUT=y CONFIG_SND_ES1968_RADIO=y CONFIG_SND_FM801=m CONFIG_SND_FM801_TEA575X_BOOL=y -CONFIG_SND_HDA_INTEL=m -CONFIG_SND_HDA_DSP_LOADER=y -CONFIG_SND_HDA_PREALLOC_SIZE=4096 -CONFIG_SND_HDA_HWDEP=y -CONFIG_SND_HDA_RECONFIG=y -CONFIG_SND_HDA_INPUT_BEEP=y -CONFIG_SND_HDA_INPUT_BEEP_MODE=1 -CONFIG_SND_HDA_INPUT_JACK=y -CONFIG_SND_HDA_PATCH_LOADER=y -CONFIG_SND_HDA_CODEC_REALTEK=m -CONFIG_SND_HDA_CODEC_ANALOG=m -CONFIG_SND_HDA_CODEC_SIGMATEL=m -CONFIG_SND_HDA_CODEC_VIA=m -CONFIG_SND_HDA_CODEC_HDMI=m -CONFIG_SND_HDA_I915=y -CONFIG_SND_HDA_CODEC_CIRRUS=m -CONFIG_SND_HDA_CODEC_CONEXANT=m -CONFIG_SND_HDA_CODEC_CA0110=m -CONFIG_SND_HDA_CODEC_CA0132=m -CONFIG_SND_HDA_CODEC_CA0132_DSP=y -CONFIG_SND_HDA_CODEC_CMEDIA=m -CONFIG_SND_HDA_CODEC_SI3054=m -CONFIG_SND_HDA_GENERIC=m -CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_HDSP=m CONFIG_SND_HDSPM=m CONFIG_SND_ICE1712=m @@ -4766,6 +4880,35 @@ CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_VIRTUOSO=m CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m + +# +# HD-Audio +# +CONFIG_SND_HDA=m +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_PREALLOC_SIZE=4096 +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_RECONFIG=y +CONFIG_SND_HDA_INPUT_BEEP=y +CONFIG_SND_HDA_INPUT_BEEP_MODE=1 +CONFIG_SND_HDA_INPUT_JACK=y +CONFIG_SND_HDA_PATCH_LOADER=y +CONFIG_SND_HDA_CODEC_REALTEK=m +CONFIG_SND_HDA_CODEC_ANALOG=m +CONFIG_SND_HDA_CODEC_SIGMATEL=m +CONFIG_SND_HDA_CODEC_VIA=m +CONFIG_SND_HDA_CODEC_HDMI=m +CONFIG_SND_HDA_I915=y +CONFIG_SND_HDA_CODEC_CIRRUS=m +CONFIG_SND_HDA_CODEC_CONEXANT=m +CONFIG_SND_HDA_CODEC_CA0110=m +CONFIG_SND_HDA_CODEC_CA0132=m +CONFIG_SND_HDA_CODEC_CA0132_DSP=y +CONFIG_SND_HDA_CODEC_CMEDIA=m +CONFIG_SND_HDA_CODEC_SI3054=m +CONFIG_SND_HDA_GENERIC=m +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_SPI=y CONFIG_SND_USB=y CONFIG_SND_USB_AUDIO=m @@ -4776,12 +4919,15 @@ CONFIG_SND_USB_CAIAQ_INPUT=y CONFIG_SND_USB_US122L=m CONFIG_SND_USB_6FIRE=m CONFIG_SND_USB_HIFACE=m +# CONFIG_SND_BCD2000 is not set CONFIG_SND_FIREWIRE=y CONFIG_SND_FIREWIRE_LIB=m CONFIG_SND_DICE=m CONFIG_SND_FIREWIRE_SPEAKERS=m CONFIG_SND_ISIGHT=m CONFIG_SND_SCS1X=m +# CONFIG_SND_FIREWORKS is not set +# CONFIG_SND_BEBOB is not set CONFIG_SND_PCMCIA=y CONFIG_SND_VXPOCKET=m CONFIG_SND_PDAUDIOCF=m @@ -4810,6 +4956,7 @@ CONFIG_HID_BELKIN=m CONFIG_HID_CHERRY=m CONFIG_HID_CHICONY=m CONFIG_HID_PRODIKEYS=m +# CONFIG_HID_CP2112 is not set CONFIG_HID_CYPRESS=m CONFIG_HID_DRAGONRISE=m CONFIG_DRAGONRISE_FF=y @@ -4819,6 +4966,7 @@ CONFIG_HID_ELO=m CONFIG_HID_EZKEY=m CONFIG_HID_HOLTEK=m CONFIG_HOLTEK_FF=y +# CONFIG_HID_GT683R is not set CONFIG_HID_HUION=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -4829,7 +4977,7 @@ CONFIG_HID_ICADE=m CONFIG_HID_TWINHAN=m CONFIG_HID_KENSINGTON=m CONFIG_HID_LCPOWER=m -CONFIG_HID_LENOVO_TPKBD=m +# CONFIG_HID_LENOVO is not set CONFIG_HID_LOGITECH=m CONFIG_HID_LOGITECH_DJ=m CONFIG_LOGITECH_FF=y @@ -4844,6 +4992,7 @@ CONFIG_HID_NTRIG=m CONFIG_HID_ORTEK=m CONFIG_HID_PANTHERLORD=m CONFIG_PANTHERLORD_FF=y +# CONFIG_HID_PENMOUNT is not set CONFIG_HID_PETALYNX=m CONFIG_HID_PICOLCD=m CONFIG_HID_PICOLCD_FB=y @@ -4860,6 +5009,7 @@ CONFIG_SONY_FF=y CONFIG_HID_SPEEDLINK=m CONFIG_HID_STEELSERIES=m CONFIG_HID_SUNPLUS=m +# CONFIG_HID_RMI is not set CONFIG_HID_GREENASIA=m CONFIG_GREENASIA_FF=y CONFIG_HID_HYPERV_MOUSE=m @@ -4894,7 +5044,6 @@ CONFIG_USB_SUPPORT=y CONFIG_USB_COMMON=m CONFIG_USB_ARCH_HAS_HCD=y CONFIG_USB=m -# CONFIG_USB_DEBUG is not set # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set # @@ -4905,6 +5054,7 @@ CONFIG_USB_DYNAMIC_MINORS=y CONFIG_USB_OTG=y CONFIG_USB_OTG_WHITELIST=y # CONFIG_USB_OTG_BLACKLIST_HUB is not set +CONFIG_USB_OTG_FSM=m CONFIG_USB_MON=m CONFIG_USB_WUSB=m CONFIG_USB_WUSB_CBAF=m @@ -4915,6 +5065,7 @@ CONFIG_USB_WUSB_CBAF=m # CONFIG_USB_C67X00_HCD=m CONFIG_USB_XHCI_HCD=m +CONFIG_USB_XHCI_PCI=m CONFIG_USB_EHCI_HCD=m CONFIG_USB_EHCI_ROOT_HUB_TT=y CONFIG_USB_EHCI_TT_NEWSCHED=y @@ -4926,6 +5077,7 @@ CONFIG_USB_ISP1760_HCD=m CONFIG_USB_ISP1362_HCD=m CONFIG_USB_FUSBH200_HCD=m CONFIG_USB_FOTG210_HCD=m +# CONFIG_USB_MAX3421_HCD is not set CONFIG_USB_OHCI_HCD=m CONFIG_USB_OHCI_HCD_PCI=m # CONFIG_USB_OHCI_HCD_SSB is not set @@ -4936,13 +5088,11 @@ CONFIG_USB_SL811_HCD=m # CONFIG_USB_SL811_HCD_ISO is not set CONFIG_USB_SL811_CS=m CONFIG_USB_R8A66597_HCD=m -CONFIG_USB_RENESAS_USBHS_HCD=m CONFIG_USB_WHCI_HCD=m CONFIG_USB_HWA_HCD=m # CONFIG_USB_HCD_BCMA is not set # CONFIG_USB_HCD_SSB is not set # CONFIG_USB_HCD_TEST_MODE is not set -CONFIG_USB_RENESAS_USBHS=m # # USB Device Class drivers @@ -4975,12 +5125,17 @@ CONFIG_USB_STORAGE_ONETOUCH=m CONFIG_USB_STORAGE_KARMA=m CONFIG_USB_STORAGE_CYPRESS_ATACB=m CONFIG_USB_STORAGE_ENE_UB6250=m +# CONFIG_USB_UAS is not set # # USB Imaging devices # CONFIG_USB_MDC800=m CONFIG_USB_MICROTEK=m +CONFIG_USBIP_CORE=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_HOST=m +# CONFIG_USBIP_DEBUG is not set CONFIG_USB_MUSB_HDRC=m # CONFIG_USB_MUSB_HOST is not set # CONFIG_USB_MUSB_GADGET is not set @@ -5050,7 +5205,6 @@ CONFIG_USB_SERIAL_OMNINET=m CONFIG_USB_SERIAL_OPTICON=m CONFIG_USB_SERIAL_XSENS_MT=m CONFIG_USB_SERIAL_WISHBONE=m -CONFIG_USB_SERIAL_ZTE=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_QT2=m # CONFIG_USB_SERIAL_DEBUG is not set @@ -5082,6 +5236,7 @@ CONFIG_USB_ISIGHTFW=m CONFIG_USB_YUREX=m CONFIG_USB_EZUSB_FX2=m CONFIG_USB_HSIC_USB3503=m +# CONFIG_USB_LINK_LAYER_TEST is not set CONFIG_USB_ATM=m CONFIG_USB_SPEEDTOUCH=m CONFIG_USB_CXACRU=m @@ -5092,16 +5247,11 @@ CONFIG_USB_XUSBATM=m # USB Physical Layer drivers # CONFIG_USB_PHY=y -CONFIG_USB_OTG_FSM=m CONFIG_NOP_USB_XCEIV=m -CONFIG_SAMSUNG_USBPHY=m -CONFIG_SAMSUNG_USB2PHY=m -CONFIG_SAMSUNG_USB3PHY=m # CONFIG_USB_GPIO_VBUS is not set CONFIG_TAHVO_USB=m # CONFIG_TAHVO_USB_HOST_BY_DEFAULT is not set CONFIG_USB_ISP1301=m -CONFIG_USB_RCAR_PHY=m CONFIG_USB_GADGET=m # CONFIG_USB_GADGET_DEBUG is not set # CONFIG_USB_GADGET_DEBUG_FILES is not set @@ -5116,7 +5266,6 @@ CONFIG_USB_FUSB300=m CONFIG_USB_FOTG210_UDC=m CONFIG_USB_GR_UDC=m CONFIG_USB_R8A66597=m -CONFIG_USB_RENESAS_USBHS_UDC=m CONFIG_USB_PXA27X=m CONFIG_USB_MV_UDC=m CONFIG_USB_MV_U3D=m @@ -5127,6 +5276,7 @@ CONFIG_USB_NET2272_DMA=y CONFIG_USB_NET2280=m CONFIG_USB_GOKU=m CONFIG_USB_EG20T=m +# CONFIG_USB_GADGET_XILINX is not set CONFIG_USB_DUMMY_HCD=m CONFIG_USB_LIBCOMPOSITE=m CONFIG_USB_F_ACM=m @@ -5140,6 +5290,8 @@ CONFIG_USB_F_SUBSET=m CONFIG_USB_F_RNDIS=m CONFIG_USB_F_MASS_STORAGE=m CONFIG_USB_F_FS=m +CONFIG_USB_F_UAC2=m +CONFIG_USB_F_UVC=m # CONFIG_USB_CONFIGFS is not set # CONFIG_USB_ZERO is not set CONFIG_USB_AUDIO=m @@ -5167,13 +5319,13 @@ CONFIG_USB_G_DBGP=m # CONFIG_USB_G_DBGP_PRINTK is not set CONFIG_USB_G_DBGP_SERIAL=y CONFIG_USB_G_WEBCAM=m +# CONFIG_USB_LED_TRIG is not set CONFIG_UWB=m CONFIG_UWB_HWA=m CONFIG_UWB_WHCI=m CONFIG_UWB_I1480U=m CONFIG_MMC=m # CONFIG_MMC_DEBUG is not set -# CONFIG_MMC_UNSAFE_RESUME is not set # CONFIG_MMC_CLKGATE is not set # @@ -5203,6 +5355,7 @@ CONFIG_MMC_CB710=m CONFIG_MMC_VIA_SDMMC=m CONFIG_MMC_VUB300=m CONFIG_MMC_USHC=m +# CONFIG_MMC_USDHI6ROL0 is not set CONFIG_MMC_REALTEK_PCI=m CONFIG_MEMSTICK=m # CONFIG_MEMSTICK_DEBUG is not set @@ -5242,7 +5395,6 @@ CONFIG_LEDS_LP8501=m CONFIG_LEDS_CLEVO_MAIL=m CONFIG_LEDS_PCA955X=m CONFIG_LEDS_PCA963X=m -CONFIG_LEDS_PCA9685=m CONFIG_LEDS_DAC124S085=m CONFIG_LEDS_PWM=m CONFIG_LEDS_BD2802=m @@ -5253,6 +5405,10 @@ CONFIG_LEDS_MC13783=m CONFIG_LEDS_TCA6507=m CONFIG_LEDS_LM355x=m CONFIG_LEDS_OT200=m + +# +# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) +# CONFIG_LEDS_BLINKM=m # @@ -5312,6 +5468,7 @@ CONFIG_EDAC_I82875P=m CONFIG_EDAC_I82975X=m CONFIG_EDAC_I3000=m CONFIG_EDAC_I3200=m +# CONFIG_EDAC_IE31200 is not set CONFIG_EDAC_X38=m CONFIG_EDAC_I5400=m CONFIG_EDAC_I7CORE=m @@ -5353,6 +5510,7 @@ CONFIG_RTC_DRV_X1205=m CONFIG_RTC_DRV_PCF2127=m CONFIG_RTC_DRV_PCF8523=m CONFIG_RTC_DRV_PCF8563=m +# CONFIG_RTC_DRV_PCF85063 is not set CONFIG_RTC_DRV_PCF8583=m CONFIG_RTC_DRV_M41T80=m CONFIG_RTC_DRV_M41T80_WDT=y @@ -5370,6 +5528,8 @@ CONFIG_RTC_DRV_RV3029C2=m # CONFIG_RTC_DRV_M41T93 is not set # CONFIG_RTC_DRV_M41T94 is not set # CONFIG_RTC_DRV_DS1305 is not set +# CONFIG_RTC_DRV_DS1343 is not set +# CONFIG_RTC_DRV_DS1347 is not set # CONFIG_RTC_DRV_DS1390 is not set # CONFIG_RTC_DRV_MAX6902 is not set # CONFIG_RTC_DRV_R9701 is not set @@ -5377,6 +5537,7 @@ CONFIG_RTC_DRV_RV3029C2=m # CONFIG_RTC_DRV_DS3234 is not set # CONFIG_RTC_DRV_PCF2123 is not set # CONFIG_RTC_DRV_RX4581 is not set +# CONFIG_RTC_DRV_MCP795 is not set # # Platform RTC drivers @@ -5386,6 +5547,7 @@ CONFIG_RTC_DRV_DS1286=m CONFIG_RTC_DRV_DS1511=m CONFIG_RTC_DRV_DS1553=m CONFIG_RTC_DRV_DS1742=m +CONFIG_RTC_DRV_DS2404=m CONFIG_RTC_DRV_STK17TA8=m CONFIG_RTC_DRV_M48T86=m CONFIG_RTC_DRV_M48T35=m @@ -5394,7 +5556,6 @@ CONFIG_RTC_DRV_MSM6242=m CONFIG_RTC_DRV_BQ4802=m CONFIG_RTC_DRV_RP5C01=m CONFIG_RTC_DRV_V3020=m -CONFIG_RTC_DRV_DS2404=m CONFIG_RTC_DRV_PCF50633=m # @@ -5402,7 +5563,7 @@ CONFIG_RTC_DRV_PCF50633=m # CONFIG_RTC_DRV_MC13XXX=m CONFIG_RTC_DRV_SNVS=m -# CONFIG_RTC_DRV_MOXART is not set +# CONFIG_RTC_DRV_XGENE is not set # # HID Sensor RTC drivers @@ -5419,8 +5580,8 @@ CONFIG_INTEL_IOATDMA=m CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m CONFIG_DW_DMAC_PCI=m -CONFIG_TIMB_DMA=m CONFIG_PCH_DMA=m +# CONFIG_FSL_EDMA is not set CONFIG_DMA_ENGINE=y CONFIG_DMA_ACPI=y CONFIG_DMA_OF=y @@ -5469,26 +5630,17 @@ CONFIG_HYPERV=m CONFIG_HYPERV_UTILS=m CONFIG_HYPERV_BALLOON=m CONFIG_STAGING=y -CONFIG_ET131X=m CONFIG_SLICOSS=m -CONFIG_USBIP_CORE=m -CONFIG_USBIP_VHCI_HCD=m -CONFIG_USBIP_HOST=m -# CONFIG_USBIP_DEBUG is not set -CONFIG_W35UND=m CONFIG_PRISM2_USB=m -CONFIG_ECHO=m CONFIG_COMEDI=m # CONFIG_COMEDI_DEBUG is not set CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048 CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480 CONFIG_COMEDI_MISC_DRIVERS=y -CONFIG_COMEDI_KCOMEDILIB=m CONFIG_COMEDI_BOND=m CONFIG_COMEDI_TEST=m CONFIG_COMEDI_PARPORT=m CONFIG_COMEDI_SERIAL2002=m -CONFIG_COMEDI_SKEL=m CONFIG_COMEDI_SSV_DNP=m CONFIG_COMEDI_ISA_DRIVERS=y CONFIG_COMEDI_PCL711=m @@ -5504,6 +5656,7 @@ CONFIG_COMEDI_AMPLC_PC236_ISA=m CONFIG_COMEDI_AMPLC_PC263_ISA=m CONFIG_COMEDI_RTI800=m CONFIG_COMEDI_RTI802=m +# CONFIG_COMEDI_DAC02 is not set CONFIG_COMEDI_DAS16M1=m CONFIG_COMEDI_DAS08_ISA=m CONFIG_COMEDI_DAS16=m @@ -5535,7 +5688,6 @@ CONFIG_COMEDI_PCMDA12=m CONFIG_COMEDI_PCMMIO=m CONFIG_COMEDI_PCMUIO=m CONFIG_COMEDI_MULTIQ3=m -CONFIG_COMEDI_POC=m CONFIG_COMEDI_S526=m CONFIG_COMEDI_PCI_DRIVERS=y CONFIG_COMEDI_8255_PCI=m @@ -5603,12 +5755,13 @@ CONFIG_COMEDI_NI_MIO_CS=m CONFIG_COMEDI_QUATECH_DAQP_CS=m CONFIG_COMEDI_USB_DRIVERS=y CONFIG_COMEDI_DT9812=m +# CONFIG_COMEDI_NI_USB6501 is not set CONFIG_COMEDI_USBDUX=m CONFIG_COMEDI_USBDUXFAST=m CONFIG_COMEDI_USBDUXSIGMA=m CONFIG_COMEDI_VMK80XX=m CONFIG_COMEDI_8255=m -CONFIG_COMEDI_FC=m +CONFIG_COMEDI_KCOMEDILIB=m CONFIG_COMEDI_AMPLC_DIO200=m CONFIG_COMEDI_AMPLC_PC236=m CONFIG_COMEDI_DAS08=m @@ -5619,7 +5772,6 @@ CONFIG_FB_OLPC_DCON=m CONFIG_FB_OLPC_DCON_1=y CONFIG_FB_OLPC_DCON_1_5=y # CONFIG_PANEL is not set -CONFIG_R8187SE=m CONFIG_RTL8192U=m CONFIG_RTLLIB=m CONFIG_RTLLIB_CRYPTO_CCMP=m @@ -5629,27 +5781,13 @@ CONFIG_RTL8192E=m CONFIG_R8712U=m CONFIG_R8188EU=m CONFIG_88EU_AP_MODE=y -CONFIG_88EU_P2P=y -CONFIG_R8821AE=m -CONFIG_RTS5139=m -# CONFIG_RTS5139_DEBUG is not set +# CONFIG_R8723AU is not set CONFIG_RTS5208=m -# CONFIG_RTS5208_DEBUG is not set -# CONFIG_TRANZPORT is not set -CONFIG_IDE_PHISON=m CONFIG_LINE6_USB=m # CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set -CONFIG_USB_SERIAL_QUATECH2=m CONFIG_VT6655=m CONFIG_VT6656=m -CONFIG_DX_SEP=m -CONFIG_WLAGS49_H2=m -CONFIG_WLAGS49_H25=m -CONFIG_FB_SM7XX=m -CONFIG_CRYSTALHD=m CONFIG_FB_XGI=m -CONFIG_ACPI_QUICKSTART=m -CONFIG_USB_ENESTORAGE=m CONFIG_BCM_WIMAX=m CONFIG_FT1000=m CONFIG_FT1000_USB=m @@ -5677,21 +5815,13 @@ CONFIG_SPEAKUP_SYNTH_DUMMY=m CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m CONFIG_STAGING_MEDIA=y -CONFIG_DVB_AS102=m CONFIG_I2C_BCM2048=m CONFIG_DVB_CXD2099=m CONFIG_VIDEO_DT3155=m CONFIG_DT3155_CCIR=y CONFIG_DT3155_STREAMING=y -CONFIG_VIDEO_GO7007=m -CONFIG_VIDEO_GO7007_USB=m -CONFIG_VIDEO_GO7007_LOADER=m -# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set -# CONFIG_USB_MSI3101 is not set CONFIG_VIDEO_V4L2_INT_DEVICE=m CONFIG_VIDEO_TCM825X=m -CONFIG_USB_SN9C102=m -CONFIG_SOLO6X10=m CONFIG_LIRC_STAGING=y CONFIG_LIRC_BT829=m CONFIG_LIRC_IGORPLUGUSB=m @@ -5716,11 +5846,6 @@ CONFIG_WIMAX_GDM72XX_USB=y # CONFIG_WIMAX_GDM72XX_SDIO is not set CONFIG_WIMAX_GDM72XX_USB_PM=y CONFIG_LTE_GDM724X=m -CONFIG_NET_VENDOR_SILICOM=y -CONFIG_SBYPASS=m -CONFIG_BPCTL=m -CONFIG_CED1401=m -CONFIG_DGRP=m CONFIG_FIREWIRE_SERIAL=m CONFIG_FWTTY_MAX_TOTAL_PORTS=64 CONFIG_FWTTY_MAX_CARD_PORTS=32 @@ -5733,16 +5858,18 @@ CONFIG_LNET=m CONFIG_LNET_MAX_PAYLOAD=1048576 CONFIG_LNET_SELFTEST=m CONFIG_LNET_XPRT_IB=m -# CONFIG_XILLYBUS is not set CONFIG_DGNC=m CONFIG_DGAP=m +# CONFIG_GS_FPGABOOT is not set CONFIG_X86_PLATFORM_DEVICES=y CONFIG_ACER_WMI=m CONFIG_ACERHDF=m +# CONFIG_ALIENWARE_WMI is not set CONFIG_ASUS_LAPTOP=m CONFIG_DELL_LAPTOP=m CONFIG_DELL_WMI=m CONFIG_DELL_WMI_AIO=m +# CONFIG_DELL_SMO8800 is not set CONFIG_FUJITSU_LAPTOP=m # CONFIG_FUJITSU_LAPTOP_DEBUG is not set CONFIG_FUJITSU_TABLET=m @@ -5775,6 +5902,7 @@ CONFIG_MSI_WMI=m CONFIG_TOPSTAR_LAPTOP=m CONFIG_ACPI_TOSHIBA=m CONFIG_TOSHIBA_BT_RFKILL=m +# CONFIG_TOSHIBA_HAPS is not set CONFIG_ACPI_CMPC=m CONFIG_INTEL_IPS=m CONFIG_IBM_RTL=m @@ -5791,6 +5919,11 @@ CONFIG_PVPANIC=m CONFIG_CHROME_PLATFORMS=y CONFIG_CHROMEOS_LAPTOP=m CONFIG_CHROMEOS_PSTORE=m + +# +# SOC (System On Chip) specific Drivers +# +# CONFIG_SOC_TI is not set CONFIG_CLKDEV_LOOKUP=y CONFIG_HAVE_CLK_PREPARE=y CONFIG_COMMON_CLK=y @@ -5800,15 +5933,25 @@ CONFIG_COMMON_CLK=y # # CONFIG_COMMON_CLK_SI5351 is not set # CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_PXA is not set # CONFIG_COMMON_CLK_QCOM is not set # # Hardware Spinlock drivers # + +# +# Clock Source drivers +# CONFIG_CLKSRC_I8253=y CONFIG_CLKEVT_I8253=y CONFIG_I8253_LOCK=y CONFIG_CLKBLD_I8253=y +# CONFIG_ATMEL_PIT is not set +# CONFIG_SH_TIMER_CMT is not set +# CONFIG_SH_TIMER_MTU2 is not set +# CONFIG_SH_TIMER_TMU is not set +# CONFIG_EM_TIMER_STI is not set # CONFIG_MAILBOX is not set CONFIG_IOMMU_API=y CONFIG_IOMMU_SUPPORT=y @@ -5827,21 +5970,40 @@ CONFIG_STE_MODEM_RPROC=m # # Rpmsg drivers # -# CONFIG_PM_DEVFREQ is not set + +# +# SOC (System On Chip) specific Drivers +# +CONFIG_PM_DEVFREQ=y + +# +# DEVFREQ Governors +# +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m +# CONFIG_DEVFREQ_GOV_PERFORMANCE is not set +# CONFIG_DEVFREQ_GOV_POWERSAVE is not set +# CONFIG_DEVFREQ_GOV_USERSPACE is not set + +# +# DEVFREQ Drivers +# CONFIG_EXTCON=m # # Extcon Device Drivers # -CONFIG_OF_EXTCON=m CONFIG_EXTCON_GPIO=m +# CONFIG_EXTCON_RT8973A is not set +# CONFIG_EXTCON_SM5502 is not set CONFIG_MEMORY=y # CONFIG_IIO is not set # CONFIG_NTB is not set # CONFIG_VME_BUS is not set CONFIG_PWM=y CONFIG_PWM_SYSFS=y +# CONFIG_PWM_FSL_FTM is not set # CONFIG_PWM_LP3943 is not set +# CONFIG_PWM_LPSS is not set # CONFIG_PWM_PCA9685 is not set CONFIG_IRQCHIP=y CONFIG_IPACK_BUS=m @@ -5858,11 +6020,12 @@ CONFIG_FMC_CHARDEV=m # PHY Subsystem # CONFIG_GENERIC_PHY=y -CONFIG_PHY_EXYNOS_MIPI_VIDEO=m -CONFIG_PHY_EXYNOS_DP_VIDEO=m CONFIG_BCM_KONA_USB2_PHY=m CONFIG_POWERCAP=y CONFIG_INTEL_RAPL=m +# CONFIG_MCB is not set +CONFIG_RAS=y +# CONFIG_THUNDERBOLT is not set # # Firmware Drivers @@ -5884,6 +6047,7 @@ CONFIG_ISCSI_IBFT=m # # CONFIG_EFI_VARS is not set CONFIG_EFI_RUNTIME_MAP=y +CONFIG_EFI_RUNTIME_WRAPPERS=y CONFIG_UEFI_CPER=y # @@ -5951,6 +6115,7 @@ CONFIG_QUOTACTL=y CONFIG_AUTOFS4_FS=y CONFIG_FUSE_FS=m CONFIG_CUSE=m +# CONFIG_OVERLAY_FS is not set # # Caches @@ -5992,6 +6157,7 @@ CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y CONFIG_PROC_SYSCTL=y CONFIG_PROC_PAGE_MONITOR=y +CONFIG_KERNFS=y CONFIG_SYSFS=y CONFIG_TMPFS=y CONFIG_TMPFS_POSIX_ACL=y @@ -6092,6 +6258,7 @@ CONFIG_NFSD_V3_ACL=y CONFIG_NFSD_V4=y CONFIG_NFSD_V4_SECURITY_LABEL=y # CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_GRACE_PERIOD=m CONFIG_LOCKD=m CONFIG_LOCKD_V4=y CONFIG_NFS_ACL_SUPPORT=m @@ -6099,10 +6266,11 @@ CONFIG_NFS_COMMON=y CONFIG_SUNRPC=m CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC_BACKCHANNEL=y -CONFIG_SUNRPC_XPRT_RDMA=m CONFIG_SUNRPC_SWAP=y CONFIG_RPCSEC_GSS_KRB5=m CONFIG_SUNRPC_DEBUG=y +CONFIG_SUNRPC_XPRT_RDMA_CLIENT=m +CONFIG_SUNRPC_XPRT_RDMA_SERVER=m CONFIG_CEPH_FS=m CONFIG_CEPH_FSCACHE=y CONFIG_CEPH_FS_POSIX_ACL=y @@ -6198,7 +6366,7 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y # printk and dmesg options # CONFIG_PRINTK_TIME=y -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_BOOT_PRINTK_DELAY is not set CONFIG_DYNAMIC_DEBUG=y @@ -6259,6 +6427,7 @@ CONFIG_PANIC_ON_OOPS_VALUE=0 CONFIG_PANIC_TIMEOUT=0 CONFIG_SCHED_DEBUG=y CONFIG_SCHEDSTATS=y +# CONFIG_SCHED_STACK_END_CHECK is not set CONFIG_TIMER_STATS=y # CONFIG_DEBUG_PREEMPT is not set @@ -6266,7 +6435,6 @@ CONFIG_TIMER_STATS=y # Lock Debugging (spinlocks, mutexes, etc...) # # CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_MUTEXES is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set @@ -6275,11 +6443,12 @@ CONFIG_TIMER_STATS=y # CONFIG_LOCK_STAT is not set # CONFIG_DEBUG_ATOMIC_SLEEP is not set # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set CONFIG_STACKTRACE=y # CONFIG_DEBUG_KOBJECT is not set CONFIG_DEBUG_BUGVERBOSE=y -# CONFIG_DEBUG_WRITECOUNT is not set # CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_SG is not set # CONFIG_DEBUG_NOTIFIERS is not set # CONFIG_DEBUG_CREDENTIALS is not set @@ -6287,8 +6456,8 @@ CONFIG_DEBUG_BUGVERBOSE=y # # RCU Debugging # -# CONFIG_PROVE_RCU_DELAY is not set # CONFIG_SPARSE_RCU_POINTER is not set +# CONFIG_TORTURE_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set CONFIG_RCU_CPU_STALL_TIMEOUT=60 # CONFIG_RCU_CPU_STALL_VERBOSE is not set @@ -6305,7 +6474,6 @@ CONFIG_NOP_TRACER=y CONFIG_HAVE_FUNCTION_TRACER=y CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y CONFIG_HAVE_DYNAMIC_FTRACE=y CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y @@ -6345,6 +6513,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_FTRACE_STARTUP_TEST is not set CONFIG_MMIOTRACE=y # CONFIG_MMIOTRACE_TEST is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set @@ -6362,10 +6531,14 @@ CONFIG_PERCPU_TEST=m CONFIG_ASYNC_RAID6_TEST=m # CONFIG_TEST_STRING_HELPERS is not set CONFIG_TEST_KSTRTOX=m +# CONFIG_TEST_RHASHTABLE is not set # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set # CONFIG_DMA_API_DEBUG is not set -# CONFIG_TEST_MODULE is not set +# CONFIG_TEST_LKM is not set # CONFIG_TEST_USER_COPY is not set +# CONFIG_TEST_BPF is not set +# CONFIG_TEST_FIRMWARE is not set +# CONFIG_TEST_UDELAY is not set # CONFIG_SAMPLES is not set CONFIG_HAVE_ARCH_KGDB=y # CONFIG_KGDB is not set @@ -6419,7 +6592,11 @@ CONFIG_SECURITY_PATH=y # CONFIG_SECURITY_APPARMOR is not set CONFIG_SECURITY_YAMA=y CONFIG_SECURITY_YAMA_STACKED=y +CONFIG_INTEGRITY=y +# CONFIG_INTEGRITY_SIGNATURE is not set # CONFIG_IMA is not set +# CONFIG_EVM is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set # CONFIG_DEFAULT_SECURITY_YAMA is not set CONFIG_DEFAULT_SECURITY_DAC=y CONFIG_DEFAULT_SECURITY="" @@ -6440,7 +6617,7 @@ CONFIG_CRYPTO_AEAD=m CONFIG_CRYPTO_AEAD2=y CONFIG_CRYPTO_BLKCIPHER=m CONFIG_CRYPTO_BLKCIPHER2=y -CONFIG_CRYPTO_HASH=m +CONFIG_CRYPTO_HASH=y CONFIG_CRYPTO_HASH2=y CONFIG_CRYPTO_RNG=m CONFIG_CRYPTO_RNG2=y @@ -6455,6 +6632,7 @@ CONFIG_CRYPTO_NULL=m CONFIG_CRYPTO_PCRYPT=m CONFIG_CRYPTO_WORKQUEUE=y CONFIG_CRYPTO_CRYPTD=m +# CONFIG_CRYPTO_MCRYPTD is not set CONFIG_CRYPTO_AUTHENC=m CONFIG_CRYPTO_TEST=m CONFIG_CRYPTO_ABLK_HELPER=m @@ -6493,7 +6671,7 @@ CONFIG_CRYPTO_CRC32C=m CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m -CONFIG_CRYPTO_CRCT10DIF=m +CONFIG_CRYPTO_CRCT10DIF=y CONFIG_CRYPTO_GHASH=m CONFIG_CRYPTO_MD4=m CONFIG_CRYPTO_MD5=m @@ -6548,6 +6726,7 @@ CONFIG_CRYPTO_LZ4HC=m # Random Number Generation # CONFIG_CRYPTO_ANSI_CPRNG=m +# CONFIG_CRYPTO_DRBG_MENU is not set CONFIG_CRYPTO_USER_API=m CONFIG_CRYPTO_USER_API_HASH=m CONFIG_CRYPTO_USER_API_SKCIPHER=m @@ -6562,12 +6741,15 @@ CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y CONFIG_CRYPTO_DEV_CCP=y CONFIG_CRYPTO_DEV_CCP_DD=m CONFIG_CRYPTO_DEV_CCP_CRYPTO=m +# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set CONFIG_ASYMMETRIC_KEY_TYPE=m CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=m CONFIG_PUBLIC_KEY_ALGO_RSA=m CONFIG_X509_CERTIFICATE_PARSER=m +# CONFIG_PKCS7_MESSAGE_PARSER is not set CONFIG_HAVE_KVM=y CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y CONFIG_HAVE_KVM_IRQ_ROUTING=y CONFIG_HAVE_KVM_EVENTFD=y CONFIG_KVM_APIC_ARCHITECTURE=y @@ -6598,9 +6780,10 @@ CONFIG_GENERIC_PCI_IOMAP=y CONFIG_GENERIC_IOMAP=y CONFIG_GENERIC_IO=y CONFIG_PERCPU_RWSEM=y +CONFIG_ARCH_HAS_FAST_MULTIPLIER=y CONFIG_CRC_CCITT=m CONFIG_CRC16=m -CONFIG_CRC_T10DIF=m +CONFIG_CRC_T10DIF=y CONFIG_CRC_ITU_T=m CONFIG_CRC32=y # CONFIG_CRC32_SELFTEST is not set @@ -6611,6 +6794,7 @@ CONFIG_CRC32_SLICEBY8=y CONFIG_CRC7=m CONFIG_LIBCRC32C=m CONFIG_CRC8=m +# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set # CONFIG_RANDOM32_SELFTEST is not set CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y @@ -6646,13 +6830,16 @@ CONFIG_TEXTSEARCH_KMP=m CONFIG_TEXTSEARCH_BM=m CONFIG_TEXTSEARCH_FSM=m CONFIG_BTREE=y +CONFIG_INTERVAL_TREE=y CONFIG_ASSOCIATIVE_ARRAY=y CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y +CONFIG_HAS_IOPORT_MAP=y CONFIG_HAS_DMA=y CONFIG_CHECK_SIGNATURE=y CONFIG_CPU_RMAP=y CONFIG_DQL=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set CONFIG_NLATTR=y CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y CONFIG_LRU_CACHE=m @@ -6672,7 +6859,9 @@ CONFIG_FONT_8x16=y # CONFIG_FONT_PEARL_8x8 is not set # CONFIG_FONT_ACORN_8x8 is not set # CONFIG_FONT_MINI_4x6 is not set +# CONFIG_FONT_6x10 is not set # CONFIG_FONT_SUN8x16 is not set # CONFIG_FONT_SUN12x22 is not set # CONFIG_FONT_10x18 is not set CONFIG_FONT_AUTOSELECT=y +CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/kernels/linux-libre-rt/config.mips64el b/kernels/linux-libre-rt/config.mips64el index 8d91b2532..fb8830a34 100644 --- a/kernels/linux-libre-rt/config.mips64el +++ b/kernels/linux-libre-rt/config.mips64el @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/mips 3.14.23-gnu-rt20-1-rt Kernel Configuration +# Linux/mips 3.18.7-gnu-rt1-1-rt Kernel Configuration # CONFIG_MIPS=y @@ -47,18 +47,15 @@ CONFIG_MACH_LOONGSON=y # CONFIG_CAVIUM_OCTEON_SOC is not set # CONFIG_NLM_XLR_BOARD is not set # CONFIG_NLM_XLP_BOARD is not set +# CONFIG_MIPS_PARAVIRT is not set # CONFIG_ALCHEMY_GPIO_INDIRECT is not set # CONFIG_LEMOTE_FULOONG2E is not set CONFIG_LEMOTE_MACH2F=y # CONFIG_DEXXON_GDIUM is not set +# CONFIG_LOONGSON_MACH3X is not set CONFIG_CS5536=y -CONFIG_CS5536_ISA=y -CONFIG_CS5536_IDE=y -CONFIG_CS5536_OHCI=y -CONFIG_CS5536_EHCI=y -CONFIG_CS5536_AUDIO=y -# CONFIG_CS5536_MFGPT is not set CONFIG_LOONGSON_SUSPEND=y +CONFIG_LOONGSON_UART_BASE=y CONFIG_LOONGSON_MC146818=y CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_ARCH_HAS_ILOG2_U32 is not set @@ -74,7 +71,7 @@ CONFIG_NEED_DMA_MAP_STATE=y CONFIG_SYS_HAS_EARLY_PRINTK=y CONFIG_I8259=y # CONFIG_MIPS_MACHINE is not set -# CONFIG_NO_IOPORT is not set +# CONFIG_NO_IOPORT_MAP is not set CONFIG_GENERIC_ISA_DMA=y CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y CONFIG_ISA_DMA_API=y @@ -89,7 +86,6 @@ CONFIG_MIPS_L1_CACHE_SHIFT=5 # # CPU selection # -# CONFIG_CPU_LOONGSON2E is not set CONFIG_CPU_LOONGSON2F=y # CONFIG_CPU_R4X00 is not set # CONFIG_CPU_R5000 is not set @@ -114,8 +110,7 @@ CONFIG_CPU_SUPPORTS_UNCACHED_ACCELERATED=y # CONFIG_32BIT is not set CONFIG_64BIT=y CONFIG_KVM_GUEST=y -CONFIG_KVM_HOST_FREQ=500 -# CONFIG_PAGE_SIZE_4KB is not set +CONFIG_KVM_GUEST_TIMER_FREQ=100 CONFIG_PAGE_SIZE_16KB=y # CONFIG_PAGE_SIZE_64KB is not set CONFIG_FORCE_MAX_ZONEORDER=11 @@ -123,8 +118,8 @@ CONFIG_BOARD_SCACHE=y CONFIG_CPU_GENERIC_DUMP_TLB=y CONFIG_CPU_R4K_FPU=y CONFIG_CPU_R4K_CACHE_TLB=y -CONFIG_MIPS_MT_DISABLED=y # CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set +CONFIG_CPU_NEEDS_NO_SMARTMIPS_OR_MICROMIPS=y CONFIG_CPU_HAS_WB=y CONFIG_CPU_HAS_SYNC=y CONFIG_CPU_SUPPORTS_HIGHMEM=y @@ -139,6 +134,7 @@ CONFIG_ARCH_DISCARD_MEMBLOCK=y # CONFIG_HAVE_BOOTMEM_INFO_NODE is not set CONFIG_PAGEFLAGS_EXTENDED=y CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_MEMORY_BALLOON=y CONFIG_BALLOON_COMPACTION=y CONFIG_COMPACTION=y CONFIG_MIGRATION=y @@ -146,15 +142,16 @@ CONFIG_PHYS_ADDR_T_64BIT=y CONFIG_ZONE_DMA_FLAG=1 CONFIG_BOUNCE=y CONFIG_VIRT_TO_BUS=y +CONFIG_MMU_NOTIFIER=y CONFIG_KSM=y CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_NEED_PER_CPU_KM=y CONFIG_CLEANCACHE=y CONFIG_FRONTSWAP=y # CONFIG_CMA is not set -CONFIG_ZBUD=y CONFIG_ZSWAP=y +CONFIG_ZPOOL=y +CONFIG_ZBUD=y CONFIG_ZSMALLOC=y # CONFIG_PGTABLE_MAPPING is not set # CONFIG_HZ_48 is not set @@ -210,7 +207,9 @@ CONFIG_SYSVIPC=y CONFIG_SYSVIPC_SYSCTL=y CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_FHANDLE=y +CONFIG_USELIB=y # CONFIG_AUDIT is not set # @@ -251,6 +250,7 @@ CONFIG_TASK_IO_ACCOUNTING=y # CONFIG_TREE_PREEMPT_RCU=y CONFIG_PREEMPT_RCU=y +# CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y CONFIG_RCU_FANOUT=64 CONFIG_RCU_FANOUT_LEAF=16 @@ -258,6 +258,7 @@ CONFIG_RCU_FANOUT_LEAF=16 # CONFIG_TREE_RCU_TRACE is not set # CONFIG_RCU_BOOST is not set # CONFIG_RCU_NOCB_CPU is not set +CONFIG_BUILD_BIN2C=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y CONFIG_LOG_BUF_SHIFT=19 @@ -287,7 +288,6 @@ CONFIG_IPC_NS=y CONFIG_PID_NS=y CONFIG_NET_NS=y CONFIG_SCHED_AUTOGROUP=y -CONFIG_MM_OWNER=y # CONFIG_SYSFS_DEPRECATED is not set CONFIG_RELAY=y CONFIG_BLK_DEV_INITRD=y @@ -301,7 +301,10 @@ CONFIG_RD_LZ4=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SYSCTL=y CONFIG_ANON_INODES=y +CONFIG_BPF=y # CONFIG_EXPERT is not set +CONFIG_SGETMASK_SYSCALL=y +CONFIG_SYSFS_SYSCALL=y # CONFIG_SYSCTL_SYSCALL is not set CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y @@ -314,8 +317,10 @@ CONFIG_EPOLL=y CONFIG_SIGNALFD=y CONFIG_TIMERFD=y CONFIG_EVENTFD=y +# CONFIG_BPF_SYSCALL is not set CONFIG_SHMEM=y CONFIG_AIO=y +CONFIG_ADVISE_SYSCALLS=y CONFIG_PCI_QUIRKS=y # CONFIG_EMBEDDED is not set CONFIG_HAVE_PERF_EVENTS=y @@ -336,17 +341,21 @@ CONFIG_TRACEPOINTS=y CONFIG_HAVE_OPROFILE=y CONFIG_KPROBES=y CONFIG_JUMP_LABEL=y +# CONFIG_UPROBES is not set CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y CONFIG_KRETPROBES=y CONFIG_HAVE_KPROBES=y CONFIG_HAVE_KRETPROBES=y CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_DMA_ATTRS=y +CONFIG_HAVE_DMA_CONTIGUOUS=y CONFIG_GENERIC_SMP_IDLE_THREAD=y CONFIG_HAVE_CLK=y CONFIG_HAVE_DMA_API_DEBUG=y CONFIG_HAVE_ARCH_JUMP_LABEL=y CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y CONFIG_HAVE_CC_STACKPROTECTOR=y CONFIG_CC_STACKPROTECTOR=y # CONFIG_CC_STACKPROTECTOR_NONE is not set @@ -374,6 +383,7 @@ CONFIG_MODULE_FORCE_UNLOAD=y CONFIG_MODVERSIONS=y # CONFIG_MODULE_SRCVERSION_ALL is not set # CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set CONFIG_BLOCK=y CONFIG_BLK_DEV_BSG=y CONFIG_BLK_DEV_BSGLIB=y @@ -418,7 +428,6 @@ CONFIG_DEFAULT_CFQ=y # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="cfq" CONFIG_ASN1=m -CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y CONFIG_FREEZER=y # @@ -450,7 +459,6 @@ CONFIG_PCIEASPM_DEFAULT=y # CONFIG_PCIEASPM_POWERSAVE is not set # CONFIG_PCIEASPM_PERFORMANCE is not set CONFIG_PCIE_PME=y -CONFIG_ISA=y CONFIG_MMU=y CONFIG_ZONE_DMA=y CONFIG_PCCARD=m @@ -469,9 +477,6 @@ CONFIG_YENTA_ENE_TUNE=y CONFIG_YENTA_TOSHIBA=y CONFIG_PD6729=m CONFIG_I82092=m -# CONFIG_I82365 is not set -# CONFIG_TCIC is not set -CONFIG_PCMCIA_PROBE=y CONFIG_PCCARD_NONSTATIC=y CONFIG_HOTPLUG_PCI=y CONFIG_HOTPLUG_PCI_CPCI=y @@ -528,6 +533,16 @@ CONFIG_PM_SLEEP_DEBUG=y # CONFIG_DPM_WATCHDOG is not set CONFIG_PM_CLK=y # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set + +# +# CPU Power Management +# + +# +# CPU Idle +# +# CONFIG_CPU_IDLE is not set +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set CONFIG_NET=y # @@ -566,6 +581,9 @@ CONFIG_IP_PIMSM_V1=y CONFIG_IP_PIMSM_V2=y CONFIG_SYN_COOKIES=y CONFIG_NET_IPVTI=m +CONFIG_NET_UDP_TUNNEL=m +# CONFIG_NET_FOU is not set +# CONFIG_GENEVE is not set CONFIG_INET_AH=m CONFIG_INET_ESP=m CONFIG_INET_IPCOMP=m @@ -591,6 +609,7 @@ CONFIG_TCP_CONG_LP=m CONFIG_TCP_CONG_VENO=m CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_CONG_ILLINOIS=m +# CONFIG_TCP_CONG_DCTCP is not set CONFIG_DEFAULT_CUBIC=y # CONFIG_DEFAULT_RENO is not set CONFIG_DEFAULT_TCP_CONG="cubic" @@ -620,11 +639,12 @@ CONFIG_IPV6_SUBTREES=y # CONFIG_IPV6_MROUTE is not set CONFIG_NETLABEL=y CONFIG_NETWORK_SECMARK=y +CONFIG_NET_PTP_CLASSIFY=y CONFIG_NETWORK_PHY_TIMESTAMPING=y CONFIG_NETFILTER=y # CONFIG_NETFILTER_DEBUG is not set CONFIG_NETFILTER_ADVANCED=y -CONFIG_BRIDGE_NETFILTER=y +CONFIG_BRIDGE_NETFILTER=m # # Core Netfilter Configuration @@ -634,6 +654,7 @@ CONFIG_NETFILTER_NETLINK_ACCT=m CONFIG_NETFILTER_NETLINK_QUEUE=m CONFIG_NETFILTER_NETLINK_LOG=m CONFIG_NF_CONNTRACK=m +CONFIG_NF_LOG_COMMON=m CONFIG_NF_CONNTRACK_MARK=y CONFIG_NF_CONNTRACK_SECMARK=y CONFIG_NF_CONNTRACK_ZONES=y @@ -682,6 +703,7 @@ CONFIG_NFT_HASH=m CONFIG_NFT_COUNTER=m CONFIG_NFT_LOG=m CONFIG_NFT_LIMIT=m +# CONFIG_NFT_MASQ is not set CONFIG_NFT_NAT=m CONFIG_NFT_QUEUE=m CONFIG_NFT_REJECT=m @@ -711,6 +733,7 @@ CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m CONFIG_NETFILTER_XT_TARGET_LED=m CONFIG_NETFILTER_XT_TARGET_LOG=m CONFIG_NETFILTER_XT_TARGET_MARK=m +# CONFIG_NETFILTER_XT_NAT is not set CONFIG_NETFILTER_XT_TARGET_NETMAP=m CONFIG_NETFILTER_XT_TARGET_NFLOG=m CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m @@ -779,9 +802,11 @@ CONFIG_IP_SET_BITMAP_IP=m CONFIG_IP_SET_BITMAP_IPMAC=m CONFIG_IP_SET_BITMAP_PORT=m CONFIG_IP_SET_HASH_IP=m +# CONFIG_IP_SET_HASH_IPMARK is not set CONFIG_IP_SET_HASH_IPPORT=m CONFIG_IP_SET_HASH_IPPORTIP=m CONFIG_IP_SET_HASH_IPPORTNET=m +# CONFIG_IP_SET_HASH_MAC is not set CONFIG_IP_SET_HASH_NETPORTNET=m CONFIG_IP_SET_HASH_NET=m CONFIG_IP_SET_HASH_NETNET=m @@ -810,6 +835,7 @@ CONFIG_IP_VS_RR=m CONFIG_IP_VS_WRR=m CONFIG_IP_VS_LC=m CONFIG_IP_VS_WLC=m +# CONFIG_IP_VS_FO is not set CONFIG_IP_VS_LBLC=m CONFIG_IP_VS_LBLCR=m CONFIG_IP_VS_DH=m @@ -835,11 +861,20 @@ CONFIG_IP_VS_PE_SIP=m CONFIG_NF_DEFRAG_IPV4=m CONFIG_NF_CONNTRACK_IPV4=m # CONFIG_NF_CONNTRACK_PROC_COMPAT is not set +# CONFIG_NF_LOG_ARP is not set +CONFIG_NF_LOG_IPV4=m CONFIG_NF_TABLES_IPV4=m CONFIG_NFT_CHAIN_ROUTE_IPV4=m -CONFIG_NFT_CHAIN_NAT_IPV4=m +CONFIG_NF_REJECT_IPV4=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NF_TABLES_ARP=m +CONFIG_NF_NAT_IPV4=m +CONFIG_NFT_CHAIN_NAT_IPV4=m +# CONFIG_NF_NAT_MASQUERADE_IPV4 is not set +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_MATCH_AH=m CONFIG_IP_NF_MATCH_ECN=m @@ -848,15 +883,7 @@ CONFIG_IP_NF_MATCH_TTL=m CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_TARGET_REJECT=m CONFIG_IP_NF_TARGET_SYNPROXY=m -CONFIG_IP_NF_TARGET_ULOG=m -CONFIG_NF_NAT_IPV4=m -CONFIG_IP_NF_TARGET_MASQUERADE=m -CONFIG_IP_NF_TARGET_NETMAP=m -CONFIG_IP_NF_TARGET_REDIRECT=m -CONFIG_NF_NAT_SNMP_BASIC=m -CONFIG_NF_NAT_PROTO_GRE=m -CONFIG_NF_NAT_PPTP=m -CONFIG_NF_NAT_H323=m +# CONFIG_IP_NF_NAT is not set CONFIG_IP_NF_MANGLE=m CONFIG_IP_NF_TARGET_CLUSTERIP=m CONFIG_IP_NF_TARGET_ECN=m @@ -874,8 +901,12 @@ CONFIG_NF_DEFRAG_IPV6=m CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_TABLES_IPV6=m CONFIG_NFT_CHAIN_ROUTE_IPV6=m -CONFIG_NFT_CHAIN_NAT_IPV6=m +CONFIG_NF_REJECT_IPV6=m CONFIG_NFT_REJECT_IPV6=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_NAT_IPV6=m +CONFIG_NFT_CHAIN_NAT_IPV6=m +# CONFIG_NF_NAT_MASQUERADE_IPV6 is not set CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_MATCH_AH=m CONFIG_IP6_NF_MATCH_EUI64=m @@ -893,10 +924,11 @@ CONFIG_IP6_NF_TARGET_SYNPROXY=m CONFIG_IP6_NF_MANGLE=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m -CONFIG_NF_NAT_IPV6=m -CONFIG_IP6_NF_TARGET_MASQUERADE=m -CONFIG_IP6_NF_TARGET_NPT=m +# CONFIG_IP6_NF_NAT is not set CONFIG_NF_TABLES_BRIDGE=m +# CONFIG_NFT_BRIDGE_META is not set +# CONFIG_NFT_BRIDGE_REJECT is not set +# CONFIG_NF_LOG_BRIDGE is not set CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_EBT_BROUTE=m CONFIG_BRIDGE_EBT_T_FILTER=m @@ -917,7 +949,6 @@ CONFIG_BRIDGE_EBT_MARK_T=m CONFIG_BRIDGE_EBT_REDIRECT=m CONFIG_BRIDGE_EBT_SNAT=m CONFIG_BRIDGE_EBT_LOG=m -CONFIG_BRIDGE_EBT_ULOG=m CONFIG_BRIDGE_EBT_NFLOG=m CONFIG_IP_DCCP=m CONFIG_INET_DCCP_DIAG=m @@ -978,9 +1009,8 @@ CONFIG_LLC2=m # CONFIG_X25 is not set # CONFIG_LAPB is not set CONFIG_PHONET=m +# CONFIG_6LOWPAN is not set CONFIG_IEEE802154=m -CONFIG_IEEE802154_6LOWPAN=m -CONFIG_6LOWPAN_IPHC=m CONFIG_MAC802154=m CONFIG_NET_SCHED=y @@ -1049,6 +1079,7 @@ CONFIG_BATMAN_ADV=m CONFIG_BATMAN_ADV_BLA=y CONFIG_BATMAN_ADV_DAT=y CONFIG_BATMAN_ADV_NC=y +# CONFIG_BATMAN_ADV_MCAST is not set # CONFIG_BATMAN_ADV_DEBUG is not set CONFIG_OPENVSWITCH=m CONFIG_OPENVSWITCH_GRE=y @@ -1058,10 +1089,11 @@ CONFIG_NETLINK_MMAP=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m CONFIG_HSR=m -CONFIG_CGROUP_NET_PRIO=m +# CONFIG_CGROUP_NET_PRIO is not set CONFIG_CGROUP_NET_CLASSID=y CONFIG_NET_RX_BUSY_POLL=y CONFIG_BQL=y +# CONFIG_BPF_JIT is not set # # Network testing @@ -1085,8 +1117,6 @@ CONFIG_ROSE=m CONFIG_MKISS=m CONFIG_6PACK=m CONFIG_BPQETHER=m -# CONFIG_DMASCC is not set -# CONFIG_SCC is not set CONFIG_BAYCOM_SER_FDX=m CONFIG_BAYCOM_SER_HDX=m CONFIG_BAYCOM_PAR=m @@ -1243,12 +1273,16 @@ CONFIG_NFC_HCI=m # CONFIG_NFC_PN533=m CONFIG_NFC_WILINK=m +# CONFIG_NFC_TRF7970A is not set CONFIG_NFC_SIM=m CONFIG_NFC_PORT100=m CONFIG_NFC_PN544=m CONFIG_NFC_MICROREAD=m CONFIG_NFC_MRVL=m CONFIG_NFC_MRVL_USB=m +# CONFIG_NFC_ST21NFCA is not set +# CONFIG_NFC_ST21NFCB is not set +CONFIG_HAVE_BPF_JIT=y # # Device Drivers @@ -1257,6 +1291,7 @@ CONFIG_NFC_MRVL_USB=m # # Generic Driver Options # +CONFIG_UEVENT_HELPER=y CONFIG_UEVENT_HELPER_PATH="" CONFIG_DEVTMPFS=y # CONFIG_DEVTMPFS_MOUNT is not set @@ -1265,16 +1300,19 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_FW_LOADER=y # CONFIG_FIRMWARE_IN_KERNEL is not set CONFIG_EXTRA_FIRMWARE="" -# CONFIG_FW_LOADER_USER_HELPER is not set +# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set +CONFIG_ALLOW_DEV_COREDUMP=y # CONFIG_DEBUG_DRIVER is not set # CONFIG_DEBUG_DEVRES is not set # CONFIG_SYS_HYPERVISOR is not set # CONFIG_GENERIC_CPU_DEVICES is not set CONFIG_REGMAP=y CONFIG_REGMAP_I2C=m +CONFIG_REGMAP_SPI=m CONFIG_REGMAP_MMIO=m CONFIG_REGMAP_IRQ=y CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_FENCE_TRACE is not set # # Bus devices @@ -1350,7 +1388,6 @@ CONFIG_MTD_PMC551=m # CONFIG_MTD_PMC551_BUGFIX is not set # CONFIG_MTD_PMC551_DEBUG is not set # CONFIG_MTD_DATAFLASH is not set -# CONFIG_MTD_M25P80 is not set # CONFIG_MTD_SST25L is not set # CONFIG_MTD_SLRAM is not set CONFIG_MTD_PHRAM=m @@ -1372,6 +1409,7 @@ CONFIG_MTD_NAND=m CONFIG_MTD_SM_COMMON=m # CONFIG_MTD_NAND_DENALI is not set CONFIG_MTD_NAND_GPIO=m +# CONFIG_MTD_NAND_OMAP_BCH_BUILD is not set CONFIG_MTD_NAND_IDS=m CONFIG_MTD_NAND_RICOH=m CONFIG_MTD_NAND_DISKONCHIP=m @@ -1385,15 +1423,17 @@ CONFIG_MTD_NAND_NANDSIM=m # CONFIG_MTD_ONENAND is not set # -# LPDDR flash memory drivers +# LPDDR & LPDDR2 PCM memory drivers # CONFIG_MTD_LPDDR=m CONFIG_MTD_QINFO_PROBE=m +# CONFIG_MTD_SPI_NOR is not set CONFIG_MTD_UBI=m CONFIG_MTD_UBI_WL_THRESHOLD=4096 CONFIG_MTD_UBI_BEB_LIMIT=20 # CONFIG_MTD_UBI_FASTMAP is not set # CONFIG_MTD_UBI_GLUEBI is not set +# CONFIG_MTD_UBI_BLOCK is not set CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y CONFIG_PARPORT=m CONFIG_PARPORT_PC=m @@ -1405,19 +1445,12 @@ CONFIG_PARPORT_PC_PCMCIA=m CONFIG_PARPORT_AX88796=m CONFIG_PARPORT_1284=y CONFIG_PARPORT_NOT_PC=y -CONFIG_PNP=y -# CONFIG_PNP_DEBUG_MESSAGES is not set - -# -# Protocols -# -# CONFIG_ISAPNP is not set -# CONFIG_PNPACPI is not set CONFIG_BLK_DEV=y # CONFIG_BLK_DEV_NULL_BLK is not set # CONFIG_PARIDE is not set CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m CONFIG_ZRAM=m +# CONFIG_ZRAM_LZ4_COMPRESS is not set # CONFIG_ZRAM_DEBUG is not set CONFIG_BLK_CPQ_CISS_DA=m # CONFIG_CISS_SCSI_TAPE is not set @@ -1454,7 +1487,6 @@ CONFIG_SENSORS_LIS3LV02D=m CONFIG_AD525X_DPOT=m CONFIG_AD525X_DPOT_I2C=m # CONFIG_AD525X_DPOT_SPI is not set -# CONFIG_ATMEL_PWM is not set # CONFIG_DUMMY_IRQ is not set CONFIG_HWLAT_DETECTOR=m CONFIG_PHANTOM=m @@ -1462,7 +1494,6 @@ CONFIG_SGI_IOC4=m CONFIG_TIFM_CORE=m CONFIG_TIFM_7XX1=m CONFIG_ICS932S401=m -# CONFIG_ATMEL_SSC is not set CONFIG_ENCLOSURE_SERVICES=m CONFIG_HP_ILO=m CONFIG_APDS9802ALS=m @@ -1478,7 +1509,6 @@ CONFIG_DS1682=m CONFIG_BMP085=y CONFIG_BMP085_I2C=m # CONFIG_BMP085_SPI is not set -CONFIG_PCH_PHUB=m CONFIG_USB_SWITCH_FSA9480=m # CONFIG_LATTICE_ECP3_CONFIG is not set # CONFIG_SRAM is not set @@ -1510,6 +1540,10 @@ CONFIG_SENSORS_LIS3_I2C=m CONFIG_ALTERA_STAPL=m # +# Intel MIC Bus Driver +# + +# # Intel MIC Host Driver # @@ -1517,6 +1551,9 @@ CONFIG_ALTERA_STAPL=m # Intel MIC Card Driver # CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 +CONFIG_ECHO=m +# CONFIG_CXL_BASE is not set CONFIG_HAVE_IDE=y # CONFIG_IDE is not set @@ -1527,8 +1564,8 @@ CONFIG_SCSI_MOD=m CONFIG_RAID_ATTRS=m CONFIG_SCSI=m CONFIG_SCSI_DMA=y -CONFIG_SCSI_TGT=m CONFIG_SCSI_NETLINK=y +# CONFIG_SCSI_MQ_DEFAULT is not set CONFIG_SCSI_PROC_FS=y # @@ -1542,7 +1579,6 @@ CONFIG_BLK_DEV_SR_VENDOR=y CONFIG_CHR_DEV_SG=m CONFIG_CHR_DEV_SCH=m CONFIG_SCSI_ENCLOSURE=m -CONFIG_SCSI_MULTI_LUN=y # CONFIG_SCSI_CONSTANTS is not set # CONFIG_SCSI_LOGGING is not set CONFIG_SCSI_SCAN_ASYNC=y @@ -1552,14 +1588,12 @@ CONFIG_SCSI_SCAN_ASYNC=y # CONFIG_SCSI_SPI_ATTRS=m CONFIG_SCSI_FC_ATTRS=m -# CONFIG_SCSI_FC_TGT_ATTRS is not set CONFIG_SCSI_ISCSI_ATTRS=m CONFIG_SCSI_SAS_ATTRS=m CONFIG_SCSI_SAS_LIBSAS=m CONFIG_SCSI_SAS_ATA=y CONFIG_SCSI_SAS_HOST_SMP=y CONFIG_SCSI_SRP_ATTRS=m -CONFIG_SCSI_SRP_TGT_ATTRS=y CONFIG_SCSI_LOWLEVEL=y CONFIG_ISCSI_TCP=m CONFIG_ISCSI_BOOT_SYSFS=m @@ -1572,10 +1606,7 @@ CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_SCSI_HPSA=m CONFIG_SCSI_3W_9XXX=m CONFIG_SCSI_3W_SAS=m -# CONFIG_SCSI_7000FASST is not set CONFIG_SCSI_ACARD=m -# CONFIG_SCSI_AHA152X is not set -# CONFIG_SCSI_AHA1542 is not set CONFIG_SCSI_AACRAID=m CONFIG_SCSI_AIC7XXX=m CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 @@ -1597,7 +1628,6 @@ CONFIG_SCSI_MVSAS_TASKLET=y CONFIG_SCSI_MVUMI=m CONFIG_SCSI_DPT_I2O=m CONFIG_SCSI_ADVANSYS=m -# CONFIG_SCSI_IN2000 is not set CONFIG_SCSI_ARCMSR=m CONFIG_SCSI_ESAS2R=m CONFIG_MEGARAID_NEWGEN=y @@ -1621,15 +1651,12 @@ CONFIG_LIBFC=m CONFIG_LIBFCOE=m CONFIG_FCOE=m CONFIG_SCSI_DMX3191D=m -# CONFIG_SCSI_DTC3280 is not set CONFIG_SCSI_EATA=m # CONFIG_SCSI_EATA_TAGGED_QUEUE is not set # CONFIG_SCSI_EATA_LINKED_COMMANDS is not set CONFIG_SCSI_EATA_MAX_TAGS=16 CONFIG_SCSI_FUTURE_DOMAIN=m CONFIG_SCSI_GDTH=m -# CONFIG_SCSI_GENERIC_NCR5380 is not set -# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set CONFIG_SCSI_IPS=m CONFIG_SCSI_INITIO=m CONFIG_SCSI_INIA100=m @@ -1637,7 +1664,6 @@ CONFIG_SCSI_PPA=m CONFIG_SCSI_IMM=m # CONFIG_SCSI_IZIP_EPP16 is not set # CONFIG_SCSI_IZIP_SLOW_CTR is not set -# CONFIG_SCSI_NCR53C406A is not set CONFIG_SCSI_STEX=m CONFIG_SCSI_SYM53C8XX_2=m CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 @@ -1647,22 +1673,16 @@ CONFIG_SCSI_SYM53C8XX_MMIO=y CONFIG_SCSI_IPR=m # CONFIG_SCSI_IPR_TRACE is not set # CONFIG_SCSI_IPR_DUMP is not set -# CONFIG_SCSI_PAS16 is not set -# CONFIG_SCSI_QLOGIC_FAS is not set CONFIG_SCSI_QLOGIC_1280=m CONFIG_SCSI_QLA_FC=m CONFIG_SCSI_QLA_ISCSI=m CONFIG_SCSI_LPFC=m # CONFIG_SCSI_LPFC_DEBUG_FS is not set -# CONFIG_SCSI_SYM53C416 is not set CONFIG_SCSI_DC395x=m CONFIG_SCSI_DC390T=m -# CONFIG_SCSI_T128 is not set -# CONFIG_SCSI_U14_34F is not set # CONFIG_SCSI_DEBUG is not set CONFIG_SCSI_PMCRAID=m CONFIG_SCSI_PM8001=m -CONFIG_SCSI_SRP=m CONFIG_SCSI_BFA_FC=m CONFIG_SCSI_VIRTIO=m CONFIG_SCSI_CHELSIO_FCOE=m @@ -1707,11 +1727,9 @@ CONFIG_ATA_BMDMA=y # SATA SFF controllers with BMDMA # CONFIG_ATA_PIIX=m -CONFIG_SATA_HIGHBANK=m CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PROMISE=m -CONFIG_SATA_RCAR=m CONFIG_SATA_SIL=m CONFIG_SATA_SIS=m CONFIG_SATA_SVW=m @@ -1724,13 +1742,10 @@ CONFIG_SATA_VITESSE=m # CONFIG_PATA_ALI=m CONFIG_PATA_AMD=m -CONFIG_PATA_ARASAN_CF=m CONFIG_PATA_ARTOP=m CONFIG_PATA_ATIIXP=m CONFIG_PATA_ATP867X=m CONFIG_PATA_CMD64X=m -CONFIG_PATA_CS5520=m -CONFIG_PATA_CS5530=m CONFIG_PATA_CS5536=m CONFIG_PATA_CYPRESS=m CONFIG_PATA_EFAR=m @@ -1752,7 +1767,6 @@ CONFIG_PATA_PDC2027X=m CONFIG_PATA_PDC_OLD=m CONFIG_PATA_RADISYS=m CONFIG_PATA_RDC=m -CONFIG_PATA_SC1200=m CONFIG_PATA_SCH=m CONFIG_PATA_SERVERWORKS=m CONFIG_PATA_SIL680=m @@ -1770,9 +1784,7 @@ CONFIG_PATA_MPIIX=m CONFIG_PATA_NS87410=m CONFIG_PATA_OPTI=m CONFIG_PATA_PCMCIA=m -# CONFIG_PATA_QDI is not set CONFIG_PATA_RZ1000=m -# CONFIG_PATA_WINBOND_VLB is not set # # Generic fallback / legacy drivers @@ -1801,6 +1813,7 @@ CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_CACHE=m CONFIG_DM_CACHE_MQ=m CONFIG_DM_CACHE_CLEANER=m +# CONFIG_DM_ERA is not set CONFIG_DM_MIRROR=m CONFIG_DM_LOG_USERSPACE=m CONFIG_DM_RAID=m @@ -1817,6 +1830,7 @@ CONFIG_TARGET_CORE=m CONFIG_TCM_IBLOCK=m CONFIG_TCM_FILEIO=m CONFIG_TCM_PSCSI=m +# CONFIG_TCM_USER is not set CONFIG_LOOPBACK_TARGET=m CONFIG_TCM_FC=m CONFIG_ISCSI_TARGET=m @@ -1867,7 +1881,6 @@ CONFIG_VXLAN=m CONFIG_NETCONSOLE=m CONFIG_NETCONSOLE_DYNAMIC=y CONFIG_NETPOLL=y -# CONFIG_NETPOLL_TRAP is not set CONFIG_NET_POLL_CONTROLLER=y CONFIG_RIONET=m CONFIG_RIONET_TX_SIZE=128 @@ -1930,26 +1943,28 @@ CONFIG_NET_DSA_MV88E6060=m CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y CONFIG_NET_DSA_MV88E6131=m CONFIG_NET_DSA_MV88E6123_61_65=m +# CONFIG_NET_DSA_MV88E6171 is not set +# CONFIG_NET_DSA_BCM_SF2 is not set CONFIG_ETHERNET=y CONFIG_MDIO=m CONFIG_NET_VENDOR_3COM=y -# CONFIG_EL3 is not set -# CONFIG_3C515 is not set CONFIG_PCMCIA_3C574=m CONFIG_PCMCIA_3C589=m CONFIG_VORTEX=m CONFIG_TYPHOON=m CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_ADAPTEC_STARFIRE=m +CONFIG_NET_VENDOR_AGERE=y +CONFIG_ET131X=m CONFIG_NET_VENDOR_ALTEON=y CONFIG_ACENIC=m # CONFIG_ACENIC_OMIT_TIGON_I is not set +# CONFIG_ALTERA_TSE is not set CONFIG_NET_VENDOR_AMD=y CONFIG_AMD8111_ETH=m -# CONFIG_LANCE is not set CONFIG_PCNET32=m CONFIG_PCMCIA_NMCLAN=m -# CONFIG_NI65 is not set +# CONFIG_NET_XGENE is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y CONFIG_ATL2=m @@ -1957,9 +1972,6 @@ CONFIG_ATL1=m CONFIG_ATL1E=m CONFIG_ATL1C=m CONFIG_ALX=m -CONFIG_NET_CADENCE=y -CONFIG_ARM_AT91_ETHER=m -CONFIG_MACB=m CONFIG_NET_VENDOR_BROADCOM=y CONFIG_B44=m CONFIG_B44_PCI_AUTOSELECT=y @@ -1972,15 +1984,12 @@ CONFIG_BNX2X=m CONFIG_BNX2X_SRIOV=y CONFIG_NET_VENDOR_BROCADE=y CONFIG_BNA=m -CONFIG_NET_CALXEDA_XGMAC=m CONFIG_NET_VENDOR_CHELSIO=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T3=m CONFIG_CHELSIO_T4=m CONFIG_CHELSIO_T4VF=m -CONFIG_NET_VENDOR_CIRRUS=y -# CONFIG_CS89x0 is not set CONFIG_NET_VENDOR_CISCO=y CONFIG_ENIC=m # CONFIG_DM9000 is not set @@ -2004,6 +2013,7 @@ CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_NET_VENDOR_EMULEX=y CONFIG_BE2NET=m +CONFIG_BE2NET_VXLAN=y CONFIG_NET_VENDOR_EXAR=y CONFIG_S2IO=m CONFIG_VXGE=m @@ -2026,6 +2036,7 @@ CONFIG_IXGBEVF=m CONFIG_I40E=m CONFIG_I40E_VXLAN=y CONFIG_I40EVF=m +# CONFIG_FM10K is not set CONFIG_NET_VENDOR_I825XX=y CONFIG_IP1000=m CONFIG_JME=m @@ -2038,6 +2049,7 @@ CONFIG_SKY2=m # CONFIG_SKY2_DEBUG is not set CONFIG_NET_VENDOR_MELLANOX=y CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_VXLAN=y CONFIG_MLX4_CORE=m CONFIG_MLX4_DEBUG=y CONFIG_MLX5_CORE=m @@ -2058,11 +2070,8 @@ CONFIG_NS83820=m CONFIG_NET_VENDOR_8390=y CONFIG_PCMCIA_AXNET=m # CONFIG_AX88796 is not set -# CONFIG_NE2000 is not set CONFIG_NE2K_PCI=m CONFIG_PCMCIA_PCNET=m -# CONFIG_ULTRA is not set -# CONFIG_WD80x3 is not set CONFIG_NET_VENDOR_NVIDIA=y CONFIG_FORCEDETH=m CONFIG_NET_VENDOR_OKI=y @@ -2074,8 +2083,11 @@ CONFIG_NET_VENDOR_QLOGIC=y CONFIG_QLA3XXX=m CONFIG_QLCNIC=m CONFIG_QLCNIC_SRIOV=y +# CONFIG_QLCNIC_VXLAN is not set +CONFIG_QLCNIC_HWMON=y CONFIG_QLGE=m CONFIG_NETXEN_NIC=m +CONFIG_NET_VENDOR_QUALCOMM=y CONFIG_NET_VENDOR_REALTEK=y CONFIG_8139CP=m CONFIG_8139TOO=m @@ -2084,9 +2096,10 @@ CONFIG_8139TOO_TUNE_TWISTER=y CONFIG_8139TOO_8129=y # CONFIG_8139_OLD_RX_RESET is not set CONFIG_R8169=m -CONFIG_SH_ETH=m CONFIG_NET_VENDOR_RDC=y CONFIG_R6040=m +CONFIG_NET_VENDOR_SAMSUNG=y +# CONFIG_SXGBE_ETH is not set CONFIG_NET_VENDOR_SEEQ=y CONFIG_NET_VENDOR_SILAN=y CONFIG_SC92031=m @@ -2098,7 +2111,6 @@ CONFIG_SFC_MTD=y CONFIG_SFC_MCDI_MON=y CONFIG_SFC_SRIOV=y CONFIG_NET_VENDOR_SMSC=y -# CONFIG_SMC9194 is not set # CONFIG_SMC91X is not set CONFIG_PCMCIA_SMC91C92=m CONFIG_EPIC100=m @@ -2136,7 +2148,6 @@ CONFIG_NET_VENDOR_XIRCOM=y CONFIG_PCMCIA_XIRC2PS=m # CONFIG_FDDI is not set # CONFIG_HIPPI is not set -CONFIG_NET_SB1000=m CONFIG_PHYLIB=m # @@ -2152,6 +2163,7 @@ CONFIG_CICADA_PHY=m CONFIG_VITESSE_PHY=m CONFIG_SMSC_PHY=m CONFIG_BROADCOM_PHY=m +# CONFIG_BCM7XXX_PHY is not set CONFIG_BCM87XX_PHY=m CONFIG_ICPLUS_PHY=m CONFIG_REALTEK_PHY=m @@ -2161,6 +2173,7 @@ CONFIG_LSI_ET1011C_PHY=m CONFIG_MICREL_PHY=m CONFIG_MDIO_BITBANG=m # CONFIG_MDIO_GPIO is not set +# CONFIG_MDIO_BCM_UNIMAC is not set # CONFIG_MICREL_KS8995MA is not set CONFIG_PLIP=m CONFIG_PPP=m @@ -2182,8 +2195,9 @@ CONFIG_SLHC=m # CONFIG_SLIP_MODE_SLIP6 is not set # -# USB Network Adapters +# Host-side USB support is needed for USB Network Adapter support # +CONFIG_USB_NET_DRIVERS=m CONFIG_USB_CATC=m CONFIG_USB_KAWETH=m CONFIG_USB_PEGASUS=m @@ -2259,9 +2273,10 @@ CONFIG_ATH9K=m CONFIG_ATH9K_PCI=y CONFIG_ATH9K_AHB=y # CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_DYNACK is not set CONFIG_ATH9K_WOW=y -# CONFIG_ATH9K_LEGACY_RATE_CONTROL is not set CONFIG_ATH9K_RFKILL=y +# CONFIG_ATH9K_CHANNEL_CONTEXT is not set CONFIG_ATH9K_HTC=m # CONFIG_ATH9K_HTC_DEBUGFS is not set CONFIG_CARL9170=m @@ -2287,12 +2302,16 @@ CONFIG_WCN36XX=m CONFIG_B43=m CONFIG_B43_BCMA=y CONFIG_B43_SSB=y +CONFIG_B43_BUSES_BCMA_AND_SSB=y +# CONFIG_B43_BUSES_BCMA is not set +# CONFIG_B43_BUSES_SSB is not set CONFIG_B43_PCI_AUTOSELECT=y CONFIG_B43_PCICORE_AUTOSELECT=y CONFIG_B43_PCMCIA=y CONFIG_B43_SDIO=y CONFIG_B43_BCMA_PIO=y CONFIG_B43_PIO=y +CONFIG_B43_PHY_G=y CONFIG_B43_PHY_N=y CONFIG_B43_PHY_LP=y CONFIG_B43_PHY_HT=y @@ -2313,8 +2332,10 @@ CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y CONFIG_BRCMUTIL=m CONFIG_BRCMSMAC=m CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_PROTO_BCDC=y CONFIG_BRCMFMAC_SDIO=y CONFIG_BRCMFMAC_USB=y +# CONFIG_BRCMFMAC_PCIE is not set # CONFIG_BRCM_TRACING is not set # CONFIG_BRCMDBG is not set CONFIG_HOSTAP=m @@ -2326,9 +2347,12 @@ CONFIG_HOSTAP_CS=m # CONFIG_IPW2100 is not set # CONFIG_IPW2200 is not set CONFIG_IWLWIFI=m +CONFIG_IWLWIFI_LEDS=y CONFIG_IWLDVM=m CONFIG_IWLMVM=m CONFIG_IWLWIFI_OPMODE_MODULAR=y +# CONFIG_IWLWIFI_BCAST_FILTERING is not set +# CONFIG_IWLWIFI_UAPSD is not set # # Debugging Options @@ -2399,13 +2423,18 @@ CONFIG_RTL8192CE=m CONFIG_RTL8192SE=m CONFIG_RTL8192DE=m CONFIG_RTL8723AE=m +# CONFIG_RTL8723BE is not set CONFIG_RTL8188EE=m +# CONFIG_RTL8192EE is not set +# CONFIG_RTL8821AE is not set CONFIG_RTL8192CU=m CONFIG_RTLWIFI=m CONFIG_RTLWIFI_PCI=m CONFIG_RTLWIFI_USB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTL8192C_COMMON=m +CONFIG_RTL8723_COMMON=m +CONFIG_RTLBTCOEXIST=m CONFIG_WL_TI=y CONFIG_WL1251=m # CONFIG_WL1251_SPI is not set @@ -2425,6 +2454,7 @@ CONFIG_MWIFIEX_USB=m CONFIG_CW1200=m CONFIG_CW1200_WLAN_SDIO=m CONFIG_CW1200_WLAN_SPI=m +# CONFIG_RSI_91X is not set # # WiMAX Wireless Broadband devices @@ -2438,6 +2468,7 @@ CONFIG_IEEE802154_FAKEHARD=m CONFIG_IEEE802154_FAKELB=m CONFIG_IEEE802154_AT86RF230=m # CONFIG_IEEE802154_MRF24J40 is not set +# CONFIG_IEEE802154_CC2520 is not set CONFIG_VMXNET3=m CONFIG_ISDN=y CONFIG_ISDN_I4L=m @@ -2479,27 +2510,17 @@ CONFIG_HISAX_MAX_CARDS=8 # # HiSax supported cards # -# CONFIG_HISAX_16_0 is not set CONFIG_HISAX_16_3=y CONFIG_HISAX_TELESPCI=y CONFIG_HISAX_S0BOX=y -# CONFIG_HISAX_AVM_A1 is not set CONFIG_HISAX_FRITZPCI=y CONFIG_HISAX_AVM_A1_PCMCIA=y CONFIG_HISAX_ELSA=y -# CONFIG_HISAX_IX1MICROR2 is not set CONFIG_HISAX_DIEHLDIVA=y -# CONFIG_HISAX_ASUSCOM is not set -# CONFIG_HISAX_TELEINT is not set -# CONFIG_HISAX_HFCS is not set CONFIG_HISAX_SEDLBAUER=y -# CONFIG_HISAX_SPORTSTER is not set -# CONFIG_HISAX_MIC is not set CONFIG_HISAX_NETJET=y CONFIG_HISAX_NETJET_U=y CONFIG_HISAX_NICCY=y -# CONFIG_HISAX_ISURF is not set -# CONFIG_HISAX_HSTSAPHIR is not set CONFIG_HISAX_BKM_A4T=y CONFIG_HISAX_SCT_QUADRO=y CONFIG_HISAX_GAZEL=y @@ -2528,24 +2549,19 @@ CONFIG_HISAX_FRITZ_PCIPNP=m # # Active cards # -# CONFIG_ISDN_DRV_ICN is not set -# CONFIG_ISDN_DRV_SC is not set -# CONFIG_ISDN_DRV_ACT2000 is not set CONFIG_ISDN_CAPI=m -CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y CONFIG_CAPI_TRACE=y CONFIG_ISDN_CAPI_CAPI20=m CONFIG_ISDN_CAPI_MIDDLEWARE=y CONFIG_ISDN_CAPI_CAPIDRV=m +# CONFIG_ISDN_CAPI_CAPIDRV_VERBOSE is not set # # CAPI hardware drivers # CONFIG_CAPI_AVM=y -# CONFIG_ISDN_DRV_AVMB1_B1ISA is not set CONFIG_ISDN_DRV_AVMB1_B1PCI=m CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y -# CONFIG_ISDN_DRV_AVMB1_T1ISA is not set CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m CONFIG_ISDN_DRV_AVMB1_AVM_CS=m CONFIG_ISDN_DRV_AVMB1_T1PCI=m @@ -2647,9 +2663,6 @@ CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_APPLETOUCH=m CONFIG_MOUSE_BCM5974=m CONFIG_MOUSE_CYAPA=m -# CONFIG_MOUSE_INPORT is not set -# CONFIG_MOUSE_LOGIBM is not set -# CONFIG_MOUSE_PC110PAD is not set CONFIG_MOUSE_VSXXXAA=m # CONFIG_MOUSE_GPIO is not set CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -2691,7 +2704,7 @@ CONFIG_TABLET_USB_AIPTEK=m CONFIG_TABLET_USB_GTCO=m CONFIG_TABLET_USB_HANWANG=m CONFIG_TABLET_USB_KBTAB=m -CONFIG_TABLET_USB_WACOM=m +# CONFIG_TABLET_SERIAL_WACOM4 is not set CONFIG_INPUT_TOUCHSCREEN=y # CONFIG_TOUCHSCREEN_ADS7846 is not set # CONFIG_TOUCHSCREEN_AD7877 is not set @@ -2723,7 +2736,6 @@ CONFIG_TOUCHSCREEN_MMS114=m CONFIG_TOUCHSCREEN_MTOUCH=m CONFIG_TOUCHSCREEN_INEXIO=m CONFIG_TOUCHSCREEN_MK712=m -# CONFIG_TOUCHSCREEN_HTCPEN is not set CONFIG_TOUCHSCREEN_PENMOUNT=m CONFIG_TOUCHSCREEN_EDT_FT5X06=m CONFIG_TOUCHSCREEN_TOUCHRIGHT=m @@ -2759,7 +2771,6 @@ CONFIG_TOUCHSCREEN_TOUCHIT213=m CONFIG_TOUCHSCREEN_TSC_SERIO=m # CONFIG_TOUCHSCREEN_TSC2005 is not set CONFIG_TOUCHSCREEN_TSC2007=m -# CONFIG_TOUCHSCREEN_W90X900 is not set CONFIG_TOUCHSCREEN_ST1232=m CONFIG_TOUCHSCREEN_SUR40=m CONFIG_TOUCHSCREEN_TPS6507X=m @@ -2773,6 +2784,7 @@ CONFIG_INPUT_MC13783_PWRBUTTON=m CONFIG_INPUT_MMA8450=m CONFIG_INPUT_MPU3050=m CONFIG_INPUT_GP2A=m +# CONFIG_INPUT_GPIO_BEEPER is not set # CONFIG_INPUT_GPIO_TILT_POLLED is not set CONFIG_INPUT_ATI_REMOTE2=m CONFIG_INPUT_KEYSPAN_REMOTE=m @@ -2793,6 +2805,8 @@ CONFIG_INPUT_ADXL34X_SPI=m CONFIG_INPUT_CMA3000=m CONFIG_INPUT_CMA3000_I2C=m CONFIG_INPUT_IDEAPAD_SLIDEBAR=m +# CONFIG_INPUT_DRV260X_HAPTICS is not set +# CONFIG_INPUT_DRV2667_HAPTICS is not set # # Hardware I/O ports @@ -2847,9 +2861,9 @@ CONFIG_TRACE_SINK=m # # Serial drivers # +CONFIG_SERIAL_EARLYCON=y CONFIG_SERIAL_8250=y # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set -CONFIG_SERIAL_8250_PNP=y CONFIG_SERIAL_8250_CONSOLE=y CONFIG_SERIAL_8250_DMA=y CONFIG_SERIAL_8250_PCI=y @@ -2870,13 +2884,12 @@ CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_JSM=m CONFIG_SERIAL_SCCNXP=m -# CONFIG_SERIAL_TIMBERDALE is not set +# CONFIG_SERIAL_SC16IS7XX is not set CONFIG_SERIAL_ALTERA_JTAGUART=m CONFIG_SERIAL_ALTERA_UART=m CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 # CONFIG_SERIAL_IFX6X60 is not set -CONFIG_SERIAL_PCH_UART=m CONFIG_SERIAL_ARC=m CONFIG_SERIAL_ARC_NR_PORTS=1 CONFIG_SERIAL_RP2=m @@ -2891,15 +2904,13 @@ CONFIG_IPMI_HANDLER=m # CONFIG_IPMI_PANIC_EVENT is not set CONFIG_IPMI_DEVICE_INTERFACE=m CONFIG_IPMI_SI=m +# CONFIG_IPMI_SI_PROBE_DEFAULTS is not set CONFIG_IPMI_WATCHDOG=m CONFIG_IPMI_POWEROFF=m CONFIG_HW_RANDOM=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_ATMEL=m CONFIG_HW_RANDOM_VIRTIO=m -CONFIG_HW_RANDOM_EXYNOS=m CONFIG_HW_RANDOM_TPM=m -# CONFIG_DTLK is not set CONFIG_R3964=m CONFIG_APPLICOM=m @@ -2917,9 +2928,13 @@ CONFIG_TCG_TIS_I2C_ATMEL=m CONFIG_TCG_TIS_I2C_INFINEON=m CONFIG_TCG_TIS_I2C_NUVOTON=m CONFIG_TCG_ATMEL=m -CONFIG_TCG_INFINEON=m CONFIG_TCG_ST33_I2C=m CONFIG_DEVPORT=y +# CONFIG_XILLYBUS is not set + +# +# I2C support +# CONFIG_I2C=m CONFIG_I2C_BOARDINFO=y CONFIG_I2C_COMPAT=y @@ -2966,7 +2981,6 @@ CONFIG_I2C_VIAPRO=m CONFIG_I2C_DESIGNWARE_CORE=m CONFIG_I2C_DESIGNWARE_PLATFORM=m CONFIG_I2C_DESIGNWARE_PCI=m -CONFIG_I2C_EG20T=m # CONFIG_I2C_GPIO is not set CONFIG_I2C_OCORES=m CONFIG_I2C_PCA_PLATFORM=m @@ -2988,9 +3002,7 @@ CONFIG_I2C_VIPERBOARD=m # # Other I2C/SMBus bus drivers # -# CONFIG_I2C_ELEKTOR is not set -# CONFIG_I2C_PCA_ISA is not set -# CONFIG_SCx200_ACB is not set +# CONFIG_I2C_CROS_EC_TUNNEL is not set # CONFIG_I2C_STUB is not set # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEBUG_ALGO is not set @@ -3010,9 +3022,9 @@ CONFIG_SPI_LM70_LLP=m CONFIG_SPI_OC_TINY=m CONFIG_SPI_PXA2XX_DMA=y CONFIG_SPI_PXA2XX=m -CONFIG_SPI_PXA2XX_PCI=m +# CONFIG_SPI_PXA2XX_PCI is not set +# CONFIG_SPI_ROCKCHIP is not set CONFIG_SPI_SC18IS602=m -CONFIG_SPI_TOPCLIFF_PCH=m CONFIG_SPI_XCOMM=m CONFIG_SPI_XILINX=m CONFIG_SPI_DESIGNWARE=m @@ -3024,6 +3036,7 @@ CONFIG_SPI_DW_MMIO=m # CONFIG_SPI_SPIDEV=m CONFIG_SPI_TLE62X0=m +# CONFIG_SPMI is not set # CONFIG_HSI is not set # @@ -3062,8 +3075,8 @@ CONFIG_GPIO_SYSFS=y # Memory mapped GPIO drivers: # # CONFIG_GPIO_GENERIC_PLATFORM is not set +# CONFIG_GPIO_DWAPB is not set CONFIG_GPIO_SCH311X=m -# CONFIG_GPIO_TS5500 is not set # CONFIG_GPIO_VX855 is not set # @@ -3088,6 +3101,7 @@ CONFIG_GPIO_AMD8111=m # SPI GPIO expanders: # # CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MCP23S08 is not set # CONFIG_GPIO_MC33880 is not set # @@ -3140,7 +3154,6 @@ CONFIG_HWMON_VID=m CONFIG_SENSORS_AD7314=m CONFIG_SENSORS_AD7414=m CONFIG_SENSORS_AD7418=m -CONFIG_SENSORS_ADCXX=m CONFIG_SENSORS_ADM1021=m CONFIG_SENSORS_ADM1025=m CONFIG_SENSORS_ADM1026=m @@ -3162,18 +3175,38 @@ CONFIG_SENSORS_I5K_AMB=m CONFIG_SENSORS_F71805F=m CONFIG_SENSORS_F71882FG=m CONFIG_SENSORS_F75375S=m -CONFIG_SENSORS_G760A=m -CONFIG_SENSORS_G762=m +CONFIG_SENSORS_MC13783_ADC=m CONFIG_SENSORS_GL518SM=m CONFIG_SENSORS_GL520SM=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m CONFIG_SENSORS_GPIO_FAN=m CONFIG_SENSORS_HIH6130=m -CONFIG_SENSORS_HTU21=m CONFIG_SENSORS_IBMAEM=m CONFIG_SENSORS_IBMPEX=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_JC42=m +# CONFIG_SENSORS_POWR1220 is not set CONFIG_SENSORS_LINEAGE=m +# CONFIG_SENSORS_LTC2945 is not set +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +# CONFIG_SENSORS_LTC4222 is not set +CONFIG_SENSORS_LTC4245=m +# CONFIG_SENSORS_LTC4260 is not set +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_MAX1111=m +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_HTU21=m +CONFIG_SENSORS_MCP3021=m +CONFIG_SENSORS_ADCXX=m CONFIG_SENSORS_LM63=m CONFIG_SENSORS_LM70=m CONFIG_SENSORS_LM73=m @@ -3187,27 +3220,14 @@ CONFIG_SENSORS_LM87=m CONFIG_SENSORS_LM90=m CONFIG_SENSORS_LM92=m CONFIG_SENSORS_LM93=m -CONFIG_SENSORS_LTC4151=m -CONFIG_SENSORS_LTC4215=m -CONFIG_SENSORS_LTC4245=m -CONFIG_SENSORS_LTC4261=m CONFIG_SENSORS_LM95234=m CONFIG_SENSORS_LM95241=m CONFIG_SENSORS_LM95245=m -CONFIG_SENSORS_MAX1111=m -CONFIG_SENSORS_MAX16065=m -CONFIG_SENSORS_MAX1619=m -CONFIG_SENSORS_MAX1668=m -CONFIG_SENSORS_MAX197=m -CONFIG_SENSORS_MAX6639=m -CONFIG_SENSORS_MAX6642=m -CONFIG_SENSORS_MAX6650=m -CONFIG_SENSORS_MAX6697=m -CONFIG_SENSORS_MCP3021=m -CONFIG_SENSORS_NCT6775=m -CONFIG_SENSORS_NTC_THERMISTOR=m CONFIG_SENSORS_PC87360=m CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_NTC_THERMISTOR=m +# CONFIG_SENSORS_NCT6683 is not set +CONFIG_SENSORS_NCT6775=m CONFIG_SENSORS_PCF8591=m CONFIG_PMBUS=m CONFIG_SENSORS_PMBUS=m @@ -3217,13 +3237,14 @@ CONFIG_SENSORS_LTC2978=m CONFIG_SENSORS_MAX16064=m CONFIG_SENSORS_MAX34440=m CONFIG_SENSORS_MAX8688=m +# CONFIG_SENSORS_TPS40422 is not set CONFIG_SENSORS_UCD9000=m CONFIG_SENSORS_UCD9200=m CONFIG_SENSORS_ZL6100=m CONFIG_SENSORS_SHT15=m CONFIG_SENSORS_SHT21=m +# CONFIG_SENSORS_SHTC1 is not set CONFIG_SENSORS_SIS5595=m -CONFIG_SENSORS_SMM665=m CONFIG_SENSORS_DME1737=m CONFIG_SENSORS_EMC1403=m CONFIG_SENSORS_EMC2103=m @@ -3234,6 +3255,8 @@ CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SCH56XX_COMMON=m CONFIG_SENSORS_SCH5627=m CONFIG_SENSORS_SCH5636=m +CONFIG_SENSORS_SMM665=m +# CONFIG_SENSORS_ADC128D818 is not set CONFIG_SENSORS_ADS1015=m CONFIG_SENSORS_ADS7828=m CONFIG_SENSORS_ADS7871=m @@ -3242,6 +3265,7 @@ CONFIG_SENSORS_INA209=m CONFIG_SENSORS_INA2XX=m CONFIG_SENSORS_THMC50=m CONFIG_SENSORS_TMP102=m +# CONFIG_SENSORS_TMP103 is not set CONFIG_SENSORS_TMP401=m CONFIG_SENSORS_TMP421=m CONFIG_SENSORS_VIA686A=m @@ -3257,13 +3281,13 @@ CONFIG_SENSORS_W83L785TS=m CONFIG_SENSORS_W83L786NG=m CONFIG_SENSORS_W83627HF=m CONFIG_SENSORS_W83627EHF=m -CONFIG_SENSORS_MC13783_ADC=m CONFIG_THERMAL=y CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y # CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set # CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set CONFIG_THERMAL_GOV_FAIR_SHARE=y CONFIG_THERMAL_GOV_STEP_WISE=y +# CONFIG_THERMAL_GOV_BANG_BANG is not set CONFIG_THERMAL_GOV_USER_SPACE=y # CONFIG_THERMAL_EMULATION is not set @@ -3278,6 +3302,7 @@ CONFIG_WATCHDOG_CORE=y # Watchdog Device Drivers # CONFIG_SOFT_WATCHDOG=m +# CONFIG_XILINX_WATCHDOG is not set CONFIG_DW_WATCHDOG=m CONFIG_RETU_WATCHDOG=m CONFIG_ALIM7101_WDT=m @@ -3285,13 +3310,6 @@ CONFIG_I6300ESB_WDT=m CONFIG_MEN_A21_WDT=m # -# ISA-based Watchdog Cards -# -# CONFIG_PCWATCHDOG is not set -# CONFIG_MIXCOMWD is not set -# CONFIG_WDT is not set - -# # PCI-based Watchdog Cards # CONFIG_PCIPCWATCHDOG=m @@ -3341,6 +3359,7 @@ CONFIG_BCMA_DRIVER_GPIO=y # Multifunction device drivers # CONFIG_MFD_CORE=y +# CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_I2C=m # CONFIG_MFD_DA9052_SPI is not set @@ -3352,6 +3371,7 @@ CONFIG_LPC_ICH=m CONFIG_LPC_SCH=m # CONFIG_MFD_JANZ_CMODIO is not set # CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_MENF21BMC is not set # CONFIG_EZX_PCAP is not set CONFIG_MFD_VIPERBOARD=m CONFIG_MFD_RETU=m @@ -3361,11 +3381,12 @@ CONFIG_PCF50633_GPIO=m CONFIG_UCB1400_CORE=m CONFIG_MFD_RDC321X=m CONFIG_MFD_RTSX_PCI=m +# CONFIG_MFD_RTSX_USB is not set +# CONFIG_MFD_RN5T618 is not set CONFIG_MFD_SI476X_CORE=m CONFIG_MFD_SM501=m CONFIG_MFD_SM501_GPIO=y CONFIG_ABX500_CORE=y -# CONFIG_MFD_STMPE is not set # CONFIG_MFD_SYSCON is not set CONFIG_MFD_TI_AM335X_TSCADC=m CONFIG_MFD_LP3943=m @@ -3373,11 +3394,11 @@ CONFIG_MFD_LP3943=m CONFIG_TPS65010=m CONFIG_TPS6507X=m CONFIG_MFD_TPS65217=m +# CONFIG_MFD_TPS65218 is not set # CONFIG_MFD_TPS65912 is not set # CONFIG_MFD_TPS65912_SPI is not set CONFIG_MFD_WL1273_CORE=m CONFIG_MFD_LM3533=m -# CONFIG_MFD_TIMBERDALE is not set # CONFIG_MFD_TMIO is not set CONFIG_MFD_VX855=m CONFIG_MFD_ARIZONA=y @@ -3387,6 +3408,7 @@ CONFIG_MFD_WM5102=y CONFIG_MFD_WM5110=y # CONFIG_MFD_WM8997 is not set # CONFIG_MFD_WM831X_SPI is not set +# CONFIG_MFD_WM8994 is not set # CONFIG_REGULATOR is not set CONFIG_MEDIA_SUPPORT=m @@ -3397,6 +3419,7 @@ CONFIG_MEDIA_CAMERA_SUPPORT=y CONFIG_MEDIA_ANALOG_TV_SUPPORT=y CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y CONFIG_MEDIA_RADIO_SUPPORT=y +# CONFIG_MEDIA_SDR_SUPPORT is not set CONFIG_MEDIA_RC_SUPPORT=y CONFIG_MEDIA_CONTROLLER=y CONFIG_VIDEO_DEV=m @@ -3415,6 +3438,7 @@ CONFIG_VIDEOBUF2_MEMOPS=m CONFIG_VIDEOBUF2_DMA_CONTIG=m CONFIG_VIDEOBUF2_VMALLOC=m CONFIG_VIDEOBUF2_DMA_SG=m +CONFIG_VIDEOBUF2_DVB=m CONFIG_DVB_CORE=m CONFIG_DVB_NET=y CONFIG_TTPCI_EEPROM=m @@ -3434,21 +3458,20 @@ CONFIG_IR_RC5_DECODER=m CONFIG_IR_RC6_DECODER=m CONFIG_IR_JVC_DECODER=m CONFIG_IR_SONY_DECODER=m -CONFIG_IR_RC5_SZ_DECODER=m CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_SHARP_DECODER=m CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_IR_XMP_DECODER=m CONFIG_RC_DEVICES=y CONFIG_RC_ATI_REMOTE=m -CONFIG_IR_ENE=m +# CONFIG_IR_HIX5HD2 is not set CONFIG_IR_IMON=m CONFIG_IR_MCEUSB=m -CONFIG_IR_ITE_CIR=m -CONFIG_IR_FINTEK=m -CONFIG_IR_NUVOTON=m CONFIG_IR_REDRAT3=m CONFIG_IR_STREAMZAP=m CONFIG_IR_IGUANA=m CONFIG_IR_TTUSBIR=m +# CONFIG_IR_IMG is not set CONFIG_RC_LOOPBACK=m CONFIG_IR_GPIO_CIR=m CONFIG_MEDIA_USB_SUPPORT=y @@ -3465,6 +3488,7 @@ CONFIG_USB_GL860=m CONFIG_USB_GSPCA_BENQ=m CONFIG_USB_GSPCA_CONEX=m CONFIG_USB_GSPCA_CPIA1=m +# CONFIG_USB_GSPCA_DTCS033 is not set CONFIG_USB_GSPCA_ETOMS=m CONFIG_USB_GSPCA_FINEPIX=m CONFIG_USB_GSPCA_JEILINJ=m @@ -3528,12 +3552,17 @@ CONFIG_VIDEO_USBVISION=m CONFIG_VIDEO_STK1160_COMMON=m CONFIG_VIDEO_STK1160_AC97=y CONFIG_VIDEO_STK1160=m +CONFIG_VIDEO_GO7007=m +CONFIG_VIDEO_GO7007_USB=m +CONFIG_VIDEO_GO7007_LOADER=m +# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set # # Analog/digital TV USB devices # CONFIG_VIDEO_AU0828=m CONFIG_VIDEO_AU0828_V4L2=y +# CONFIG_VIDEO_AU0828_RC is not set CONFIG_VIDEO_CX231XX=m CONFIG_VIDEO_CX231XX_RC=y CONFIG_VIDEO_CX231XX_ALSA=m @@ -3581,15 +3610,16 @@ CONFIG_DVB_USB_AZ6007=m CONFIG_DVB_USB_CE6230=m CONFIG_DVB_USB_EC168=m CONFIG_DVB_USB_GL861=m -CONFIG_DVB_USB_IT913X=m CONFIG_DVB_USB_LME2510=m CONFIG_DVB_USB_MXL111SF=m CONFIG_DVB_USB_RTL28XXU=m +# CONFIG_DVB_USB_DVBSKY is not set CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m CONFIG_SMS_USB_DRV=m CONFIG_DVB_B2C2_FLEXCOP_USB=m # CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set +CONFIG_DVB_AS102=m # # Webcam, TV (analog/digital) USB devices @@ -3622,6 +3652,8 @@ CONFIG_VIDEO_ZORAN_AVS6EYES=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m CONFIG_VIDEO_MXB=m +# CONFIG_VIDEO_SOLO6X10 is not set +# CONFIG_VIDEO_TW68 is not set # # Media capture/analog/hybrid TV support @@ -3645,11 +3677,13 @@ CONFIG_VIDEO_SAA7134=m CONFIG_VIDEO_SAA7134_ALSA=m CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7134_DVB=m +# CONFIG_VIDEO_SAA7134_GO7007 is not set CONFIG_VIDEO_SAA7164=m # # Media digital TV PCI Adapters # +CONFIG_DVB_AV7110_IR=y CONFIG_DVB_AV7110=m CONFIG_DVB_AV7110_OSD=y CONFIG_DVB_BUDGET_CORE=m @@ -3662,6 +3696,7 @@ CONFIG_DVB_B2C2_FLEXCOP_PCI=m CONFIG_DVB_PLUTO2=m CONFIG_DVB_DM1105=m CONFIG_DVB_PT1=m +# CONFIG_DVB_PT3 is not set CONFIG_MANTIS_CORE=m CONFIG_DVB_MANTIS=m CONFIG_DVB_HOPPER=m @@ -3671,7 +3706,6 @@ CONFIG_DVB_DDBRIDGE=m CONFIG_V4L_MEM2MEM_DRIVERS=y CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m CONFIG_VIDEO_SH_VEU=m -CONFIG_VIDEO_RENESAS_VSP1=m # CONFIG_V4L_TEST_DRIVERS is not set # @@ -3681,7 +3715,6 @@ CONFIG_SMS_SDIO_DRV=m CONFIG_MEDIA_PARPORT_SUPPORT=y CONFIG_VIDEO_BWQCAM=m CONFIG_VIDEO_CQCAM=m -# CONFIG_VIDEO_PMS is not set CONFIG_VIDEO_W9966=m CONFIG_RADIO_ADAPTERS=y CONFIG_RADIO_TEA575X=m @@ -3709,7 +3742,6 @@ CONFIG_RADIO_WL1273=m # Texas Instruments WL128x FM driver (ST based) # CONFIG_RADIO_WL128X=m -# CONFIG_V4L_RADIO_ISA_DRIVERS is not set # # Supported FireWire (IEEE 1394) Adapters @@ -3849,6 +3881,7 @@ CONFIG_MEDIA_TUNER_E4000=m CONFIG_MEDIA_TUNER_FC2580=m CONFIG_MEDIA_TUNER_M88TS2022=m CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_SI2157=m CONFIG_MEDIA_TUNER_IT913X=m CONFIG_MEDIA_TUNER_R820T=m @@ -3866,6 +3899,7 @@ CONFIG_DVB_M88DS3103=m # CONFIG_DVB_DRXK=m CONFIG_DVB_TDA18271C2DD=m +CONFIG_DVB_SI2165=m # # DVB-S (satellite) frontends @@ -3921,6 +3955,8 @@ CONFIG_DVB_STV0367=m CONFIG_DVB_CXD2820R=m CONFIG_DVB_RTL2830=m CONFIG_DVB_RTL2832=m +CONFIG_DVB_SI2168=m +CONFIG_DVB_AS102_FE=m # # DVB-C (cable) frontends @@ -3963,6 +3999,7 @@ CONFIG_DVB_TUNER_DIB0090=m # # SEC control devices for DVB-S # +CONFIG_DVB_DRX39XYJ=m CONFIG_DVB_LNBP21=m CONFIG_DVB_LNBP22=m CONFIG_DVB_ISL6405=m @@ -3973,7 +4010,6 @@ CONFIG_DVB_LGS8GXX=m CONFIG_DVB_ATBM8830=m CONFIG_DVB_TDA665x=m CONFIG_DVB_IX2505V=m -CONFIG_DVB_IT913X_FE=m CONFIG_DVB_M88RS2000=m CONFIG_DVB_AF9033=m @@ -3987,8 +4023,11 @@ CONFIG_DVB_AF9033=m # CONFIG_VGA_ARB=y CONFIG_VGA_ARB_MAX_GPUS=16 + +# +# Direct Rendering Manager +# CONFIG_DRM=m -CONFIG_DRM_USB=m CONFIG_DRM_KMS_HELPER=m CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_LOAD_EDID_FIRMWARE=y @@ -4000,6 +4039,7 @@ CONFIG_DRM_TTM=m CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_SIL164=m CONFIG_DRM_I2C_NXP_TDA998X=m +# CONFIG_DRM_PTN3460 is not set CONFIG_DRM_TDFX=m CONFIG_DRM_R128=m CONFIG_DRM_RADEON=m @@ -4019,11 +4059,13 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_CIRRUS_QEMU=m CONFIG_DRM_QXL=m CONFIG_DRM_BOCHS=m -CONFIG_VGASTATE=m -CONFIG_VIDEO_OUTPUT_CONTROL=m -CONFIG_HDMI=y + +# +# Frame buffer Devices +# CONFIG_FB=y CONFIG_FIRMWARE_EDID=y +CONFIG_FB_CMDLINE=y # CONFIG_FB_DDC is not set # CONFIG_FB_BOOT_VESA_SUPPORT is not set CONFIG_FB_CFB_FILLRECT=m @@ -4072,18 +4114,16 @@ CONFIG_FB_VT8623=m # CONFIG_FB_ARK is not set # CONFIG_FB_PM3 is not set # CONFIG_FB_CARMINE is not set -# CONFIG_FB_TMIO is not set # CONFIG_FB_SM501 is not set # CONFIG_FB_SMSCUFX is not set CONFIG_FB_UDL=m -# CONFIG_FB_GOLDFISH is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_METRONOME is not set # CONFIG_FB_MB862XX is not set # CONFIG_FB_BROADSHEET is not set # CONFIG_FB_AUO_K190X is not set # CONFIG_FB_SIMPLE is not set -# CONFIG_EXYNOS_VIDEO is not set +# CONFIG_FB_SM712 is not set CONFIG_BACKLIGHT_LCD_SUPPORT=y CONFIG_LCD_CLASS_DEVICE=m # CONFIG_LCD_L4F00242T03 is not set @@ -4105,20 +4145,20 @@ CONFIG_BACKLIGHT_LM3533=m # CONFIG_BACKLIGHT_ADP8860 is not set # CONFIG_BACKLIGHT_ADP8870 is not set CONFIG_BACKLIGHT_PCF50633=m -CONFIG_BACKLIGHT_LM3630A=m # CONFIG_BACKLIGHT_LM3639 is not set -# CONFIG_BACKLIGHT_LP855X is not set # CONFIG_BACKLIGHT_TPS65217 is not set # CONFIG_BACKLIGHT_GPIO is not set # CONFIG_BACKLIGHT_LV5207LP is not set # CONFIG_BACKLIGHT_BD6107 is not set +CONFIG_VGASTATE=m +CONFIG_VIDEO_OUTPUT_CONTROL=m +CONFIG_HDMI=y # # Console display driver support # CONFIG_VGA_CONSOLE=y # CONFIG_VGACON_SOFT_SCROLLBACK is not set -# CONFIG_MDA_CONSOLE is not set CONFIG_DUMMY_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y @@ -4171,38 +4211,6 @@ CONFIG_SND_PORTMAN2X4=m CONFIG_SND_AC97_POWER_SAVE=y CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 CONFIG_SND_SB_COMMON=m -CONFIG_SND_SB16_DSP=m -CONFIG_SND_ISA=y -# CONFIG_SND_ADLIB is not set -# CONFIG_SND_AD1816A is not set -# CONFIG_SND_AD1848 is not set -# CONFIG_SND_ALS100 is not set -# CONFIG_SND_AZT1605 is not set -# CONFIG_SND_AZT2316 is not set -# CONFIG_SND_AZT2320 is not set -# CONFIG_SND_CMI8328 is not set -# CONFIG_SND_CMI8330 is not set -# CONFIG_SND_CS4231 is not set -# CONFIG_SND_CS4236 is not set -# CONFIG_SND_ES1688 is not set -# CONFIG_SND_ES18XX is not set -# CONFIG_SND_SC6000 is not set -# CONFIG_SND_GUSCLASSIC is not set -# CONFIG_SND_GUSEXTREME is not set -# CONFIG_SND_GUSMAX is not set -# CONFIG_SND_INTERWAVE is not set -# CONFIG_SND_INTERWAVE_STB is not set -# CONFIG_SND_JAZZ16 is not set -# CONFIG_SND_OPL3SA2 is not set -# CONFIG_SND_OPTI92X_AD1848 is not set -# CONFIG_SND_OPTI92X_CS4231 is not set -# CONFIG_SND_OPTI93X is not set -# CONFIG_SND_MIRO is not set -# CONFIG_SND_SB8 is not set -# CONFIG_SND_SB16 is not set -# CONFIG_SND_SBAWE is not set -# CONFIG_SND_SSCAPE is not set -# CONFIG_SND_WAVEFRONT is not set CONFIG_SND_PCI=y CONFIG_SND_AD1889=m CONFIG_SND_ALS300=m @@ -4224,7 +4232,6 @@ CONFIG_SND_OXYGEN=m CONFIG_SND_CS4281=m CONFIG_SND_CS46XX=m CONFIG_SND_CS46XX_NEW_DSP=y -CONFIG_SND_CS5530=m CONFIG_SND_CS5535AUDIO=m CONFIG_SND_CTXFI=m CONFIG_SND_DARLA20=m @@ -4251,29 +4258,6 @@ CONFIG_SND_ES1968_INPUT=y CONFIG_SND_ES1968_RADIO=y CONFIG_SND_FM801=m CONFIG_SND_FM801_TEA575X_BOOL=y -CONFIG_SND_HDA_INTEL=m -CONFIG_SND_HDA_DSP_LOADER=y -CONFIG_SND_HDA_PREALLOC_SIZE=4096 -CONFIG_SND_HDA_HWDEP=y -CONFIG_SND_HDA_RECONFIG=y -CONFIG_SND_HDA_INPUT_BEEP=y -CONFIG_SND_HDA_INPUT_BEEP_MODE=1 -CONFIG_SND_HDA_INPUT_JACK=y -CONFIG_SND_HDA_PATCH_LOADER=y -CONFIG_SND_HDA_CODEC_REALTEK=m -CONFIG_SND_HDA_CODEC_ANALOG=m -CONFIG_SND_HDA_CODEC_SIGMATEL=m -CONFIG_SND_HDA_CODEC_VIA=m -CONFIG_SND_HDA_CODEC_HDMI=m -CONFIG_SND_HDA_CODEC_CIRRUS=m -CONFIG_SND_HDA_CODEC_CONEXANT=m -CONFIG_SND_HDA_CODEC_CA0110=m -CONFIG_SND_HDA_CODEC_CA0132=m -CONFIG_SND_HDA_CODEC_CA0132_DSP=y -CONFIG_SND_HDA_CODEC_CMEDIA=m -CONFIG_SND_HDA_CODEC_SI3054=m -CONFIG_SND_HDA_GENERIC=m -CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_HDSP=m CONFIG_SND_HDSPM=m CONFIG_SND_ICE1712=m @@ -4299,6 +4283,34 @@ CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_VIRTUOSO=m CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m + +# +# HD-Audio +# +CONFIG_SND_HDA=m +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_PREALLOC_SIZE=4096 +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_RECONFIG=y +CONFIG_SND_HDA_INPUT_BEEP=y +CONFIG_SND_HDA_INPUT_BEEP_MODE=1 +CONFIG_SND_HDA_INPUT_JACK=y +CONFIG_SND_HDA_PATCH_LOADER=y +CONFIG_SND_HDA_CODEC_REALTEK=m +CONFIG_SND_HDA_CODEC_ANALOG=m +CONFIG_SND_HDA_CODEC_SIGMATEL=m +CONFIG_SND_HDA_CODEC_VIA=m +CONFIG_SND_HDA_CODEC_HDMI=m +CONFIG_SND_HDA_CODEC_CIRRUS=m +CONFIG_SND_HDA_CODEC_CONEXANT=m +CONFIG_SND_HDA_CODEC_CA0110=m +CONFIG_SND_HDA_CODEC_CA0132=m +CONFIG_SND_HDA_CODEC_CA0132_DSP=y +CONFIG_SND_HDA_CODEC_CMEDIA=m +CONFIG_SND_HDA_CODEC_SI3054=m +CONFIG_SND_HDA_GENERIC=m +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_SPI=y CONFIG_SND_MIPS=y CONFIG_SND_USB=y @@ -4308,12 +4320,15 @@ CONFIG_SND_USB_CAIAQ=m CONFIG_SND_USB_CAIAQ_INPUT=y CONFIG_SND_USB_6FIRE=m CONFIG_SND_USB_HIFACE=m +# CONFIG_SND_BCD2000 is not set CONFIG_SND_FIREWIRE=y CONFIG_SND_FIREWIRE_LIB=m CONFIG_SND_DICE=m CONFIG_SND_FIREWIRE_SPEAKERS=m CONFIG_SND_ISIGHT=m CONFIG_SND_SCS1X=m +# CONFIG_SND_FIREWORKS is not set +# CONFIG_SND_BEBOB is not set CONFIG_SND_PCMCIA=y CONFIG_SND_VXPOCKET=m CONFIG_SND_PDAUDIOCF=m @@ -4342,6 +4357,7 @@ CONFIG_HID_BELKIN=m CONFIG_HID_CHERRY=m CONFIG_HID_CHICONY=m CONFIG_HID_PRODIKEYS=m +# CONFIG_HID_CP2112 is not set CONFIG_HID_CYPRESS=m CONFIG_HID_DRAGONRISE=m CONFIG_DRAGONRISE_FF=y @@ -4351,6 +4367,7 @@ CONFIG_HID_ELO=m CONFIG_HID_EZKEY=m CONFIG_HID_HOLTEK=m CONFIG_HOLTEK_FF=y +# CONFIG_HID_GT683R is not set CONFIG_HID_HUION=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -4361,7 +4378,7 @@ CONFIG_HID_ICADE=m CONFIG_HID_TWINHAN=m CONFIG_HID_KENSINGTON=m CONFIG_HID_LCPOWER=m -CONFIG_HID_LENOVO_TPKBD=m +# CONFIG_HID_LENOVO is not set CONFIG_HID_LOGITECH=m CONFIG_HID_LOGITECH_DJ=m CONFIG_LOGITECH_FF=y @@ -4376,6 +4393,7 @@ CONFIG_HID_NTRIG=m CONFIG_HID_ORTEK=m CONFIG_HID_PANTHERLORD=m CONFIG_PANTHERLORD_FF=y +# CONFIG_HID_PENMOUNT is not set CONFIG_HID_PETALYNX=m CONFIG_HID_PICOLCD=m CONFIG_HID_PICOLCD_FB=y @@ -4392,6 +4410,7 @@ CONFIG_SONY_FF=y CONFIG_HID_SPEEDLINK=m CONFIG_HID_STEELSERIES=m CONFIG_HID_SUNPLUS=m +# CONFIG_HID_RMI is not set CONFIG_HID_GREENASIA=m CONFIG_GREENASIA_FF=y CONFIG_HID_SMARTJOYPLUS=m @@ -4425,7 +4444,6 @@ CONFIG_USB_SUPPORT=y CONFIG_USB_COMMON=m CONFIG_USB_ARCH_HAS_HCD=y CONFIG_USB=m -# CONFIG_USB_DEBUG is not set # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set # @@ -4436,6 +4454,7 @@ CONFIG_USB_DYNAMIC_MINORS=y CONFIG_USB_OTG=y CONFIG_USB_OTG_WHITELIST=y # CONFIG_USB_OTG_BLACKLIST_HUB is not set +CONFIG_USB_OTG_FSM=m CONFIG_USB_MON=m CONFIG_USB_WUSB=m CONFIG_USB_WUSB_CBAF=m @@ -4446,6 +4465,7 @@ CONFIG_USB_WUSB_CBAF=m # CONFIG_USB_C67X00_HCD=m CONFIG_USB_XHCI_HCD=m +CONFIG_USB_XHCI_PCI=m CONFIG_USB_EHCI_HCD=m CONFIG_USB_EHCI_ROOT_HUB_TT=y CONFIG_USB_EHCI_TT_NEWSCHED=y @@ -4457,6 +4477,7 @@ CONFIG_USB_ISP1760_HCD=m CONFIG_USB_ISP1362_HCD=m CONFIG_USB_FUSBH200_HCD=m CONFIG_USB_FOTG210_HCD=m +# CONFIG_USB_MAX3421_HCD is not set CONFIG_USB_OHCI_HCD=m CONFIG_USB_OHCI_HCD_PCI=m # CONFIG_USB_OHCI_HCD_SSB is not set @@ -4467,13 +4488,11 @@ CONFIG_USB_SL811_HCD=m # CONFIG_USB_SL811_HCD_ISO is not set CONFIG_USB_SL811_CS=m CONFIG_USB_R8A66597_HCD=m -CONFIG_USB_RENESAS_USBHS_HCD=m CONFIG_USB_WHCI_HCD=m CONFIG_USB_HWA_HCD=m # CONFIG_USB_HCD_BCMA is not set # CONFIG_USB_HCD_SSB is not set # CONFIG_USB_HCD_TEST_MODE is not set -CONFIG_USB_RENESAS_USBHS=m # # USB Device Class drivers @@ -4506,12 +4525,17 @@ CONFIG_USB_STORAGE_ONETOUCH=m CONFIG_USB_STORAGE_KARMA=m CONFIG_USB_STORAGE_CYPRESS_ATACB=m CONFIG_USB_STORAGE_ENE_UB6250=m +# CONFIG_USB_UAS is not set # # USB Imaging devices # CONFIG_USB_MDC800=m CONFIG_USB_MICROTEK=m +CONFIG_USBIP_CORE=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_HOST=m +# CONFIG_USBIP_DEBUG is not set CONFIG_USB_MUSB_HDRC=m # CONFIG_USB_MUSB_HOST is not set # CONFIG_USB_MUSB_GADGET is not set @@ -4579,7 +4603,6 @@ CONFIG_USB_SERIAL_OMNINET=m CONFIG_USB_SERIAL_OPTICON=m CONFIG_USB_SERIAL_XSENS_MT=m CONFIG_USB_SERIAL_WISHBONE=m -CONFIG_USB_SERIAL_ZTE=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_QT2=m # CONFIG_USB_SERIAL_DEBUG is not set @@ -4611,6 +4634,7 @@ CONFIG_USB_ISIGHTFW=m CONFIG_USB_YUREX=m CONFIG_USB_EZUSB_FX2=m CONFIG_USB_HSIC_USB3503=m +# CONFIG_USB_LINK_LAYER_TEST is not set CONFIG_USB_ATM=m CONFIG_USB_SPEEDTOUCH=m CONFIG_USB_CXACRU=m @@ -4621,16 +4645,11 @@ CONFIG_USB_XUSBATM=m # USB Physical Layer drivers # CONFIG_USB_PHY=y -CONFIG_USB_OTG_FSM=m CONFIG_NOP_USB_XCEIV=m -CONFIG_SAMSUNG_USBPHY=m -CONFIG_SAMSUNG_USB2PHY=m -CONFIG_SAMSUNG_USB3PHY=m # CONFIG_USB_GPIO_VBUS is not set CONFIG_TAHVO_USB=m # CONFIG_TAHVO_USB_HOST_BY_DEFAULT is not set CONFIG_USB_ISP1301=m -CONFIG_USB_RCAR_PHY=m CONFIG_USB_GADGET=m # CONFIG_USB_GADGET_DEBUG is not set # CONFIG_USB_GADGET_DEBUG_FILES is not set @@ -4644,7 +4663,6 @@ CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 CONFIG_USB_FOTG210_UDC=m CONFIG_USB_GR_UDC=m CONFIG_USB_R8A66597=m -CONFIG_USB_RENESAS_USBHS_UDC=m CONFIG_USB_PXA27X=m CONFIG_USB_MV_UDC=m CONFIG_USB_MV_U3D=m @@ -4668,6 +4686,8 @@ CONFIG_USB_F_SUBSET=m CONFIG_USB_F_RNDIS=m CONFIG_USB_F_MASS_STORAGE=m CONFIG_USB_F_FS=m +CONFIG_USB_F_UAC2=m +CONFIG_USB_F_UVC=m # CONFIG_USB_CONFIGFS is not set # CONFIG_USB_ZERO is not set CONFIG_USB_AUDIO=m @@ -4695,13 +4715,13 @@ CONFIG_USB_G_DBGP=m # CONFIG_USB_G_DBGP_PRINTK is not set CONFIG_USB_G_DBGP_SERIAL=y CONFIG_USB_G_WEBCAM=m +# CONFIG_USB_LED_TRIG is not set CONFIG_UWB=m CONFIG_UWB_HWA=m CONFIG_UWB_WHCI=m CONFIG_UWB_I1480U=m CONFIG_MMC=m # CONFIG_MMC_DEBUG is not set -# CONFIG_MMC_UNSAFE_RESUME is not set # CONFIG_MMC_CLKGATE is not set # @@ -4726,8 +4746,10 @@ CONFIG_MMC_SPI=m CONFIG_MMC_SDRICOH_CS=m CONFIG_MMC_CB710=m CONFIG_MMC_VIA_SDMMC=m +# CONFIG_MMC_DW is not set CONFIG_MMC_VUB300=m CONFIG_MMC_USHC=m +# CONFIG_MMC_USDHI6ROL0 is not set CONFIG_MMC_REALTEK_PCI=m CONFIG_MEMSTICK=m # CONFIG_MEMSTICK_DEBUG is not set @@ -4766,14 +4788,16 @@ CONFIG_LEDS_LP5562=m CONFIG_LEDS_LP8501=m CONFIG_LEDS_PCA955X=m CONFIG_LEDS_PCA963X=m -CONFIG_LEDS_PCA9685=m CONFIG_LEDS_DAC124S085=m CONFIG_LEDS_BD2802=m CONFIG_LEDS_LT3593=m CONFIG_LEDS_MC13783=m CONFIG_LEDS_TCA6507=m CONFIG_LEDS_LM355x=m -CONFIG_LEDS_OT200=m + +# +# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) +# CONFIG_LEDS_BLINKM=m # @@ -4852,6 +4876,7 @@ CONFIG_RTC_DRV_X1205=m CONFIG_RTC_DRV_PCF2127=m CONFIG_RTC_DRV_PCF8523=m CONFIG_RTC_DRV_PCF8563=m +# CONFIG_RTC_DRV_PCF85063 is not set CONFIG_RTC_DRV_PCF8583=m CONFIG_RTC_DRV_M41T80=m CONFIG_RTC_DRV_M41T80_WDT=y @@ -4869,6 +4894,8 @@ CONFIG_RTC_DRV_RV3029C2=m # CONFIG_RTC_DRV_M41T93 is not set # CONFIG_RTC_DRV_M41T94 is not set # CONFIG_RTC_DRV_DS1305 is not set +# CONFIG_RTC_DRV_DS1343 is not set +# CONFIG_RTC_DRV_DS1347 is not set # CONFIG_RTC_DRV_DS1390 is not set # CONFIG_RTC_DRV_MAX6902 is not set # CONFIG_RTC_DRV_R9701 is not set @@ -4876,6 +4903,7 @@ CONFIG_RTC_DRV_RV3029C2=m # CONFIG_RTC_DRV_DS3234 is not set # CONFIG_RTC_DRV_PCF2123 is not set # CONFIG_RTC_DRV_RX4581 is not set +# CONFIG_RTC_DRV_MCP795 is not set # # Platform RTC drivers @@ -4885,6 +4913,7 @@ CONFIG_RTC_DRV_DS1286=m CONFIG_RTC_DRV_DS1511=m CONFIG_RTC_DRV_DS1553=m CONFIG_RTC_DRV_DS1742=m +CONFIG_RTC_DRV_DS2404=m CONFIG_RTC_DRV_STK17TA8=m CONFIG_RTC_DRV_M48T86=m CONFIG_RTC_DRV_M48T35=m @@ -4893,14 +4922,13 @@ CONFIG_RTC_DRV_MSM6242=m CONFIG_RTC_DRV_BQ4802=m CONFIG_RTC_DRV_RP5C01=m CONFIG_RTC_DRV_V3020=m -CONFIG_RTC_DRV_DS2404=m CONFIG_RTC_DRV_PCF50633=m # # on-CPU RTC drivers # CONFIG_RTC_DRV_MC13XXX=m -# CONFIG_RTC_DRV_MOXART is not set +# CONFIG_RTC_DRV_XGENE is not set # # HID Sensor RTC drivers @@ -4915,7 +4943,6 @@ CONFIG_DMADEVICES=y CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m CONFIG_DW_DMAC_PCI=m -CONFIG_TIMB_DMA=m CONFIG_DMA_ENGINE=y # @@ -4951,25 +4978,16 @@ CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y # Microsoft Hyper-V guest support # CONFIG_STAGING=y -CONFIG_ET131X=m -CONFIG_USBIP_CORE=m -CONFIG_USBIP_VHCI_HCD=m -CONFIG_USBIP_HOST=m -# CONFIG_USBIP_DEBUG is not set -CONFIG_W35UND=m CONFIG_PRISM2_USB=m -CONFIG_ECHO=m CONFIG_COMEDI=m # CONFIG_COMEDI_DEBUG is not set CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048 CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480 CONFIG_COMEDI_MISC_DRIVERS=y -CONFIG_COMEDI_KCOMEDILIB=m CONFIG_COMEDI_BOND=m CONFIG_COMEDI_TEST=m CONFIG_COMEDI_PARPORT=m CONFIG_COMEDI_SERIAL2002=m -CONFIG_COMEDI_SKEL=m # CONFIG_COMEDI_ISA_DRIVERS is not set CONFIG_COMEDI_PCI_DRIVERS=y CONFIG_COMEDI_8255_PCI=m @@ -5037,19 +5055,19 @@ CONFIG_COMEDI_NI_MIO_CS=m CONFIG_COMEDI_QUATECH_DAQP_CS=m CONFIG_COMEDI_USB_DRIVERS=y CONFIG_COMEDI_DT9812=m +# CONFIG_COMEDI_NI_USB6501 is not set CONFIG_COMEDI_USBDUX=m CONFIG_COMEDI_USBDUXFAST=m CONFIG_COMEDI_USBDUXSIGMA=m CONFIG_COMEDI_VMK80XX=m CONFIG_COMEDI_8255=m -CONFIG_COMEDI_FC=m +CONFIG_COMEDI_KCOMEDILIB=m CONFIG_COMEDI_AMPLC_DIO200=m CONFIG_COMEDI_AMPLC_PC236=m CONFIG_COMEDI_DAS08=m CONFIG_COMEDI_NI_LABPC=m CONFIG_COMEDI_NI_TIO=m # CONFIG_PANEL is not set -CONFIG_R8187SE=m CONFIG_RTL8192U=m CONFIG_RTLLIB=m CONFIG_RTLLIB_CRYPTO_CCMP=m @@ -5059,26 +5077,13 @@ CONFIG_RTL8192E=m CONFIG_R8712U=m CONFIG_R8188EU=m CONFIG_88EU_AP_MODE=y -CONFIG_88EU_P2P=y -CONFIG_R8821AE=m -CONFIG_RTS5139=m -# CONFIG_RTS5139_DEBUG is not set +# CONFIG_R8723AU is not set CONFIG_RTS5208=m -# CONFIG_RTS5208_DEBUG is not set -# CONFIG_TRANZPORT is not set -CONFIG_IDE_PHISON=m CONFIG_LINE6_USB=m # CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set -CONFIG_USB_SERIAL_QUATECH2=m CONFIG_VT6655=m CONFIG_VT6656=m -CONFIG_DX_SEP=m -CONFIG_WLAGS49_H2=m -CONFIG_WLAGS49_H25=m -CONFIG_FB_SM7XX=m -CONFIG_CRYSTALHD=m CONFIG_FB_XGI=m -CONFIG_USB_ENESTORAGE=m CONFIG_BCM_WIMAX=m CONFIG_FT1000=m CONFIG_FT1000_USB=m @@ -5089,15 +5094,11 @@ CONFIG_FT1000_PCMCIA=m # CONFIG_SPEAKUP=m CONFIG_SPEAKUP_SYNTH_ACNTSA=m -# CONFIG_SPEAKUP_SYNTH_ACNTPC is not set CONFIG_SPEAKUP_SYNTH_APOLLO=m CONFIG_SPEAKUP_SYNTH_AUDPTR=m CONFIG_SPEAKUP_SYNTH_BNS=m CONFIG_SPEAKUP_SYNTH_DECTLK=m CONFIG_SPEAKUP_SYNTH_DECEXT=m -# CONFIG_SPEAKUP_SYNTH_DECPC is not set -# CONFIG_SPEAKUP_SYNTH_DTLK is not set -# CONFIG_SPEAKUP_SYNTH_KEYPC is not set CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m @@ -5106,21 +5107,13 @@ CONFIG_SPEAKUP_SYNTH_DUMMY=m CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m CONFIG_STAGING_MEDIA=y -CONFIG_DVB_AS102=m CONFIG_I2C_BCM2048=m CONFIG_DVB_CXD2099=m CONFIG_VIDEO_DT3155=m CONFIG_DT3155_CCIR=y CONFIG_DT3155_STREAMING=y -CONFIG_VIDEO_GO7007=m -CONFIG_VIDEO_GO7007_USB=m -CONFIG_VIDEO_GO7007_LOADER=m -# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set -# CONFIG_USB_MSI3101 is not set CONFIG_VIDEO_V4L2_INT_DEVICE=m CONFIG_VIDEO_TCM825X=m -CONFIG_USB_SN9C102=m -CONFIG_SOLO6X10=m CONFIG_LIRC_STAGING=y CONFIG_LIRC_BT829=m CONFIG_LIRC_IGORPLUGUSB=m @@ -5145,25 +5138,34 @@ CONFIG_WIMAX_GDM72XX_USB=y # CONFIG_WIMAX_GDM72XX_SDIO is not set CONFIG_WIMAX_GDM72XX_USB_PM=y CONFIG_LTE_GDM724X=m -CONFIG_NET_VENDOR_SILICOM=y -CONFIG_SBYPASS=m -CONFIG_BPCTL=m -CONFIG_CED1401=m -CONFIG_DGRP=m CONFIG_FIREWIRE_SERIAL=m CONFIG_FWTTY_MAX_TOTAL_PORTS=64 CONFIG_FWTTY_MAX_CARD_PORTS=32 # CONFIG_MTD_SPINAND_MT29F is not set -# CONFIG_XILLYBUS is not set CONFIG_DGNC=m CONFIG_DGAP=m +# CONFIG_GS_FPGABOOT is not set CONFIG_MIPS_PLATFORM_DEVICES=y CONFIG_LEMOTE_YEELOONG2F=m CONFIG_LEMOTE_LYNLOONG2F=m # +# SOC (System On Chip) specific Drivers +# +# CONFIG_SOC_TI is not set + +# # Hardware Spinlock drivers # + +# +# Clock Source drivers +# +# CONFIG_ATMEL_PIT is not set +# CONFIG_SH_TIMER_CMT is not set +# CONFIG_SH_TIMER_MTU2 is not set +# CONFIG_SH_TIMER_TMU is not set +# CONFIG_EM_TIMER_STI is not set # CONFIG_MAILBOX is not set CONFIG_IOMMU_SUPPORT=y @@ -5176,13 +5178,31 @@ CONFIG_STE_MODEM_RPROC=m # # Rpmsg drivers # -# CONFIG_PM_DEVFREQ is not set + +# +# SOC (System On Chip) specific Drivers +# +CONFIG_PM_DEVFREQ=y + +# +# DEVFREQ Governors +# +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m +# CONFIG_DEVFREQ_GOV_PERFORMANCE is not set +# CONFIG_DEVFREQ_GOV_POWERSAVE is not set +# CONFIG_DEVFREQ_GOV_USERSPACE is not set + +# +# DEVFREQ Drivers +# CONFIG_EXTCON=m # # Extcon Device Drivers # CONFIG_EXTCON_GPIO=m +# CONFIG_EXTCON_RT8973A is not set +# CONFIG_EXTCON_SM5502 is not set CONFIG_MEMORY=y # CONFIG_IIO is not set # CONFIG_VME_BUS is not set @@ -5201,9 +5221,11 @@ CONFIG_FMC_CHARDEV=m # PHY Subsystem # CONFIG_GENERIC_PHY=y -CONFIG_PHY_EXYNOS_MIPI_VIDEO=m CONFIG_BCM_KONA_USB2_PHY=m CONFIG_POWERCAP=y +# CONFIG_MCB is not set +CONFIG_RAS=y +# CONFIG_THUNDERBOLT is not set # # Firmware Drivers @@ -5274,6 +5296,7 @@ CONFIG_QUOTACTL=y CONFIG_AUTOFS4_FS=y CONFIG_FUSE_FS=m CONFIG_CUSE=m +# CONFIG_OVERLAY_FS is not set # # Caches @@ -5315,6 +5338,7 @@ CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y CONFIG_PROC_SYSCTL=y CONFIG_PROC_PAGE_MONITOR=y +CONFIG_KERNFS=y CONFIG_SYSFS=y CONFIG_TMPFS=y CONFIG_TMPFS_POSIX_ACL=y @@ -5414,6 +5438,7 @@ CONFIG_NFSD_V3_ACL=y CONFIG_NFSD_V4=y CONFIG_NFSD_V4_SECURITY_LABEL=y # CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_GRACE_PERIOD=m CONFIG_LOCKD=m CONFIG_LOCKD_V4=y CONFIG_NFS_ACL_SUPPORT=m @@ -5421,10 +5446,11 @@ CONFIG_NFS_COMMON=y CONFIG_SUNRPC=m CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC_BACKCHANNEL=y -CONFIG_SUNRPC_XPRT_RDMA=m CONFIG_SUNRPC_SWAP=y CONFIG_RPCSEC_GSS_KRB5=m CONFIG_SUNRPC_DEBUG=y +CONFIG_SUNRPC_XPRT_RDMA_CLIENT=m +CONFIG_SUNRPC_XPRT_RDMA_SERVER=m CONFIG_CEPH_FS=m CONFIG_CEPH_FSCACHE=y CONFIG_CEPH_FS_POSIX_ACL=y @@ -5520,7 +5546,7 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y # printk and dmesg options # CONFIG_PRINTK_TIME=y -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_BOOT_PRINTK_DELAY is not set CONFIG_DYNAMIC_DEBUG=y @@ -5571,6 +5597,7 @@ CONFIG_PANIC_ON_OOPS_VALUE=0 CONFIG_PANIC_TIMEOUT=0 CONFIG_SCHED_DEBUG=y CONFIG_SCHEDSTATS=y +# CONFIG_SCHED_STACK_END_CHECK is not set CONFIG_TIMER_STATS=y # CONFIG_DEBUG_PREEMPT is not set @@ -5578,7 +5605,6 @@ CONFIG_TIMER_STATS=y # Lock Debugging (spinlocks, mutexes, etc...) # # CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_MUTEXES is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set @@ -5587,10 +5613,11 @@ CONFIG_TIMER_STATS=y # CONFIG_LOCK_STAT is not set # CONFIG_DEBUG_ATOMIC_SLEEP is not set # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set CONFIG_STACKTRACE=y # CONFIG_DEBUG_KOBJECT is not set -# CONFIG_DEBUG_WRITECOUNT is not set # CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_SG is not set # CONFIG_DEBUG_NOTIFIERS is not set # CONFIG_DEBUG_CREDENTIALS is not set @@ -5598,8 +5625,8 @@ CONFIG_STACKTRACE=y # # RCU Debugging # -# CONFIG_PROVE_RCU_DELAY is not set # CONFIG_SPARSE_RCU_POINTER is not set +# CONFIG_TORTURE_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set CONFIG_RCU_CPU_STALL_TIMEOUT=60 # CONFIG_RCU_CPU_STALL_VERBOSE is not set @@ -5611,7 +5638,6 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60 CONFIG_NOP_TRACER=y CONFIG_HAVE_FUNCTION_TRACER=y CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y CONFIG_HAVE_DYNAMIC_FTRACE=y CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y CONFIG_HAVE_SYSCALL_TRACEPOINTS=y @@ -5645,6 +5671,7 @@ CONFIG_DYNAMIC_FTRACE=y CONFIG_FUNCTION_PROFILER=y CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_FTRACE_STARTUP_TEST is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set @@ -5662,14 +5689,17 @@ CONFIG_PERCPU_TEST=m CONFIG_ASYNC_RAID6_TEST=m # CONFIG_TEST_STRING_HELPERS is not set CONFIG_TEST_KSTRTOX=m +# CONFIG_TEST_RHASHTABLE is not set # CONFIG_DMA_API_DEBUG is not set -# CONFIG_TEST_MODULE is not set +# CONFIG_TEST_LKM is not set # CONFIG_TEST_USER_COPY is not set +# CONFIG_TEST_BPF is not set +# CONFIG_TEST_FIRMWARE is not set +# CONFIG_TEST_UDELAY is not set # CONFIG_SAMPLES is not set CONFIG_HAVE_ARCH_KGDB=y # CONFIG_KGDB is not set CONFIG_EARLY_PRINTK=y -# CONFIG_EARLY_PRINTK_8250 is not set # CONFIG_CMDLINE_BOOL is not set # CONFIG_RUNTIME_DEBUG is not set # CONFIG_DEBUG_ZBOOT is not set @@ -5694,7 +5724,10 @@ CONFIG_SECURITY_PATH=y # CONFIG_SECURITY_APPARMOR is not set CONFIG_SECURITY_YAMA=y CONFIG_SECURITY_YAMA_STACKED=y +CONFIG_INTEGRITY=y +# CONFIG_INTEGRITY_SIGNATURE is not set # CONFIG_IMA is not set +# CONFIG_EVM is not set # CONFIG_DEFAULT_SECURITY_YAMA is not set CONFIG_DEFAULT_SECURITY_DAC=y CONFIG_DEFAULT_SECURITY="" @@ -5715,7 +5748,7 @@ CONFIG_CRYPTO_AEAD=m CONFIG_CRYPTO_AEAD2=y CONFIG_CRYPTO_BLKCIPHER=m CONFIG_CRYPTO_BLKCIPHER2=y -CONFIG_CRYPTO_HASH=m +CONFIG_CRYPTO_HASH=y CONFIG_CRYPTO_HASH2=y CONFIG_CRYPTO_RNG=m CONFIG_CRYPTO_RNG2=y @@ -5729,6 +5762,7 @@ CONFIG_CRYPTO_GF128MUL=m CONFIG_CRYPTO_NULL=m CONFIG_CRYPTO_WORKQUEUE=y CONFIG_CRYPTO_CRYPTD=m +# CONFIG_CRYPTO_MCRYPTD is not set CONFIG_CRYPTO_AUTHENC=m CONFIG_CRYPTO_TEST=m @@ -5763,7 +5797,7 @@ CONFIG_CRYPTO_VMAC=m # CONFIG_CRYPTO_CRC32C=m CONFIG_CRYPTO_CRC32=m -CONFIG_CRYPTO_CRCT10DIF=m +CONFIG_CRYPTO_CRCT10DIF=y CONFIG_CRYPTO_GHASH=m CONFIG_CRYPTO_MD4=m CONFIG_CRYPTO_MD5=m @@ -5813,6 +5847,7 @@ CONFIG_CRYPTO_LZ4HC=m # Random Number Generation # CONFIG_CRYPTO_ANSI_CPRNG=m +# CONFIG_CRYPTO_DRBG_MENU is not set CONFIG_CRYPTO_USER_API=m CONFIG_CRYPTO_USER_API_HASH=m CONFIG_CRYPTO_USER_API_SKCIPHER=m @@ -5822,6 +5857,7 @@ CONFIG_ASYMMETRIC_KEY_TYPE=m CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=m CONFIG_PUBLIC_KEY_ALGO_RSA=m CONFIG_X509_CERTIFICATE_PARSER=m +# CONFIG_PKCS7_MESSAGE_PARSER is not set CONFIG_BINARY_PRINTF=y # @@ -5835,7 +5871,7 @@ CONFIG_GENERIC_PCI_IOMAP=y CONFIG_GENERIC_IO=y CONFIG_CRC_CCITT=m CONFIG_CRC16=m -CONFIG_CRC_T10DIF=m +CONFIG_CRC_T10DIF=y CONFIG_CRC_ITU_T=m CONFIG_CRC32=y # CONFIG_CRC32_SELFTEST is not set @@ -5846,6 +5882,7 @@ CONFIG_CRC32_SLICEBY8=y CONFIG_CRC7=m CONFIG_LIBCRC32C=m CONFIG_CRC8=m +# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set # CONFIG_RANDOM32_SELFTEST is not set CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y @@ -5881,12 +5918,15 @@ CONFIG_TEXTSEARCH_KMP=m CONFIG_TEXTSEARCH_BM=m CONFIG_TEXTSEARCH_FSM=m CONFIG_BTREE=y +CONFIG_INTERVAL_TREE=y CONFIG_ASSOCIATIVE_ARRAY=y CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y +CONFIG_HAS_IOPORT_MAP=y CONFIG_HAS_DMA=y CONFIG_CHECK_SIGNATURE=y CONFIG_DQL=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set CONFIG_NLATTR=y CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y CONFIG_LRU_CACHE=m @@ -5905,8 +5945,10 @@ CONFIG_FONT_8x16=y # CONFIG_FONT_PEARL_8x8 is not set # CONFIG_FONT_ACORN_8x8 is not set # CONFIG_FONT_MINI_4x6 is not set +# CONFIG_FONT_6x10 is not set # CONFIG_FONT_SUN8x16 is not set # CONFIG_FONT_SUN12x22 is not set # CONFIG_FONT_10x18 is not set CONFIG_FONT_AUTOSELECT=y +# CONFIG_ARCH_HAS_SG_CHAIN is not set CONFIG_VIRTUALIZATION=y diff --git a/kernels/linux-libre-rt/config.x86_64 b/kernels/linux-libre-rt/config.x86_64 index 850b24222..9e0b9add8 100644 --- a/kernels/linux-libre-rt/config.x86_64 +++ b/kernels/linux-libre-rt/config.x86_64 @@ -1,11 +1,12 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 3.14.23-gnu-rt20-1-rt Kernel Configuration +# Linux/x86 3.18.7-gnu-rt1-1-rt Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y CONFIG_X86=y CONFIG_INSTRUCTION_DECODER=y +CONFIG_PERF_EVENTS_INTEL_UNCORE=y CONFIG_OUTPUT_FORMAT="elf64-x86-64" CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" CONFIG_LOCKDEP_SUPPORT=y @@ -24,7 +25,6 @@ CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_ARCH_HAS_CPU_RELAX=y CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_ARCH_HAS_CPU_AUTOPROBE=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y @@ -41,6 +41,7 @@ CONFIG_X86_64_SMP=y CONFIG_X86_HT=y CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11" CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_FIX_EARLYCON_MEM=y CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" CONFIG_IRQ_WORK=y CONFIG_BUILDTIME_EXTABLE_SORT=y @@ -71,14 +72,18 @@ CONFIG_SYSVIPC=y CONFIG_SYSVIPC_SYSCTL=y CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_FHANDLE=y +CONFIG_USELIB=y # CONFIG_AUDIT is not set +CONFIG_HAVE_ARCH_AUDITSYSCALL=y # # IRQ subsystem # CONFIG_GENERIC_IRQ_PROBE=y CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_LEGACY_ALLOC_HWIRQ=y CONFIG_GENERIC_PENDING_IRQ=y CONFIG_IRQ_DOMAIN=y # CONFIG_IRQ_DOMAIN_DEBUG is not set @@ -86,6 +91,7 @@ CONFIG_IRQ_FORCED_THREADING=y CONFIG_SPARSE_IRQ=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_ARCH_CLOCKSOURCE_DATA=y +CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y CONFIG_GENERIC_TIME_VSYSCALL=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y @@ -119,8 +125,10 @@ CONFIG_TASK_IO_ACCOUNTING=y # # RCU Subsystem # +# CONFIG_TREE_RCU is not set CONFIG_TREE_PREEMPT_RCU=y CONFIG_PREEMPT_RCU=y +# CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y # CONFIG_RCU_USER_QS is not set CONFIG_RCU_FANOUT=64 @@ -129,14 +137,14 @@ CONFIG_RCU_FANOUT_LEAF=16 # CONFIG_TREE_RCU_TRACE is not set # CONFIG_RCU_BOOST is not set # CONFIG_RCU_NOCB_CPU is not set +CONFIG_BUILD_BIN2C=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y CONFIG_LOG_BUF_SHIFT=19 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y CONFIG_ARCH_SUPPORTS_INT128=y -CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y -CONFIG_ARCH_USES_NUMA_PROT_NONE=y CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y CONFIG_NUMA_BALANCING=y CONFIG_CGROUPS=y @@ -166,7 +174,6 @@ CONFIG_IPC_NS=y CONFIG_PID_NS=y CONFIG_NET_NS=y CONFIG_SCHED_AUTOGROUP=y -CONFIG_MM_OWNER=y # CONFIG_SYSFS_DEPRECATED is not set CONFIG_RELAY=y CONFIG_BLK_DEV_INITRD=y @@ -183,8 +190,11 @@ CONFIG_ANON_INODES=y CONFIG_HAVE_UID16=y CONFIG_SYSCTL_EXCEPTION_TRACE=y CONFIG_HAVE_PCSPKR_PLATFORM=y +CONFIG_BPF=y # CONFIG_EXPERT is not set CONFIG_UID16=y +CONFIG_SGETMASK_SYSCALL=y +CONFIG_SYSFS_SYSCALL=y # CONFIG_SYSCTL_SYSCALL is not set CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y @@ -198,8 +208,10 @@ CONFIG_EPOLL=y CONFIG_SIGNALFD=y CONFIG_TIMERFD=y CONFIG_EVENTFD=y +# CONFIG_BPF_SYSCALL is not set CONFIG_SHMEM=y CONFIG_AIO=y +CONFIG_ADVISE_SYSCALLS=y CONFIG_PCI_QUIRKS=y # CONFIG_EMBEDDED is not set CONFIG_HAVE_PERF_EVENTS=y @@ -212,6 +224,7 @@ CONFIG_PERF_EVENTS=y CONFIG_VM_EVENT_COUNTERS=y CONFIG_SLUB_DEBUG=y # CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set CONFIG_SLUB=y CONFIG_SLUB_CPU_PARTIAL=y # CONFIG_SYSTEM_TRUSTED_KEYRING is not set @@ -235,6 +248,7 @@ CONFIG_HAVE_OPTPROBES=y CONFIG_HAVE_KPROBES_ON_FTRACE=y CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_DMA_ATTRS=y +CONFIG_HAVE_DMA_CONTIGUOUS=y CONFIG_GENERIC_SMP_IDLE_THREAD=y CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y CONFIG_HAVE_CLK=y @@ -284,6 +298,7 @@ CONFIG_MODULE_FORCE_UNLOAD=y CONFIG_MODVERSIONS=y # CONFIG_MODULE_SRCVERSION_ALL is not set # CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set CONFIG_STOP_MACHINE=y CONFIG_BLOCK=y CONFIG_BLK_DEV_BSG=y @@ -333,6 +348,8 @@ CONFIG_PREEMPT_NOTIFIERS=y CONFIG_PADATA=y CONFIG_ASN1=m CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_ARCH_USE_QUEUE_RWLOCK=y +CONFIG_QUEUE_RWLOCK=y CONFIG_FREEZER=y # @@ -340,10 +357,12 @@ CONFIG_FREEZER=y # CONFIG_ZONE_DMA=y CONFIG_SMP=y +CONFIG_X86_FEATURE_NAMES=y CONFIG_X86_X2APIC=y CONFIG_X86_MPPARSE=y # CONFIG_X86_EXTENDED_PLATFORM is not set CONFIG_X86_INTEL_LPSS=y +# CONFIG_IOSF_MBI is not set CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y CONFIG_SCHED_OMIT_FRAME_POINTER=y CONFIG_HYPERVISOR_GUEST=y @@ -352,7 +371,6 @@ CONFIG_PARAVIRT=y # CONFIG_PARAVIRT_SPINLOCKS is not set CONFIG_XEN=y CONFIG_XEN_DOM0=y -CONFIG_XEN_PRIVILEGED_GUEST=y CONFIG_XEN_PVHVM=y CONFIG_XEN_MAX_DOMAIN_MEMORY=500 CONFIG_XEN_SAVE_RESTORE=y @@ -399,6 +417,7 @@ CONFIG_PREEMPT_RT_BASE=y # CONFIG_PREEMPT_RTB is not set CONFIG_PREEMPT_RT_FULL=y CONFIG_PREEMPT_COUNT=y +CONFIG_X86_UP_APIC_MSI=y CONFIG_X86_LOCAL_APIC=y CONFIG_X86_IO_APIC=y CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y @@ -453,6 +472,7 @@ CONFIG_MEMORY_HOTREMOVE=y CONFIG_PAGEFLAGS_EXTENDED=y CONFIG_SPLIT_PTLOCK_CPUS=4 CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y +CONFIG_MEMORY_BALLOON=y CONFIG_BALLOON_COMPACTION=y CONFIG_COMPACTION=y CONFIG_MIGRATION=y @@ -467,14 +487,15 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y CONFIG_MEMORY_FAILURE=y CONFIG_HWPOISON_INJECT=m -CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CLEANCACHE=y CONFIG_FRONTSWAP=y # CONFIG_CMA is not set -CONFIG_ZBUD=y CONFIG_ZSWAP=y +CONFIG_ZPOOL=y +CONFIG_ZBUD=y CONFIG_ZSMALLOC=y # CONFIG_PGTABLE_MAPPING is not set +CONFIG_GENERIC_EARLY_IOREMAP=y CONFIG_X86_CHECK_BIOS_CORRUPTION=y CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y CONFIG_X86_RESERVE_LOW=64 @@ -488,6 +509,7 @@ CONFIG_ARCH_RANDOM=y CONFIG_X86_SMAP=y CONFIG_EFI=y CONFIG_EFI_STUB=y +# CONFIG_EFI_MIXED is not set CONFIG_SECCOMP=y # CONFIG_HZ_100 is not set # CONFIG_HZ_250 is not set @@ -500,6 +522,7 @@ CONFIG_KEXEC=y CONFIG_KEXEC_JUMP=y CONFIG_PHYSICAL_START=0x1000000 CONFIG_RELOCATABLE=y +# CONFIG_RANDOMIZE_BASE is not set CONFIG_PHYSICAL_ALIGN=0x1000000 CONFIG_HOTPLUG_CPU=y # CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set @@ -537,8 +560,9 @@ CONFIG_PM_TRACE_RTC=y CONFIG_PM_CLK=y # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_ACPI=y +CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y +CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y CONFIG_ACPI_SLEEP=y -# CONFIG_ACPI_PROCFS is not set # CONFIG_ACPI_PROCFS_POWER is not set CONFIG_ACPI_EC_DEBUGFS=m CONFIG_ACPI_AC=m @@ -564,6 +588,9 @@ CONFIG_ACPI_SBS=m CONFIG_ACPI_HED=y CONFIG_ACPI_CUSTOM_METHOD=m CONFIG_ACPI_BGRT=y +# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set +CONFIG_HAVE_ACPI_APEI=y +CONFIG_HAVE_ACPI_APEI_NMI=y CONFIG_ACPI_APEI=y CONFIG_ACPI_APEI_GHES=y CONFIG_ACPI_APEI_PCIEAER=y @@ -611,7 +638,6 @@ CONFIG_X86_SPEEDSTEP_LIB=m # CPU Idle # CONFIG_CPU_IDLE=y -# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set CONFIG_CPU_IDLE_GOV_LADDER=y CONFIG_CPU_IDLE_GOV_MENU=y # CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set @@ -720,6 +746,7 @@ CONFIG_COMPAT_FOR_U64_ALIGNMENT=y CONFIG_SYSVIPC_COMPAT=y CONFIG_KEYS_COMPAT=y CONFIG_X86_DEV_DMA_OPS=y +CONFIG_PMC_ATOM=y CONFIG_NET=y CONFIG_COMPAT_NETLINK_MESSAGES=y @@ -759,6 +786,9 @@ CONFIG_IP_PIMSM_V1=y CONFIG_IP_PIMSM_V2=y CONFIG_SYN_COOKIES=y CONFIG_NET_IPVTI=m +CONFIG_NET_UDP_TUNNEL=m +# CONFIG_NET_FOU is not set +# CONFIG_GENEVE is not set CONFIG_INET_AH=m CONFIG_INET_ESP=m CONFIG_INET_IPCOMP=m @@ -784,6 +814,7 @@ CONFIG_TCP_CONG_LP=m CONFIG_TCP_CONG_VENO=m CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_CONG_ILLINOIS=m +# CONFIG_TCP_CONG_DCTCP is not set CONFIG_DEFAULT_CUBIC=y # CONFIG_DEFAULT_RENO is not set CONFIG_DEFAULT_TCP_CONG="cubic" @@ -813,11 +844,12 @@ CONFIG_IPV6_SUBTREES=y # CONFIG_IPV6_MROUTE is not set CONFIG_NETLABEL=y CONFIG_NETWORK_SECMARK=y +CONFIG_NET_PTP_CLASSIFY=y CONFIG_NETWORK_PHY_TIMESTAMPING=y CONFIG_NETFILTER=y # CONFIG_NETFILTER_DEBUG is not set CONFIG_NETFILTER_ADVANCED=y -CONFIG_BRIDGE_NETFILTER=y +CONFIG_BRIDGE_NETFILTER=m # # Core Netfilter Configuration @@ -827,6 +859,7 @@ CONFIG_NETFILTER_NETLINK_ACCT=m CONFIG_NETFILTER_NETLINK_QUEUE=m CONFIG_NETFILTER_NETLINK_LOG=m CONFIG_NF_CONNTRACK=m +CONFIG_NF_LOG_COMMON=m CONFIG_NF_CONNTRACK_MARK=y CONFIG_NF_CONNTRACK_SECMARK=y CONFIG_NF_CONNTRACK_ZONES=y @@ -875,6 +908,7 @@ CONFIG_NFT_HASH=m CONFIG_NFT_COUNTER=m CONFIG_NFT_LOG=m CONFIG_NFT_LIMIT=m +# CONFIG_NFT_MASQ is not set CONFIG_NFT_NAT=m CONFIG_NFT_QUEUE=m CONFIG_NFT_REJECT=m @@ -904,6 +938,7 @@ CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m CONFIG_NETFILTER_XT_TARGET_LED=m CONFIG_NETFILTER_XT_TARGET_LOG=m CONFIG_NETFILTER_XT_TARGET_MARK=m +# CONFIG_NETFILTER_XT_NAT is not set CONFIG_NETFILTER_XT_TARGET_NETMAP=m CONFIG_NETFILTER_XT_TARGET_NFLOG=m CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m @@ -972,9 +1007,11 @@ CONFIG_IP_SET_BITMAP_IP=m CONFIG_IP_SET_BITMAP_IPMAC=m CONFIG_IP_SET_BITMAP_PORT=m CONFIG_IP_SET_HASH_IP=m +# CONFIG_IP_SET_HASH_IPMARK is not set CONFIG_IP_SET_HASH_IPPORT=m CONFIG_IP_SET_HASH_IPPORTIP=m CONFIG_IP_SET_HASH_IPPORTNET=m +# CONFIG_IP_SET_HASH_MAC is not set CONFIG_IP_SET_HASH_NETPORTNET=m CONFIG_IP_SET_HASH_NET=m CONFIG_IP_SET_HASH_NETNET=m @@ -1003,6 +1040,7 @@ CONFIG_IP_VS_RR=m CONFIG_IP_VS_WRR=m CONFIG_IP_VS_LC=m CONFIG_IP_VS_WLC=m +# CONFIG_IP_VS_FO is not set CONFIG_IP_VS_LBLC=m CONFIG_IP_VS_LBLCR=m CONFIG_IP_VS_DH=m @@ -1028,11 +1066,20 @@ CONFIG_IP_VS_PE_SIP=m CONFIG_NF_DEFRAG_IPV4=m CONFIG_NF_CONNTRACK_IPV4=m # CONFIG_NF_CONNTRACK_PROC_COMPAT is not set +# CONFIG_NF_LOG_ARP is not set +CONFIG_NF_LOG_IPV4=m CONFIG_NF_TABLES_IPV4=m CONFIG_NFT_CHAIN_ROUTE_IPV4=m -CONFIG_NFT_CHAIN_NAT_IPV4=m +CONFIG_NF_REJECT_IPV4=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NF_TABLES_ARP=m +CONFIG_NF_NAT_IPV4=m +CONFIG_NFT_CHAIN_NAT_IPV4=m +# CONFIG_NF_NAT_MASQUERADE_IPV4 is not set +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_MATCH_AH=m CONFIG_IP_NF_MATCH_ECN=m @@ -1041,15 +1088,7 @@ CONFIG_IP_NF_MATCH_TTL=m CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_TARGET_REJECT=m CONFIG_IP_NF_TARGET_SYNPROXY=m -CONFIG_IP_NF_TARGET_ULOG=m -CONFIG_NF_NAT_IPV4=m -CONFIG_IP_NF_TARGET_MASQUERADE=m -CONFIG_IP_NF_TARGET_NETMAP=m -CONFIG_IP_NF_TARGET_REDIRECT=m -CONFIG_NF_NAT_SNMP_BASIC=m -CONFIG_NF_NAT_PROTO_GRE=m -CONFIG_NF_NAT_PPTP=m -CONFIG_NF_NAT_H323=m +# CONFIG_IP_NF_NAT is not set CONFIG_IP_NF_MANGLE=m CONFIG_IP_NF_TARGET_CLUSTERIP=m CONFIG_IP_NF_TARGET_ECN=m @@ -1067,8 +1106,12 @@ CONFIG_NF_DEFRAG_IPV6=m CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_TABLES_IPV6=m CONFIG_NFT_CHAIN_ROUTE_IPV6=m -CONFIG_NFT_CHAIN_NAT_IPV6=m +CONFIG_NF_REJECT_IPV6=m CONFIG_NFT_REJECT_IPV6=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_NAT_IPV6=m +CONFIG_NFT_CHAIN_NAT_IPV6=m +# CONFIG_NF_NAT_MASQUERADE_IPV6 is not set CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_MATCH_AH=m CONFIG_IP6_NF_MATCH_EUI64=m @@ -1086,10 +1129,11 @@ CONFIG_IP6_NF_TARGET_SYNPROXY=m CONFIG_IP6_NF_MANGLE=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m -CONFIG_NF_NAT_IPV6=m -CONFIG_IP6_NF_TARGET_MASQUERADE=m -CONFIG_IP6_NF_TARGET_NPT=m +# CONFIG_IP6_NF_NAT is not set CONFIG_NF_TABLES_BRIDGE=m +# CONFIG_NFT_BRIDGE_META is not set +# CONFIG_NFT_BRIDGE_REJECT is not set +# CONFIG_NF_LOG_BRIDGE is not set CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_EBT_BROUTE=m CONFIG_BRIDGE_EBT_T_FILTER=m @@ -1110,7 +1154,6 @@ CONFIG_BRIDGE_EBT_MARK_T=m CONFIG_BRIDGE_EBT_REDIRECT=m CONFIG_BRIDGE_EBT_SNAT=m CONFIG_BRIDGE_EBT_LOG=m -CONFIG_BRIDGE_EBT_ULOG=m CONFIG_BRIDGE_EBT_NFLOG=m CONFIG_IP_DCCP=m CONFIG_INET_DCCP_DIAG=m @@ -1171,9 +1214,8 @@ CONFIG_LLC2=m # CONFIG_X25 is not set # CONFIG_LAPB is not set CONFIG_PHONET=m +# CONFIG_6LOWPAN is not set CONFIG_IEEE802154=m -CONFIG_IEEE802154_6LOWPAN=m -CONFIG_6LOWPAN_IPHC=m CONFIG_MAC802154=m CONFIG_NET_SCHED=y @@ -1242,6 +1284,7 @@ CONFIG_BATMAN_ADV=m CONFIG_BATMAN_ADV_BLA=y CONFIG_BATMAN_ADV_DAT=y CONFIG_BATMAN_ADV_NC=y +# CONFIG_BATMAN_ADV_MCAST is not set # CONFIG_BATMAN_ADV_DEBUG is not set CONFIG_OPENVSWITCH=m CONFIG_OPENVSWITCH_GRE=y @@ -1255,7 +1298,7 @@ CONFIG_HSR=m CONFIG_RPS=y CONFIG_RFS_ACCEL=y CONFIG_XPS=y -CONFIG_CGROUP_NET_PRIO=m +# CONFIG_CGROUP_NET_PRIO is not set CONFIG_CGROUP_NET_CLASSID=y CONFIG_NET_RX_BUSY_POLL=y CONFIG_BQL=y @@ -1440,6 +1483,7 @@ CONFIG_NFC_HCI=m # CONFIG_NFC_PN533=m CONFIG_NFC_WILINK=m +# CONFIG_NFC_TRF7970A is not set CONFIG_NFC_MEI_PHY=m CONFIG_NFC_SIM=m CONFIG_NFC_PORT100=m @@ -1449,6 +1493,8 @@ CONFIG_NFC_MICROREAD=m CONFIG_NFC_MICROREAD_MEI=m CONFIG_NFC_MRVL=m CONFIG_NFC_MRVL_USB=m +# CONFIG_NFC_ST21NFCA is not set +# CONFIG_NFC_ST21NFCB is not set CONFIG_HAVE_BPF_JIT=y # @@ -1458,6 +1504,7 @@ CONFIG_HAVE_BPF_JIT=y # # Generic Driver Options # +CONFIG_UEVENT_HELPER=y CONFIG_UEVENT_HELPER_PATH="" CONFIG_DEVTMPFS=y # CONFIG_DEVTMPFS_MOUNT is not set @@ -1466,16 +1513,20 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_FW_LOADER=y # CONFIG_FIRMWARE_IN_KERNEL is not set CONFIG_EXTRA_FIRMWARE="" -# CONFIG_FW_LOADER_USER_HELPER is not set +# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set +CONFIG_ALLOW_DEV_COREDUMP=y # CONFIG_DEBUG_DRIVER is not set # CONFIG_DEBUG_DEVRES is not set CONFIG_SYS_HYPERVISOR=y # CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_GENERIC_CPU_AUTOPROBE=y CONFIG_REGMAP=y CONFIG_REGMAP_I2C=m +CONFIG_REGMAP_SPI=m CONFIG_REGMAP_MMIO=m CONFIG_REGMAP_IRQ=y CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_FENCE_TRACE is not set # # Bus devices @@ -1537,9 +1588,6 @@ CONFIG_MTD_ABSENT=m # CONFIG_MTD_COMPLEX_MAPPINGS=y # CONFIG_MTD_PHYSMAP is not set -CONFIG_MTD_SC520CDP=m -CONFIG_MTD_NETSC520=m -CONFIG_MTD_TS5500=m # CONFIG_MTD_SBC_GXX is not set # CONFIG_MTD_AMD76XROM is not set # CONFIG_MTD_ICHXROM is not set @@ -1562,7 +1610,6 @@ CONFIG_MTD_PMC551=m # CONFIG_MTD_PMC551_BUGFIX is not set # CONFIG_MTD_PMC551_DEBUG is not set # CONFIG_MTD_DATAFLASH is not set -# CONFIG_MTD_M25P80 is not set # CONFIG_MTD_SST25L is not set # CONFIG_MTD_SLRAM is not set CONFIG_MTD_PHRAM=m @@ -1584,6 +1631,7 @@ CONFIG_MTD_NAND=m CONFIG_MTD_SM_COMMON=m # CONFIG_MTD_NAND_DENALI is not set CONFIG_MTD_NAND_GPIO=m +# CONFIG_MTD_NAND_OMAP_BCH_BUILD is not set CONFIG_MTD_NAND_IDS=m CONFIG_MTD_NAND_RICOH=m CONFIG_MTD_NAND_DISKONCHIP=m @@ -1597,15 +1645,17 @@ CONFIG_MTD_NAND_NANDSIM=m # CONFIG_MTD_ONENAND is not set # -# LPDDR flash memory drivers +# LPDDR & LPDDR2 PCM memory drivers # CONFIG_MTD_LPDDR=m CONFIG_MTD_QINFO_PROBE=m +# CONFIG_MTD_SPI_NOR is not set CONFIG_MTD_UBI=m CONFIG_MTD_UBI_WL_THRESHOLD=4096 CONFIG_MTD_UBI_BEB_LIMIT=20 # CONFIG_MTD_UBI_FASTMAP is not set # CONFIG_MTD_UBI_GLUEBI is not set +# CONFIG_MTD_UBI_BLOCK is not set CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y CONFIG_PARPORT=m CONFIG_PARPORT_PC=m @@ -1630,6 +1680,7 @@ CONFIG_BLK_DEV_FD=m # CONFIG_PARIDE is not set CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m CONFIG_ZRAM=m +# CONFIG_ZRAM_LZ4_COMPRESS is not set # CONFIG_ZRAM_DEBUG is not set CONFIG_BLK_CPQ_CISS_DA=m # CONFIG_CISS_SCSI_TAPE is not set @@ -1668,7 +1719,6 @@ CONFIG_SENSORS_LIS3LV02D=m CONFIG_AD525X_DPOT=m CONFIG_AD525X_DPOT_I2C=m # CONFIG_AD525X_DPOT_SPI is not set -# CONFIG_ATMEL_PWM is not set # CONFIG_DUMMY_IRQ is not set # CONFIG_IBM_ASM is not set CONFIG_HWLAT_DETECTOR=m @@ -1677,11 +1727,7 @@ CONFIG_SGI_IOC4=m CONFIG_TIFM_CORE=m CONFIG_TIFM_7XX1=m CONFIG_ICS932S401=m -# CONFIG_ATMEL_SSC is not set CONFIG_ENCLOSURE_SERVICES=m -CONFIG_CS5535_MFGPT=m -CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7 -CONFIG_CS5535_CLOCK_EVENT_SRC=m CONFIG_HP_ILO=m CONFIG_APDS9802ALS=m CONFIG_ISL29003=m @@ -1697,7 +1743,6 @@ CONFIG_VMWARE_BALLOON=m CONFIG_BMP085=y CONFIG_BMP085_I2C=m # CONFIG_BMP085_SPI is not set -CONFIG_PCH_PHUB=m CONFIG_USB_SWITCH_FSA9480=m # CONFIG_LATTICE_ECP3_CONFIG is not set # CONFIG_SRAM is not set @@ -1729,18 +1774,25 @@ CONFIG_SENSORS_LIS3_I2C=m CONFIG_ALTERA_STAPL=m CONFIG_INTEL_MEI=m CONFIG_INTEL_MEI_ME=m +# CONFIG_INTEL_MEI_TXE is not set CONFIG_VMWARE_VMCI=m # +# Intel MIC Bus Driver +# +# CONFIG_INTEL_MIC_BUS is not set + +# # Intel MIC Host Driver # -CONFIG_INTEL_MIC_HOST=m # # Intel MIC Card Driver # -CONFIG_INTEL_MIC_CARD=m CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 +CONFIG_ECHO=m +# CONFIG_CXL_BASE is not set CONFIG_HAVE_IDE=y # CONFIG_IDE is not set @@ -1751,8 +1803,8 @@ CONFIG_SCSI_MOD=m CONFIG_RAID_ATTRS=m CONFIG_SCSI=m CONFIG_SCSI_DMA=y -CONFIG_SCSI_TGT=m CONFIG_SCSI_NETLINK=y +# CONFIG_SCSI_MQ_DEFAULT is not set CONFIG_SCSI_PROC_FS=y # @@ -1766,7 +1818,6 @@ CONFIG_BLK_DEV_SR_VENDOR=y CONFIG_CHR_DEV_SG=m CONFIG_CHR_DEV_SCH=m CONFIG_SCSI_ENCLOSURE=m -CONFIG_SCSI_MULTI_LUN=y # CONFIG_SCSI_CONSTANTS is not set # CONFIG_SCSI_LOGGING is not set CONFIG_SCSI_SCAN_ASYNC=y @@ -1776,14 +1827,12 @@ CONFIG_SCSI_SCAN_ASYNC=y # CONFIG_SCSI_SPI_ATTRS=m CONFIG_SCSI_FC_ATTRS=m -# CONFIG_SCSI_FC_TGT_ATTRS is not set CONFIG_SCSI_ISCSI_ATTRS=m CONFIG_SCSI_SAS_ATTRS=m CONFIG_SCSI_SAS_LIBSAS=m CONFIG_SCSI_SAS_ATA=y CONFIG_SCSI_SAS_HOST_SMP=y CONFIG_SCSI_SRP_ATTRS=m -CONFIG_SCSI_SRP_TGT_ATTRS=y CONFIG_SCSI_LOWLEVEL=y CONFIG_ISCSI_TCP=m CONFIG_ISCSI_BOOT_SYSFS=m @@ -1838,6 +1887,7 @@ CONFIG_SCSI_HPTIOP=m CONFIG_SCSI_BUSLOGIC=m CONFIG_SCSI_FLASHPOINT=y CONFIG_VMWARE_PVSCSI=m +# CONFIG_XEN_SCSI_FRONTEND is not set CONFIG_HYPERV_STORAGE=m CONFIG_LIBFC=m CONFIG_LIBFCOE=m @@ -1869,7 +1919,6 @@ CONFIG_SCSI_IPR=m # CONFIG_SCSI_IPR_DUMP is not set CONFIG_SCSI_QLOGIC_1280=m CONFIG_SCSI_QLA_FC=m -CONFIG_TCM_QLA2XXX=m CONFIG_SCSI_QLA_ISCSI=m CONFIG_SCSI_LPFC=m # CONFIG_SCSI_LPFC_DEBUG_FS is not set @@ -1878,7 +1927,6 @@ CONFIG_SCSI_DC390T=m # CONFIG_SCSI_DEBUG is not set CONFIG_SCSI_PMCRAID=m CONFIG_SCSI_PM8001=m -CONFIG_SCSI_SRP=m CONFIG_SCSI_BFA_FC=m CONFIG_SCSI_VIRTIO=m CONFIG_SCSI_CHELSIO_FCOE=m @@ -1925,11 +1973,9 @@ CONFIG_ATA_BMDMA=y # SATA SFF controllers with BMDMA # CONFIG_ATA_PIIX=m -CONFIG_SATA_HIGHBANK=m CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PROMISE=m -CONFIG_SATA_RCAR=m CONFIG_SATA_SIL=m CONFIG_SATA_SIS=m CONFIG_SATA_SVW=m @@ -1942,14 +1988,10 @@ CONFIG_SATA_VITESSE=m # CONFIG_PATA_ALI=m CONFIG_PATA_AMD=m -CONFIG_PATA_ARASAN_CF=m CONFIG_PATA_ARTOP=m CONFIG_PATA_ATIIXP=m CONFIG_PATA_ATP867X=m CONFIG_PATA_CMD64X=m -CONFIG_PATA_CS5520=m -CONFIG_PATA_CS5530=m -CONFIG_PATA_CS5536=m CONFIG_PATA_CYPRESS=m CONFIG_PATA_EFAR=m CONFIG_PATA_HPT366=m @@ -1970,7 +2012,6 @@ CONFIG_PATA_PDC2027X=m CONFIG_PATA_PDC_OLD=m CONFIG_PATA_RADISYS=m CONFIG_PATA_RDC=m -CONFIG_PATA_SC1200=m CONFIG_PATA_SCH=m CONFIG_PATA_SERVERWORKS=m CONFIG_PATA_SIL680=m @@ -2018,6 +2059,7 @@ CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_CACHE=m CONFIG_DM_CACHE_MQ=m CONFIG_DM_CACHE_CLEANER=m +# CONFIG_DM_ERA is not set CONFIG_DM_MIRROR=m CONFIG_DM_LOG_USERSPACE=m CONFIG_DM_RAID=m @@ -2034,6 +2076,7 @@ CONFIG_TARGET_CORE=m CONFIG_TCM_IBLOCK=m CONFIG_TCM_FILEIO=m CONFIG_TCM_PSCSI=m +# CONFIG_TCM_USER is not set CONFIG_LOOPBACK_TARGET=m CONFIG_TCM_FC=m CONFIG_ISCSI_TARGET=m @@ -2086,7 +2129,6 @@ CONFIG_VXLAN=m CONFIG_NETCONSOLE=m CONFIG_NETCONSOLE_DYNAMIC=y CONFIG_NETPOLL=y -# CONFIG_NETPOLL_TRAP is not set CONFIG_NET_POLL_CONTROLLER=y CONFIG_RIONET=m CONFIG_RIONET_TX_SIZE=128 @@ -2149,6 +2191,8 @@ CONFIG_NET_DSA_MV88E6060=m CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y CONFIG_NET_DSA_MV88E6131=m CONFIG_NET_DSA_MV88E6123_61_65=m +# CONFIG_NET_DSA_MV88E6171 is not set +# CONFIG_NET_DSA_BCM_SF2 is not set CONFIG_ETHERNET=y CONFIG_MDIO=m CONFIG_NET_VENDOR_3COM=y @@ -2158,13 +2202,17 @@ CONFIG_VORTEX=m CONFIG_TYPHOON=m CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_ADAPTEC_STARFIRE=m +CONFIG_NET_VENDOR_AGERE=y +CONFIG_ET131X=m CONFIG_NET_VENDOR_ALTEON=y CONFIG_ACENIC=m # CONFIG_ACENIC_OMIT_TIGON_I is not set +# CONFIG_ALTERA_TSE is not set CONFIG_NET_VENDOR_AMD=y CONFIG_AMD8111_ETH=m CONFIG_PCNET32=m CONFIG_PCMCIA_NMCLAN=m +# CONFIG_NET_XGENE is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y CONFIG_ATL2=m @@ -2172,9 +2220,6 @@ CONFIG_ATL1=m CONFIG_ATL1E=m CONFIG_ATL1C=m CONFIG_ALX=m -CONFIG_NET_CADENCE=y -CONFIG_ARM_AT91_ETHER=m -CONFIG_MACB=m CONFIG_NET_VENDOR_BROADCOM=y CONFIG_B44=m CONFIG_B44_PCI_AUTOSELECT=y @@ -2187,7 +2232,6 @@ CONFIG_BNX2X=m CONFIG_BNX2X_SRIOV=y CONFIG_NET_VENDOR_BROCADE=y CONFIG_BNA=m -CONFIG_NET_CALXEDA_XGMAC=m CONFIG_NET_VENDOR_CHELSIO=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T1_1G=y @@ -2196,6 +2240,7 @@ CONFIG_CHELSIO_T4=m CONFIG_CHELSIO_T4VF=m CONFIG_NET_VENDOR_CISCO=y CONFIG_ENIC=m +# CONFIG_CX_ECAT is not set CONFIG_DNET=m CONFIG_NET_VENDOR_DEC=y CONFIG_NET_TULIP=y @@ -2216,6 +2261,7 @@ CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_NET_VENDOR_EMULEX=y CONFIG_BE2NET=m +CONFIG_BE2NET_VXLAN=y CONFIG_NET_VENDOR_EXAR=y CONFIG_S2IO=m CONFIG_VXGE=m @@ -2240,6 +2286,7 @@ CONFIG_IXGBEVF=m CONFIG_I40E=m CONFIG_I40E_VXLAN=y CONFIG_I40EVF=m +# CONFIG_FM10K is not set CONFIG_NET_VENDOR_I825XX=y CONFIG_IP1000=m CONFIG_JME=m @@ -2252,6 +2299,7 @@ CONFIG_SKY2=m # CONFIG_SKY2_DEBUG is not set CONFIG_NET_VENDOR_MELLANOX=y CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_VXLAN=y CONFIG_MLX4_CORE=m CONFIG_MLX4_DEBUG=y CONFIG_MLX5_CORE=m @@ -2277,7 +2325,6 @@ CONFIG_PCMCIA_PCNET=m CONFIG_NET_VENDOR_NVIDIA=y CONFIG_FORCEDETH=m CONFIG_NET_VENDOR_OKI=y -CONFIG_PCH_GBE=m CONFIG_ETHOC=m CONFIG_NET_PACKET_ENGINE=y CONFIG_HAMACHI=m @@ -2286,8 +2333,11 @@ CONFIG_NET_VENDOR_QLOGIC=y CONFIG_QLA3XXX=m CONFIG_QLCNIC=m CONFIG_QLCNIC_SRIOV=y +# CONFIG_QLCNIC_VXLAN is not set +CONFIG_QLCNIC_HWMON=y CONFIG_QLGE=m CONFIG_NETXEN_NIC=m +CONFIG_NET_VENDOR_QUALCOMM=y CONFIG_NET_VENDOR_REALTEK=y CONFIG_ATP=m CONFIG_8139CP=m @@ -2297,9 +2347,10 @@ CONFIG_8139TOO_TUNE_TWISTER=y CONFIG_8139TOO_8129=y # CONFIG_8139_OLD_RX_RESET is not set CONFIG_R8169=m -CONFIG_SH_ETH=m CONFIG_NET_VENDOR_RDC=y CONFIG_R6040=m +CONFIG_NET_VENDOR_SAMSUNG=y +# CONFIG_SXGBE_ETH is not set CONFIG_NET_VENDOR_SEEQ=y CONFIG_NET_VENDOR_SILAN=y CONFIG_SC92031=m @@ -2361,6 +2412,7 @@ CONFIG_CICADA_PHY=m CONFIG_VITESSE_PHY=m CONFIG_SMSC_PHY=m CONFIG_BROADCOM_PHY=m +# CONFIG_BCM7XXX_PHY is not set CONFIG_BCM87XX_PHY=m CONFIG_ICPLUS_PHY=m CONFIG_REALTEK_PHY=m @@ -2370,6 +2422,7 @@ CONFIG_LSI_ET1011C_PHY=m CONFIG_MICREL_PHY=m CONFIG_MDIO_BITBANG=m # CONFIG_MDIO_GPIO is not set +# CONFIG_MDIO_BCM_UNIMAC is not set # CONFIG_MICREL_KS8995MA is not set CONFIG_PLIP=m CONFIG_PPP=m @@ -2391,8 +2444,9 @@ CONFIG_SLHC=m # CONFIG_SLIP_MODE_SLIP6 is not set # -# USB Network Adapters +# Host-side USB support is needed for USB Network Adapter support # +CONFIG_USB_NET_DRIVERS=m CONFIG_USB_CATC=m CONFIG_USB_KAWETH=m CONFIG_USB_PEGASUS=m @@ -2468,9 +2522,10 @@ CONFIG_ATH9K=m CONFIG_ATH9K_PCI=y CONFIG_ATH9K_AHB=y # CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_DYNACK is not set CONFIG_ATH9K_WOW=y -# CONFIG_ATH9K_LEGACY_RATE_CONTROL is not set CONFIG_ATH9K_RFKILL=y +# CONFIG_ATH9K_CHANNEL_CONTEXT is not set CONFIG_ATH9K_HTC=m # CONFIG_ATH9K_HTC_DEBUGFS is not set CONFIG_CARL9170=m @@ -2496,12 +2551,16 @@ CONFIG_WCN36XX=m CONFIG_B43=m CONFIG_B43_BCMA=y CONFIG_B43_SSB=y +CONFIG_B43_BUSES_BCMA_AND_SSB=y +# CONFIG_B43_BUSES_BCMA is not set +# CONFIG_B43_BUSES_SSB is not set CONFIG_B43_PCI_AUTOSELECT=y CONFIG_B43_PCICORE_AUTOSELECT=y CONFIG_B43_PCMCIA=y CONFIG_B43_SDIO=y CONFIG_B43_BCMA_PIO=y CONFIG_B43_PIO=y +CONFIG_B43_PHY_G=y CONFIG_B43_PHY_N=y CONFIG_B43_PHY_LP=y CONFIG_B43_PHY_HT=y @@ -2522,8 +2581,10 @@ CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y CONFIG_BRCMUTIL=m CONFIG_BRCMSMAC=m CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_PROTO_BCDC=y CONFIG_BRCMFMAC_SDIO=y CONFIG_BRCMFMAC_USB=y +# CONFIG_BRCMFMAC_PCIE is not set # CONFIG_BRCM_TRACING is not set # CONFIG_BRCMDBG is not set CONFIG_HOSTAP=m @@ -2535,9 +2596,12 @@ CONFIG_HOSTAP_CS=m # CONFIG_IPW2100 is not set # CONFIG_IPW2200 is not set CONFIG_IWLWIFI=m +CONFIG_IWLWIFI_LEDS=y CONFIG_IWLDVM=m CONFIG_IWLMVM=m CONFIG_IWLWIFI_OPMODE_MODULAR=y +# CONFIG_IWLWIFI_BCAST_FILTERING is not set +# CONFIG_IWLWIFI_UAPSD is not set # # Debugging Options @@ -2608,13 +2672,18 @@ CONFIG_RTL8192CE=m CONFIG_RTL8192SE=m CONFIG_RTL8192DE=m CONFIG_RTL8723AE=m +# CONFIG_RTL8723BE is not set CONFIG_RTL8188EE=m +# CONFIG_RTL8192EE is not set +# CONFIG_RTL8821AE is not set CONFIG_RTL8192CU=m CONFIG_RTLWIFI=m CONFIG_RTLWIFI_PCI=m CONFIG_RTLWIFI_USB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTL8192C_COMMON=m +CONFIG_RTL8723_COMMON=m +CONFIG_RTLBTCOEXIST=m CONFIG_WL_TI=y CONFIG_WL1251=m # CONFIG_WL1251_SPI is not set @@ -2634,6 +2703,7 @@ CONFIG_MWIFIEX_USB=m CONFIG_CW1200=m CONFIG_CW1200_WLAN_SDIO=m CONFIG_CW1200_WLAN_SPI=m +# CONFIG_RSI_91X is not set # # WiMAX Wireless Broadband devices @@ -2647,6 +2717,7 @@ CONFIG_IEEE802154_FAKEHARD=m CONFIG_IEEE802154_FAKELB=m CONFIG_IEEE802154_AT86RF230=m # CONFIG_IEEE802154_MRF24J40 is not set +# CONFIG_IEEE802154_CC2520 is not set CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_NETDEV_BACKEND=m CONFIG_VMXNET3=m @@ -2730,11 +2801,11 @@ CONFIG_HISAX_FRITZ_PCIPNP=m # Active cards # CONFIG_ISDN_CAPI=m -CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y CONFIG_CAPI_TRACE=y CONFIG_ISDN_CAPI_CAPI20=m CONFIG_ISDN_CAPI_MIDDLEWARE=y CONFIG_ISDN_CAPI_CAPIDRV=m +# CONFIG_ISDN_CAPI_CAPIDRV_VERBOSE is not set # # CAPI hardware drivers @@ -2885,7 +2956,7 @@ CONFIG_TABLET_USB_AIPTEK=m CONFIG_TABLET_USB_GTCO=m CONFIG_TABLET_USB_HANWANG=m CONFIG_TABLET_USB_KBTAB=m -CONFIG_TABLET_USB_WACOM=m +# CONFIG_TABLET_SERIAL_WACOM4 is not set CONFIG_INPUT_TOUCHSCREEN=y # CONFIG_TOUCHSCREEN_ADS7846 is not set # CONFIG_TOUCHSCREEN_AD7877 is not set @@ -2952,7 +3023,6 @@ CONFIG_TOUCHSCREEN_TOUCHIT213=m CONFIG_TOUCHSCREEN_TSC_SERIO=m # CONFIG_TOUCHSCREEN_TSC2005 is not set CONFIG_TOUCHSCREEN_TSC2007=m -# CONFIG_TOUCHSCREEN_W90X900 is not set CONFIG_TOUCHSCREEN_ST1232=m CONFIG_TOUCHSCREEN_SUR40=m CONFIG_TOUCHSCREEN_TPS6507X=m @@ -2968,6 +3038,7 @@ CONFIG_INPUT_MMA8450=m CONFIG_INPUT_MPU3050=m CONFIG_INPUT_APANEL=m CONFIG_INPUT_GP2A=m +# CONFIG_INPUT_GPIO_BEEPER is not set # CONFIG_INPUT_GPIO_TILT_POLLED is not set CONFIG_INPUT_ATLAS_BTNS=m CONFIG_INPUT_ATI_REMOTE2=m @@ -2990,6 +3061,8 @@ CONFIG_INPUT_CMA3000=m CONFIG_INPUT_CMA3000_I2C=m CONFIG_INPUT_XEN_KBDDEV_FRONTEND=m CONFIG_INPUT_IDEAPAD_SLIDEBAR=m +# CONFIG_INPUT_DRV260X_HAPTICS is not set +# CONFIG_INPUT_DRV2667_HAPTICS is not set # # Hardware I/O ports @@ -3046,11 +3119,11 @@ CONFIG_TRACE_SINK=m # # Serial drivers # +CONFIG_SERIAL_EARLYCON=y CONFIG_SERIAL_8250=y # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set CONFIG_SERIAL_8250_PNP=y CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_FIX_EARLYCON_MEM=y CONFIG_SERIAL_8250_DMA=y CONFIG_SERIAL_8250_PCI=y CONFIG_SERIAL_8250_CS=m @@ -3058,6 +3131,7 @@ CONFIG_SERIAL_8250_NR_UARTS=32 CONFIG_SERIAL_8250_RUNTIME_UARTS=4 # CONFIG_SERIAL_8250_EXTENDED is not set CONFIG_SERIAL_8250_DW=m +# CONFIG_SERIAL_8250_FINTEK is not set # # Non-8250 serial port support @@ -3070,13 +3144,12 @@ CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_JSM=m CONFIG_SERIAL_SCCNXP=m -# CONFIG_SERIAL_TIMBERDALE is not set +# CONFIG_SERIAL_SC16IS7XX is not set CONFIG_SERIAL_ALTERA_JTAGUART=m CONFIG_SERIAL_ALTERA_UART=m CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 # CONFIG_SERIAL_IFX6X60 is not set -CONFIG_SERIAL_PCH_UART=m CONFIG_SERIAL_ARC=m CONFIG_SERIAL_ARC_NR_PORTS=1 CONFIG_SERIAL_RP2=m @@ -3094,16 +3167,15 @@ CONFIG_IPMI_HANDLER=m # CONFIG_IPMI_PANIC_EVENT is not set CONFIG_IPMI_DEVICE_INTERFACE=m CONFIG_IPMI_SI=m +# CONFIG_IPMI_SI_PROBE_DEFAULTS is not set CONFIG_IPMI_WATCHDOG=m CONFIG_IPMI_POWEROFF=m CONFIG_HW_RANDOM=m CONFIG_HW_RANDOM_TIMERIOMEM=m CONFIG_HW_RANDOM_INTEL=m CONFIG_HW_RANDOM_AMD=m -CONFIG_HW_RANDOM_ATMEL=m CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m -CONFIG_HW_RANDOM_EXYNOS=m CONFIG_HW_RANDOM_TPM=m CONFIG_NVRAM=m CONFIG_R3964=m @@ -3135,6 +3207,11 @@ CONFIG_TCG_ST33_I2C=m CONFIG_TCG_XEN=m CONFIG_TELCLOCK=m CONFIG_DEVPORT=y +# CONFIG_XILLYBUS is not set + +# +# I2C support +# CONFIG_I2C=m CONFIG_I2C_BOARDINFO=y CONFIG_I2C_COMPAT=y @@ -3190,7 +3267,6 @@ CONFIG_I2C_SCMI=m CONFIG_I2C_DESIGNWARE_CORE=m CONFIG_I2C_DESIGNWARE_PLATFORM=m CONFIG_I2C_DESIGNWARE_PCI=m -CONFIG_I2C_EG20T=m # CONFIG_I2C_GPIO is not set CONFIG_I2C_OCORES=m CONFIG_I2C_PCA_PLATFORM=m @@ -3212,6 +3288,7 @@ CONFIG_I2C_VIPERBOARD=m # # Other I2C/SMBus bus drivers # +# CONFIG_I2C_CROS_EC_TUNNEL is not set # CONFIG_I2C_STUB is not set # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEBUG_ALGO is not set @@ -3233,7 +3310,6 @@ CONFIG_SPI_PXA2XX_DMA=y CONFIG_SPI_PXA2XX=m CONFIG_SPI_PXA2XX_PCI=m CONFIG_SPI_SC18IS602=m -CONFIG_SPI_TOPCLIFF_PCH=m CONFIG_SPI_XCOMM=m CONFIG_SPI_XILINX=m CONFIG_SPI_DESIGNWARE=m @@ -3246,6 +3322,7 @@ CONFIG_SPI_DW_MMIO=m # CONFIG_SPI_SPIDEV=m CONFIG_SPI_TLE62X0=m +# CONFIG_SPMI is not set # CONFIG_HSI is not set # @@ -3272,20 +3349,18 @@ CONFIG_PPS_CLIENT_GPIO=m # CONFIG_PTP_1588_CLOCK=m CONFIG_DP83640_PHY=m -CONFIG_PTP_1588_CLOCK_PCH=m CONFIG_PINCTRL=y # # Pin controllers # -# CONFIG_PINMUX is not set -# CONFIG_PINCONF is not set # CONFIG_DEBUG_PINCTRL is not set # CONFIG_PINCTRL_BAYTRAIL is not set CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y CONFIG_GPIOLIB=y CONFIG_GPIO_DEVRES=y CONFIG_GPIO_ACPI=y +CONFIG_GPIOLIB_IRQCHIP=y # CONFIG_DEBUG_GPIO is not set CONFIG_GPIO_SYSFS=y @@ -3293,10 +3368,10 @@ CONFIG_GPIO_SYSFS=y # Memory mapped GPIO drivers: # # CONFIG_GPIO_GENERIC_PLATFORM is not set +# CONFIG_GPIO_DWAPB is not set # CONFIG_GPIO_IT8761E is not set # CONFIG_GPIO_F7188X is not set CONFIG_GPIO_SCH311X=m -# CONFIG_GPIO_TS5500 is not set CONFIG_GPIO_SCH=m CONFIG_GPIO_ICH=m # CONFIG_GPIO_VX855 is not set @@ -3316,10 +3391,8 @@ CONFIG_GPIO_LP3943=m # # PCI GPIO expanders: # -CONFIG_GPIO_CS5535=m CONFIG_GPIO_AMD8111=m # CONFIG_GPIO_INTEL_MID is not set -# CONFIG_GPIO_PCH is not set # CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_RDC321X is not set @@ -3327,6 +3400,7 @@ CONFIG_GPIO_AMD8111=m # SPI GPIO expanders: # # CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MCP23S08 is not set # CONFIG_GPIO_MC33880 is not set # @@ -3381,7 +3455,6 @@ CONFIG_SENSORS_ABITUGURU3=m CONFIG_SENSORS_AD7314=m CONFIG_SENSORS_AD7414=m CONFIG_SENSORS_AD7418=m -CONFIG_SENSORS_ADCXX=m CONFIG_SENSORS_ADM1021=m CONFIG_SENSORS_ADM1025=m CONFIG_SENSORS_ADM1026=m @@ -3399,6 +3472,7 @@ CONFIG_SENSORS_ASC7621=m CONFIG_SENSORS_K8TEMP=m CONFIG_SENSORS_K10TEMP=m CONFIG_SENSORS_FAM15H_POWER=m +CONFIG_SENSORS_APPLESMC=m CONFIG_SENSORS_ASB100=m CONFIG_SENSORS_ATXP1=m CONFIG_SENSORS_DS620=m @@ -3407,20 +3481,40 @@ CONFIG_SENSORS_I5K_AMB=m CONFIG_SENSORS_F71805F=m CONFIG_SENSORS_F71882FG=m CONFIG_SENSORS_F75375S=m +CONFIG_SENSORS_MC13783_ADC=m CONFIG_SENSORS_FSCHMD=m -CONFIG_SENSORS_G760A=m -CONFIG_SENSORS_G762=m CONFIG_SENSORS_GL518SM=m CONFIG_SENSORS_GL520SM=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m CONFIG_SENSORS_GPIO_FAN=m CONFIG_SENSORS_HIH6130=m -CONFIG_SENSORS_HTU21=m -CONFIG_SENSORS_CORETEMP=m CONFIG_SENSORS_IBMAEM=m CONFIG_SENSORS_IBMPEX=m +CONFIG_SENSORS_CORETEMP=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_JC42=m +# CONFIG_SENSORS_POWR1220 is not set CONFIG_SENSORS_LINEAGE=m +# CONFIG_SENSORS_LTC2945 is not set +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +# CONFIG_SENSORS_LTC4222 is not set +CONFIG_SENSORS_LTC4245=m +# CONFIG_SENSORS_LTC4260 is not set +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_MAX1111=m +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_HTU21=m +CONFIG_SENSORS_MCP3021=m +CONFIG_SENSORS_ADCXX=m CONFIG_SENSORS_LM63=m CONFIG_SENSORS_LM70=m CONFIG_SENSORS_LM73=m @@ -3434,27 +3528,14 @@ CONFIG_SENSORS_LM87=m CONFIG_SENSORS_LM90=m CONFIG_SENSORS_LM92=m CONFIG_SENSORS_LM93=m -CONFIG_SENSORS_LTC4151=m -CONFIG_SENSORS_LTC4215=m -CONFIG_SENSORS_LTC4245=m -CONFIG_SENSORS_LTC4261=m CONFIG_SENSORS_LM95234=m CONFIG_SENSORS_LM95241=m CONFIG_SENSORS_LM95245=m -CONFIG_SENSORS_MAX1111=m -CONFIG_SENSORS_MAX16065=m -CONFIG_SENSORS_MAX1619=m -CONFIG_SENSORS_MAX1668=m -CONFIG_SENSORS_MAX197=m -CONFIG_SENSORS_MAX6639=m -CONFIG_SENSORS_MAX6642=m -CONFIG_SENSORS_MAX6650=m -CONFIG_SENSORS_MAX6697=m -CONFIG_SENSORS_MCP3021=m -CONFIG_SENSORS_NCT6775=m -CONFIG_SENSORS_NTC_THERMISTOR=m CONFIG_SENSORS_PC87360=m CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_NTC_THERMISTOR=m +# CONFIG_SENSORS_NCT6683 is not set +CONFIG_SENSORS_NCT6775=m CONFIG_SENSORS_PCF8591=m CONFIG_PMBUS=m CONFIG_SENSORS_PMBUS=m @@ -3464,13 +3545,14 @@ CONFIG_SENSORS_LTC2978=m CONFIG_SENSORS_MAX16064=m CONFIG_SENSORS_MAX34440=m CONFIG_SENSORS_MAX8688=m +# CONFIG_SENSORS_TPS40422 is not set CONFIG_SENSORS_UCD9000=m CONFIG_SENSORS_UCD9200=m CONFIG_SENSORS_ZL6100=m CONFIG_SENSORS_SHT15=m CONFIG_SENSORS_SHT21=m +# CONFIG_SENSORS_SHTC1 is not set CONFIG_SENSORS_SIS5595=m -CONFIG_SENSORS_SMM665=m CONFIG_SENSORS_DME1737=m CONFIG_SENSORS_EMC1403=m CONFIG_SENSORS_EMC2103=m @@ -3481,6 +3563,8 @@ CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SCH56XX_COMMON=m CONFIG_SENSORS_SCH5627=m CONFIG_SENSORS_SCH5636=m +CONFIG_SENSORS_SMM665=m +# CONFIG_SENSORS_ADC128D818 is not set CONFIG_SENSORS_ADS1015=m CONFIG_SENSORS_ADS7828=m CONFIG_SENSORS_ADS7871=m @@ -3489,6 +3573,7 @@ CONFIG_SENSORS_INA209=m CONFIG_SENSORS_INA2XX=m CONFIG_SENSORS_THMC50=m CONFIG_SENSORS_TMP102=m +# CONFIG_SENSORS_TMP103 is not set CONFIG_SENSORS_TMP401=m CONFIG_SENSORS_TMP421=m CONFIG_SENSORS_VIA_CPUTEMP=m @@ -3505,8 +3590,6 @@ CONFIG_SENSORS_W83L785TS=m CONFIG_SENSORS_W83L786NG=m CONFIG_SENSORS_W83627HF=m CONFIG_SENSORS_W83627EHF=m -CONFIG_SENSORS_APPLESMC=m -CONFIG_SENSORS_MC13783_ADC=m # # ACPI drivers @@ -3519,11 +3602,12 @@ CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y # CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set CONFIG_THERMAL_GOV_FAIR_SHARE=y CONFIG_THERMAL_GOV_STEP_WISE=y +# CONFIG_THERMAL_GOV_BANG_BANG is not set CONFIG_THERMAL_GOV_USER_SPACE=y # CONFIG_THERMAL_EMULATION is not set CONFIG_INTEL_POWERCLAMP=m CONFIG_X86_PKG_TEMP_THERMAL=m -CONFIG_ACPI_INT3403_THERMAL=m +# CONFIG_INT340X_THERMAL is not set # # Texas Instruments thermal drivers @@ -3536,6 +3620,7 @@ CONFIG_WATCHDOG_CORE=y # Watchdog Device Drivers # CONFIG_SOFT_WATCHDOG=m +# CONFIG_XILINX_WATCHDOG is not set CONFIG_DW_WATCHDOG=m CONFIG_RETU_WATCHDOG=m CONFIG_ACQUIRE_WDT=m @@ -3544,8 +3629,6 @@ CONFIG_ALIM1535_WDT=m CONFIG_ALIM7101_WDT=m CONFIG_F71808E_WDT=m CONFIG_SP5100_TCO=m -CONFIG_GEODE_WDT=m -CONFIG_SC520_WDT=m CONFIG_SBC_FITPC2_WATCHDOG=m CONFIG_EUROTECH_WDT=m CONFIG_IB700_WDT=m @@ -3563,14 +3646,11 @@ CONFIG_SC1200_WDT=m CONFIG_PC87413_WDT=m CONFIG_NV_TCO=m CONFIG_60XX_WDT=m -CONFIG_SBC8360_WDT=m CONFIG_CPU5_WDT=m CONFIG_SMSC_SCH311X_WDT=m CONFIG_SMSC37B787_WDT=m CONFIG_VIA_WDT=m CONFIG_W83627HF_WDT=m -CONFIG_W83697HF_WDT=m -CONFIG_W83697UG_WDT=m CONFIG_W83877F_WDT=m CONFIG_W83977F_WDT=m CONFIG_MACHZ_WDT=m @@ -3625,7 +3705,7 @@ CONFIG_BCMA_DRIVER_GPIO=y # Multifunction device drivers # CONFIG_MFD_CORE=y -CONFIG_MFD_CS5535=m +# CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_I2C=m # CONFIG_MFD_DA9052_SPI is not set @@ -3637,6 +3717,7 @@ CONFIG_LPC_ICH=m CONFIG_LPC_SCH=m # CONFIG_MFD_JANZ_CMODIO is not set # CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_MENF21BMC is not set # CONFIG_EZX_PCAP is not set CONFIG_MFD_VIPERBOARD=m CONFIG_MFD_RETU=m @@ -3646,11 +3727,12 @@ CONFIG_PCF50633_GPIO=m CONFIG_UCB1400_CORE=m CONFIG_MFD_RDC321X=m CONFIG_MFD_RTSX_PCI=m +# CONFIG_MFD_RTSX_USB is not set +# CONFIG_MFD_RN5T618 is not set CONFIG_MFD_SI476X_CORE=m CONFIG_MFD_SM501=m CONFIG_MFD_SM501_GPIO=y CONFIG_ABX500_CORE=y -# CONFIG_MFD_STMPE is not set # CONFIG_MFD_SYSCON is not set CONFIG_MFD_TI_AM335X_TSCADC=m CONFIG_MFD_LP3943=m @@ -3658,11 +3740,11 @@ CONFIG_MFD_LP3943=m CONFIG_TPS65010=m CONFIG_TPS6507X=m CONFIG_MFD_TPS65217=m +# CONFIG_MFD_TPS65218 is not set # CONFIG_MFD_TPS65912 is not set # CONFIG_MFD_TPS65912_SPI is not set CONFIG_MFD_WL1273_CORE=m CONFIG_MFD_LM3533=m -# CONFIG_MFD_TIMBERDALE is not set # CONFIG_MFD_TMIO is not set CONFIG_MFD_VX855=m CONFIG_MFD_ARIZONA=y @@ -3672,6 +3754,7 @@ CONFIG_MFD_WM5102=y CONFIG_MFD_WM5110=y # CONFIG_MFD_WM8997 is not set # CONFIG_MFD_WM831X_SPI is not set +# CONFIG_MFD_WM8994 is not set # CONFIG_REGULATOR is not set CONFIG_MEDIA_SUPPORT=m @@ -3682,6 +3765,7 @@ CONFIG_MEDIA_CAMERA_SUPPORT=y CONFIG_MEDIA_ANALOG_TV_SUPPORT=y CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y CONFIG_MEDIA_RADIO_SUPPORT=y +# CONFIG_MEDIA_SDR_SUPPORT is not set CONFIG_MEDIA_RC_SUPPORT=y CONFIG_MEDIA_CONTROLLER=y CONFIG_VIDEO_DEV=m @@ -3700,6 +3784,7 @@ CONFIG_VIDEOBUF2_MEMOPS=m CONFIG_VIDEOBUF2_DMA_CONTIG=m CONFIG_VIDEOBUF2_VMALLOC=m CONFIG_VIDEOBUF2_DMA_SG=m +CONFIG_VIDEOBUF2_DVB=m CONFIG_DVB_CORE=m CONFIG_DVB_NET=y CONFIG_TTPCI_EEPROM=m @@ -3719,12 +3804,14 @@ CONFIG_IR_RC5_DECODER=m CONFIG_IR_RC6_DECODER=m CONFIG_IR_JVC_DECODER=m CONFIG_IR_SONY_DECODER=m -CONFIG_IR_RC5_SZ_DECODER=m CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_SHARP_DECODER=m CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_IR_XMP_DECODER=m CONFIG_RC_DEVICES=y CONFIG_RC_ATI_REMOTE=m CONFIG_IR_ENE=m +# CONFIG_IR_HIX5HD2 is not set CONFIG_IR_IMON=m CONFIG_IR_MCEUSB=m CONFIG_IR_ITE_CIR=m @@ -3735,6 +3822,7 @@ CONFIG_IR_STREAMZAP=m CONFIG_IR_WINBOND_CIR=m CONFIG_IR_IGUANA=m CONFIG_IR_TTUSBIR=m +# CONFIG_IR_IMG is not set CONFIG_RC_LOOPBACK=m CONFIG_IR_GPIO_CIR=m CONFIG_MEDIA_USB_SUPPORT=y @@ -3751,6 +3839,7 @@ CONFIG_USB_GL860=m CONFIG_USB_GSPCA_BENQ=m CONFIG_USB_GSPCA_CONEX=m CONFIG_USB_GSPCA_CPIA1=m +# CONFIG_USB_GSPCA_DTCS033 is not set CONFIG_USB_GSPCA_ETOMS=m CONFIG_USB_GSPCA_FINEPIX=m CONFIG_USB_GSPCA_JEILINJ=m @@ -3814,12 +3903,17 @@ CONFIG_VIDEO_USBVISION=m CONFIG_VIDEO_STK1160_COMMON=m CONFIG_VIDEO_STK1160_AC97=y CONFIG_VIDEO_STK1160=m +CONFIG_VIDEO_GO7007=m +CONFIG_VIDEO_GO7007_USB=m +CONFIG_VIDEO_GO7007_LOADER=m +# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set # # Analog/digital TV USB devices # CONFIG_VIDEO_AU0828=m CONFIG_VIDEO_AU0828_V4L2=y +# CONFIG_VIDEO_AU0828_RC is not set CONFIG_VIDEO_CX231XX=m CONFIG_VIDEO_CX231XX_RC=y CONFIG_VIDEO_CX231XX_ALSA=m @@ -3867,15 +3961,16 @@ CONFIG_DVB_USB_AZ6007=m CONFIG_DVB_USB_CE6230=m CONFIG_DVB_USB_EC168=m CONFIG_DVB_USB_GL861=m -CONFIG_DVB_USB_IT913X=m CONFIG_DVB_USB_LME2510=m CONFIG_DVB_USB_MXL111SF=m CONFIG_DVB_USB_RTL28XXU=m +# CONFIG_DVB_USB_DVBSKY is not set CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m CONFIG_SMS_USB_DRV=m CONFIG_DVB_B2C2_FLEXCOP_USB=m # CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set +CONFIG_DVB_AS102=m # # Webcam, TV (analog/digital) USB devices @@ -3909,6 +4004,8 @@ CONFIG_VIDEO_ZORAN_AVS6EYES=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m CONFIG_VIDEO_MXB=m +# CONFIG_VIDEO_SOLO6X10 is not set +# CONFIG_VIDEO_TW68 is not set # # Media capture/analog/hybrid TV support @@ -3932,11 +4029,13 @@ CONFIG_VIDEO_SAA7134=m CONFIG_VIDEO_SAA7134_ALSA=m CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7134_DVB=m +# CONFIG_VIDEO_SAA7134_GO7007 is not set CONFIG_VIDEO_SAA7164=m # # Media digital TV PCI Adapters # +CONFIG_DVB_AV7110_IR=y CONFIG_DVB_AV7110=m CONFIG_DVB_AV7110_OSD=y CONFIG_DVB_BUDGET_CORE=m @@ -3949,6 +4048,7 @@ CONFIG_DVB_B2C2_FLEXCOP_PCI=m CONFIG_DVB_PLUTO2=m CONFIG_DVB_DM1105=m CONFIG_DVB_PT1=m +# CONFIG_DVB_PT3 is not set CONFIG_MANTIS_CORE=m CONFIG_DVB_MANTIS=m CONFIG_DVB_HOPPER=m @@ -3958,7 +4058,6 @@ CONFIG_DVB_DDBRIDGE=m CONFIG_V4L_MEM2MEM_DRIVERS=y CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m CONFIG_VIDEO_SH_VEU=m -CONFIG_VIDEO_RENESAS_VSP1=m # CONFIG_V4L_TEST_DRIVERS is not set # @@ -4134,6 +4233,7 @@ CONFIG_MEDIA_TUNER_E4000=m CONFIG_MEDIA_TUNER_FC2580=m CONFIG_MEDIA_TUNER_M88TS2022=m CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_SI2157=m CONFIG_MEDIA_TUNER_IT913X=m CONFIG_MEDIA_TUNER_R820T=m @@ -4151,6 +4251,7 @@ CONFIG_DVB_M88DS3103=m # CONFIG_DVB_DRXK=m CONFIG_DVB_TDA18271C2DD=m +CONFIG_DVB_SI2165=m # # DVB-S (satellite) frontends @@ -4206,6 +4307,8 @@ CONFIG_DVB_STV0367=m CONFIG_DVB_CXD2820R=m CONFIG_DVB_RTL2830=m CONFIG_DVB_RTL2832=m +CONFIG_DVB_SI2168=m +CONFIG_DVB_AS102_FE=m # # DVB-C (cable) frontends @@ -4248,6 +4351,7 @@ CONFIG_DVB_TUNER_DIB0090=m # # SEC control devices for DVB-S # +CONFIG_DVB_DRX39XYJ=m CONFIG_DVB_LNBP21=m CONFIG_DVB_LNBP22=m CONFIG_DVB_ISL6405=m @@ -4258,7 +4362,6 @@ CONFIG_DVB_LGS8GXX=m CONFIG_DVB_ATBM8830=m CONFIG_DVB_TDA665x=m CONFIG_DVB_IX2505V=m -CONFIG_DVB_IT913X_FE=m CONFIG_DVB_M88RS2000=m CONFIG_DVB_AF9033=m @@ -4279,8 +4382,11 @@ CONFIG_INTEL_GTT=m CONFIG_VGA_ARB=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_SWITCHEROO=y + +# +# Direct Rendering Manager +# CONFIG_DRM=m -CONFIG_DRM_USB=m CONFIG_DRM_KMS_HELPER=m CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_LOAD_EDID_FIRMWARE=y @@ -4292,6 +4398,7 @@ CONFIG_DRM_TTM=m CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_SIL164=m CONFIG_DRM_I2C_NXP_TDA998X=m +# CONFIG_DRM_PTN3460 is not set CONFIG_DRM_TDFX=m CONFIG_DRM_R128=m CONFIG_DRM_RADEON=m @@ -4304,7 +4411,6 @@ CONFIG_DRM_I915=m CONFIG_DRM_I915_KMS=y CONFIG_DRM_I915_FBDEV=y # CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT is not set -# CONFIG_DRM_I915_UMS is not set CONFIG_DRM_MGA=m CONFIG_DRM_SIS=m CONFIG_DRM_VIA=m @@ -4320,11 +4426,13 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_CIRRUS_QEMU=m CONFIG_DRM_QXL=m CONFIG_DRM_BOCHS=m -CONFIG_VGASTATE=m -CONFIG_VIDEO_OUTPUT_CONTROL=m -CONFIG_HDMI=y + +# +# Frame buffer Devices +# CONFIG_FB=y CONFIG_FIRMWARE_EDID=y +CONFIG_FB_CMDLINE=y # CONFIG_FB_DDC is not set CONFIG_FB_BOOT_VESA_SUPPORT=y CONFIG_FB_CFB_FILLRECT=y @@ -4337,7 +4445,7 @@ CONFIG_FB_SYS_IMAGEBLIT=m # CONFIG_FB_FOREIGN_ENDIAN is not set CONFIG_FB_SYS_FOPS=m CONFIG_FB_DEFERRED_IO=y -# CONFIG_FB_SVGALIB is not set +CONFIG_FB_SVGALIB=m # CONFIG_FB_MACMODES is not set CONFIG_FB_BACKLIGHT=y CONFIG_FB_MODE_HELPERS=y @@ -4383,11 +4491,9 @@ CONFIG_FB_VT8623=m # CONFIG_FB_ARK is not set # CONFIG_FB_PM3 is not set # CONFIG_FB_CARMINE is not set -# CONFIG_FB_TMIO is not set # CONFIG_FB_SM501 is not set # CONFIG_FB_SMSCUFX is not set CONFIG_FB_UDL=m -# CONFIG_FB_GOLDFISH is not set CONFIG_FB_VIRTUAL=m CONFIG_XEN_FBDEV_FRONTEND=m # CONFIG_FB_METRONOME is not set @@ -4396,7 +4502,6 @@ CONFIG_XEN_FBDEV_FRONTEND=m # CONFIG_FB_AUO_K190X is not set CONFIG_FB_HYPERV=m # CONFIG_FB_SIMPLE is not set -# CONFIG_EXYNOS_VIDEO is not set CONFIG_BACKLIGHT_LCD_SUPPORT=y CONFIG_LCD_CLASS_DEVICE=m # CONFIG_LCD_L4F00242T03 is not set @@ -4420,14 +4525,13 @@ CONFIG_BACKLIGHT_APPLE=m # CONFIG_BACKLIGHT_ADP8860 is not set # CONFIG_BACKLIGHT_ADP8870 is not set CONFIG_BACKLIGHT_PCF50633=m -CONFIG_BACKLIGHT_LM3630A=m # CONFIG_BACKLIGHT_LM3639 is not set -# CONFIG_BACKLIGHT_LP855X is not set -# CONFIG_BACKLIGHT_OT200 is not set # CONFIG_BACKLIGHT_TPS65217 is not set # CONFIG_BACKLIGHT_GPIO is not set # CONFIG_BACKLIGHT_LV5207LP is not set # CONFIG_BACKLIGHT_BD6107 is not set +CONFIG_VGASTATE=m +CONFIG_HDMI=y # # Console display driver support @@ -4488,7 +4592,6 @@ CONFIG_SND_PORTMAN2X4=m CONFIG_SND_AC97_POWER_SAVE=y CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 CONFIG_SND_SB_COMMON=m -CONFIG_SND_SB16_DSP=m CONFIG_SND_PCI=y CONFIG_SND_AD1889=m CONFIG_SND_ALS300=m @@ -4511,8 +4614,6 @@ CONFIG_SND_OXYGEN=m CONFIG_SND_CS4281=m CONFIG_SND_CS46XX=m CONFIG_SND_CS46XX_NEW_DSP=y -CONFIG_SND_CS5530=m -CONFIG_SND_CS5535AUDIO=m CONFIG_SND_CTXFI=m CONFIG_SND_DARLA20=m CONFIG_SND_GINA20=m @@ -4538,30 +4639,6 @@ CONFIG_SND_ES1968_INPUT=y CONFIG_SND_ES1968_RADIO=y CONFIG_SND_FM801=m CONFIG_SND_FM801_TEA575X_BOOL=y -CONFIG_SND_HDA_INTEL=m -CONFIG_SND_HDA_DSP_LOADER=y -CONFIG_SND_HDA_PREALLOC_SIZE=4096 -CONFIG_SND_HDA_HWDEP=y -CONFIG_SND_HDA_RECONFIG=y -CONFIG_SND_HDA_INPUT_BEEP=y -CONFIG_SND_HDA_INPUT_BEEP_MODE=1 -CONFIG_SND_HDA_INPUT_JACK=y -CONFIG_SND_HDA_PATCH_LOADER=y -CONFIG_SND_HDA_CODEC_REALTEK=m -CONFIG_SND_HDA_CODEC_ANALOG=m -CONFIG_SND_HDA_CODEC_SIGMATEL=m -CONFIG_SND_HDA_CODEC_VIA=m -CONFIG_SND_HDA_CODEC_HDMI=m -CONFIG_SND_HDA_I915=y -CONFIG_SND_HDA_CODEC_CIRRUS=m -CONFIG_SND_HDA_CODEC_CONEXANT=m -CONFIG_SND_HDA_CODEC_CA0110=m -CONFIG_SND_HDA_CODEC_CA0132=m -CONFIG_SND_HDA_CODEC_CA0132_DSP=y -CONFIG_SND_HDA_CODEC_CMEDIA=m -CONFIG_SND_HDA_CODEC_SI3054=m -CONFIG_SND_HDA_GENERIC=m -CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_HDSP=m CONFIG_SND_HDSPM=m CONFIG_SND_ICE1712=m @@ -4587,6 +4664,35 @@ CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_VIRTUOSO=m CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m + +# +# HD-Audio +# +CONFIG_SND_HDA=m +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_PREALLOC_SIZE=4096 +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_RECONFIG=y +CONFIG_SND_HDA_INPUT_BEEP=y +CONFIG_SND_HDA_INPUT_BEEP_MODE=1 +CONFIG_SND_HDA_INPUT_JACK=y +CONFIG_SND_HDA_PATCH_LOADER=y +CONFIG_SND_HDA_CODEC_REALTEK=m +CONFIG_SND_HDA_CODEC_ANALOG=m +CONFIG_SND_HDA_CODEC_SIGMATEL=m +CONFIG_SND_HDA_CODEC_VIA=m +CONFIG_SND_HDA_CODEC_HDMI=m +CONFIG_SND_HDA_I915=y +CONFIG_SND_HDA_CODEC_CIRRUS=m +CONFIG_SND_HDA_CODEC_CONEXANT=m +CONFIG_SND_HDA_CODEC_CA0110=m +CONFIG_SND_HDA_CODEC_CA0132=m +CONFIG_SND_HDA_CODEC_CA0132_DSP=y +CONFIG_SND_HDA_CODEC_CMEDIA=m +CONFIG_SND_HDA_CODEC_SI3054=m +CONFIG_SND_HDA_GENERIC=m +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_SPI=y CONFIG_SND_USB=y CONFIG_SND_USB_AUDIO=m @@ -4597,12 +4703,15 @@ CONFIG_SND_USB_CAIAQ_INPUT=y CONFIG_SND_USB_US122L=m CONFIG_SND_USB_6FIRE=m CONFIG_SND_USB_HIFACE=m +# CONFIG_SND_BCD2000 is not set CONFIG_SND_FIREWIRE=y CONFIG_SND_FIREWIRE_LIB=m CONFIG_SND_DICE=m CONFIG_SND_FIREWIRE_SPEAKERS=m CONFIG_SND_ISIGHT=m CONFIG_SND_SCS1X=m +# CONFIG_SND_FIREWORKS is not set +# CONFIG_SND_BEBOB is not set CONFIG_SND_PCMCIA=y CONFIG_SND_VXPOCKET=m CONFIG_SND_PDAUDIOCF=m @@ -4631,6 +4740,7 @@ CONFIG_HID_BELKIN=m CONFIG_HID_CHERRY=m CONFIG_HID_CHICONY=m CONFIG_HID_PRODIKEYS=m +# CONFIG_HID_CP2112 is not set CONFIG_HID_CYPRESS=m CONFIG_HID_DRAGONRISE=m CONFIG_DRAGONRISE_FF=y @@ -4640,6 +4750,7 @@ CONFIG_HID_ELO=m CONFIG_HID_EZKEY=m CONFIG_HID_HOLTEK=m CONFIG_HOLTEK_FF=y +# CONFIG_HID_GT683R is not set CONFIG_HID_HUION=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -4650,7 +4761,7 @@ CONFIG_HID_ICADE=m CONFIG_HID_TWINHAN=m CONFIG_HID_KENSINGTON=m CONFIG_HID_LCPOWER=m -CONFIG_HID_LENOVO_TPKBD=m +# CONFIG_HID_LENOVO is not set CONFIG_HID_LOGITECH=m CONFIG_HID_LOGITECH_DJ=m CONFIG_LOGITECH_FF=y @@ -4665,6 +4776,7 @@ CONFIG_HID_NTRIG=m CONFIG_HID_ORTEK=m CONFIG_HID_PANTHERLORD=m CONFIG_PANTHERLORD_FF=y +# CONFIG_HID_PENMOUNT is not set CONFIG_HID_PETALYNX=m CONFIG_HID_PICOLCD=m CONFIG_HID_PICOLCD_FB=y @@ -4681,6 +4793,7 @@ CONFIG_SONY_FF=y CONFIG_HID_SPEEDLINK=m CONFIG_HID_STEELSERIES=m CONFIG_HID_SUNPLUS=m +# CONFIG_HID_RMI is not set CONFIG_HID_GREENASIA=m CONFIG_GREENASIA_FF=y CONFIG_HID_HYPERV_MOUSE=m @@ -4715,7 +4828,6 @@ CONFIG_USB_SUPPORT=y CONFIG_USB_COMMON=m CONFIG_USB_ARCH_HAS_HCD=y CONFIG_USB=m -# CONFIG_USB_DEBUG is not set # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set # @@ -4726,6 +4838,7 @@ CONFIG_USB_DYNAMIC_MINORS=y CONFIG_USB_OTG=y CONFIG_USB_OTG_WHITELIST=y # CONFIG_USB_OTG_BLACKLIST_HUB is not set +CONFIG_USB_OTG_FSM=m CONFIG_USB_MON=m CONFIG_USB_WUSB=m CONFIG_USB_WUSB_CBAF=m @@ -4736,6 +4849,7 @@ CONFIG_USB_WUSB_CBAF=m # CONFIG_USB_C67X00_HCD=m CONFIG_USB_XHCI_HCD=m +CONFIG_USB_XHCI_PCI=m CONFIG_USB_EHCI_HCD=m CONFIG_USB_EHCI_ROOT_HUB_TT=y CONFIG_USB_EHCI_TT_NEWSCHED=y @@ -4747,6 +4861,7 @@ CONFIG_USB_ISP1760_HCD=m CONFIG_USB_ISP1362_HCD=m CONFIG_USB_FUSBH200_HCD=m CONFIG_USB_FOTG210_HCD=m +# CONFIG_USB_MAX3421_HCD is not set CONFIG_USB_OHCI_HCD=m CONFIG_USB_OHCI_HCD_PCI=m # CONFIG_USB_OHCI_HCD_SSB is not set @@ -4757,13 +4872,11 @@ CONFIG_USB_SL811_HCD=m # CONFIG_USB_SL811_HCD_ISO is not set CONFIG_USB_SL811_CS=m CONFIG_USB_R8A66597_HCD=m -CONFIG_USB_RENESAS_USBHS_HCD=m CONFIG_USB_WHCI_HCD=m CONFIG_USB_HWA_HCD=m # CONFIG_USB_HCD_BCMA is not set # CONFIG_USB_HCD_SSB is not set # CONFIG_USB_HCD_TEST_MODE is not set -CONFIG_USB_RENESAS_USBHS=m # # USB Device Class drivers @@ -4796,12 +4909,17 @@ CONFIG_USB_STORAGE_ONETOUCH=m CONFIG_USB_STORAGE_KARMA=m CONFIG_USB_STORAGE_CYPRESS_ATACB=m CONFIG_USB_STORAGE_ENE_UB6250=m +# CONFIG_USB_UAS is not set # # USB Imaging devices # CONFIG_USB_MDC800=m CONFIG_USB_MICROTEK=m +CONFIG_USBIP_CORE=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_HOST=m +# CONFIG_USBIP_DEBUG is not set CONFIG_USB_MUSB_HDRC=m # CONFIG_USB_MUSB_HOST is not set # CONFIG_USB_MUSB_GADGET is not set @@ -4869,7 +4987,6 @@ CONFIG_USB_SERIAL_OMNINET=m CONFIG_USB_SERIAL_OPTICON=m CONFIG_USB_SERIAL_XSENS_MT=m CONFIG_USB_SERIAL_WISHBONE=m -CONFIG_USB_SERIAL_ZTE=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_QT2=m # CONFIG_USB_SERIAL_DEBUG is not set @@ -4901,6 +5018,7 @@ CONFIG_USB_ISIGHTFW=m CONFIG_USB_YUREX=m CONFIG_USB_EZUSB_FX2=m CONFIG_USB_HSIC_USB3503=m +# CONFIG_USB_LINK_LAYER_TEST is not set CONFIG_USB_ATM=m CONFIG_USB_SPEEDTOUCH=m CONFIG_USB_CXACRU=m @@ -4911,16 +5029,11 @@ CONFIG_USB_XUSBATM=m # USB Physical Layer drivers # CONFIG_USB_PHY=y -CONFIG_USB_OTG_FSM=m CONFIG_NOP_USB_XCEIV=m -CONFIG_SAMSUNG_USBPHY=m -CONFIG_SAMSUNG_USB2PHY=m -CONFIG_SAMSUNG_USB3PHY=m # CONFIG_USB_GPIO_VBUS is not set CONFIG_TAHVO_USB=m # CONFIG_TAHVO_USB_HOST_BY_DEFAULT is not set CONFIG_USB_ISP1301=m -CONFIG_USB_RCAR_PHY=m CONFIG_USB_GADGET=m # CONFIG_USB_GADGET_DEBUG is not set # CONFIG_USB_GADGET_DEBUG_FILES is not set @@ -4934,7 +5047,6 @@ CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 CONFIG_USB_FOTG210_UDC=m CONFIG_USB_GR_UDC=m CONFIG_USB_R8A66597=m -CONFIG_USB_RENESAS_USBHS_UDC=m CONFIG_USB_PXA27X=m CONFIG_USB_MV_UDC=m CONFIG_USB_MV_U3D=m @@ -4958,6 +5070,8 @@ CONFIG_USB_F_SUBSET=m CONFIG_USB_F_RNDIS=m CONFIG_USB_F_MASS_STORAGE=m CONFIG_USB_F_FS=m +CONFIG_USB_F_UAC2=m +CONFIG_USB_F_UVC=m # CONFIG_USB_CONFIGFS is not set # CONFIG_USB_ZERO is not set CONFIG_USB_AUDIO=m @@ -4985,13 +5099,13 @@ CONFIG_USB_G_DBGP=m # CONFIG_USB_G_DBGP_PRINTK is not set CONFIG_USB_G_DBGP_SERIAL=y CONFIG_USB_G_WEBCAM=m +# CONFIG_USB_LED_TRIG is not set CONFIG_UWB=m CONFIG_UWB_HWA=m CONFIG_UWB_WHCI=m CONFIG_UWB_I1480U=m CONFIG_MMC=m # CONFIG_MMC_DEBUG is not set -# CONFIG_MMC_UNSAFE_RESUME is not set # CONFIG_MMC_CLKGATE is not set # @@ -5021,6 +5135,7 @@ CONFIG_MMC_CB710=m CONFIG_MMC_VIA_SDMMC=m CONFIG_MMC_VUB300=m CONFIG_MMC_USHC=m +# CONFIG_MMC_USDHI6ROL0 is not set CONFIG_MMC_REALTEK_PCI=m CONFIG_MEMSTICK=m # CONFIG_MEMSTICK_DEBUG is not set @@ -5060,7 +5175,6 @@ CONFIG_LEDS_LP8501=m CONFIG_LEDS_CLEVO_MAIL=m CONFIG_LEDS_PCA955X=m CONFIG_LEDS_PCA963X=m -CONFIG_LEDS_PCA9685=m CONFIG_LEDS_DAC124S085=m CONFIG_LEDS_BD2802=m CONFIG_LEDS_INTEL_SS4200=m @@ -5069,7 +5183,10 @@ CONFIG_LEDS_DELL_NETBOOKS=m CONFIG_LEDS_MC13783=m CONFIG_LEDS_TCA6507=m CONFIG_LEDS_LM355x=m -CONFIG_LEDS_OT200=m + +# +# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) +# CONFIG_LEDS_BLINKM=m # @@ -5131,6 +5248,7 @@ CONFIG_EDAC_E752X=m CONFIG_EDAC_I82975X=m CONFIG_EDAC_I3000=m CONFIG_EDAC_I3200=m +# CONFIG_EDAC_IE31200 is not set CONFIG_EDAC_X38=m CONFIG_EDAC_I5400=m CONFIG_EDAC_I7CORE=m @@ -5170,6 +5288,7 @@ CONFIG_RTC_DRV_X1205=m CONFIG_RTC_DRV_PCF2127=m CONFIG_RTC_DRV_PCF8523=m CONFIG_RTC_DRV_PCF8563=m +# CONFIG_RTC_DRV_PCF85063 is not set CONFIG_RTC_DRV_PCF8583=m CONFIG_RTC_DRV_M41T80=m CONFIG_RTC_DRV_M41T80_WDT=y @@ -5187,6 +5306,8 @@ CONFIG_RTC_DRV_RV3029C2=m # CONFIG_RTC_DRV_M41T93 is not set # CONFIG_RTC_DRV_M41T94 is not set # CONFIG_RTC_DRV_DS1305 is not set +# CONFIG_RTC_DRV_DS1343 is not set +# CONFIG_RTC_DRV_DS1347 is not set # CONFIG_RTC_DRV_DS1390 is not set # CONFIG_RTC_DRV_MAX6902 is not set # CONFIG_RTC_DRV_R9701 is not set @@ -5194,6 +5315,7 @@ CONFIG_RTC_DRV_RV3029C2=m # CONFIG_RTC_DRV_DS3234 is not set # CONFIG_RTC_DRV_PCF2123 is not set # CONFIG_RTC_DRV_RX4581 is not set +# CONFIG_RTC_DRV_MCP795 is not set # # Platform RTC drivers @@ -5203,6 +5325,7 @@ CONFIG_RTC_DRV_DS1286=m CONFIG_RTC_DRV_DS1511=m CONFIG_RTC_DRV_DS1553=m CONFIG_RTC_DRV_DS1742=m +CONFIG_RTC_DRV_DS2404=m CONFIG_RTC_DRV_STK17TA8=m CONFIG_RTC_DRV_M48T86=m CONFIG_RTC_DRV_M48T35=m @@ -5211,14 +5334,13 @@ CONFIG_RTC_DRV_MSM6242=m CONFIG_RTC_DRV_BQ4802=m CONFIG_RTC_DRV_RP5C01=m CONFIG_RTC_DRV_V3020=m -CONFIG_RTC_DRV_DS2404=m CONFIG_RTC_DRV_PCF50633=m # # on-CPU RTC drivers # CONFIG_RTC_DRV_MC13XXX=m -# CONFIG_RTC_DRV_MOXART is not set +# CONFIG_RTC_DRV_XGENE is not set # # HID Sensor RTC drivers @@ -5235,8 +5357,6 @@ CONFIG_INTEL_IOATDMA=m CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m CONFIG_DW_DMAC_PCI=m -CONFIG_TIMB_DMA=m -CONFIG_PCH_DMA=m CONFIG_DMA_ENGINE=y CONFIG_DMA_ACPI=y @@ -5302,31 +5422,24 @@ CONFIG_XEN_GRANT_DEV_ALLOC=m CONFIG_SWIOTLB_XEN=y CONFIG_XEN_TMEM=m CONFIG_XEN_PCIDEV_BACKEND=m +# CONFIG_XEN_SCSI_BACKEND is not set CONFIG_XEN_PRIVCMD=m CONFIG_XEN_ACPI_PROCESSOR=m # CONFIG_XEN_MCE_LOG is not set CONFIG_XEN_HAVE_PVMMU=y +CONFIG_XEN_EFI=y CONFIG_STAGING=y -CONFIG_ET131X=m CONFIG_SLICOSS=m -CONFIG_USBIP_CORE=m -CONFIG_USBIP_VHCI_HCD=m -CONFIG_USBIP_HOST=m -# CONFIG_USBIP_DEBUG is not set -CONFIG_W35UND=m CONFIG_PRISM2_USB=m -CONFIG_ECHO=m CONFIG_COMEDI=m # CONFIG_COMEDI_DEBUG is not set CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048 CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480 CONFIG_COMEDI_MISC_DRIVERS=y -CONFIG_COMEDI_KCOMEDILIB=m CONFIG_COMEDI_BOND=m CONFIG_COMEDI_TEST=m CONFIG_COMEDI_PARPORT=m CONFIG_COMEDI_SERIAL2002=m -CONFIG_COMEDI_SKEL=m # CONFIG_COMEDI_ISA_DRIVERS is not set CONFIG_COMEDI_PCI_DRIVERS=y CONFIG_COMEDI_8255_PCI=m @@ -5394,19 +5507,19 @@ CONFIG_COMEDI_NI_MIO_CS=m CONFIG_COMEDI_QUATECH_DAQP_CS=m CONFIG_COMEDI_USB_DRIVERS=y CONFIG_COMEDI_DT9812=m +# CONFIG_COMEDI_NI_USB6501 is not set CONFIG_COMEDI_USBDUX=m CONFIG_COMEDI_USBDUXFAST=m CONFIG_COMEDI_USBDUXSIGMA=m CONFIG_COMEDI_VMK80XX=m CONFIG_COMEDI_8255=m -CONFIG_COMEDI_FC=m +CONFIG_COMEDI_KCOMEDILIB=m CONFIG_COMEDI_AMPLC_DIO200=m CONFIG_COMEDI_AMPLC_PC236=m CONFIG_COMEDI_DAS08=m CONFIG_COMEDI_NI_LABPC=m CONFIG_COMEDI_NI_TIO=m # CONFIG_PANEL is not set -CONFIG_R8187SE=m CONFIG_RTL8192U=m CONFIG_RTLLIB=m CONFIG_RTLLIB_CRYPTO_CCMP=m @@ -5416,27 +5529,13 @@ CONFIG_RTL8192E=m CONFIG_R8712U=m CONFIG_R8188EU=m CONFIG_88EU_AP_MODE=y -CONFIG_88EU_P2P=y -CONFIG_R8821AE=m -CONFIG_RTS5139=m -# CONFIG_RTS5139_DEBUG is not set +# CONFIG_R8723AU is not set CONFIG_RTS5208=m -# CONFIG_RTS5208_DEBUG is not set -# CONFIG_TRANZPORT is not set -CONFIG_IDE_PHISON=m CONFIG_LINE6_USB=m # CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set -CONFIG_USB_SERIAL_QUATECH2=m CONFIG_VT6655=m CONFIG_VT6656=m -CONFIG_DX_SEP=m -CONFIG_WLAGS49_H2=m -CONFIG_WLAGS49_H25=m -CONFIG_FB_SM7XX=m -CONFIG_CRYSTALHD=m CONFIG_FB_XGI=m -CONFIG_ACPI_QUICKSTART=m -CONFIG_USB_ENESTORAGE=m CONFIG_BCM_WIMAX=m CONFIG_FT1000=m CONFIG_FT1000_USB=m @@ -5460,21 +5559,13 @@ CONFIG_SPEAKUP_SYNTH_DUMMY=m CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m CONFIG_STAGING_MEDIA=y -CONFIG_DVB_AS102=m CONFIG_I2C_BCM2048=m CONFIG_DVB_CXD2099=m CONFIG_VIDEO_DT3155=m CONFIG_DT3155_CCIR=y CONFIG_DT3155_STREAMING=y -CONFIG_VIDEO_GO7007=m -CONFIG_VIDEO_GO7007_USB=m -CONFIG_VIDEO_GO7007_LOADER=m -# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set -# CONFIG_USB_MSI3101 is not set CONFIG_VIDEO_V4L2_INT_DEVICE=m CONFIG_VIDEO_TCM825X=m -CONFIG_USB_SN9C102=m -CONFIG_SOLO6X10=m CONFIG_LIRC_STAGING=y CONFIG_LIRC_BT829=m CONFIG_LIRC_IGORPLUGUSB=m @@ -5499,11 +5590,6 @@ CONFIG_WIMAX_GDM72XX_USB=y # CONFIG_WIMAX_GDM72XX_SDIO is not set CONFIG_WIMAX_GDM72XX_USB_PM=y CONFIG_LTE_GDM724X=m -CONFIG_NET_VENDOR_SILICOM=y -CONFIG_SBYPASS=m -CONFIG_BPCTL=m -CONFIG_CED1401=m -CONFIG_DGRP=m CONFIG_FIREWIRE_SERIAL=m CONFIG_FWTTY_MAX_TOTAL_PORTS=64 CONFIG_FWTTY_MAX_CARD_PORTS=32 @@ -5516,16 +5602,21 @@ CONFIG_LNET=m CONFIG_LNET_MAX_PAYLOAD=1048576 CONFIG_LNET_SELFTEST=m CONFIG_LNET_XPRT_IB=m -# CONFIG_XILLYBUS is not set CONFIG_DGNC=m CONFIG_DGAP=m +# CONFIG_GS_FPGABOOT is not set +# CONFIG_CRYPTO_SKEIN is not set +# CONFIG_CRYPTO_THREEFISH is not set +# CONFIG_UNISYSSPAR is not set CONFIG_X86_PLATFORM_DEVICES=y CONFIG_ACER_WMI=m CONFIG_ACERHDF=m +# CONFIG_ALIENWARE_WMI is not set CONFIG_ASUS_LAPTOP=m CONFIG_DELL_LAPTOP=m CONFIG_DELL_WMI=m CONFIG_DELL_WMI_AIO=m +# CONFIG_DELL_SMO8800 is not set CONFIG_FUJITSU_LAPTOP=m # CONFIG_FUJITSU_LAPTOP_DEBUG is not set CONFIG_FUJITSU_TABLET=m @@ -5557,10 +5648,10 @@ CONFIG_MSI_WMI=m CONFIG_TOPSTAR_LAPTOP=m CONFIG_ACPI_TOSHIBA=m CONFIG_TOSHIBA_BT_RFKILL=m +# CONFIG_TOSHIBA_HAPS is not set CONFIG_ACPI_CMPC=m CONFIG_INTEL_IPS=m CONFIG_IBM_RTL=m -CONFIG_XO15_EBOOK=m CONFIG_SAMSUNG_LAPTOP=m CONFIG_MXM_WMI=m CONFIG_INTEL_OAKTRAIL=m @@ -5572,6 +5663,11 @@ CONFIG_PVPANIC=m CONFIG_CHROME_PLATFORMS=y CONFIG_CHROMEOS_LAPTOP=m CONFIG_CHROMEOS_PSTORE=m + +# +# SOC (System On Chip) specific Drivers +# +# CONFIG_SOC_TI is not set CONFIG_CLKDEV_LOOKUP=y CONFIG_HAVE_CLK_PREPARE=y CONFIG_COMMON_CLK=y @@ -5580,13 +5676,23 @@ CONFIG_COMMON_CLK=y # Common Clock Framework # # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_PXA is not set # # Hardware Spinlock drivers # + +# +# Clock Source drivers +# CONFIG_CLKEVT_I8253=y CONFIG_I8253_LOCK=y CONFIG_CLKBLD_I8253=y +# CONFIG_ATMEL_PIT is not set +# CONFIG_SH_TIMER_CMT is not set +# CONFIG_SH_TIMER_MTU2 is not set +# CONFIG_SH_TIMER_TMU is not set +# CONFIG_EM_TIMER_STI is not set # CONFIG_MAILBOX is not set CONFIG_IOMMU_API=y CONFIG_IOMMU_SUPPORT=y @@ -5608,13 +5714,31 @@ CONFIG_STE_MODEM_RPROC=m # # Rpmsg drivers # -# CONFIG_PM_DEVFREQ is not set + +# +# SOC (System On Chip) specific Drivers +# +CONFIG_PM_DEVFREQ=y + +# +# DEVFREQ Governors +# +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m +# CONFIG_DEVFREQ_GOV_PERFORMANCE is not set +# CONFIG_DEVFREQ_GOV_POWERSAVE is not set +# CONFIG_DEVFREQ_GOV_USERSPACE is not set + +# +# DEVFREQ Drivers +# CONFIG_EXTCON=m # # Extcon Device Drivers # CONFIG_EXTCON_GPIO=m +# CONFIG_EXTCON_RT8973A is not set +# CONFIG_EXTCON_SM5502 is not set CONFIG_MEMORY=y # CONFIG_IIO is not set # CONFIG_NTB is not set @@ -5634,10 +5758,12 @@ CONFIG_FMC_CHARDEV=m # PHY Subsystem # CONFIG_GENERIC_PHY=y -CONFIG_PHY_EXYNOS_MIPI_VIDEO=m CONFIG_BCM_KONA_USB2_PHY=m CONFIG_POWERCAP=y CONFIG_INTEL_RAPL=m +# CONFIG_MCB is not set +CONFIG_RAS=y +# CONFIG_THUNDERBOLT is not set # # Firmware Drivers @@ -5659,6 +5785,7 @@ CONFIG_ISCSI_IBFT=m # # CONFIG_EFI_VARS is not set CONFIG_EFI_RUNTIME_MAP=y +CONFIG_EFI_RUNTIME_WRAPPERS=y CONFIG_UEFI_CPER=y # @@ -5727,6 +5854,7 @@ CONFIG_QUOTACTL_COMPAT=y CONFIG_AUTOFS4_FS=y CONFIG_FUSE_FS=m CONFIG_CUSE=m +# CONFIG_OVERLAY_FS is not set # # Caches @@ -5768,6 +5896,7 @@ CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y CONFIG_PROC_SYSCTL=y CONFIG_PROC_PAGE_MONITOR=y +CONFIG_KERNFS=y CONFIG_SYSFS=y CONFIG_TMPFS=y CONFIG_TMPFS_POSIX_ACL=y @@ -5868,6 +5997,7 @@ CONFIG_NFSD_V3_ACL=y CONFIG_NFSD_V4=y CONFIG_NFSD_V4_SECURITY_LABEL=y # CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_GRACE_PERIOD=m CONFIG_LOCKD=m CONFIG_LOCKD_V4=y CONFIG_NFS_ACL_SUPPORT=m @@ -5875,10 +6005,11 @@ CONFIG_NFS_COMMON=y CONFIG_SUNRPC=m CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC_BACKCHANNEL=y -CONFIG_SUNRPC_XPRT_RDMA=m CONFIG_SUNRPC_SWAP=y CONFIG_RPCSEC_GSS_KRB5=m CONFIG_SUNRPC_DEBUG=y +CONFIG_SUNRPC_XPRT_RDMA_CLIENT=m +CONFIG_SUNRPC_XPRT_RDMA_SERVER=m CONFIG_CEPH_FS=m CONFIG_CEPH_FSCACHE=y CONFIG_CEPH_FS_POSIX_ACL=y @@ -5974,7 +6105,7 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y # printk and dmesg options # CONFIG_PRINTK_TIME=y -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_BOOT_PRINTK_DELAY is not set CONFIG_DYNAMIC_DEBUG=y @@ -6034,6 +6165,7 @@ CONFIG_PANIC_ON_OOPS_VALUE=0 CONFIG_PANIC_TIMEOUT=0 CONFIG_SCHED_DEBUG=y CONFIG_SCHEDSTATS=y +# CONFIG_SCHED_STACK_END_CHECK is not set CONFIG_TIMER_STATS=y # CONFIG_DEBUG_PREEMPT is not set @@ -6041,7 +6173,6 @@ CONFIG_TIMER_STATS=y # Lock Debugging (spinlocks, mutexes, etc...) # # CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_MUTEXES is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set @@ -6050,11 +6181,12 @@ CONFIG_TIMER_STATS=y # CONFIG_LOCK_STAT is not set # CONFIG_DEBUG_ATOMIC_SLEEP is not set # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set CONFIG_STACKTRACE=y # CONFIG_DEBUG_KOBJECT is not set CONFIG_DEBUG_BUGVERBOSE=y -# CONFIG_DEBUG_WRITECOUNT is not set # CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_SG is not set # CONFIG_DEBUG_NOTIFIERS is not set # CONFIG_DEBUG_CREDENTIALS is not set @@ -6062,8 +6194,8 @@ CONFIG_DEBUG_BUGVERBOSE=y # # RCU Debugging # -# CONFIG_PROVE_RCU_DELAY is not set # CONFIG_SPARSE_RCU_POINTER is not set +# CONFIG_TORTURE_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set CONFIG_RCU_CPU_STALL_TIMEOUT=60 # CONFIG_RCU_CPU_STALL_VERBOSE is not set @@ -6080,7 +6212,6 @@ CONFIG_NOP_TRACER=y CONFIG_HAVE_FUNCTION_TRACER=y CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y CONFIG_HAVE_DYNAMIC_FTRACE=y CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y @@ -6121,6 +6252,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_FTRACE_STARTUP_TEST is not set CONFIG_MMIOTRACE=y # CONFIG_MMIOTRACE_TEST is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set @@ -6138,10 +6270,14 @@ CONFIG_PERCPU_TEST=m CONFIG_ASYNC_RAID6_TEST=m # CONFIG_TEST_STRING_HELPERS is not set CONFIG_TEST_KSTRTOX=m +# CONFIG_TEST_RHASHTABLE is not set # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set # CONFIG_DMA_API_DEBUG is not set -# CONFIG_TEST_MODULE is not set +# CONFIG_TEST_LKM is not set # CONFIG_TEST_USER_COPY is not set +# CONFIG_TEST_BPF is not set +# CONFIG_TEST_FIRMWARE is not set +# CONFIG_TEST_UDELAY is not set # CONFIG_SAMPLES is not set CONFIG_HAVE_ARCH_KGDB=y # CONFIG_KGDB is not set @@ -6196,7 +6332,11 @@ CONFIG_SECURITY_PATH=y # CONFIG_SECURITY_APPARMOR is not set CONFIG_SECURITY_YAMA=y CONFIG_SECURITY_YAMA_STACKED=y +CONFIG_INTEGRITY=y +# CONFIG_INTEGRITY_SIGNATURE is not set # CONFIG_IMA is not set +# CONFIG_EVM is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set # CONFIG_DEFAULT_SECURITY_YAMA is not set CONFIG_DEFAULT_SECURITY_DAC=y CONFIG_DEFAULT_SECURITY="" @@ -6217,7 +6357,7 @@ CONFIG_CRYPTO_AEAD=m CONFIG_CRYPTO_AEAD2=y CONFIG_CRYPTO_BLKCIPHER=m CONFIG_CRYPTO_BLKCIPHER2=y -CONFIG_CRYPTO_HASH=m +CONFIG_CRYPTO_HASH=y CONFIG_CRYPTO_HASH2=y CONFIG_CRYPTO_RNG=m CONFIG_CRYPTO_RNG2=y @@ -6232,6 +6372,7 @@ CONFIG_CRYPTO_NULL=m CONFIG_CRYPTO_PCRYPT=m CONFIG_CRYPTO_WORKQUEUE=y CONFIG_CRYPTO_CRYPTD=m +# CONFIG_CRYPTO_MCRYPTD is not set CONFIG_CRYPTO_AUTHENC=m CONFIG_CRYPTO_TEST=m CONFIG_CRYPTO_ABLK_HELPER=m @@ -6270,7 +6411,7 @@ CONFIG_CRYPTO_CRC32C=m CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m -CONFIG_CRYPTO_CRCT10DIF=m +CONFIG_CRYPTO_CRCT10DIF=y CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m CONFIG_CRYPTO_GHASH=m CONFIG_CRYPTO_MD4=m @@ -6284,6 +6425,7 @@ CONFIG_CRYPTO_SHA1=m CONFIG_CRYPTO_SHA1_SSSE3=m CONFIG_CRYPTO_SHA256_SSSE3=m CONFIG_CRYPTO_SHA512_SSSE3=m +# CONFIG_CRYPTO_SHA1_MB is not set CONFIG_CRYPTO_SHA256=m CONFIG_CRYPTO_SHA512=m CONFIG_CRYPTO_TGR192=m @@ -6311,6 +6453,7 @@ CONFIG_CRYPTO_CAST5_AVX_X86_64=m CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_CAST6_AVX_X86_64=m CONFIG_CRYPTO_DES=m +# CONFIG_CRYPTO_DES3_EDE_X86_64 is not set CONFIG_CRYPTO_FCRYPT=m CONFIG_CRYPTO_KHAZAD=m CONFIG_CRYPTO_SALSA20=m @@ -6340,6 +6483,7 @@ CONFIG_CRYPTO_LZ4HC=m # Random Number Generation # CONFIG_CRYPTO_ANSI_CPRNG=m +# CONFIG_CRYPTO_DRBG_MENU is not set CONFIG_CRYPTO_USER_API=m CONFIG_CRYPTO_USER_API_HASH=m CONFIG_CRYPTO_USER_API_SKCIPHER=m @@ -6351,12 +6495,15 @@ 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 is not set CONFIG_ASYMMETRIC_KEY_TYPE=m CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=m CONFIG_PUBLIC_KEY_ALGO_RSA=m CONFIG_X509_CERTIFICATE_PARSER=m +# CONFIG_PKCS7_MESSAGE_PARSER is not set CONFIG_HAVE_KVM=y CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y CONFIG_HAVE_KVM_IRQ_ROUTING=y CONFIG_HAVE_KVM_EVENTFD=y CONFIG_KVM_APIC_ARCHITECTURE=y @@ -6387,9 +6534,10 @@ CONFIG_GENERIC_IOMAP=y CONFIG_GENERIC_IO=y CONFIG_PERCPU_RWSEM=y CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_ARCH_HAS_FAST_MULTIPLIER=y CONFIG_CRC_CCITT=m CONFIG_CRC16=m -CONFIG_CRC_T10DIF=m +CONFIG_CRC_T10DIF=y CONFIG_CRC_ITU_T=m CONFIG_CRC32=y # CONFIG_CRC32_SELFTEST is not set @@ -6400,6 +6548,7 @@ CONFIG_CRC32_SLICEBY8=y CONFIG_CRC7=m CONFIG_LIBCRC32C=m CONFIG_CRC8=m +# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set # CONFIG_RANDOM32_SELFTEST is not set CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y @@ -6435,13 +6584,16 @@ CONFIG_TEXTSEARCH_KMP=m CONFIG_TEXTSEARCH_BM=m CONFIG_TEXTSEARCH_FSM=m CONFIG_BTREE=y +CONFIG_INTERVAL_TREE=y CONFIG_ASSOCIATIVE_ARRAY=y CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y +CONFIG_HAS_IOPORT_MAP=y CONFIG_HAS_DMA=y CONFIG_CHECK_SIGNATURE=y CONFIG_CPU_RMAP=y CONFIG_DQL=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set CONFIG_NLATTR=y CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y CONFIG_LRU_CACHE=m @@ -6461,7 +6613,9 @@ CONFIG_FONT_8x16=y # CONFIG_FONT_PEARL_8x8 is not set # CONFIG_FONT_ACORN_8x8 is not set # CONFIG_FONT_MINI_4x6 is not set +# CONFIG_FONT_6x10 is not set # CONFIG_FONT_SUN8x16 is not set # CONFIG_FONT_SUN12x22 is not set # CONFIG_FONT_10x18 is not set CONFIG_FONT_AUTOSELECT=y +CONFIG_ARCH_HAS_SG_CHAIN=y |