generic: drop 3.14
authorLuka Perkov <luka@openwrt.org>
Sat, 11 Apr 2015 10:28:14 +0000 (10:28 +0000)
committerLuka Perkov <luka@openwrt.org>
Sat, 11 Apr 2015 10:28:14 +0000 (10:28 +0000)
Signed-off-by: Luka Perkov <luka@openwrt.org>
SVN-Revision: 45375

208 files changed:
target/linux/generic/config-3.14 [deleted file]
target/linux/generic/patches-3.14/000-keep_initrafs_the_default.patch [deleted file]
target/linux/generic/patches-3.14/010-MIPS-Allow-MIPS_CPU_SCACHE-to-be-used-with-different.patch [deleted file]
target/linux/generic/patches-3.14/020-ssb_update.patch [deleted file]
target/linux/generic/patches-3.14/025-bcma_backport.patch [deleted file]
target/linux/generic/patches-3.14/026-bcma-from-3.20.patch [deleted file]
target/linux/generic/patches-3.14/027-bcma-from-4.1.patch [deleted file]
target/linux/generic/patches-3.14/030-nl80211-Allow-set-network-namespace-by-fd.patch [deleted file]
target/linux/generic/patches-3.14/040-UBI-R-O-block-driver-on-top-of-UBI-volumes.patch [deleted file]
target/linux/generic/patches-3.14/041-UBI-block-do-not-use-term-attach.patch [deleted file]
target/linux/generic/patches-3.14/042-UBI-block-Mark-init-only-symbol-as-__initdata.patch [deleted file]
target/linux/generic/patches-3.14/043-UBI-block-Use-u64-for-the-64-bit-dividend.patch [deleted file]
target/linux/generic/patches-3.14/044-UBI-rename-block-device-ioctls.patch [deleted file]
target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch [deleted file]
target/linux/generic/patches-3.14/046-UBI-avoid-workqueue-format-string-leak.patch [deleted file]
target/linux/generic/patches-3.14/047-UBI-make-UBI_IOCVOLCRBLK-take-a-parameter-for-future.patch [deleted file]
target/linux/generic/patches-3.14/048-mtd-bcm47xxpart-backports-from-3.16.patch [deleted file]
target/linux/generic/patches-3.14/049-mtd-bcm47xxpart-find-NVRAM-partitions-in-middle-bloc.patch [deleted file]
target/linux/generic/patches-3.14/050-mtd-bcm47xxpart-backports-from-3.19.patch [deleted file]
target/linux/generic/patches-3.14/051-mtd-bcm47xxpart-backports-from-3.20.patch [deleted file]
target/linux/generic/patches-3.14/060-net-usb-hso-Add-support-for-Option-GTM671WFS.patch [deleted file]
target/linux/generic/patches-3.14/061-arm_xz_decompressor_build_fix.patch [deleted file]
target/linux/generic/patches-3.14/062-mips_decompressor_build_fix.patch [deleted file]
target/linux/generic/patches-3.14/063-mips_decompressor_memmove.patch [deleted file]
target/linux/generic/patches-3.14/065-iio_ad799x_backport_fixes.patch [deleted file]
target/linux/generic/patches-3.14/070-net-phy-move-PHY-software-reset.patch [deleted file]
target/linux/generic/patches-3.14/071-net-phy-override-PHY-reset.patch [deleted file]
target/linux/generic/patches-3.14/072-net-phy-Check-for-aneg-completion-before-setting-sta.patch [deleted file]
target/linux/generic/patches-3.14/073-net-phy-resume-phydev-when-going-to-RESUMING.patch [deleted file]
target/linux/generic/patches-3.14/074-bgmac-register-napi-before-the-device.patch [deleted file]
target/linux/generic/patches-3.14/075-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch [deleted file]
target/linux/generic/patches-3.14/080-backport_xfrm_crash_fix.patch [deleted file]
target/linux/generic/patches-3.14/090-backport_netfilter_rtcache.patch [deleted file]
target/linux/generic/patches-3.14/100-overlayfs.patch [deleted file]
target/linux/generic/patches-3.14/102-ehci_hcd_ignore_oc.patch [deleted file]
target/linux/generic/patches-3.14/120-bridge_allow_receiption_on_disabled_port.patch [deleted file]
target/linux/generic/patches-3.14/132-mips_inline_dma_ops.patch [deleted file]
target/linux/generic/patches-3.14/200-fix_localversion.patch [deleted file]
target/linux/generic/patches-3.14/201-extra_optimization.patch [deleted file]
target/linux/generic/patches-3.14/202-reduce_module_size.patch [deleted file]
target/linux/generic/patches-3.14/203-kallsyms_uncompressed.patch [deleted file]
target/linux/generic/patches-3.14/204-module_strip.patch [deleted file]
target/linux/generic/patches-3.14/210-darwin_scripts_include.patch [deleted file]
target/linux/generic/patches-3.14/212-byteshift_portability.patch [deleted file]
target/linux/generic/patches-3.14/220-gc_sections.patch [deleted file]
target/linux/generic/patches-3.14/221-module_exports.patch [deleted file]
target/linux/generic/patches-3.14/230-openwrt_lzma_options.patch [deleted file]
target/linux/generic/patches-3.14/250-netfilter_depends.patch [deleted file]
target/linux/generic/patches-3.14/251-sound_kconfig.patch [deleted file]
target/linux/generic/patches-3.14/252-mv_cesa_depends.patch [deleted file]
target/linux/generic/patches-3.14/253-ssb_b43_default_on.patch [deleted file]
target/linux/generic/patches-3.14/254-textsearch_kconfig_hacks.patch [deleted file]
target/linux/generic/patches-3.14/255-lib80211_kconfig_hacks.patch [deleted file]
target/linux/generic/patches-3.14/256-crypto_add_kconfig_prompts.patch [deleted file]
target/linux/generic/patches-3.14/257-wireless_ext_kconfig_hack.patch [deleted file]
target/linux/generic/patches-3.14/258-netfilter_netlink_kconfig_hack.patch [deleted file]
target/linux/generic/patches-3.14/259-regmap_dynamic.patch [deleted file]
target/linux/generic/patches-3.14/260-crypto_test_dependencies.patch [deleted file]
target/linux/generic/patches-3.14/262-compressor_kconfig_hack.patch [deleted file]
target/linux/generic/patches-3.14/300-mips_expose_boot_raw.patch [deleted file]
target/linux/generic/patches-3.14/301-mips_image_cmdline_hack.patch [deleted file]
target/linux/generic/patches-3.14/302-mips_no_branch_likely.patch [deleted file]
target/linux/generic/patches-3.14/304-mips_disable_fpu.patch [deleted file]
target/linux/generic/patches-3.14/305-mips_module_reloc.patch [deleted file]
target/linux/generic/patches-3.14/306-mips_mem_functions_performance.patch [deleted file]
target/linux/generic/patches-3.14/309-mips_fuse_workaround.patch [deleted file]
target/linux/generic/patches-3.14/310-arm_module_unresolved_weak_sym.patch [deleted file]
target/linux/generic/patches-3.14/320-ppc4xx_optimization.patch [deleted file]
target/linux/generic/patches-3.14/321-powerpc_crtsavres_prereq.patch [deleted file]
target/linux/generic/patches-3.14/400-mtd-add-rootfs-split-support.patch [deleted file]
target/linux/generic/patches-3.14/401-mtd-add-support-for-different-partition-parser-types.patch [deleted file]
target/linux/generic/patches-3.14/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch [deleted file]
target/linux/generic/patches-3.14/403-mtd-hook-mtdsplit-to-Kbuild.patch [deleted file]
target/linux/generic/patches-3.14/404-mtd-add-more-helper-functions.patch [deleted file]
target/linux/generic/patches-3.14/405-mtd-old-firmware-uimage-splitter.patch [deleted file]
target/linux/generic/patches-3.14/406-mtd-old-rootfs-squashfs-splitter.patch [deleted file]
target/linux/generic/patches-3.14/410-mtd-move-forward-declaration-of-struct-mtd_info.patch [deleted file]
target/linux/generic/patches-3.14/411-mtd-partial_eraseblock_write.patch [deleted file]
target/linux/generic/patches-3.14/412-mtd-partial_eraseblock_unlock.patch [deleted file]
target/linux/generic/patches-3.14/420-mtd-redboot_space.patch [deleted file]
target/linux/generic/patches-3.14/430-mtd-add-myloader-partition-parser.patch [deleted file]
target/linux/generic/patches-3.14/431-mtd-bcm47xxpart-support-for-Xiaomi-specific-board_da.patch [deleted file]
target/linux/generic/patches-3.14/432-mtd-bcm47xxpart-detect-T_Meter-partition.patch [deleted file]
target/linux/generic/patches-3.14/440-block2mtd_init.patch [deleted file]
target/linux/generic/patches-3.14/441-block2mtd_probe.patch [deleted file]
target/linux/generic/patches-3.14/450-mtd-nand-allow-to-use-platform-specific-chip-fixup.patch [deleted file]
target/linux/generic/patches-3.14/451-mtd-nand-fix-return-code-of-nand_correct_data-function.patch [deleted file]
target/linux/generic/patches-3.14/460-mtd-cfi_cmdset_0002-no-erase_suspend.patch [deleted file]
target/linux/generic/patches-3.14/461-mtd-cfi_cmdset_0002-add-buffer-write-cmd-timeout.patch [deleted file]
target/linux/generic/patches-3.14/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch [deleted file]
target/linux/generic/patches-3.14/472-mtd-m25p80-add-support-for-Winbond-W25X05-flash.patch [deleted file]
target/linux/generic/patches-3.14/473-mtd-m25p80-add-support-for-EON-EN25QH128-flash.patch [deleted file]
target/linux/generic/patches-3.14/480-mtd-set-rootfs-to-be-root-dev.patch [deleted file]
target/linux/generic/patches-3.14/490-mtd-ubi-add-EOF-marker-support.patch [deleted file]
target/linux/generic/patches-3.14/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch [deleted file]
target/linux/generic/patches-3.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch [deleted file]
target/linux/generic/patches-3.14/492-try-auto-mounting-ubi0-rootfs-in-init-do_mounts.c.patch [deleted file]
target/linux/generic/patches-3.14/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch [deleted file]
target/linux/generic/patches-3.14/500-yaffs-Kbuild-integration.patch [deleted file]
target/linux/generic/patches-3.14/501-yaffs-add-missing-flush-arguments.patch [deleted file]
target/linux/generic/patches-3.14/502-yaffs-fix-compat-tags-handling.patch [deleted file]
target/linux/generic/patches-3.14/503-yaffs-add-tags-9bytes-mount-option.patch [deleted file]
target/linux/generic/patches-3.14/504-yaffs-3.16-new-fops.patch [deleted file]
target/linux/generic/patches-3.14/520-squashfs_update_xz_comp_opts.patch [deleted file]
target/linux/generic/patches-3.14/530-jffs2_make_lzma_available.patch [deleted file]
target/linux/generic/patches-3.14/531-debloat_lzma.patch [deleted file]
target/linux/generic/patches-3.14/532-jffs2_eofdetect.patch [deleted file]
target/linux/generic/patches-3.14/540-crypto-xz-decompression-support.patch [deleted file]
target/linux/generic/patches-3.14/541-ubifs-xz-decompression-support.patch [deleted file]
target/linux/generic/patches-3.14/550-ubifs-symlink-xattr-support.patch [deleted file]
target/linux/generic/patches-3.14/551-ubifs-fix-default-compression-selection.patch [deleted file]
target/linux/generic/patches-3.14/552-ubifs-respect-silent-mount-flag.patch [deleted file]
target/linux/generic/patches-3.14/600-netfilter_layer7_2.22.patch [deleted file]
target/linux/generic/patches-3.14/601-netfilter_layer7_pktmatch.patch [deleted file]
target/linux/generic/patches-3.14/602-netfilter_layer7_match.patch [deleted file]
target/linux/generic/patches-3.14/603-netfilter_layer7_2.6.36_fix.patch [deleted file]
target/linux/generic/patches-3.14/604-netfilter_conntrack_flush.patch [deleted file]
target/linux/generic/patches-3.14/610-netfilter_match_bypass_default_checks.patch [deleted file]
target/linux/generic/patches-3.14/611-netfilter_match_bypass_default_table.patch [deleted file]
target/linux/generic/patches-3.14/612-netfilter_match_reduce_memory_access.patch [deleted file]
target/linux/generic/patches-3.14/613-netfilter_optional_tcp_window_check.patch [deleted file]
target/linux/generic/patches-3.14/615-netfilter_add_xt_id_match.patch [deleted file]
target/linux/generic/patches-3.14/616-net_optimize_xfrm_calls.patch [deleted file]
target/linux/generic/patches-3.14/620-sched_esfq.patch [deleted file]
target/linux/generic/patches-3.14/621-sched_act_connmark.patch [deleted file]
target/linux/generic/patches-3.14/630-packet_socket_type.patch [deleted file]
target/linux/generic/patches-3.14/640-bridge_no_eap_forward.patch [deleted file]
target/linux/generic/patches-3.14/641-bridge_always_accept_eap.patch [deleted file]
target/linux/generic/patches-3.14/642-bridge_port_isolate.patch [deleted file]
target/linux/generic/patches-3.14/643-bridge_remove_ipv6_dependency.patch [deleted file]
target/linux/generic/patches-3.14/644-bridge_optimize_netfilter_hooks.patch [deleted file]
target/linux/generic/patches-3.14/645-bridge_multicast_to_unicast.patch [deleted file]
target/linux/generic/patches-3.14/650-pppoe_header_pad.patch [deleted file]
target/linux/generic/patches-3.14/651-wireless_mesh_header.patch [deleted file]
target/linux/generic/patches-3.14/652-atm_header_changes.patch [deleted file]
target/linux/generic/patches-3.14/653-disable_netlink_trim.patch [deleted file]
target/linux/generic/patches-3.14/655-increase_skb_pad.patch [deleted file]
target/linux/generic/patches-3.14/656-skb_reduce_truesize-helper.patch [deleted file]
target/linux/generic/patches-3.14/657-qdisc_reduce_truesize.patch [deleted file]
target/linux/generic/patches-3.14/660-fq_codel_defaults.patch [deleted file]
target/linux/generic/patches-3.14/661-fq_codel_keep_dropped_stats.patch [deleted file]
target/linux/generic/patches-3.14/662-use_fq_codel_by_default.patch [deleted file]
target/linux/generic/patches-3.14/663-remove_pfifo_fast.patch [deleted file]
target/linux/generic/patches-3.14/664-codel_fix_3_12.patch [deleted file]
target/linux/generic/patches-3.14/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch [deleted file]
target/linux/generic/patches-3.14/668-fix-ipv6-throw-routes.patch [deleted file]
target/linux/generic/patches-3.14/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch [deleted file]
target/linux/generic/patches-3.14/671-net-provide-defines-for-_POLICY_FAILED-until-all-cod.patch [deleted file]
target/linux/generic/patches-3.14/700-swconfig.patch [deleted file]
target/linux/generic/patches-3.14/701-phy_extension.patch [deleted file]
target/linux/generic/patches-3.14/702-phy_add_aneg_done_function.patch [deleted file]
target/linux/generic/patches-3.14/703-phy-add-detach-callback-to-struct-phy_driver.patch [deleted file]
target/linux/generic/patches-3.14/704-phy-no-genphy-soft-reset.patch [deleted file]
target/linux/generic/patches-3.14/710-phy-add-mdio_register_board_info.patch [deleted file]
target/linux/generic/patches-3.14/720-phy_adm6996.patch [deleted file]
target/linux/generic/patches-3.14/721-phy_packets.patch [deleted file]
target/linux/generic/patches-3.14/722-phy_mvswitch.patch [deleted file]
target/linux/generic/patches-3.14/723-phy_ip175c.patch [deleted file]
target/linux/generic/patches-3.14/724-phy_ar8216.patch [deleted file]
target/linux/generic/patches-3.14/725-phy_rtl8306.patch [deleted file]
target/linux/generic/patches-3.14/726-phy_rtl8366.patch [deleted file]
target/linux/generic/patches-3.14/727-phy-rtl8367.patch [deleted file]
target/linux/generic/patches-3.14/728-phy-rtl8367b.patch [deleted file]
target/linux/generic/patches-3.14/729-phy-tantos.patch [deleted file]
target/linux/generic/patches-3.14/730-phy_b53.patch [deleted file]
target/linux/generic/patches-3.14/731-phy_mvswitch_3.10_compilation.patch [deleted file]
target/linux/generic/patches-3.14/732-phy-ar8216-led-support.patch [deleted file]
target/linux/generic/patches-3.14/733-phy_mvsw61xx.patch [deleted file]
target/linux/generic/patches-3.14/750-hostap_txpower.patch [deleted file]
target/linux/generic/patches-3.14/770-bgmac-fix-device-initialization-on-Northstar-SoCs-co.patch [deleted file]
target/linux/generic/patches-3.14/773-bgmac-add-srab-switch.patch [deleted file]
target/linux/generic/patches-3.14/775-bgmac-check-length-of-received-frame.patch [deleted file]
target/linux/generic/patches-3.14/780-igb-Fix-Null-pointer-dereference-in-igb_reset_q_vect.patch [deleted file]
target/linux/generic/patches-3.14/785-hso-support-0af0-9300.patch [deleted file]
target/linux/generic/patches-3.14/810-pci_disable_common_quirks.patch [deleted file]
target/linux/generic/patches-3.14/811-pci_disable_usb_common_quirks.patch [deleted file]
target/linux/generic/patches-3.14/820-usb_add_usb_find_device_by_name.patch [deleted file]
target/linux/generic/patches-3.14/830-ledtrig_morse.patch [deleted file]
target/linux/generic/patches-3.14/831-ledtrig_netdev.patch [deleted file]
target/linux/generic/patches-3.14/832-ledtrig_usbdev.patch [deleted file]
target/linux/generic/patches-3.14/834-ledtrig-libata.patch [deleted file]
target/linux/generic/patches-3.14/840-rtc7301.patch [deleted file]
target/linux/generic/patches-3.14/841-rtc_pt7c4338.patch [deleted file]
target/linux/generic/patches-3.14/861-04_spi_gpio_implement_spi_delay.patch [deleted file]
target/linux/generic/patches-3.14/862-gpio_spi_driver.patch [deleted file]
target/linux/generic/patches-3.14/863-gpiommc.patch [deleted file]
target/linux/generic/patches-3.14/864-gpiommc_configfs_locking.patch [deleted file]
target/linux/generic/patches-3.14/870-hifn795x_byteswap.patch [deleted file]
target/linux/generic/patches-3.14/880-gateworks_system_controller.patch [deleted file]
target/linux/generic/patches-3.14/890-8250_optional_sysrq.patch [deleted file]
target/linux/generic/patches-3.14/900-slab_maxsize.patch [deleted file]
target/linux/generic/patches-3.14/901-debloat_sock_diag.patch [deleted file]
target/linux/generic/patches-3.14/902-debloat_proc.patch [deleted file]
target/linux/generic/patches-3.14/903-debloat_direct_io.patch [deleted file]
target/linux/generic/patches-3.14/910-kobject_uevent.patch [deleted file]
target/linux/generic/patches-3.14/911-kobject_add_broadcast_uevent.patch [deleted file]
target/linux/generic/patches-3.14/921-use_preinit_as_init.patch [deleted file]
target/linux/generic/patches-3.14/922-always-create-console-node-in-initramfs.patch [deleted file]
target/linux/generic/patches-3.14/930-crashlog.patch [deleted file]
target/linux/generic/patches-3.14/940-ocf_kbuild_integration.patch [deleted file]
target/linux/generic/patches-3.14/941-ocf_20120127.patch [deleted file]
target/linux/generic/patches-3.14/960-decompress_unlzo_fix.patch [deleted file]
target/linux/generic/patches-3.14/970-remove-unsane-filenames-from-deps_initramfs-list.patch [deleted file]
target/linux/generic/patches-3.14/980-arm_openwrt_machtypes.patch [deleted file]
target/linux/generic/patches-3.14/990-gpio_wdt.patch [deleted file]
target/linux/generic/patches-3.14/996-zsmalloc_allow_module_build.patch [deleted file]
target/linux/generic/patches-3.14/997-device_tree_cmdline.patch [deleted file]
target/linux/generic/patches-3.14/998-enable_wilink_platform_without_drivers.patch [deleted file]

diff --git a/target/linux/generic/config-3.14 b/target/linux/generic/config-3.14
deleted file mode 100644 (file)
index 735c3e9..0000000
+++ /dev/null
@@ -1,4339 +0,0 @@
-CONFIG_32BIT=y
-# CONFIG_6PACK is not set
-# CONFIG_8139CP is not set
-# CONFIG_8139TOO is not set
-# CONFIG_9P_FS is not set
-# CONFIG_AB3100_CORE is not set
-# CONFIG_AB8500_CORE is not set
-# CONFIG_ABX500_CORE is not set
-# CONFIG_ACCESSIBILITY is not set
-# CONFIG_ACENIC is not set
-# CONFIG_ACERHDF is not set
-# CONFIG_ACORN_PARTITION is not set
-# CONFIG_ACPI_APEI is not set
-# CONFIG_ACPI_CUSTOM_METHOD is not set
-# CONFIG_ACPI_EXTLOG is not set
-# CONFIG_ACPI_HED is not set
-# CONFIG_ACPI_INT3403_THERMAL is not set
-# CONFIG_ACPI_POWER_METER is not set
-# CONFIG_ACPI_QUICKSTART is not set
-# CONFIG_AD2S1200 is not set
-# CONFIG_AD2S1210 is not set
-# CONFIG_AD2S90 is not set
-# CONFIG_AD5064 is not set
-# CONFIG_AD525X_DPOT is not set
-# CONFIG_AD5360 is not set
-# CONFIG_AD5380 is not set
-# CONFIG_AD5421 is not set
-# CONFIG_AD5446 is not set
-# CONFIG_AD5449 is not set
-# CONFIG_AD5504 is not set
-# CONFIG_AD5624R_SPI is not set
-# CONFIG_AD5686 is not set
-# CONFIG_AD5755 is not set
-# CONFIG_AD5764 is not set
-# CONFIG_AD5791 is not set
-# CONFIG_AD5930 is not set
-# CONFIG_AD5933 is not set
-# CONFIG_AD7150 is not set
-# CONFIG_AD7152 is not set
-# CONFIG_AD7192 is not set
-# CONFIG_AD7266 is not set
-# CONFIG_AD7280 is not set
-# CONFIG_AD7291 is not set
-# CONFIG_AD7298 is not set
-# CONFIG_AD7303 is not set
-# CONFIG_AD7476 is not set
-# CONFIG_AD7606 is not set
-# CONFIG_AD7746 is not set
-# CONFIG_AD7780 is not set
-# CONFIG_AD7791 is not set
-# CONFIG_AD7793 is not set
-# CONFIG_AD7816 is not set
-# CONFIG_AD7887 is not set
-# CONFIG_AD7923 is not set
-# CONFIG_AD799X is not set
-# CONFIG_AD8366 is not set
-# CONFIG_AD9523 is not set
-# CONFIG_AD9832 is not set
-# CONFIG_AD9834 is not set
-# CONFIG_AD9850 is not set
-# CONFIG_AD9852 is not set
-# CONFIG_AD9910 is not set
-# CONFIG_AD9951 is not set
-# CONFIG_ADAPTEC_STARFIRE is not set
-# CONFIG_ADE7753 is not set
-# CONFIG_ADE7754 is not set
-# CONFIG_ADE7758 is not set
-# CONFIG_ADE7759 is not set
-# CONFIG_ADE7854 is not set
-# CONFIG_ADF4350 is not set
-# CONFIG_ADFS_FS is not set
-# CONFIG_ADIS16060 is not set
-# CONFIG_ADIS16080 is not set
-# CONFIG_ADIS16130 is not set
-# CONFIG_ADIS16136 is not set
-# CONFIG_ADIS16201 is not set
-# CONFIG_ADIS16203 is not set
-# CONFIG_ADIS16204 is not set
-# CONFIG_ADIS16209 is not set
-# CONFIG_ADIS16220 is not set
-# CONFIG_ADIS16240 is not set
-# CONFIG_ADIS16255 is not set
-# CONFIG_ADIS16260 is not set
-# CONFIG_ADIS16400 is not set
-# CONFIG_ADIS16480 is not set
-# CONFIG_ADJD_S311 is not set
-# CONFIG_ADM6996_PHY is not set
-# CONFIG_ADM8211 is not set
-# CONFIG_ADT7316 is not set
-# CONFIG_ADXRS450 is not set
-CONFIG_AEABI=y
-# CONFIG_AFFS_FS is not set
-# CONFIG_AFS_FS is not set
-# CONFIG_AF_RXRPC is not set
-# CONFIG_AGP is not set
-CONFIG_AIO=y
-# CONFIG_AIRO is not set
-# CONFIG_AIRO_CS is not set
-# CONFIG_AIX_PARTITION is not set
-# CONFIG_AK8975 is not set
-# CONFIG_ALCHEMY_GPIO_INDIRECT is not set
-# CONFIG_ALIM7101_WDT is not set
-# CONFIG_ALTERA_STAPL is not set
-# CONFIG_ALX is not set
-# CONFIG_AM335X_PHY_USB is not set
-# CONFIG_AMD8111_ETH is not set
-# CONFIG_AMD_PHY is not set
-# CONFIG_AMIGA_PARTITION is not set
-# CONFIG_AMILO_RFKILL is not set
-# CONFIG_ANDROID is not set
-CONFIG_ANON_INODES=y
-# CONFIG_APDS9300 is not set
-# CONFIG_APDS9802ALS is not set
-# CONFIG_APM8018X is not set
-# CONFIG_APPLICOM is not set
-# CONFIG_AR5523 is not set
-# CONFIG_AR7 is not set
-# CONFIG_AR8216_PHY is not set
-# CONFIG_AR8216_PHY_LEDS is not set
-# CONFIG_ARCH_AT91 is not set
-# CONFIG_ARCH_BCM is not set
-# CONFIG_ARCH_BCM2835 is not set
-# CONFIG_ARCH_BCMRING is not set
-# CONFIG_ARCH_BERLIN is not set
-# CONFIG_ARCH_CLPS711X is not set
-# CONFIG_ARCH_CNS3XXX is not set
-# CONFIG_ARCH_DAVINCI is not set
-# CONFIG_ARCH_DMA_ADDR_T_64BIT is not set
-# CONFIG_ARCH_DOVE is not set
-# CONFIG_ARCH_EBSA110 is not set
-# CONFIG_ARCH_EP93XX is not set
-# CONFIG_ARCH_EXYNOS is not set
-CONFIG_ARCH_FLATMEM_ENABLE=y
-# CONFIG_ARCH_FOOTBRIDGE is not set
-# CONFIG_ARCH_GEMINI is not set
-# CONFIG_ARCH_H720X is not set
-# CONFIG_ARCH_HAS_ILOG2_U32 is not set
-# CONFIG_ARCH_HAS_ILOG2_U64 is not set
-# CONFIG_ARCH_HI3xxx is not set
-# CONFIG_ARCH_HIGHBANK is not set
-# CONFIG_ARCH_INTEGRATOR is not set
-# CONFIG_ARCH_IOP13XX is not set
-# CONFIG_ARCH_IOP32X is not set
-# CONFIG_ARCH_IOP33X is not set
-# CONFIG_ARCH_IXP2000 is not set
-# CONFIG_ARCH_IXP23XX is not set
-# CONFIG_ARCH_IXP4XX is not set
-# CONFIG_ARCH_KEYSTONE is not set
-# CONFIG_ARCH_KIRKWOOD is not set
-# CONFIG_ARCH_KS8695 is not set
-# CONFIG_ARCH_LPC32XX is not set
-# CONFIG_ARCH_MMP is not set
-# CONFIG_ARCH_MSM_DT is not set
-# CONFIG_ARCH_MSM_NODT is not set
-# CONFIG_ARCH_MULTIPLATFORM is not set
-# CONFIG_ARCH_MULTI_V6 is not set
-# CONFIG_ARCH_MULTI_V7 is not set
-# CONFIG_ARCH_MV78XX0 is not set
-# CONFIG_ARCH_MVEBU is not set
-# CONFIG_ARCH_MXC is not set
-# CONFIG_ARCH_MXS is not set
-# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set
-# CONFIG_ARCH_NETX is not set
-# CONFIG_ARCH_NOMADIK is not set
-# CONFIG_ARCH_NUC93X is not set
-# CONFIG_ARCH_OMAP is not set
-# CONFIG_ARCH_OMAP1 is not set
-# CONFIG_ARCH_OMAP2PLUS is not set
-# CONFIG_ARCH_OMAP3 is not set
-# CONFIG_ARCH_OMAP4 is not set
-# CONFIG_ARCH_ORION5X is not set
-# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
-# CONFIG_ARCH_PICOXCELL is not set
-# CONFIG_ARCH_PNX4008 is not set
-# CONFIG_ARCH_PRIMA2 is not set
-# CONFIG_ARCH_PXA is not set
-# CONFIG_ARCH_REALVIEW is not set
-# CONFIG_ARCH_ROCKCHIP is not set
-# CONFIG_ARCH_RPC is not set
-# CONFIG_ARCH_S3C24XX is not set
-# CONFIG_ARCH_S3C64XX is not set
-# CONFIG_ARCH_S5P64X0 is not set
-# CONFIG_ARCH_S5PC100 is not set
-# CONFIG_ARCH_S5PV210 is not set
-# CONFIG_ARCH_SA1100 is not set
-# CONFIG_ARCH_SHARK is not set
-# CONFIG_ARCH_SHMOBILE is not set
-# CONFIG_ARCH_SHMOBILE_LEGACY is not set
-# CONFIG_ARCH_SHMOBILE_MULTI is not set
-# CONFIG_ARCH_SIRF is not set
-# CONFIG_ARCH_SOCFPGA is not set
-# CONFIG_ARCH_STI is not set
-# CONFIG_ARCH_SUNXI is not set
-# CONFIG_ARCH_SUPPORTS_MSI is not set
-# CONFIG_ARCH_TCC_926 is not set
-# CONFIG_ARCH_TEGRA is not set
-# CONFIG_ARCH_U300 is not set
-# CONFIG_ARCH_U8500 is not set
-# CONFIG_ARCH_VERSATILE is not set
-# CONFIG_ARCH_VEXPRESS is not set
-# CONFIG_ARCH_VIRT is not set
-# CONFIG_ARCH_VT8500 is not set
-# CONFIG_ARCH_W90X900 is not set
-# CONFIG_ARCH_WM8850 is not set
-# CONFIG_ARCH_ZYNQ is not set
-# CONFIG_ARCNET is not set
-# CONFIG_ARC_EMAC is not set
-# CONFIG_ARM_APPENDED_DTB is not set
-# CONFIG_ARM_ARCH_TIMER is not set
-# CONFIG_ARM_AT91_ETHER is not set
-# CONFIG_ARM_CCI is not set
-CONFIG_ARM_CPU_TOPOLOGY=y
-CONFIG_ARM_DMA_MEM_BUFFERABLE=y
-# CONFIG_ARM_ERRATA_326103 is not set
-# CONFIG_ARM_ERRATA_364296 is not set
-# CONFIG_ARM_ERRATA_411920 is not set
-# CONFIG_ARM_ERRATA_430973 is not set
-# CONFIG_ARM_ERRATA_458693 is not set
-# CONFIG_ARM_ERRATA_460075 is not set
-# CONFIG_ARM_ERRATA_643719 is not set
-# CONFIG_ARM_ERRATA_720789 is not set
-# CONFIG_ARM_ERRATA_742230 is not set
-# CONFIG_ARM_ERRATA_742231 is not set
-# CONFIG_ARM_ERRATA_743622 is not set
-# CONFIG_ARM_ERRATA_751472 is not set
-# CONFIG_ARM_ERRATA_754322 is not set
-# CONFIG_ARM_ERRATA_754327 is not set
-# CONFIG_ARM_ERRATA_764369 is not set
-# CONFIG_ARM_ERRATA_773022 is not set
-# CONFIG_ARM_ERRATA_775420 is not set
-# CONFIG_ARM_ERRATA_798181 is not set
-# CONFIG_ARM_KPROBES_TEST is not set
-# CONFIG_ARM_PATCH_PHYS_VIRT is not set
-# CONFIG_ARM_PSCI is not set
-# CONFIG_ARM_PTDUMP is not set
-# CONFIG_ARM_UNWIND is not set
-# CONFIG_ARM_VIRT_EXT is not set
-CONFIG_ARPD=y
-# CONFIG_ARTHUR is not set
-# CONFIG_ASUS_OLED is not set
-# CONFIG_ASYMMETRIC_KEY_TYPE is not set
-# CONFIG_ASYNC_RAID6_TEST is not set
-# CONFIG_ASYNC_TX_DMA is not set
-# CONFIG_AT76C50X_USB is not set
-# CONFIG_AT803X_PHY is not set
-# CONFIG_ATA is not set
-# CONFIG_ATAGS is not set
-CONFIG_ATAGS_PROC=y
-# CONFIG_ATALK is not set
-# CONFIG_ATARI_PARTITION is not set
-# CONFIG_ATA_ACPI is not set
-CONFIG_ATA_BMDMA=y
-# CONFIG_ATA_GENERIC is not set
-# CONFIG_ATA_NONSTANDARD is not set
-# CONFIG_ATA_OVER_ETH is not set
-# CONFIG_ATA_PIIX is not set
-CONFIG_ATA_SFF=y
-# CONFIG_ATA_VERBOSE_ERROR is not set
-# CONFIG_ATH10K is not set
-# CONFIG_ATH5K is not set
-# CONFIG_ATH6KL is not set
-# CONFIG_ATH6K_LEGACY is not set
-# CONFIG_ATH79 is not set
-# CONFIG_ATH9K is not set
-# CONFIG_ATH9K_HTC is not set
-# CONFIG_ATH_DEBUG is not set
-# CONFIG_ATL1 is not set
-# CONFIG_ATL1C is not set
-# CONFIG_ATL1E is not set
-# CONFIG_ATL2 is not set
-# CONFIG_ATM is not set
-# CONFIG_ATMEL is not set
-# CONFIG_ATMEL_PWM is not set
-# CONFIG_ATMEL_SSC is not set
-# CONFIG_ATM_AMBASSADOR is not set
-# CONFIG_ATM_BR2684 is not set
-CONFIG_ATM_BR2684_IPFILTER=y
-# CONFIG_ATM_CLIP is not set
-CONFIG_ATM_CLIP_NO_ICMP=y
-# CONFIG_ATM_DRIVERS is not set
-# CONFIG_ATM_DUMMY is not set
-# CONFIG_ATM_ENI is not set
-# CONFIG_ATM_FIRESTREAM is not set
-# CONFIG_ATM_FORE200E is not set
-# CONFIG_ATM_HE is not set
-# CONFIG_ATM_HORIZON is not set
-# CONFIG_ATM_IA is not set
-# CONFIG_ATM_IDT77252 is not set
-# CONFIG_ATM_LANAI is not set
-# CONFIG_ATM_LANE is not set
-# CONFIG_ATM_MPOA is not set
-# CONFIG_ATM_NICSTAR is not set
-# CONFIG_ATM_SOLOS is not set
-# CONFIG_ATM_TCP is not set
-# CONFIG_ATM_ZATM is not set
-# CONFIG_ATOMIC64_SELFTEST is not set
-# CONFIG_ATP is not set
-# CONFIG_AUDIT is not set
-# CONFIG_AUDIT_LOGINUID_IMMUTABLE is not set
-# CONFIG_AUTOFS4_FS is not set
-# CONFIG_AUTO_ZRELADDR is not set
-# CONFIG_AUXDISPLAY is not set
-# CONFIG_AVERAGE is not set
-# CONFIG_AX25 is not set
-# CONFIG_AX25_DAMA_SLAVE is not set
-# CONFIG_AX88796 is not set
-# CONFIG_B43 is not set
-# CONFIG_B43LEGACY is not set
-# CONFIG_B44 is not set
-# CONFIG_B53 is not set
-# CONFIG_B53_SPI_DRIVER is not set
-# CONFIG_BACKLIGHT_BD6107 is not set
-# CONFIG_BACKLIGHT_GPIO is not set
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-# CONFIG_BACKLIGHT_LM3630 is not set
-# CONFIG_BACKLIGHT_LM3630A is not set
-# CONFIG_BACKLIGHT_LM3639 is not set
-# CONFIG_BACKLIGHT_LP855X is not set
-# CONFIG_BACKLIGHT_LV5207LP is not set
-# CONFIG_BACKLIGHT_PANDORA is not set
-# CONFIG_BACKTRACE_SELF_TEST is not set
-CONFIG_BASE_FULL=y
-CONFIG_BASE_SMALL=0
-# CONFIG_BATMAN_ADV is not set
-# CONFIG_BATTERY_BQ27x00 is not set
-# CONFIG_BATTERY_DS2760 is not set
-# CONFIG_BATTERY_DS2780 is not set
-# CONFIG_BATTERY_DS2781 is not set
-# CONFIG_BATTERY_DS2782 is not set
-# CONFIG_BATTERY_GOLDFISH is not set
-# CONFIG_BATTERY_MAX17040 is not set
-# CONFIG_BATTERY_MAX17042 is not set
-# CONFIG_BATTERY_SBS is not set
-# CONFIG_BAYCOM_EPP is not set
-# CONFIG_BAYCOM_PAR is not set
-# CONFIG_BAYCOM_SER_FDX is not set
-# CONFIG_BAYCOM_SER_HDX is not set
-# CONFIG_BCACHE is not set
-# CONFIG_BCM47XX is not set
-# CONFIG_BCM63XX is not set
-# CONFIG_BCM63XX_PHY is not set
-# CONFIG_BCM87XX_PHY is not set
-# CONFIG_BCMA is not set
-# CONFIG_BCMA_DRIVER_GPIO is not set
-CONFIG_BCMA_POSSIBLE=y
-# CONFIG_BCM_KONA_USB2_PHY is not set
-# CONFIG_BCM_WIMAX is not set
-# CONFIG_BDI_SWITCH is not set
-# CONFIG_BE2ISCSI is not set
-# CONFIG_BE2NET is not set
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_BGMAC is not set
-# CONFIG_BIG_KEYS is not set
-# CONFIG_BIG_LITTLE is not set
-# CONFIG_BINARY_PRINTF is not set
-# CONFIG_BINFMT_AOUT is not set
-CONFIG_BINFMT_ELF=y
-# CONFIG_BINFMT_MISC is not set
-CONFIG_BINFMT_SCRIPT=y
-CONFIG_BITREVERSE=y
-# CONFIG_BLK_CMDLINE_PARSER is not set
-# CONFIG_BLK_CPQ_CISS_DA is not set
-# CONFIG_BLK_CPQ_DA is not set
-CONFIG_BLK_DEV=y
-# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
-# CONFIG_BLK_DEV_4DRIVES is not set
-# CONFIG_BLK_DEV_AEC62XX is not set
-# CONFIG_BLK_DEV_ALI14XX is not set
-# CONFIG_BLK_DEV_ALI15X3 is not set
-# CONFIG_BLK_DEV_AMD74XX is not set
-# CONFIG_BLK_DEV_ATIIXP is not set
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_BLK_DEV_BSGLIB is not set
-# CONFIG_BLK_DEV_CMD640 is not set
-# CONFIG_BLK_DEV_CMD64X is not set
-# CONFIG_BLK_DEV_COW_COMMON is not set
-# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-# CONFIG_BLK_DEV_CS5520 is not set
-# CONFIG_BLK_DEV_CS5530 is not set
-# CONFIG_BLK_DEV_CS5535 is not set
-# CONFIG_BLK_DEV_CS5536 is not set
-# CONFIG_BLK_DEV_CY82C693 is not set
-# CONFIG_BLK_DEV_DAC960 is not set
-# CONFIG_BLK_DEV_DELKIN is not set
-# CONFIG_BLK_DEV_DRBD is not set
-# CONFIG_BLK_DEV_DTC2278 is not set
-# CONFIG_BLK_DEV_FD is not set
-# CONFIG_BLK_DEV_GENERIC is not set
-# CONFIG_BLK_DEV_HD is not set
-# CONFIG_BLK_DEV_HPT366 is not set
-# CONFIG_BLK_DEV_HT6560B is not set
-# CONFIG_BLK_DEV_IDEACPI is not set
-# CONFIG_BLK_DEV_IDECD is not set
-# CONFIG_BLK_DEV_IDECS is not set
-# CONFIG_BLK_DEV_IDEPCI is not set
-# CONFIG_BLK_DEV_IDEPNP is not set
-# CONFIG_BLK_DEV_IDETAPE is not set
-# CONFIG_BLK_DEV_IDE_AU1XXX is not set
-# CONFIG_BLK_DEV_IDE_SATA is not set
-CONFIG_BLK_DEV_INITRD=y
-# CONFIG_BLK_DEV_INTEGRITY is not set
-# CONFIG_BLK_DEV_IO_TRACE is not set
-# CONFIG_BLK_DEV_IT8172 is not set
-# CONFIG_BLK_DEV_IT8213 is not set
-# CONFIG_BLK_DEV_IT821X is not set
-# CONFIG_BLK_DEV_JMICRON is not set
-# CONFIG_BLK_DEV_LOOP is not set
-CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_NS87415 is not set
-# CONFIG_BLK_DEV_NULL_BLK is not set
-# CONFIG_BLK_DEV_NVME is not set
-# CONFIG_BLK_DEV_OFFBOARD is not set
-# CONFIG_BLK_DEV_OPTI621 is not set
-# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
-# CONFIG_BLK_DEV_PDC202XX_NEW is not set
-# CONFIG_BLK_DEV_PDC202XX_OLD is not set
-# CONFIG_BLK_DEV_PIIX is not set
-# CONFIG_BLK_DEV_PLATFORM is not set
-# CONFIG_BLK_DEV_QD65XX is not set
-# CONFIG_BLK_DEV_RAM is not set
-# CONFIG_BLK_DEV_RBD is not set
-# CONFIG_BLK_DEV_RSXX is not set
-# CONFIG_BLK_DEV_RZ1000 is not set
-# CONFIG_BLK_DEV_SC1200 is not set
-# CONFIG_BLK_DEV_SD is not set
-# CONFIG_BLK_DEV_SIIMAGE is not set
-# CONFIG_BLK_DEV_SIS5513 is not set
-# CONFIG_BLK_DEV_SKD is not set
-# CONFIG_BLK_DEV_SL82C105 is not set
-# CONFIG_BLK_DEV_SLC90E66 is not set
-# CONFIG_BLK_DEV_SR is not set
-# CONFIG_BLK_DEV_SVWKS is not set
-# CONFIG_BLK_DEV_SX8 is not set
-# CONFIG_BLK_DEV_TC86C001 is not set
-# CONFIG_BLK_DEV_THROTTLING is not set
-# CONFIG_BLK_DEV_TRIFLEX is not set
-# CONFIG_BLK_DEV_TRM290 is not set
-# CONFIG_BLK_DEV_UB is not set
-# CONFIG_BLK_DEV_UMC8672 is not set
-# CONFIG_BLK_DEV_UMEM is not set
-# CONFIG_BLK_DEV_VIA82CXXX is not set
-# CONFIG_BLK_DEV_XIP is not set
-CONFIG_BLOCK=y
-# CONFIG_BMA180 is not set
-# CONFIG_BMP085 is not set
-# CONFIG_BMP085_I2C is not set
-# CONFIG_BMP085_SPI is not set
-# CONFIG_BNA is not set
-# CONFIG_BNX2 is not set
-# CONFIG_BNX2X is not set
-# CONFIG_BONDING is not set
-# CONFIG_BOOKE_WDT is not set
-CONFIG_BOOKE_WDT_DEFAULT_TIMEOUT=3
-# CONFIG_BOOT_PRINTK_DELAY is not set
-CONFIG_BOOT_RAW=y
-# CONFIG_BPCTL is not set
-# CONFIG_BPF_JIT is not set
-# CONFIG_BPQETHER is not set
-CONFIG_BQL=y
-CONFIG_BRANCH_PROFILE_NONE=y
-# CONFIG_BRCMFMAC is not set
-# CONFIG_BRCMSMAC is not set
-CONFIG_BRIDGE=y
-# CONFIG_BRIDGE_EBT_802_3 is not set
-# CONFIG_BRIDGE_EBT_AMONG is not set
-# CONFIG_BRIDGE_EBT_ARP is not set
-# CONFIG_BRIDGE_EBT_ARPREPLY is not set
-# CONFIG_BRIDGE_EBT_BROUTE is not set
-# CONFIG_BRIDGE_EBT_DNAT is not set
-# CONFIG_BRIDGE_EBT_IP is not set
-# CONFIG_BRIDGE_EBT_IP6 is not set
-# CONFIG_BRIDGE_EBT_LIMIT is not set
-# CONFIG_BRIDGE_EBT_LOG is not set
-# CONFIG_BRIDGE_EBT_MARK is not set
-# CONFIG_BRIDGE_EBT_MARK_T is not set
-# CONFIG_BRIDGE_EBT_NFLOG is not set
-# CONFIG_BRIDGE_EBT_PKTTYPE is not set
-# CONFIG_BRIDGE_EBT_REDIRECT is not set
-# CONFIG_BRIDGE_EBT_SNAT is not set
-# CONFIG_BRIDGE_EBT_STP is not set
-# CONFIG_BRIDGE_EBT_T_FILTER is not set
-# CONFIG_BRIDGE_EBT_T_NAT is not set
-# CONFIG_BRIDGE_EBT_ULOG is not set
-# CONFIG_BRIDGE_EBT_VLAN is not set
-CONFIG_BRIDGE_IGMP_SNOOPING=y
-# CONFIG_BRIDGE_NETFILTER is not set
-# CONFIG_BRIDGE_NF_EBTABLES is not set
-# CONFIG_BRIDGE_VLAN_FILTERING is not set
-# CONFIG_BROADCOM_PHY is not set
-CONFIG_BROKEN_ON_SMP=y
-# CONFIG_BSD_DISKLABEL is not set
-# CONFIG_BSD_PROCESS_ACCT is not set
-# CONFIG_BSD_PROCESS_ACCT_V3 is not set
-# CONFIG_BT is not set
-# CONFIG_BTRFS_ASSERT is not set
-# CONFIG_BTRFS_DEBUG is not set
-# CONFIG_BTRFS_FS is not set
-# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
-# CONFIG_BT_ATH3K is not set
-# CONFIG_BT_BNEP is not set
-CONFIG_BT_BNEP_MC_FILTER=y
-CONFIG_BT_BNEP_PROTO_FILTER=y
-# CONFIG_BT_CMTP is not set
-# CONFIG_BT_HCIBCM203X is not set
-# CONFIG_BT_HCIBFUSB is not set
-# CONFIG_BT_HCIBLUECARD is not set
-# CONFIG_BT_HCIBPA10X is not set
-# CONFIG_BT_HCIBT3C is not set
-# CONFIG_BT_HCIBTSDIO is not set
-# CONFIG_BT_HCIBTUART is not set
-# CONFIG_BT_HCIBTUSB is not set
-# CONFIG_BT_HCIDTL1 is not set
-# CONFIG_BT_HCIUART is not set
-# CONFIG_BT_HCIUART_3WIRE is not set
-# CONFIG_BT_HCIUART_ATH3K is not set
-CONFIG_BT_HCIUART_BCSP=y
-CONFIG_BT_HCIUART_H4=y
-# CONFIG_BT_HCIUART_LL is not set
-# CONFIG_BT_HCIVHCI is not set
-# CONFIG_BT_HIDP is not set
-CONFIG_BT_L2CAP=y
-# CONFIG_BT_MRVL is not set
-# CONFIG_BT_RFCOMM is not set
-CONFIG_BT_RFCOMM_TTY=y
-CONFIG_BT_SCO=y
-CONFIG_BUG=y
-CONFIG_BUILDTIME_EXTABLE_SORT=y
-# CONFIG_C2PORT is not set
-# CONFIG_CAIF is not set
-# CONFIG_CAN is not set
-# CONFIG_CAPI_AVM is not set
-# CONFIG_CAPI_EICON is not set
-# CONFIG_CAPI_TRACE is not set
-CONFIG_CARDBUS=y
-# CONFIG_CARDMAN_4000 is not set
-# CONFIG_CARDMAN_4040 is not set
-# CONFIG_CARL9170 is not set
-# CONFIG_CARMA_FPGA is not set
-# CONFIG_CARMA_FPGA_PROGRAM is not set
-# CONFIG_CASSINI is not set
-CONFIG_CAVIUM_OCTEON_HELPER=y
-# CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set
-# CONFIG_CAVIUM_OCTEON_SIMULATOR is not set
-# CONFIG_CAVIUM_OCTEON_SOC is not set
-# CONFIG_CB710_CORE is not set
-# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
-# CONFIG_CC_STACKPROTECTOR is not set
-CONFIG_CC_STACKPROTECTOR_NONE=y
-# CONFIG_CC_STACKPROTECTOR_REGULAR is not set
-# CONFIG_CC_STACKPROTECTOR_STRONG is not set
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_CED1401 is not set
-# CONFIG_CEPH_FS is not set
-# CONFIG_CEPH_LIB is not set
-# CONFIG_CFG80211 is not set
-# CONFIG_CFG80211_CERTIFICATION_ONUS is not set
-# CONFIG_CGROUPS is not set
-# CONFIG_CGROUP_DEBUG is not set
-# CONFIG_CGROUP_NET_PRIO is not set
-# CONFIG_CHARGER_BQ2415X is not set
-# CONFIG_CHARGER_BQ24190 is not set
-# CONFIG_CHARGER_BQ24735 is not set
-# CONFIG_CHARGER_GPIO is not set
-# CONFIG_CHARGER_ISP1704 is not set
-# CONFIG_CHARGER_LP8727 is not set
-# CONFIG_CHARGER_MANAGER is not set
-# CONFIG_CHARGER_MAX8903 is not set
-# CONFIG_CHARGER_SMB347 is not set
-# CONFIG_CHARGER_TWL4030 is not set
-# CONFIG_CHECKPOINT_RESTORE is not set
-# CONFIG_CHELSIO_T1 is not set
-# CONFIG_CHELSIO_T3 is not set
-# CONFIG_CHELSIO_T4 is not set
-# CONFIG_CHELSIO_T4VF is not set
-# CONFIG_CHROME_PLATFORMS is not set
-# CONFIG_CHR_DEV_OSST is not set
-# CONFIG_CHR_DEV_SCH is not set
-# CONFIG_CHR_DEV_SG is not set
-# CONFIG_CHR_DEV_ST is not set
-# CONFIG_CICADA_PHY is not set
-# CONFIG_CIFS is not set
-# CONFIG_CIFS_ACL is not set
-# CONFIG_CIFS_DEBUG is not set
-# CONFIG_CIFS_DEBUG2 is not set
-# CONFIG_CIFS_FSCACHE is not set
-# CONFIG_CIFS_NFSD_EXPORT is not set
-CONFIG_CIFS_POSIX=y
-# CONFIG_CIFS_SMB2 is not set
-CONFIG_CIFS_STATS=y
-# CONFIG_CIFS_STATS2 is not set
-# CONFIG_CIFS_WEAK_PW_HASH is not set
-# CONFIG_CIFS_XATTR is not set
-# CONFIG_CLEANCACHE is not set
-CONFIG_CLS_U32_MARK=y
-# CONFIG_CLS_U32_PERF is not set
-# CONFIG_CM32181 is not set
-# CONFIG_CM36651 is not set
-# CONFIG_CMA is not set
-CONFIG_CMDLINE=""
-# CONFIG_CMDLINE_BOOL is not set
-# CONFIG_CMDLINE_EXTEND is not set
-# CONFIG_CMDLINE_FORCE is not set
-# CONFIG_CMDLINE_FROM_BOOTLOADER is not set
-# CONFIG_CMDLINE_PARTITION is not set
-# CONFIG_CNIC is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_CODE_PATCHING_SELFTEST is not set
-# CONFIG_COMEDI is not set
-# CONFIG_COMMON_CLK_DEBUG is not set
-# CONFIG_COMMON_CLK_QCOM is not set
-# CONFIG_COMMON_CLK_SI5351 is not set
-# CONFIG_COMMON_CLK_SI570 is not set
-# CONFIG_COMPACTION is not set
-# CONFIG_COMPAL_LAPTOP is not set
-# CONFIG_COMPAT_BRK is not set
-# CONFIG_COMPILE_TEST is not set
-# CONFIG_CONFIGFS_FS is not set
-# CONFIG_CONNECTOR is not set
-CONFIG_CONSTRUCTORS=y
-# CONFIG_CONTEXT_SWITCH_TRACER is not set
-# CONFIG_COPS is not set
-# CONFIG_CORDIC is not set
-# CONFIG_COREDUMP is not set
-# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
-# CONFIG_CPA_DEBUG is not set
-# CONFIG_CPU_DCACHE_DISABLE is not set
-# CONFIG_CPU_FREQ is not set
-# CONFIG_CPU_IDLE is not set
-# CONFIG_CPU_IDLE_GOV_MENU is not set
-# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set
-# CONFIG_CRAMFS is not set
-CONFIG_CRASHLOG=y
-# CONFIG_CRASH_DUMP is not set
-# CONFIG_CRC16 is not set
-CONFIG_CRC32=y
-# CONFIG_CRC32_BIT is not set
-CONFIG_CRC32_SARWATE=y
-# CONFIG_CRC32_SELFTEST is not set
-# CONFIG_CRC32_SLICEBY4 is not set
-# CONFIG_CRC32_SLICEBY8 is not set
-# CONFIG_CRC7 is not set
-# CONFIG_CRC8 is not set
-# CONFIG_CRC_CCITT is not set
-# CONFIG_CRC_ITU_T is not set
-# CONFIG_CRC_T10DIF is not set
-CONFIG_CROSS_COMPILE=""
-# CONFIG_CROSS_MEMORY_ATTACH is not set
-CONFIG_CRYPTO=y
-# CONFIG_CRYPTO_AEAD is not set
-CONFIG_CRYPTO_AES=y
-# CONFIG_CRYPTO_AES_586 is not set
-# CONFIG_CRYPTO_AES_ARM is not set
-# CONFIG_CRYPTO_AES_ARM_BS is not set
-# CONFIG_CRYPTO_AES_NI_INTEL is not set
-CONFIG_CRYPTO_ALGAPI=y
-CONFIG_CRYPTO_ALGAPI2=y
-# CONFIG_CRYPTO_ANSI_CPRNG is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_ARC4 is not set
-# CONFIG_CRYPTO_AUTHENC is not set
-# CONFIG_CRYPTO_BLKCIPHER is not set
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_CBC is not set
-# CONFIG_CRYPTO_CCM is not set
-# CONFIG_CRYPTO_CMAC is not set
-# CONFIG_CRYPTO_CRC32 is not set
-# CONFIG_CRYPTO_CRC32C is not set
-# CONFIG_CRYPTO_CRC32C_INTEL is not set
-# CONFIG_CRYPTO_CRCT10DIF is not set
-# CONFIG_CRYPTO_CRYPTD is not set
-# CONFIG_CRYPTO_CTR is not set
-# CONFIG_CRYPTO_CTS is not set
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_DES is not set
-# CONFIG_CRYPTO_DEV_ATMEL_AES is not set
-# CONFIG_CRYPTO_DEV_ATMEL_SHA is not set
-# CONFIG_CRYPTO_DEV_ATMEL_TDES is not set
-# CONFIG_CRYPTO_DEV_CCP is not set
-# CONFIG_CRYPTO_DEV_FSL_CAAM is not set
-# CONFIG_CRYPTO_DEV_HIFN_795X is not set
-# CONFIG_CRYPTO_DEV_MV_CESA is not set
-# CONFIG_CRYPTO_DEV_SAHARA is not set
-# CONFIG_CRYPTO_DEV_TALITOS is not set
-# CONFIG_CRYPTO_ECB is not set
-# CONFIG_CRYPTO_FCRYPT is not set
-# CONFIG_CRYPTO_FIPS is not set
-# CONFIG_CRYPTO_GCM is not set
-# CONFIG_CRYPTO_GF128MUL is not set
-# CONFIG_CRYPTO_GHASH is not set
-# CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL is not set
-# CONFIG_CRYPTO_HASH is not set
-# CONFIG_CRYPTO_HMAC is not set
-# CONFIG_CRYPTO_HW is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-# CONFIG_CRYPTO_LRW is not set
-# CONFIG_CRYPTO_LZ4 is not set
-# CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_LZO is not set
-# CONFIG_CRYPTO_MANAGER is not set
-# CONFIG_CRYPTO_MANAGER2 is not set
-CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
-# CONFIG_CRYPTO_MD4 is not set
-# CONFIG_CRYPTO_MD5 is not set
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-# CONFIG_CRYPTO_NULL is not set
-# CONFIG_CRYPTO_PCBC is not set
-# CONFIG_CRYPTO_PCOMP is not set
-# CONFIG_CRYPTO_PCOMP2 is not set
-# CONFIG_CRYPTO_PCRYPT is not set
-# CONFIG_CRYPTO_RMD128 is not set
-# CONFIG_CRYPTO_RMD160 is not set
-# CONFIG_CRYPTO_RMD256 is not set
-# CONFIG_CRYPTO_RMD320 is not set
-# CONFIG_CRYPTO_RNG is not set
-# CONFIG_CRYPTO_SALSA20 is not set
-# CONFIG_CRYPTO_SALSA20_586 is not set
-# CONFIG_CRYPTO_SEED is not set
-# CONFIG_CRYPTO_SEQIV is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_SHA1 is not set
-# CONFIG_CRYPTO_SHA1_ARM is not set
-# CONFIG_CRYPTO_SHA256 is not set
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_TEA is not set
-# CONFIG_CRYPTO_TEST is not set
-# CONFIG_CRYPTO_TGR192 is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-# CONFIG_CRYPTO_TWOFISH_586 is not set
-# CONFIG_CRYPTO_TWOFISH_COMMON is not set
-# CONFIG_CRYPTO_USER is not set
-# CONFIG_CRYPTO_USER_API_HASH is not set
-# CONFIG_CRYPTO_USER_API_SKCIPHER is not set
-# CONFIG_CRYPTO_VMAC is not set
-# CONFIG_CRYPTO_WP512 is not set
-# CONFIG_CRYPTO_XCBC is not set
-# CONFIG_CRYPTO_XTS is not set
-# CONFIG_CRYPTO_XZ is not set
-# CONFIG_CRYPTO_ZLIB is not set
-# CONFIG_CRYSTALHD is not set
-# CONFIG_CS5535_MFGPT is not set
-# CONFIG_CS89x0 is not set
-# CONFIG_CUSE is not set
-# CONFIG_CW1200 is not set
-# CONFIG_CXT1E1 is not set
-# CONFIG_CYPRESS_FIRMWARE is not set
-# CONFIG_DAVICOM_PHY is not set
-# CONFIG_DCB is not set
-# CONFIG_DDR is not set
-# CONFIG_DE600 is not set
-# CONFIG_DE620 is not set
-# CONFIG_DEBUG_ATOMIC_SLEEP is not set
-# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
-# CONFIG_DEBUG_BUGVERBOSE is not set
-# CONFIG_DEBUG_CREDENTIALS is not set
-# CONFIG_DEBUG_DEVRES is not set
-# CONFIG_DEBUG_DRIVER is not set
-# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
-CONFIG_DEBUG_FS=y
-# CONFIG_DEBUG_GPIO is not set
-# CONFIG_DEBUG_HIGHMEM is not set
-# CONFIG_DEBUG_ICEDCC is not set
-# CONFIG_DEBUG_INFO is not set
-CONFIG_DEBUG_INFO_REDUCED=y
-CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_KMEMLEAK is not set
-# CONFIG_DEBUG_KOBJECT is not set
-# CONFIG_DEBUG_KOBJECT_RELEASE is not set
-# CONFIG_DEBUG_LIST is not set
-# CONFIG_DEBUG_LL is not set
-# CONFIG_DEBUG_LOCKDEP is not set
-# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
-# CONFIG_DEBUG_LOCK_ALLOC is not set
-# CONFIG_DEBUG_MEMORY_INIT is not set
-# CONFIG_DEBUG_MUTEXES is not set
-# CONFIG_DEBUG_NOTIFIERS is not set
-# CONFIG_DEBUG_NX_TEST is not set
-# CONFIG_DEBUG_OBJECTS is not set
-# CONFIG_DEBUG_PAGEALLOC is not set
-# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
-# CONFIG_DEBUG_PER_CPU_MAPS is not set
-# CONFIG_DEBUG_PINCTRL is not set
-# CONFIG_DEBUG_PREEMPT is not set
-# CONFIG_DEBUG_RODATA is not set
-# CONFIG_DEBUG_RT_MUTEXES is not set
-# CONFIG_DEBUG_SECTION_MISMATCH is not set
-# CONFIG_DEBUG_SEMIHOSTING is not set
-# CONFIG_DEBUG_SET_MODULE_RONX is not set
-# CONFIG_DEBUG_SG is not set
-# CONFIG_DEBUG_SHIRQ is not set
-# CONFIG_DEBUG_SLAB is not set
-# CONFIG_DEBUG_SPINLOCK is not set
-# CONFIG_DEBUG_STACKOVERFLOW is not set
-# CONFIG_DEBUG_STACK_USAGE is not set
-# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
-# CONFIG_DEBUG_VM is not set
-# CONFIG_DEBUG_WRITECOUNT is not set
-# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
-# CONFIG_DEBUG_ZBOOT is not set
-# CONFIG_DECNET is not set
-CONFIG_DEFAULT_CUBIC=y
-CONFIG_DEFAULT_DEADLINE=y
-CONFIG_DEFAULT_HOSTNAME="(none)"
-CONFIG_DEFAULT_IOSCHED="deadline"
-CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
-CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
-# CONFIG_DEFAULT_NOOP is not set
-# CONFIG_DEFAULT_RENO is not set
-CONFIG_DEFAULT_SECURITY=""
-CONFIG_DEFAULT_SECURITY_DAC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
-CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
-# CONFIG_DEPRECATED_PARAM_STRUCT is not set
-# CONFIG_DETECT_HUNG_TASK is not set
-# CONFIG_DEVKMEM is not set
-CONFIG_DEVPORT=y
-# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
-# CONFIG_DEVTMPFS is not set
-# CONFIG_DEVTMPFS_MOUNT is not set
-# CONFIG_DGAP is not set
-# CONFIG_DGNC is not set
-# CONFIG_DGRP is not set
-# CONFIG_DHT11 is not set
-# CONFIG_DIRECT_IO is not set
-# CONFIG_DISCONTIGMEM_MANUAL is not set
-# CONFIG_DISPLAY_CONNECTOR_ANALOG_TV is not set
-# CONFIG_DISPLAY_CONNECTOR_DVI is not set
-# CONFIG_DISPLAY_CONNECTOR_HDMI is not set
-# CONFIG_DISPLAY_ENCODER_TFP410 is not set
-# CONFIG_DISPLAY_ENCODER_TPD12S015 is not set
-# CONFIG_DISPLAY_PANEL_DPI is not set
-# CONFIG_DISPLAY_PANEL_LGPHILIPS_LB035Q02 is not set
-# CONFIG_DISPLAY_PANEL_TPO_TD028TTEC1 is not set
-# CONFIG_DISPLAY_PANEL_TPO_TD043MTEA1 is not set
-# CONFIG_DISPLAY_SUPPORT is not set
-# CONFIG_DL2K is not set
-# CONFIG_DLM is not set
-# CONFIG_DM9000 is not set
-# CONFIG_DMADEVICES is not set
-# CONFIG_DMADEVICES_DEBUG is not set
-# CONFIG_DMASCC is not set
-# CONFIG_DMATEST is not set
-# CONFIG_DMA_API_DEBUG is not set
-# CONFIG_DMA_ENGINE is not set
-# CONFIG_DMA_SHARED_BUFFER is not set
-# CONFIG_DM_CACHE is not set
-# CONFIG_DM_DEBUG is not set
-# CONFIG_DM_DELAY is not set
-# CONFIG_DM_FLAKEY is not set
-# CONFIG_DM_LOG_USERSPACE is not set
-# CONFIG_DM_MULTIPATH is not set
-# CONFIG_DM_RAID is not set
-# CONFIG_DM_SWITCH is not set
-# CONFIG_DM_THIN_PROVISIONING is not set
-# CONFIG_DM_UEVENT is not set
-# CONFIG_DM_VERITY is not set
-# CONFIG_DM_ZERO is not set
-# CONFIG_DNET is not set
-# CONFIG_DNOTIFY is not set
-# CONFIG_DNS_RESOLVER is not set
-CONFIG_DOUBLEFAULT=y
-CONFIG_DQL=y
-# CONFIG_DRAGONRISE_FF is not set
-# CONFIG_DRM is not set
-# CONFIG_DS1682 is not set
-# CONFIG_DTLK is not set
-# CONFIG_DUMMY is not set
-# CONFIG_DUMMY_IRQ is not set
-# CONFIG_DVB_AU8522_V4L is not set
-# CONFIG_DVB_CORE is not set
-# CONFIG_DVB_DUMMY_FE is not set
-# CONFIG_DVB_TUNER_DIB0070 is not set
-# CONFIG_DVB_TUNER_DIB0090 is not set
-# CONFIG_DW_DMAC is not set
-# CONFIG_DW_WATCHDOG is not set
-# CONFIG_DX_SEP is not set
-# CONFIG_DYNAMIC_DEBUG is not set
-# CONFIG_E100 is not set
-# CONFIG_E1000 is not set
-# CONFIG_E1000E is not set
-# CONFIG_E2100 is not set
-# CONFIG_EARLY_PRINTK_8250 is not set
-# CONFIG_EASYCAP is not set
-# CONFIG_ECHO is not set
-# CONFIG_ECONET is not set
-# CONFIG_ECRYPT_FS is not set
-# CONFIG_EDAC is not set
-# CONFIG_EEPROM_93CX6 is not set
-# CONFIG_EEPROM_93XX46 is not set
-# CONFIG_EEPROM_AT24 is not set
-# CONFIG_EEPROM_AT25 is not set
-# CONFIG_EEPROM_DIGSY_MTC_CFG is not set
-# CONFIG_EEPROM_LEGACY is not set
-# CONFIG_EEPROM_MAX6875 is not set
-# CONFIG_EEXPRESS is not set
-# CONFIG_EEXPRESS_PRO is not set
-CONFIG_EFI_PARTITION=y
-# CONFIG_EFS_FS is not set
-# CONFIG_ELF_CORE is not set
-CONFIG_EMBEDDED=y
-# CONFIG_ENABLE_MUST_CHECK is not set
-CONFIG_ENABLE_WARN_DEPRECATED=y
-# CONFIG_ENC28J60 is not set
-# CONFIG_ENCLOSURE_SERVICES is not set
-# CONFIG_ENCRYPTED_KEYS is not set
-# CONFIG_ENIC is not set
-# CONFIG_EPAPR_PARAVIRT is not set
-# CONFIG_EPIC100 is not set
-CONFIG_EPOLL=y
-# CONFIG_EQUALIZER is not set
-# CONFIG_ET131X is not set
-# CONFIG_GATEWORKS_GW16083 is not set
-# CONFIG_ETH16I is not set
-CONFIG_ETHERNET=y
-# CONFIG_ETHOC is not set
-CONFIG_EVENTFD=y
-# CONFIG_EVENT_POWER_TRACING_DEPRECATED is not set
-# CONFIG_EWRK3 is not set
-CONFIG_EXPERIMENTAL=y
-CONFIG_EXPERT=y
-# CONFIG_EXPORTFS is not set
-# CONFIG_EXT2_FS is not set
-# CONFIG_EXT2_FS_XATTR is not set
-# CONFIG_EXT2_FS_XIP is not set
-# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
-# CONFIG_EXT3_FS is not set
-# CONFIG_EXT3_FS_XATTR is not set
-# CONFIG_EXT4_DEBUG is not set
-# CONFIG_EXT4_FS is not set
-# CONFIG_EXT4_FS_POSIX_ACL is not set
-# CONFIG_EXT4_FS_SECURITY is not set
-CONFIG_EXT4_FS_XATTR=y
-CONFIG_EXT4_USE_FOR_EXT23=y
-# CONFIG_EXTCON is not set
-CONFIG_EXTRA_FIRMWARE=""
-CONFIG_EXTRA_TARGETS=""
-# CONFIG_EXYNOS_ADC is not set
-# CONFIG_EXYNOS_VIDEO is not set
-# CONFIG_EZX_PCAP is not set
-# CONFIG_F2FS_FS is not set
-# CONFIG_FAIR_GROUP_SCHED is not set
-# CONFIG_FANOTIFY is not set
-CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-# CONFIG_FAT_FS is not set
-# CONFIG_FAULT_INJECTION is not set
-# CONFIG_FB is not set
-# CONFIG_FB_3DFX is not set
-# CONFIG_FB_ARC is not set
-# CONFIG_FB_ARK is not set
-# CONFIG_FB_ARMCLCD is not set
-# CONFIG_FB_ASILIANT is not set
-# CONFIG_FB_ATY is not set
-# CONFIG_FB_ATY128 is not set
-# CONFIG_FB_AUO_K190X is not set
-# CONFIG_FB_BACKLIGHT is not set
-# CONFIG_FB_BOOT_VESA_SUPPORT is not set
-# CONFIG_FB_BROADSHEET is not set
-# CONFIG_FB_CARMINE is not set
-# CONFIG_FB_CFB_COPYAREA is not set
-# CONFIG_FB_CFB_FILLRECT is not set
-# CONFIG_FB_CFB_IMAGEBLIT is not set
-# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
-# CONFIG_FB_CIRRUS is not set
-# CONFIG_FB_CYBER2000 is not set
-# CONFIG_FB_DA8XX is not set
-# CONFIG_FB_DDC is not set
-# CONFIG_FB_FOREIGN_ENDIAN is not set
-# CONFIG_FB_GEODE is not set
-# CONFIG_FB_GOLDFISH is not set
-# CONFIG_FB_HGA is not set
-# CONFIG_FB_I740 is not set
-# CONFIG_FB_IBM_GXT4500 is not set
-# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_IMX is not set
-# CONFIG_FB_KYRO is not set
-# CONFIG_FB_LE80578 is not set
-# CONFIG_FB_MACMODES is not set
-# CONFIG_FB_MATROX is not set
-# CONFIG_FB_MB862XX is not set
-# CONFIG_FB_METRONOME is not set
-# CONFIG_FB_MODE_HELPERS is not set
-# CONFIG_FB_N411 is not set
-# CONFIG_FB_NEOMAGIC is not set
-# CONFIG_FB_NVIDIA is not set
-# CONFIG_FB_OF is not set
-# CONFIG_FB_OPENCORES is not set
-# CONFIG_FB_PM2 is not set
-# CONFIG_FB_PM3 is not set
-# CONFIG_FB_PS3 is not set
-# CONFIG_FB_PXA is not set
-# CONFIG_FB_RADEON is not set
-# CONFIG_FB_RIVA is not set
-# CONFIG_FB_S1D13XXX is not set
-# CONFIG_FB_S3 is not set
-# CONFIG_FB_SAVAGE is not set
-# CONFIG_FB_SIMPLE is not set
-# CONFIG_FB_SIS is not set
-# CONFIG_FB_SM7XX is not set
-# CONFIG_FB_SMSCUFX is not set
-# CONFIG_FB_SSD1307 is not set
-# CONFIG_FB_SVGALIB is not set
-# CONFIG_FB_SYS_COPYAREA is not set
-# CONFIG_FB_SYS_FILLRECT is not set
-# CONFIG_FB_SYS_FOPS is not set
-# CONFIG_FB_SYS_IMAGEBLIT is not set
-# CONFIG_FB_TILEBLITTING is not set
-# CONFIG_FB_TMIO is not set
-# CONFIG_FB_TRIDENT is not set
-# CONFIG_FB_UDL is not set
-# CONFIG_FB_UVESA is not set
-# CONFIG_FB_VGA16 is not set
-# CONFIG_FB_VIA is not set
-# CONFIG_FB_VIRTUAL is not set
-# CONFIG_FB_VOODOO1 is not set
-# CONFIG_FB_VT8623 is not set
-# CONFIG_FB_XGI is not set
-# CONFIG_FCOE is not set
-# CONFIG_FCOE_FNIC is not set
-# CONFIG_FDDI is not set
-# CONFIG_FEALNX is not set
-# CONFIG_FHANDLE is not set
-CONFIG_FIB_RULES=y
-CONFIG_FILE_LOCKING=y
-# CONFIG_FIREWIRE is not set
-# CONFIG_FIREWIRE_NOSY is not set
-# CONFIG_FIREWIRE_SERIAL is not set
-# CONFIG_FIRMWARE_EDID is not set
-# CONFIG_FIRMWARE_IN_KERNEL is not set
-# CONFIG_FIRMWARE_MEMMAP is not set
-# CONFIG_FIXED_PHY is not set
-CONFIG_FLATMEM=y
-CONFIG_FLATMEM_MANUAL=y
-CONFIG_FLAT_NODE_MEM_MAP=y
-# CONFIG_FMC is not set
-# CONFIG_FORCEDETH is not set
-CONFIG_FORCE_MAX_ZONEORDER=11
-# CONFIG_FRAMEBUFFER_CONSOLE is not set
-# CONFIG_FRAME_POINTER is not set
-CONFIG_FRAME_WARN=1024
-# CONFIG_FREEZER is not set
-# CONFIG_FRONTSWAP is not set
-# CONFIG_FSCACHE is not set
-# CONFIG_FSL_XGMAC_MDIO is not set
-CONFIG_FSNOTIFY=y
-# CONFIG_FS_POSIX_ACL is not set
-# CONFIG_FT1000 is not set
-# CONFIG_FTGMAC100 is not set
-# CONFIG_FTL is not set
-# CONFIG_FTMAC100 is not set
-# CONFIG_FTRACE is not set
-# CONFIG_FTRACE_STARTUP_TEST is not set
-# CONFIG_FTR_FIXUP_SELFTEST is not set
-# CONFIG_FUJITSU_TABLET is not set
-# CONFIG_FUNCTION_TRACER is not set
-# CONFIG_FUSE_FS is not set
-# CONFIG_FUSION is not set
-# CONFIG_FUSION_FC is not set
-# CONFIG_FUSION_SAS is not set
-# CONFIG_FUSION_SPI is not set
-CONFIG_FUTEX=y
-CONFIG_FW_LOADER=y
-CONFIG_FW_LOADER_USER_HELPER=y
-CONFIG_GACT_PROB=y
-# CONFIG_GADGET_UAC1 is not set
-# CONFIG_GAMEPORT is not set
-# CONFIG_GCOV is not set
-# CONFIG_GCOV_KERNEL is not set
-# CONFIG_GENERIC_ADC_BATTERY is not set
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-# CONFIG_GENERIC_CPU_DEVICES is not set
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_GENERIC_NET_UTILS=y
-# CONFIG_GENERIC_PHY is not set
-CONFIG_GENERIC_TIME=y
-# CONFIG_GENWQE is not set
-# CONFIG_GFS2_FS is not set
-# CONFIG_GIGASET_CAPI is not set
-# CONFIG_GIGASET_DEBUG is not set
-# CONFIG_GP2AP020A00F is not set
-# CONFIG_GPIOLIB is not set
-# CONFIG_GPIO_74X164 is not set
-# CONFIG_GPIO_ADNP is not set
-# CONFIG_GPIO_ADP5588 is not set
-# CONFIG_GPIO_AMD8111 is not set
-# CONFIG_GPIO_BCM_KONA is not set
-# CONFIG_GPIO_BT8XX is not set
-# CONFIG_GPIO_CS5535 is not set
-# CONFIG_GPIO_EM is not set
-# CONFIG_GPIO_GENERIC_PLATFORM is not set
-# CONFIG_GPIO_GRGPIO is not set
-# CONFIG_GPIO_ICH is not set
-# CONFIG_GPIO_IT8761E is not set
-# CONFIG_GPIO_LANGWELL is not set
-# CONFIG_GPIO_MAX7300 is not set
-# CONFIG_GPIO_MAX7301 is not set
-# CONFIG_GPIO_MAX732X is not set
-# CONFIG_GPIO_MC33880 is not set
-# CONFIG_GPIO_MCP23S08 is not set
-# CONFIG_GPIO_ML_IOH is not set
-# CONFIG_GPIO_PCA953X is not set
-# CONFIG_GPIO_PCF857X is not set
-# CONFIG_GPIO_PCH is not set
-# CONFIG_GPIO_PL061 is not set
-# CONFIG_GPIO_RCAR is not set
-# CONFIG_GPIO_RDC321X is not set
-# CONFIG_GPIO_SCH is not set
-# CONFIG_GPIO_SCH311X is not set
-# CONFIG_GPIO_SX150X is not set
-# CONFIG_GPIO_SYSFS is not set
-# CONFIG_GPIO_TS5500 is not set
-# CONFIG_GPIO_VX855 is not set
-# CONFIG_GPIO_WATCHDOG is not set
-# CONFIG_GPIO_WDT is not set
-# CONFIG_GPIO_XILINX is not set
-# CONFIG_GREENASIA_FF is not set
-# CONFIG_HAMACHI is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_HAPPYMEAL is not set
-# CONFIG_HARDLOCKUP_DETECTOR is not set
-# CONFIG_HAVE_AOUT is not set
-# CONFIG_HAVE_ARM_ARCH_TIMER is not set
-CONFIG_HAVE_KPROBES=y
-CONFIG_HAVE_KRETPROBES=y
-# CONFIG_HCALL_STATS is not set
-# CONFIG_HDLC is not set
-# CONFIG_HDLC_CISCO is not set
-# CONFIG_HDLC_FR is not set
-# CONFIG_HDLC_PPP is not set
-# CONFIG_HDLC_RAW is not set
-# CONFIG_HDLC_RAW_ETH is not set
-# CONFIG_HDQ_MASTER_OMAP is not set
-# CONFIG_HEADERS_CHECK is not set
-# CONFIG_HERMES is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_HFSPLUS_FS_POSIX_ACL is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HIBERNATION is not set
-# CONFIG_HID is not set
-# CONFIG_HIDRAW is not set
-# CONFIG_HID_A4TECH is not set
-# CONFIG_HID_ACRUX is not set
-# CONFIG_HID_ACRUX_FF is not set
-# CONFIG_HID_APPLE is not set
-# CONFIG_HID_APPLEIR is not set
-# CONFIG_HID_AUREAL is not set
-# CONFIG_HID_BELKIN is not set
-# CONFIG_HID_CHERRY is not set
-# CONFIG_HID_CHICONY is not set
-# CONFIG_HID_CYPRESS is not set
-# CONFIG_HID_DRAGONRISE is not set
-# CONFIG_HID_ELECOM is not set
-# CONFIG_HID_ELO is not set
-# CONFIG_HID_EMS_FF is not set
-# CONFIG_HID_EZKEY is not set
-# CONFIG_HID_GENERIC is not set
-# CONFIG_HID_GREENASIA is not set
-# CONFIG_HID_GYRATION is not set
-# CONFIG_HID_HOLTEK is not set
-# CONFIG_HID_HUION is not set
-# CONFIG_HID_ICADE is not set
-# CONFIG_HID_KENSINGTON is not set
-# CONFIG_HID_KEYTOUCH is not set
-# CONFIG_HID_KYE is not set
-# CONFIG_HID_LCPOWER is not set
-# CONFIG_HID_LENOVO_TPKBD is not set
-# CONFIG_HID_LOGITECH is not set
-# CONFIG_HID_LOGITECH_DJ is not set
-# CONFIG_HID_MAGICMOUSE is not set
-# CONFIG_HID_MICROSOFT is not set
-# CONFIG_HID_MONTEREY is not set
-# CONFIG_HID_MULTITOUCH is not set
-# CONFIG_HID_NTRIG is not set
-# CONFIG_HID_ORTEK is not set
-# CONFIG_HID_PANTHERLORD is not set
-# CONFIG_HID_PETALYNX is not set
-# CONFIG_HID_PICOLCD is not set
-# CONFIG_HID_PID is not set
-# CONFIG_HID_PRIMAX is not set
-# CONFIG_HID_PRODIKEYS is not set
-# CONFIG_HID_PS3REMOTE is not set
-# CONFIG_HID_QUANTA is not set
-# CONFIG_HID_ROCCAT is not set
-# CONFIG_HID_ROCCAT_ARVO is not set
-# CONFIG_HID_ROCCAT_KONE is not set
-# CONFIG_HID_ROCCAT_KONEPLUS is not set
-# CONFIG_HID_ROCCAT_KOVAPLUS is not set
-# CONFIG_HID_ROCCAT_PYRA is not set
-# CONFIG_HID_SAITEK is not set
-# CONFIG_HID_SAMSUNG is not set
-# CONFIG_HID_SENSOR_HUB is not set
-# CONFIG_HID_SMARTJOYPLUS is not set
-# CONFIG_HID_SONY is not set
-# CONFIG_HID_SPEEDLINK is not set
-# CONFIG_HID_STEELSERIES is not set
-# CONFIG_HID_SUNPLUS is not set
-# CONFIG_HID_SUPPORT is not set
-# CONFIG_HID_THINGM is not set
-# CONFIG_HID_THRUSTMASTER is not set
-# CONFIG_HID_TIVO is not set
-# CONFIG_HID_TOPSEED is not set
-# CONFIG_HID_TWINHAN is not set
-# CONFIG_HID_UCLOGIC is not set
-# CONFIG_HID_WACOM is not set
-# CONFIG_HID_WALTOP is not set
-# CONFIG_HID_WIIMOTE is not set
-# CONFIG_HID_XINMO is not set
-# CONFIG_HID_ZEROPLUS is not set
-# CONFIG_HID_ZYDACRON is not set
-# CONFIG_HIGHMEM is not set
-CONFIG_HIGH_RES_TIMERS=y
-# CONFIG_HIPPI is not set
-# CONFIG_HMC6352 is not set
-# CONFIG_HOSTAP is not set
-# CONFIG_HOSTAP_CS is not set
-# CONFIG_HOSTAP_PCI is not set
-# CONFIG_HOSTAP_PLX is not set
-CONFIG_HOTPLUG=y
-# CONFIG_HOTPLUG_CPU is not set
-# CONFIG_HOTPLUG_PCI is not set
-# CONFIG_HP100 is not set
-CONFIG_HPET_MMAP_DEFAULT=y
-# CONFIG_HPFS_FS is not set
-# CONFIG_HPLAN is not set
-# CONFIG_HPLAN_PLUS is not set
-# CONFIG_HP_ILO is not set
-# CONFIG_HP_WIRELESS is not set
-# CONFIG_HSI is not set
-# CONFIG_HSR is not set
-# CONFIG_HTC_EGPIO is not set
-# CONFIG_HTC_I2CPLD is not set
-# CONFIG_HTC_PASIC3 is not set
-# CONFIG_HUGETLB_PAGE is not set
-# CONFIG_HVC_DCC is not set
-# CONFIG_HVC_UDBG is not set
-# CONFIG_HWMON is not set
-# CONFIG_HWMON_DEBUG_CHIP is not set
-# CONFIG_HWMON_VID is not set
-# CONFIG_HWSPINLOCK_OMAP is not set
-CONFIG_HW_PERF_EVENTS=y
-# CONFIG_HW_RANDOM is not set
-# CONFIG_HW_RANDOM_AMD is not set
-# CONFIG_HW_RANDOM_ATMEL is not set
-# CONFIG_HW_RANDOM_EXYNOS is not set
-# CONFIG_HW_RANDOM_GEODE is not set
-# CONFIG_HW_RANDOM_INTEL is not set
-# CONFIG_HW_RANDOM_OMAP3_ROM is not set
-# CONFIG_HW_RANDOM_PPC4XX is not set
-# CONFIG_HW_RANDOM_TIMERIOMEM is not set
-# CONFIG_HW_RANDOM_VIA is not set
-# CONFIG_HYPERV is not set
-# CONFIG_HYSDN is not set
-CONFIG_HZ=100
-CONFIG_HZ_100=y
-# CONFIG_HZ_1000 is not set
-# CONFIG_HZ_1024 is not set
-# CONFIG_HZ_128 is not set
-# CONFIG_HZ_200 is not set
-# CONFIG_HZ_250 is not set
-# CONFIG_HZ_256 is not set
-# CONFIG_HZ_300 is not set
-# CONFIG_HZ_48 is not set
-# CONFIG_HZ_500 is not set
-# CONFIG_HZ_PERIODIC is not set
-# CONFIG_I2C is not set
-# CONFIG_I2C_ALGOBIT is not set
-# CONFIG_I2C_ALGOPCA is not set
-# CONFIG_I2C_ALGOPCF is not set
-# CONFIG_I2C_ALI1535 is not set
-# CONFIG_I2C_ALI1563 is not set
-# CONFIG_I2C_ALI15X3 is not set
-# CONFIG_I2C_AMD756 is not set
-# CONFIG_I2C_AMD8111 is not set
-# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
-# CONFIG_I2C_AU1550 is not set
-# CONFIG_I2C_CBUS_GPIO is not set
-# CONFIG_I2C_CHARDEV is not set
-# CONFIG_I2C_COMPAT is not set
-# CONFIG_I2C_DEBUG_ALGO is not set
-# CONFIG_I2C_DEBUG_BUS is not set
-# CONFIG_I2C_DEBUG_CORE is not set
-# CONFIG_I2C_DESIGNWARE is not set
-# CONFIG_I2C_DESIGNWARE_PCI is not set
-# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
-# CONFIG_I2C_DIOLAN_U2C is not set
-# CONFIG_I2C_EG20T is not set
-# CONFIG_I2C_ELEKTOR is not set
-# CONFIG_I2C_GPIO is not set
-# CONFIG_I2C_HELPER_AUTO is not set
-# CONFIG_I2C_HID is not set
-# CONFIG_I2C_I801 is not set
-# CONFIG_I2C_IBM_IIC is not set
-# CONFIG_I2C_INTEL_MID is not set
-# CONFIG_I2C_ISCH is not set
-# CONFIG_I2C_ISMT is not set
-# CONFIG_I2C_MPC is not set
-# CONFIG_I2C_MUX is not set
-# CONFIG_I2C_MUX_PINCTRL is not set
-# CONFIG_I2C_MV64XXX is not set
-# CONFIG_I2C_NFORCE2 is not set
-# CONFIG_I2C_NOMADIK is not set
-# CONFIG_I2C_OCORES is not set
-# CONFIG_I2C_OCTEON is not set
-# CONFIG_I2C_PARPORT is not set
-# CONFIG_I2C_PARPORT_LIGHT is not set
-# CONFIG_I2C_PCA_ISA is not set
-# CONFIG_I2C_PCA_PLATFORM is not set
-# CONFIG_I2C_PIIX4 is not set
-# CONFIG_I2C_PXA_PCI is not set
-# CONFIG_I2C_RCAR is not set
-# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
-# CONFIG_I2C_SCMI is not set
-# CONFIG_I2C_SH_MOBILE is not set
-# CONFIG_I2C_SIMTEC is not set
-# CONFIG_I2C_SIS5595 is not set
-# CONFIG_I2C_SIS630 is not set
-# CONFIG_I2C_SIS96X is not set
-# CONFIG_I2C_SMBUS is not set
-# CONFIG_I2C_STUB is not set
-# CONFIG_I2C_TAOS_EVM is not set
-# CONFIG_I2C_TINY_USB is not set
-# CONFIG_I2C_VERSATILE is not set
-# CONFIG_I2C_VIA is not set
-# CONFIG_I2C_VIAPRO is not set
-# CONFIG_I2C_XILINX is not set
-# CONFIG_I2O is not set
-# CONFIG_I40E is not set
-# CONFIG_I40EVF is not set
-# CONFIG_I6300ESB_WDT is not set
-# CONFIG_I82092 is not set
-# CONFIG_I82365 is not set
-# CONFIG_IBM_ASM is not set
-# CONFIG_IBM_EMAC_DEBUG is not set
-# CONFIG_IBM_EMAC_EMAC4 is not set
-# CONFIG_IBM_EMAC_MAL_CLR_ICINTSTAT is not set
-# CONFIG_IBM_EMAC_MAL_COMMON_ERR is not set
-# CONFIG_IBM_EMAC_NO_FLOW_CTRL is not set
-# CONFIG_IBM_EMAC_RGMII is not set
-# CONFIG_IBM_EMAC_TAH is not set
-# CONFIG_IBM_EMAC_ZMII is not set
-# CONFIG_ICPLUS_PHY is not set
-# CONFIG_ICS932S401 is not set
-# CONFIG_IDE is not set
-# CONFIG_IDEAPAD_LAPTOP is not set
-# CONFIG_IDE_GD is not set
-# CONFIG_IDE_PHISON is not set
-# CONFIG_IDE_PROC_FS is not set
-# CONFIG_IDE_TASK_IOCTL is not set
-# CONFIG_IEEE802154 is not set
-# CONFIG_IFB is not set
-# CONFIG_IGB is not set
-# CONFIG_IGBVF is not set
-# CONFIG_IIO is not set
-# CONFIG_IIO_BUFFER_CB is not set
-CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
-# CONFIG_IIO_GPIO_TRIGGER is not set
-# CONFIG_IIO_INTERRUPT_TRIGGER is not set
-# CONFIG_IIO_PERIODIC_RTC_TRIGGER is not set
-# CONFIG_IIO_SIMPLE_DUMMY is not set
-# CONFIG_IIO_ST_ACCEL_3AXIS is not set
-# CONFIG_IIO_ST_GYRO_3AXIS is not set
-# CONFIG_IIO_ST_MAGN_3AXIS is not set
-# CONFIG_IIO_ST_PRESS is not set
-# CONFIG_IIO_SYSFS_TRIGGER is not set
-# CONFIG_IKCONFIG is not set
-# CONFIG_IKCONFIG_PROC is not set
-# CONFIG_IMAGE_CMDLINE_HACK is not set
-CONFIG_INET=y
-# CONFIG_INET6_AH is not set
-# CONFIG_INET6_ESP is not set
-# CONFIG_INET6_IPCOMP is not set
-# CONFIG_INET6_TUNNEL is not set
-# CONFIG_INET6_XFRM_MODE_BEET is not set
-# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
-# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET6_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET6_XFRM_TUNNEL is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_DIAG is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_LRO is not set
-# CONFIG_INET_TCP_DIAG is not set
-# CONFIG_INET_TUNNEL is not set
-# CONFIG_INET_UDP_DIAG is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_TUNNEL is not set
-# CONFIG_INFINIBAND is not set
-# CONFIG_INFTL is not set
-# CONFIG_INITRAMFS_COMPRESSION_BZIP2 is not set
-# CONFIG_INITRAMFS_COMPRESSION_GZIP is not set
-# CONFIG_INITRAMFS_COMPRESSION_LZMA is not set
-CONFIG_INITRAMFS_COMPRESSION_NONE=y
-CONFIG_INIT_ENV_ARG_LIMIT=32
-# CONFIG_INLINE_READ_LOCK is not set
-# CONFIG_INLINE_READ_LOCK_BH is not set
-# CONFIG_INLINE_READ_LOCK_IRQ is not set
-# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
-# CONFIG_INLINE_READ_TRYLOCK is not set
-CONFIG_INLINE_READ_UNLOCK=y
-# CONFIG_INLINE_READ_UNLOCK_BH is not set
-CONFIG_INLINE_READ_UNLOCK_IRQ=y
-# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
-# CONFIG_INLINE_SPIN_LOCK is not set
-# CONFIG_INLINE_SPIN_LOCK_BH is not set
-# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
-# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
-# CONFIG_INLINE_SPIN_TRYLOCK is not set
-# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
-CONFIG_INLINE_SPIN_UNLOCK=y
-# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
-CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
-# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
-# CONFIG_INLINE_WRITE_LOCK is not set
-# CONFIG_INLINE_WRITE_LOCK_BH is not set
-# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
-# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
-# CONFIG_INLINE_WRITE_TRYLOCK is not set
-CONFIG_INLINE_WRITE_UNLOCK=y
-# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
-CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
-# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
-CONFIG_INOTIFY_USER=y
-# CONFIG_INPUT is not set
-# CONFIG_INPUT_AD714X is not set
-# CONFIG_INPUT_ADXL34X is not set
-# CONFIG_INPUT_APANEL is not set
-# CONFIG_INPUT_ATI_REMOTE is not set
-# CONFIG_INPUT_ATI_REMOTE2 is not set
-# CONFIG_INPUT_ATLAS_BTNS is not set
-# CONFIG_INPUT_BMA150 is not set
-# CONFIG_INPUT_CM109 is not set
-# CONFIG_INPUT_CMA3000 is not set
-# CONFIG_INPUT_EVBUG is not set
-# CONFIG_INPUT_EVDEV is not set
-# CONFIG_INPUT_FF_MEMLESS is not set
-# CONFIG_INPUT_GP2A is not set
-# CONFIG_INPUT_GPIO_BEEPER is not set
-# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
-# CONFIG_INPUT_GPIO_TILT_POLLED is not set
-# CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set
-# CONFIG_INPUT_IMS_PCU is not set
-# CONFIG_INPUT_JOYDEV is not set
-# CONFIG_INPUT_JOYSTICK is not set
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_KEYSPAN_REMOTE is not set
-# CONFIG_INPUT_KXTJ9 is not set
-# CONFIG_INPUT_MATRIXKMAP is not set
-CONFIG_INPUT_MISC=y
-# CONFIG_INPUT_MMA8450 is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_INPUT_MOUSEDEV is not set
-# CONFIG_INPUT_MPU3050 is not set
-# CONFIG_INPUT_PCF8574 is not set
-# CONFIG_INPUT_PCSPKR is not set
-# CONFIG_INPUT_POLLDEV is not set
-# CONFIG_INPUT_POWERMATE is not set
-# CONFIG_INPUT_PWM_BEEPER is not set
-# CONFIG_INPUT_SPARSEKMAP is not set
-# CONFIG_INPUT_TABLET is not set
-# CONFIG_INPUT_TOUCHSCREEN is not set
-# CONFIG_INPUT_UINPUT is not set
-# CONFIG_INPUT_WISTRON_BTNS is not set
-# CONFIG_INPUT_YEALINK is not set
-# CONFIG_INTEL_IDLE is not set
-# CONFIG_INTEL_MEI is not set
-# CONFIG_INTEL_MEI_ME is not set
-# CONFIG_INTEL_MIC_CARD is not set
-# CONFIG_INTEL_MIC_HOST is not set
-# CONFIG_INTEL_MID_PTI is not set
-# CONFIG_INTEL_OAKTRAIL is not set
-# CONFIG_INTEL_RST is not set
-# CONFIG_INTEL_SMARTCONNECT is not set
-# CONFIG_INTERVAL_TREE_TEST is not set
-# CONFIG_INV_MPU6050_IIO is not set
-# CONFIG_IOMMU_SUPPORT is not set
-# CONFIG_IOSCHED_CFQ is not set
-CONFIG_IOSCHED_DEADLINE=y
-CONFIG_IOSCHED_NOOP=y
-# CONFIG_IP1000 is not set
-# CONFIG_IP17XX_PHY is not set
-# CONFIG_IP6_NF_FILTER is not set
-# CONFIG_IP6_NF_IPTABLES is not set
-# CONFIG_IP6_NF_MANGLE is not set
-# CONFIG_IP6_NF_MATCH_AH is not set
-# CONFIG_IP6_NF_MATCH_EUI64 is not set
-# CONFIG_IP6_NF_MATCH_FRAG is not set
-# CONFIG_IP6_NF_MATCH_HL is not set
-# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set
-# CONFIG_IP6_NF_MATCH_MH is not set
-# CONFIG_IP6_NF_MATCH_OPTS is not set
-# CONFIG_IP6_NF_MATCH_RPFILTER is not set
-# CONFIG_IP6_NF_MATCH_RT is not set
-# CONFIG_IP6_NF_QUEUE is not set
-# CONFIG_IP6_NF_RAW is not set
-# CONFIG_IP6_NF_TARGET_HL is not set
-# CONFIG_IP6_NF_TARGET_LOG is not set
-# CONFIG_IP6_NF_TARGET_REJECT is not set
-# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
-# CONFIG_IPACK_BUS is not set
-# CONFIG_IPC_NS is not set
-# CONFIG_IPMI_HANDLER is not set
-# CONFIG_IPV6 is not set
-# CONFIG_IPV6_MIP6 is not set
-# CONFIG_IPV6_MROUTE is not set
-# CONFIG_IPV6_MROUTE_MULTIPLE_TABLES is not set
-# CONFIG_IPV6_MULTIPLE_TABLES is not set
-CONFIG_IPV6_NDISC_NODETYPE=y
-# CONFIG_IPV6_OPTIMISTIC_DAD is not set
-# CONFIG_IPV6_PRIVACY is not set
-# CONFIG_IPV6_ROUTER_PREF is not set
-# CONFIG_IPV6_ROUTE_INFO is not set
-# CONFIG_IPV6_SIT is not set
-# CONFIG_IPV6_SIT_6RD is not set
-# CONFIG_IPV6_TUNNEL is not set
-# CONFIG_IPV6_VTI is not set
-# CONFIG_IPW2100 is not set
-# CONFIG_IPW2100_DEBUG is not set
-CONFIG_IPW2100_MONITOR=y
-# CONFIG_IPW2200 is not set
-# CONFIG_IPW2200_DEBUG is not set
-CONFIG_IPW2200_MONITOR=y
-# CONFIG_IPW2200_PROMISCUOUS is not set
-# CONFIG_IPW2200_QOS is not set
-# CONFIG_IPW2200_RADIOTAP is not set
-# CONFIG_IPWIRELESS is not set
-# CONFIG_IPX is not set
-CONFIG_IP_ADVANCED_ROUTER=y
-# CONFIG_IP_DCCP is not set
-# CONFIG_IP_FIB_TRIE_STATS is not set
-CONFIG_IP_MROUTE=y
-CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_MULTIPLE_TABLES=y
-# CONFIG_IP_NF_ARPFILTER is not set
-# CONFIG_IP_NF_ARPTABLES is not set
-# CONFIG_IP_NF_ARP_MANGLE is not set
-# CONFIG_IP_NF_FILTER is not set
-# CONFIG_IP_NF_IPTABLES is not set
-# CONFIG_IP_NF_MANGLE is not set
-# CONFIG_IP_NF_MATCH_AH is not set
-# CONFIG_IP_NF_MATCH_ECN is not set
-# CONFIG_IP_NF_MATCH_RPFILTER is not set
-# CONFIG_IP_NF_MATCH_TTL is not set
-# CONFIG_IP_NF_QUEUE is not set
-# CONFIG_IP_NF_RAW is not set
-# CONFIG_IP_NF_SECURITY is not set
-# CONFIG_IP_NF_TARGET_CLUSTERIP is not set
-# CONFIG_IP_NF_TARGET_ECN is not set
-# CONFIG_IP_NF_TARGET_LOG is not set
-# CONFIG_IP_NF_TARGET_MASQUERADE is not set
-# CONFIG_IP_NF_TARGET_NETMAP is not set
-# CONFIG_IP_NF_TARGET_REDIRECT is not set
-# CONFIG_IP_NF_TARGET_REJECT is not set
-# CONFIG_IP_NF_TARGET_SYNPROXY is not set
-# CONFIG_IP_NF_TARGET_TTL is not set
-# CONFIG_IP_NF_TARGET_ULOG is not set
-# CONFIG_IP_PIMSM_V1 is not set
-# CONFIG_IP_PIMSM_V2 is not set
-# CONFIG_IP_PNP is not set
-CONFIG_IP_ROUTE_MULTIPATH=y
-CONFIG_IP_ROUTE_VERBOSE=y
-# CONFIG_IP_SCTP is not set
-# CONFIG_IP_SET is not set
-# CONFIG_IP_VS is not set
-# CONFIG_IRDA is not set
-# CONFIG_IRQSOFF_TRACER is not set
-# CONFIG_IRQ_ALL_CPUS is not set
-# CONFIG_IRQ_DOMAIN_DEBUG is not set
-# CONFIG_IRQ_TIME_ACCOUNTING is not set
-# CONFIG_IR_GPIO_CIR is not set
-# CONFIG_IR_IGUANA is not set
-# CONFIG_IR_IMON is not set
-# CONFIG_IR_JVC_DECODER is not set
-# CONFIG_IR_LIRC_CODEC is not set
-# CONFIG_IR_MCEUSB is not set
-# CONFIG_IR_NEC_DECODER is not set
-# CONFIG_IR_RC5_DECODER is not set
-# CONFIG_IR_RC5_SZ_DECODER is not set
-# CONFIG_IR_RC6_DECODER is not set
-# CONFIG_IR_REDRAT3 is not set
-# CONFIG_IR_SONY_DECODER is not set
-# CONFIG_IR_STREAMZAP is not set
-# CONFIG_IR_TTUSBIR is not set
-# CONFIG_ISCSI_BOOT_SYSFS is not set
-# CONFIG_ISCSI_TCP is not set
-CONFIG_ISDN=y
-# CONFIG_ISDN_AUDIO is not set
-# CONFIG_ISDN_CAPI is not set
-# CONFIG_ISDN_CAPI_CAPIDRV is not set
-# CONFIG_ISDN_DIVERSION is not set
-# CONFIG_ISDN_DRV_ACT2000 is not set
-# CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON is not set
-# CONFIG_ISDN_DRV_GIGASET is not set
-# CONFIG_ISDN_DRV_HISAX is not set
-# CONFIG_ISDN_DRV_ICN is not set
-# CONFIG_ISDN_DRV_LOOP is not set
-# CONFIG_ISDN_DRV_PCBIT is not set
-# CONFIG_ISDN_DRV_SC is not set
-# CONFIG_ISDN_I4L is not set
-# CONFIG_ISL29003 is not set
-# CONFIG_ISL29020 is not set
-# CONFIG_ISO9660_FS is not set
-# CONFIG_ISS4xx is not set
-# CONFIG_ITG3200 is not set
-# CONFIG_IWL3945 is not set
-# CONFIG_IWLAGN is not set
-# CONFIG_IWLWIFI is not set
-# CONFIG_IWMC3200TOP is not set
-# CONFIG_IXGB is not set
-# CONFIG_IXGBE is not set
-# CONFIG_IXGBEVF is not set
-# CONFIG_JBD is not set
-# CONFIG_JBD2_DEBUG is not set
-# CONFIG_JBD_DEBUG is not set
-# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
-# CONFIG_JFFS2_CMODE_NONE is not set
-CONFIG_JFFS2_CMODE_PRIORITY=y
-# CONFIG_JFFS2_CMODE_SIZE is not set
-CONFIG_JFFS2_COMPRESSION_OPTIONS=y
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_FS_DEBUG=0
-# CONFIG_JFFS2_FS_POSIX_ACL is not set
-# CONFIG_JFFS2_FS_SECURITY is not set
-# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
-CONFIG_JFFS2_FS_WRITEBUFFER=y
-CONFIG_JFFS2_FS_XATTR=y
-CONFIG_JFFS2_LZMA=y
-# CONFIG_JFFS2_LZO is not set
-CONFIG_JFFS2_RTIME=y
-# CONFIG_JFFS2_RUBIN is not set
-CONFIG_JFFS2_SUMMARY=y
-# CONFIG_JFFS2_ZLIB is not set
-# CONFIG_JFS_DEBUG is not set
-# CONFIG_JFS_FS is not set
-# CONFIG_JFS_POSIX_ACL is not set
-# CONFIG_JFS_SECURITY is not set
-# CONFIG_JFS_STATISTICS is not set
-# CONFIG_JME is not set
-CONFIG_JOLIET=y
-# CONFIG_JUMP_LABEL is not set
-# CONFIG_KALLSYMS is not set
-# CONFIG_KALLSYMS_ALL is not set
-# CONFIG_KALLSYMS_UNCOMPRESSED is not set
-# CONFIG_KARMA_PARTITION is not set
-# CONFIG_KERNEL_BZIP2 is not set
-# CONFIG_KERNEL_GZIP is not set
-# CONFIG_KERNEL_LZ4 is not set
-# CONFIG_KERNEL_LZMA is not set
-# CONFIG_KERNEL_LZO is not set
-CONFIG_KERNEL_MODE_NEON=y
-CONFIG_KERNEL_XZ=y
-# CONFIG_KEXEC is not set
-# CONFIG_KEYBOARD_ADP5588 is not set
-# CONFIG_KEYBOARD_ADP5589 is not set
-# CONFIG_KEYBOARD_ATKBD is not set
-# CONFIG_KEYBOARD_GPIO_POLLED is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_LM8323 is not set
-# CONFIG_KEYBOARD_LM8333 is not set
-# CONFIG_KEYBOARD_MATRIX is not set
-# CONFIG_KEYBOARD_MAX7359 is not set
-# CONFIG_KEYBOARD_MCS is not set
-# CONFIG_KEYBOARD_MPR121 is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-# CONFIG_KEYBOARD_OMAP4 is not set
-# CONFIG_KEYBOARD_OPENCORES is not set
-# CONFIG_KEYBOARD_PXA27x is not set
-# CONFIG_KEYBOARD_QT1070 is not set
-# CONFIG_KEYBOARD_QT2160 is not set
-# CONFIG_KEYBOARD_SAMSUNG is not set
-# CONFIG_KEYBOARD_SH_KEYSC is not set
-# CONFIG_KEYBOARD_STOWAWAY is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_TCA6416 is not set
-# CONFIG_KEYBOARD_TCA8418 is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-# CONFIG_KEYS is not set
-# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
-# CONFIG_KGDB is not set
-# CONFIG_KMEMCHECK is not set
-# CONFIG_KPROBES is not set
-# CONFIG_KPROBES_SANITY_TEST is not set
-# CONFIG_KS8842 is not set
-# CONFIG_KS8851 is not set
-# CONFIG_KS8851_MLL is not set
-# CONFIG_KSM is not set
-# CONFIG_KSZ884X_PCI is not set
-CONFIG_KUSER_HELPERS=y
-# CONFIG_KVM_GUEST is not set
-# CONFIG_KXSD9 is not set
-# CONFIG_L2TP is not set
-# CONFIG_L2TP_ETH is not set
-# CONFIG_L2TP_IP is not set
-# CONFIG_L2TP_V3 is not set
-# CONFIG_LANMEDIA is not set
-# CONFIG_LANTIQ is not set
-# CONFIG_LAPB is not set
-# CONFIG_LASAT is not set
-# CONFIG_LATENCYTOP is not set
-# CONFIG_LATTICE_ECP3_CONFIG is not set
-CONFIG_LBDAF=y
-# CONFIG_LCD_HX8357 is not set
-# CONFIG_LCD_ILI922X is not set
-# CONFIG_LCD_ILI9320 is not set
-# CONFIG_LCD_LMS501KF03 is not set
-# CONFIG_LDM_PARTITION is not set
-# CONFIG_LEDS_ATMEL_PWM is not set
-# CONFIG_LEDS_BD2802 is not set
-# CONFIG_LEDS_BLINKM is not set
-CONFIG_LEDS_CLASS=y
-# CONFIG_LEDS_DAC124S085 is not set
-# CONFIG_LEDS_GPIO is not set
-CONFIG_LEDS_GPIO_OF=y
-CONFIG_LEDS_GPIO_PLATFORM=y
-# CONFIG_LEDS_INTEL_SS4200 is not set
-# CONFIG_LEDS_LM3530 is not set
-# CONFIG_LEDS_LM3556 is not set
-# CONFIG_LEDS_LM355x is not set
-# CONFIG_LEDS_LM3642 is not set
-# CONFIG_LEDS_LP3944 is not set
-# CONFIG_LEDS_LP5521 is not set
-# CONFIG_LEDS_LP5523 is not set
-# CONFIG_LEDS_LP5562 is not set
-# CONFIG_LEDS_LP8501 is not set
-# CONFIG_LEDS_LT3593 is not set
-# CONFIG_LEDS_NET5501 is not set
-# CONFIG_LEDS_OT200 is not set
-# CONFIG_LEDS_PCA9532 is not set
-# CONFIG_LEDS_PCA955X is not set
-# CONFIG_LEDS_PCA9633 is not set
-# CONFIG_LEDS_PCA963X is not set
-# CONFIG_LEDS_PCA9685 is not set
-# CONFIG_LEDS_PWM is not set
-# CONFIG_LEDS_RENESAS_TPU is not set
-# CONFIG_LEDS_TCA6507 is not set
-CONFIG_LEDS_TRIGGERS=y
-# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
-# CONFIG_LEDS_TRIGGER_CAMERA is not set
-# CONFIG_LEDS_TRIGGER_CPU is not set
-CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
-# CONFIG_LEDS_TRIGGER_GPIO is not set
-# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set
-# CONFIG_LEDS_TRIGGER_IDE_DISK is not set
-# CONFIG_LEDS_TRIGGER_MORSE is not set
-CONFIG_LEDS_TRIGGER_NETDEV=y
-# CONFIG_LEDS_TRIGGER_ONESHOT is not set
-CONFIG_LEDS_TRIGGER_TIMER=y
-# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
-# CONFIG_LEDS_TRIGGER_USBDEV is not set
-# CONFIG_LEGACY_PTYS is not set
-# CONFIG_LIB80211 is not set
-# CONFIG_LIB80211_CRYPT_CCMP is not set
-# CONFIG_LIB80211_CRYPT_TKIP is not set
-# CONFIG_LIB80211_CRYPT_WEP is not set
-# CONFIG_LIB80211_DEBUG is not set
-# CONFIG_LIBCRC32C is not set
-# CONFIG_LIBERTAS is not set
-# CONFIG_LIBERTAS_THINFIRM is not set
-# CONFIG_LIBERTAS_USB is not set
-# CONFIG_LIBFC is not set
-# CONFIG_LIBFCOE is not set
-# CONFIG_LIBIPW_DEBUG is not set
-# CONFIG_LINE6_USB is not set
-# CONFIG_LIRC_STAGING is not set
-# CONFIG_LIS3L02DQ is not set
-# CONFIG_LKDTM is not set
-CONFIG_LLC=y
-# CONFIG_LLC2 is not set
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-# CONFIG_LOCKD is not set
-CONFIG_LOCKDEP_SUPPORT=y
-CONFIG_LOCKD_V4=y
-# CONFIG_LOCKUP_DETECTOR is not set
-# CONFIG_LOCK_STAT is not set
-# CONFIG_LOGFS is not set
-# CONFIG_LOGIG940_FF is not set
-# CONFIG_LOGIRUMBLEPAD2_FF is not set
-# CONFIG_LOGITECH_FF is not set
-# CONFIG_LOGIWHEELS_FF is not set
-# CONFIG_LOGO is not set
-CONFIG_LOG_BUF_SHIFT=17
-# CONFIG_LOONGSON_MC146818 is not set
-# CONFIG_LP486E is not set
-# CONFIG_LPC_ICH is not set
-# CONFIG_LPC_SCH is not set
-# CONFIG_LP_CONSOLE is not set
-# CONFIG_LSI_ET1011C_PHY is not set
-# CONFIG_LTE_GDM724X is not set
-# CONFIG_LTPC is not set
-# CONFIG_LUSTRE_FS is not set
-# CONFIG_LXT_PHY is not set
-CONFIG_LZMA_COMPRESS=y
-CONFIG_LZMA_DECOMPRESS=y
-# CONFIG_LZO_COMPRESS is not set
-# CONFIG_LZO_DECOMPRESS is not set
-# CONFIG_M25PXX_PREFER_SMALL_SECTOR_ERASE is not set
-# CONFIG_MAC80211 is not set
-# CONFIG_MAC80211_MESSAGE_TRACING is not set
-# CONFIG_MACB is not set
-# CONFIG_MACH_DECSTATION is not set
-# CONFIG_MACH_JAZZ is not set
-# CONFIG_MACH_JZ4740 is not set
-# CONFIG_MACH_LOONGSON is not set
-# CONFIG_MACH_LOONGSON1 is not set
-# CONFIG_MACH_NO_WESTBRIDGE is not set
-# CONFIG_MACH_TX39XX is not set
-# CONFIG_MACH_TX49XX is not set
-# CONFIG_MACH_VR41XX is not set
-# CONFIG_MACINTOSH_DRIVERS is not set
-# CONFIG_MACVLAN is not set
-# CONFIG_MACVTAP is not set
-# CONFIG_MAC_EMUMOUSEBTN is not set
-# CONFIG_MAC_PARTITION is not set
-# CONFIG_MAG3110 is not set
-# CONFIG_MAGIC_SYSRQ is not set
-CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
-# CONFIG_MAILBOX is not set
-# CONFIG_MARVELL_PHY is not set
-# CONFIG_MAX1363 is not set
-# CONFIG_MAX517 is not set
-# CONFIG_MAX63XX_WATCHDOG is not set
-# CONFIG_MCP320X is not set
-# CONFIG_MCP3422 is not set
-# CONFIG_MCP4725 is not set
-# CONFIG_MCPM is not set
-# CONFIG_MD is not set
-# CONFIG_MDIO_BITBANG is not set
-# CONFIG_MDIO_BUS_MUX_GPIO is not set
-# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
-# CONFIG_MD_FAULTY is not set
-# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set
-# CONFIG_MEDIA_ATTACH is not set
-# CONFIG_MEDIA_CAMERA_SUPPORT is not set
-# CONFIG_MEDIA_CONTROLLER is not set
-# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set
-# CONFIG_MEDIA_PARPORT_SUPPORT is not set
-# CONFIG_MEDIA_PCI_SUPPORT is not set
-# CONFIG_MEDIA_RADIO_SUPPORT is not set
-# CONFIG_MEDIA_RC_SUPPORT is not set
-# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set
-# CONFIG_MEDIA_SUPPORT is not set
-# CONFIG_MEDIA_TUNER_CUSTOMISE is not set
-# CONFIG_MEDIA_USB_SUPPORT is not set
-# CONFIG_MEGARAID_LEGACY is not set
-# CONFIG_MEGARAID_NEWGEN is not set
-# CONFIG_MEGARAID_SAS is not set
-# CONFIG_MEMORY is not set
-# CONFIG_MEMORY_FAILURE is not set
-# CONFIG_MEMSTICK is not set
-# CONFIG_MEN_A21_WDT is not set
-# CONFIG_MFD_88PM800 is not set
-# CONFIG_MFD_88PM805 is not set
-# CONFIG_MFD_88PM860X is not set
-# CONFIG_MFD_AAT2870_CORE is not set
-# CONFIG_MFD_ARIZONA_I2C is not set
-# CONFIG_MFD_ARIZONA_SPI is not set
-# CONFIG_MFD_AS3711 is not set
-# CONFIG_MFD_AS3722 is not set
-# CONFIG_MFD_ASIC3 is not set
-# CONFIG_MFD_CORE is not set
-# CONFIG_MFD_CROS_EC is not set
-# CONFIG_MFD_CS5535 is not set
-# CONFIG_MFD_DA9052_I2C is not set
-# CONFIG_MFD_DA9052_SPI is not set
-# CONFIG_MFD_DA9055 is not set
-# CONFIG_MFD_DA9063 is not set
-# CONFIG_MFD_JANZ_CMODIO is not set
-# CONFIG_MFD_KEMPLD is not set
-# CONFIG_MFD_LM3533 is not set
-# CONFIG_MFD_LP3943 is not set
-# CONFIG_MFD_LP8788 is not set
-# CONFIG_MFD_MAX14577 is not set
-# CONFIG_MFD_MAX77686 is not set
-# CONFIG_MFD_MAX77693 is not set
-# CONFIG_MFD_MAX8907 is not set
-# CONFIG_MFD_MAX8925 is not set
-# CONFIG_MFD_MAX8997 is not set
-# CONFIG_MFD_MAX8998 is not set
-# CONFIG_MFD_MC13783 is not set
-# CONFIG_MFD_MC13XXX is not set
-# CONFIG_MFD_MC13XXX_I2C is not set
-# CONFIG_MFD_MC13XXX_SPI is not set
-# CONFIG_MFD_OMAP_USB_HOST is not set
-# CONFIG_MFD_PALMAS is not set
-# CONFIG_MFD_PCF50633 is not set
-# CONFIG_MFD_RC5T583 is not set
-# CONFIG_MFD_RDC321X is not set
-# CONFIG_MFD_RETU is not set
-# CONFIG_MFD_RTSX_PCI is not set
-# CONFIG_MFD_S5M_CORE is not set
-# CONFIG_MFD_SEC_CORE is not set
-# CONFIG_MFD_SI476X_CORE is not set
-# CONFIG_MFD_SM501 is not set
-# CONFIG_MFD_SMSC is not set
-# CONFIG_MFD_STMPE is not set
-CONFIG_MFD_SUPPORT=y
-# CONFIG_MFD_SYSCON is not set
-# CONFIG_MFD_T7L66XB is not set
-# CONFIG_MFD_TC3589X is not set
-# CONFIG_MFD_TC6387XB is not set
-# CONFIG_MFD_TC6393XB is not set
-# CONFIG_MFD_TIMBERDALE is not set
-# CONFIG_MFD_TI_AM335X_TSCADC is not set
-# CONFIG_MFD_TMIO is not set
-# CONFIG_MFD_TPS65090 is not set
-# CONFIG_MFD_TPS65217 is not set
-# CONFIG_MFD_TPS6586X is not set
-# CONFIG_MFD_TPS65910 is not set
-# CONFIG_MFD_TPS65912 is not set
-# CONFIG_MFD_TPS65912_I2C is not set
-# CONFIG_MFD_TPS65912_SPI is not set
-# CONFIG_MFD_TPS80031 is not set
-# CONFIG_MFD_VIPERBOARD is not set
-# CONFIG_MFD_VX855 is not set
-# CONFIG_MFD_WL1273_CORE is not set
-# CONFIG_MFD_WM831X is not set
-# CONFIG_MFD_WM831X_I2C is not set
-# CONFIG_MFD_WM831X_SPI is not set
-# CONFIG_MFD_WM8350_I2C is not set
-# CONFIG_MFD_WM8400 is not set
-# CONFIG_MFD_WM8994 is not set
-# CONFIG_MG_DISK is not set
-# CONFIG_MICREL_KS8995MA is not set
-# CONFIG_MICREL_PHY is not set
-# CONFIG_MIGRATION is not set
-CONFIG_MII=y
-# CONFIG_MIKROTIK_RB532 is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_MINIX_FS_NATIVE_ENDIAN is not set
-# CONFIG_MINIX_SUBPARTITION is not set
-# CONFIG_MIPS_ALCHEMY is not set
-# CONFIG_MIPS_COBALT is not set
-# CONFIG_MIPS_FPU_EMU is not set
-# CONFIG_MIPS_MALTA is not set
-# CONFIG_MIPS_O32_FP64_SUPPORT is not set
-# CONFIG_MIPS_SEAD3 is not set
-# CONFIG_MIPS_SIM is not set
-CONFIG_MISC_DEVICES=y
-CONFIG_MISC_FILESYSTEMS=y
-# CONFIG_MISDN is not set
-# CONFIG_MISDN_AVMFRITZ is not set
-# CONFIG_MISDN_HFCPCI is not set
-# CONFIG_MISDN_HFCUSB is not set
-# CONFIG_MISDN_INFINEON is not set
-# CONFIG_MISDN_NETJET is not set
-# CONFIG_MISDN_SPEEDFAX is not set
-# CONFIG_MISDN_W6692 is not set
-# CONFIG_MKISS is not set
-# CONFIG_MLX4_CORE is not set
-# CONFIG_MLX4_EN is not set
-# CONFIG_MLX5_CORE is not set
-# CONFIG_MMC is not set
-# CONFIG_MMC_ARMMMCI is not set
-# CONFIG_MMC_AU1X is not set
-# CONFIG_MMC_BLOCK is not set
-CONFIG_MMC_BLOCK_BOUNCE=y
-CONFIG_MMC_BLOCK_MINORS=8
-# CONFIG_MMC_CB710 is not set
-# CONFIG_MMC_CLKGATE is not set
-# CONFIG_MMC_DEBUG is not set
-# CONFIG_MMC_DW is not set
-# CONFIG_MMC_MVSDIO is not set
-# CONFIG_MMC_S3C is not set
-# CONFIG_MMC_SDHCI is not set
-# CONFIG_MMC_SDHCI_ACPI is not set
-# CONFIG_MMC_SDHCI_BCM_KONA is not set
-# CONFIG_MMC_SDHCI_OF_ARASAN is not set
-# CONFIG_MMC_SDHCI_OF_ESDHC is not set
-# CONFIG_MMC_SDHCI_OF_HLWD is not set
-# CONFIG_MMC_SDHCI_PXAV2 is not set
-# CONFIG_MMC_SDHCI_PXAV3 is not set
-# CONFIG_MMC_SDRICOH_CS is not set
-# CONFIG_MMC_SPI is not set
-# CONFIG_MMC_TEST is not set
-# CONFIG_MMC_UNSAFE_RESUME is not set
-# CONFIG_MMC_USHC is not set
-# CONFIG_MMC_VIA_SDMMC is not set
-# CONFIG_MMC_VUB300 is not set
-# CONFIG_MMIOTRACE is not set
-CONFIG_MMU=y
-CONFIG_MODULES=y
-# CONFIG_MODULE_FORCE_LOAD is not set
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODULE_SIG is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-CONFIG_MODULE_STRIPPED=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MOUSE_APPLETOUCH is not set
-# CONFIG_MOUSE_GPIO is not set
-# CONFIG_MOUSE_INPORT is not set
-# CONFIG_MOUSE_LOGIBM is not set
-# CONFIG_MOUSE_PC110PAD is not set
-# CONFIG_MOUSE_PS2_SENTELIC is not set
-# CONFIG_MOUSE_SYNAPTICS_I2C is not set
-# CONFIG_MOUSE_SYNAPTICS_USB is not set
-# CONFIG_MPL3115 is not set
-# CONFIG_MSDOS_FS is not set
-CONFIG_MSDOS_PARTITION=y
-# CONFIG_MSI_BITMAP_SELFTEST is not set
-# CONFIG_MSI_LAPTOP is not set
-CONFIG_MTD=y
-# CONFIG_MTD_ABSENT is not set
-# CONFIG_MTD_AFS_PARTS is not set
-# CONFIG_MTD_ALAUDA is not set
-# CONFIG_MTD_AR7_PARTS is not set
-# CONFIG_MTD_ARM_INTEGRATOR is not set
-CONFIG_MTD_BLKDEVS=y
-CONFIG_MTD_BLOCK=y
-# CONFIG_MTD_BLOCK2MTD is not set
-CONFIG_MTD_CFI=y
-# CONFIG_MTD_CFI_ADV_OPTIONS is not set
-CONFIG_MTD_CFI_AMDSTD=y
-# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
-CONFIG_MTD_CFI_I1=y
-CONFIG_MTD_CFI_I2=y
-# CONFIG_MTD_CFI_I4 is not set
-# CONFIG_MTD_CFI_I8 is not set
-CONFIG_MTD_CFI_INTELEXT=y
-# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
-CONFIG_MTD_CFI_NOSWAP=y
-# CONFIG_MTD_CFI_STAA is not set
-CONFIG_MTD_CFI_UTIL=y
-CONFIG_MTD_CHAR=y
-# CONFIG_MTD_CMDLINE_PARTS is not set
-CONFIG_MTD_COMPLEX_MAPPINGS=y
-# CONFIG_MTD_DATAFLASH is not set
-# CONFIG_MTD_DEBUG is not set
-# CONFIG_MTD_DOC2000 is not set
-# CONFIG_MTD_DOC2001 is not set
-# CONFIG_MTD_DOC2001PLUS is not set
-# CONFIG_MTD_DOCG3 is not set
-CONFIG_MTD_GEN_PROBE=y
-# CONFIG_MTD_GPIO_ADDR is not set
-# CONFIG_MTD_INTEL_VR_NOR is not set
-# CONFIG_MTD_JEDECPROBE is not set
-# CONFIG_MTD_LATCH_ADDR is not set
-# CONFIG_MTD_LPDDR is not set
-# CONFIG_MTD_M25P80 is not set
-CONFIG_MTD_MAP_BANK_WIDTH_1=y
-# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
-CONFIG_MTD_MAP_BANK_WIDTH_2=y
-# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
-CONFIG_MTD_MAP_BANK_WIDTH_4=y
-# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
-# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_MYLOADER_PARTS is not set
-# CONFIG_MTD_NAND is not set
-# CONFIG_MTD_NAND_AMS_DELTA is not set
-# CONFIG_MTD_NAND_AR934X is not set
-# CONFIG_MTD_NAND_AR934X_HW_ECC is not set
-# CONFIG_MTD_NAND_ATMEL is not set
-# CONFIG_MTD_NAND_AU1550 is not set
-# CONFIG_MTD_NAND_AUTCPU12 is not set
-# CONFIG_MTD_NAND_BCH is not set
-# CONFIG_MTD_NAND_BCM_UMI is not set
-# CONFIG_MTD_NAND_BF5XX is not set
-# CONFIG_MTD_NAND_CAFE is not set
-# CONFIG_MTD_NAND_CM_X270 is not set
-# CONFIG_MTD_NAND_CS553X is not set
-# CONFIG_MTD_NAND_DAVINCI is not set
-# CONFIG_MTD_NAND_DENALI is not set
-CONFIG_MTD_NAND_DENALI_SCRATCH_REG_ADDR=0xff108018
-# CONFIG_MTD_NAND_DISKONCHIP is not set
-# CONFIG_MTD_NAND_DOCG4 is not set
-# CONFIG_MTD_NAND_ECC is not set
-# CONFIG_MTD_NAND_ECC_BCH is not set
-# CONFIG_MTD_NAND_ECC_SMC is not set
-# CONFIG_MTD_NAND_FSL_ELBC is not set
-# CONFIG_MTD_NAND_FSL_IFC is not set
-# CONFIG_MTD_NAND_FSL_UPM is not set
-# CONFIG_MTD_NAND_FSMC is not set
-# CONFIG_MTD_NAND_GPIO is not set
-# CONFIG_MTD_NAND_GPMI_NAND is not set
-# CONFIG_MTD_NAND_H1900 is not set
-CONFIG_MTD_NAND_IDS=y
-# CONFIG_MTD_NAND_JZ4740 is not set
-# CONFIG_MTD_NAND_MPC5121_NFC is not set
-# CONFIG_MTD_NAND_MUSEUM_IDS is not set
-# CONFIG_MTD_NAND_MXC is not set
-# CONFIG_MTD_NAND_NANDSIM is not set
-# CONFIG_MTD_NAND_NDFC is not set
-# CONFIG_MTD_NAND_NOMADIK is not set
-# CONFIG_MTD_NAND_NUC900 is not set
-# CONFIG_MTD_NAND_OMAP2 is not set
-# CONFIG_MTD_NAND_ORION is not set
-# CONFIG_MTD_NAND_PASEMI is not set
-# CONFIG_MTD_NAND_PLATFORM is not set
-# CONFIG_MTD_NAND_PPCHAMELEONEVB is not set
-# CONFIG_MTD_NAND_PXA3xx is not set
-# CONFIG_MTD_NAND_RB4XX is not set
-# CONFIG_MTD_NAND_RB750 is not set
-# CONFIG_MTD_NAND_RICOH is not set
-# CONFIG_MTD_NAND_RTC_FROM4 is not set
-# CONFIG_MTD_NAND_S3C2410 is not set
-# CONFIG_MTD_NAND_SHARPSL is not set
-# CONFIG_MTD_NAND_SH_FLCTL is not set
-# CONFIG_MTD_NAND_SOCRATES is not set
-# CONFIG_MTD_NAND_SPIA is not set
-# CONFIG_MTD_NAND_TMIO is not set
-# CONFIG_MTD_NAND_TXX9NDFMC is not set
-# CONFIG_MTD_NAND_VERIFY_WRITE is not set
-CONFIG_MTD_OF_PARTS=y
-# CONFIG_MTD_ONENAND is not set
-# CONFIG_MTD_OOPS is not set
-# CONFIG_MTD_OTP is not set
-# CONFIG_MTD_PCI is not set
-# CONFIG_MTD_PCMCIA is not set
-# CONFIG_MTD_PHRAM is not set
-# CONFIG_MTD_PHYSMAP is not set
-# CONFIG_MTD_PHYSMAP_COMPAT is not set
-CONFIG_MTD_PHYSMAP_OF=y
-# CONFIG_MTD_PLATRAM is not set
-# CONFIG_MTD_PMC551 is not set
-# CONFIG_MTD_RAM is not set
-CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
-# CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
-# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
-# CONFIG_MTD_ROM is not set
-CONFIG_MTD_ROOTFS_ROOT_DEV=y
-CONFIG_MTD_ROOTFS_SPLIT=y
-# CONFIG_MTD_SLRAM is not set
-# CONFIG_MTD_SPINAND_MT29F is not set
-CONFIG_MTD_SPLIT=y
-# CONFIG_MTD_SPLIT_FIRMWARE is not set
-CONFIG_MTD_SPLIT_FIRMWARE_NAME="firmware"
-# CONFIG_MTD_SPLIT_FIT_FW is not set
-# CONFIG_MTD_SPLIT_LZMA_FW is not set
-# CONFIG_MTD_SPLIT_SEAMA_FW is not set
-CONFIG_MTD_SPLIT_SQUASHFS_ROOT=y
-CONFIG_MTD_SPLIT_SUPPORT=y
-# CONFIG_MTD_SPLIT_TRX_FW is not set
-# CONFIG_MTD_SPLIT_TPLINK_FW is not set
-# CONFIG_MTD_SPLIT_UIMAGE_FW is not set
-# CONFIG_MTD_SST25L is not set
-# CONFIG_MTD_SWAP is not set
-# CONFIG_MTD_TESTS is not set
-# CONFIG_MTD_UBI is not set
-# CONFIG_MTD_UIMAGE_SPLIT is not set
-# CONFIG_MUTEX_SPIN_ON_OWNER is not set
-# CONFIG_MV643XX_ETH is not set
-# CONFIG_MVMDIO is not set
-# CONFIG_MVSW61XX_PHY is not set
-# CONFIG_MVSWITCH_PHY is not set
-# CONFIG_MWAVE is not set
-# CONFIG_MWL8K is not set
-# CONFIG_MYRI10GE is not set
-# CONFIG_NAMESPACES is not set
-# CONFIG_NATIONAL_PHY is not set
-# CONFIG_NATSEMI is not set
-# CONFIG_NAU7802 is not set
-# CONFIG_NCP_FS is not set
-# CONFIG_NE2000 is not set
-# CONFIG_NE2K_PCI is not set
-# CONFIG_NEC_MARKEINS is not set
-CONFIG_NET=y
-# CONFIG_NETCONSOLE is not set
-CONFIG_NETDEVICES=y
-CONFIG_NETDEV_1000=y
-# CONFIG_NETDEV_10000 is not set
-# CONFIG_NETFILTER is not set
-# CONFIG_NETFILTER_ADVANCED is not set
-# CONFIG_NETFILTER_DEBUG is not set
-# CONFIG_NETFILTER_NETLINK is not set
-# CONFIG_NETFILTER_NETLINK_ACCT is not set
-# CONFIG_NETFILTER_NETLINK_LOG is not set
-# CONFIG_NETFILTER_NETLINK_QUEUE is not set
-# CONFIG_NETFILTER_NETLINK_QUEUE_CT is not set
-# CONFIG_NETFILTER_TPROXY is not set
-# CONFIG_NETFILTER_XTABLES is not set
-# CONFIG_NETFILTER_XT_CONNMARK is not set
-# CONFIG_NETFILTER_XT_MARK is not set
-# CONFIG_NETFILTER_XT_MATCH_ADDRTYPE is not set
-# CONFIG_NETFILTER_XT_MATCH_BPF is not set
-# CONFIG_NETFILTER_XT_MATCH_CGROUP is not set
-# CONFIG_NETFILTER_XT_MATCH_CLUSTER is not set
-# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNBYTES is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNLABEL is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNLIMIT is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNMARK is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNTRACK is not set
-# CONFIG_NETFILTER_XT_MATCH_CPU is not set
-# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
-# CONFIG_NETFILTER_XT_MATCH_DEVGROUP is not set
-# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
-# CONFIG_NETFILTER_XT_MATCH_ECN is not set
-# CONFIG_NETFILTER_XT_MATCH_ESP is not set
-# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
-# CONFIG_NETFILTER_XT_MATCH_HELPER is not set
-# CONFIG_NETFILTER_XT_MATCH_HL is not set
-# CONFIG_NETFILTER_XT_MATCH_IPCOMP is not set
-# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set
-# CONFIG_NETFILTER_XT_MATCH_L2TP is not set
-# CONFIG_NETFILTER_XT_MATCH_LAYER7 is not set
-# CONFIG_NETFILTER_XT_MATCH_LAYER7_DEBUG is not set
-# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set
-# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set
-# CONFIG_NETFILTER_XT_MATCH_MAC is not set
-# CONFIG_NETFILTER_XT_MATCH_MARK is not set
-# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
-# CONFIG_NETFILTER_XT_MATCH_NFACCT is not set
-# CONFIG_NETFILTER_XT_MATCH_OSF is not set
-# CONFIG_NETFILTER_XT_MATCH_OWNER is not set
-# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set
-# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
-# CONFIG_NETFILTER_XT_MATCH_POLICY is not set
-# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
-# CONFIG_NETFILTER_XT_MATCH_RATEEST is not set
-# CONFIG_NETFILTER_XT_MATCH_REALM is not set
-# CONFIG_NETFILTER_XT_MATCH_RECENT is not set
-# CONFIG_NETFILTER_XT_MATCH_SCTP is not set
-# CONFIG_NETFILTER_XT_MATCH_SOCKET is not set
-# CONFIG_NETFILTER_XT_MATCH_STATE is not set
-# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set
-# CONFIG_NETFILTER_XT_MATCH_STRING is not set
-# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set
-# CONFIG_NETFILTER_XT_MATCH_TIME is not set
-# CONFIG_NETFILTER_XT_MATCH_U32 is not set
-# CONFIG_NETFILTER_XT_TARGET_AUDIT is not set
-# CONFIG_NETFILTER_XT_TARGET_CHECKSUM is not set
-# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
-# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
-# CONFIG_NETFILTER_XT_TARGET_CT is not set
-# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
-# CONFIG_NETFILTER_XT_TARGET_HL is not set
-# CONFIG_NETFILTER_XT_TARGET_HMARK is not set
-# CONFIG_NETFILTER_XT_TARGET_IDLETIMER is not set
-# CONFIG_NETFILTER_XT_TARGET_LED is not set
-# CONFIG_NETFILTER_XT_TARGET_LOG is not set
-# CONFIG_NETFILTER_XT_TARGET_MARK is not set
-# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
-# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
-# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
-# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
-# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
-# CONFIG_NETFILTER_XT_TARGET_REDIRECT is not set
-# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
-# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
-# CONFIG_NETFILTER_XT_TARGET_TEE is not set
-# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
-# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
-# CONFIG_NETLINK_DIAG is not set
-# CONFIG_NETLINK_MMAP is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NETROM is not set
-CONFIG_NETWORK_FILESYSTEMS=y
-# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
-# CONFIG_NETWORK_SECMARK is not set
-# CONFIG_NETXEN_NIC is not set
-# CONFIG_NET_9P is not set
-# CONFIG_NET_ACT_CSUM is not set
-# CONFIG_NET_ACT_GACT is not set
-# CONFIG_NET_ACT_IPT is not set
-# CONFIG_NET_ACT_MIRRED is not set
-# CONFIG_NET_ACT_NAT is not set
-# CONFIG_NET_ACT_PEDIT is not set
-# CONFIG_NET_ACT_POLICE is not set
-# CONFIG_NET_ACT_SIMP is not set
-# CONFIG_NET_ACT_SKBEDIT is not set
-CONFIG_NET_CADENCE=y
-# CONFIG_NET_CALXEDA_XGMAC is not set
-CONFIG_NET_CLS=y
-# CONFIG_NET_CLS_ACT is not set
-# CONFIG_NET_CLS_BASIC is not set
-# CONFIG_NET_CLS_BPF is not set
-# CONFIG_NET_CLS_FLOW is not set
-# CONFIG_NET_CLS_FW is not set
-CONFIG_NET_CLS_IND=y
-# CONFIG_NET_CLS_ROUTE4 is not set
-# CONFIG_NET_CLS_RSVP is not set
-# CONFIG_NET_CLS_RSVP6 is not set
-# CONFIG_NET_CLS_TCINDEX is not set
-# CONFIG_NET_CLS_U32 is not set
-CONFIG_NET_CORE=y
-# CONFIG_NET_DROP_MONITOR is not set
-# CONFIG_NET_DSA is not set
-# CONFIG_NET_DSA_MV88E6060 is not set
-# CONFIG_NET_DSA_MV88E6123_61_65 is not set
-# CONFIG_NET_DSA_MV88E6131 is not set
-# CONFIG_NET_DSA_MV88E6XXX is not set
-# CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set
-# CONFIG_NET_DSA_TAG_DSA is not set
-# CONFIG_NET_DSA_TAG_EDSA is not set
-# CONFIG_NET_EMATCH is not set
-# CONFIG_NET_EMATCH_CMP is not set
-# CONFIG_NET_EMATCH_META is not set
-# CONFIG_NET_EMATCH_NBYTE is not set
-CONFIG_NET_EMATCH_STACK=32
-# CONFIG_NET_EMATCH_TEXT is not set
-# CONFIG_NET_EMATCH_U32 is not set
-CONFIG_NET_ETHERNET=y
-# CONFIG_NET_FC is not set
-# CONFIG_NET_IPGRE is not set
-CONFIG_NET_IPGRE_BROADCAST=y
-# CONFIG_NET_IPGRE_DEMUX is not set
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPVTI is not set
-# CONFIG_NET_IP_TUNNEL is not set
-# CONFIG_NET_ISA is not set
-# CONFIG_NET_KEY is not set
-# CONFIG_NET_KEY_MIGRATE is not set
-# CONFIG_NET_MPLS_GSO is not set
-# CONFIG_NET_PACKET_ENGINE is not set
-CONFIG_NET_PCI=y
-# CONFIG_NET_PCMCIA is not set
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_NET_POCKET is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-CONFIG_NET_RX_BUSY_POLL=y
-# CONFIG_NET_SB1000 is not set
-CONFIG_NET_SCHED=y
-# CONFIG_NET_SCH_ATM is not set
-# CONFIG_NET_SCH_CBQ is not set
-# CONFIG_NET_SCH_CHOKE is not set
-# CONFIG_NET_SCH_CODEL is not set
-# CONFIG_NET_SCH_DRR is not set
-# CONFIG_NET_SCH_DSMARK is not set
-# CONFIG_NET_SCH_ESFQ is not set
-CONFIG_NET_SCH_ESFQ_NFCT=y
-CONFIG_NET_SCH_FIFO=y
-# CONFIG_NET_SCH_FQ is not set
-CONFIG_NET_SCH_FQ_CODEL=y
-# CONFIG_NET_SCH_GRED is not set
-# CONFIG_NET_SCH_HFSC is not set
-# CONFIG_NET_SCH_HHF is not set
-# CONFIG_NET_SCH_HTB is not set
-# CONFIG_NET_SCH_INGRESS is not set
-# CONFIG_NET_SCH_MQPRIO is not set
-# CONFIG_NET_SCH_MULTIQ is not set
-# CONFIG_NET_SCH_NETEM is not set
-# CONFIG_NET_SCH_PIE is not set
-# CONFIG_NET_SCH_PLUG is not set
-# CONFIG_NET_SCH_PRIO is not set
-# CONFIG_NET_SCH_QFQ is not set
-# CONFIG_NET_SCH_RED is not set
-# CONFIG_NET_SCH_SFB is not set
-# CONFIG_NET_SCH_SFQ is not set
-# CONFIG_NET_SCH_TBF is not set
-# CONFIG_NET_SCH_TEQL is not set
-# CONFIG_NET_TCPPROBE is not set
-# CONFIG_NET_TEAM is not set
-# CONFIG_NET_TULIP is not set
-CONFIG_NET_VENDOR_3COM=y
-CONFIG_NET_VENDOR_8390=y
-CONFIG_NET_VENDOR_ADAPTEC=y
-CONFIG_NET_VENDOR_ALTEON=y
-CONFIG_NET_VENDOR_AMD=y
-CONFIG_NET_VENDOR_ARC=y
-CONFIG_NET_VENDOR_ATHEROS=y
-CONFIG_NET_VENDOR_BROADCOM=y
-CONFIG_NET_VENDOR_BROCADE=y
-CONFIG_NET_VENDOR_CHELSIO=y
-CONFIG_NET_VENDOR_CIRRUS=y
-CONFIG_NET_VENDOR_CISCO=y
-CONFIG_NET_VENDOR_DEC=y
-CONFIG_NET_VENDOR_DLINK=y
-CONFIG_NET_VENDOR_EMULEX=y
-CONFIG_NET_VENDOR_EXAR=y
-CONFIG_NET_VENDOR_FARADAY=y
-CONFIG_NET_VENDOR_FREESCALE=y
-CONFIG_NET_VENDOR_FUJITSU=y
-CONFIG_NET_VENDOR_HP=y
-CONFIG_NET_VENDOR_I825XX=y
-CONFIG_NET_VENDOR_IBM=y
-CONFIG_NET_VENDOR_INTEL=y
-CONFIG_NET_VENDOR_MARVELL=y
-CONFIG_NET_VENDOR_MELLANOX=y
-CONFIG_NET_VENDOR_MICREL=y
-CONFIG_NET_VENDOR_MICROCHIP=y
-CONFIG_NET_VENDOR_MYRI=y
-CONFIG_NET_VENDOR_NATSEMI=y
-CONFIG_NET_VENDOR_NVIDIA=y
-CONFIG_NET_VENDOR_OKI=y
-CONFIG_NET_VENDOR_QLOGIC=y
-CONFIG_NET_VENDOR_RDC=y
-CONFIG_NET_VENDOR_REALTEK=y
-CONFIG_NET_VENDOR_SEEQ=y
-CONFIG_NET_VENDOR_SILAN=y
-CONFIG_NET_VENDOR_SILICOM=y
-CONFIG_NET_VENDOR_SIS=y
-CONFIG_NET_VENDOR_SMSC=y
-CONFIG_NET_VENDOR_STMICRO=y
-CONFIG_NET_VENDOR_SUN=y
-CONFIG_NET_VENDOR_TEHUTI=y
-CONFIG_NET_VENDOR_TI=y
-CONFIG_NET_VENDOR_TOSHIBA=y
-CONFIG_NET_VENDOR_VIA=y
-# CONFIG_NET_VENDOR_WIZNET is not set
-CONFIG_NET_VENDOR_XILINX=y
-CONFIG_NET_VENDOR_XIRCOM=y
-CONFIG_NEW_LEDS=y
-# CONFIG_NFC is not set
-# CONFIG_NFC_DEVICES is not set
-# CONFIG_NFSD is not set
-# CONFIG_NFSD_DEPRECATED is not set
-# CONFIG_NFSD_V2_ACL is not set
-CONFIG_NFSD_V3=y
-# CONFIG_NFSD_V3_ACL is not set
-# CONFIG_NFSD_V4 is not set
-# CONFIG_NFS_ACL_SUPPORT is not set
-CONFIG_NFS_COMMON=y
-# CONFIG_NFS_FS is not set
-# CONFIG_NFS_FSCACHE is not set
-# CONFIG_NFS_SWAP is not set
-# CONFIG_NFS_V2 is not set
-CONFIG_NFS_V3=y
-# CONFIG_NFS_V3_ACL is not set
-# CONFIG_NFS_V4 is not set
-# CONFIG_NFS_V4_1 is not set
-# CONFIG_NFTL is not set
-# CONFIG_NF_CONNTRACK is not set
-# CONFIG_NF_CONNTRACK_AMANDA is not set
-# CONFIG_NF_CONNTRACK_EVENTS is not set
-# CONFIG_NF_CONNTRACK_FTP is not set
-# CONFIG_NF_CONNTRACK_H323 is not set
-# CONFIG_NF_CONNTRACK_IPV4 is not set
-# CONFIG_NF_CONNTRACK_IPV6 is not set
-# CONFIG_NF_CONNTRACK_IRC is not set
-# CONFIG_NF_CONNTRACK_MARK is not set
-# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set
-# CONFIG_NF_CONNTRACK_PPTP is not set
-CONFIG_NF_CONNTRACK_PROCFS=y
-# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set
-# CONFIG_NF_CONNTRACK_RTSP is not set
-# CONFIG_NF_CONNTRACK_SANE is not set
-# CONFIG_NF_CONNTRACK_SIP is not set
-# CONFIG_NF_CONNTRACK_SNMP is not set
-# CONFIG_NF_CONNTRACK_TFTP is not set
-# CONFIG_NF_CONNTRACK_TIMEOUT is not set
-# CONFIG_NF_CONNTRACK_TIMESTAMP is not set
-# CONFIG_NF_CONNTRACK_ZONES is not set
-# CONFIG_NF_CT_NETLINK is not set
-# CONFIG_NF_CT_NETLINK_TIMEOUT is not set
-# CONFIG_NF_CT_PROTO_DCCP is not set
-# CONFIG_NF_CT_PROTO_GRE is not set
-# CONFIG_NF_CT_PROTO_SCTP is not set
-# CONFIG_NF_CT_PROTO_UDPLITE is not set
-# CONFIG_NF_DEFRAG_IPV4 is not set
-# CONFIG_NF_NAT is not set
-# CONFIG_NF_NAT_AMANDA is not set
-# CONFIG_NF_NAT_FTP is not set
-# CONFIG_NF_NAT_H323 is not set
-# CONFIG_NF_NAT_IPV6 is not set
-# CONFIG_NF_NAT_IRC is not set
-# CONFIG_NF_NAT_NEEDED is not set
-# CONFIG_NF_NAT_PPTP is not set
-# CONFIG_NF_NAT_PROTO_GRE is not set
-# CONFIG_NF_NAT_RTSP is not set
-# CONFIG_NF_NAT_SIP is not set
-# CONFIG_NF_NAT_SNMP_BASIC is not set
-# CONFIG_NF_NAT_TFTP is not set
-# CONFIG_NF_TABLES is not set
-# CONFIG_NI52 is not set
-# CONFIG_NI65 is not set
-# CONFIG_NILFS2_FS is not set
-# CONFIG_NIU is not set
-CONFIG_NLATTR=y
-# CONFIG_NLMON is not set
-# CONFIG_NLM_XLP_BOARD is not set
-# CONFIG_NLM_XLR_BOARD is not set
-# CONFIG_NLS is not set
-# CONFIG_NLS_ASCII is not set
-# CONFIG_NLS_CODEPAGE_1250 is not set
-# CONFIG_NLS_CODEPAGE_1251 is not set
-# CONFIG_NLS_CODEPAGE_437 is not set
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-# CONFIG_NLS_CODEPAGE_850 is not set
-# CONFIG_NLS_CODEPAGE_852 is not set
-# CONFIG_NLS_CODEPAGE_855 is not set
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-# CONFIG_NLS_CODEPAGE_866 is not set
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-CONFIG_NLS_DEFAULT="iso8859-1"
-# CONFIG_NLS_ISO8859_1 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-# CONFIG_NLS_ISO8859_15 is not set
-# CONFIG_NLS_ISO8859_2 is not set
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-# CONFIG_NLS_ISO8859_5 is not set
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_KOI8_R is not set
-# CONFIG_NLS_KOI8_U is not set
-# CONFIG_NLS_MAC_CELTIC is not set
-# CONFIG_NLS_MAC_CENTEURO is not set
-# CONFIG_NLS_MAC_CROATIAN is not set
-# CONFIG_NLS_MAC_CYRILLIC is not set
-# CONFIG_NLS_MAC_GAELIC is not set
-# CONFIG_NLS_MAC_GREEK is not set
-# CONFIG_NLS_MAC_ICELAND is not set
-# CONFIG_NLS_MAC_INUIT is not set
-# CONFIG_NLS_MAC_ROMAN is not set
-# CONFIG_NLS_MAC_ROMANIAN is not set
-# CONFIG_NLS_MAC_TURKISH is not set
-# CONFIG_NLS_UTF8 is not set
-# CONFIG_NOP_USB_XCEIV is not set
-# CONFIG_NORTEL_HERMES is not set
-# CONFIG_NOTIFIER_ERROR_INJECTION is not set
-# CONFIG_NOZOMI is not set
-# CONFIG_NO_BOOTMEM is not set
-# CONFIG_NO_HZ is not set
-# CONFIG_NO_HZ_FULL is not set
-# CONFIG_NO_HZ_IDLE is not set
-# CONFIG_NO_IOPORT is not set
-# CONFIG_NS83820 is not set
-# CONFIG_NTFS_DEBUG is not set
-# CONFIG_NTFS_FS is not set
-# CONFIG_NTFS_RW is not set
-# CONFIG_NTP_PPS is not set
-# CONFIG_NVRAM is not set
-# CONFIG_NV_TCO is not set
-# CONFIG_NXP_STB220 is not set
-# CONFIG_NXP_STB225 is not set
-# CONFIG_N_GSM is not set
-# CONFIG_OABI_COMPAT is not set
-# CONFIG_OBS600 is not set
-# CONFIG_OCFS2_FS is not set
-# CONFIG_OCF_BENCH is not set
-# CONFIG_OCF_C7108 is not set
-# CONFIG_OCF_CRYPTOCTEON is not set
-# CONFIG_OCF_EP80579 is not set
-# CONFIG_OCF_HIFN is not set
-# CONFIG_OCF_HIFNHIPP is not set
-# CONFIG_OCF_IXP4XX is not set
-# CONFIG_OCF_KIRKWOOD is not set
-# CONFIG_OCF_OCF is not set
-# CONFIG_OCF_OCFNULL is not set
-# CONFIG_OCF_SAFE is not set
-# CONFIG_OCF_TALITOS is not set
-# CONFIG_OCF_UBSEC_SSB is not set
-# CONFIG_OC_ETM is not set
-# CONFIG_OF_SELFTEST is not set
-# CONFIG_OMAP2_DSS_DEBUG is not set
-# CONFIG_OMAP2_DSS_DEBUGFS is not set
-# CONFIG_OMAP2_DSS_SDI is not set
-# CONFIG_OMAP_CONTROL_USB is not set
-# CONFIG_OMAP_OCP2SCP is not set
-# CONFIG_OMAP_USB2 is not set
-# CONFIG_OMAP_USB3 is not set
-# CONFIG_OMFS_FS is not set
-# CONFIG_OPENVSWITCH is not set
-# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
-# CONFIG_ORION_WATCHDOG is not set
-# CONFIG_OSF_PARTITION is not set
-CONFIG_OVERLAYFS_FS=y
-# CONFIG_P54_COMMON is not set
-CONFIG_PACKET=y
-# CONFIG_PACKET_DIAG is not set
-# CONFIG_PAGE_POISONING is not set
-# CONFIG_PAGE_SIZE_16KB is not set
-# CONFIG_PAGE_SIZE_32KB is not set
-CONFIG_PAGE_SIZE_4KB=y
-# CONFIG_PAGE_SIZE_64KB is not set
-# CONFIG_PAGE_SIZE_8KB is not set
-# CONFIG_PANEL is not set
-# CONFIG_PANIC_ON_OOPS is not set
-CONFIG_PANIC_ON_OOPS_VALUE=0
-CONFIG_PANIC_TIMEOUT=0
-# CONFIG_PANTHERLORD_FF is not set
-# CONFIG_PARPORT is not set
-# CONFIG_PARPORT_1284 is not set
-# CONFIG_PARPORT_AX88796 is not set
-# CONFIG_PARPORT_PC is not set
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_PATA_ALI is not set
-# CONFIG_PATA_AMD is not set
-# CONFIG_PATA_ARASAN_CF is not set
-# CONFIG_PATA_ARTOP is not set
-# CONFIG_PATA_ATIIXP is not set
-# CONFIG_PATA_ATP867X is not set
-# CONFIG_PATA_CMD640_PCI is not set
-# CONFIG_PATA_CMD64X is not set
-# CONFIG_PATA_CS5520 is not set
-# CONFIG_PATA_CS5530 is not set
-# CONFIG_PATA_CS5535 is not set
-# CONFIG_PATA_CS5536 is not set
-# CONFIG_PATA_CYPRESS is not set
-# CONFIG_PATA_EFAR is not set
-# CONFIG_PATA_HPT366 is not set
-# CONFIG_PATA_HPT37X is not set
-# CONFIG_PATA_HPT3X2N is not set
-# CONFIG_PATA_HPT3X3 is not set
-# CONFIG_PATA_ISAPNP is not set
-# CONFIG_PATA_IT8213 is not set
-# CONFIG_PATA_IT821X is not set
-# CONFIG_PATA_JMICRON is not set
-# CONFIG_PATA_LEGACY is not set
-# CONFIG_PATA_MARVELL is not set
-# CONFIG_PATA_MPIIX is not set
-# CONFIG_PATA_NETCELL is not set
-# CONFIG_PATA_NINJA32 is not set
-# CONFIG_PATA_NS87410 is not set
-# CONFIG_PATA_NS87415 is not set
-# CONFIG_PATA_OCTEON_CF is not set
-# CONFIG_PATA_OF_PLATFORM is not set
-# CONFIG_PATA_OLDPIIX is not set
-# CONFIG_PATA_OPTI is not set
-# CONFIG_PATA_OPTIDMA is not set
-# CONFIG_PATA_PCMCIA is not set
-# CONFIG_PATA_PDC2027X is not set
-# CONFIG_PATA_PDC_OLD is not set
-# CONFIG_PATA_PLATFORM is not set
-# CONFIG_PATA_QDI is not set
-# CONFIG_PATA_RADISYS is not set
-# CONFIG_PATA_RDC is not set
-# CONFIG_PATA_RZ1000 is not set
-# CONFIG_PATA_SC1200 is not set
-# CONFIG_PATA_SCH is not set
-# CONFIG_PATA_SERVERWORKS is not set
-# CONFIG_PATA_SIL680 is not set
-# CONFIG_PATA_SIS is not set
-# CONFIG_PATA_TOSHIBA is not set
-# CONFIG_PATA_TRIFLEX is not set
-# CONFIG_PATA_VIA is not set
-# CONFIG_PATA_WINBOND is not set
-# CONFIG_PATA_WINBOND_VLB is not set
-# CONFIG_PC300TOO is not set
-# CONFIG_PCCARD is not set
-# CONFIG_PCH_GBE is not set
-# CONFIG_PCH_PHUB is not set
-# CONFIG_PCI200SYN is not set
-# CONFIG_PCIEAER_INJECT is not set
-# CONFIG_PCIEASPM is not set
-# CONFIG_PCIEPORTBUS is not set
-# CONFIG_PCIE_ECRC is not set
-# CONFIG_PCIPCWATCHDOG is not set
-# CONFIG_PCI_ATMEL is not set
-# CONFIG_PCI_CNB20LE_QUIRK is not set
-# CONFIG_PCI_DEBUG is not set
-# CONFIG_PCI_DISABLE_COMMON_QUIRKS is not set
-# CONFIG_PCI_HERMES is not set
-# CONFIG_PCI_IOV is not set
-# CONFIG_PCI_MSI is not set
-# CONFIG_PCI_PASID is not set
-# CONFIG_PCI_PRI is not set
-CONFIG_PCI_QUIRKS=y
-# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
-# CONFIG_PCI_STUB is not set
-CONFIG_PCI_SYSCALL=y
-# CONFIG_PCMCIA is not set
-# CONFIG_PCMCIA_3C574 is not set
-# CONFIG_PCMCIA_3C589 is not set
-# CONFIG_PCMCIA_AHA152X is not set
-# CONFIG_PCMCIA_ATMEL is not set
-# CONFIG_PCMCIA_AXNET is not set
-# CONFIG_PCMCIA_DEBUG is not set
-# CONFIG_PCMCIA_FDOMAIN is not set
-# CONFIG_PCMCIA_FMVJ18X is not set
-# CONFIG_PCMCIA_HERMES is not set
-# CONFIG_PCMCIA_LOAD_CIS is not set
-# CONFIG_PCMCIA_NINJA_SCSI is not set
-# CONFIG_PCMCIA_NMCLAN is not set
-# CONFIG_PCMCIA_PCNET is not set
-# CONFIG_PCMCIA_QLOGIC is not set
-# CONFIG_PCMCIA_RAYCS is not set
-# CONFIG_PCMCIA_SMC91C92 is not set
-# CONFIG_PCMCIA_SPECTRUM is not set
-# CONFIG_PCMCIA_SYM53C500 is not set
-# CONFIG_PCMCIA_WL3501 is not set
-# CONFIG_PCMCIA_XIRC2PS is not set
-# CONFIG_PCMCIA_XIRCOM is not set
-# CONFIG_PCNET32 is not set
-# CONFIG_PCSPKR_PLATFORM is not set
-# CONFIG_PD6729 is not set
-# CONFIG_PDA_POWER is not set
-# CONFIG_PDC_ADMA is not set
-# CONFIG_PERCPU_TEST is not set
-# CONFIG_PERF_COUNTERS is not set
-# CONFIG_PERF_EVENTS is not set
-# CONFIG_PERSISTENT_KEYRINGS is not set
-# CONFIG_PHANTOM is not set
-# CONFIG_PHONE is not set
-# CONFIG_PHONET is not set
-# CONFIG_PHYLIB is not set
-# CONFIG_PHYS_ADDR_T_64BIT is not set
-# CONFIG_PHY_EXYNOS_DP_VIDEO is not set
-# CONFIG_PHY_EXYNOS_MIPI_VIDEO is not set
-# CONFIG_PID_IN_CONTEXTIDR is not set
-# CONFIG_PID_NS is not set
-CONFIG_PINCONF=y
-# CONFIG_PINCTRL is not set
-# CONFIG_PINCTRL_CAPRI is not set
-# CONFIG_PINCTRL_EXYNOS is not set
-# CONFIG_PINCTRL_EXYNOS5440 is not set
-# CONFIG_PINCTRL_MSM8X74 is not set
-CONFIG_PINCTRL_SINGLE=y
-CONFIG_PINMUX=y
-# CONFIG_PLAT_SPEAR is not set
-# CONFIG_PLIP is not set
-# CONFIG_PLX_HERMES is not set
-# CONFIG_PM is not set
-# CONFIG_PMBUS is not set
-# CONFIG_PMC_MSP is not set
-# CONFIG_PMC_YOSEMITE is not set
-# CONFIG_PMIC_ADP5520 is not set
-# CONFIG_PMIC_DA903X is not set
-# CONFIG_PM_AUTOSLEEP is not set
-# CONFIG_PM_DEVFREQ is not set
-# CONFIG_PM_RUNTIME is not set
-# CONFIG_PM_WAKELOCKS is not set
-# CONFIG_PNX8550_JBS is not set
-# CONFIG_PNX8550_STB810 is not set
-# CONFIG_POHMELFS is not set
-# CONFIG_POSIX_MQUEUE is not set
-# CONFIG_POWERCAP is not set
-# CONFIG_POWERTV is not set
-# CONFIG_POWER_AVS is not set
-# CONFIG_POWER_RESET is not set
-# CONFIG_POWER_RESET_RESTART is not set
-# CONFIG_POWER_SUPPLY is not set
-# CONFIG_POWER_SUPPLY_DEBUG is not set
-# CONFIG_PPC4xx_GPIO is not set
-# CONFIG_PPC_16K_PAGES is not set
-# CONFIG_PPC_256K_PAGES is not set
-CONFIG_PPC_4K_PAGES=y
-# CONFIG_PPC_64K_PAGES is not set
-# CONFIG_PPC_DISABLE_WERROR is not set
-# CONFIG_PPC_EMULATED_STATS is not set
-# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set
-# CONFIG_PPP is not set
-# CONFIG_PPPOATM is not set
-# CONFIG_PPPOE is not set
-# CONFIG_PPPOL2TP is not set
-# CONFIG_PPP_ASYNC is not set
-# CONFIG_PPP_BSDCOMP is not set
-# CONFIG_PPP_DEFLATE is not set
-CONFIG_PPP_FILTER=y
-# CONFIG_PPP_MPPE is not set
-CONFIG_PPP_MULTILINK=y
-# CONFIG_PPP_SYNC_TTY is not set
-# CONFIG_PPS is not set
-# CONFIG_PPS_CLIENT_GPIO is not set
-# CONFIG_PPS_CLIENT_KTIMER is not set
-# CONFIG_PPS_CLIENT_LDISC is not set
-# CONFIG_PPS_CLIENT_PARPORT is not set
-# CONFIG_PPS_DEBUG is not set
-# CONFIG_PPTP is not set
-# CONFIG_PREEMPT is not set
-CONFIG_PREEMPT_NONE=y
-# CONFIG_PREEMPT_TRACER is not set
-# CONFIG_PREEMPT_VOLUNTARY is not set
-CONFIG_PREVENT_FIRMWARE_BUILD=y
-CONFIG_PRINTK=y
-# CONFIG_PRINTK_TIME is not set
-CONFIG_PRINT_STACK_DEPTH=64
-# CONFIG_PRISM2_USB is not set
-# CONFIG_PRISM54 is not set
-# CONFIG_PROBE_INITRD_HEADER is not set
-# CONFIG_PROC_DEVICETREE is not set
-CONFIG_PROC_FS=y
-# CONFIG_PROC_KCORE is not set
-# CONFIG_PROC_PAGE_MONITOR is not set
-CONFIG_PROC_STRIPPED=y
-CONFIG_PROC_SYSCTL=y
-# CONFIG_PROFILE_ALL_BRANCHES is not set
-# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
-# CONFIG_PROFILING is not set
-# CONFIG_PROVE_LOCKING is not set
-# CONFIG_PROVE_RCU is not set
-# CONFIG_PROVE_RCU_DELAY is not set
-# CONFIG_PSB6970_PHY is not set
-# CONFIG_PSTORE is not set
-# CONFIG_PTP_1588_CLOCK is not set
-# CONFIG_PTP_1588_CLOCK_IXP46X is not set
-# CONFIG_PTP_1588_CLOCK_PCH is not set
-# CONFIG_PWM is not set
-# CONFIG_PWM_PCA9685 is not set
-# CONFIG_QLA3XXX is not set
-# CONFIG_QLCNIC is not set
-# CONFIG_QLGE is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_QNX6FS_FS is not set
-# CONFIG_QSEMI_PHY is not set
-# CONFIG_QUOTA is not set
-# CONFIG_QUOTACTL is not set
-# CONFIG_QUOTA_DEBUG is not set
-# CONFIG_R3964 is not set
-# CONFIG_R6040 is not set
-# CONFIG_R8169 is not set
-# CONFIG_R8187SE is not set
-# CONFIG_R8188EU is not set
-# CONFIG_R8712U is not set
-# CONFIG_RADIO_ADAPTERS is not set
-# CONFIG_RADIO_AZTECH is not set
-# CONFIG_RADIO_CADET is not set
-# CONFIG_RADIO_GEMTEK is not set
-# CONFIG_RADIO_MAXIRADIO is not set
-# CONFIG_RADIO_RTRACK is not set
-# CONFIG_RADIO_RTRACK2 is not set
-# CONFIG_RADIO_SF16FMI is not set
-# CONFIG_RADIO_SF16FMR2 is not set
-# CONFIG_RADIO_TERRATEC is not set
-# CONFIG_RADIO_TRUST is not set
-# CONFIG_RADIO_TYPHOON is not set
-# CONFIG_RADIO_ZOLTRIX is not set
-# CONFIG_RAID_ATTRS is not set
-# CONFIG_RALINK is not set
-# CONFIG_RAMOOPS is not set
-# CONFIG_RANDOM32_SELFTEST is not set
-# CONFIG_RAPIDIO is not set
-# CONFIG_RAR_REGISTER is not set
-# CONFIG_RAW_DRIVER is not set
-# CONFIG_RBTREE_TEST is not set
-# CONFIG_RCU_CPU_STALL_INFO is not set
-CONFIG_RCU_CPU_STALL_TIMEOUT=60
-CONFIG_RCU_FANOUT=32
-# CONFIG_RCU_FANOUT_EXACT is not set
-CONFIG_RCU_FANOUT_LEAF=16
-# CONFIG_RCU_FAST_NO_HZ is not set
-# CONFIG_RCU_NOCB_CPU is not set
-# CONFIG_RCU_TORTURE_TEST is not set
-# CONFIG_RCU_TRACE is not set
-# CONFIG_RCU_USER_QS is not set
-# CONFIG_RC_ATI_REMOTE is not set
-# CONFIG_RC_CORE is not set
-# CONFIG_RC_DECODERS is not set
-# CONFIG_RC_LOOPBACK is not set
-# CONFIG_RC_MAP is not set
-# CONFIG_RDS is not set
-# CONFIG_RD_BZIP2 is not set
-# CONFIG_RD_GZIP is not set
-# CONFIG_RD_LZ4 is not set
-# CONFIG_RD_LZMA is not set
-# CONFIG_RD_LZO is not set
-# CONFIG_RD_XZ is not set
-# CONFIG_READABLE_ASM is not set
-# CONFIG_REALTEK_PHY is not set
-# CONFIG_REDWOOD is not set
-# CONFIG_REGMAP is not set
-# CONFIG_REGMAP_I2C is not set
-# CONFIG_REGMAP_SPI is not set
-# CONFIG_REGULATOR is not set
-# CONFIG_REGULATOR_ACT8865 is not set
-# CONFIG_REGULATOR_AD5398 is not set
-# CONFIG_REGULATOR_ANATOP is not set
-# CONFIG_REGULATOR_BQ24022 is not set
-# CONFIG_REGULATOR_DA9210 is not set
-# CONFIG_REGULATOR_FAN53555 is not set
-# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
-# CONFIG_REGULATOR_GPIO is not set
-# CONFIG_REGULATOR_ISL6271A is not set
-# CONFIG_REGULATOR_LP3971 is not set
-# CONFIG_REGULATOR_LP3972 is not set
-# CONFIG_REGULATOR_LP872X is not set
-# CONFIG_REGULATOR_LP8755 is not set
-# CONFIG_REGULATOR_MAX1586 is not set
-# CONFIG_REGULATOR_MAX8649 is not set
-# CONFIG_REGULATOR_MAX8660 is not set
-# CONFIG_REGULATOR_MAX8952 is not set
-# CONFIG_REGULATOR_MAX8973 is not set
-# CONFIG_REGULATOR_PFUZE100 is not set
-# CONFIG_REGULATOR_TI_ABB is not set
-# CONFIG_REGULATOR_TPS51632 is not set
-# CONFIG_REGULATOR_TPS62360 is not set
-# CONFIG_REGULATOR_TPS65023 is not set
-# CONFIG_REGULATOR_TPS6507X is not set
-# CONFIG_REGULATOR_TPS6524X is not set
-# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
-# CONFIG_REISERFS_CHECK is not set
-# CONFIG_REISERFS_FS is not set
-# CONFIG_REISERFS_FS_POSIX_ACL is not set
-# CONFIG_REISERFS_FS_SECURITY is not set
-# CONFIG_REISERFS_FS_XATTR is not set
-# CONFIG_REISERFS_PROC_INFO is not set
-# CONFIG_RELAY is not set
-# CONFIG_RESET_CONTROLLER is not set
-# CONFIG_RFD_FTL is not set
-# CONFIG_RFKILL is not set
-# CONFIG_RFKILL_INPUT is not set
-# CONFIG_RING_BUFFER_BENCHMARK is not set
-# CONFIG_RING_BUFFER_STARTUP_TEST is not set
-# CONFIG_ROMFS_FS is not set
-# CONFIG_ROSE is not set
-# CONFIG_RPCSEC_GSS_KRB5 is not set
-# CONFIG_RT2X00 is not set
-# CONFIG_RTC_CLASS is not set
-# CONFIG_RTC_DEBUG is not set
-# CONFIG_RTC_DRV_AU1XXX is not set
-# CONFIG_RTC_DRV_BQ32K is not set
-# CONFIG_RTC_DRV_BQ4802 is not set
-CONFIG_RTC_DRV_CMOS=y
-# CONFIG_RTC_DRV_DS1286 is not set
-# CONFIG_RTC_DRV_DS1305 is not set
-# CONFIG_RTC_DRV_DS1307 is not set
-# CONFIG_RTC_DRV_DS1374 is not set
-# CONFIG_RTC_DRV_DS1390 is not set
-# CONFIG_RTC_DRV_DS1511 is not set
-# CONFIG_RTC_DRV_DS1553 is not set
-# CONFIG_RTC_DRV_DS1672 is not set
-# CONFIG_RTC_DRV_DS1742 is not set
-# CONFIG_RTC_DRV_DS2404 is not set
-# CONFIG_RTC_DRV_DS3232 is not set
-# CONFIG_RTC_DRV_DS3234 is not set
-# CONFIG_RTC_DRV_EM3027 is not set
-# CONFIG_RTC_DRV_EP93XX is not set
-# CONFIG_RTC_DRV_FM3130 is not set
-# CONFIG_RTC_DRV_GENERIC is not set
-# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set
-# CONFIG_RTC_DRV_HYM8563 is not set
-# CONFIG_RTC_DRV_ISL12022 is not set
-# CONFIG_RTC_DRV_ISL12057 is not set
-# CONFIG_RTC_DRV_ISL1208 is not set
-# CONFIG_RTC_DRV_M41T80 is not set
-# CONFIG_RTC_DRV_M41T93 is not set
-# CONFIG_RTC_DRV_M41T94 is not set
-# CONFIG_RTC_DRV_M48T35 is not set
-# CONFIG_RTC_DRV_M48T59 is not set
-# CONFIG_RTC_DRV_M48T86 is not set
-# CONFIG_RTC_DRV_MAX6900 is not set
-# CONFIG_RTC_DRV_MAX6902 is not set
-# CONFIG_RTC_DRV_MOXART is not set
-# CONFIG_RTC_DRV_MPC5121 is not set
-# CONFIG_RTC_DRV_MSM6242 is not set
-# CONFIG_RTC_DRV_OMAP is not set
-# CONFIG_RTC_DRV_PCF2123 is not set
-# CONFIG_RTC_DRV_PCF2127 is not set
-# CONFIG_RTC_DRV_PCF8523 is not set
-# CONFIG_RTC_DRV_PCF8563 is not set
-# CONFIG_RTC_DRV_PCF8583 is not set
-# CONFIG_RTC_DRV_PL030 is not set
-# CONFIG_RTC_DRV_PL031 is not set
-# CONFIG_RTC_DRV_PS3 is not set
-# CONFIG_RTC_DRV_PT7C4338 is not set
-# CONFIG_RTC_DRV_R9701 is not set
-# CONFIG_RTC_DRV_RP5C01 is not set
-# CONFIG_RTC_DRV_RS5C348 is not set
-# CONFIG_RTC_DRV_RS5C372 is not set
-# CONFIG_RTC_DRV_RTC7301 is not set
-# CONFIG_RTC_DRV_RV3029C2 is not set
-# CONFIG_RTC_DRV_RX4581 is not set
-# CONFIG_RTC_DRV_RX8025 is not set
-# CONFIG_RTC_DRV_RX8581 is not set
-# CONFIG_RTC_DRV_S35390A is not set
-# CONFIG_RTC_DRV_SNVS is not set
-# CONFIG_RTC_DRV_STK17TA8 is not set
-# CONFIG_RTC_DRV_TEST is not set
-# CONFIG_RTC_DRV_V3020 is not set
-# CONFIG_RTC_DRV_X1205 is not set
-CONFIG_RTC_HCTOSYS=y
-CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
-CONFIG_RTC_INTF_DEV=y
-# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
-CONFIG_RTC_INTF_PROC=y
-CONFIG_RTC_INTF_SYSFS=y
-CONFIG_RTC_LIB=y
-CONFIG_RTC_SYSTOHC=y
-# CONFIG_RTL8180 is not set
-# CONFIG_RTL8187 is not set
-# CONFIG_RTL8192E is not set
-# CONFIG_RTL8192U is not set
-# CONFIG_RTL8306_PHY is not set
-# CONFIG_RTL8366RB_PHY is not set
-# CONFIG_RTL8366S_PHY is not set
-# CONFIG_RTL8366_SMI is not set
-# CONFIG_RTL8366_SMI_DEBUG_FS is not set
-# CONFIG_RTL8367B_PHY is not set
-# CONFIG_RTL8367_PHY is not set
-# CONFIG_RTLLIB is not set
-# CONFIG_RTL_CARDS is not set
-# CONFIG_RTS5139 is not set
-# CONFIG_RTS5208 is not set
-# CONFIG_RTS_PSTOR is not set
-CONFIG_RT_MUTEXES=y
-# CONFIG_RT_MUTEX_TESTER is not set
-# CONFIG_RUNTIME_DEBUG is not set
-CONFIG_RWSEM_GENERIC_SPINLOCK=y
-# CONFIG_S2IO is not set
-# CONFIG_SAMPLES is not set
-# CONFIG_SAMSUNG_LAPTOP is not set
-# CONFIG_SAMSUNG_USB2PHY is not set
-# CONFIG_SAMSUNG_USB3PHY is not set
-# CONFIG_SATA_ACARD_AHCI is not set
-# CONFIG_SATA_AHCI is not set
-# CONFIG_SATA_AHCI_PLATFORM is not set
-# CONFIG_SATA_DWC is not set
-# CONFIG_SATA_FSL is not set
-# CONFIG_SATA_HIGHBANK is not set
-# CONFIG_SATA_INIC162X is not set
-# CONFIG_SATA_MV is not set
-# CONFIG_SATA_NV is not set
-# CONFIG_SATA_PMP is not set
-# CONFIG_SATA_PROMISE is not set
-# CONFIG_SATA_QSTOR is not set
-# CONFIG_SATA_RCAR is not set
-# CONFIG_SATA_SIL is not set
-# CONFIG_SATA_SIL24 is not set
-# CONFIG_SATA_SIS is not set
-# CONFIG_SATA_SVW is not set
-# CONFIG_SATA_SX4 is not set
-# CONFIG_SATA_ULI is not set
-# CONFIG_SATA_VIA is not set
-# CONFIG_SATA_VITESSE is not set
-# CONFIG_SBC_FITPC2_WATCHDOG is not set
-# CONFIG_SBE_2T3E3 is not set
-# CONFIG_SBYPASS is not set
-# CONFIG_SC92031 is not set
-# CONFIG_SCA3000 is not set
-# CONFIG_SCC is not set
-# CONFIG_SCHEDSTATS is not set
-# CONFIG_SCHED_AUTOGROUP is not set
-# CONFIG_SCHED_DEBUG is not set
-# CONFIG_SCHED_MC is not set
-CONFIG_SCHED_OMIT_FRAME_POINTER=y
-# CONFIG_SCHED_SMT is not set
-# CONFIG_SCHED_TRACER is not set
-# CONFIG_SCSI is not set
-# CONFIG_SCSI_3W_9XXX is not set
-# CONFIG_SCSI_3W_SAS is not set
-# CONFIG_SCSI_7000FASST is not set
-# CONFIG_SCSI_AACRAID is not set
-# CONFIG_SCSI_ACARD is not set
-# CONFIG_SCSI_ADVANSYS is not set
-# CONFIG_SCSI_AHA152X is not set
-# CONFIG_SCSI_AHA1542 is not set
-# CONFIG_SCSI_AIC79XX is not set
-# CONFIG_SCSI_AIC7XXX is not set
-# CONFIG_SCSI_AIC7XXX_OLD is not set
-# CONFIG_SCSI_AIC94XX is not set
-# CONFIG_SCSI_ARCMSR is not set
-# CONFIG_SCSI_BFA_FC is not set
-# CONFIG_SCSI_BNX2X_FCOE is not set
-# CONFIG_SCSI_BNX2_ISCSI is not set
-# CONFIG_SCSI_BUSLOGIC is not set
-# CONFIG_SCSI_CHELSIO_FCOE is not set
-# CONFIG_SCSI_CONSTANTS is not set
-# CONFIG_SCSI_CXGB3_ISCSI is not set
-# CONFIG_SCSI_CXGB4_ISCSI is not set
-# CONFIG_SCSI_DC390T is not set
-# CONFIG_SCSI_DC395x is not set
-# CONFIG_SCSI_DEBUG is not set
-# CONFIG_SCSI_DH is not set
-CONFIG_SCSI_DMA=y
-# CONFIG_SCSI_DMX3191D is not set
-# CONFIG_SCSI_DPT_I2O is not set
-# CONFIG_SCSI_DTC3280 is not set
-# CONFIG_SCSI_EATA is not set
-# CONFIG_SCSI_ESAS2R is not set
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_FUTURE_DOMAIN is not set
-# CONFIG_SCSI_GDTH is not set
-# CONFIG_SCSI_GENERIC_NCR5380 is not set
-# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
-# CONFIG_SCSI_HPSA is not set
-# CONFIG_SCSI_HPTIOP is not set
-# CONFIG_SCSI_IN2000 is not set
-# CONFIG_SCSI_INIA100 is not set
-# CONFIG_SCSI_INITIO is not set
-# CONFIG_SCSI_IPR is not set
-# CONFIG_SCSI_IPS is not set
-# CONFIG_SCSI_ISCI is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_LOGGING is not set
-CONFIG_SCSI_LOWLEVEL=y
-# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
-# CONFIG_SCSI_LPFC is not set
-CONFIG_SCSI_MOD=y
-# CONFIG_SCSI_MPT2SAS is not set
-# CONFIG_SCSI_MPT3SAS is not set
-CONFIG_SCSI_MULTI_LUN=y
-# CONFIG_SCSI_MVSAS is not set
-# CONFIG_SCSI_MVSAS_DEBUG is not set
-# CONFIG_SCSI_MVUMI is not set
-# CONFIG_SCSI_NCR53C406A is not set
-# CONFIG_SCSI_NETLINK is not set
-# CONFIG_SCSI_NSP32 is not set
-# CONFIG_SCSI_OSD_INITIATOR is not set
-# CONFIG_SCSI_PAS16 is not set
-# CONFIG_SCSI_PM8001 is not set
-# CONFIG_SCSI_PMCRAID is not set
-CONFIG_SCSI_PROC_FS=y
-# CONFIG_SCSI_QLA_FC is not set
-# CONFIG_SCSI_QLA_ISCSI is not set
-# CONFIG_SCSI_QLOGIC_1280 is not set
-# CONFIG_SCSI_QLOGIC_FAS is not set
-# CONFIG_SCSI_SAS_ATTRS is not set
-# CONFIG_SCSI_SAS_LIBSAS is not set
-# CONFIG_SCSI_SCAN_ASYNC is not set
-# CONFIG_SCSI_SPI_ATTRS is not set
-# CONFIG_SCSI_SRP is not set
-# CONFIG_SCSI_SRP_ATTRS is not set
-# CONFIG_SCSI_STEX is not set
-# CONFIG_SCSI_SYM53C416 is not set
-# CONFIG_SCSI_SYM53C8XX_2 is not set
-# CONFIG_SCSI_T128 is not set
-# CONFIG_SCSI_TGT is not set
-# CONFIG_SCSI_U14_34F is not set
-# CONFIG_SCSI_UFSHCD is not set
-# CONFIG_SCSI_ULTRASTOR is not set
-# CONFIG_SDIO_UART is not set
-# CONFIG_SECCOMP is not set
-# CONFIG_SECURITY is not set
-# CONFIG_SECURITYFS is not set
-# CONFIG_SECURITY_DMESG_RESTRICT is not set
-# CONFIG_SEEQ8005 is not set
-CONFIG_SELECT_MEMORY_MODEL=y
-# CONFIG_SENSORS_ABITUGURU is not set
-# CONFIG_SENSORS_ABITUGURU3 is not set
-# CONFIG_SENSORS_ACPI_POWER is not set
-# CONFIG_SENSORS_AD7314 is not set
-# CONFIG_SENSORS_AD7414 is not set
-# CONFIG_SENSORS_AD7418 is not set
-# CONFIG_SENSORS_ADCXX is not set
-# CONFIG_SENSORS_ADM1021 is not set
-# CONFIG_SENSORS_ADM1025 is not set
-# CONFIG_SENSORS_ADM1026 is not set
-# CONFIG_SENSORS_ADM1029 is not set
-# CONFIG_SENSORS_ADM1031 is not set
-# CONFIG_SENSORS_ADM9240 is not set
-# CONFIG_SENSORS_ADS1015 is not set
-# CONFIG_SENSORS_ADS7828 is not set
-# CONFIG_SENSORS_ADS7871 is not set
-# CONFIG_SENSORS_ADT7310 is not set
-# CONFIG_SENSORS_ADT7410 is not set
-# CONFIG_SENSORS_ADT7411 is not set
-# CONFIG_SENSORS_ADT7462 is not set
-# CONFIG_SENSORS_ADT7470 is not set
-# CONFIG_SENSORS_ADT7475 is not set
-# CONFIG_SENSORS_AMC6821 is not set
-# CONFIG_SENSORS_APDS990X is not set
-# CONFIG_SENSORS_APPLESMC is not set
-# CONFIG_SENSORS_ASB100 is not set
-# CONFIG_SENSORS_ASC7621 is not set
-# CONFIG_SENSORS_ATK0110 is not set
-# CONFIG_SENSORS_ATXP1 is not set
-# CONFIG_SENSORS_BH1770 is not set
-# CONFIG_SENSORS_BH1780 is not set
-# CONFIG_SENSORS_CORETEMP is not set
-# CONFIG_SENSORS_DME1737 is not set
-# CONFIG_SENSORS_DS1621 is not set
-# CONFIG_SENSORS_DS620 is not set
-# CONFIG_SENSORS_EMC1403 is not set
-# CONFIG_SENSORS_EMC2103 is not set
-# CONFIG_SENSORS_EMC6W201 is not set
-# CONFIG_SENSORS_F71805F is not set
-# CONFIG_SENSORS_F71882FG is not set
-# CONFIG_SENSORS_F75375S is not set
-# CONFIG_SENSORS_FAM15H_POWER is not set
-# CONFIG_SENSORS_FSCHMD is not set
-# CONFIG_SENSORS_G760A is not set
-# CONFIG_SENSORS_G762 is not set
-# CONFIG_SENSORS_GL518SM is not set
-# CONFIG_SENSORS_GL520SM is not set
-# CONFIG_SENSORS_GPIO_FAN is not set
-# CONFIG_SENSORS_GSC is not set
-# CONFIG_SENSORS_HDAPS is not set
-# CONFIG_SENSORS_HIH6130 is not set
-# CONFIG_SENSORS_HMC5843 is not set
-# CONFIG_SENSORS_HTU21 is not set
-# CONFIG_SENSORS_I5K_AMB is not set
-# CONFIG_SENSORS_IIO_HWMON is not set
-# CONFIG_SENSORS_INA209 is not set
-# CONFIG_SENSORS_INA2XX is not set
-# CONFIG_SENSORS_ISL29018 is not set
-# CONFIG_SENSORS_ISL29028 is not set
-# CONFIG_SENSORS_IT87 is not set
-# CONFIG_SENSORS_JC42 is not set
-# CONFIG_SENSORS_K10TEMP is not set
-# CONFIG_SENSORS_K8TEMP is not set
-# CONFIG_SENSORS_LINEAGE is not set
-# CONFIG_SENSORS_LIS3LV02D is not set
-# CONFIG_SENSORS_LIS3_I2C is not set
-# CONFIG_SENSORS_LIS3_SPI is not set
-# CONFIG_SENSORS_LM63 is not set
-# CONFIG_SENSORS_LM70 is not set
-# CONFIG_SENSORS_LM73 is not set
-# CONFIG_SENSORS_LM75 is not set
-# CONFIG_SENSORS_LM77 is not set
-# CONFIG_SENSORS_LM78 is not set
-# CONFIG_SENSORS_LM80 is not set
-# CONFIG_SENSORS_LM83 is not set
-# CONFIG_SENSORS_LM85 is not set
-# CONFIG_SENSORS_LM87 is not set
-# CONFIG_SENSORS_LM90 is not set
-# CONFIG_SENSORS_LM92 is not set
-# CONFIG_SENSORS_LM93 is not set
-# CONFIG_SENSORS_LM95234 is not set
-# CONFIG_SENSORS_LM95241 is not set
-# CONFIG_SENSORS_LM95245 is not set
-# CONFIG_SENSORS_LTC4151 is not set
-# CONFIG_SENSORS_LTC4215 is not set
-# CONFIG_SENSORS_LTC4245 is not set
-# CONFIG_SENSORS_LTC4261 is not set
-# CONFIG_SENSORS_MAX1111 is not set
-# CONFIG_SENSORS_MAX16065 is not set
-# CONFIG_SENSORS_MAX1619 is not set
-# CONFIG_SENSORS_MAX1668 is not set
-# CONFIG_SENSORS_MAX197 is not set
-# CONFIG_SENSORS_MAX6639 is not set
-# CONFIG_SENSORS_MAX6642 is not set
-# CONFIG_SENSORS_MAX6650 is not set
-# CONFIG_SENSORS_MAX6697 is not set
-# CONFIG_SENSORS_MCP3021 is not set
-# CONFIG_SENSORS_NCT6775 is not set
-# CONFIG_SENSORS_NTC_THERMISTOR is not set
-# CONFIG_SENSORS_PC87360 is not set
-# CONFIG_SENSORS_PC87427 is not set
-# CONFIG_SENSORS_PCF8591 is not set
-# CONFIG_SENSORS_SCH5627 is not set
-# CONFIG_SENSORS_SCH5636 is not set
-# CONFIG_SENSORS_SCH56XX_COMMON is not set
-# CONFIG_SENSORS_SHT15 is not set
-# CONFIG_SENSORS_SHT21 is not set
-# CONFIG_SENSORS_SIS5595 is not set
-# CONFIG_SENSORS_SMM665 is not set
-# CONFIG_SENSORS_SMSC47B397 is not set
-# CONFIG_SENSORS_SMSC47M1 is not set
-# CONFIG_SENSORS_SMSC47M192 is not set
-# CONFIG_SENSORS_THMC50 is not set
-# CONFIG_SENSORS_TMP102 is not set
-# CONFIG_SENSORS_TMP401 is not set
-# CONFIG_SENSORS_TMP421 is not set
-# CONFIG_SENSORS_TSL2550 is not set
-# CONFIG_SENSORS_TSL2563 is not set
-# CONFIG_SENSORS_VEXPRESS is not set
-# CONFIG_SENSORS_VIA686A is not set
-# CONFIG_SENSORS_VIA_CPUTEMP is not set
-# CONFIG_SENSORS_VT1211 is not set
-# CONFIG_SENSORS_VT8231 is not set
-# CONFIG_SENSORS_W83627EHF is not set
-# CONFIG_SENSORS_W83627HF is not set
-# CONFIG_SENSORS_W83781D is not set
-# CONFIG_SENSORS_W83791D is not set
-# CONFIG_SENSORS_W83792D is not set
-# CONFIG_SENSORS_W83793 is not set
-# CONFIG_SENSORS_W83795 is not set
-# CONFIG_SENSORS_W83L785TS is not set
-# CONFIG_SENSORS_W83L786NG is not set
-CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_ACCENT is not set
-# CONFIG_SERIAL_8250_BOCA is not set
-CONFIG_SERIAL_8250_CONSOLE=y
-# CONFIG_SERIAL_8250_CS is not set
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
-# CONFIG_SERIAL_8250_DETECT_IRQ is not set
-CONFIG_SERIAL_8250_DMA=y
-# CONFIG_SERIAL_8250_DW is not set
-# CONFIG_SERIAL_8250_EM is not set
-# CONFIG_SERIAL_8250_EXAR_ST16C554 is not set
-# CONFIG_SERIAL_8250_EXTENDED is not set
-# CONFIG_SERIAL_8250_FOURPORT is not set
-# CONFIG_SERIAL_8250_HUB6 is not set
-# CONFIG_SERIAL_8250_MANY_PORTS is not set
-CONFIG_SERIAL_8250_NR_UARTS=2
-# CONFIG_SERIAL_8250_PCI is not set
-# CONFIG_SERIAL_8250_RSA is not set
-CONFIG_SERIAL_8250_RUNTIME_UARTS=2
-# CONFIG_SERIAL_8250_SYSRQ is not set
-# CONFIG_SERIAL_ALTERA_JTAGUART is not set
-# CONFIG_SERIAL_ALTERA_UART is not set
-# CONFIG_SERIAL_ARC is not set
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-# CONFIG_SERIAL_FSL_LPUART is not set
-# CONFIG_SERIAL_GRLIB_GAISLER_APBUART is not set
-# CONFIG_SERIAL_IFX6X60 is not set
-# CONFIG_SERIAL_JSM is not set
-# CONFIG_SERIAL_MAX3100 is not set
-# CONFIG_SERIAL_MAX3107 is not set
-# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_MFD_HSU is not set
-# CONFIG_SERIAL_NONSTANDARD is not set
-# CONFIG_SERIAL_OF_PLATFORM is not set
-# CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set
-# CONFIG_SERIAL_PCH_UART is not set
-# CONFIG_SERIAL_RP2 is not set
-# CONFIG_SERIAL_SCCNXP is not set
-# CONFIG_SERIAL_SH_SCI is not set
-# CONFIG_SERIAL_ST_ASC is not set
-# CONFIG_SERIAL_TIMBERDALE is not set
-# CONFIG_SERIAL_UARTLITE is not set
-# CONFIG_SERIAL_XILINX_PS_UART is not set
-# CONFIG_SERIO is not set
-# CONFIG_SERIO_ALTERA_PS2 is not set
-# CONFIG_SERIO_AMBAKMI is not set
-# CONFIG_SERIO_ARC_PS2 is not set
-# CONFIG_SERIO_I8042 is not set
-# CONFIG_SERIO_LIBPS2 is not set
-# CONFIG_SERIO_PARKBD is not set
-# CONFIG_SERIO_PCIPS2 is not set
-# CONFIG_SERIO_PS2MULT is not set
-# CONFIG_SERIO_RAW is not set
-# CONFIG_SERIO_SERPORT is not set
-# CONFIG_SFC is not set
-# CONFIG_SFI is not set
-# CONFIG_SGI_IOC4 is not set
-# CONFIG_SGI_IP22 is not set
-# CONFIG_SGI_IP27 is not set
-# CONFIG_SGI_IP28 is not set
-# CONFIG_SGI_IP32 is not set
-# CONFIG_SGI_PARTITION is not set
-CONFIG_SHMEM=y
-# CONFIG_SH_ETH is not set
-# CONFIG_SIBYTE_BIGSUR is not set
-# CONFIG_SIBYTE_CARMEL is not set
-# CONFIG_SIBYTE_CRHINE is not set
-# CONFIG_SIBYTE_CRHONE is not set
-# CONFIG_SIBYTE_LITTLESUR is not set
-# CONFIG_SIBYTE_RHONE is not set
-# CONFIG_SIBYTE_SENTOSA is not set
-# CONFIG_SIBYTE_SWARM is not set
-# CONFIG_SIGMA is not set
-CONFIG_SIGNALFD=y
-# CONFIG_SIMPLE_GPIO is not set
-# CONFIG_SIS190 is not set
-# CONFIG_SIS900 is not set
-# CONFIG_SKGE is not set
-# CONFIG_SKY2 is not set
-# CONFIG_SKY2_DEBUG is not set
-CONFIG_SLAB=y
-CONFIG_SLABINFO=y
-# CONFIG_SLHC is not set
-# CONFIG_SLICOSS is not set
-# CONFIG_SLIP is not set
-# CONFIG_SLOB is not set
-# CONFIG_SLUB is not set
-# CONFIG_SLUB_DEBUG is not set
-# CONFIG_SLUB_STATS is not set
-# CONFIG_SMARTJOYPLUS_FF is not set
-# CONFIG_SMC911X is not set
-# CONFIG_SMC9194 is not set
-# CONFIG_SMC91X is not set
-# CONFIG_SMP is not set
-# CONFIG_SMSC911X is not set
-# CONFIG_SMSC9420 is not set
-# CONFIG_SMSC_PHY is not set
-# CONFIG_SM_FTL is not set
-# CONFIG_SND is not set
-# CONFIG_SND_AC97_POWER_SAVE is not set
-# CONFIG_SND_AD1816A is not set
-# CONFIG_SND_AD1848 is not set
-# CONFIG_SND_AD1889 is not set
-# CONFIG_SND_ADLIB is not set
-# CONFIG_SND_ALI5451 is not set
-# CONFIG_SND_ALOOP is not set
-# CONFIG_SND_ALS100 is not set
-# CONFIG_SND_ALS300 is not set
-# CONFIG_SND_ALS4000 is not set
-# CONFIG_SND_ARM is not set
-# CONFIG_SND_ASIHPI is not set
-# CONFIG_SND_ATIIXP is not set
-# CONFIG_SND_ATIIXP_MODEM is not set
-# CONFIG_SND_ATMEL_AC97C is not set
-# CONFIG_SND_ATMEL_SOC is not set
-# CONFIG_SND_AU8810 is not set
-# CONFIG_SND_AU8820 is not set
-# CONFIG_SND_AU8830 is not set
-# CONFIG_SND_AW2 is not set
-# CONFIG_SND_AZT2320 is not set
-# CONFIG_SND_AZT3328 is not set
-# CONFIG_SND_BT87X is not set
-# CONFIG_SND_CA0106 is not set
-# CONFIG_SND_CMI8330 is not set
-# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_CS4231 is not set
-# CONFIG_SND_CS4236 is not set
-# CONFIG_SND_CS4281 is not set
-# CONFIG_SND_CS46XX is not set
-# CONFIG_SND_CS5530 is not set
-# CONFIG_SND_CS5535AUDIO is not set
-# CONFIG_SND_CTXFI is not set
-# CONFIG_SND_DARLA20 is not set
-# CONFIG_SND_DARLA24 is not set
-# CONFIG_SND_DEBUG is not set
-# CONFIG_SND_DESIGNWARE_I2S is not set
-CONFIG_SND_DRIVERS=y
-# CONFIG_SND_DUMMY is not set
-# CONFIG_SND_DYNAMIC_MINORS is not set
-# CONFIG_SND_ECHO3G is not set
-# CONFIG_SND_EMU10K1 is not set
-# CONFIG_SND_EMU10K1X is not set
-# CONFIG_SND_ENS1370 is not set
-# CONFIG_SND_ENS1371 is not set
-# CONFIG_SND_ES1688 is not set
-# CONFIG_SND_ES18XX is not set
-# CONFIG_SND_ES1938 is not set
-# CONFIG_SND_ES1968 is not set
-# CONFIG_SND_FIREWIRE is not set
-# CONFIG_SND_FM801 is not set
-# CONFIG_SND_GINA20 is not set
-# CONFIG_SND_GINA24 is not set
-# CONFIG_SND_GUSCLASSIC is not set
-# CONFIG_SND_GUSEXTREME is not set
-# CONFIG_SND_GUSMAX is not set
-# CONFIG_SND_HDA_INTEL is not set
-# CONFIG_SND_HDSP is not set
-# CONFIG_SND_HDSPM is not set
-# CONFIG_SND_HRTIMER is not set
-# CONFIG_SND_HWDEP is not set
-# CONFIG_SND_ICE1712 is not set
-# CONFIG_SND_ICE1724 is not set
-# CONFIG_SND_INDIGO is not set
-# CONFIG_SND_INDIGODJ is not set
-# CONFIG_SND_INDIGODJX is not set
-# CONFIG_SND_INDIGOIO is not set
-# CONFIG_SND_INDIGOIOX is not set
-# CONFIG_SND_INTEL8X0 is not set
-# CONFIG_SND_INTEL8X0M is not set
-# CONFIG_SND_INTERWAVE is not set
-# CONFIG_SND_INTERWAVE_STB is not set
-# CONFIG_SND_ISA is not set
-# CONFIG_SND_KIRKWOOD_SOC is not set
-# CONFIG_SND_KORG1212 is not set
-# CONFIG_SND_LAYLA20 is not set
-# CONFIG_SND_LAYLA24 is not set
-# CONFIG_SND_LOLA is not set
-# CONFIG_SND_LX6464ES is not set
-# CONFIG_SND_MAESTRO3 is not set
-# CONFIG_SND_MIA is not set
-# CONFIG_SND_MIPS is not set
-# CONFIG_SND_MIRO is not set
-# CONFIG_SND_MIXART is not set
-# CONFIG_SND_MIXER_OSS is not set
-# CONFIG_SND_MONA is not set
-# CONFIG_SND_MPC52xx_SOC_EFIKA is not set
-# CONFIG_SND_MPU401 is not set
-# CONFIG_SND_MTPAV is not set
-# CONFIG_SND_MTS64 is not set
-# CONFIG_SND_MXS_SOC is not set
-# CONFIG_SND_NM256 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_OSSEMUL=y
-# CONFIG_SND_OXYGEN is not set
-CONFIG_SND_PCI=y
-# CONFIG_SND_PCM is not set
-# CONFIG_SND_PCMCIA is not set
-# CONFIG_SND_PCM_OSS is not set
-CONFIG_SND_PCM_OSS_PLUGINS=y
-# CONFIG_SND_PCXHR is not set
-# CONFIG_SND_PDAUDIOCF is not set
-# CONFIG_SND_PORTMAN2X4 is not set
-# CONFIG_SND_POWERPC_SOC is not set
-# CONFIG_SND_PPC is not set
-# CONFIG_SND_RAWMIDI is not set
-# CONFIG_SND_RIPTIDE is not set
-# CONFIG_SND_RME32 is not set
-# CONFIG_SND_RME96 is not set
-# CONFIG_SND_RME9652 is not set
-# CONFIG_SND_RTCTIMER is not set
-# CONFIG_SND_SB16 is not set
-# CONFIG_SND_SB8 is not set
-# CONFIG_SND_SBAWE is not set
-# CONFIG_SND_SEQUENCER is not set
-# CONFIG_SND_SERIAL_U16550 is not set
-# CONFIG_SND_SIMPLE_CARD is not set
-# CONFIG_SND_SIS7019 is not set
-# CONFIG_SND_SOC is not set
-# CONFIG_SND_SOC_AU1XAUDIO is not set
-# CONFIG_SND_SOC_AU1XPSC is not set
-# CONFIG_SND_SOC_CACHE_LZO is not set
-# CONFIG_SND_SOC_IMX_SPDIF is not set
-# CONFIG_SND_SOC_IMX_WM8962 is not set
-# CONFIG_SND_SOC_MPC5200_AC97 is not set
-# CONFIG_SND_SOC_MPC5200_I2S is not set
-# CONFIG_SND_SONICVIBES is not set
-# CONFIG_SND_SPI is not set
-# CONFIG_SND_SSCAPE is not set
-# CONFIG_SND_SUPPORT_OLD_API is not set
-# CONFIG_SND_TIMER is not set
-# CONFIG_SND_TRIDENT is not set
-CONFIG_SND_USB=y
-# CONFIG_SND_USB_6FIRE is not set
-# CONFIG_SND_USB_AUDIO is not set
-# CONFIG_SND_USB_CAIAQ is not set
-# CONFIG_SND_USB_HIFACE is not set
-# CONFIG_SND_USB_UA101 is not set
-# CONFIG_SND_USB_US122L is not set
-# CONFIG_SND_USB_USX2Y is not set
-# CONFIG_SND_VERBOSE_PRINTK is not set
-CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VIA82XX is not set
-# CONFIG_SND_VIA82XX_MODEM is not set
-# CONFIG_SND_VIRTUOSO is not set
-# CONFIG_SND_VX222 is not set
-# CONFIG_SND_VXPOCKET is not set
-# CONFIG_SND_WAVEFRONT is not set
-# CONFIG_SND_YMFPCI is not set
-# CONFIG_SNI_RM is not set
-# CONFIG_SOC_AM33XX is not set
-# CONFIG_SOC_AM43XX is not set
-# CONFIG_SOC_CAMERA is not set
-# CONFIG_SOC_DRA7XX is not set
-# CONFIG_SOC_HAS_OMAP2_SDRC is not set
-# CONFIG_SOC_OMAP5 is not set
-# CONFIG_SOFT_WATCHDOG is not set
-# CONFIG_SOLARIS_X86_PARTITION is not set
-# CONFIG_SOLO6X10 is not set
-# CONFIG_SONYPI is not set
-# CONFIG_SONY_LAPTOP is not set
-# CONFIG_SOUND is not set
-# CONFIG_SOUND_PRIME is not set
-# CONFIG_SP5100_TCO is not set
-# CONFIG_SPARSEMEM_MANUAL is not set
-# CONFIG_SPARSEMEM_STATIC is not set
-# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
-# CONFIG_SPARSE_IRQ is not set
-# CONFIG_SPARSE_RCU_POINTER is not set
-# CONFIG_SPEAKUP is not set
-# CONFIG_SPI is not set
-# CONFIG_SPINLOCK_TEST is not set
-# CONFIG_SPI_ALTERA is not set
-# CONFIG_SPI_AU1550 is not set
-# CONFIG_SPI_BITBANG is not set
-# CONFIG_SPI_BUTTERFLY is not set
-# CONFIG_SPI_DEBUG is not set
-# CONFIG_SPI_DESIGNWARE is not set
-# CONFIG_SPI_FSL_DSPI is not set
-# CONFIG_SPI_FSL_ESPI is not set
-# CONFIG_SPI_FSL_SPI is not set
-# CONFIG_SPI_GPIO is not set
-# CONFIG_SPI_GPIO_OLD is not set
-# CONFIG_SPI_LM70_LLP is not set
-# CONFIG_SPI_MASTER is not set
-# CONFIG_SPI_MPC52xx is not set
-# CONFIG_SPI_MPC52xx_PSC is not set
-# CONFIG_SPI_OC_TINY is not set
-# CONFIG_SPI_OCTEON is not set
-# CONFIG_SPI_ORION is not set
-# CONFIG_SPI_PL022 is not set
-# CONFIG_SPI_PPC4xx is not set
-# CONFIG_SPI_PXA2XX is not set
-# CONFIG_SPI_PXA2XX_PCI is not set
-# CONFIG_SPI_RAMIPS is not set
-# CONFIG_SPI_SC18IS602 is not set
-# CONFIG_SPI_SPIDEV is not set
-# CONFIG_SPI_TI_QSPI is not set
-# CONFIG_SPI_TLE62X0 is not set
-# CONFIG_SPI_TOPCLIFF_PCH is not set
-# CONFIG_SPI_XCOMM is not set
-# CONFIG_SPI_XILINX is not set
-# CONFIG_SPI_XWAY is not set
-CONFIG_SPLIT_PTLOCK_CPUS=4
-CONFIG_SQUASHFS=y
-# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
-# CONFIG_SQUASHFS_DECOMP_MULTI is not set
-CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y
-# CONFIG_SQUASHFS_DECOMP_SINGLE is not set
-# CONFIG_SQUASHFS_EMBEDDED is not set
-# CONFIG_SQUASHFS_FILE_CACHE is not set
-CONFIG_SQUASHFS_FILE_DIRECT=y
-CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
-# CONFIG_SQUASHFS_LZO is not set
-# CONFIG_SQUASHFS_XATTR is not set
-CONFIG_SQUASHFS_XZ=y
-# CONFIG_SQUASHFS_ZLIB is not set
-# CONFIG_SRAM is not set
-# CONFIG_SSB is not set
-# CONFIG_SSBI is not set
-# CONFIG_SSB_DEBUG is not set
-# CONFIG_SSB_DRIVER_GPIO is not set
-# CONFIG_SSB_PCMCIAHOST is not set
-CONFIG_SSB_POSSIBLE=y
-# CONFIG_SSB_SDIOHOST is not set
-# CONFIG_SSB_SILENT is not set
-# CONFIG_SSFDC is not set
-CONFIG_STACKTRACE_SUPPORT=y
-# CONFIG_STACK_TRACER is not set
-CONFIG_STAGING=y
-# CONFIG_STAGING_MEDIA is not set
-CONFIG_STANDALONE=y
-CONFIG_STDBINUTILS=y
-# CONFIG_STE10XP is not set
-# CONFIG_STE_MODEM_RPROC is not set
-# CONFIG_STMMAC_ETH is not set
-CONFIG_STP=y
-# CONFIG_STRICT_DEVMEM is not set
-CONFIG_STRIP_ASM_SYMS=y
-# CONFIG_STUB_POULSBO is not set
-# CONFIG_SUNDANCE is not set
-# CONFIG_SUNGEM is not set
-# CONFIG_SUNRPC is not set
-# CONFIG_SUNRPC_DEBUG is not set
-# CONFIG_SUNRPC_GSS is not set
-# CONFIG_SUN_PARTITION is not set
-# CONFIG_SUSPEND is not set
-CONFIG_SWAP=y
-# CONFIG_SWCONFIG is not set
-# CONFIG_SWCONFIG_LEDS is not set
-# CONFIG_SYNCLINK_CS is not set
-CONFIG_SYN_COOKIES=y
-CONFIG_SYSCTL=y
-# CONFIG_SYSCTL_SYSCALL is not set
-# CONFIG_SYSCTL_SYSCALL_CHECK is not set
-CONFIG_SYSFS=y
-# CONFIG_SYSFS_DEPRECATED is not set
-# CONFIG_SYSFS_DEPRECATED_V2 is not set
-# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
-# CONFIG_SYSV68_PARTITION is not set
-CONFIG_SYSVIPC=y
-CONFIG_SYSVIPC_SYSCTL=y
-# CONFIG_SYSV_FS is not set
-# CONFIG_SYS_HYPERVISOR is not set
-# CONFIG_TARGET_CORE is not set
-# CONFIG_TASKSTATS is not set
-# CONFIG_TC35815 is not set
-# CONFIG_TCG_TPM is not set
-# CONFIG_TCIC is not set
-CONFIG_TCP_CONG_ADVANCED=y
-# CONFIG_TCP_CONG_BIC is not set
-CONFIG_TCP_CONG_CUBIC=y
-# CONFIG_TCP_CONG_HSTCP is not set
-# CONFIG_TCP_CONG_HTCP is not set
-# CONFIG_TCP_CONG_HYBLA is not set
-# CONFIG_TCP_CONG_ILLINOIS is not set
-# CONFIG_TCP_CONG_LP is not set
-# CONFIG_TCP_CONG_SCALABLE is not set
-# CONFIG_TCP_CONG_VEGAS is not set
-# CONFIG_TCP_CONG_VENO is not set
-# CONFIG_TCP_CONG_WESTWOOD is not set
-# CONFIG_TCP_CONG_YEAH is not set
-# CONFIG_TCP_MD5SIG is not set
-# CONFIG_TCS3472 is not set
-# CONFIG_TEGRA_HOST1X is not set
-# CONFIG_TEHUTI is not set
-# CONFIG_TEST_KSTRTOX is not set
-# CONFIG_TEST_LIST_SORT is not set
-# CONFIG_TEST_MODULE is not set
-# CONFIG_TEST_POWER is not set
-# CONFIG_TEST_STRING_HELPERS is not set
-# CONFIG_TEST_USER_COPY is not set
-CONFIG_TEXTSEARCH=y
-# CONFIG_TEXTSEARCH_BM is not set
-# CONFIG_TEXTSEARCH_FSM is not set
-# CONFIG_TEXTSEARCH_KMP is not set
-# CONFIG_THERMAL is not set
-# CONFIG_THERMAL_HWMON is not set
-# CONFIG_THRUSTMASTER_FF is not set
-# CONFIG_TICK_CPU_ACCOUNTING is not set
-CONFIG_TICK_ONESHOT=y
-# CONFIG_TIFM_CORE is not set
-# CONFIG_TIGON3 is not set
-# CONFIG_TIMB_DMA is not set
-CONFIG_TIMERFD=y
-# CONFIG_TIMER_STATS is not set
-CONFIG_TINY_RCU=y
-# CONFIG_TIPC is not set
-# CONFIG_TI_ADC081C is not set
-# CONFIG_TI_AM335X_ADC is not set
-# CONFIG_TI_CPSW is not set
-# CONFIG_TI_CPTS is not set
-# CONFIG_TI_DAC7512 is not set
-# CONFIG_TI_DAVINCI_CPDMA is not set
-# CONFIG_TI_DAVINCI_MDIO is not set
-# CONFIG_TI_ST is not set
-# CONFIG_TLAN is not set
-# CONFIG_TMD_HERMES is not set
-# CONFIG_TMP006 is not set
-CONFIG_TMPFS=y
-# CONFIG_TMPFS_POSIX_ACL is not set
-CONFIG_TMPFS_XATTR=y
-# CONFIG_TOUCHSCREEN_AD7877 is not set
-# CONFIG_TOUCHSCREEN_AD7879 is not set
-# CONFIG_TOUCHSCREEN_AD7879_I2C is not set
-# CONFIG_TOUCHSCREEN_AD7879_SPI is not set
-# CONFIG_TOUCHSCREEN_ADS7846 is not set
-# CONFIG_TOUCHSCREEN_CLEARPAD_TM1217 is not set
-# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
-# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
-# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
-# CONFIG_TOUCHSCREEN_EETI is not set
-# CONFIG_TOUCHSCREEN_ELO is not set
-# CONFIG_TOUCHSCREEN_FUJITSU is not set
-# CONFIG_TOUCHSCREEN_GUNZE is not set
-# CONFIG_TOUCHSCREEN_ILI210X is not set
-# CONFIG_TOUCHSCREEN_INEXIO is not set
-# CONFIG_TOUCHSCREEN_MCS5000 is not set
-# CONFIG_TOUCHSCREEN_MK712 is not set
-# CONFIG_TOUCHSCREEN_MMS114 is not set
-# CONFIG_TOUCHSCREEN_MTOUCH is not set
-# CONFIG_TOUCHSCREEN_PENMOUNT is not set
-# CONFIG_TOUCHSCREEN_S3C2410 is not set
-# CONFIG_TOUCHSCREEN_SUR40 is not set
-# CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set
-# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
-# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
-# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
-# CONFIG_TOUCHSCREEN_TPS6507X is not set
-# CONFIG_TOUCHSCREEN_TSC2007 is not set
-# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
-# CONFIG_TOUCHSCREEN_W90X900 is not set
-# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
-# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
-# CONFIG_TOUCHSCREEN_WM97XX is not set
-# CONFIG_TOUCHSCREEN_ZFORCE is not set
-# CONFIG_TPS6105X is not set
-# CONFIG_TPS65010 is not set
-# CONFIG_TPS6507X is not set
-# CONFIG_TR is not set
-# CONFIG_TRACER_SNAPSHOT is not set
-# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
-# CONFIG_TRACE_BRANCH_PROFILING is not set
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-# CONFIG_TRACE_SINK is not set
-CONFIG_TRACING_SUPPORT=y
-CONFIG_TRAD_SIGNALS=y
-# CONFIG_TRANSPARENT_HUGEPAGE is not set
-# CONFIG_TRANZPORT is not set
-# CONFIG_TREE_PREEMPT_RCU is not set
-# CONFIG_TREE_RCU is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_TSL2583 is not set
-# CONFIG_TSL2x7x is not set
-# CONFIG_TSL4531 is not set
-CONFIG_TTY=y
-# CONFIG_TTY_PRINTK is not set
-# CONFIG_TUN is not set
-# CONFIG_TWL4030_CORE is not set
-# CONFIG_TWL6030_GPADC is not set
-# CONFIG_TWL6040_CORE is not set
-# CONFIG_TYPHOON is not set
-# CONFIG_UACCESS_WITH_MEMCPY is not set
-# CONFIG_UCB1400_CORE is not set
-# CONFIG_UDF_FS is not set
-CONFIG_UDF_NLS=y
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-# CONFIG_UFS_FS is not set
-# CONFIG_UHID is not set
-CONFIG_UIDGID_STRICT_TYPE_CHECKS=y
-# CONFIG_UIO is not set
-# CONFIG_ULTRA is not set
-# CONFIG_ULTRIX_PARTITION is not set
-CONFIG_UNIX=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_UNIXWARE_DISKLABEL is not set
-# CONFIG_UNIX_DIAG is not set
-# CONFIG_UNUSED_SYMBOLS is not set
-# CONFIG_UPROBE_EVENT is not set
-# CONFIG_USB is not set
-# CONFIG_USBIP_CORE is not set
-# CONFIG_USBPCWATCHDOG is not set
-# CONFIG_USB_ACM is not set
-# CONFIG_USB_ADUTUX is not set
-CONFIG_USB_ALI_M5632=y
-# CONFIG_USB_AMD5536UDC is not set
-CONFIG_USB_AN2720=y
-# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
-# CONFIG_USB_APPLEDISPLAY is not set
-CONFIG_USB_ARCH_HAS_EHCI=y
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB_ARCH_HAS_OHCI=y
-CONFIG_USB_ARMLINUX=y
-# CONFIG_USB_ATM is not set
-CONFIG_USB_BELKIN=y
-# CONFIG_USB_BTMTK is not set
-# CONFIG_USB_C67X00_HCD is not set
-# CONFIG_USB_CATC is not set
-# CONFIG_USB_CDC_COMPOSITE is not set
-# CONFIG_USB_CHIPIDEA is not set
-# CONFIG_USB_CONFIGFS is not set
-# CONFIG_USB_CXACRU is not set
-# CONFIG_USB_CYPRESS_CY7C63 is not set
-# CONFIG_USB_CYTHERM is not set
-# CONFIG_USB_DEBUG is not set
-CONFIG_USB_DEFAULT_PERSIST=y
-CONFIG_USB_DEVICEFS=y
-# CONFIG_USB_DEVICE_CLASS is not set
-# CONFIG_USB_DSBR is not set
-# CONFIG_USB_DUMMY_HCD is not set
-# CONFIG_USB_DWC2 is not set
-# CONFIG_USB_DWC3 is not set
-# CONFIG_USB_DWC3_EXYNOS is not set
-# CONFIG_USB_DWC3_PCI is not set
-# CONFIG_USB_DWC3_KEYSTONE is not set
-# CONFIG_USB_DWC_OTG_LPM is not set
-# CONFIG_USB_DYNAMIC_MINORS is not set
-# CONFIG_USB_EG20T is not set
-# CONFIG_USB_EHCI_HCD_AT91 is not set
-# CONFIG_USB_EHCI_HCD_PPC_OF is not set
-# CONFIG_USB_EHCI_MV is not set
-CONFIG_USB_EHCI_ROOT_HUB_TT=y
-CONFIG_USB_EHCI_TT_NEWSCHED=y
-# CONFIG_USB_EHSET_TEST_FIXTURE is not set
-# CONFIG_USB_EMI26 is not set
-# CONFIG_USB_EMI62 is not set
-# CONFIG_USB_ENESTORAGE is not set
-# CONFIG_USB_EPSON2888 is not set
-# CONFIG_USB_ET61X251 is not set
-CONFIG_USB_EZUSB=y
-# CONFIG_USB_EZUSB_FX2 is not set
-# CONFIG_USB_FILE_STORAGE is not set
-# CONFIG_USB_FOTG210_HCD is not set
-# CONFIG_USB_FOTG210_UDC is not set
-# CONFIG_USB_FSL_USB2 is not set
-# CONFIG_USB_FTDI_ELAN is not set
-# CONFIG_USB_FUNCTIONFS is not set
-# CONFIG_USB_FUSB300 is not set
-# CONFIG_USB_FUSBH200_HCD is not set
-# CONFIG_USB_GADGET is not set
-# CONFIG_USB_GADGETFS is not set
-# CONFIG_USB_GADGET_DEBUG is not set
-# CONFIG_USB_GADGET_DEBUG_FILES is not set
-# CONFIG_USB_GADGET_DEBUG_FS is not set
-CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
-CONFIG_USB_GADGET_VBUS_DRAW=2
-# CONFIG_USB_GL860 is not set
-# CONFIG_USB_GOKU is not set
-# CONFIG_USB_GPIO_VBUS is not set
-# CONFIG_USB_GR_UDC is not set
-# CONFIG_USB_GSPCA is not set
-# CONFIG_USB_GSPCA_BENQ is not set
-# CONFIG_USB_GSPCA_CONEX is not set
-# CONFIG_USB_GSPCA_CPIA1 is not set
-# CONFIG_USB_GSPCA_ETOMS is not set
-# CONFIG_USB_GSPCA_FINEPIX is not set
-# CONFIG_USB_GSPCA_JEILINJ is not set
-# CONFIG_USB_GSPCA_JL2005BCD is not set
-# CONFIG_USB_GSPCA_KINECT is not set
-# CONFIG_USB_GSPCA_KONICA is not set
-# CONFIG_USB_GSPCA_MARS is not set
-# CONFIG_USB_GSPCA_MR97310A is not set
-# CONFIG_USB_GSPCA_NW80X is not set
-# CONFIG_USB_GSPCA_OV519 is not set
-# CONFIG_USB_GSPCA_OV534 is not set
-# CONFIG_USB_GSPCA_OV534_9 is not set
-# CONFIG_USB_GSPCA_PAC207 is not set
-# CONFIG_USB_GSPCA_PAC7302 is not set
-# CONFIG_USB_GSPCA_PAC7311 is not set
-# CONFIG_USB_GSPCA_SE401 is not set
-# CONFIG_USB_GSPCA_SN9C2028 is not set
-# CONFIG_USB_GSPCA_SN9C20X is not set
-# CONFIG_USB_GSPCA_SONIXB is not set
-# CONFIG_USB_GSPCA_SONIXJ is not set
-# CONFIG_USB_GSPCA_SPCA1528 is not set
-# CONFIG_USB_GSPCA_SPCA500 is not set
-# CONFIG_USB_GSPCA_SPCA501 is not set
-# CONFIG_USB_GSPCA_SPCA505 is not set
-# CONFIG_USB_GSPCA_SPCA506 is not set
-# CONFIG_USB_GSPCA_SPCA508 is not set
-# CONFIG_USB_GSPCA_SPCA561 is not set
-# CONFIG_USB_GSPCA_SQ905 is not set
-# CONFIG_USB_GSPCA_SQ905C is not set
-# CONFIG_USB_GSPCA_SQ930X is not set
-# CONFIG_USB_GSPCA_STK014 is not set
-# CONFIG_USB_GSPCA_STK1135 is not set
-# CONFIG_USB_GSPCA_STV0680 is not set
-# CONFIG_USB_GSPCA_SUNPLUS is not set
-# CONFIG_USB_GSPCA_T613 is not set
-# CONFIG_USB_GSPCA_TOPRO is not set
-# CONFIG_USB_GSPCA_TV8532 is not set
-# CONFIG_USB_GSPCA_VC032X is not set
-# CONFIG_USB_GSPCA_VICAM is not set
-# CONFIG_USB_GSPCA_XIRLINK_CIT is not set
-# CONFIG_USB_GSPCA_ZC3XX is not set
-# CONFIG_USB_G_ACM_MS is not set
-# CONFIG_USB_G_DBGP is not set
-# CONFIG_USB_G_HID is not set
-# CONFIG_USB_G_MULTI is not set
-# CONFIG_USB_G_NCM is not set
-# CONFIG_USB_G_NOKIA is not set
-# CONFIG_USB_G_PRINTER is not set
-# CONFIG_USB_G_SERIAL is not set
-# CONFIG_USB_G_WEBCAM is not set
-# CONFIG_USB_HCD_TEST_MODE is not set
-# CONFIG_USB_HID is not set
-# CONFIG_USB_HIDDEV is not set
-# CONFIG_USB_HSIC_USB3503 is not set
-# CONFIG_USB_HSO is not set
-# CONFIG_USB_HWA_HCD is not set
-# CONFIG_USB_IBMCAM is not set
-# CONFIG_USB_IDMOUSE is not set
-# CONFIG_USB_INPUT_IMS_PCU is not set
-# CONFIG_USB_IOWARRIOR is not set
-# CONFIG_USB_IPHETH is not set
-# CONFIG_USB_IP_COMMON is not set
-# CONFIG_USB_ISIGHTFW is not set
-# CONFIG_USB_ISP116X_HCD is not set
-# CONFIG_USB_ISP1301 is not set
-# CONFIG_USB_ISP1362_HCD is not set
-# CONFIG_USB_ISP1760_HCD is not set
-# CONFIG_USB_KAWETH is not set
-# CONFIG_USB_KBD is not set
-# CONFIG_USB_KC2190 is not set
-# CONFIG_USB_KONICAWC is not set
-# CONFIG_USB_LCD is not set
-# CONFIG_USB_LD is not set
-# CONFIG_USB_LED is not set
-# CONFIG_USB_LEGOTOWER is not set
-# CONFIG_USB_LIBUSUAL is not set
-# CONFIG_USB_M5602 is not set
-# CONFIG_USB_M66592 is not set
-# CONFIG_USB_MASS_STORAGE is not set
-# CONFIG_USB_MDC800 is not set
-# CONFIG_USB_MICROTEK is not set
-# CONFIG_USB_MIDI_GADGET is not set
-# CONFIG_USB_MON is not set
-# CONFIG_USB_MOUSE is not set
-# CONFIG_USB_MSM_OTG is not set
-# CONFIG_USB_MUSB_HDRC is not set
-# CONFIG_USB_MV_U3D is not set
-# CONFIG_USB_MV_UDC is not set
-# CONFIG_USB_NET2272 is not set
-# CONFIG_USB_NET2280 is not set
-# CONFIG_USB_NET_AX88179_178A is not set
-# CONFIG_USB_NET_AX8817X is not set
-# CONFIG_USB_NET_CDCETHER is not set
-# CONFIG_USB_NET_CDC_EEM is not set
-# CONFIG_USB_NET_CDC_MBIM is not set
-# CONFIG_USB_NET_CDC_NCM is not set
-# CONFIG_USB_NET_CDC_SUBSET is not set
-# CONFIG_USB_NET_CX82310_ETH is not set
-# CONFIG_USB_NET_DM9601 is not set
-# CONFIG_USB_NET_GL620A is not set
-# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set
-# CONFIG_USB_NET_INT51X1 is not set
-# CONFIG_USB_NET_KALMIA is not set
-# CONFIG_USB_NET_MCS7830 is not set
-# CONFIG_USB_NET_NET1080 is not set
-# CONFIG_USB_NET_PLUSB is not set
-# CONFIG_USB_NET_QMI_WWAN is not set
-# CONFIG_USB_NET_RNDIS_HOST is not set
-# CONFIG_USB_NET_RNDIS_WLAN is not set
-# CONFIG_USB_NET_SMSC75XX is not set
-# CONFIG_USB_NET_SMSC95XX is not set
-# CONFIG_USB_NET_SR9700 is not set
-# CONFIG_USB_NET_SR9800 is not set
-# CONFIG_USB_NET_ZAURUS is not set
-# CONFIG_USB_OHCI_HCD is not set
-# CONFIG_USB_OHCI_HCD_PCI is not set
-# CONFIG_USB_OHCI_HCD_PPC_OF is not set
-# CONFIG_USB_OHCI_HCD_PPC_OF_BE is not set
-# CONFIG_USB_OHCI_HCD_PPC_OF_LE is not set
-# CONFIG_USB_OHCI_HCD_PPC_SOC is not set
-# CONFIG_USB_OHCI_HCD_SSB is not set
-CONFIG_USB_OHCI_LITTLE_ENDIAN=y
-# CONFIG_USB_OTG is not set
-# CONFIG_USB_OTG_BLACKLIST_HUB is not set
-# CONFIG_USB_OTG_FSM is not set
-# CONFIG_USB_OTG_WHITELIST is not set
-# CONFIG_USB_OXU210HP_HCD is not set
-# CONFIG_USB_PEGASUS is not set
-# CONFIG_USB_PHY is not set
-# CONFIG_USB_PRINTER is not set
-# CONFIG_USB_PWC_INPUT_EVDEV is not set
-# CONFIG_USB_PXA27X is not set
-# CONFIG_USB_R8A66597 is not set
-# CONFIG_USB_R8A66597_HCD is not set
-# CONFIG_USB_RCAR_PHY is not set
-# CONFIG_USB_RENESAS_USBHS is not set
-# CONFIG_USB_RIO500 is not set
-# CONFIG_USB_RTL8150 is not set
-# CONFIG_USB_RTL8152 is not set
-# CONFIG_USB_S2255 is not set
-# CONFIG_USB_S3C_HSOTG is not set
-# CONFIG_USB_SE401 is not set
-# CONFIG_USB_SERIAL is not set
-# CONFIG_USB_SERIAL_AIRCABLE is not set
-# CONFIG_USB_SERIAL_ARK3116 is not set
-# CONFIG_USB_SERIAL_BELKIN is not set
-# CONFIG_USB_SERIAL_CH341 is not set
-# CONFIG_USB_SERIAL_CP210X is not set
-# CONFIG_USB_SERIAL_CYBERJACK is not set
-# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
-# CONFIG_USB_SERIAL_DEBUG is not set
-# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
-# CONFIG_USB_SERIAL_EDGEPORT is not set
-# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
-# CONFIG_USB_SERIAL_EMPEG is not set
-# CONFIG_USB_SERIAL_F81232 is not set
-# CONFIG_USB_SERIAL_FTDI_SIO is not set
-# CONFIG_USB_SERIAL_FUNSOFT is not set
-# CONFIG_USB_SERIAL_GARMIN is not set
-CONFIG_USB_SERIAL_GENERIC=y
-# CONFIG_USB_SERIAL_HP4X is not set
-# CONFIG_USB_SERIAL_IPAQ is not set
-# CONFIG_USB_SERIAL_IPW is not set
-# CONFIG_USB_SERIAL_IR is not set
-# CONFIG_USB_SERIAL_IUU is not set
-# CONFIG_USB_SERIAL_KEYSPAN is not set
-CONFIG_USB_SERIAL_KEYSPAN_MPR=y
-# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
-CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
-CONFIG_USB_SERIAL_KEYSPAN_USA19=y
-CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
-CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
-CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
-CONFIG_USB_SERIAL_KEYSPAN_USA28=y
-CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
-CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
-CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
-CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
-CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
-# CONFIG_USB_SERIAL_KLSI is not set
-# CONFIG_USB_SERIAL_KOBIL_SCT is not set
-# CONFIG_USB_SERIAL_MCT_U232 is not set
-# CONFIG_USB_SERIAL_METRO is not set
-# CONFIG_USB_SERIAL_MOS7715_PARPORT is not set
-# CONFIG_USB_SERIAL_MOS7720 is not set
-# CONFIG_USB_SERIAL_MOS7840 is not set
-# CONFIG_USB_SERIAL_MOTOROLA is not set
-# CONFIG_USB_SERIAL_MXUPORT is not set
-# CONFIG_USB_SERIAL_NAVMAN is not set
-# CONFIG_USB_SERIAL_OMNINET is not set
-# CONFIG_USB_SERIAL_OPTICON is not set
-# CONFIG_USB_SERIAL_OPTION is not set
-# CONFIG_USB_SERIAL_OTI6858 is not set
-# CONFIG_USB_SERIAL_PL2303 is not set
-# CONFIG_USB_SERIAL_QCAUX is not set
-# CONFIG_USB_SERIAL_QT2 is not set
-# CONFIG_USB_SERIAL_QUALCOMM is not set
-# CONFIG_USB_SERIAL_QUATECH2 is not set
-# CONFIG_USB_SERIAL_QUATECH_USB2 is not set
-# CONFIG_USB_SERIAL_SAFE is not set
-CONFIG_USB_SERIAL_SAFE_PADDED=y
-# CONFIG_USB_SERIAL_SIEMENS_MPI is not set
-# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
-# CONFIG_USB_SERIAL_SIMPLE is not set
-# CONFIG_USB_SERIAL_SPCP8X5 is not set
-# CONFIG_USB_SERIAL_SSU100 is not set
-# CONFIG_USB_SERIAL_SYMBOL is not set
-# CONFIG_USB_SERIAL_TI is not set
-# CONFIG_USB_SERIAL_VISOR is not set
-# CONFIG_USB_SERIAL_VIVOPAY_SERIAL is not set
-# CONFIG_USB_SERIAL_WHITEHEAT is not set
-# CONFIG_USB_SERIAL_WISHBONE is not set
-# CONFIG_USB_SERIAL_XIRCOM is not set
-# CONFIG_USB_SERIAL_XSENS_MT is not set
-# CONFIG_USB_SERIAL_ZIO is not set
-# CONFIG_USB_SERIAL_ZTE is not set
-# CONFIG_USB_SEVSEG is not set
-# CONFIG_USB_SIERRA_NET is not set
-# CONFIG_USB_SISUSBVGA is not set
-# CONFIG_USB_SL811_HCD is not set
-# CONFIG_USB_SN9C102 is not set
-# CONFIG_USB_SPEEDTOUCH is not set
-# CONFIG_USB_STKWEBCAM is not set
-# CONFIG_USB_STORAGE is not set
-# CONFIG_USB_STORAGE_ALAUDA is not set
-# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
-# CONFIG_USB_STORAGE_DATAFAB is not set
-# CONFIG_USB_STORAGE_DEBUG is not set
-# CONFIG_USB_STORAGE_ENE_UB6250 is not set
-# CONFIG_USB_STORAGE_FREECOM is not set
-# CONFIG_USB_STORAGE_ISD200 is not set
-# CONFIG_USB_STORAGE_JUMPSHOT is not set
-# CONFIG_USB_STORAGE_KARMA is not set
-# CONFIG_USB_STORAGE_ONETOUCH is not set
-# CONFIG_USB_STORAGE_REALTEK is not set
-# CONFIG_USB_STORAGE_SDDR09 is not set
-# CONFIG_USB_STORAGE_SDDR55 is not set
-# CONFIG_USB_STORAGE_USBAT is not set
-# CONFIG_USB_STV06XX is not set
-# CONFIG_USB_SUPPORT is not set
-# CONFIG_USB_SUSPEND is not set
-# CONFIG_USB_SWITCH_FSA9480 is not set
-# CONFIG_USB_TEST is not set
-# CONFIG_USB_TMC is not set
-# CONFIG_USB_TRANCEVIBRATOR is not set
-# CONFIG_USB_UAS is not set
-# CONFIG_USB_UEAGLEATM is not set
-# CONFIG_USB_ULPI is not set
-# CONFIG_USB_USBNET is not set
-# CONFIG_USB_USS720 is not set
-# CONFIG_USB_VIDEO_CLASS is not set
-CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
-# CONFIG_USB_VL600 is not set
-# CONFIG_USB_WDM is not set
-# CONFIG_USB_WHCI_HCD is not set
-# CONFIG_USB_WPAN_HCD is not set
-# CONFIG_USB_WUSB is not set
-# CONFIG_USB_WUSB_CBAF is not set
-# CONFIG_USB_XHCI_HCD is not set
-# CONFIG_USB_XUSBATM is not set
-# CONFIG_USB_YUREX is not set
-# CONFIG_USB_ZD1201 is not set
-# CONFIG_USB_ZERO is not set
-# CONFIG_USB_ZR364XX is not set
-# CONFIG_USE_GENERIC_SMP_HELPERS is not set
-# CONFIG_USE_OF is not set
-# CONFIG_UTS_NS is not set
-# CONFIG_UWB is not set
-# CONFIG_V4L_MEM2MEM_DRIVERS is not set
-# CONFIG_V4L_TEST_DRIVERS is not set
-# CONFIG_VCNL4000 is not set
-# CONFIG_VETH is not set
-# CONFIG_VEXPRESS_CONFIG is not set
-# CONFIG_VFAT_FS is not set
-# CONFIG_VGASTATE is not set
-# CONFIG_VGA_ARB is not set
-# CONFIG_VGA_SWITCHEROO is not set
-# CONFIG_VIA_RHINE is not set
-# CONFIG_VIA_VELOCITY is not set
-# CONFIG_VIDEO_ADV7170 is not set
-# CONFIG_VIDEO_ADV7175 is not set
-# CONFIG_VIDEO_ADV7180 is not set
-# CONFIG_VIDEO_ADV7183 is not set
-# CONFIG_VIDEO_ADV7343 is not set
-# CONFIG_VIDEO_ADV7393 is not set
-# CONFIG_VIDEO_ADV_DEBUG is not set
-# CONFIG_VIDEO_AK881X is not set
-# CONFIG_VIDEO_BT819 is not set
-# CONFIG_VIDEO_BT848 is not set
-# CONFIG_VIDEO_BT856 is not set
-# CONFIG_VIDEO_BT866 is not set
-# CONFIG_VIDEO_BWQCAM is not set
-# CONFIG_VIDEO_CAFE_CCIC is not set
-# CONFIG_VIDEO_CAPTURE_DRIVERS is not set
-# CONFIG_VIDEO_CPIA is not set
-# CONFIG_VIDEO_CQCAM is not set
-# CONFIG_VIDEO_CS5345 is not set
-# CONFIG_VIDEO_CS53L32A is not set
-# CONFIG_VIDEO_CX231XX is not set
-# CONFIG_VIDEO_CX2341X is not set
-# CONFIG_VIDEO_CX25840 is not set
-# CONFIG_VIDEO_CX88 is not set
-# CONFIG_VIDEO_DEV is not set
-# CONFIG_VIDEO_DM6446_CCDC is not set
-# CONFIG_VIDEO_DT3155 is not set
-# CONFIG_VIDEO_EM28XX is not set
-# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
-# CONFIG_VIDEO_GO7007 is not set
-# CONFIG_VIDEO_HDPVR is not set
-# CONFIG_VIDEO_HELPER_CHIPS_AUTO is not set
-# CONFIG_VIDEO_HEXIUM_GEMINI is not set
-# CONFIG_VIDEO_HEXIUM_ORION is not set
-# CONFIG_VIDEO_IR_I2C is not set
-# CONFIG_VIDEO_IVTV is not set
-# CONFIG_VIDEO_KS0127 is not set
-# CONFIG_VIDEO_M52790 is not set
-# CONFIG_VIDEO_MEDIA is not set
-# CONFIG_VIDEO_MEM2MEM_TESTDEV is not set
-# CONFIG_VIDEO_ML86V7667 is not set
-# CONFIG_VIDEO_MSP3400 is not set
-# CONFIG_VIDEO_MT9V011 is not set
-# CONFIG_VIDEO_MXB is not set
-# CONFIG_VIDEO_NOON010PC30 is not set
-# CONFIG_VIDEO_OMAP2_VOUT is not set
-# CONFIG_VIDEO_OUTPUT_CONTROL is not set
-# CONFIG_VIDEO_OV7640 is not set
-# CONFIG_VIDEO_OV7670 is not set
-# CONFIG_VIDEO_PMS is not set
-# CONFIG_VIDEO_PVRUSB2 is not set
-# CONFIG_VIDEO_SAA6588 is not set
-# CONFIG_VIDEO_SAA6752HS is not set
-# CONFIG_VIDEO_SAA7110 is not set
-# CONFIG_VIDEO_SAA711X is not set
-# CONFIG_VIDEO_SAA7127 is not set
-# CONFIG_VIDEO_SAA7134 is not set
-# CONFIG_VIDEO_SAA717X is not set
-# CONFIG_VIDEO_SAA7185 is not set
-# CONFIG_VIDEO_SAA7191 is not set
-# CONFIG_VIDEO_SH_MOBILE_CEU is not set
-# CONFIG_VIDEO_SONY_BTF_MPX is not set
-# CONFIG_VIDEO_SR030PC30 is not set
-# CONFIG_VIDEO_TCM825X is not set
-# CONFIG_VIDEO_TDA7432 is not set
-# CONFIG_VIDEO_TDA9840 is not set
-# CONFIG_VIDEO_TEA6415C is not set
-# CONFIG_VIDEO_TEA6420 is not set
-# CONFIG_VIDEO_THS7303 is not set
-# CONFIG_VIDEO_THS8200 is not set
-# CONFIG_VIDEO_TIMBERDALE is not set
-# CONFIG_VIDEO_TLV320AIC23B is not set
-# CONFIG_VIDEO_TM6000 is not set
-# CONFIG_VIDEO_TVAUDIO is not set
-# CONFIG_VIDEO_TVP514X is not set
-# CONFIG_VIDEO_TVP5150 is not set
-# CONFIG_VIDEO_TVP7002 is not set
-# CONFIG_VIDEO_TW2804 is not set
-# CONFIG_VIDEO_TW9903 is not set
-# CONFIG_VIDEO_TW9906 is not set
-# CONFIG_VIDEO_UDA1342 is not set
-# CONFIG_VIDEO_UPD64031A is not set
-# CONFIG_VIDEO_UPD64083 is not set
-# CONFIG_VIDEO_USBTV is not set
-# CONFIG_VIDEO_USBVISION is not set
-# CONFIG_VIDEO_V4L2 is not set
-# CONFIG_VIDEO_V4L2_COMMON is not set
-# CONFIG_VIDEO_V4L2_INT_DEVICE is not set
-# CONFIG_VIDEO_VIVI is not set
-# CONFIG_VIDEO_VP27SMPX is not set
-# CONFIG_VIDEO_VPX3220 is not set
-# CONFIG_VIDEO_VS6624 is not set
-# CONFIG_VIDEO_WM8739 is not set
-# CONFIG_VIDEO_WM8775 is not set
-# CONFIG_VIDEO_ZORAN is not set
-# CONFIG_VIRQ_DEBUG is not set
-# CONFIG_VIRTIO_BALLOON is not set
-# CONFIG_VIRTIO_MMIO is not set
-# CONFIG_VIRTIO_PCI is not set
-# CONFIG_VIRTUALIZATION is not set
-# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
-# CONFIG_VIRT_DRIVERS is not set
-CONFIG_VIRT_TO_BUS=y
-# CONFIG_VITESSE_PHY is not set
-CONFIG_VLAN_8021Q=y
-# CONFIG_VLAN_8021Q_GVRP is not set
-# CONFIG_VLAN_8021Q_MVRP is not set
-# CONFIG_VME_BUS is not set
-# CONFIG_VMSPLIT_1G is not set
-# CONFIG_VMSPLIT_2G is not set
-# CONFIG_VMSPLIT_2G_OPT is not set
-CONFIG_VMSPLIT_3G=y
-# CONFIG_VMSPLIT_3G_OPT is not set
-# CONFIG_VMWARE_PVSCSI is not set
-# CONFIG_VMXNET3 is not set
-# CONFIG_VM_EVENT_COUNTERS is not set
-# CONFIG_VORTEX is not set
-# CONFIG_VSOCKETS is not set
-# CONFIG_VT is not set
-# CONFIG_VT6655 is not set
-# CONFIG_VT6656 is not set
-# CONFIG_VXFS_FS is not set
-# CONFIG_VXGE is not set
-# CONFIG_VXLAN is not set
-# CONFIG_W1 is not set
-# CONFIG_W1_CON is not set
-# CONFIG_W1_MASTER_DS1WM is not set
-# CONFIG_W1_MASTER_DS2482 is not set
-# CONFIG_W1_MASTER_DS2490 is not set
-# CONFIG_W1_MASTER_GPIO is not set
-# CONFIG_W1_MASTER_MATROX is not set
-# CONFIG_W1_SLAVE_BQ27000 is not set
-# CONFIG_W1_SLAVE_DS2408 is not set
-# CONFIG_W1_SLAVE_DS2413 is not set
-# CONFIG_W1_SLAVE_DS2423 is not set
-# CONFIG_W1_SLAVE_DS2431 is not set
-# CONFIG_W1_SLAVE_DS2433 is not set
-# CONFIG_W1_SLAVE_DS2760 is not set
-# CONFIG_W1_SLAVE_DS2780 is not set
-# CONFIG_W1_SLAVE_DS2781 is not set
-# CONFIG_W1_SLAVE_DS28E04 is not set
-# CONFIG_W1_SLAVE_SMEM is not set
-# CONFIG_W1_SLAVE_THERM is not set
-# CONFIG_W35UND is not set
-# CONFIG_W83627HF_WDT is not set
-# CONFIG_W83697HF_WDT is not set
-# CONFIG_W83877F_WDT is not set
-# CONFIG_W83977F_WDT is not set
-# CONFIG_WAN is not set
-# CONFIG_WANXL is not set
-# CONFIG_WAN_ROUTER is not set
-CONFIG_WATCHDOG=y
-# CONFIG_WATCHDOG_CORE is not set
-# CONFIG_WATCHDOG_NOWAYOUT is not set
-# CONFIG_WD80x3 is not set
-# CONFIG_WDTPCI is not set
-CONFIG_WEXT_CORE=y
-CONFIG_WEXT_PRIV=y
-CONFIG_WEXT_PROC=y
-CONFIG_WEXT_SPY=y
-CONFIG_WILINK_PLATFORM_DATA=y
-# CONFIG_WIMAX is not set
-# CONFIG_WIMAX_GDM72XX is not set
-CONFIG_WIRELESS=y
-CONFIG_WIRELESS_EXT=y
-# CONFIG_WIRELESS_EXT_SYSFS is not set
-# CONFIG_WL1251 is not set
-# CONFIG_WL12XX is not set
-# CONFIG_WL18XX is not set
-# CONFIG_WLAGS49_H2 is not set
-# CONFIG_WLAGS49_H25 is not set
-CONFIG_WLAN=y
-# CONFIG_WLCORE is not set
-CONFIG_WL_TI=y
-CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
-# CONFIG_WR_PPMC is not set
-# CONFIG_X25 is not set
-# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set
-# CONFIG_X86_PKG_TEMP_THERMAL is not set
-CONFIG_X86_SYSFB=y
-CONFIG_XFRM=y
-# CONFIG_XFRM_IPCOMP is not set
-# CONFIG_XFRM_MIGRATE is not set
-# CONFIG_XFRM_STATISTICS is not set
-# CONFIG_XFRM_SUB_POLICY is not set
-# CONFIG_XFRM_USER is not set
-# CONFIG_XFS_DEBUG is not set
-# CONFIG_XFS_FS is not set
-# CONFIG_XFS_POSIX_ACL is not set
-# CONFIG_XFS_QUOTA is not set
-# CONFIG_XFS_RT is not set
-# CONFIG_XFS_WARN is not set
-# CONFIG_XILINX_AXI_EMAC is not set
-# CONFIG_XILINX_EMACLITE is not set
-# CONFIG_XILINX_LL_TEMAC is not set
-# CONFIG_XILLYBUS is not set
-# CONFIG_XIP_KERNEL is not set
-# CONFIG_XMON is not set
-# CONFIG_XVMALLOC is not set
-CONFIG_XZ_DEC=y
-# CONFIG_XZ_DEC_ARM is not set
-# CONFIG_XZ_DEC_ARMTHUMB is not set
-# CONFIG_XZ_DEC_BCJ is not set
-# CONFIG_XZ_DEC_IA64 is not set
-# CONFIG_XZ_DEC_POWERPC is not set
-# CONFIG_XZ_DEC_SPARC is not set
-# CONFIG_XZ_DEC_TEST is not set
-# CONFIG_XZ_DEC_X86 is not set
-# CONFIG_YAFFS_DISABLE_BAD_BLOCK_MARKING is not set
-# CONFIG_YAFFS_FS is not set
-# CONFIG_YAM is not set
-# CONFIG_YELLOWFIN is not set
-# CONFIG_YENTA is not set
-# CONFIG_YENTA_O2 is not set
-# CONFIG_YENTA_RICOH is not set
-# CONFIG_YENTA_TI is not set
-# CONFIG_YENTA_TOSHIBA is not set
-# CONFIG_ZBUD is not set
-# CONFIG_ZD1211RW is not set
-# CONFIG_ZD1211RW_DEBUG is not set
-# CONFIG_ZEROPLUS_FF is not set
-# CONFIG_ZISOFS is not set
-# CONFIG_ZLIB_DEFLATE is not set
-# CONFIG_ZLIB_INFLATE is not set
-# CONFIG_ZNET is not set
-CONFIG_ZONE_DMA=y
-CONFIG_ZONE_DMA_FLAG=1
-# CONFIG_ZRAM is not set
-# CONFIG_ZSMALLOC is not set
diff --git a/target/linux/generic/patches-3.14/000-keep_initrafs_the_default.patch b/target/linux/generic/patches-3.14/000-keep_initrafs_the_default.patch
deleted file mode 100644 (file)
index b5b1955..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Upstream changed the default rootfs to tmpfs when none has been passed
-to the kernel - this doesn't fit our purposes, so change it back.
-
-Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
-
---- a/init/do_mounts.c
-+++ b/init/do_mounts.c
-@@ -622,6 +622,7 @@ int __init init_rootfs(void)
-       if (err)
-               return err;
-+#if 0
-       if (IS_ENABLED(CONFIG_TMPFS) && !saved_root_name[0] &&
-               (!root_fs_names || strstr(root_fs_names, "tmpfs"))) {
-               err = shmem_init();
-@@ -629,6 +630,9 @@ int __init init_rootfs(void)
-       } else {
-               err = init_ramfs_fs();
-       }
-+#else
-+      err = init_ramfs_fs();
-+#endif
-       if (err)
-               unregister_filesystem(&rootfs_fs_type);
diff --git a/target/linux/generic/patches-3.14/010-MIPS-Allow-MIPS_CPU_SCACHE-to-be-used-with-different.patch b/target/linux/generic/patches-3.14/010-MIPS-Allow-MIPS_CPU_SCACHE-to-be-used-with-different.patch
deleted file mode 100644 (file)
index f5cdc6d..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From a7ef1eaddbf4bd50bfee92d9dfbecadc61467bbf Mon Sep 17 00:00:00 2001
-From: Kevin Cernekee <cernekee@gmail.com>
-Date: Mon, 20 Oct 2014 21:27:57 -0700
-Subject: [PATCH] MIPS: Allow MIPS_CPU_SCACHE to be used with different line
- sizes
-
-CONFIG_MIPS_CPU_SCACHE determines whether to build sc-mips.c.  However,
-it is currently hardwired to use an L1_SHIFT of 6 (64 bytes).  Move the
-L1_SHIFT selection into the CPU or SoC section so that other SoCs can
-select different values.
-
-Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
-Cc: f.fainelli@gmail.com
-Cc: mbizon@freebox.fr
-Cc: jogo@openwrt.org
-Cc: jfraser@broadcom.com
-Cc: linux-mips@linux-mips.org
-Cc: devicetree@vger.kernel.org
-Patchwork: https://patchwork.linux-mips.org/patch/8162/
-Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
----
- arch/mips/Kconfig | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/arch/mips/Kconfig
-+++ b/arch/mips/Kconfig
-@@ -315,6 +315,7 @@ config MIPS_MALTA
-       select I8259
-       select MIPS_BONITO64
-       select MIPS_CPU_SCACHE
-+      select MIPS_L1_CACHE_SHIFT_6
-       select PCI_GT64XXX_PCI0
-       select MIPS_MSC
-       select SWAP_IO_SPACE
-@@ -1820,7 +1821,6 @@ config IP22_CPU_SCACHE
- config MIPS_CPU_SCACHE
-       bool
-       select BOARD_SCACHE
--      select MIPS_L1_CACHE_SHIFT_6
- config R5000_CPU_SCACHE
-       bool
diff --git a/target/linux/generic/patches-3.14/020-ssb_update.patch b/target/linux/generic/patches-3.14/020-ssb_update.patch
deleted file mode 100644 (file)
index e1fd275..0000000
+++ /dev/null
@@ -1,321 +0,0 @@
---- a/drivers/ssb/b43_pci_bridge.c
-+++ b/drivers/ssb/b43_pci_bridge.c
-@@ -38,6 +38,7 @@ static const struct pci_device_id b43_pc
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x432b) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x432c) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4350) },
-+      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4351) },
-       { 0, },
- };
- MODULE_DEVICE_TABLE(pci, b43_pci_bridge_tbl);
---- a/drivers/ssb/driver_gpio.c
-+++ b/drivers/ssb/driver_gpio.c
-@@ -475,7 +475,8 @@ int ssb_gpio_unregister(struct ssb_bus *
- {
-       if (ssb_chipco_available(&bus->chipco) ||
-           ssb_extif_available(&bus->extif)) {
--              return gpiochip_remove(&bus->gpio);
-+              gpiochip_remove(&bus->gpio);
-+              return 0;
-       } else {
-               SSB_WARN_ON(1);
-       }
---- a/drivers/ssb/pci.c
-+++ b/drivers/ssb/pci.c
-@@ -326,13 +326,13 @@ err_ctlreg:
-       return err;
- }
--static s8 r123_extract_antgain(u8 sprom_revision, const u16 *in,
--                             u16 mask, u16 shift)
-+static s8 sprom_extract_antgain(u8 sprom_revision, const u16 *in, u16 offset,
-+                              u16 mask, u16 shift)
- {
-       u16 v;
-       u8 gain;
--      v = in[SPOFF(SSB_SPROM1_AGAIN)];
-+      v = in[SPOFF(offset)];
-       gain = (v & mask) >> shift;
-       if (gain == 0xFF)
-               gain = 2; /* If unset use 2dBm */
-@@ -416,12 +416,14 @@ static void sprom_extract_r123(struct ss
-       SPEX(alpha2[1], SSB_SPROM1_CCODE, 0x00ff, 0);
-       /* Extract the antenna gain values. */
--      out->antenna_gain.a0 = r123_extract_antgain(out->revision, in,
--                                                  SSB_SPROM1_AGAIN_BG,
--                                                  SSB_SPROM1_AGAIN_BG_SHIFT);
--      out->antenna_gain.a1 = r123_extract_antgain(out->revision, in,
--                                                  SSB_SPROM1_AGAIN_A,
--                                                  SSB_SPROM1_AGAIN_A_SHIFT);
-+      out->antenna_gain.a0 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM1_AGAIN,
-+                                                   SSB_SPROM1_AGAIN_BG,
-+                                                   SSB_SPROM1_AGAIN_BG_SHIFT);
-+      out->antenna_gain.a1 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM1_AGAIN,
-+                                                   SSB_SPROM1_AGAIN_A,
-+                                                   SSB_SPROM1_AGAIN_A_SHIFT);
-       if (out->revision >= 2)
-               sprom_extract_r23(out, in);
- }
-@@ -468,7 +470,15 @@ static void sprom_extract_r458(struct ss
- static void sprom_extract_r45(struct ssb_sprom *out, const u16 *in)
- {
-+      static const u16 pwr_info_offset[] = {
-+              SSB_SPROM4_PWR_INFO_CORE0, SSB_SPROM4_PWR_INFO_CORE1,
-+              SSB_SPROM4_PWR_INFO_CORE2, SSB_SPROM4_PWR_INFO_CORE3
-+      };
-       u16 il0mac_offset;
-+      int i;
-+
-+      BUILD_BUG_ON(ARRAY_SIZE(pwr_info_offset) !=
-+                   ARRAY_SIZE(out->core_pwr_info));
-       if (out->revision == 4)
-               il0mac_offset = SSB_SPROM4_IL0MAC;
-@@ -524,14 +534,59 @@ static void sprom_extract_r45(struct ssb
-       }
-       /* Extract the antenna gain values. */
--      SPEX(antenna_gain.a0, SSB_SPROM4_AGAIN01,
--           SSB_SPROM4_AGAIN0, SSB_SPROM4_AGAIN0_SHIFT);
--      SPEX(antenna_gain.a1, SSB_SPROM4_AGAIN01,
--           SSB_SPROM4_AGAIN1, SSB_SPROM4_AGAIN1_SHIFT);
--      SPEX(antenna_gain.a2, SSB_SPROM4_AGAIN23,
--           SSB_SPROM4_AGAIN2, SSB_SPROM4_AGAIN2_SHIFT);
--      SPEX(antenna_gain.a3, SSB_SPROM4_AGAIN23,
--           SSB_SPROM4_AGAIN3, SSB_SPROM4_AGAIN3_SHIFT);
-+      out->antenna_gain.a0 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM4_AGAIN01,
-+                                                   SSB_SPROM4_AGAIN0,
-+                                                   SSB_SPROM4_AGAIN0_SHIFT);
-+      out->antenna_gain.a1 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM4_AGAIN01,
-+                                                   SSB_SPROM4_AGAIN1,
-+                                                   SSB_SPROM4_AGAIN1_SHIFT);
-+      out->antenna_gain.a2 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM4_AGAIN23,
-+                                                   SSB_SPROM4_AGAIN2,
-+                                                   SSB_SPROM4_AGAIN2_SHIFT);
-+      out->antenna_gain.a3 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM4_AGAIN23,
-+                                                   SSB_SPROM4_AGAIN3,
-+                                                   SSB_SPROM4_AGAIN3_SHIFT);
-+
-+      /* Extract cores power info info */
-+      for (i = 0; i < ARRAY_SIZE(pwr_info_offset); i++) {
-+              u16 o = pwr_info_offset[i];
-+
-+              SPEX(core_pwr_info[i].itssi_2g, o + SSB_SPROM4_2G_MAXP_ITSSI,
-+                      SSB_SPROM4_2G_ITSSI, SSB_SPROM4_2G_ITSSI_SHIFT);
-+              SPEX(core_pwr_info[i].maxpwr_2g, o + SSB_SPROM4_2G_MAXP_ITSSI,
-+                      SSB_SPROM4_2G_MAXP, 0);
-+
-+              SPEX(core_pwr_info[i].pa_2g[0], o + SSB_SPROM4_2G_PA_0, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_2g[1], o + SSB_SPROM4_2G_PA_1, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_2g[2], o + SSB_SPROM4_2G_PA_2, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_2g[3], o + SSB_SPROM4_2G_PA_3, ~0, 0);
-+
-+              SPEX(core_pwr_info[i].itssi_5g, o + SSB_SPROM4_5G_MAXP_ITSSI,
-+                      SSB_SPROM4_5G_ITSSI, SSB_SPROM4_5G_ITSSI_SHIFT);
-+              SPEX(core_pwr_info[i].maxpwr_5g, o + SSB_SPROM4_5G_MAXP_ITSSI,
-+                      SSB_SPROM4_5G_MAXP, 0);
-+              SPEX(core_pwr_info[i].maxpwr_5gh, o + SSB_SPROM4_5GHL_MAXP,
-+                      SSB_SPROM4_5GH_MAXP, 0);
-+              SPEX(core_pwr_info[i].maxpwr_5gl, o + SSB_SPROM4_5GHL_MAXP,
-+                      SSB_SPROM4_5GL_MAXP, SSB_SPROM4_5GL_MAXP_SHIFT);
-+
-+              SPEX(core_pwr_info[i].pa_5gl[0], o + SSB_SPROM4_5GL_PA_0, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5gl[1], o + SSB_SPROM4_5GL_PA_1, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5gl[2], o + SSB_SPROM4_5GL_PA_2, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5gl[3], o + SSB_SPROM4_5GL_PA_3, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5g[0], o + SSB_SPROM4_5G_PA_0, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5g[1], o + SSB_SPROM4_5G_PA_1, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5g[2], o + SSB_SPROM4_5G_PA_2, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5g[3], o + SSB_SPROM4_5G_PA_3, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5gh[0], o + SSB_SPROM4_5GH_PA_0, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5gh[1], o + SSB_SPROM4_5GH_PA_1, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5gh[2], o + SSB_SPROM4_5GH_PA_2, ~0, 0);
-+              SPEX(core_pwr_info[i].pa_5gh[3], o + SSB_SPROM4_5GH_PA_3, ~0, 0);
-+      }
-       sprom_extract_r458(out, in);
-@@ -621,14 +676,22 @@ static void sprom_extract_r8(struct ssb_
-       SPEX32(ofdm5ghpo, SSB_SPROM8_OFDM5GHPO, 0xFFFFFFFF, 0);
-       /* Extract the antenna gain values. */
--      SPEX(antenna_gain.a0, SSB_SPROM8_AGAIN01,
--           SSB_SPROM8_AGAIN0, SSB_SPROM8_AGAIN0_SHIFT);
--      SPEX(antenna_gain.a1, SSB_SPROM8_AGAIN01,
--           SSB_SPROM8_AGAIN1, SSB_SPROM8_AGAIN1_SHIFT);
--      SPEX(antenna_gain.a2, SSB_SPROM8_AGAIN23,
--           SSB_SPROM8_AGAIN2, SSB_SPROM8_AGAIN2_SHIFT);
--      SPEX(antenna_gain.a3, SSB_SPROM8_AGAIN23,
--           SSB_SPROM8_AGAIN3, SSB_SPROM8_AGAIN3_SHIFT);
-+      out->antenna_gain.a0 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM8_AGAIN01,
-+                                                   SSB_SPROM8_AGAIN0,
-+                                                   SSB_SPROM8_AGAIN0_SHIFT);
-+      out->antenna_gain.a1 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM8_AGAIN01,
-+                                                   SSB_SPROM8_AGAIN1,
-+                                                   SSB_SPROM8_AGAIN1_SHIFT);
-+      out->antenna_gain.a2 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM8_AGAIN23,
-+                                                   SSB_SPROM8_AGAIN2,
-+                                                   SSB_SPROM8_AGAIN2_SHIFT);
-+      out->antenna_gain.a3 = sprom_extract_antgain(out->revision, in,
-+                                                   SSB_SPROM8_AGAIN23,
-+                                                   SSB_SPROM8_AGAIN3,
-+                                                   SSB_SPROM8_AGAIN3_SHIFT);
-       /* Extract cores power info info */
-       for (i = 0; i < ARRAY_SIZE(pwr_info_offset); i++) {
---- a/drivers/ssb/pcihost_wrapper.c
-+++ b/drivers/ssb/pcihost_wrapper.c
-@@ -11,15 +11,17 @@
-  * Licensed under the GNU/GPL. See COPYING for details.
-  */
-+#include <linux/pm.h>
- #include <linux/pci.h>
- #include <linux/export.h>
- #include <linux/slab.h>
- #include <linux/ssb/ssb.h>
--#ifdef CONFIG_PM
--static int ssb_pcihost_suspend(struct pci_dev *dev, pm_message_t state)
-+#ifdef CONFIG_PM_SLEEP
-+static int ssb_pcihost_suspend(struct device *d)
- {
-+      struct pci_dev *dev = to_pci_dev(d);
-       struct ssb_bus *ssb = pci_get_drvdata(dev);
-       int err;
-@@ -28,17 +30,23 @@ static int ssb_pcihost_suspend(struct pc
-               return err;
-       pci_save_state(dev);
-       pci_disable_device(dev);
--      pci_set_power_state(dev, pci_choose_state(dev, state));
-+
-+      /* if there is a wakeup enabled child device on ssb bus,
-+         enable pci wakeup posibility. */
-+      device_set_wakeup_enable(d, d->power.wakeup_path);
-+
-+      pci_prepare_to_sleep(dev);
-       return 0;
- }
--static int ssb_pcihost_resume(struct pci_dev *dev)
-+static int ssb_pcihost_resume(struct device *d)
- {
-+      struct pci_dev *dev = to_pci_dev(d);
-       struct ssb_bus *ssb = pci_get_drvdata(dev);
-       int err;
--      pci_set_power_state(dev, PCI_D0);
-+      pci_back_from_sleep(dev);
-       err = pci_enable_device(dev);
-       if (err)
-               return err;
-@@ -49,10 +57,12 @@ static int ssb_pcihost_resume(struct pci
-       return 0;
- }
--#else /* CONFIG_PM */
--# define ssb_pcihost_suspend  NULL
--# define ssb_pcihost_resume   NULL
--#endif /* CONFIG_PM */
-+
-+static const struct dev_pm_ops ssb_pcihost_pm_ops = {
-+      SET_SYSTEM_SLEEP_PM_OPS(ssb_pcihost_suspend, ssb_pcihost_resume)
-+};
-+
-+#endif /* CONFIG_PM_SLEEP */
- static int ssb_pcihost_probe(struct pci_dev *dev,
-                            const struct pci_device_id *id)
-@@ -115,8 +125,9 @@ int ssb_pcihost_register(struct pci_driv
- {
-       driver->probe = ssb_pcihost_probe;
-       driver->remove = ssb_pcihost_remove;
--      driver->suspend = ssb_pcihost_suspend;
--      driver->resume = ssb_pcihost_resume;
-+#ifdef CONFIG_PM_SLEEP
-+      driver->driver.pm = &ssb_pcihost_pm_ops;
-+#endif
-       return pci_register_driver(driver);
- }
---- a/include/linux/ssb/ssb.h
-+++ b/include/linux/ssb/ssb.h
-@@ -33,6 +33,7 @@ struct ssb_sprom {
-       u8 et1phyaddr;          /* MII address for enet1 */
-       u8 et0mdcport;          /* MDIO for enet0 */
-       u8 et1mdcport;          /* MDIO for enet1 */
-+      u16 dev_id;             /* Device ID overriding e.g. PCI ID */
-       u16 board_rev;          /* Board revision number from SPROM. */
-       u16 board_num;          /* Board number from SPROM. */
-       u16 board_type;         /* Board type from SPROM. */
---- a/include/linux/ssb/ssb_regs.h
-+++ b/include/linux/ssb/ssb_regs.h
-@@ -345,6 +345,43 @@
- #define  SSB_SPROM4_TXPID5GH2_SHIFT   0
- #define  SSB_SPROM4_TXPID5GH3         0xFF00
- #define  SSB_SPROM4_TXPID5GH3_SHIFT   8
-+
-+/* There are 4 blocks with power info sharing the same layout */
-+#define SSB_SPROM4_PWR_INFO_CORE0     0x0080
-+#define SSB_SPROM4_PWR_INFO_CORE1     0x00AE
-+#define SSB_SPROM4_PWR_INFO_CORE2     0x00DC
-+#define SSB_SPROM4_PWR_INFO_CORE3     0x010A
-+
-+#define SSB_SPROM4_2G_MAXP_ITSSI      0x00    /* 2 GHz ITSSI and 2 GHz Max Power */
-+#define  SSB_SPROM4_2G_MAXP           0x00FF
-+#define  SSB_SPROM4_2G_ITSSI          0xFF00
-+#define  SSB_SPROM4_2G_ITSSI_SHIFT    8
-+#define SSB_SPROM4_2G_PA_0            0x02    /* 2 GHz power amp */
-+#define SSB_SPROM4_2G_PA_1            0x04
-+#define SSB_SPROM4_2G_PA_2            0x06
-+#define SSB_SPROM4_2G_PA_3            0x08
-+#define SSB_SPROM4_5G_MAXP_ITSSI      0x0A    /* 5 GHz ITSSI and 5.3 GHz Max Power */
-+#define  SSB_SPROM4_5G_MAXP           0x00FF
-+#define  SSB_SPROM4_5G_ITSSI          0xFF00
-+#define  SSB_SPROM4_5G_ITSSI_SHIFT    8
-+#define SSB_SPROM4_5GHL_MAXP          0x0C    /* 5.2 GHz and 5.8 GHz Max Power */
-+#define  SSB_SPROM4_5GH_MAXP          0x00FF
-+#define  SSB_SPROM4_5GL_MAXP          0xFF00
-+#define  SSB_SPROM4_5GL_MAXP_SHIFT    8
-+#define SSB_SPROM4_5G_PA_0            0x0E    /* 5.3 GHz power amp */
-+#define SSB_SPROM4_5G_PA_1            0x10
-+#define SSB_SPROM4_5G_PA_2            0x12
-+#define SSB_SPROM4_5G_PA_3            0x14
-+#define SSB_SPROM4_5GL_PA_0           0x16    /* 5.2 GHz power amp */
-+#define SSB_SPROM4_5GL_PA_1           0x18
-+#define SSB_SPROM4_5GL_PA_2           0x1A
-+#define SSB_SPROM4_5GL_PA_3           0x1C
-+#define SSB_SPROM4_5GH_PA_0           0x1E    /* 5.8 GHz power amp */
-+#define SSB_SPROM4_5GH_PA_1           0x20
-+#define SSB_SPROM4_5GH_PA_2           0x22
-+#define SSB_SPROM4_5GH_PA_3           0x24
-+
-+/* TODO: Make it deprecated */
- #define SSB_SPROM4_MAXP_BG            0x0080  /* Max Power BG in path 1 */
- #define  SSB_SPROM4_MAXP_BG_MASK      0x00FF  /* Mask for Max Power BG */
- #define  SSB_SPROM4_ITSSI_BG          0xFF00  /* Mask for path 1 itssi_bg */
---- a/arch/mips/bcm47xx/sprom.c
-+++ b/arch/mips/bcm47xx/sprom.c
-@@ -168,6 +168,7 @@ static void nvram_read_alpha2(const char
- static void bcm47xx_fill_sprom_r1234589(struct ssb_sprom *sprom,
-                                       const char *prefix, bool fallback)
- {
-+      nvram_read_u16(prefix, NULL, "devid", &sprom->dev_id, 0, fallback);
-       nvram_read_u8(prefix, NULL, "ledbh0", &sprom->gpio0, 0xff, fallback);
-       nvram_read_u8(prefix, NULL, "ledbh1", &sprom->gpio1, 0xff, fallback);
-       nvram_read_u8(prefix, NULL, "ledbh2", &sprom->gpio2, 0xff, fallback);
diff --git a/target/linux/generic/patches-3.14/025-bcma_backport.patch b/target/linux/generic/patches-3.14/025-bcma_backport.patch
deleted file mode 100644 (file)
index 2791ce1..0000000
+++ /dev/null
@@ -1,1606 +0,0 @@
---- a/drivers/bcma/Makefile
-+++ b/drivers/bcma/Makefile
-@@ -1,8 +1,10 @@
- bcma-y                                        += main.o scan.o core.o sprom.o
- bcma-y                                        += driver_chipcommon.o driver_chipcommon_pmu.o
-+bcma-y                                        += driver_chipcommon_b.o
- bcma-$(CONFIG_BCMA_SFLASH)            += driver_chipcommon_sflash.o
- bcma-$(CONFIG_BCMA_NFLASH)            += driver_chipcommon_nflash.o
- bcma-y                                        += driver_pci.o
-+bcma-y                                        += driver_pcie2.o
- bcma-$(CONFIG_BCMA_DRIVER_PCI_HOSTMODE)       += driver_pci_host.o
- bcma-$(CONFIG_BCMA_DRIVER_MIPS)               += driver_mips.o
- bcma-$(CONFIG_BCMA_DRIVER_GMAC_CMN)   += driver_gmac_cmn.o
---- a/drivers/bcma/driver_chipcommon.c
-+++ b/drivers/bcma/driver_chipcommon.c
-@@ -339,7 +339,7 @@ void bcma_chipco_serial_init(struct bcma
-               return;
-       }
--      irq = bcma_core_irq(cc->core);
-+      irq = bcma_core_irq(cc->core, 0);
-       /* Determine the registers of the UARTs */
-       cc->nr_serial_ports = (cc->capabilities & BCMA_CC_CAP_NRUART);
---- a/drivers/bcma/driver_chipcommon_pmu.c
-+++ b/drivers/bcma/driver_chipcommon_pmu.c
-@@ -603,6 +603,8 @@ void bcma_pmu_spuravoid_pllupdate(struct
-               tmp = BCMA_CC_PMU_CTL_PLL_UPD | BCMA_CC_PMU_CTL_NOILPONW;
-               break;
-+      case BCMA_CHIP_ID_BCM43131:
-+      case BCMA_CHIP_ID_BCM43217:
-       case BCMA_CHIP_ID_BCM43227:
-       case BCMA_CHIP_ID_BCM43228:
-       case BCMA_CHIP_ID_BCM43428:
---- a/drivers/bcma/driver_gpio.c
-+++ b/drivers/bcma/driver_gpio.c
-@@ -76,7 +76,7 @@ static void bcma_gpio_free(struct gpio_c
-       bcma_chipco_gpio_pullup(cc, 1 << gpio, 0);
- }
--#if IS_BUILTIN(CONFIG_BCMA_HOST_SOC)
-+#if IS_BUILTIN(CONFIG_BCM47XX)
- static int bcma_gpio_to_irq(struct gpio_chip *chip, unsigned gpio)
- {
-       struct bcma_drv_cc *cc = bcma_gpio_get_cc(chip);
-@@ -152,7 +152,7 @@ static int bcma_gpio_irq_domain_init(str
-                                        handle_simple_irq);
-       }
--      hwirq = bcma_core_irq(cc->core);
-+      hwirq = bcma_core_irq(cc->core, 0);
-       err = request_irq(hwirq, bcma_gpio_irq_handler, IRQF_SHARED, "gpio",
-                         cc);
-       if (err)
-@@ -183,7 +183,7 @@ static void bcma_gpio_irq_domain_exit(st
-               return;
-       bcma_cc_mask32(cc, BCMA_CC_IRQMASK, ~BCMA_CC_IRQ_GPIO);
--      free_irq(bcma_core_irq(cc->core), cc);
-+      free_irq(bcma_core_irq(cc->core, 0), cc);
-       for (gpio = 0; gpio < chip->ngpio; gpio++) {
-               int irq = irq_find_mapping(cc->irq_domain, gpio);
-@@ -215,10 +215,22 @@ int bcma_gpio_init(struct bcma_drv_cc *c
-       chip->set               = bcma_gpio_set_value;
-       chip->direction_input   = bcma_gpio_direction_input;
-       chip->direction_output  = bcma_gpio_direction_output;
--#if IS_BUILTIN(CONFIG_BCMA_HOST_SOC)
-+#if IS_BUILTIN(CONFIG_BCM47XX)
-       chip->to_irq            = bcma_gpio_to_irq;
- #endif
--      chip->ngpio             = 16;
-+#if IS_BUILTIN(CONFIG_OF)
-+      if (cc->core->bus->hosttype == BCMA_HOSTTYPE_SOC)
-+              chip->of_node   = cc->core->dev.of_node;
-+#endif
-+      switch (cc->core->bus->chipinfo.id) {
-+      case BCMA_CHIP_ID_BCM5357:
-+      case BCMA_CHIP_ID_BCM53572:
-+              chip->ngpio     = 32;
-+              break;
-+      default:
-+              chip->ngpio     = 16;
-+      }
-+
-       /* There is just one SoC in one device and its GPIO addresses should be
-        * deterministic to address them more easily. The other buses could get
-        * a random base number. */
-@@ -243,5 +255,6 @@ int bcma_gpio_init(struct bcma_drv_cc *c
- int bcma_gpio_unregister(struct bcma_drv_cc *cc)
- {
-       bcma_gpio_irq_domain_exit(cc);
--      return gpiochip_remove(&cc->gpio);
-+      gpiochip_remove(&cc->gpio);
-+      return 0;
- }
---- a/drivers/bcma/driver_pci_host.c
-+++ b/drivers/bcma/driver_pci_host.c
-@@ -593,7 +593,7 @@ int bcma_core_pci_plat_dev_init(struct p
-       pr_info("PCI: Fixing up device %s\n", pci_name(dev));
-       /* Fix up interrupt lines */
--      dev->irq = bcma_core_irq(pc_host->pdev->core);
-+      dev->irq = bcma_core_irq(pc_host->pdev->core, 0);
-       pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq);
-       readrq = pcie_get_readrq(dev);
-@@ -617,6 +617,6 @@ int bcma_core_pci_pcibios_map_irq(const
-       pc_host = container_of(dev->bus->ops, struct bcma_drv_pci_host,
-                              pci_ops);
--      return bcma_core_irq(pc_host->pdev->core);
-+      return bcma_core_irq(pc_host->pdev->core, 0);
- }
- EXPORT_SYMBOL(bcma_core_pci_pcibios_map_irq);
---- /dev/null
-+++ b/drivers/bcma/driver_pcie2.c
-@@ -0,0 +1,175 @@
-+/*
-+ * Broadcom specific AMBA
-+ * PCIe Gen 2 Core
-+ *
-+ * Copyright 2014, Broadcom Corporation
-+ * Copyright 2014, Rafał Miłecki <zajec5@gmail.com>
-+ *
-+ * Licensed under the GNU/GPL. See COPYING for details.
-+ */
-+
-+#include "bcma_private.h"
-+#include <linux/bcma/bcma.h>
-+
-+/**************************************************
-+ * R/W ops.
-+ **************************************************/
-+
-+#if 0
-+static u32 bcma_core_pcie2_cfg_read(struct bcma_drv_pcie2 *pcie2, u32 addr)
-+{
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR, addr);
-+      pcie2_read32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR);
-+      return pcie2_read32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA);
-+}
-+#endif
-+
-+static void bcma_core_pcie2_cfg_write(struct bcma_drv_pcie2 *pcie2, u32 addr,
-+                                    u32 val)
-+{
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR, addr);
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA, val);
-+}
-+
-+/**************************************************
-+ * Init.
-+ **************************************************/
-+
-+static u32 bcma_core_pcie2_war_delay_perst_enab(struct bcma_drv_pcie2 *pcie2,
-+                                              bool enable)
-+{
-+      u32 val;
-+
-+      /* restore back to default */
-+      val = pcie2_read32(pcie2, BCMA_CORE_PCIE2_CLK_CONTROL);
-+      val |= PCIE2_CLKC_DLYPERST;
-+      val &= ~PCIE2_CLKC_DISSPROMLD;
-+      if (enable) {
-+              val &= ~PCIE2_CLKC_DLYPERST;
-+              val |= PCIE2_CLKC_DISSPROMLD;
-+      }
-+      pcie2_write32(pcie2, (BCMA_CORE_PCIE2_CLK_CONTROL), val);
-+      /* flush */
-+      return pcie2_read32(pcie2, BCMA_CORE_PCIE2_CLK_CONTROL);
-+}
-+
-+static void bcma_core_pcie2_set_ltr_vals(struct bcma_drv_pcie2 *pcie2)
-+{
-+      /* LTR0 */
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR, 0x844);
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA, 0x883c883c);
-+      /* LTR1 */
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR, 0x848);
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA, 0x88648864);
-+      /* LTR2 */
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR, 0x84C);
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA, 0x90039003);
-+}
-+
-+static void bcma_core_pcie2_hw_ltr_war(struct bcma_drv_pcie2 *pcie2)
-+{
-+      u8 core_rev = pcie2->core->id.rev;
-+      u32 devstsctr2;
-+
-+      if (core_rev < 2 || core_rev == 10 || core_rev > 13)
-+              return;
-+
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR,
-+                    PCIE2_CAP_DEVSTSCTRL2_OFFSET);
-+      devstsctr2 = pcie2_read32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA);
-+      if (devstsctr2 & PCIE2_CAP_DEVSTSCTRL2_LTRENAB) {
-+              /* force the right LTR values */
-+              bcma_core_pcie2_set_ltr_vals(pcie2);
-+
-+              /* TODO:
-+              si_core_wrapperreg(pcie2, 3, 0x60, 0x8080, 0); */
-+
-+              /* enable the LTR */
-+              devstsctr2 |= PCIE2_CAP_DEVSTSCTRL2_LTRENAB;
-+              pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR,
-+                            PCIE2_CAP_DEVSTSCTRL2_OFFSET);
-+              pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA, devstsctr2);
-+
-+              /* set the LTR state to be active */
-+              pcie2_write32(pcie2, BCMA_CORE_PCIE2_LTR_STATE,
-+                            PCIE2_LTR_ACTIVE);
-+              usleep_range(1000, 2000);
-+
-+              /* set the LTR state to be sleep */
-+              pcie2_write32(pcie2, BCMA_CORE_PCIE2_LTR_STATE,
-+                            PCIE2_LTR_SLEEP);
-+              usleep_range(1000, 2000);
-+      }
-+}
-+
-+static void pciedev_crwlpciegen2(struct bcma_drv_pcie2 *pcie2)
-+{
-+      u8 core_rev = pcie2->core->id.rev;
-+      bool pciewar160, pciewar162;
-+
-+      pciewar160 = core_rev == 7 || core_rev == 9 || core_rev == 11;
-+      pciewar162 = core_rev == 5 || core_rev == 7 || core_rev == 8 ||
-+                   core_rev == 9 || core_rev == 11;
-+
-+      if (!pciewar160 && !pciewar162)
-+              return;
-+
-+/* TODO */
-+#if 0
-+      pcie2_set32(pcie2, BCMA_CORE_PCIE2_CLK_CONTROL,
-+                  PCIE_DISABLE_L1CLK_GATING);
-+#if 0
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR,
-+                    PCIEGEN2_COE_PVT_TL_CTRL_0);
-+      pcie2_mask32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA,
-+                   ~(1 << COE_PVT_TL_CTRL_0_PM_DIS_L1_REENTRY_BIT));
-+#endif
-+#endif
-+}
-+
-+static void pciedev_crwlpciegen2_180(struct bcma_drv_pcie2 *pcie2)
-+{
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR, PCIE2_PMCR_REFUP);
-+      pcie2_set32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA, 0x1f);
-+}
-+
-+static void pciedev_crwlpciegen2_182(struct bcma_drv_pcie2 *pcie2)
-+{
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR, PCIE2_SBMBX);
-+      pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA, 1 << 0);
-+}
-+
-+static void pciedev_reg_pm_clk_period(struct bcma_drv_pcie2 *pcie2)
-+{
-+      struct bcma_drv_cc *drv_cc = &pcie2->core->bus->drv_cc;
-+      u8 core_rev = pcie2->core->id.rev;
-+      u32 alp_khz, pm_value;
-+
-+      if (core_rev <= 13) {
-+              alp_khz = bcma_pmu_get_alp_clock(drv_cc) / 1000;
-+              pm_value = (1000000 * 2) / alp_khz;
-+              pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDADDR,
-+                            PCIE2_PVT_REG_PM_CLK_PERIOD);
-+              pcie2_write32(pcie2, BCMA_CORE_PCIE2_CONFIGINDDATA, pm_value);
-+      }
-+}
-+
-+void bcma_core_pcie2_init(struct bcma_drv_pcie2 *pcie2)
-+{
-+      struct bcma_chipinfo *ci = &pcie2->core->bus->chipinfo;
-+      u32 tmp;
-+
-+      tmp = pcie2_read32(pcie2, BCMA_CORE_PCIE2_SPROM(54));
-+      if ((tmp & 0xe) >> 1 == 2)
-+              bcma_core_pcie2_cfg_write(pcie2, 0x4e0, 0x17);
-+
-+      /* TODO: Do we need pcie_reqsize? */
-+
-+      if (ci->id == BCMA_CHIP_ID_BCM4360 && ci->rev > 3)
-+              bcma_core_pcie2_war_delay_perst_enab(pcie2, true);
-+      bcma_core_pcie2_hw_ltr_war(pcie2);
-+      pciedev_crwlpciegen2(pcie2);
-+      pciedev_reg_pm_clk_period(pcie2);
-+      pciedev_crwlpciegen2_180(pcie2);
-+      pciedev_crwlpciegen2_182(pcie2);
-+}
---- a/drivers/bcma/host_pci.c
-+++ b/drivers/bcma/host_pci.c
-@@ -208,6 +208,9 @@ static int bcma_host_pci_probe(struct pc
-       bus->boardinfo.vendor = bus->host_pci->subsystem_vendor;
-       bus->boardinfo.type = bus->host_pci->subsystem_device;
-+      /* Initialize struct, detect chip */
-+      bcma_init_bus(bus);
-+
-       /* Register */
-       err = bcma_bus_register(bus);
-       if (err)
-@@ -272,14 +275,18 @@ static SIMPLE_DEV_PM_OPS(bcma_pm_ops, bc
- static const struct pci_device_id bcma_pci_bridge_tbl[] = {
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x0576) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4313) },
--      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 43224) },
-+      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 43224) },  /* 0xa8d8 */
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4331) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4353) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4357) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4358) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4359) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4365) },
-+      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x43a9) },
-+      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x43aa) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4727) },
-+      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 43227) },  /* 0xa8db, BCM43217 (sic!) */
-+      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 43228) },  /* 0xa8dc */
-       { 0, },
- };
- MODULE_DEVICE_TABLE(pci, bcma_pci_bridge_tbl);
---- a/drivers/bcma/main.c
-+++ b/drivers/bcma/main.c
-@@ -10,6 +10,8 @@
- #include <linux/platform_device.h>
- #include <linux/bcma/bcma.h>
- #include <linux/slab.h>
-+#include <linux/of_address.h>
-+#include <linux/of_irq.h>
- MODULE_DESCRIPTION("Broadcom's specific AMBA driver");
- MODULE_LICENSE("GPL");
-@@ -120,56 +122,195 @@ static void bcma_release_core_dev(struct
-       kfree(core);
- }
--static int bcma_register_cores(struct bcma_bus *bus)
-+static bool bcma_is_core_needed_early(u16 core_id)
-+{
-+      switch (core_id) {
-+      case BCMA_CORE_NS_NAND:
-+      case BCMA_CORE_NS_QSPI:
-+              return true;
-+      }
-+
-+      return false;
-+}
-+
-+#if defined(CONFIG_OF) && defined(CONFIG_OF_ADDRESS)
-+static struct device_node *bcma_of_find_child_device(struct platform_device *parent,
-+                                                   struct bcma_device *core)
-+{
-+      struct device_node *node;
-+      u64 size;
-+      const __be32 *reg;
-+
-+      if (!parent || !parent->dev.of_node)
-+              return NULL;
-+
-+      for_each_child_of_node(parent->dev.of_node, node) {
-+              reg = of_get_address(node, 0, &size, NULL);
-+              if (!reg)
-+                      continue;
-+              if (of_translate_address(node, reg) == core->addr)
-+                      return node;
-+      }
-+      return NULL;
-+}
-+
-+static int bcma_of_irq_parse(struct platform_device *parent,
-+                           struct bcma_device *core,
-+                           struct of_phandle_args *out_irq, int num)
-+{
-+      __be32 laddr[1];
-+      int rc;
-+
-+      if (core->dev.of_node) {
-+              rc = of_irq_parse_one(core->dev.of_node, num, out_irq);
-+              if (!rc)
-+                      return rc;
-+      }
-+
-+      out_irq->np = parent->dev.of_node;
-+      out_irq->args_count = 1;
-+      out_irq->args[0] = num;
-+
-+      laddr[0] = cpu_to_be32(core->addr);
-+      return of_irq_parse_raw(laddr, out_irq);
-+}
-+
-+static unsigned int bcma_of_get_irq(struct platform_device *parent,
-+                                  struct bcma_device *core, int num)
-+{
-+      struct of_phandle_args out_irq;
-+      int ret;
-+
-+      if (!parent || !parent->dev.of_node)
-+              return 0;
-+
-+      ret = bcma_of_irq_parse(parent, core, &out_irq, num);
-+      if (ret) {
-+              bcma_debug(core->bus, "bcma_of_get_irq() failed with rc=%d\n",
-+                         ret);
-+              return 0;
-+      }
-+
-+      return irq_create_of_mapping(&out_irq);
-+}
-+
-+static void bcma_of_fill_device(struct platform_device *parent,
-+                              struct bcma_device *core)
-+{
-+      struct device_node *node;
-+
-+      node = bcma_of_find_child_device(parent, core);
-+      if (node)
-+              core->dev.of_node = node;
-+
-+      core->irq = bcma_of_get_irq(parent, core, 0);
-+}
-+#else
-+static void bcma_of_fill_device(struct platform_device *parent,
-+                              struct bcma_device *core)
-+{
-+}
-+static inline unsigned int bcma_of_get_irq(struct platform_device *parent,
-+                                         struct bcma_device *core, int num)
-+{
-+      return 0;
-+}
-+#endif /* CONFIG_OF */
-+
-+unsigned int bcma_core_irq(struct bcma_device *core, int num)
-+{
-+      struct bcma_bus *bus = core->bus;
-+      unsigned int mips_irq;
-+
-+      switch (bus->hosttype) {
-+      case BCMA_HOSTTYPE_PCI:
-+              return bus->host_pci->irq;
-+      case BCMA_HOSTTYPE_SOC:
-+              if (bus->drv_mips.core && num == 0) {
-+                      mips_irq = bcma_core_mips_irq(core);
-+                      return mips_irq <= 4 ? mips_irq + 2 : 0;
-+              }
-+              if (bus->host_pdev)
-+                      return bcma_of_get_irq(bus->host_pdev, core, num);
-+              return 0;
-+      case BCMA_HOSTTYPE_SDIO:
-+              return 0;
-+      }
-+
-+      return 0;
-+}
-+EXPORT_SYMBOL(bcma_core_irq);
-+
-+void bcma_prepare_core(struct bcma_bus *bus, struct bcma_device *core)
-+{
-+      core->dev.release = bcma_release_core_dev;
-+      core->dev.bus = &bcma_bus_type;
-+      dev_set_name(&core->dev, "bcma%d:%d", bus->num, core->core_index);
-+
-+      switch (bus->hosttype) {
-+      case BCMA_HOSTTYPE_PCI:
-+              core->dev.parent = &bus->host_pci->dev;
-+              core->dma_dev = &bus->host_pci->dev;
-+              core->irq = bus->host_pci->irq;
-+              break;
-+      case BCMA_HOSTTYPE_SOC:
-+              core->dev.dma_mask = &core->dev.coherent_dma_mask;
-+              if (bus->host_pdev) {
-+                      core->dma_dev = &bus->host_pdev->dev;
-+                      core->dev.parent = &bus->host_pdev->dev;
-+                      bcma_of_fill_device(bus->host_pdev, core);
-+              } else {
-+                      core->dma_dev = &core->dev;
-+              }
-+              break;
-+      case BCMA_HOSTTYPE_SDIO:
-+              break;
-+      }
-+}
-+
-+static void bcma_register_core(struct bcma_bus *bus, struct bcma_device *core)
-+{
-+      int err;
-+
-+      err = device_register(&core->dev);
-+      if (err) {
-+              bcma_err(bus, "Could not register dev for core 0x%03X\n",
-+                       core->id.id);
-+              put_device(&core->dev);
-+              return;
-+      }
-+      core->dev_registered = true;
-+}
-+
-+static int bcma_register_devices(struct bcma_bus *bus)
- {
-       struct bcma_device *core;
--      int err, dev_id = 0;
-+      int err;
-       list_for_each_entry(core, &bus->cores, list) {
-               /* We support that cores ourself */
-               switch (core->id.id) {
-               case BCMA_CORE_4706_CHIPCOMMON:
-               case BCMA_CORE_CHIPCOMMON:
-+              case BCMA_CORE_NS_CHIPCOMMON_B:
-               case BCMA_CORE_PCI:
-               case BCMA_CORE_PCIE:
-+              case BCMA_CORE_PCIE2:
-               case BCMA_CORE_MIPS_74K:
-               case BCMA_CORE_4706_MAC_GBIT_COMMON:
-                       continue;
-               }
-+              /* Early cores were already registered */
-+              if (bcma_is_core_needed_early(core->id.id))
-+                      continue;
-+
-               /* Only first GMAC core on BCM4706 is connected and working */
-               if (core->id.id == BCMA_CORE_4706_MAC_GBIT &&
-                   core->core_unit > 0)
-                       continue;
--              core->dev.release = bcma_release_core_dev;
--              core->dev.bus = &bcma_bus_type;
--              dev_set_name(&core->dev, "bcma%d:%d", bus->num, dev_id);
--
--              switch (bus->hosttype) {
--              case BCMA_HOSTTYPE_PCI:
--                      core->dev.parent = &bus->host_pci->dev;
--                      core->dma_dev = &bus->host_pci->dev;
--                      core->irq = bus->host_pci->irq;
--                      break;
--              case BCMA_HOSTTYPE_SOC:
--                      core->dev.dma_mask = &core->dev.coherent_dma_mask;
--                      core->dma_dev = &core->dev;
--                      break;
--              case BCMA_HOSTTYPE_SDIO:
--                      break;
--              }
--
--              err = device_register(&core->dev);
--              if (err) {
--                      bcma_err(bus,
--                               "Could not register dev for core 0x%03X\n",
--                               core->id.id);
--                      put_device(&core->dev);
--                      continue;
--              }
--              core->dev_registered = true;
--              dev_id++;
-+              bcma_register_core(bus, core);
-       }
- #ifdef CONFIG_BCMA_DRIVER_MIPS
-@@ -246,6 +387,12 @@ int bcma_bus_register(struct bcma_bus *b
-               bcma_core_chipcommon_early_init(&bus->drv_cc);
-       }
-+      /* Cores providing flash access go before SPROM init */
-+      list_for_each_entry(core, &bus->cores, list) {
-+              if (bcma_is_core_needed_early(core->id.id))
-+                      bcma_register_core(bus, core);
-+      }
-+
-       /* Try to get SPROM */
-       err = bcma_sprom_get(bus);
-       if (err == -ENOENT) {
-@@ -260,6 +407,13 @@ int bcma_bus_register(struct bcma_bus *b
-               bcma_core_chipcommon_init(&bus->drv_cc);
-       }
-+      /* Init CC core */
-+      core = bcma_find_core(bus, BCMA_CORE_NS_CHIPCOMMON_B);
-+      if (core) {
-+              bus->drv_cc_b.core = core;
-+              bcma_core_chipcommon_b_init(&bus->drv_cc_b);
-+      }
-+
-       /* Init MIPS core */
-       core = bcma_find_core(bus, BCMA_CORE_MIPS_74K);
-       if (core) {
-@@ -281,6 +435,13 @@ int bcma_bus_register(struct bcma_bus *b
-               bcma_core_pci_init(&bus->drv_pci[1]);
-       }
-+      /* Init PCIe Gen 2 core */
-+      core = bcma_find_core_unit(bus, BCMA_CORE_PCIE2, 0);
-+      if (core) {
-+              bus->drv_pcie2.core = core;
-+              bcma_core_pcie2_init(&bus->drv_pcie2);
-+      }
-+
-       /* Init GBIT MAC COMMON core */
-       core = bcma_find_core(bus, BCMA_CORE_4706_MAC_GBIT_COMMON);
-       if (core) {
-@@ -289,7 +450,7 @@ int bcma_bus_register(struct bcma_bus *b
-       }
-       /* Register found cores */
--      bcma_register_cores(bus);
-+      bcma_register_devices(bus);
-       bcma_info(bus, "Bus registered\n");
-@@ -307,6 +468,8 @@ void bcma_bus_unregister(struct bcma_bus
-       else if (err)
-               bcma_err(bus, "Can not unregister GPIO driver: %i\n", err);
-+      bcma_core_chipcommon_b_free(&bus->drv_cc_b);
-+
-       cores[0] = bcma_find_core(bus, BCMA_CORE_MIPS_74K);
-       cores[1] = bcma_find_core(bus, BCMA_CORE_PCIE);
-       cores[2] = bcma_find_core(bus, BCMA_CORE_4706_MAC_GBIT_COMMON);
-@@ -326,8 +489,6 @@ int __init bcma_bus_early_register(struc
-       struct bcma_device *core;
-       struct bcma_device_id match;
--      bcma_init_bus(bus);
--
-       match.manuf = BCMA_MANUF_BCM;
-       match.id = bcma_cc_core_id(bus);
-       match.class = BCMA_CL_SIM;
-@@ -486,6 +647,11 @@ static int __init bcma_modinit(void)
-       if (err)
-               return err;
-+      err = bcma_host_soc_register_driver();
-+      if (err) {
-+              pr_err("SoC host initialization failed\n");
-+              err = 0;
-+      }
- #ifdef CONFIG_BCMA_HOST_PCI
-       err = bcma_host_pci_init();
-       if (err) {
-@@ -503,6 +669,7 @@ static void __exit bcma_modexit(void)
- #ifdef CONFIG_BCMA_HOST_PCI
-       bcma_host_pci_exit();
- #endif
-+      bcma_host_soc_unregister_driver();
-       bus_unregister(&bcma_bus_type);
- }
- module_exit(bcma_modexit)
---- a/drivers/bcma/sprom.c
-+++ b/drivers/bcma/sprom.c
-@@ -201,6 +201,23 @@ static int bcma_sprom_valid(struct bcma_
-               SPEX(_field[7], _offset + 14, _mask, _shift);   \
-       } while (0)
-+static s8 sprom_extract_antgain(const u16 *in, u16 offset, u16 mask, u16 shift)
-+{
-+      u16 v;
-+      u8 gain;
-+
-+      v = in[SPOFF(offset)];
-+      gain = (v & mask) >> shift;
-+      if (gain == 0xFF) {
-+              gain = 8; /* If unset use 2dBm */
-+      } else {
-+              /* Q5.2 Fractional part is stored in 0xC0 */
-+              gain = ((gain & 0xC0) >> 6) | ((gain & 0x3F) << 2);
-+      }
-+
-+      return (s8)gain;
-+}
-+
- static void bcma_sprom_extract_r8(struct bcma_bus *bus, const u16 *sprom)
- {
-       u16 v, o;
-@@ -381,14 +398,22 @@ static void bcma_sprom_extract_r8(struct
-       SPEX32(ofdm5ghpo, SSB_SPROM8_OFDM5GHPO, ~0, 0);
-       /* Extract the antenna gain values. */
--      SPEX(antenna_gain.a0, SSB_SPROM8_AGAIN01,
--           SSB_SPROM8_AGAIN0, SSB_SPROM8_AGAIN0_SHIFT);
--      SPEX(antenna_gain.a1, SSB_SPROM8_AGAIN01,
--           SSB_SPROM8_AGAIN1, SSB_SPROM8_AGAIN1_SHIFT);
--      SPEX(antenna_gain.a2, SSB_SPROM8_AGAIN23,
--           SSB_SPROM8_AGAIN2, SSB_SPROM8_AGAIN2_SHIFT);
--      SPEX(antenna_gain.a3, SSB_SPROM8_AGAIN23,
--           SSB_SPROM8_AGAIN3, SSB_SPROM8_AGAIN3_SHIFT);
-+      bus->sprom.antenna_gain.a0 = sprom_extract_antgain(sprom,
-+                                                         SSB_SPROM8_AGAIN01,
-+                                                         SSB_SPROM8_AGAIN0,
-+                                                         SSB_SPROM8_AGAIN0_SHIFT);
-+      bus->sprom.antenna_gain.a1 = sprom_extract_antgain(sprom,
-+                                                         SSB_SPROM8_AGAIN01,
-+                                                         SSB_SPROM8_AGAIN1,
-+                                                         SSB_SPROM8_AGAIN1_SHIFT);
-+      bus->sprom.antenna_gain.a2 = sprom_extract_antgain(sprom,
-+                                                         SSB_SPROM8_AGAIN23,
-+                                                         SSB_SPROM8_AGAIN2,
-+                                                         SSB_SPROM8_AGAIN2_SHIFT);
-+      bus->sprom.antenna_gain.a3 = sprom_extract_antgain(sprom,
-+                                                         SSB_SPROM8_AGAIN23,
-+                                                         SSB_SPROM8_AGAIN3,
-+                                                         SSB_SPROM8_AGAIN3_SHIFT);
-       SPEX(leddc_on_time, SSB_SPROM8_LEDDC, SSB_SPROM8_LEDDC_ON,
-            SSB_SPROM8_LEDDC_ON_SHIFT);
-@@ -509,6 +534,8 @@ static bool bcma_sprom_onchip_available(
-               /* for these chips OTP is always available */
-               present = true;
-               break;
-+      case BCMA_CHIP_ID_BCM43131:
-+      case BCMA_CHIP_ID_BCM43217:
-       case BCMA_CHIP_ID_BCM43227:
-       case BCMA_CHIP_ID_BCM43228:
-       case BCMA_CHIP_ID_BCM43428:
---- a/include/linux/bcma/bcma.h
-+++ b/include/linux/bcma/bcma.h
-@@ -6,6 +6,7 @@
- #include <linux/bcma/bcma_driver_chipcommon.h>
- #include <linux/bcma/bcma_driver_pci.h>
-+#include <linux/bcma/bcma_driver_pcie2.h>
- #include <linux/bcma/bcma_driver_mips.h>
- #include <linux/bcma/bcma_driver_gmac_cmn.h>
- #include <linux/ssb/ssb.h> /* SPROM sharing */
-@@ -72,17 +73,17 @@ struct bcma_host_ops {
- /* Core-ID values. */
- #define BCMA_CORE_OOB_ROUTER          0x367   /* Out of band */
- #define BCMA_CORE_4706_CHIPCOMMON     0x500
--#define BCMA_CORE_PCIEG2              0x501
--#define BCMA_CORE_DMA                 0x502
--#define BCMA_CORE_SDIO3                       0x503
--#define BCMA_CORE_USB20                       0x504
--#define BCMA_CORE_USB30                       0x505
--#define BCMA_CORE_A9JTAG              0x506
--#define BCMA_CORE_DDR23                       0x507
--#define BCMA_CORE_ROM                 0x508
--#define BCMA_CORE_NAND                        0x509
--#define BCMA_CORE_QSPI                        0x50A
--#define BCMA_CORE_CHIPCOMMON_B                0x50B
-+#define BCMA_CORE_NS_PCIEG2           0x501
-+#define BCMA_CORE_NS_DMA              0x502
-+#define BCMA_CORE_NS_SDIO3            0x503
-+#define BCMA_CORE_NS_USB20            0x504
-+#define BCMA_CORE_NS_USB30            0x505
-+#define BCMA_CORE_NS_A9JTAG           0x506
-+#define BCMA_CORE_NS_DDR23            0x507
-+#define BCMA_CORE_NS_ROM              0x508
-+#define BCMA_CORE_NS_NAND             0x509
-+#define BCMA_CORE_NS_QSPI             0x50A
-+#define BCMA_CORE_NS_CHIPCOMMON_B     0x50B
- #define BCMA_CORE_4706_SOC_RAM                0x50E
- #define BCMA_CORE_ARMCA9              0x510
- #define BCMA_CORE_4706_MAC_GBIT               0x52D
-@@ -157,6 +158,9 @@ struct bcma_host_ops {
- /* Chip IDs of PCIe devices */
- #define BCMA_CHIP_ID_BCM4313  0x4313
- #define BCMA_CHIP_ID_BCM43142 43142
-+#define BCMA_CHIP_ID_BCM43131 43131
-+#define BCMA_CHIP_ID_BCM43217 43217
-+#define BCMA_CHIP_ID_BCM43222 43222
- #define BCMA_CHIP_ID_BCM43224 43224
- #define  BCMA_PKG_ID_BCM43224_FAB_CSM 0x8
- #define  BCMA_PKG_ID_BCM43224_FAB_SMIC        0xa
-@@ -263,7 +267,7 @@ struct bcma_device {
-       u8 core_unit;
-       u32 addr;
--      u32 addr1;
-+      u32 addr_s[8];
-       u32 wrap;
-       void __iomem *io_addr;
-@@ -319,6 +323,8 @@ struct bcma_bus {
-               struct pci_dev *host_pci;
-               /* Pointer to the SDIO device (only for BCMA_HOSTTYPE_SDIO) */
-               struct sdio_func *host_sdio;
-+              /* Pointer to platform device (only for BCMA_HOSTTYPE_SOC) */
-+              struct platform_device *host_pdev;
-       };
-       struct bcma_chipinfo chipinfo;
-@@ -328,11 +334,12 @@ struct bcma_bus {
-       struct bcma_device *mapped_core;
-       struct list_head cores;
-       u8 nr_cores;
--      u8 init_done:1;
-       u8 num;
-       struct bcma_drv_cc drv_cc;
-+      struct bcma_drv_cc_b drv_cc_b;
-       struct bcma_drv_pci drv_pci[2];
-+      struct bcma_drv_pcie2 drv_pcie2;
-       struct bcma_drv_mips drv_mips;
-       struct bcma_drv_gmac_cmn drv_gmac_cmn;
-@@ -440,4 +447,6 @@ extern u32 bcma_chipco_pll_read(struct b
- #define  BCMA_DMA_TRANSLATION_DMA64_CMT       0x80000000 /* Client Mode Translation for 64-bit DMA */
- extern u32 bcma_core_dma_translation(struct bcma_device *core);
-+extern unsigned int bcma_core_irq(struct bcma_device *core, int num);
-+
- #endif /* LINUX_BCMA_H_ */
---- a/include/linux/bcma/bcma_driver_mips.h
-+++ b/include/linux/bcma/bcma_driver_mips.h
-@@ -43,12 +43,12 @@ struct bcma_drv_mips {
- extern void bcma_core_mips_init(struct bcma_drv_mips *mcore);
- extern void bcma_core_mips_early_init(struct bcma_drv_mips *mcore);
--extern unsigned int bcma_core_irq(struct bcma_device *core);
-+extern unsigned int bcma_core_mips_irq(struct bcma_device *dev);
- #else
- static inline void bcma_core_mips_init(struct bcma_drv_mips *mcore) { }
- static inline void bcma_core_mips_early_init(struct bcma_drv_mips *mcore) { }
--static inline unsigned int bcma_core_irq(struct bcma_device *core)
-+static inline unsigned int bcma_core_mips_irq(struct bcma_device *dev)
- {
-       return 0;
- }
---- /dev/null
-+++ b/include/linux/bcma/bcma_driver_pcie2.h
-@@ -0,0 +1,158 @@
-+#ifndef LINUX_BCMA_DRIVER_PCIE2_H_
-+#define LINUX_BCMA_DRIVER_PCIE2_H_
-+
-+#define BCMA_CORE_PCIE2_CLK_CONTROL           0x0000
-+#define  PCIE2_CLKC_RST_OE                    0x0001 /* When set, drives PCI_RESET out to pin */
-+#define  PCIE2_CLKC_RST                               0x0002 /* Value driven out to pin */
-+#define  PCIE2_CLKC_SPERST                    0x0004 /* SurvivePeRst */
-+#define  PCIE2_CLKC_DISABLE_L1CLK_GATING      0x0010
-+#define  PCIE2_CLKC_DLYPERST                  0x0100 /* Delay PeRst to CoE Core */
-+#define  PCIE2_CLKC_DISSPROMLD                        0x0200 /* DisableSpromLoadOnPerst */
-+#define  PCIE2_CLKC_WAKE_MODE_L2              0x1000 /* Wake on L2 */
-+#define BCMA_CORE_PCIE2_RC_PM_CONTROL         0x0004
-+#define BCMA_CORE_PCIE2_RC_PM_STATUS          0x0008
-+#define BCMA_CORE_PCIE2_EP_PM_CONTROL         0x000C
-+#define BCMA_CORE_PCIE2_EP_PM_STATUS          0x0010
-+#define BCMA_CORE_PCIE2_EP_LTR_CONTROL                0x0014
-+#define BCMA_CORE_PCIE2_EP_LTR_STATUS         0x0018
-+#define BCMA_CORE_PCIE2_EP_OBFF_STATUS                0x001C
-+#define BCMA_CORE_PCIE2_PCIE_ERR_STATUS               0x0020
-+#define BCMA_CORE_PCIE2_RC_AXI_CONFIG         0x0100
-+#define BCMA_CORE_PCIE2_EP_AXI_CONFIG         0x0104
-+#define BCMA_CORE_PCIE2_RXDEBUG_STATUS0               0x0108
-+#define BCMA_CORE_PCIE2_RXDEBUG_CONTROL0      0x010C
-+#define BCMA_CORE_PCIE2_CONFIGINDADDR         0x0120
-+#define BCMA_CORE_PCIE2_CONFIGINDDATA         0x0124
-+#define BCMA_CORE_PCIE2_MDIOCONTROL           0x0128
-+#define BCMA_CORE_PCIE2_MDIOWRDATA            0x012C
-+#define BCMA_CORE_PCIE2_MDIORDDATA            0x0130
-+#define BCMA_CORE_PCIE2_DATAINTF              0x0180
-+#define BCMA_CORE_PCIE2_D2H_INTRLAZY_0                0x0188
-+#define BCMA_CORE_PCIE2_H2D_INTRLAZY_0                0x018c
-+#define BCMA_CORE_PCIE2_H2D_INTSTAT_0         0x0190
-+#define BCMA_CORE_PCIE2_H2D_INTMASK_0         0x0194
-+#define BCMA_CORE_PCIE2_D2H_INTSTAT_0         0x0198
-+#define BCMA_CORE_PCIE2_D2H_INTMASK_0         0x019c
-+#define BCMA_CORE_PCIE2_LTR_STATE             0x01A0 /* Latency Tolerance Reporting */
-+#define  PCIE2_LTR_ACTIVE                     2
-+#define  PCIE2_LTR_ACTIVE_IDLE                        1
-+#define  PCIE2_LTR_SLEEP                      0
-+#define  PCIE2_LTR_FINAL_MASK                 0x300
-+#define  PCIE2_LTR_FINAL_SHIFT                        8
-+#define BCMA_CORE_PCIE2_PWR_INT_STATUS                0x01A4
-+#define BCMA_CORE_PCIE2_PWR_INT_MASK          0x01A8
-+#define BCMA_CORE_PCIE2_CFG_ADDR              0x01F8
-+#define BCMA_CORE_PCIE2_CFG_DATA              0x01FC
-+#define BCMA_CORE_PCIE2_SYS_EQ_PAGE           0x0200
-+#define BCMA_CORE_PCIE2_SYS_MSI_PAGE          0x0204
-+#define BCMA_CORE_PCIE2_SYS_MSI_INTREN                0x0208
-+#define BCMA_CORE_PCIE2_SYS_MSI_CTRL0         0x0210
-+#define BCMA_CORE_PCIE2_SYS_MSI_CTRL1         0x0214
-+#define BCMA_CORE_PCIE2_SYS_MSI_CTRL2         0x0218
-+#define BCMA_CORE_PCIE2_SYS_MSI_CTRL3         0x021C
-+#define BCMA_CORE_PCIE2_SYS_MSI_CTRL4         0x0220
-+#define BCMA_CORE_PCIE2_SYS_MSI_CTRL5         0x0224
-+#define BCMA_CORE_PCIE2_SYS_EQ_HEAD0          0x0250
-+#define BCMA_CORE_PCIE2_SYS_EQ_TAIL0          0x0254
-+#define BCMA_CORE_PCIE2_SYS_EQ_HEAD1          0x0258
-+#define BCMA_CORE_PCIE2_SYS_EQ_TAIL1          0x025C
-+#define BCMA_CORE_PCIE2_SYS_EQ_HEAD2          0x0260
-+#define BCMA_CORE_PCIE2_SYS_EQ_TAIL2          0x0264
-+#define BCMA_CORE_PCIE2_SYS_EQ_HEAD3          0x0268
-+#define BCMA_CORE_PCIE2_SYS_EQ_TAIL3          0x026C
-+#define BCMA_CORE_PCIE2_SYS_EQ_HEAD4          0x0270
-+#define BCMA_CORE_PCIE2_SYS_EQ_TAIL4          0x0274
-+#define BCMA_CORE_PCIE2_SYS_EQ_HEAD5          0x0278
-+#define BCMA_CORE_PCIE2_SYS_EQ_TAIL5          0x027C
-+#define BCMA_CORE_PCIE2_SYS_RC_INTX_EN                0x0330
-+#define BCMA_CORE_PCIE2_SYS_RC_INTX_CSR               0x0334
-+#define BCMA_CORE_PCIE2_SYS_MSI_REQ           0x0340
-+#define BCMA_CORE_PCIE2_SYS_HOST_INTR_EN      0x0344
-+#define BCMA_CORE_PCIE2_SYS_HOST_INTR_CSR     0x0348
-+#define BCMA_CORE_PCIE2_SYS_HOST_INTR0                0x0350
-+#define BCMA_CORE_PCIE2_SYS_HOST_INTR1                0x0354
-+#define BCMA_CORE_PCIE2_SYS_HOST_INTR2                0x0358
-+#define BCMA_CORE_PCIE2_SYS_HOST_INTR3                0x035C
-+#define BCMA_CORE_PCIE2_SYS_EP_INT_EN0                0x0360
-+#define BCMA_CORE_PCIE2_SYS_EP_INT_EN1                0x0364
-+#define BCMA_CORE_PCIE2_SYS_EP_INT_CSR0               0x0370
-+#define BCMA_CORE_PCIE2_SYS_EP_INT_CSR1               0x0374
-+#define BCMA_CORE_PCIE2_SPROM(wordoffset)     (0x0800 + ((wordoffset) * 2))
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP0_0         0x0C00
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP0_1         0x0C04
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP0_2         0x0C08
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP0_3         0x0C0C
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP0_4         0x0C10
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP0_5         0x0C14
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP0_6         0x0C18
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP0_7         0x0C1C
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP0_0         0x0C20
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP0_1         0x0C24
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP0_2         0x0C28
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP0_3         0x0C2C
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP0_4         0x0C30
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP0_5         0x0C34
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP0_6         0x0C38
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP0_7         0x0C3C
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP1           0x0C80
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP1           0x0C88
-+#define BCMA_CORE_PCIE2_FUNC0_IMAP2           0x0CC0
-+#define BCMA_CORE_PCIE2_FUNC1_IMAP2           0x0CC8
-+#define BCMA_CORE_PCIE2_IARR0_LOWER           0x0D00
-+#define BCMA_CORE_PCIE2_IARR0_UPPER           0x0D04
-+#define BCMA_CORE_PCIE2_IARR1_LOWER           0x0D08
-+#define BCMA_CORE_PCIE2_IARR1_UPPER           0x0D0C
-+#define BCMA_CORE_PCIE2_IARR2_LOWER           0x0D10
-+#define BCMA_CORE_PCIE2_IARR2_UPPER           0x0D14
-+#define BCMA_CORE_PCIE2_OARR0                 0x0D20
-+#define BCMA_CORE_PCIE2_OARR1                 0x0D28
-+#define BCMA_CORE_PCIE2_OARR2                 0x0D30
-+#define BCMA_CORE_PCIE2_OMAP0_LOWER           0x0D40
-+#define BCMA_CORE_PCIE2_OMAP0_UPPER           0x0D44
-+#define BCMA_CORE_PCIE2_OMAP1_LOWER           0x0D48
-+#define BCMA_CORE_PCIE2_OMAP1_UPPER           0x0D4C
-+#define BCMA_CORE_PCIE2_OMAP2_LOWER           0x0D50
-+#define BCMA_CORE_PCIE2_OMAP2_UPPER           0x0D54
-+#define BCMA_CORE_PCIE2_FUNC1_IARR1_SIZE      0x0D58
-+#define BCMA_CORE_PCIE2_FUNC1_IARR2_SIZE      0x0D5C
-+#define BCMA_CORE_PCIE2_MEM_CONTROL           0x0F00
-+#define BCMA_CORE_PCIE2_MEM_ECC_ERRLOG0               0x0F04
-+#define BCMA_CORE_PCIE2_MEM_ECC_ERRLOG1               0x0F08
-+#define BCMA_CORE_PCIE2_LINK_STATUS           0x0F0C
-+#define BCMA_CORE_PCIE2_STRAP_STATUS          0x0F10
-+#define BCMA_CORE_PCIE2_RESET_STATUS          0x0F14
-+#define BCMA_CORE_PCIE2_RESETEN_IN_LINKDOWN   0x0F18
-+#define BCMA_CORE_PCIE2_MISC_INTR_EN          0x0F1C
-+#define BCMA_CORE_PCIE2_TX_DEBUG_CFG          0x0F20
-+#define BCMA_CORE_PCIE2_MISC_CONFIG           0x0F24
-+#define BCMA_CORE_PCIE2_MISC_STATUS           0x0F28
-+#define BCMA_CORE_PCIE2_INTR_EN                       0x0F30
-+#define BCMA_CORE_PCIE2_INTR_CLEAR            0x0F34
-+#define BCMA_CORE_PCIE2_INTR_STATUS           0x0F38
-+
-+/* PCIE gen2 config regs */
-+#define PCIE2_INTSTATUS                               0x090
-+#define PCIE2_INTMASK                         0x094
-+#define PCIE2_SBMBX                           0x098
-+
-+#define PCIE2_PMCR_REFUP                      0x1814 /* Trefup time */
-+
-+#define PCIE2_CAP_DEVSTSCTRL2_OFFSET          0xD4
-+#define PCIE2_CAP_DEVSTSCTRL2_LTRENAB         0x400
-+#define PCIE2_PVT_REG_PM_CLK_PERIOD           0x184c
-+
-+struct bcma_drv_pcie2 {
-+      struct bcma_device *core;
-+};
-+
-+#define pcie2_read16(pcie2, offset)           bcma_read16((pcie2)->core, offset)
-+#define pcie2_read32(pcie2, offset)           bcma_read32((pcie2)->core, offset)
-+#define pcie2_write16(pcie2, offset, val)     bcma_write16((pcie2)->core, offset, val)
-+#define pcie2_write32(pcie2, offset, val)     bcma_write32((pcie2)->core, offset, val)
-+
-+#define pcie2_set32(pcie2, offset, set)               bcma_set32((pcie2)->core, offset, set)
-+#define pcie2_mask32(pcie2, offset, mask)     bcma_mask32((pcie2)->core, offset, mask)
-+
-+void bcma_core_pcie2_init(struct bcma_drv_pcie2 *pcie2);
-+
-+#endif /* LINUX_BCMA_DRIVER_PCIE2_H_ */
---- a/drivers/bcma/scan.c
-+++ b/drivers/bcma/scan.c
-@@ -32,17 +32,17 @@ static const struct bcma_device_id_name
-       { BCMA_CORE_4706_CHIPCOMMON, "BCM4706 ChipCommon" },
-       { BCMA_CORE_4706_SOC_RAM, "BCM4706 SOC RAM" },
-       { BCMA_CORE_4706_MAC_GBIT, "BCM4706 GBit MAC" },
--      { BCMA_CORE_PCIEG2, "PCIe Gen 2" },
--      { BCMA_CORE_DMA, "DMA" },
--      { BCMA_CORE_SDIO3, "SDIO3" },
--      { BCMA_CORE_USB20, "USB 2.0" },
--      { BCMA_CORE_USB30, "USB 3.0" },
--      { BCMA_CORE_A9JTAG, "ARM Cortex A9 JTAG" },
--      { BCMA_CORE_DDR23, "Denali DDR2/DDR3 memory controller" },
--      { BCMA_CORE_ROM, "ROM" },
--      { BCMA_CORE_NAND, "NAND flash controller" },
--      { BCMA_CORE_QSPI, "SPI flash controller" },
--      { BCMA_CORE_CHIPCOMMON_B, "Chipcommon B" },
-+      { BCMA_CORE_NS_PCIEG2, "PCIe Gen 2" },
-+      { BCMA_CORE_NS_DMA, "DMA" },
-+      { BCMA_CORE_NS_SDIO3, "SDIO3" },
-+      { BCMA_CORE_NS_USB20, "USB 2.0" },
-+      { BCMA_CORE_NS_USB30, "USB 3.0" },
-+      { BCMA_CORE_NS_A9JTAG, "ARM Cortex A9 JTAG" },
-+      { BCMA_CORE_NS_DDR23, "Denali DDR2/DDR3 memory controller" },
-+      { BCMA_CORE_NS_ROM, "ROM" },
-+      { BCMA_CORE_NS_NAND, "NAND flash controller" },
-+      { BCMA_CORE_NS_QSPI, "SPI flash controller" },
-+      { BCMA_CORE_NS_CHIPCOMMON_B, "Chipcommon B" },
-       { BCMA_CORE_ARMCA9, "ARM Cortex A9 core (ihost)" },
-       { BCMA_CORE_AMEMC, "AMEMC (DDR)" },
-       { BCMA_CORE_ALTA, "ALTA (I2S)" },
-@@ -276,7 +276,7 @@ static int bcma_get_next_core(struct bcm
-                             struct bcma_device *core)
- {
-       u32 tmp;
--      u8 i, j;
-+      u8 i, j, k;
-       s32 cia, cib;
-       u8 ports[2], wrappers[2];
-@@ -314,6 +314,7 @@ static int bcma_get_next_core(struct bcm
-               /* Some specific cores don't need wrappers */
-               switch (core->id.id) {
-               case BCMA_CORE_4706_MAC_GBIT_COMMON:
-+              case BCMA_CORE_NS_CHIPCOMMON_B:
-               /* Not used yet: case BCMA_CORE_OOB_ROUTER: */
-                       break;
-               default:
-@@ -367,6 +368,7 @@ static int bcma_get_next_core(struct bcm
-       core->addr = tmp;
-       /* get & parse slave ports */
-+      k = 0;
-       for (i = 0; i < ports[1]; i++) {
-               for (j = 0; ; j++) {
-                       tmp = bcma_erom_get_addr_desc(bus, eromptr,
-@@ -376,9 +378,9 @@ static int bcma_get_next_core(struct bcm
-                               /* pr_debug("erom: slave port %d "
-                                * "has %d descriptors\n", i, j); */
-                               break;
--                      } else {
--                              if (i == 0 && j == 0)
--                                      core->addr1 = tmp;
-+                      } else if (k < ARRAY_SIZE(core->addr_s)) {
-+                              core->addr_s[k] = tmp;
-+                              k++;
-                       }
-               }
-       }
-@@ -421,10 +423,13 @@ static int bcma_get_next_core(struct bcm
-               core->io_addr = ioremap_nocache(core->addr, BCMA_CORE_SIZE);
-               if (!core->io_addr)
-                       return -ENOMEM;
--              core->io_wrap = ioremap_nocache(core->wrap, BCMA_CORE_SIZE);
--              if (!core->io_wrap) {
--                      iounmap(core->io_addr);
--                      return -ENOMEM;
-+              if (core->wrap) {
-+                      core->io_wrap = ioremap_nocache(core->wrap,
-+                                                      BCMA_CORE_SIZE);
-+                      if (!core->io_wrap) {
-+                              iounmap(core->io_addr);
-+                              return -ENOMEM;
-+                      }
-               }
-       }
-       return 0;
-@@ -434,9 +439,7 @@ void bcma_init_bus(struct bcma_bus *bus)
- {
-       s32 tmp;
-       struct bcma_chipinfo *chipinfo = &(bus->chipinfo);
--
--      if (bus->init_done)
--              return;
-+      char chip_id[8];
-       INIT_LIST_HEAD(&bus->cores);
-       bus->nr_cores = 0;
-@@ -447,10 +450,11 @@ void bcma_init_bus(struct bcma_bus *bus)
-       chipinfo->id = (tmp & BCMA_CC_ID_ID) >> BCMA_CC_ID_ID_SHIFT;
-       chipinfo->rev = (tmp & BCMA_CC_ID_REV) >> BCMA_CC_ID_REV_SHIFT;
-       chipinfo->pkg = (tmp & BCMA_CC_ID_PKG) >> BCMA_CC_ID_PKG_SHIFT;
--      bcma_info(bus, "Found chip with id 0x%04X, rev 0x%02X and package 0x%02X\n",
--                chipinfo->id, chipinfo->rev, chipinfo->pkg);
--      bus->init_done = true;
-+      snprintf(chip_id, ARRAY_SIZE(chip_id),
-+               (chipinfo->id > 0x9999) ? "%d" : "0x%04X", chipinfo->id);
-+      bcma_info(bus, "Found chip with id %s, rev 0x%02X and package 0x%02X\n",
-+                chip_id, chipinfo->rev, chipinfo->pkg);
- }
- int bcma_bus_scan(struct bcma_bus *bus)
-@@ -460,8 +464,6 @@ int bcma_bus_scan(struct bcma_bus *bus)
-       int err, core_num = 0;
--      bcma_init_bus(bus);
--
-       erombase = bcma_scan_read32(bus, 0, BCMA_CC_EROM);
-       if (bus->hosttype == BCMA_HOSTTYPE_SOC) {
-               eromptr = ioremap_nocache(erombase, BCMA_CORE_SIZE);
-@@ -503,6 +505,7 @@ int bcma_bus_scan(struct bcma_bus *bus)
-               bus->nr_cores++;
-               other_core = bcma_find_core_reverse(bus, core->id.id);
-               core->core_unit = (other_core == NULL) ? 0 : other_core->core_unit + 1;
-+              bcma_prepare_core(bus, core);
-               bcma_info(bus, "Core %d found: %s (manuf 0x%03X, id 0x%03X, rev 0x%02X, class 0x%X)\n",
-                         core->core_index, bcma_device_name(&core->id),
---- a/drivers/bcma/host_soc.c
-+++ b/drivers/bcma/host_soc.c
-@@ -7,6 +7,9 @@
- #include "bcma_private.h"
- #include "scan.h"
-+#include <linux/slab.h>
-+#include <linux/module.h>
-+#include <linux/of_address.h>
- #include <linux/bcma/bcma.h>
- #include <linux/bcma/bcma_soc.h>
-@@ -134,12 +137,16 @@ static void bcma_host_soc_block_write(st
- static u32 bcma_host_soc_aread32(struct bcma_device *core, u16 offset)
- {
-+      if (WARN_ONCE(!core->io_wrap, "Accessed core has no wrapper/agent\n"))
-+              return ~0;
-       return readl(core->io_wrap + offset);
- }
- static void bcma_host_soc_awrite32(struct bcma_device *core, u16 offset,
-                                 u32 value)
- {
-+      if (WARN_ONCE(!core->io_wrap, "Accessed core has no wrapper/agent\n"))
-+              return;
-       writel(value, core->io_wrap + offset);
- }
-@@ -161,7 +168,6 @@ static const struct bcma_host_ops bcma_h
- int __init bcma_host_soc_register(struct bcma_soc *soc)
- {
-       struct bcma_bus *bus = &soc->bus;
--      int err;
-       /* iomap only first core. We have to read some register on this core
-        * to scan the bus.
-@@ -173,11 +179,100 @@ int __init bcma_host_soc_register(struct
-       /* Host specific */
-       bus->hosttype = BCMA_HOSTTYPE_SOC;
-       bus->ops = &bcma_host_soc_ops;
-+      bus->host_pdev = NULL;
--      /* Register */
-+      /* Initialize struct, detect chip */
-+      bcma_init_bus(bus);
-+
-+      return 0;
-+}
-+
-+int __init bcma_host_soc_init(struct bcma_soc *soc)
-+{
-+      struct bcma_bus *bus = &soc->bus;
-+      int err;
-+
-+      /* Scan bus and initialize it */
-       err = bcma_bus_early_register(bus, &soc->core_cc, &soc->core_mips);
-       if (err)
-               iounmap(bus->mmio);
-       return err;
- }
-+
-+#ifdef CONFIG_OF
-+static int bcma_host_soc_probe(struct platform_device *pdev)
-+{
-+      struct device *dev = &pdev->dev;
-+      struct device_node *np = dev->of_node;
-+      struct bcma_bus *bus;
-+      int err;
-+
-+      /* Alloc */
-+      bus = devm_kzalloc(dev, sizeof(*bus), GFP_KERNEL);
-+      if (!bus)
-+              return -ENOMEM;
-+
-+      /* Map MMIO */
-+      bus->mmio = of_iomap(np, 0);
-+      if (!bus->mmio)
-+              return -ENOMEM;
-+
-+      /* Host specific */
-+      bus->hosttype = BCMA_HOSTTYPE_SOC;
-+      bus->ops = &bcma_host_soc_ops;
-+      bus->host_pdev = pdev;
-+
-+      /* Initialize struct, detect chip */
-+      bcma_init_bus(bus);
-+
-+      /* Register */
-+      err = bcma_bus_register(bus);
-+      if (err)
-+              goto err_unmap_mmio;
-+
-+      platform_set_drvdata(pdev, bus);
-+
-+      return err;
-+
-+err_unmap_mmio:
-+      iounmap(bus->mmio);
-+      return err;
-+}
-+
-+static int bcma_host_soc_remove(struct platform_device *pdev)
-+{
-+      struct bcma_bus *bus = platform_get_drvdata(pdev);
-+
-+      bcma_bus_unregister(bus);
-+      iounmap(bus->mmio);
-+      platform_set_drvdata(pdev, NULL);
-+
-+      return 0;
-+}
-+
-+static const struct of_device_id bcma_host_soc_of_match[] = {
-+      { .compatible = "brcm,bus-axi", },
-+      {},
-+};
-+MODULE_DEVICE_TABLE(of, bcma_host_soc_of_match);
-+
-+static struct platform_driver bcma_host_soc_driver = {
-+      .driver = {
-+              .name = "bcma-host-soc",
-+              .of_match_table = bcma_host_soc_of_match,
-+      },
-+      .probe          = bcma_host_soc_probe,
-+      .remove         = bcma_host_soc_remove,
-+};
-+
-+int __init bcma_host_soc_register_driver(void)
-+{
-+      return platform_driver_register(&bcma_host_soc_driver);
-+}
-+
-+void __exit bcma_host_soc_unregister_driver(void)
-+{
-+      platform_driver_unregister(&bcma_host_soc_driver);
-+}
-+#endif /* CONFIG_OF */
---- a/drivers/bcma/driver_mips.c
-+++ b/drivers/bcma/driver_mips.c
-@@ -21,6 +21,14 @@
- #include <linux/serial_reg.h>
- #include <linux/time.h>
-+enum bcma_boot_dev {
-+      BCMA_BOOT_DEV_UNK = 0,
-+      BCMA_BOOT_DEV_ROM,
-+      BCMA_BOOT_DEV_PARALLEL,
-+      BCMA_BOOT_DEV_SERIAL,
-+      BCMA_BOOT_DEV_NAND,
-+};
-+
- static const char * const part_probes[] = { "bcm47xxpart", NULL };
- static struct physmap_flash_data bcma_pflash_data = {
-@@ -107,7 +115,7 @@ static u32 bcma_core_mips_irqflag(struct
-  * If disabled, 5 is returned.
-  * If not supported, 6 is returned.
-  */
--static unsigned int bcma_core_mips_irq(struct bcma_device *dev)
-+unsigned int bcma_core_mips_irq(struct bcma_device *dev)
- {
-       struct bcma_device *mdev = dev->bus->drv_mips.core;
-       u32 irqflag;
-@@ -125,13 +133,6 @@ static unsigned int bcma_core_mips_irq(s
-       return 5;
- }
--unsigned int bcma_core_irq(struct bcma_device *dev)
--{
--      unsigned int mips_irq = bcma_core_mips_irq(dev);
--      return mips_irq <= 4 ? mips_irq + 2 : 0;
--}
--EXPORT_SYMBOL(bcma_core_irq);
--
- static void bcma_core_mips_set_irq(struct bcma_device *dev, unsigned int irq)
- {
-       unsigned int oldirq = bcma_core_mips_irq(dev);
-@@ -229,11 +230,51 @@ u32 bcma_cpu_clock(struct bcma_drv_mips
- }
- EXPORT_SYMBOL(bcma_cpu_clock);
-+static enum bcma_boot_dev bcma_boot_dev(struct bcma_bus *bus)
-+{
-+      struct bcma_drv_cc *cc = &bus->drv_cc;
-+      u8 cc_rev = cc->core->id.rev;
-+
-+      if (cc_rev == 42) {
-+              struct bcma_device *core;
-+
-+              core = bcma_find_core(bus, BCMA_CORE_NS_ROM);
-+              if (core) {
-+                      switch (bcma_aread32(core, BCMA_IOST) &
-+                              BCMA_NS_ROM_IOST_BOOT_DEV_MASK) {
-+                      case BCMA_NS_ROM_IOST_BOOT_DEV_NOR:
-+                              return BCMA_BOOT_DEV_SERIAL;
-+                      case BCMA_NS_ROM_IOST_BOOT_DEV_NAND:
-+                              return BCMA_BOOT_DEV_NAND;
-+                      case BCMA_NS_ROM_IOST_BOOT_DEV_ROM:
-+                      default:
-+                              return BCMA_BOOT_DEV_ROM;
-+                      }
-+              }
-+      } else {
-+              if (cc_rev == 38) {
-+                      if (cc->status & BCMA_CC_CHIPST_5357_NAND_BOOT)
-+                              return BCMA_BOOT_DEV_NAND;
-+                      else if (cc->status & BIT(5))
-+                              return BCMA_BOOT_DEV_ROM;
-+              }
-+
-+              if ((cc->capabilities & BCMA_CC_CAP_FLASHT) ==
-+                  BCMA_CC_FLASHT_PARA)
-+                      return BCMA_BOOT_DEV_PARALLEL;
-+              else
-+                      return BCMA_BOOT_DEV_SERIAL;
-+      }
-+
-+      return BCMA_BOOT_DEV_SERIAL;
-+}
-+
- static void bcma_core_mips_flash_detect(struct bcma_drv_mips *mcore)
- {
-       struct bcma_bus *bus = mcore->core->bus;
-       struct bcma_drv_cc *cc = &bus->drv_cc;
-       struct bcma_pflash *pflash = &cc->pflash;
-+      enum bcma_boot_dev boot_dev;
-       switch (cc->capabilities & BCMA_CC_CAP_FLASHT) {
-       case BCMA_CC_FLASHT_STSER:
-@@ -269,6 +310,20 @@ static void bcma_core_mips_flash_detect(
-                       bcma_nflash_init(cc);
-               }
-       }
-+
-+      /* Determine flash type this SoC boots from */
-+      boot_dev = bcma_boot_dev(bus);
-+      switch (boot_dev) {
-+      case BCMA_BOOT_DEV_PARALLEL:
-+      case BCMA_BOOT_DEV_SERIAL:
-+              /* TODO: Init NVRAM using BCMA_SOC_FLASH2 window */
-+              break;
-+      case BCMA_BOOT_DEV_NAND:
-+              /* TODO: Init NVRAM using BCMA_SOC_FLASH1 window */
-+              break;
-+      default:
-+              break;
-+      }
- }
- void bcma_core_mips_early_init(struct bcma_drv_mips *mcore)
-@@ -361,7 +416,7 @@ void bcma_core_mips_init(struct bcma_drv
-               break;
-       default:
-               list_for_each_entry(core, &bus->cores, list) {
--                      core->irq = bcma_core_irq(core);
-+                      core->irq = bcma_core_irq(core, 0);
-               }
-               bcma_err(bus,
-                        "Unknown device (0x%x) found, can not configure IRQs\n",
---- a/include/linux/bcma/bcma_regs.h
-+++ b/include/linux/bcma/bcma_regs.h
-@@ -39,6 +39,11 @@
- #define  BCMA_RESET_CTL_RESET         0x0001
- #define BCMA_RESET_ST                 0x0804
-+#define BCMA_NS_ROM_IOST_BOOT_DEV_MASK        0x0003
-+#define BCMA_NS_ROM_IOST_BOOT_DEV_NOR 0x0000
-+#define BCMA_NS_ROM_IOST_BOOT_DEV_NAND        0x0001
-+#define BCMA_NS_ROM_IOST_BOOT_DEV_ROM 0x0002
-+
- /* BCMA PCI config space registers. */
- #define BCMA_PCI_PMCSR                        0x44
- #define  BCMA_PCI_PE                  0x100
---- a/drivers/usb/host/bcma-hcd.c
-+++ b/drivers/usb/host/bcma-hcd.c
-@@ -237,7 +237,7 @@ static int bcma_hcd_probe(struct bcma_de
-       bcma_hcd_init_chip(dev);
-       /* In AI chips EHCI is addrspace 0, OHCI is 1 */
--      ohci_addr = dev->addr1;
-+      ohci_addr = dev->addr_s[0];
-       if ((chipinfo->id == 0x5357 || chipinfo->id == 0x4749)
-           && chipinfo->rev == 0)
-               ohci_addr = 0x18009000;
---- a/drivers/bcma/bcma_private.h
-+++ b/drivers/bcma/bcma_private.h
-@@ -24,6 +24,7 @@ struct bcma_bus;
- /* main.c */
- bool bcma_wait_value(struct bcma_device *core, u16 reg, u32 mask, u32 value,
-                    int timeout);
-+void bcma_prepare_core(struct bcma_bus *bus, struct bcma_device *core);
- int bcma_bus_register(struct bcma_bus *bus);
- void bcma_bus_unregister(struct bcma_bus *bus);
- int __init bcma_bus_early_register(struct bcma_bus *bus,
-@@ -50,6 +51,10 @@ void bcma_chipco_serial_init(struct bcma
- extern struct platform_device bcma_pflash_dev;
- #endif /* CONFIG_BCMA_DRIVER_MIPS */
-+/* driver_chipcommon_b.c */
-+int bcma_core_chipcommon_b_init(struct bcma_drv_cc_b *ccb);
-+void bcma_core_chipcommon_b_free(struct bcma_drv_cc_b *ccb);
-+
- /* driver_chipcommon_pmu.c */
- u32 bcma_pmu_get_alp_clock(struct bcma_drv_cc *cc);
- u32 bcma_pmu_get_cpu_clock(struct bcma_drv_cc *cc);
-@@ -84,6 +89,20 @@ extern int __init bcma_host_pci_init(voi
- extern void __exit bcma_host_pci_exit(void);
- #endif /* CONFIG_BCMA_HOST_PCI */
-+/* host_soc.c */
-+#if defined(CONFIG_BCMA_HOST_SOC) && defined(CONFIG_OF)
-+extern int __init bcma_host_soc_register_driver(void);
-+extern void __exit bcma_host_soc_unregister_driver(void);
-+#else
-+static inline int __init bcma_host_soc_register_driver(void)
-+{
-+      return 0;
-+}
-+static inline void __exit bcma_host_soc_unregister_driver(void)
-+{
-+}
-+#endif /* CONFIG_BCMA_HOST_SOC && CONFIG_OF */
-+
- /* driver_pci.c */
- u32 bcma_pcie_read(struct bcma_drv_pci *pc, u32 address);
---- /dev/null
-+++ b/drivers/bcma/driver_chipcommon_b.c
-@@ -0,0 +1,61 @@
-+/*
-+ * Broadcom specific AMBA
-+ * ChipCommon B Unit driver
-+ *
-+ * Copyright 2014, Hauke Mehrtens <hauke@hauke-m.de>
-+ *
-+ * Licensed under the GNU/GPL. See COPYING for details.
-+ */
-+
-+#include "bcma_private.h"
-+#include <linux/export.h>
-+#include <linux/bcma/bcma.h>
-+
-+static bool bcma_wait_reg(struct bcma_bus *bus, void __iomem *addr, u32 mask,
-+                        u32 value, int timeout)
-+{
-+      unsigned long deadline = jiffies + timeout;
-+      u32 val;
-+
-+      do {
-+              val = readl(addr);
-+              if ((val & mask) == value)
-+                      return true;
-+              cpu_relax();
-+              udelay(10);
-+      } while (!time_after_eq(jiffies, deadline));
-+
-+      bcma_err(bus, "Timeout waiting for register %p\n", addr);
-+
-+      return false;
-+}
-+
-+void bcma_chipco_b_mii_write(struct bcma_drv_cc_b *ccb, u32 offset, u32 value)
-+{
-+      struct bcma_bus *bus = ccb->core->bus;
-+
-+      writel(offset, ccb->mii + 0x00);
-+      bcma_wait_reg(bus, ccb->mii + 0x00, 0x0100, 0x0000, 100);
-+      writel(value, ccb->mii + 0x04);
-+      bcma_wait_reg(bus, ccb->mii + 0x00, 0x0100, 0x0000, 100);
-+}
-+EXPORT_SYMBOL_GPL(bcma_chipco_b_mii_write);
-+
-+int bcma_core_chipcommon_b_init(struct bcma_drv_cc_b *ccb)
-+{
-+      if (ccb->setup_done)
-+              return 0;
-+
-+      ccb->setup_done = 1;
-+      ccb->mii = ioremap_nocache(ccb->core->addr_s[1], BCMA_CORE_SIZE);
-+      if (!ccb->mii)
-+              return -ENOMEM;
-+
-+      return 0;
-+}
-+
-+void bcma_core_chipcommon_b_free(struct bcma_drv_cc_b *ccb)
-+{
-+      if (ccb->mii)
-+              iounmap(ccb->mii);
-+}
---- a/include/linux/bcma/bcma_driver_chipcommon.h
-+++ b/include/linux/bcma/bcma_driver_chipcommon.h
-@@ -644,6 +644,12 @@ struct bcma_drv_cc {
- #endif
- };
-+struct bcma_drv_cc_b {
-+      struct bcma_device *core;
-+      u8 setup_done:1;
-+      void __iomem *mii;
-+};
-+
- /* Register access */
- #define bcma_cc_read32(cc, offset) \
-       bcma_read32((cc)->core, offset)
-@@ -699,4 +705,6 @@ extern void bcma_pmu_spuravoid_pllupdate
- extern u32 bcma_pmu_get_bus_clock(struct bcma_drv_cc *cc);
-+void bcma_chipco_b_mii_write(struct bcma_drv_cc_b *ccb, u32 offset, u32 value);
-+
- #endif /* LINUX_BCMA_DRIVER_CC_H_ */
---- a/arch/mips/bcm47xx/setup.c
-+++ b/arch/mips/bcm47xx/setup.c
-@@ -202,6 +202,10 @@ static void __init bcm47xx_register_bcma
-       err = bcma_host_soc_register(&bcm47xx_bus.bcma);
-       if (err)
-+              panic("Failed to register BCMA bus (err %d)", err);
-+
-+      err = bcma_host_soc_init(&bcm47xx_bus.bcma);
-+      if (err)
-               panic("Failed to initialize BCMA bus (err %d)", err);
-       bcm47xx_fill_bcma_boardinfo(&bcm47xx_bus.bcma.bus.boardinfo, NULL);
---- a/include/linux/bcma/bcma_soc.h
-+++ b/include/linux/bcma/bcma_soc.h
-@@ -10,6 +10,7 @@ struct bcma_soc {
- };
- int __init bcma_host_soc_register(struct bcma_soc *soc);
-+int __init bcma_host_soc_init(struct bcma_soc *soc);
- int bcma_bus_register(struct bcma_bus *bus);
---- /dev/null
-+++ b/Documentation/devicetree/bindings/bus/bcma.txt
-@@ -0,0 +1,53 @@
-+Driver for ARM AXI Bus with Broadcom Plugins (bcma)
-+
-+Required properties:
-+
-+- compatible : brcm,bus-axi
-+
-+- reg : iomem address range of chipcommon core
-+
-+The cores on the AXI bus are automatically detected by bcma with the
-+memory ranges they are using and they get registered afterwards.
-+Automatic detection of the IRQ number is not working on
-+BCM47xx/BCM53xx ARM SoCs. To assign IRQ numbers to the cores, provide
-+them manually through device tree. Use an interrupt-map to specify the
-+IRQ used by the devices on the bus. The first address is just an index,
-+because we do not have any special register.
-+
-+The top-level axi bus may contain children representing attached cores
-+(devices). This is needed since some hardware details can't be auto
-+detected (e.g. IRQ numbers). Also some of the cores may be responsible
-+for extra things, e.g. ChipCommon providing access to the GPIO chip.
-+
-+Example:
-+
-+      axi@18000000 {
-+              compatible = "brcm,bus-axi";
-+              reg = <0x18000000 0x1000>;
-+              ranges = <0x00000000 0x18000000 0x00100000>;
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              #interrupt-cells = <1>;
-+              interrupt-map-mask = <0x000fffff 0xffff>;
-+              interrupt-map =
-+                      /* Ethernet Controller 0 */
-+                      <0x00024000 0 &gic GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
-+
-+                      /* Ethernet Controller 1 */
-+                      <0x00025000 0 &gic GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
-+
-+                      /* PCIe Controller 0 */
-+                      <0x00012000 0 &gic GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,
-+                      <0x00012000 1 &gic GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
-+                      <0x00012000 2 &gic GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>,
-+                      <0x00012000 3 &gic GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>,
-+                      <0x00012000 4 &gic GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
-+                      <0x00012000 5 &gic GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
-+
-+              chipcommon {
-+                      reg = <0x00000000 0x1000>;
-+
-+                      gpio-controller;
-+                      #gpio-cells = <2>;
-+              };
-+      };
diff --git a/target/linux/generic/patches-3.14/026-bcma-from-3.20.patch b/target/linux/generic/patches-3.14/026-bcma-from-3.20.patch
deleted file mode 100644 (file)
index 17c06b0..0000000
+++ /dev/null
@@ -1,527 +0,0 @@
---- a/drivers/bcma/bcma_private.h
-+++ b/drivers/bcma/bcma_private.h
-@@ -25,22 +25,18 @@ struct bcma_bus;
- bool bcma_wait_value(struct bcma_device *core, u16 reg, u32 mask, u32 value,
-                    int timeout);
- void bcma_prepare_core(struct bcma_bus *bus, struct bcma_device *core);
-+void bcma_init_bus(struct bcma_bus *bus);
- int bcma_bus_register(struct bcma_bus *bus);
- void bcma_bus_unregister(struct bcma_bus *bus);
--int __init bcma_bus_early_register(struct bcma_bus *bus,
--                                 struct bcma_device *core_cc,
--                                 struct bcma_device *core_mips);
-+int __init bcma_bus_early_register(struct bcma_bus *bus);
- #ifdef CONFIG_PM
- int bcma_bus_suspend(struct bcma_bus *bus);
- int bcma_bus_resume(struct bcma_bus *bus);
- #endif
- /* scan.c */
-+void bcma_detect_chip(struct bcma_bus *bus);
- int bcma_bus_scan(struct bcma_bus *bus);
--int __init bcma_bus_scan_early(struct bcma_bus *bus,
--                             struct bcma_device_id *match,
--                             struct bcma_device *core);
--void bcma_init_bus(struct bcma_bus *bus);
- /* sprom.c */
- int bcma_sprom_get(struct bcma_bus *bus);
-@@ -111,6 +107,14 @@ extern int bcma_chipco_watchdog_register
- #ifdef CONFIG_BCMA_DRIVER_PCI_HOSTMODE
- bool bcma_core_pci_is_in_hostmode(struct bcma_drv_pci *pc);
- void bcma_core_pci_hostmode_init(struct bcma_drv_pci *pc);
-+#else
-+static inline bool bcma_core_pci_is_in_hostmode(struct bcma_drv_pci *pc)
-+{
-+      return false;
-+}
-+static inline void bcma_core_pci_hostmode_init(struct bcma_drv_pci *pc)
-+{
-+}
- #endif /* CONFIG_BCMA_DRIVER_PCI_HOSTMODE */
- #ifdef CONFIG_BCMA_DRIVER_GPIO
---- a/drivers/bcma/driver_chipcommon.c
-+++ b/drivers/bcma/driver_chipcommon.c
-@@ -79,7 +79,9 @@ static int bcma_chipco_watchdog_ticks_pe
-       if (cc->capabilities & BCMA_CC_CAP_PMU) {
-               if (bus->chipinfo.id == BCMA_CHIP_ID_BCM4706)
--                      /* 4706 CC and PMU watchdogs are clocked at 1/4 of ALP clock */
-+                      /* 4706 CC and PMU watchdogs are clocked at 1/4 of ALP
-+                       * clock
-+                       */
-                       return bcma_chipco_get_alp_clock(cc) / 4000;
-               else
-                       /* based on 32KHz ILP clock */
-@@ -97,7 +99,8 @@ int bcma_chipco_watchdog_register(struct
-       wdt.driver_data = cc;
-       wdt.timer_set = bcma_chipco_watchdog_timer_set_wdt;
-       wdt.timer_set_ms = bcma_chipco_watchdog_timer_set_ms_wdt;
--      wdt.max_timer_ms = bcma_chipco_watchdog_get_max_timer(cc) / cc->ticks_per_ms;
-+      wdt.max_timer_ms =
-+              bcma_chipco_watchdog_get_max_timer(cc) / cc->ticks_per_ms;
-       pdev = platform_device_register_data(NULL, "bcm47xx-wdt",
-                                            cc->core->bus->num, &wdt,
-@@ -175,7 +178,6 @@ void bcma_core_chipcommon_init(struct bc
- u32 bcma_chipco_watchdog_timer_set(struct bcma_drv_cc *cc, u32 ticks)
- {
-       u32 maxt;
--      enum bcma_clkmode clkmode;
-       maxt = bcma_chipco_watchdog_get_max_timer(cc);
-       if (cc->capabilities & BCMA_CC_CAP_PMU) {
-@@ -185,8 +187,13 @@ u32 bcma_chipco_watchdog_timer_set(struc
-                       ticks = maxt;
-               bcma_cc_write32(cc, BCMA_CC_PMU_WATCHDOG, ticks);
-       } else {
--              clkmode = ticks ? BCMA_CLKMODE_FAST : BCMA_CLKMODE_DYNAMIC;
--              bcma_core_set_clockmode(cc->core, clkmode);
-+              struct bcma_bus *bus = cc->core->bus;
-+
-+              if (bus->chipinfo.id != BCMA_CHIP_ID_BCM4707 &&
-+                  bus->chipinfo.id != BCMA_CHIP_ID_BCM53018)
-+                      bcma_core_set_clockmode(cc->core,
-+                                              ticks ? BCMA_CLKMODE_FAST : BCMA_CLKMODE_DYNAMIC);
-+
-               if (ticks > maxt)
-                       ticks = maxt;
-               /* instant NMI */
-@@ -335,7 +342,8 @@ void bcma_chipco_serial_init(struct bcma
-                                      | BCMA_CC_CORECTL_UARTCLKEN);
-               }
-       } else {
--              bcma_err(cc->core->bus, "serial not supported on this device ccrev: 0x%x\n", ccrev);
-+              bcma_err(cc->core->bus, "serial not supported on this device ccrev: 0x%x\n",
-+                       ccrev);
-               return;
-       }
---- a/drivers/bcma/driver_pci.c
-+++ b/drivers/bcma/driver_pci.c
-@@ -145,6 +145,47 @@ static u16 bcma_pcie_mdio_writeread(stru
- }
- /**************************************************
-+ * Early init.
-+ **************************************************/
-+
-+static void bcma_core_pci_fixcfg(struct bcma_drv_pci *pc)
-+{
-+      struct bcma_device *core = pc->core;
-+      u16 val16, core_index;
-+      uint regoff;
-+
-+      regoff = BCMA_CORE_PCI_SPROM(BCMA_CORE_PCI_SPROM_PI_OFFSET);
-+      core_index = (u16)core->core_index;
-+
-+      val16 = pcicore_read16(pc, regoff);
-+      if (((val16 & BCMA_CORE_PCI_SPROM_PI_MASK) >> BCMA_CORE_PCI_SPROM_PI_SHIFT)
-+           != core_index) {
-+              val16 = (core_index << BCMA_CORE_PCI_SPROM_PI_SHIFT) |
-+                      (val16 & ~BCMA_CORE_PCI_SPROM_PI_MASK);
-+              pcicore_write16(pc, regoff, val16);
-+      }
-+}
-+
-+/*
-+ * Apply some early fixes required before accessing SPROM.
-+ * See also si_pci_fixcfg.
-+ */
-+void bcma_core_pci_early_init(struct bcma_drv_pci *pc)
-+{
-+      if (pc->early_setup_done)
-+              return;
-+
-+      pc->hostmode = bcma_core_pci_is_in_hostmode(pc);
-+      if (pc->hostmode)
-+              goto out;
-+
-+      bcma_core_pci_fixcfg(pc);
-+
-+out:
-+      pc->early_setup_done = true;
-+}
-+
-+/**************************************************
-  * Workarounds.
-  **************************************************/
-@@ -175,24 +216,6 @@ static void bcma_pcicore_serdes_workarou
-                                    tmp & ~BCMA_CORE_PCI_PLL_CTRL_FREQDET_EN);
- }
--static void bcma_core_pci_fixcfg(struct bcma_drv_pci *pc)
--{
--      struct bcma_device *core = pc->core;
--      u16 val16, core_index;
--      uint regoff;
--
--      regoff = BCMA_CORE_PCI_SPROM(BCMA_CORE_PCI_SPROM_PI_OFFSET);
--      core_index = (u16)core->core_index;
--
--      val16 = pcicore_read16(pc, regoff);
--      if (((val16 & BCMA_CORE_PCI_SPROM_PI_MASK) >> BCMA_CORE_PCI_SPROM_PI_SHIFT)
--           != core_index) {
--              val16 = (core_index << BCMA_CORE_PCI_SPROM_PI_SHIFT) |
--                      (val16 & ~BCMA_CORE_PCI_SPROM_PI_MASK);
--              pcicore_write16(pc, regoff, val16);
--      }
--}
--
- /* Fix MISC config to allow coming out of L2/L3-Ready state w/o PRST */
- /* Needs to happen when coming out of 'standby'/'hibernate' */
- static void bcma_core_pci_config_fixup(struct bcma_drv_pci *pc)
-@@ -216,7 +239,6 @@ static void bcma_core_pci_config_fixup(s
- static void bcma_core_pci_clientmode_init(struct bcma_drv_pci *pc)
- {
--      bcma_core_pci_fixcfg(pc);
-       bcma_pcicore_serdes_workaround(pc);
-       bcma_core_pci_config_fixup(pc);
- }
-@@ -226,13 +248,11 @@ void bcma_core_pci_init(struct bcma_drv_
-       if (pc->setup_done)
-               return;
--#ifdef CONFIG_BCMA_DRIVER_PCI_HOSTMODE
--      pc->hostmode = bcma_core_pci_is_in_hostmode(pc);
-+      bcma_core_pci_early_init(pc);
-+
-       if (pc->hostmode)
-               bcma_core_pci_hostmode_init(pc);
--#endif /* CONFIG_BCMA_DRIVER_PCI_HOSTMODE */
--
--      if (!pc->hostmode)
-+      else
-               bcma_core_pci_clientmode_init(pc);
- }
---- a/drivers/bcma/host_pci.c
-+++ b/drivers/bcma/host_pci.c
-@@ -13,10 +13,12 @@
- static void bcma_host_pci_switch_core(struct bcma_device *core)
- {
-+      int win2 = core->bus->host_is_pcie2 ?
-+              BCMA_PCIE2_BAR0_WIN2 : BCMA_PCI_BAR0_WIN2;
-+
-       pci_write_config_dword(core->bus->host_pci, BCMA_PCI_BAR0_WIN,
-                              core->addr);
--      pci_write_config_dword(core->bus->host_pci, BCMA_PCI_BAR0_WIN2,
--                             core->wrap);
-+      pci_write_config_dword(core->bus->host_pci, win2, core->wrap);
-       core->bus->mapped_core = core;
-       bcma_debug(core->bus, "Switched to core: 0x%X\n", core->id.id);
- }
---- a/drivers/bcma/host_soc.c
-+++ b/drivers/bcma/host_soc.c
-@@ -193,7 +193,7 @@ int __init bcma_host_soc_init(struct bcm
-       int err;
-       /* Scan bus and initialize it */
--      err = bcma_bus_early_register(bus, &soc->core_cc, &soc->core_mips);
-+      err = bcma_bus_early_register(bus);
-       if (err)
-               iounmap(bus->mmio);
---- a/drivers/bcma/main.c
-+++ b/drivers/bcma/main.c
-@@ -268,6 +268,18 @@ void bcma_prepare_core(struct bcma_bus *
-       }
- }
-+void bcma_init_bus(struct bcma_bus *bus)
-+{
-+      mutex_lock(&bcma_buses_mutex);
-+      bus->num = bcma_bus_next_num++;
-+      mutex_unlock(&bcma_buses_mutex);
-+
-+      INIT_LIST_HEAD(&bus->cores);
-+      bus->nr_cores = 0;
-+
-+      bcma_detect_chip(bus);
-+}
-+
- static void bcma_register_core(struct bcma_bus *bus, struct bcma_device *core)
- {
-       int err;
-@@ -356,12 +368,19 @@ static void bcma_unregister_cores(struct
-       struct bcma_device *core, *tmp;
-       list_for_each_entry_safe(core, tmp, &bus->cores, list) {
-+              if (!core->dev_registered)
-+                      continue;
-               list_del(&core->list);
--              if (core->dev_registered)
--                      device_unregister(&core->dev);
-+              device_unregister(&core->dev);
-       }
-       if (bus->hosttype == BCMA_HOSTTYPE_SOC)
-               platform_device_unregister(bus->drv_cc.watchdog);
-+
-+      /* Now noone uses internally-handled cores, we can free them */
-+      list_for_each_entry_safe(core, tmp, &bus->cores, list) {
-+              list_del(&core->list);
-+              kfree(core);
-+      }
- }
- int bcma_bus_register(struct bcma_bus *bus)
-@@ -369,10 +388,6 @@ int bcma_bus_register(struct bcma_bus *b
-       int err;
-       struct bcma_device *core;
--      mutex_lock(&bcma_buses_mutex);
--      bus->num = bcma_bus_next_num++;
--      mutex_unlock(&bcma_buses_mutex);
--
-       /* Scan for devices (cores) */
-       err = bcma_bus_scan(bus);
-       if (err) {
-@@ -387,6 +402,13 @@ int bcma_bus_register(struct bcma_bus *b
-               bcma_core_chipcommon_early_init(&bus->drv_cc);
-       }
-+      /* Early init PCIE core */
-+      core = bcma_find_core(bus, BCMA_CORE_PCIE);
-+      if (core) {
-+              bus->drv_pci[0].core = core;
-+              bcma_core_pci_early_init(&bus->drv_pci[0]);
-+      }
-+
-       /* Cores providing flash access go before SPROM init */
-       list_for_each_entry(core, &bus->cores, list) {
-               if (bcma_is_core_needed_early(core->id.id))
-@@ -459,7 +481,6 @@ int bcma_bus_register(struct bcma_bus *b
- void bcma_bus_unregister(struct bcma_bus *bus)
- {
--      struct bcma_device *cores[3];
-       int err;
-       err = bcma_gpio_unregister(&bus->drv_cc);
-@@ -470,46 +491,23 @@ void bcma_bus_unregister(struct bcma_bus
-       bcma_core_chipcommon_b_free(&bus->drv_cc_b);
--      cores[0] = bcma_find_core(bus, BCMA_CORE_MIPS_74K);
--      cores[1] = bcma_find_core(bus, BCMA_CORE_PCIE);
--      cores[2] = bcma_find_core(bus, BCMA_CORE_4706_MAC_GBIT_COMMON);
--
-       bcma_unregister_cores(bus);
--
--      kfree(cores[2]);
--      kfree(cores[1]);
--      kfree(cores[0]);
- }
--int __init bcma_bus_early_register(struct bcma_bus *bus,
--                                 struct bcma_device *core_cc,
--                                 struct bcma_device *core_mips)
-+/*
-+ * This is a special version of bus registration function designed for SoCs.
-+ * It scans bus and performs basic initialization of main cores only.
-+ * Please note it requires memory allocation, however it won't try to sleep.
-+ */
-+int __init bcma_bus_early_register(struct bcma_bus *bus)
- {
-       int err;
-       struct bcma_device *core;
--      struct bcma_device_id match;
--
--      match.manuf = BCMA_MANUF_BCM;
--      match.id = bcma_cc_core_id(bus);
--      match.class = BCMA_CL_SIM;
--      match.rev = BCMA_ANY_REV;
--      /* Scan for chip common core */
--      err = bcma_bus_scan_early(bus, &match, core_cc);
--      if (err) {
--              bcma_err(bus, "Failed to scan for common core: %d\n", err);
--              return -1;
--      }
--
--      match.manuf = BCMA_MANUF_MIPS;
--      match.id = BCMA_CORE_MIPS_74K;
--      match.class = BCMA_CL_SIM;
--      match.rev = BCMA_ANY_REV;
--
--      /* Scan for mips core */
--      err = bcma_bus_scan_early(bus, &match, core_mips);
-+      /* Scan for devices (cores) */
-+      err = bcma_bus_scan(bus);
-       if (err) {
--              bcma_err(bus, "Failed to scan for mips core: %d\n", err);
-+              bcma_err(bus, "Failed to scan bus: %d\n", err);
-               return -1;
-       }
---- a/drivers/bcma/scan.c
-+++ b/drivers/bcma/scan.c
-@@ -435,15 +435,12 @@ static int bcma_get_next_core(struct bcm
-       return 0;
- }
--void bcma_init_bus(struct bcma_bus *bus)
-+void bcma_detect_chip(struct bcma_bus *bus)
- {
-       s32 tmp;
-       struct bcma_chipinfo *chipinfo = &(bus->chipinfo);
-       char chip_id[8];
--      INIT_LIST_HEAD(&bus->cores);
--      bus->nr_cores = 0;
--
-       bcma_scan_switch_core(bus, BCMA_ADDR_BASE);
-       tmp = bcma_scan_read32(bus, 0, BCMA_CC_ID);
-@@ -464,6 +461,10 @@ int bcma_bus_scan(struct bcma_bus *bus)
-       int err, core_num = 0;
-+      /* Skip if bus was already scanned (e.g. during early register) */
-+      if (bus->nr_cores)
-+              return 0;
-+
-       erombase = bcma_scan_read32(bus, 0, BCMA_CC_EROM);
-       if (bus->hosttype == BCMA_HOSTTYPE_SOC) {
-               eromptr = ioremap_nocache(erombase, BCMA_CORE_SIZE);
-@@ -519,64 +520,6 @@ int bcma_bus_scan(struct bcma_bus *bus)
- out:
-       if (bus->hosttype == BCMA_HOSTTYPE_SOC)
-               iounmap(eromptr);
--
--      return err;
--}
--
--int __init bcma_bus_scan_early(struct bcma_bus *bus,
--                             struct bcma_device_id *match,
--                             struct bcma_device *core)
--{
--      u32 erombase;
--      u32 __iomem *eromptr, *eromend;
--
--      int err = -ENODEV;
--      int core_num = 0;
--
--      erombase = bcma_scan_read32(bus, 0, BCMA_CC_EROM);
--      if (bus->hosttype == BCMA_HOSTTYPE_SOC) {
--              eromptr = ioremap_nocache(erombase, BCMA_CORE_SIZE);
--              if (!eromptr)
--                      return -ENOMEM;
--      } else {
--              eromptr = bus->mmio;
--      }
--
--      eromend = eromptr + BCMA_CORE_SIZE / sizeof(u32);
--
--      bcma_scan_switch_core(bus, erombase);
--
--      while (eromptr < eromend) {
--              memset(core, 0, sizeof(*core));
--              INIT_LIST_HEAD(&core->list);
--              core->bus = bus;
--
--              err = bcma_get_next_core(bus, &eromptr, match, core_num, core);
--              if (err == -ENODEV) {
--                      core_num++;
--                      continue;
--              } else if (err == -ENXIO)
--                      continue;
--              else if (err == -ESPIPE)
--                      break;
--              else if (err < 0)
--                      goto out;
--
--              core->core_index = core_num++;
--              bus->nr_cores++;
--              bcma_info(bus, "Core %d found: %s (manuf 0x%03X, id 0x%03X, rev 0x%02X, class 0x%X)\n",
--                        core->core_index, bcma_device_name(&core->id),
--                        core->id.manuf, core->id.id, core->id.rev,
--                        core->id.class);
--
--              list_add_tail(&core->list, &bus->cores);
--              err = 0;
--              break;
--      }
--
--out:
--      if (bus->hosttype == BCMA_HOSTTYPE_SOC)
--              iounmap(eromptr);
-       return err;
- }
---- a/drivers/bcma/sprom.c
-+++ b/drivers/bcma/sprom.c
-@@ -579,7 +579,8 @@ int bcma_sprom_get(struct bcma_bus *bus)
-       u16 offset = BCMA_CC_SPROM;
-       u16 *sprom;
-       size_t sprom_sizes[] = { SSB_SPROMSIZE_WORDS_R4,
--                               SSB_SPROMSIZE_WORDS_R10, };
-+                               SSB_SPROMSIZE_WORDS_R10,
-+                               SSB_SPROMSIZE_WORDS_R11, };
-       int i, err = 0;
-       if (!bus->drv_cc.core)
---- a/include/linux/bcma/bcma.h
-+++ b/include/linux/bcma/bcma.h
-@@ -318,6 +318,7 @@ struct bcma_bus {
-       const struct bcma_host_ops *ops;
-       enum bcma_hosttype hosttype;
-+      bool host_is_pcie2; /* Used for BCMA_HOSTTYPE_PCI only */
-       union {
-               /* Pointer to the PCI bus (only for BCMA_HOSTTYPE_PCI) */
-               struct pci_dev *host_pci;
---- a/include/linux/bcma/bcma_driver_pci.h
-+++ b/include/linux/bcma/bcma_driver_pci.h
-@@ -223,6 +223,7 @@ struct bcma_drv_pci_host {
- struct bcma_drv_pci {
-       struct bcma_device *core;
-+      u8 early_setup_done:1;
-       u8 setup_done:1;
-       u8 hostmode:1;
-@@ -237,6 +238,7 @@ struct bcma_drv_pci {
- #define pcicore_write16(pc, offset, val)      bcma_write16((pc)->core, offset, val)
- #define pcicore_write32(pc, offset, val)      bcma_write32((pc)->core, offset, val)
-+extern void bcma_core_pci_early_init(struct bcma_drv_pci *pc);
- extern void bcma_core_pci_init(struct bcma_drv_pci *pc);
- extern int bcma_core_pci_irq_ctl(struct bcma_drv_pci *pc,
-                                struct bcma_device *core, bool enable);
---- a/include/linux/bcma/bcma_regs.h
-+++ b/include/linux/bcma/bcma_regs.h
-@@ -64,6 +64,8 @@
- #define  BCMA_PCI_GPIO_XTAL           0x40    /* PCI config space GPIO 14 for Xtal powerup */
- #define  BCMA_PCI_GPIO_PLL            0x80    /* PCI config space GPIO 15 for PLL powerdown */
-+#define BCMA_PCIE2_BAR0_WIN2          0x70
-+
- /* SiliconBackplane Address Map.
-  * All regions may not exist on all chips.
-  */
---- a/include/linux/bcma/bcma_soc.h
-+++ b/include/linux/bcma/bcma_soc.h
-@@ -5,8 +5,6 @@
- struct bcma_soc {
-       struct bcma_bus bus;
--      struct bcma_device core_cc;
--      struct bcma_device core_mips;
- };
- int __init bcma_host_soc_register(struct bcma_soc *soc);
---- a/include/linux/ssb/ssb_regs.h
-+++ b/include/linux/ssb/ssb_regs.h
-@@ -173,6 +173,7 @@
- #define SSB_SPROMSIZE_BYTES_R123      (SSB_SPROMSIZE_WORDS_R123 * sizeof(u16))
- #define SSB_SPROMSIZE_BYTES_R4                (SSB_SPROMSIZE_WORDS_R4 * sizeof(u16))
- #define SSB_SPROMSIZE_WORDS_R10               230
-+#define SSB_SPROMSIZE_WORDS_R11               234
- #define SSB_SPROM_BASE1                       0x1000
- #define SSB_SPROM_BASE31              0x0800
- #define SSB_SPROM_REVISION            0x007E
diff --git a/target/linux/generic/patches-3.14/027-bcma-from-4.1.patch b/target/linux/generic/patches-3.14/027-bcma-from-4.1.patch
deleted file mode 100644 (file)
index 3ae787e..0000000
+++ /dev/null
@@ -1,355 +0,0 @@
---- a/drivers/bcma/bcma_private.h
-+++ b/drivers/bcma/bcma_private.h
-@@ -26,6 +26,7 @@ bool bcma_wait_value(struct bcma_device
-                    int timeout);
- void bcma_prepare_core(struct bcma_bus *bus, struct bcma_device *core);
- void bcma_init_bus(struct bcma_bus *bus);
-+void bcma_unregister_cores(struct bcma_bus *bus);
- int bcma_bus_register(struct bcma_bus *bus);
- void bcma_bus_unregister(struct bcma_bus *bus);
- int __init bcma_bus_early_register(struct bcma_bus *bus);
-@@ -101,6 +102,11 @@ static inline void __exit bcma_host_soc_
- /* driver_pci.c */
- u32 bcma_pcie_read(struct bcma_drv_pci *pc, u32 address);
-+void bcma_core_pci_up(struct bcma_drv_pci *pc);
-+void bcma_core_pci_down(struct bcma_drv_pci *pc);
-+
-+/* driver_pcie2.c */
-+void bcma_core_pcie2_up(struct bcma_drv_pcie2 *pcie2);
- extern int bcma_chipco_watchdog_register(struct bcma_drv_cc *cc);
---- a/drivers/bcma/driver_gpio.c
-+++ b/drivers/bcma/driver_gpio.c
-@@ -76,7 +76,7 @@ static void bcma_gpio_free(struct gpio_c
-       bcma_chipco_gpio_pullup(cc, 1 << gpio, 0);
- }
--#if IS_BUILTIN(CONFIG_BCM47XX)
-+#if IS_BUILTIN(CONFIG_BCM47XX) || IS_BUILTIN(CONFIG_ARCH_BCM_5301X)
- static int bcma_gpio_to_irq(struct gpio_chip *chip, unsigned gpio)
- {
-       struct bcma_drv_cc *cc = bcma_gpio_get_cc(chip);
-@@ -215,7 +215,7 @@ int bcma_gpio_init(struct bcma_drv_cc *c
-       chip->set               = bcma_gpio_set_value;
-       chip->direction_input   = bcma_gpio_direction_input;
-       chip->direction_output  = bcma_gpio_direction_output;
--#if IS_BUILTIN(CONFIG_BCM47XX)
-+#if IS_BUILTIN(CONFIG_BCM47XX) || IS_BUILTIN(CONFIG_ARCH_BCM_5301X)
-       chip->to_irq            = bcma_gpio_to_irq;
- #endif
- #if IS_BUILTIN(CONFIG_OF)
---- a/drivers/bcma/driver_pci.c
-+++ b/drivers/bcma/driver_pci.c
-@@ -282,21 +282,21 @@ void bcma_core_pci_power_save(struct bcm
- }
- EXPORT_SYMBOL_GPL(bcma_core_pci_power_save);
--int bcma_core_pci_irq_ctl(struct bcma_drv_pci *pc, struct bcma_device *core,
-+int bcma_core_pci_irq_ctl(struct bcma_bus *bus, struct bcma_device *core,
-                         bool enable)
- {
-       struct pci_dev *pdev;
-       u32 coremask, tmp;
-       int err = 0;
--      if (!pc || core->bus->hosttype != BCMA_HOSTTYPE_PCI) {
-+      if (bus->hosttype != BCMA_HOSTTYPE_PCI) {
-               /* This bcma device is not on a PCI host-bus. So the IRQs are
-                * not routed through the PCI core.
-                * So we must not enable routing through the PCI core. */
-               goto out;
-       }
--      pdev = pc->core->bus->host_pci;
-+      pdev = bus->host_pci;
-       err = pci_read_config_dword(pdev, BCMA_PCI_IRQMASK, &tmp);
-       if (err)
-@@ -328,28 +328,12 @@ static void bcma_core_pci_extend_L1timer
-       bcma_pcie_read(pc, BCMA_CORE_PCI_DLLP_PMTHRESHREG);
- }
--void bcma_core_pci_up(struct bcma_bus *bus)
-+void bcma_core_pci_up(struct bcma_drv_pci *pc)
- {
--      struct bcma_drv_pci *pc;
--
--      if (bus->hosttype != BCMA_HOSTTYPE_PCI)
--              return;
--
--      pc = &bus->drv_pci[0];
--
-       bcma_core_pci_extend_L1timer(pc, true);
- }
--EXPORT_SYMBOL_GPL(bcma_core_pci_up);
--void bcma_core_pci_down(struct bcma_bus *bus)
-+void bcma_core_pci_down(struct bcma_drv_pci *pc)
- {
--      struct bcma_drv_pci *pc;
--
--      if (bus->hosttype != BCMA_HOSTTYPE_PCI)
--              return;
--
--      pc = &bus->drv_pci[0];
--
-       bcma_core_pci_extend_L1timer(pc, false);
- }
--EXPORT_SYMBOL_GPL(bcma_core_pci_down);
---- a/drivers/bcma/driver_pci_host.c
-+++ b/drivers/bcma/driver_pci_host.c
-@@ -11,6 +11,7 @@
- #include "bcma_private.h"
- #include <linux/pci.h>
-+#include <linux/slab.h>
- #include <linux/export.h>
- #include <linux/bcma/bcma.h>
- #include <asm/paccess.h>
---- a/drivers/bcma/driver_pcie2.c
-+++ b/drivers/bcma/driver_pcie2.c
-@@ -10,6 +10,7 @@
- #include "bcma_private.h"
- #include <linux/bcma/bcma.h>
-+#include <linux/pci.h>
- /**************************************************
-  * R/W ops.
-@@ -156,14 +157,23 @@ static void pciedev_reg_pm_clk_period(st
- void bcma_core_pcie2_init(struct bcma_drv_pcie2 *pcie2)
- {
--      struct bcma_chipinfo *ci = &pcie2->core->bus->chipinfo;
-+      struct bcma_bus *bus = pcie2->core->bus;
-+      struct bcma_chipinfo *ci = &bus->chipinfo;
-       u32 tmp;
-       tmp = pcie2_read32(pcie2, BCMA_CORE_PCIE2_SPROM(54));
-       if ((tmp & 0xe) >> 1 == 2)
-               bcma_core_pcie2_cfg_write(pcie2, 0x4e0, 0x17);
--      /* TODO: Do we need pcie_reqsize? */
-+      switch (bus->chipinfo.id) {
-+      case BCMA_CHIP_ID_BCM4360:
-+      case BCMA_CHIP_ID_BCM4352:
-+              pcie2->reqsize = 1024;
-+              break;
-+      default:
-+              pcie2->reqsize = 128;
-+              break;
-+      }
-       if (ci->id == BCMA_CHIP_ID_BCM4360 && ci->rev > 3)
-               bcma_core_pcie2_war_delay_perst_enab(pcie2, true);
-@@ -173,3 +183,18 @@ void bcma_core_pcie2_init(struct bcma_dr
-       pciedev_crwlpciegen2_180(pcie2);
-       pciedev_crwlpciegen2_182(pcie2);
- }
-+
-+/**************************************************
-+ * Runtime ops.
-+ **************************************************/
-+
-+void bcma_core_pcie2_up(struct bcma_drv_pcie2 *pcie2)
-+{
-+      struct bcma_bus *bus = pcie2->core->bus;
-+      struct pci_dev *dev = bus->host_pci;
-+      int err;
-+
-+      err = pcie_set_readrq(dev, pcie2->reqsize);
-+      if (err)
-+              bcma_err(bus, "Error setting PCI_EXP_DEVCTL_READRQ: %d\n", err);
-+}
---- a/drivers/bcma/host_pci.c
-+++ b/drivers/bcma/host_pci.c
-@@ -213,16 +213,26 @@ static int bcma_host_pci_probe(struct pc
-       /* Initialize struct, detect chip */
-       bcma_init_bus(bus);
-+      /* Scan bus to find out generation of PCIe core */
-+      err = bcma_bus_scan(bus);
-+      if (err)
-+              goto err_pci_unmap_mmio;
-+
-+      if (bcma_find_core(bus, BCMA_CORE_PCIE2))
-+              bus->host_is_pcie2 = true;
-+
-       /* Register */
-       err = bcma_bus_register(bus);
-       if (err)
--              goto err_pci_unmap_mmio;
-+              goto err_unregister_cores;
-       pci_set_drvdata(dev, bus);
- out:
-       return err;
-+err_unregister_cores:
-+      bcma_unregister_cores(bus);
- err_pci_unmap_mmio:
-       pci_iounmap(dev, bus->mmio);
- err_pci_release_regions:
-@@ -283,9 +293,12 @@ static const struct pci_device_id bcma_p
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4357) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4358) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4359) },
-+      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4360) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4365) },
-+      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x43a0) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x43a9) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x43aa) },
-+      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x43b1) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4727) },
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 43227) },  /* 0xa8db, BCM43217 (sic!) */
-       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 43228) },  /* 0xa8dc */
-@@ -310,3 +323,31 @@ void __exit bcma_host_pci_exit(void)
- {
-       pci_unregister_driver(&bcma_pci_bridge_driver);
- }
-+
-+/**************************************************
-+ * Runtime ops for drivers.
-+ **************************************************/
-+
-+/* See also pcicore_up */
-+void bcma_host_pci_up(struct bcma_bus *bus)
-+{
-+      if (bus->hosttype != BCMA_HOSTTYPE_PCI)
-+              return;
-+
-+      if (bus->host_is_pcie2)
-+              bcma_core_pcie2_up(&bus->drv_pcie2);
-+      else
-+              bcma_core_pci_up(&bus->drv_pci[0]);
-+}
-+EXPORT_SYMBOL_GPL(bcma_host_pci_up);
-+
-+/* See also pcicore_down */
-+void bcma_host_pci_down(struct bcma_bus *bus)
-+{
-+      if (bus->hosttype != BCMA_HOSTTYPE_PCI)
-+              return;
-+
-+      if (!bus->host_is_pcie2)
-+              bcma_core_pci_down(&bus->drv_pci[0]);
-+}
-+EXPORT_SYMBOL_GPL(bcma_host_pci_down);
---- a/drivers/bcma/main.c
-+++ b/drivers/bcma/main.c
-@@ -363,7 +363,7 @@ static int bcma_register_devices(struct
-       return 0;
- }
--static void bcma_unregister_cores(struct bcma_bus *bus)
-+void bcma_unregister_cores(struct bcma_bus *bus)
- {
-       struct bcma_device *core, *tmp;
---- a/drivers/net/wireless/b43/main.c
-+++ b/drivers/net/wireless/b43/main.c
-@@ -4650,7 +4650,7 @@ static void b43_wireless_core_exit(struc
-       switch (dev->dev->bus_type) {
- #ifdef CONFIG_B43_BCMA
-       case B43_BUS_BCMA:
--              bcma_core_pci_down(dev->dev->bdev->bus);
-+              bcma_host_pci_down(dev->dev->bdev->bus);
-               break;
- #endif
- #ifdef CONFIG_B43_SSB
-@@ -4697,9 +4697,9 @@ static int b43_wireless_core_init(struct
-       switch (dev->dev->bus_type) {
- #ifdef CONFIG_B43_BCMA
-       case B43_BUS_BCMA:
--              bcma_core_pci_irq_ctl(&dev->dev->bdev->bus->drv_pci[0],
-+              bcma_core_pci_irq_ctl(dev->dev->bdev->bus,
-                                     dev->dev->bdev, true);
--              bcma_core_pci_up(dev->dev->bdev->bus);
-+              bcma_host_pci_up(dev->dev->bdev->bus);
-               break;
- #endif
- #ifdef CONFIG_B43_SSB
---- a/drivers/net/wireless/brcm80211/brcmsmac/main.c
-+++ b/drivers/net/wireless/brcm80211/brcmsmac/main.c
-@@ -4669,7 +4669,7 @@ static int brcms_b_attach(struct brcms_c
-       brcms_c_coredisable(wlc_hw);
-       /* Match driver "down" state */
--      bcma_core_pci_down(wlc_hw->d11core->bus);
-+      bcma_host_pci_down(wlc_hw->d11core->bus);
-       /* turn off pll and xtal to match driver "down" state */
-       brcms_b_xtal(wlc_hw, OFF);
-@@ -5002,7 +5002,7 @@ static int brcms_b_up_prep(struct brcms_
-        * Configure pci/pcmcia here instead of in brcms_c_attach()
-        * to allow mfg hotswap:  down, hotswap (chip power cycle), up.
-        */
--      bcma_core_pci_irq_ctl(&wlc_hw->d11core->bus->drv_pci[0], wlc_hw->d11core,
-+      bcma_core_pci_irq_ctl(wlc_hw->d11core->bus, wlc_hw->d11core,
-                             true);
-       /*
-@@ -5012,12 +5012,12 @@ static int brcms_b_up_prep(struct brcms_
-        */
-       if (brcms_b_radio_read_hwdisabled(wlc_hw)) {
-               /* put SB PCI in down state again */
--              bcma_core_pci_down(wlc_hw->d11core->bus);
-+              bcma_host_pci_down(wlc_hw->d11core->bus);
-               brcms_b_xtal(wlc_hw, OFF);
-               return -ENOMEDIUM;
-       }
--      bcma_core_pci_up(wlc_hw->d11core->bus);
-+      bcma_host_pci_up(wlc_hw->d11core->bus);
-       /* reset the d11 core */
-       brcms_b_corereset(wlc_hw, BRCMS_USE_COREFLAGS);
-@@ -5214,7 +5214,7 @@ static int brcms_b_down_finish(struct br
-               /* turn off primary xtal and pll */
-               if (!wlc_hw->noreset) {
--                      bcma_core_pci_down(wlc_hw->d11core->bus);
-+                      bcma_host_pci_down(wlc_hw->d11core->bus);
-                       brcms_b_xtal(wlc_hw, OFF);
-               }
-       }
---- a/include/linux/bcma/bcma.h
-+++ b/include/linux/bcma/bcma.h
-@@ -434,6 +434,9 @@ static inline struct bcma_device *bcma_f
-       return bcma_find_core_unit(bus, coreid, 0);
- }
-+extern void bcma_host_pci_up(struct bcma_bus *bus);
-+extern void bcma_host_pci_down(struct bcma_bus *bus);
-+
- extern bool bcma_core_is_enabled(struct bcma_device *core);
- extern void bcma_core_disable(struct bcma_device *core, u32 flags);
- extern int bcma_core_enable(struct bcma_device *core, u32 flags);
---- a/include/linux/bcma/bcma_driver_pci.h
-+++ b/include/linux/bcma/bcma_driver_pci.h
-@@ -240,10 +240,8 @@ struct bcma_drv_pci {
- extern void bcma_core_pci_early_init(struct bcma_drv_pci *pc);
- extern void bcma_core_pci_init(struct bcma_drv_pci *pc);
--extern int bcma_core_pci_irq_ctl(struct bcma_drv_pci *pc,
-+extern int bcma_core_pci_irq_ctl(struct bcma_bus *bus,
-                                struct bcma_device *core, bool enable);
--extern void bcma_core_pci_up(struct bcma_bus *bus);
--extern void bcma_core_pci_down(struct bcma_bus *bus);
- extern void bcma_core_pci_power_save(struct bcma_bus *bus, bool up);
- extern int bcma_core_pci_pcibios_map_irq(const struct pci_dev *dev);
---- a/include/linux/bcma/bcma_driver_pcie2.h
-+++ b/include/linux/bcma/bcma_driver_pcie2.h
-@@ -143,6 +143,8 @@
- struct bcma_drv_pcie2 {
-       struct bcma_device *core;
-+
-+      u16 reqsize;
- };
- #define pcie2_read16(pcie2, offset)           bcma_read16((pcie2)->core, offset)
diff --git a/target/linux/generic/patches-3.14/030-nl80211-Allow-set-network-namespace-by-fd.patch b/target/linux/generic/patches-3.14/030-nl80211-Allow-set-network-namespace-by-fd.patch
deleted file mode 100644 (file)
index 52a2391..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-From: Vadim Kochan <vadim4j@gmail.com>
-Date: Mon, 12 Jan 2015 16:34:05 +0200
-Subject: [PATCH] nl80211: Allow set network namespace by fd
-
-Added new NL80211_ATTR_NETNS_FD which allows to
-set namespace via nl80211 by fd.
-
-Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
-Signed-off-by: Johannes Berg <johannes.berg@intel.com>
----
-
---- a/net/core/net_namespace.c
-+++ b/net/core/net_namespace.c
-@@ -361,6 +361,7 @@ struct net *get_net_ns_by_fd(int fd)
-       return ERR_PTR(-EINVAL);
- }
- #endif
-+EXPORT_SYMBOL_GPL(get_net_ns_by_fd);
- struct net *get_net_ns_by_pid(pid_t pid)
- {
diff --git a/target/linux/generic/patches-3.14/040-UBI-R-O-block-driver-on-top-of-UBI-volumes.patch b/target/linux/generic/patches-3.14/040-UBI-R-O-block-driver-on-top-of-UBI-volumes.patch
deleted file mode 100644 (file)
index 609deec..0000000
+++ /dev/null
@@ -1,829 +0,0 @@
-From 9d54c8a33eec78289b1b3f6e10874719c27ce0a7 Mon Sep 17 00:00:00 2001
-From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
-Date: Tue, 25 Feb 2014 13:25:22 -0300
-Subject: [PATCH] UBI: R/O block driver on top of UBI volumes
-
-This commit introduces read-only block device emulation on top of UBI volumes.
-
-Given UBI takes care of wear leveling and bad block management it's possible
-to add a thin layer to enable block device access to UBI volumes.
-This allows to use a block-oriented filesystem on a flash device.
-
-The UBI block devices are meant to be used in conjunction with any
-regular, block-oriented file system (e.g. ext4), although it's primarily
-targeted at read-only file systems, such as squashfs.
-
-Block devices are created upon user request through new ioctls:
-UBI_IOCVOLATTBLK to attach and UBI_IOCVOLDETBLK to detach.
-Also, a new UBI module parameter is added 'ubi.block'. This parameter is
-needed in order to attach a block device on boot-up time, allowing to
-mount the rootfs on a ubiblock device.
-For instance, you could have these kernel parameters:
-
-  ubi.mtd=5 ubi.block=0,0 root=/dev/ubiblock0_0
-
-Or, if you compile ubi as a module:
-
-  $ modprobe ubi mtd=/dev/mtd5 block=/dev/ubi0_0
-
-Artem: amend commentaries and massage the patch a little bit.
-
-Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
-Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
----
- drivers/mtd/ubi/Kconfig     |  15 +
- drivers/mtd/ubi/Makefile    |   1 +
- drivers/mtd/ubi/block.c     | 646 ++++++++++++++++++++++++++++++++++++++++++++
- drivers/mtd/ubi/build.c     |  11 +
- drivers/mtd/ubi/cdev.c      |  20 ++
- drivers/mtd/ubi/ubi.h       |  14 +
- include/uapi/mtd/ubi-user.h |  11 +
- 7 files changed, 718 insertions(+)
- create mode 100644 drivers/mtd/ubi/block.c
-
---- a/drivers/mtd/ubi/Kconfig
-+++ b/drivers/mtd/ubi/Kconfig
-@@ -87,4 +87,19 @@ config MTD_UBI_GLUEBI
-          work on top of UBI. Do not enable this unless you use legacy
-          software.
-+config MTD_UBI_BLOCK
-+      bool "Read-only block devices on top of UBI volumes"
-+      default n
-+      help
-+         This option enables read-only UBI block devices support. UBI block
-+         devices will be layered on top of UBI volumes, which means that the
-+         UBI driver will transparently handle things like bad eraseblocks and
-+         bit-flips. You can put any block-oriented file system on top of UBI
-+         volumes in read-only mode (e.g., ext4), but it is probably most
-+         practical for read-only file systems, like squashfs.
-+
-+         When selected, this feature will be built in the UBI driver.
-+
-+         If in doubt, say "N".
-+
- endif # MTD_UBI
---- a/drivers/mtd/ubi/Makefile
-+++ b/drivers/mtd/ubi/Makefile
-@@ -3,5 +3,6 @@ obj-$(CONFIG_MTD_UBI) += ubi.o
- ubi-y += vtbl.o vmt.o upd.o build.o cdev.o kapi.o eba.o io.o wl.o attach.o
- ubi-y += misc.o debug.o
- ubi-$(CONFIG_MTD_UBI_FASTMAP) += fastmap.o
-+ubi-$(CONFIG_MTD_UBI_BLOCK) += block.o
- obj-$(CONFIG_MTD_UBI_GLUEBI) += gluebi.o
---- /dev/null
-+++ b/drivers/mtd/ubi/block.c
-@@ -0,0 +1,646 @@
-+/*
-+ * Copyright (c) 2014 Ezequiel Garcia
-+ * Copyright (c) 2011 Free Electrons
-+ *
-+ * Driver parameter handling strongly based on drivers/mtd/ubi/build.c
-+ *   Copyright (c) International Business Machines Corp., 2006
-+ *   Copyright (c) Nokia Corporation, 2007
-+ *   Authors: Artem Bityutskiy, Frank Haverkamp
-+ *
-+ * 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, version 2.
-+ *
-+ * 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.
-+ */
-+
-+/*
-+ * Read-only block devices on top of UBI volumes
-+ *
-+ * A simple implementation to allow a block device to be layered on top of a
-+ * UBI volume. The implementation is provided by creating a static 1-to-1
-+ * mapping between the block device and the UBI volume.
-+ *
-+ * The addressed byte is obtained from the addressed block sector, which is
-+ * mapped linearly into the corresponding LEB:
-+ *
-+ *   LEB number = addressed byte / LEB size
-+ *
-+ * This feature is compiled in the UBI core, and adds a new 'block' parameter
-+ * to allow early block device attaching. Runtime  block attach/detach for UBI
-+ * volumes is provided through two new UBI ioctls: UBI_IOCVOLATTBLK and
-+ * UBI_IOCVOLDETBLK.
-+ */
-+
-+#include <linux/module.h>
-+#include <linux/init.h>
-+#include <linux/err.h>
-+#include <linux/kernel.h>
-+#include <linux/list.h>
-+#include <linux/mutex.h>
-+#include <linux/slab.h>
-+#include <linux/vmalloc.h>
-+#include <linux/mtd/ubi.h>
-+#include <linux/workqueue.h>
-+#include <linux/blkdev.h>
-+#include <linux/hdreg.h>
-+#include <asm/div64.h>
-+
-+#include "ubi-media.h"
-+#include "ubi.h"
-+
-+/* Maximum number of supported devices */
-+#define UBIBLOCK_MAX_DEVICES 32
-+
-+/* Maximum length of the 'block=' parameter */
-+#define UBIBLOCK_PARAM_LEN 63
-+
-+/* Maximum number of comma-separated items in the 'block=' parameter */
-+#define UBIBLOCK_PARAM_COUNT 2
-+
-+struct ubiblock_param {
-+      int ubi_num;
-+      int vol_id;
-+      char name[UBIBLOCK_PARAM_LEN+1];
-+};
-+
-+/* Numbers of elements set in the @ubiblock_param array */
-+static int ubiblock_devs __initdata;
-+
-+/* MTD devices specification parameters */
-+static struct ubiblock_param ubiblock_param[UBIBLOCK_MAX_DEVICES] __initdata;
-+
-+struct ubiblock {
-+      struct ubi_volume_desc *desc;
-+      int ubi_num;
-+      int vol_id;
-+      int refcnt;
-+      int leb_size;
-+
-+      struct gendisk *gd;
-+      struct request_queue *rq;
-+
-+      struct workqueue_struct *wq;
-+      struct work_struct work;
-+
-+      struct mutex dev_mutex;
-+      spinlock_t queue_lock;
-+      struct list_head list;
-+};
-+
-+/* Linked list of all ubiblock instances */
-+static LIST_HEAD(ubiblock_devices);
-+static DEFINE_MUTEX(devices_mutex);
-+static int ubiblock_major;
-+
-+static int __init ubiblock_set_param(const char *val,
-+                                   const struct kernel_param *kp)
-+{
-+      int i, ret;
-+      size_t len;
-+      struct ubiblock_param *param;
-+      char buf[UBIBLOCK_PARAM_LEN];
-+      char *pbuf = &buf[0];
-+      char *tokens[UBIBLOCK_PARAM_COUNT];
-+
-+      if (!val)
-+              return -EINVAL;
-+
-+      len = strnlen(val, UBIBLOCK_PARAM_LEN);
-+      if (len == 0) {
-+              ubi_warn("block: empty 'block=' parameter - ignored\n");
-+              return 0;
-+      }
-+
-+      if (len == UBIBLOCK_PARAM_LEN) {
-+              ubi_err("block: parameter \"%s\" is too long, max. is %d\n",
-+                      val, UBIBLOCK_PARAM_LEN);
-+              return -EINVAL;
-+      }
-+
-+      strcpy(buf, val);
-+
-+      /* Get rid of the final newline */
-+      if (buf[len - 1] == '\n')
-+              buf[len - 1] = '\0';
-+
-+      for (i = 0; i < UBIBLOCK_PARAM_COUNT; i++)
-+              tokens[i] = strsep(&pbuf, ",");
-+
-+      param = &ubiblock_param[ubiblock_devs];
-+      if (tokens[1]) {
-+              /* Two parameters: can be 'ubi, vol_id' or 'ubi, vol_name' */
-+              ret = kstrtoint(tokens[0], 10, &param->ubi_num);
-+              if (ret < 0)
-+                      return -EINVAL;
-+
-+              /* Second param can be a number or a name */
-+              ret = kstrtoint(tokens[1], 10, &param->vol_id);
-+              if (ret < 0) {
-+                      param->vol_id = -1;
-+                      strcpy(param->name, tokens[1]);
-+              }
-+
-+      } else {
-+              /* One parameter: must be device path */
-+              strcpy(param->name, tokens[0]);
-+              param->ubi_num = -1;
-+              param->vol_id = -1;
-+      }
-+
-+      ubiblock_devs++;
-+
-+      return 0;
-+}
-+
-+static const struct kernel_param_ops ubiblock_param_ops = {
-+      .set    = ubiblock_set_param,
-+};
-+module_param_cb(block, &ubiblock_param_ops, NULL, 0);
-+MODULE_PARM_DESC(block, "Attach block devices to UBI volumes. Parameter format: block=<path|dev,num|dev,name>.\n"
-+                      "Multiple \"block\" parameters may be specified.\n"
-+                      "UBI volumes may be specified by their number, name, or path to the device node.\n"
-+                      "Examples\n"
-+                      "Using the UBI volume path:\n"
-+                      "ubi.block=/dev/ubi0_0\n"
-+                      "Using the UBI device, and the volume name:\n"
-+                      "ubi.block=0,rootfs\n"
-+                      "Using both UBI device number and UBI volume number:\n"
-+                      "ubi.block=0,0\n");
-+
-+static struct ubiblock *find_dev_nolock(int ubi_num, int vol_id)
-+{
-+      struct ubiblock *dev;
-+
-+      list_for_each_entry(dev, &ubiblock_devices, list)
-+              if (dev->ubi_num == ubi_num && dev->vol_id == vol_id)
-+                      return dev;
-+      return NULL;
-+}
-+
-+static int ubiblock_read_to_buf(struct ubiblock *dev, char *buffer,
-+                              int leb, int offset, int len)
-+{
-+      int ret;
-+
-+      ret = ubi_read(dev->desc, leb, buffer, offset, len);
-+      if (ret) {
-+              ubi_err("%s ubi_read error %d",
-+                      dev->gd->disk_name, ret);
-+              return ret;
-+      }
-+      return 0;
-+}
-+
-+static int ubiblock_read(struct ubiblock *dev, char *buffer,
-+                       sector_t sec, int len)
-+{
-+      int ret, leb, offset;
-+      int bytes_left = len;
-+      int to_read = len;
-+      loff_t pos = sec << 9;
-+
-+      /* Get LEB:offset address to read from */
-+      offset = do_div(pos, dev->leb_size);
-+      leb = pos;
-+
-+      while (bytes_left) {
-+              /*
-+               * We can only read one LEB at a time. Therefore if the read
-+               * length is larger than one LEB size, we split the operation.
-+               */
-+              if (offset + to_read > dev->leb_size)
-+                      to_read = dev->leb_size - offset;
-+
-+              ret = ubiblock_read_to_buf(dev, buffer, leb, offset, to_read);
-+              if (ret)
-+                      return ret;
-+
-+              buffer += to_read;
-+              bytes_left -= to_read;
-+              to_read = bytes_left;
-+              leb += 1;
-+              offset = 0;
-+      }
-+      return 0;
-+}
-+
-+static int do_ubiblock_request(struct ubiblock *dev, struct request *req)
-+{
-+      int len, ret;
-+      sector_t sec;
-+
-+      if (req->cmd_type != REQ_TYPE_FS)
-+              return -EIO;
-+
-+      if (blk_rq_pos(req) + blk_rq_cur_sectors(req) >
-+          get_capacity(req->rq_disk))
-+              return -EIO;
-+
-+      if (rq_data_dir(req) != READ)
-+              return -ENOSYS; /* Write not implemented */
-+
-+      sec = blk_rq_pos(req);
-+      len = blk_rq_cur_bytes(req);
-+
-+      /*
-+       * Let's prevent the device from being removed while we're doing I/O
-+       * work. Notice that this means we serialize all the I/O operations,
-+       * but it's probably of no impact given the NAND core serializes
-+       * flash access anyway.
-+       */
-+      mutex_lock(&dev->dev_mutex);
-+      ret = ubiblock_read(dev, req->buffer, sec, len);
-+      mutex_unlock(&dev->dev_mutex);
-+
-+      return ret;
-+}
-+
-+static void ubiblock_do_work(struct work_struct *work)
-+{
-+      struct ubiblock *dev =
-+              container_of(work, struct ubiblock, work);
-+      struct request_queue *rq = dev->rq;
-+      struct request *req;
-+      int res;
-+
-+      spin_lock_irq(rq->queue_lock);
-+
-+      req = blk_fetch_request(rq);
-+      while (req) {
-+
-+              spin_unlock_irq(rq->queue_lock);
-+              res = do_ubiblock_request(dev, req);
-+              spin_lock_irq(rq->queue_lock);
-+
-+              /*
-+               * If we're done with this request,
-+               * we need to fetch a new one
-+               */
-+              if (!__blk_end_request_cur(req, res))
-+                      req = blk_fetch_request(rq);
-+      }
-+
-+      spin_unlock_irq(rq->queue_lock);
-+}
-+
-+static void ubiblock_request(struct request_queue *rq)
-+{
-+      struct ubiblock *dev;
-+      struct request *req;
-+
-+      dev = rq->queuedata;
-+
-+      if (!dev)
-+              while ((req = blk_fetch_request(rq)) != NULL)
-+                      __blk_end_request_all(req, -ENODEV);
-+      else
-+              queue_work(dev->wq, &dev->work);
-+}
-+
-+static int ubiblock_open(struct block_device *bdev, fmode_t mode)
-+{
-+      struct ubiblock *dev = bdev->bd_disk->private_data;
-+      int ret;
-+
-+      mutex_lock(&dev->dev_mutex);
-+      if (dev->refcnt > 0) {
-+              /*
-+               * The volume is already open, just increase the reference
-+               * counter.
-+               */
-+              goto out_done;
-+      }
-+
-+      /*
-+       * We want users to be aware they should only mount us as read-only.
-+       * It's just a paranoid check, as write requests will get rejected
-+       * in any case.
-+       */
-+      if (mode & FMODE_WRITE) {
-+              ret = -EPERM;
-+              goto out_unlock;
-+      }
-+
-+      dev->desc = ubi_open_volume(dev->ubi_num, dev->vol_id, UBI_READONLY);
-+      if (IS_ERR(dev->desc)) {
-+              ubi_err("%s failed to open ubi volume %d_%d",
-+                      dev->gd->disk_name, dev->ubi_num, dev->vol_id);
-+              ret = PTR_ERR(dev->desc);
-+              dev->desc = NULL;
-+              goto out_unlock;
-+      }
-+
-+out_done:
-+      dev->refcnt++;
-+      mutex_unlock(&dev->dev_mutex);
-+      return 0;
-+
-+out_unlock:
-+      mutex_unlock(&dev->dev_mutex);
-+      return ret;
-+}
-+
-+static void ubiblock_release(struct gendisk *gd, fmode_t mode)
-+{
-+      struct ubiblock *dev = gd->private_data;
-+
-+      mutex_lock(&dev->dev_mutex);
-+      dev->refcnt--;
-+      if (dev->refcnt == 0) {
-+              ubi_close_volume(dev->desc);
-+              dev->desc = NULL;
-+      }
-+      mutex_unlock(&dev->dev_mutex);
-+}
-+
-+static int ubiblock_getgeo(struct block_device *bdev, struct hd_geometry *geo)
-+{
-+      /* Some tools might require this information */
-+      geo->heads = 1;
-+      geo->cylinders = 1;
-+      geo->sectors = get_capacity(bdev->bd_disk);
-+      geo->start = 0;
-+      return 0;
-+}
-+
-+static const struct block_device_operations ubiblock_ops = {
-+      .owner = THIS_MODULE,
-+      .open = ubiblock_open,
-+      .release = ubiblock_release,
-+      .getgeo = ubiblock_getgeo,
-+};
-+
-+int ubiblock_add(struct ubi_volume_info *vi)
-+{
-+      struct ubiblock *dev;
-+      struct gendisk *gd;
-+      int disk_capacity;
-+      int ret;
-+
-+      /* Check that the volume isn't already handled */
-+      mutex_lock(&devices_mutex);
-+      if (find_dev_nolock(vi->ubi_num, vi->vol_id)) {
-+              mutex_unlock(&devices_mutex);
-+              return -EEXIST;
-+      }
-+      mutex_unlock(&devices_mutex);
-+
-+      dev = kzalloc(sizeof(struct ubiblock), GFP_KERNEL);
-+      if (!dev)
-+              return -ENOMEM;
-+
-+      mutex_init(&dev->dev_mutex);
-+
-+      dev->ubi_num = vi->ubi_num;
-+      dev->vol_id = vi->vol_id;
-+      dev->leb_size = vi->usable_leb_size;
-+
-+      /* Initialize the gendisk of this ubiblock device */
-+      gd = alloc_disk(1);
-+      if (!gd) {
-+              ubi_err("block: alloc_disk failed");
-+              ret = -ENODEV;
-+              goto out_free_dev;
-+      }
-+
-+      gd->fops = &ubiblock_ops;
-+      gd->major = ubiblock_major;
-+      gd->first_minor = dev->ubi_num * UBI_MAX_VOLUMES + dev->vol_id;
-+      gd->private_data = dev;
-+      sprintf(gd->disk_name, "ubiblock%d_%d", dev->ubi_num, dev->vol_id);
-+      disk_capacity = (vi->size * vi->usable_leb_size) >> 9;
-+      set_capacity(gd, disk_capacity);
-+      dev->gd = gd;
-+
-+      spin_lock_init(&dev->queue_lock);
-+      dev->rq = blk_init_queue(ubiblock_request, &dev->queue_lock);
-+      if (!dev->rq) {
-+              ubi_err("block: blk_init_queue failed");
-+              ret = -ENODEV;
-+              goto out_put_disk;
-+      }
-+
-+      dev->rq->queuedata = dev;
-+      dev->gd->queue = dev->rq;
-+
-+      /*
-+       * Create one workqueue per volume (per registered block device).
-+       * Rembember workqueues are cheap, they're not threads.
-+       */
-+      dev->wq = alloc_workqueue(gd->disk_name, 0, 0);
-+      if (!dev->wq)
-+              goto out_free_queue;
-+      INIT_WORK(&dev->work, ubiblock_do_work);
-+
-+      mutex_lock(&devices_mutex);
-+      list_add_tail(&dev->list, &ubiblock_devices);
-+      mutex_unlock(&devices_mutex);
-+
-+      /* Must be the last step: anyone can call file ops from now on */
-+      add_disk(dev->gd);
-+      ubi_msg("%s created from ubi%d:%d(%s)",
-+              dev->gd->disk_name, dev->ubi_num, dev->vol_id, vi->name);
-+      return 0;
-+
-+out_free_queue:
-+      blk_cleanup_queue(dev->rq);
-+out_put_disk:
-+      put_disk(dev->gd);
-+out_free_dev:
-+      kfree(dev);
-+
-+      return ret;
-+}
-+
-+static void ubiblock_cleanup(struct ubiblock *dev)
-+{
-+      del_gendisk(dev->gd);
-+      blk_cleanup_queue(dev->rq);
-+      ubi_msg("%s released", dev->gd->disk_name);
-+      put_disk(dev->gd);
-+}
-+
-+int ubiblock_del(struct ubi_volume_info *vi)
-+{
-+      struct ubiblock *dev;
-+
-+      mutex_lock(&devices_mutex);
-+      dev = find_dev_nolock(vi->ubi_num, vi->vol_id);
-+      if (!dev) {
-+              mutex_unlock(&devices_mutex);
-+              return -ENODEV;
-+      }
-+
-+      /* Found a device, let's lock it so we can check if it's busy */
-+      mutex_lock(&dev->dev_mutex);
-+      if (dev->refcnt > 0) {
-+              mutex_unlock(&dev->dev_mutex);
-+              mutex_unlock(&devices_mutex);
-+              return -EBUSY;
-+      }
-+
-+      /* Remove from device list */
-+      list_del(&dev->list);
-+      mutex_unlock(&devices_mutex);
-+
-+      /* Flush pending work and stop this workqueue */
-+      destroy_workqueue(dev->wq);
-+
-+      ubiblock_cleanup(dev);
-+      mutex_unlock(&dev->dev_mutex);
-+      kfree(dev);
-+      return 0;
-+}
-+
-+static void ubiblock_resize(struct ubi_volume_info *vi)
-+{
-+      struct ubiblock *dev;
-+      int disk_capacity;
-+
-+      /*
-+       * Need to lock the device list until we stop using the device,
-+       * otherwise the device struct might get released in 'ubiblock_del()'.
-+       */
-+      mutex_lock(&devices_mutex);
-+      dev = find_dev_nolock(vi->ubi_num, vi->vol_id);
-+      if (!dev) {
-+              mutex_unlock(&devices_mutex);
-+              return;
-+      }
-+
-+      mutex_lock(&dev->dev_mutex);
-+      disk_capacity = (vi->size * vi->usable_leb_size) >> 9;
-+      set_capacity(dev->gd, disk_capacity);
-+      ubi_msg("%s resized to %d LEBs", dev->gd->disk_name, vi->size);
-+      mutex_unlock(&dev->dev_mutex);
-+      mutex_unlock(&devices_mutex);
-+}
-+
-+static int ubiblock_notify(struct notifier_block *nb,
-+                       unsigned long notification_type, void *ns_ptr)
-+{
-+      struct ubi_notification *nt = ns_ptr;
-+
-+      switch (notification_type) {
-+      case UBI_VOLUME_ADDED:
-+              /*
-+               * We want to enforce explicit block device attaching for
-+               * volumes, so when a volume is added we do nothing.
-+               */
-+              break;
-+      case UBI_VOLUME_REMOVED:
-+              ubiblock_del(&nt->vi);
-+              break;
-+      case UBI_VOLUME_RESIZED:
-+              ubiblock_resize(&nt->vi);
-+              break;
-+      default:
-+              break;
-+      }
-+      return NOTIFY_OK;
-+}
-+
-+static struct notifier_block ubiblock_notifier = {
-+      .notifier_call = ubiblock_notify,
-+};
-+
-+static struct ubi_volume_desc * __init
-+open_volume_desc(const char *name, int ubi_num, int vol_id)
-+{
-+      if (ubi_num == -1)
-+              /* No ubi num, name must be a vol device path */
-+              return ubi_open_volume_path(name, UBI_READONLY);
-+      else if (vol_id == -1)
-+              /* No vol_id, must be vol_name */
-+              return ubi_open_volume_nm(ubi_num, name, UBI_READONLY);
-+      else
-+              return ubi_open_volume(ubi_num, vol_id, UBI_READONLY);
-+}
-+
-+static int __init ubiblock_attach_from_param(void)
-+{
-+      int i, ret;
-+      struct ubiblock_param *p;
-+      struct ubi_volume_desc *desc;
-+      struct ubi_volume_info vi;
-+
-+      for (i = 0; i < ubiblock_devs; i++) {
-+              p = &ubiblock_param[i];
-+
-+              desc = open_volume_desc(p->name, p->ubi_num, p->vol_id);
-+              if (IS_ERR(desc)) {
-+                      ubi_err("block: can't open volume, err=%ld\n",
-+                              PTR_ERR(desc));
-+                      ret = PTR_ERR(desc);
-+                      break;
-+              }
-+
-+              ubi_get_volume_info(desc, &vi);
-+              ubi_close_volume(desc);
-+
-+              ret = ubiblock_add(&vi);
-+              if (ret) {
-+                      ubi_err("block: can't add '%s' volume, err=%d\n",
-+                              vi.name, ret);
-+                      break;
-+              }
-+      }
-+      return ret;
-+}
-+
-+static void ubiblock_detach_all(void)
-+{
-+      struct ubiblock *next;
-+      struct ubiblock *dev;
-+
-+      list_for_each_entry_safe(dev, next, &ubiblock_devices, list) {
-+              /* Flush pending work and stop workqueue */
-+              destroy_workqueue(dev->wq);
-+              /* The module is being forcefully removed */
-+              WARN_ON(dev->desc);
-+              /* Remove from device list */
-+              list_del(&dev->list);
-+              ubiblock_cleanup(dev);
-+              kfree(dev);
-+      }
-+}
-+
-+int __init ubiblock_init(void)
-+{
-+      int ret;
-+
-+      ubiblock_major = register_blkdev(0, "ubiblock");
-+      if (ubiblock_major < 0)
-+              return ubiblock_major;
-+
-+      /* Attach block devices from 'block=' module param */
-+      ret = ubiblock_attach_from_param();
-+      if (ret)
-+              goto err_detach;
-+
-+      /*
-+       * Block devices needs to be attached to volumes explicitly
-+       * upon user request. So we ignore existing volumes.
-+       */
-+      ret = ubi_register_volume_notifier(&ubiblock_notifier, 1);
-+      if (ret)
-+              goto err_unreg;
-+      return 0;
-+
-+err_unreg:
-+      unregister_blkdev(ubiblock_major, "ubiblock");
-+err_detach:
-+      ubiblock_detach_all();
-+      return ret;
-+}
-+
-+void __exit ubiblock_exit(void)
-+{
-+      ubi_unregister_volume_notifier(&ubiblock_notifier);
-+      ubiblock_detach_all();
-+      unregister_blkdev(ubiblock_major, "ubiblock");
-+}
---- a/drivers/mtd/ubi/build.c
-+++ b/drivers/mtd/ubi/build.c
-@@ -1298,6 +1298,15 @@ static int __init ubi_init(void)
-               }
-       }
-+      err = ubiblock_init();
-+      if (err) {
-+              ubi_err("block: cannot initialize, error %d", err);
-+
-+              /* See comment above re-ubi_is_module(). */
-+              if (ubi_is_module())
-+                      goto out_detach;
-+      }
-+
-       return 0;
- out_detach:
-@@ -1326,6 +1335,8 @@ static void __exit ubi_exit(void)
- {
-       int i;
-+      ubiblock_exit();
-+
-       for (i = 0; i < UBI_MAX_DEVICES; i++)
-               if (ubi_devices[i]) {
-                       mutex_lock(&ubi_devices_mutex);
---- a/drivers/mtd/ubi/cdev.c
-+++ b/drivers/mtd/ubi/cdev.c
-@@ -561,6 +561,26 @@ static long vol_cdev_ioctl(struct file *
-               break;
-       }
-+      /* Attach a block device to an UBI volume */
-+      case UBI_IOCVOLATTBLK:
-+      {
-+              struct ubi_volume_info vi;
-+
-+              ubi_get_volume_info(desc, &vi);
-+              err = ubiblock_add(&vi);
-+              break;
-+      }
-+
-+      /* Dettach a block device from an UBI volume */
-+      case UBI_IOCVOLDETBLK:
-+      {
-+              struct ubi_volume_info vi;
-+
-+              ubi_get_volume_info(desc, &vi);
-+              err = ubiblock_del(&vi);
-+              break;
-+      }
-+
-       default:
-               err = -ENOTTY;
-               break;
---- a/drivers/mtd/ubi/ubi.h
-+++ b/drivers/mtd/ubi/ubi.h
-@@ -864,6 +864,20 @@ int ubi_update_fastmap(struct ubi_device
- int ubi_scan_fastmap(struct ubi_device *ubi, struct ubi_attach_info *ai,
-                    int fm_anchor);
-+/* block.c */
-+#ifdef CONFIG_MTD_UBI_BLOCK
-+int ubiblock_init(void);
-+void ubiblock_exit(void);
-+int ubiblock_add(struct ubi_volume_info *vi);
-+int ubiblock_del(struct ubi_volume_info *vi);
-+#else
-+static inline int ubiblock_init(void) { return 0; }
-+static inline void ubiblock_exit(void) {}
-+static inline int ubiblock_add(struct ubi_volume_info *vi) { return -ENOTTY; }
-+static inline int ubiblock_del(struct ubi_volume_info *vi) { return -ENOTTY; }
-+#endif
-+
-+
- /*
-  * ubi_rb_for_each_entry - walk an RB-tree.
-  * @rb: a pointer to type 'struct rb_node' to use as a loop counter
---- a/include/uapi/mtd/ubi-user.h
-+++ b/include/uapi/mtd/ubi-user.h
-@@ -134,6 +134,13 @@
-  * used. A pointer to a &struct ubi_set_vol_prop_req object is expected to be
-  * passed. The object describes which property should be set, and to which value
-  * it should be set.
-+ *
-+ * Block devices on UBI volumes
-+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-+ *
-+ * To attach or detach a block device from an UBI volume the %UBI_IOCVOLATTBLK
-+ * and %UBI_IOCVOLDETBLK ioctl commands should be used, respectively.
-+ * These commands take no arguments.
-  */
- /*
-@@ -191,6 +198,10 @@
- /* Set an UBI volume property */
- #define UBI_IOCSETVOLPROP _IOW(UBI_VOL_IOC_MAGIC, 6, \
-                              struct ubi_set_vol_prop_req)
-+/* Attach a block device to an UBI volume */
-+#define UBI_IOCVOLATTBLK _IO(UBI_VOL_IOC_MAGIC, 7)
-+/* Detach a block device from an UBI volume */
-+#define UBI_IOCVOLDETBLK _IO(UBI_VOL_IOC_MAGIC, 8)
- /* Maximum MTD device name length supported by UBI */
- #define MAX_UBI_MTD_NAME_LEN 127
diff --git a/target/linux/generic/patches-3.14/041-UBI-block-do-not-use-term-attach.patch b/target/linux/generic/patches-3.14/041-UBI-block-do-not-use-term-attach.patch
deleted file mode 100644 (file)
index e934461..0000000
+++ /dev/null
@@ -1,185 +0,0 @@
-From 4d283ee2517303afa54ad6cbd9342a2f748cf509 Mon Sep 17 00:00:00 2001
-From: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
-Date: Tue, 4 Mar 2014 12:00:26 +0200
-Subject: [PATCH] UBI: block: do not use term "attach"
-
-We already use term attach/detach for UBI->MTD relations, let's not use this
-for UBI->ubiblock relations to avoid confusion. Just use 'create' and 'remove'
-instead. E.g., "create a R/O block device on top of a UBI volume".
-
-Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
----
- drivers/mtd/ubi/block.c | 39 ++++++++++++++++++++-------------------
- drivers/mtd/ubi/cdev.c  |  4 ++--
- drivers/mtd/ubi/ubi.h   | 14 ++++++++++----
- 3 files changed, 32 insertions(+), 25 deletions(-)
-
---- a/drivers/mtd/ubi/block.c
-+++ b/drivers/mtd/ubi/block.c
-@@ -29,10 +29,10 @@
-  *
-  *   LEB number = addressed byte / LEB size
-  *
-- * This feature is compiled in the UBI core, and adds a new 'block' parameter
-- * to allow early block device attaching. Runtime  block attach/detach for UBI
-- * volumes is provided through two new UBI ioctls: UBI_IOCVOLATTBLK and
-- * UBI_IOCVOLDETBLK.
-+ * This feature is compiled in the UBI core, and adds a 'block' parameter
-+ * to allow early creation of block devices on top of UBI volumes. Runtime
-+ * block creation/removal for UBI volumes is provided through two UBI ioctls:
-+ * UBI_IOCVOLATTBLK and UBI_IOCVOLDETBLK.
-  */
- #include <linux/module.h>
-@@ -374,7 +374,7 @@ static const struct block_device_operati
-       .getgeo = ubiblock_getgeo,
- };
--int ubiblock_add(struct ubi_volume_info *vi)
-+int ubiblock_create(struct ubi_volume_info *vi)
- {
-       struct ubiblock *dev;
-       struct gendisk *gd;
-@@ -464,7 +464,7 @@ static void ubiblock_cleanup(struct ubib
-       put_disk(dev->gd);
- }
--int ubiblock_del(struct ubi_volume_info *vi)
-+int ubiblock_remove(struct ubi_volume_info *vi)
- {
-       struct ubiblock *dev;
-@@ -503,7 +503,8 @@ static void ubiblock_resize(struct ubi_v
-       /*
-        * Need to lock the device list until we stop using the device,
--       * otherwise the device struct might get released in 'ubiblock_del()'.
-+       * otherwise the device struct might get released in
-+       * 'ubiblock_remove()'.
-        */
-       mutex_lock(&devices_mutex);
-       dev = find_dev_nolock(vi->ubi_num, vi->vol_id);
-@@ -528,12 +529,12 @@ static int ubiblock_notify(struct notifi
-       switch (notification_type) {
-       case UBI_VOLUME_ADDED:
-               /*
--               * We want to enforce explicit block device attaching for
-+               * We want to enforce explicit block device creation for
-                * volumes, so when a volume is added we do nothing.
-                */
-               break;
-       case UBI_VOLUME_REMOVED:
--              ubiblock_del(&nt->vi);
-+              ubiblock_remove(&nt->vi);
-               break;
-       case UBI_VOLUME_RESIZED:
-               ubiblock_resize(&nt->vi);
-@@ -561,7 +562,7 @@ open_volume_desc(const char *name, int u
-               return ubi_open_volume(ubi_num, vol_id, UBI_READONLY);
- }
--static int __init ubiblock_attach_from_param(void)
-+static int __init ubiblock_create_from_param(void)
- {
-       int i, ret;
-       struct ubiblock_param *p;
-@@ -582,7 +583,7 @@ static int __init ubiblock_attach_from_p
-               ubi_get_volume_info(desc, &vi);
-               ubi_close_volume(desc);
--              ret = ubiblock_add(&vi);
-+              ret = ubiblock_create(&vi);
-               if (ret) {
-                       ubi_err("block: can't add '%s' volume, err=%d\n",
-                               vi.name, ret);
-@@ -592,7 +593,7 @@ static int __init ubiblock_attach_from_p
-       return ret;
- }
--static void ubiblock_detach_all(void)
-+static void ubiblock_remove_all(void)
- {
-       struct ubiblock *next;
-       struct ubiblock *dev;
-@@ -618,13 +619,13 @@ int __init ubiblock_init(void)
-               return ubiblock_major;
-       /* Attach block devices from 'block=' module param */
--      ret = ubiblock_attach_from_param();
-+      ret = ubiblock_create_from_param();
-       if (ret)
--              goto err_detach;
-+              goto err_remove;
-       /*
--       * Block devices needs to be attached to volumes explicitly
--       * upon user request. So we ignore existing volumes.
-+       * Block devices are only created upon user requests, so we ignore
-+       * existing volumes.
-        */
-       ret = ubi_register_volume_notifier(&ubiblock_notifier, 1);
-       if (ret)
-@@ -633,14 +634,14 @@ int __init ubiblock_init(void)
- err_unreg:
-       unregister_blkdev(ubiblock_major, "ubiblock");
--err_detach:
--      ubiblock_detach_all();
-+err_remove:
-+      ubiblock_remove_all();
-       return ret;
- }
- void __exit ubiblock_exit(void)
- {
-       ubi_unregister_volume_notifier(&ubiblock_notifier);
--      ubiblock_detach_all();
-+      ubiblock_remove_all();
-       unregister_blkdev(ubiblock_major, "ubiblock");
- }
---- a/drivers/mtd/ubi/cdev.c
-+++ b/drivers/mtd/ubi/cdev.c
-@@ -567,7 +567,7 @@ static long vol_cdev_ioctl(struct file *
-               struct ubi_volume_info vi;
-               ubi_get_volume_info(desc, &vi);
--              err = ubiblock_add(&vi);
-+              err = ubiblock_create(&vi);
-               break;
-       }
-@@ -577,7 +577,7 @@ static long vol_cdev_ioctl(struct file *
-               struct ubi_volume_info vi;
-               ubi_get_volume_info(desc, &vi);
--              err = ubiblock_del(&vi);
-+              err = ubiblock_remove(&vi);
-               break;
-       }
---- a/drivers/mtd/ubi/ubi.h
-+++ b/drivers/mtd/ubi/ubi.h
-@@ -868,13 +868,19 @@ int ubi_scan_fastmap(struct ubi_device *
- #ifdef CONFIG_MTD_UBI_BLOCK
- int ubiblock_init(void);
- void ubiblock_exit(void);
--int ubiblock_add(struct ubi_volume_info *vi);
--int ubiblock_del(struct ubi_volume_info *vi);
-+int ubiblock_create(struct ubi_volume_info *vi);
-+int ubiblock_remove(struct ubi_volume_info *vi);
- #else
- static inline int ubiblock_init(void) { return 0; }
- static inline void ubiblock_exit(void) {}
--static inline int ubiblock_add(struct ubi_volume_info *vi) { return -ENOTTY; }
--static inline int ubiblock_del(struct ubi_volume_info *vi) { return -ENOTTY; }
-+static inline int ubiblock_create(struct ubi_volume_info *vi)
-+{
-+      return -ENOTTY;
-+}
-+static inline int ubiblock_remove(struct ubi_volume_info *vi)
-+{
-+      return -ENOTTY;
-+}
- #endif
diff --git a/target/linux/generic/patches-3.14/042-UBI-block-Mark-init-only-symbol-as-__initdata.patch b/target/linux/generic/patches-3.14/042-UBI-block-Mark-init-only-symbol-as-__initdata.patch
deleted file mode 100644 (file)
index 5466099..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-From ca2b722d1ab5bc3ffc34b5995248968cd8a7cb6f Mon Sep 17 00:00:00 2001
-From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
-Date: Mon, 3 Mar 2014 13:42:38 -0300
-Subject: [PATCH] UBI: block: Mark init-only symbol as __initdata
-
-ubiblock_param_ops should be marked as __init as it's only used to set
-a driver parameter on insertion time. This commit fixes the following:
-
-  WARNING: drivers/mtd/built-in.o(.text+0x653ac): Section mismatch in
-  reference from the variable ubiblock_param_ops to the function
-  .init.text:ubiblock_set_param()
-
-  The function ubiblock_param_ops() references the function __init
-  ubiblock_set_param(). This is often because ubiblock_param_ops lacks a
-  __init annotation or the annotation of ubiblock_set_param is wrong.
-
-Given gcc errors if the struct is marked const __initdata, this commit
-drops the const mark from it.
-
-Reported-by: kbuild test robot <fengguang.wu@intel.com>
-Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
-Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
----
- drivers/mtd/ubi/block.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/drivers/mtd/ubi/block.c
-+++ b/drivers/mtd/ubi/block.c
-@@ -156,7 +156,7 @@ static int __init ubiblock_set_param(con
-       return 0;
- }
--static const struct kernel_param_ops ubiblock_param_ops = {
-+static struct kernel_param_ops ubiblock_param_ops __initdata = {
-       .set    = ubiblock_set_param,
- };
- module_param_cb(block, &ubiblock_param_ops, NULL, 0);
diff --git a/target/linux/generic/patches-3.14/043-UBI-block-Use-u64-for-the-64-bit-dividend.patch b/target/linux/generic/patches-3.14/043-UBI-block-Use-u64-for-the-64-bit-dividend.patch
deleted file mode 100644 (file)
index 260927d..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-From 9981e14ab2f7c6a4d2bb45e51a6371964919837d Mon Sep 17 00:00:00 2001
-From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
-Date: Mon, 3 Mar 2014 13:42:39 -0300
-Subject: [PATCH] UBI: block: Use 'u64' for the 64-bit dividend
-
-Fixes the following warning on ARCH=avr32:
-
-  drivers/mtd/ubi/block.c: In function 'ubiblock_read':
-  drivers/mtd/ubi/block.c:207: warning: comparison of distinct pointer types lacks a cast
-
-Reported-by: kbuild test robot <fengguang.wu@intel.com>
-Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
-Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
----
- drivers/mtd/ubi/block.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/drivers/mtd/ubi/block.c
-+++ b/drivers/mtd/ubi/block.c
-@@ -201,7 +201,7 @@ static int ubiblock_read(struct ubiblock
-       int ret, leb, offset;
-       int bytes_left = len;
-       int to_read = len;
--      loff_t pos = sec << 9;
-+      u64 pos = sec << 9;
-       /* Get LEB:offset address to read from */
-       offset = do_div(pos, dev->leb_size);
diff --git a/target/linux/generic/patches-3.14/044-UBI-rename-block-device-ioctls.patch b/target/linux/generic/patches-3.14/044-UBI-rename-block-device-ioctls.patch
deleted file mode 100644 (file)
index ec71b05..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-From 8af871887fcba470ff9265c65cff7d14d9e0e3f9 Mon Sep 17 00:00:00 2001
-From: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
-Date: Wed, 5 Mar 2014 13:01:56 +0200
-Subject: [PATCH] UBI: rename block device ioctls
-
-Rename the UBI_IOCVOLATTBLK and UBI_IOCVOLDETBLK to UBI_IOCVOLCRBLK and
-UBI_IOCVOLRMBLK, because we do not use terms "attach" and "detach" for the R/O
-block devices on top of UBI volumes. Instead, we use terms "create" and
-"remove". This patch also amends the related commentaries.
-
-Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
-Acked-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
----
- drivers/mtd/ubi/block.c     |  2 +-
- drivers/mtd/ubi/cdev.c      |  8 ++++----
- include/uapi/mtd/ubi-user.h | 14 +++++++-------
- 3 files changed, 12 insertions(+), 12 deletions(-)
-
---- a/drivers/mtd/ubi/block.c
-+++ b/drivers/mtd/ubi/block.c
-@@ -32,7 +32,7 @@
-  * This feature is compiled in the UBI core, and adds a 'block' parameter
-  * to allow early creation of block devices on top of UBI volumes. Runtime
-  * block creation/removal for UBI volumes is provided through two UBI ioctls:
-- * UBI_IOCVOLATTBLK and UBI_IOCVOLDETBLK.
-+ * UBI_IOCVOLCRBLK and UBI_IOCVOLRMBLK.
-  */
- #include <linux/module.h>
---- a/drivers/mtd/ubi/cdev.c
-+++ b/drivers/mtd/ubi/cdev.c
-@@ -561,8 +561,8 @@ static long vol_cdev_ioctl(struct file *
-               break;
-       }
--      /* Attach a block device to an UBI volume */
--      case UBI_IOCVOLATTBLK:
-+      /* Create a R/O block device on top of the UBI volume */
-+      case UBI_IOCVOLCRBLK:
-       {
-               struct ubi_volume_info vi;
-@@ -571,8 +571,8 @@ static long vol_cdev_ioctl(struct file *
-               break;
-       }
--      /* Dettach a block device from an UBI volume */
--      case UBI_IOCVOLDETBLK:
-+      /* Remove the R/O block device */
-+      case UBI_IOCVOLRMBLK:
-       {
-               struct ubi_volume_info vi;
---- a/include/uapi/mtd/ubi-user.h
-+++ b/include/uapi/mtd/ubi-user.h
-@@ -138,9 +138,9 @@
-  * Block devices on UBI volumes
-  * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-  *
-- * To attach or detach a block device from an UBI volume the %UBI_IOCVOLATTBLK
-- * and %UBI_IOCVOLDETBLK ioctl commands should be used, respectively.
-- * These commands take no arguments.
-+ * To create or remove a R/O block device on top of an UBI volume the
-+ * %UBI_IOCVOLCRBLK and %UBI_IOCVOLRMBLK ioctl commands should be used,
-+ * respectively. These commands take no arguments.
-  */
- /*
-@@ -198,10 +198,10 @@
- /* Set an UBI volume property */
- #define UBI_IOCSETVOLPROP _IOW(UBI_VOL_IOC_MAGIC, 6, \
-                              struct ubi_set_vol_prop_req)
--/* Attach a block device to an UBI volume */
--#define UBI_IOCVOLATTBLK _IO(UBI_VOL_IOC_MAGIC, 7)
--/* Detach a block device from an UBI volume */
--#define UBI_IOCVOLDETBLK _IO(UBI_VOL_IOC_MAGIC, 8)
-+/* Create a R/O block device on top of an UBI volume */
-+#define UBI_IOCVOLCRBLK _IO(UBI_VOL_IOC_MAGIC, 7)
-+/* Remove the R/O block device */
-+#define UBI_IOCVOLRMBLK _IO(UBI_VOL_IOC_MAGIC, 8)
- /* Maximum MTD device name length supported by UBI */
- #define MAX_UBI_MTD_NAME_LEN 127
diff --git a/target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch b/target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch
deleted file mode 100644 (file)
index badfcb0..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From d56030ac25d383218045c5d87e98e0494d6af3ad Mon Sep 17 00:00:00 2001
-From: Richard Weinberger <richard@nod.at>
-Date: Wed, 19 Mar 2014 11:43:22 +0100
-Subject: [PATCH] UBI: block: Remove __initdata from ubiblock_param_ops
-
-You cannot mark these parameters as __initdata.
-Otherwise the data is gone upon module exit.
-
-Fixes:
-[  172.045465] BUG: unable to handle kernel paging request at ffffffffa001db38
-[  172.046020] IP: [<ffffffff81067aa4>] destroy_params+0x24/0x50
-
-Signed-off-by: Richard Weinberger <richard@nod.at>
-Acked-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
-Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
----
- drivers/mtd/ubi/block.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/drivers/mtd/ubi/block.c
-+++ b/drivers/mtd/ubi/block.c
-@@ -156,7 +156,7 @@ static int __init ubiblock_set_param(con
-       return 0;
- }
--static struct kernel_param_ops ubiblock_param_ops __initdata = {
-+static struct kernel_param_ops ubiblock_param_ops = {
-       .set    = ubiblock_set_param,
- };
- module_param_cb(block, &ubiblock_param_ops, NULL, 0);
diff --git a/target/linux/generic/patches-3.14/046-UBI-avoid-workqueue-format-string-leak.patch b/target/linux/generic/patches-3.14/046-UBI-avoid-workqueue-format-string-leak.patch
deleted file mode 100644 (file)
index 41ef6b8..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From bebfef150e0b8fa68704cddacf05b8c26462d565 Mon Sep 17 00:00:00 2001
-From: Kees Cook <keescook@chromium.org>
-Date: Mon, 7 Apr 2014 21:44:07 -0700
-Subject: [PATCH] UBI: avoid workqueue format string leak
-
-When building the name for the workqueue thread, make sure a format
-string cannot leak in from the disk name.
-
-Signed-off-by: Kees Cook <keescook@chromium.org>
-Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
----
- drivers/mtd/ubi/block.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/drivers/mtd/ubi/block.c
-+++ b/drivers/mtd/ubi/block.c
-@@ -431,7 +431,7 @@ int ubiblock_create(struct ubi_volume_in
-        * Create one workqueue per volume (per registered block device).
-        * Rembember workqueues are cheap, they're not threads.
-        */
--      dev->wq = alloc_workqueue(gd->disk_name, 0, 0);
-+      dev->wq = alloc_workqueue("%s", 0, 0, gd->disk_name);
-       if (!dev->wq)
-               goto out_free_queue;
-       INIT_WORK(&dev->work, ubiblock_do_work);
diff --git a/target/linux/generic/patches-3.14/047-UBI-make-UBI_IOCVOLCRBLK-take-a-parameter-for-future.patch b/target/linux/generic/patches-3.14/047-UBI-make-UBI_IOCVOLCRBLK-take-a-parameter-for-future.patch
deleted file mode 100644 (file)
index e9aab2a..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-From 463c5eedb4a13b9aa91f05498a0f2c20bd03f8c4 Mon Sep 17 00:00:00 2001
-From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
-Date: Wed, 5 Mar 2014 11:16:14 -0300
-Subject: [PATCH] UBI: make UBI_IOCVOLCRBLK take a parameter for future usage
-
-In order to allow a future ioctl parameter, such as a creation flag,
-we change the UBI_IOCVOLCRBLK so it accepts a struct ubi_blkcreate_req.
-For the time being the structure is not in use, but fully reserved.
-
-This ABI change is still possible and harmless, because the ioctl has just
-been introduced and there's no userspace program which uses it.
-
-Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
-Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
----
- include/uapi/mtd/ubi-user.h | 19 +++++++++++++++----
- 1 file changed, 15 insertions(+), 4 deletions(-)
-
---- a/include/uapi/mtd/ubi-user.h
-+++ b/include/uapi/mtd/ubi-user.h
-@@ -138,9 +138,12 @@
-  * Block devices on UBI volumes
-  * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-  *
-- * To create or remove a R/O block device on top of an UBI volume the
-- * %UBI_IOCVOLCRBLK and %UBI_IOCVOLRMBLK ioctl commands should be used,
-- * respectively. These commands take no arguments.
-+ * To create a R/O block device on top of an UBI volume the %UBI_IOCVOLCRBLK
-+ * should be used. A pointer to a &struct ubi_blkcreate_req object is expected
-+ * to be passed, which is not used and reserved for future usage.
-+ *
-+ * Conversely, to remove a block device the %UBI_IOCVOLRMBLK should be used,
-+ * which takes no arguments.
-  */
- /*
-@@ -199,7 +202,7 @@
- #define UBI_IOCSETVOLPROP _IOW(UBI_VOL_IOC_MAGIC, 6, \
-                              struct ubi_set_vol_prop_req)
- /* Create a R/O block device on top of an UBI volume */
--#define UBI_IOCVOLCRBLK _IO(UBI_VOL_IOC_MAGIC, 7)
-+#define UBI_IOCVOLCRBLK _IOW(UBI_VOL_IOC_MAGIC, 7, struct ubi_blkcreate_req)
- /* Remove the R/O block device */
- #define UBI_IOCVOLRMBLK _IO(UBI_VOL_IOC_MAGIC, 8)
-@@ -431,4 +434,12 @@ struct ubi_set_vol_prop_req {
-       __u64 value;
- }  __packed;
-+/**
-+ * struct ubi_blkcreate_req - a data structure used in block creation requests.
-+ * @padding: reserved for future, not used, has to be zeroed
-+ */
-+struct ubi_blkcreate_req {
-+      __s8  padding[128];
-+}  __packed;
-+
- #endif /* __UBI_USER_H__ */
diff --git a/target/linux/generic/patches-3.14/048-mtd-bcm47xxpart-backports-from-3.16.patch b/target/linux/generic/patches-3.14/048-mtd-bcm47xxpart-backports-from-3.16.patch
deleted file mode 100644 (file)
index 540db6f..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -150,7 +150,7 @@ config MTD_BCM63XX_PARTS
- config MTD_BCM47XX_PARTS
-       tristate "BCM47XX partitioning support"
--      depends on BCM47XX
-+      depends on BCM47XX || ARCH_BCM_5301X
-       help
-         This provides partitions parser for devices based on BCM47xx
-         boards.
---- a/drivers/mtd/bcm47xxpart.c
-+++ b/drivers/mtd/bcm47xxpart.c
-@@ -14,7 +14,6 @@
- #include <linux/slab.h>
- #include <linux/mtd/mtd.h>
- #include <linux/mtd/partitions.h>
--#include <bcm47xx_nvram.h>
- /* 10 parts were found on sflash on Netgear WNDR4500 */
- #define BCM47XXPART_MAX_PARTS         12
-@@ -30,6 +29,7 @@
- #define BOARD_DATA_MAGIC2             0xBD0D0BBD
- #define CFE_MAGIC                     0x43464531      /* 1EFC */
- #define FACTORY_MAGIC                 0x59544346      /* FCTY */
-+#define NVRAM_HEADER                  0x48534C46      /* FLSH */
- #define POT_MAGIC1                    0x54544f50      /* POTT */
- #define POT_MAGIC2                    0x504f          /* OP */
- #define ML_MAGIC1                     0x39685a42
-@@ -91,7 +91,7 @@ static int bcm47xxpart_parse(struct mtd_
-               if (offset >= 0x2000000)
-                       break;
--              if (curr_part > BCM47XXPART_MAX_PARTS) {
-+              if (curr_part >= BCM47XXPART_MAX_PARTS) {
-                       pr_warn("Reached maximum number of partitions, scanning stopped!\n");
-                       break;
-               }
-@@ -147,6 +147,11 @@ static int bcm47xxpart_parse(struct mtd_
-               /* TRX */
-               if (buf[0x000 / 4] == TRX_MAGIC) {
-+                      if (BCM47XXPART_MAX_PARTS - curr_part < 4) {
-+                              pr_warn("Not enough partitions left to register trx, scanning stopped!\n");
-+                              break;
-+                      }
-+
-                       trx = (struct trx_header *)buf;
-                       trx_part = curr_part;
-@@ -212,7 +217,7 @@ static int bcm47xxpart_parse(struct mtd_
-       /* Look for NVRAM at the end of the last block. */
-       for (i = 0; i < ARRAY_SIZE(possible_nvram_sizes); i++) {
--              if (curr_part > BCM47XXPART_MAX_PARTS) {
-+              if (curr_part >= BCM47XXPART_MAX_PARTS) {
-                       pr_warn("Reached maximum number of partitions, scanning stopped!\n");
-                       break;
-               }
diff --git a/target/linux/generic/patches-3.14/049-mtd-bcm47xxpart-find-NVRAM-partitions-in-middle-bloc.patch b/target/linux/generic/patches-3.14/049-mtd-bcm47xxpart-find-NVRAM-partitions-in-middle-bloc.patch
deleted file mode 100644 (file)
index 48f8d36..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/drivers/mtd/bcm47xxpart.c
-+++ b/drivers/mtd/bcm47xxpart.c
-@@ -199,6 +199,16 @@ static int bcm47xxpart_parse(struct mtd_
-                       continue;
-               }
-+              /* New (ARM?) devices may have NVRAM in some middle block. Last
-+               * block will be checked later, so skip it.
-+               */
-+              if (offset != master->size - blocksize &&
-+                  buf[0x000 / 4] == NVRAM_HEADER) {
-+                      bcm47xxpart_add_part(&parts[curr_part++], "nvram",
-+                                           offset, 0);
-+                      continue;
-+              }
-+
-               /* Read middle of the block */
-               if (mtd_read(master, offset + 0x8000, 0x4,
-                            &bytes_read, (uint8_t *)buf) < 0) {
diff --git a/target/linux/generic/patches-3.14/050-mtd-bcm47xxpart-backports-from-3.19.patch b/target/linux/generic/patches-3.14/050-mtd-bcm47xxpart-backports-from-3.19.patch
deleted file mode 100644 (file)
index b2d53f9..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
---- a/drivers/mtd/bcm47xxpart.c
-+++ b/drivers/mtd/bcm47xxpart.c
-@@ -15,8 +15,12 @@
- #include <linux/mtd/mtd.h>
- #include <linux/mtd/partitions.h>
--/* 10 parts were found on sflash on Netgear WNDR4500 */
--#define BCM47XXPART_MAX_PARTS         12
-+/*
-+ * NAND flash on Netgear R6250 was verified to contain 15 partitions.
-+ * This will result in allocating too big array for some old devices, but the
-+ * memory will be freed soon anyway (see mtd_device_parse_register).
-+ */
-+#define BCM47XXPART_MAX_PARTS         20
- /*
-  * Amount of bytes we read when analyzing each block of flash memory.
-@@ -168,18 +172,26 @@ static int bcm47xxpart_parse(struct mtd_
-                               i++;
-                       }
--                      bcm47xxpart_add_part(&parts[curr_part++], "linux",
--                                           offset + trx->offset[i], 0);
--                      i++;
-+                      if (trx->offset[i]) {
-+                              bcm47xxpart_add_part(&parts[curr_part++],
-+                                                   "linux",
-+                                                   offset + trx->offset[i],
-+                                                   0);
-+                              i++;
-+                      }
-                       /*
-                        * Pure rootfs size is known and can be calculated as:
-                        * trx->length - trx->offset[i]. We don't fill it as
-                        * we want to have jffs2 (overlay) in the same mtd.
-                        */
--                      bcm47xxpart_add_part(&parts[curr_part++], "rootfs",
--                                           offset + trx->offset[i], 0);
--                      i++;
-+                      if (trx->offset[i]) {
-+                              bcm47xxpart_add_part(&parts[curr_part++],
-+                                                   "rootfs",
-+                                                   offset + trx->offset[i],
-+                                                   0);
-+                              i++;
-+                      }
-                       last_trx_part = curr_part - 1;
diff --git a/target/linux/generic/patches-3.14/051-mtd-bcm47xxpart-backports-from-3.20.patch b/target/linux/generic/patches-3.14/051-mtd-bcm47xxpart-backports-from-3.20.patch
deleted file mode 100644 (file)
index 59180c2..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
---- a/drivers/mtd/bcm47xxpart.c
-+++ b/drivers/mtd/bcm47xxpart.c
-@@ -15,6 +15,8 @@
- #include <linux/mtd/mtd.h>
- #include <linux/mtd/partitions.h>
-+#include <uapi/linux/magic.h>
-+
- /*
-  * NAND flash on Netgear R6250 was verified to contain 15 partitions.
-  * This will result in allocating too big array for some old devices, but the
-@@ -39,7 +41,8 @@
- #define ML_MAGIC1                     0x39685a42
- #define ML_MAGIC2                     0x26594131
- #define TRX_MAGIC                     0x30524448
--#define SQSH_MAGIC                    0x71736873      /* shsq */
-+#define SHSQ_MAGIC                    0x71736873      /* shsq (weird ZTE H218N endianness) */
-+#define UBI_EC_MAGIC                  0x23494255      /* UBI# */
- struct trx_header {
-       uint32_t magic;
-@@ -50,7 +53,7 @@ struct trx_header {
-       uint32_t offset[3];
- } __packed;
--static void bcm47xxpart_add_part(struct mtd_partition *part, char *name,
-+static void bcm47xxpart_add_part(struct mtd_partition *part, const char *name,
-                                u64 offset, uint32_t mask_flags)
- {
-       part->name = name;
-@@ -58,6 +61,26 @@ static void bcm47xxpart_add_part(struct
-       part->mask_flags = mask_flags;
- }
-+static const char *bcm47xxpart_trx_data_part_name(struct mtd_info *master,
-+                                                size_t offset)
-+{
-+      uint32_t buf;
-+      size_t bytes_read;
-+
-+      if (mtd_read(master, offset, sizeof(buf), &bytes_read,
-+                   (uint8_t *)&buf) < 0) {
-+              pr_err("mtd_read error while parsing (offset: 0x%X)!\n",
-+                      offset);
-+              goto out_default;
-+      }
-+
-+      if (buf == UBI_EC_MAGIC)
-+              return&n