kernel: remove linux 3.8 support
authorFelix Fietkau <nbd@openwrt.org>
Thu, 19 Mar 2015 11:58:59 +0000 (11:58 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Thu, 19 Mar 2015 11:58:59 +0000 (11:58 +0000)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 44890

166 files changed:
target/linux/generic/config-3.8 [deleted file]
target/linux/generic/patches-3.8/001-ARM-7668-1-fix-memset-related-crashes-caused-by-rece.patch [deleted file]
target/linux/generic/patches-3.8/002-ARM-7668-1-fix-memset-related-crashes-caused-by-rece.patch [deleted file]
target/linux/generic/patches-3.8/007-hso-Earlier-catch-of-error-condition.patch [deleted file]
target/linux/generic/patches-3.8/008-hso-Fix-stack-corruption-on-some-architectures.patch [deleted file]
target/linux/generic/patches-3.8/010-mtd_mp25p80_add_gd25q32_gd25q64.patch [deleted file]
target/linux/generic/patches-3.8/020-ssb_update.patch [deleted file]
target/linux/generic/patches-3.8/025-bcma_backport.patch [deleted file]
target/linux/generic/patches-3.8/030-backport-lib-devres-Introduce-devm_ioremap_resource.patch [deleted file]
target/linux/generic/patches-3.8/031-PCI-Remove-__weak-annotation-from-pcibios_get_phb_of.patch [deleted file]
target/linux/generic/patches-3.8/032-MIPS-PCI-Implement-pcibios_get_phb_of_node.patch [deleted file]
target/linux/generic/patches-3.8/033-backport-spi-of-Use-DT-aliases-for-assigning-bus-number.patch [deleted file]
target/linux/generic/patches-3.8/040-backport_led_gpio_request_fix.patch [deleted file]
target/linux/generic/patches-3.8/060-hso_devices.patch [deleted file]
target/linux/generic/patches-3.8/061-arm_xz_decompressor_build_fix.patch [deleted file]
target/linux/generic/patches-3.8/062-mips_decompressor_build_fix.patch [deleted file]
target/linux/generic/patches-3.8/084-x86_fix_perf_uclibc_build.patch [deleted file]
target/linux/generic/patches-3.8/100-overlayfs.patch [deleted file]
target/linux/generic/patches-3.8/101-overlayfs_path_ref.patch [deleted file]
target/linux/generic/patches-3.8/102-ehci_hcd_ignore_oc.patch [deleted file]
target/linux/generic/patches-3.8/110-fix_mtd_include.patch [deleted file]
target/linux/generic/patches-3.8/200-fix_localversion.patch [deleted file]
target/linux/generic/patches-3.8/201-extra_optimization.patch [deleted file]
target/linux/generic/patches-3.8/202-reduce_module_size.patch [deleted file]
target/linux/generic/patches-3.8/203-kallsyms_uncompressed.patch [deleted file]
target/linux/generic/patches-3.8/204-module_strip.patch [deleted file]
target/linux/generic/patches-3.8/210-darwin_scripts_include.patch [deleted file]
target/linux/generic/patches-3.8/212-byteshift_portability.patch [deleted file]
target/linux/generic/patches-3.8/220-gc_sections.patch [deleted file]
target/linux/generic/patches-3.8/221-module_exports.patch [deleted file]
target/linux/generic/patches-3.8/230-openwrt_lzma_options.patch [deleted file]
target/linux/generic/patches-3.8/250-netfilter_depends.patch [deleted file]
target/linux/generic/patches-3.8/251-sound_kconfig.patch [deleted file]
target/linux/generic/patches-3.8/252-mv_cesa_depends.patch [deleted file]
target/linux/generic/patches-3.8/253-ssb_b43_default_on.patch [deleted file]
target/linux/generic/patches-3.8/254-textsearch_kconfig_hacks.patch [deleted file]
target/linux/generic/patches-3.8/255-lib80211_kconfig_hacks.patch [deleted file]
target/linux/generic/patches-3.8/256-crypto_add_kconfig_prompts.patch [deleted file]
target/linux/generic/patches-3.8/257-wireless_ext_kconfig_hack.patch [deleted file]
target/linux/generic/patches-3.8/258-netfilter_netlink_kconfig_hack.patch [deleted file]
target/linux/generic/patches-3.8/259-regmap_dynamic.patch [deleted file]
target/linux/generic/patches-3.8/260-crypto_test_dependencies.patch [deleted file]
target/linux/generic/patches-3.8/262-compressor_kconfig_hack.patch [deleted file]
target/linux/generic/patches-3.8/300-mips_expose_boot_raw.patch [deleted file]
target/linux/generic/patches-3.8/301-mips_image_cmdline_hack.patch [deleted file]
target/linux/generic/patches-3.8/302-mips_no_branch_likely.patch [deleted file]
target/linux/generic/patches-3.8/304-mips_disable_fpu.patch [deleted file]
target/linux/generic/patches-3.8/305-mips_module_reloc.patch [deleted file]
target/linux/generic/patches-3.8/306-mips_mem_functions_performance.patch [deleted file]
target/linux/generic/patches-3.8/308-mips-show-correct-cpu-name-for-24KEc.patch [deleted file]
target/linux/generic/patches-3.8/309-mips_fuse_workaround.patch [deleted file]
target/linux/generic/patches-3.8/310-arm_module_unresolved_weak_sym.patch [deleted file]
target/linux/generic/patches-3.8/320-ppc4xx_optimization.patch [deleted file]
target/linux/generic/patches-3.8/321-powerpc_crtsavres_prereq.patch [deleted file]
target/linux/generic/patches-3.8/322-ppc4xx-crypto-compile-fix.patch [deleted file]
target/linux/generic/patches-3.8/400-rootfs_split.patch [deleted file]
target/linux/generic/patches-3.8/401-partial_eraseblock_write.patch [deleted file]
target/linux/generic/patches-3.8/410-mtd_info_move_forward_decl.patch [deleted file]
target/linux/generic/patches-3.8/420-redboot_space.patch [deleted file]
target/linux/generic/patches-3.8/430-mtd_myloader_partition_parser.patch [deleted file]
target/linux/generic/patches-3.8/440-block2mtd_init.patch [deleted file]
target/linux/generic/patches-3.8/441-block2mtd_refresh.patch [deleted file]
target/linux/generic/patches-3.8/442-block2mtd_probe.patch [deleted file]
target/linux/generic/patches-3.8/450-mtd_plat_nand_chip_fixup.patch [deleted file]
target/linux/generic/patches-3.8/451-mtd_fix_nand_correct_data_return_code.patch [deleted file]
target/linux/generic/patches-3.8/460-cfi_cmdset_0002_no_erase_suspend.patch [deleted file]
target/linux/generic/patches-3.8/470-mtd_m25p80_add_pm25lv_flash_support.patch [deleted file]
target/linux/generic/patches-3.8/473-mtd_m25p80_add_w25q128.patch [deleted file]
target/linux/generic/patches-3.8/474-mtd_mp25p80_add_pm25lq032.patch [deleted file]
target/linux/generic/patches-3.8/475-mtd_cfi_cmdset_0002-add-buffer-write-cmd-timeout.patch [deleted file]
target/linux/generic/patches-3.8/476-mtd-m25p80-allow-to-disable-small-sector-erase.patch [deleted file]
target/linux/generic/patches-3.8/478-mtd-partial_eraseblock_unlock.patch [deleted file]
target/linux/generic/patches-3.8/500-yaffs-Kbuild-integration.patch [deleted file]
target/linux/generic/patches-3.8/501-yaffs-3.5-convert-to-use-kuid_t-kgid_t.patch [deleted file]
target/linux/generic/patches-3.8/520-squashfs_update_xz_comp_opts.patch [deleted file]
target/linux/generic/patches-3.8/530-jffs2_make_lzma_available.patch [deleted file]
target/linux/generic/patches-3.8/531-debloat_lzma.patch [deleted file]
target/linux/generic/patches-3.8/532-jffs2_eofdetect.patch [deleted file]
target/linux/generic/patches-3.8/540-crypto-xz-decompression-support.patch [deleted file]
target/linux/generic/patches-3.8/541-ubifs-xz-decompression-support.patch [deleted file]
target/linux/generic/patches-3.8/550-ubifs-symlink-xattr-support.patch [deleted file]
target/linux/generic/patches-3.8/551-ubifs-fix-default-compression-selection.patch [deleted file]
target/linux/generic/patches-3.8/600-netfilter_layer7_2.22.patch [deleted file]
target/linux/generic/patches-3.8/601-netfilter_layer7_pktmatch.patch [deleted file]
target/linux/generic/patches-3.8/602-netfilter_layer7_match.patch [deleted file]
target/linux/generic/patches-3.8/603-netfilter_layer7_2.6.36_fix.patch [deleted file]
target/linux/generic/patches-3.8/604-netfilter_conntrack_flush.patch [deleted file]
target/linux/generic/patches-3.8/610-netfilter_match_bypass_default_checks.patch [deleted file]
target/linux/generic/patches-3.8/611-netfilter_match_bypass_default_table.patch [deleted file]
target/linux/generic/patches-3.8/612-netfilter_match_reduce_memory_access.patch [deleted file]
target/linux/generic/patches-3.8/613-netfilter_optional_tcp_window_check.patch [deleted file]
target/linux/generic/patches-3.8/615-netfilter_add_xt_id_match.patch [deleted file]
target/linux/generic/patches-3.8/620-sched_esfq.patch [deleted file]
target/linux/generic/patches-3.8/621-sched_act_connmark.patch [deleted file]
target/linux/generic/patches-3.8/630-packet_socket_type.patch [deleted file]
target/linux/generic/patches-3.8/640-bridge_no_eap_forward.patch [deleted file]
target/linux/generic/patches-3.8/641-bridge_always_accept_eap.patch [deleted file]
target/linux/generic/patches-3.8/642-bridge_port_isolate.patch [deleted file]
target/linux/generic/patches-3.8/643-bridge_remove_ipv6_dependency.patch [deleted file]
target/linux/generic/patches-3.8/644-bridge_optimize_netfilter_hooks.patch [deleted file]
target/linux/generic/patches-3.8/650-pppoe_header_pad.patch [deleted file]
target/linux/generic/patches-3.8/651-wireless_mesh_header.patch [deleted file]
target/linux/generic/patches-3.8/652-atm_header_changes.patch [deleted file]
target/linux/generic/patches-3.8/653-disable_netlink_trim.patch [deleted file]
target/linux/generic/patches-3.8/655-increase_skb_pad.patch [deleted file]
target/linux/generic/patches-3.8/656-skb_reduce_truesize-helper.patch [deleted file]
target/linux/generic/patches-3.8/657-qdisc_reduce_truesize.patch [deleted file]
target/linux/generic/patches-3.8/660-fq_codel_defaults.patch [deleted file]
target/linux/generic/patches-3.8/661-fq_codel_keep_dropped_stats.patch [deleted file]
target/linux/generic/patches-3.8/662-use_fq_codel_by_default.patch [deleted file]
target/linux/generic/patches-3.8/663-remove_pfifo_fast.patch [deleted file]
target/linux/generic/patches-3.8/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch [deleted file]
target/linux/generic/patches-3.8/700-swconfig.patch [deleted file]
target/linux/generic/patches-3.8/701-phy_extension.patch [deleted file]
target/linux/generic/patches-3.8/702-phy_add_aneg_done_function.patch [deleted file]
target/linux/generic/patches-3.8/703-phy-add-detach-callback-to-struct-phy_driver.patch [deleted file]
target/linux/generic/patches-3.8/710-phy-add-mdio_register_board_info.patch [deleted file]
target/linux/generic/patches-3.8/720-phy_adm6996.patch [deleted file]
target/linux/generic/patches-3.8/721-phy_packets.patch [deleted file]
target/linux/generic/patches-3.8/722-phy_mvswitch.patch [deleted file]
target/linux/generic/patches-3.8/723-phy_ip175c.patch [deleted file]
target/linux/generic/patches-3.8/724-phy_ar8216.patch [deleted file]
target/linux/generic/patches-3.8/725-phy_rtl8306.patch [deleted file]
target/linux/generic/patches-3.8/726-phy_rtl8366.patch [deleted file]
target/linux/generic/patches-3.8/727-phy-rtl8367.patch [deleted file]
target/linux/generic/patches-3.8/728-phy-micrel.patch [deleted file]
target/linux/generic/patches-3.8/729-phy-rtl8367b.patch [deleted file]
target/linux/generic/patches-3.8/729-phy-tantos.patch [deleted file]
target/linux/generic/patches-3.8/730-phy_b53.patch [deleted file]
target/linux/generic/patches-3.8/750-hostap_txpower.patch [deleted file]
target/linux/generic/patches-3.8/800-usb-ohci-multiple-platform-driver-fix.patch [deleted file]
target/linux/generic/patches-3.8/810-pci_disable_common_quirks.patch [deleted file]
target/linux/generic/patches-3.8/811-pci_disable_usb_common_quirks.patch [deleted file]
target/linux/generic/patches-3.8/820-usb_add_usb_find_device_by_name.patch [deleted file]
target/linux/generic/patches-3.8/830-ledtrig_morse.patch [deleted file]
target/linux/generic/patches-3.8/831-ledtrig_netdev.patch [deleted file]
target/linux/generic/patches-3.8/832-ledtrig_usbdev.patch [deleted file]
target/linux/generic/patches-3.8/840-rtc7301.patch [deleted file]
target/linux/generic/patches-3.8/841-rtc_pt7c4338.patch [deleted file]
target/linux/generic/patches-3.8/861-04_spi_gpio_implement_spi_delay.patch [deleted file]
target/linux/generic/patches-3.8/862-gpio_spi_driver.patch [deleted file]
target/linux/generic/patches-3.8/863-gpiommc.patch [deleted file]
target/linux/generic/patches-3.8/864-gpiommc_configfs_locking.patch [deleted file]
target/linux/generic/patches-3.8/870-hifn795x_byteswap.patch [deleted file]
target/linux/generic/patches-3.8/880-gateworks_system_controller.patch [deleted file]
target/linux/generic/patches-3.8/890-8250_optional_sysrq.patch [deleted file]
target/linux/generic/patches-3.8/900-slab_maxsize.patch [deleted file]
target/linux/generic/patches-3.8/901-debloat_sock_diag.patch [deleted file]
target/linux/generic/patches-3.8/902-debloat_proc.patch [deleted file]
target/linux/generic/patches-3.8/903-debloat_direct_io.patch [deleted file]
target/linux/generic/patches-3.8/910-kobject_uevent.patch [deleted file]
target/linux/generic/patches-3.8/911-kobject_add_broadcast_uevent.patch [deleted file]
target/linux/generic/patches-3.8/921-use_preinit_as_init.patch [deleted file]
target/linux/generic/patches-3.8/922-always-create-console-node-in-initramfs.patch [deleted file]
target/linux/generic/patches-3.8/930-crashlog.patch [deleted file]
target/linux/generic/patches-3.8/940-ocf_kbuild_integration.patch [deleted file]
target/linux/generic/patches-3.8/941-ocf_20120127.patch [deleted file]
target/linux/generic/patches-3.8/960-decompress_unlzo_fix.patch [deleted file]
target/linux/generic/patches-3.8/970-remove-unsane-filenames-from-deps_initramfs-list.patch [deleted file]
target/linux/generic/patches-3.8/980-arm_openwrt_machtypes.patch [deleted file]
target/linux/generic/patches-3.8/992-mpcore_wdt_fix_watchdog_counter_loading.patch [deleted file]
target/linux/generic/patches-3.8/993-mpcore_wdt_fix_wdioc_setoptions_handling.patch [deleted file]
target/linux/generic/patches-3.8/994-mpcore_wdt_fix_timer_mode_setup.patch [deleted file]
target/linux/generic/patches-3.8/995-mpcore_twd_calibrate_single_core.patch [deleted file]
target/linux/generic/patches-3.8/996-zsmalloc_allow_module_build.patch [deleted file]
target/linux/generic/patches-3.8/997-device_tree_cmdline.patch [deleted file]

diff --git a/target/linux/generic/config-3.8 b/target/linux/generic/config-3.8
deleted file mode 100644 (file)
index ca57498..0000000
+++ /dev/null
@@ -1,3890 +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_HED 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_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_AD7877 is not set
-# CONFIG_AD7887 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_ADT7410 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_ALCHEMY_GPIO_INDIRECT is not set
-# CONFIG_ALIM7101_WDT is not set
-# CONFIG_ALTERA_STAPL 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_APDS9802ALS is not set
-# CONFIG_APM8018X is not set
-# CONFIG_APPLICOM is not set
-# CONFIG_AR7 is not set
-# CONFIG_AR8216_PHY is not set
-# CONFIG_ARCH_AT91 is not set
-# CONFIG_ARCH_BCM2835 is not set
-# CONFIG_ARCH_BCMRING 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_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_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 is not set
-# CONFIG_ARCH_MULTIPLATFORM 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_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_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_SIRF is not set
-# CONFIG_ARCH_SOCFPGA 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_VT8500 is not set
-# CONFIG_ARCH_W90X900 is not set
-# CONFIG_ARCH_ZYNQ is not set
-# CONFIG_ARCNET is not set
-# CONFIG_ARM_ARCH_TIMER is not set
-# CONFIG_ARM_AT91_ETHER 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_775420 is not set
-# CONFIG_ARM_ERRATA_798181 is not set
-# CONFIG_ARM_PATCH_PHYS_VIRT 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_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_ATH5K is not set
-# CONFIG_ATH6K_LEGACY is not set
-# CONFIG_ATH79 is not set
-# CONFIG_ATH9K 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_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_LCD_SUPPORT is not set
-# CONFIG_BACKLIGHT_LM3630 is not set
-# CONFIG_BACKLIGHT_LM3639 is not set
-# CONFIG_BACKLIGHT_LP855X 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_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_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_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_BINARY_PRINTF is not set
-# CONFIG_BINFMT_AOUT is not set
-CONFIG_BINFMT_ELF=y
-# CONFIG_BINFMT_MISC is not set
-CONFIG_BITREVERSE=y
-# 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_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_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_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_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_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 is not set
-# CONFIG_BRIDGE_NETFILTER is not set
-# CONFIG_BRIDGE_NF_EBTABLES 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_FS 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_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_CB710_CORE is not set
-# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
-# CONFIG_CC_STACKPROTECTOR 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_CGROUPS is not set
-# CONFIG_CGROUP_DEBUG is not set
-# CONFIG_CHARGER_BQ2415X is not set
-# CONFIG_CHARGER_GPIO is not set
-# CONFIG_CHARGER_LP8727 is not set
-# CONFIG_CHARGER_MAX8903 is not set
-# CONFIG_CHARGER_SMB347 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_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_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_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_COMPACTION is not set
-# CONFIG_COMPAL_LAPTOP is not set
-# CONFIG_COMPAT_BRK 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_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_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_CRC32C is not set
-# CONFIG_CRYPTO_CRC32C_INTEL 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_FSL_CAAM is not set
-# CONFIG_CRYPTO_DEV_HIFN_795X is not set
-# CONFIG_CRYPTO_DEV_MV_CESA 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_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_CXT1E1 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_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_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_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_DGRP is not set
-# CONFIG_DIRECT_IO is not set
-# CONFIG_DISCONTIGMEM_MANUAL 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_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_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_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_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_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_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_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_VIDEO is not set
-# CONFIG_EZX_PCAP is not set
-# CONFIG_F2FS_FS is not set
-# CONFIG_FAIR_GROUP_SCHED is not set
-# CONFIG_FAIR_SHARE 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_DDC is not set
-# CONFIG_FB_FOREIGN_ENDIAN is not set
-# CONFIG_FB_GEODE 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_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_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_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_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_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_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_TIME=y
-# CONFIG_GFS2_FS is not set
-# CONFIG_GIGASET_CAPI is not set
-# CONFIG_GIGASET_DEBUG 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_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_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_RDC321X is not set
-# CONFIG_GPIO_SCH 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_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_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_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_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_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_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_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_SUNPLUS is not set
-# CONFIG_HID_SUPPORT 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_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_HPFS_FS is not set
-# CONFIG_HPLAN is not set
-# CONFIG_HPLAN_PLUS is not set
-# CONFIG_HP_ILO is not set
-# CONFIG_HSI 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_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_250 is not set
-# CONFIG_HZ_256 is not set
-# CONFIG_HZ_300 is not set
-# CONFIG_HZ_48 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_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_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_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_SCMI 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_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_PERIODIC_RTC_TRIGGER is not set
-# CONFIG_IIO_SIMPLE_DUMMY is not set
-# CONFIG_IIO_ST_HWMON is not set
-# CONFIG_IIO_SW_RING 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_ROTARY_ENCODER is not set
-# CONFIG_INPUT_GPIO_TILT_POLLED 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_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_MID_PTI is not set
-# CONFIG_INTEL_OAKTRAIL is not set
-# CONFIG_INTERVAL_TREE_TEST 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_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_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_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_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_SONY_DECODER is not set
-# CONFIG_IR_STREAMZAP 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_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_LZMA is not set
-# CONFIG_KERNEL_LZO is not set
-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_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_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_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_LBDAF=y
-# CONFIG_LCD_ILI9320 is not set
-# CONFIG_LDM_PARTITION 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_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_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_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_LOGIRUMBLEPAD2_FF is not set
-# CONFIG_LOGITECH_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_LTPC 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_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_MAGIC_SYSRQ 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_MCP4725 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_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_ASIC3 is not set
-# CONFIG_MFD_CORE 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_JANZ_CMODIO is not set
-# CONFIG_MFD_LM3533 is not set
-# CONFIG_MFD_LP8788 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_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_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_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_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_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_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_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_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_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_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_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_SST25L is not set
-# CONFIG_MTD_SWAP is not set
-# CONFIG_MTD_TESTS is not set
-# CONFIG_MTD_UBI is not set
-# CONFIG_MUTEX_SPIN_ON_OWNER is not set
-# CONFIG_MV643XX_ETH is not set
-# CONFIG_MVMDIO 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_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_CLUSTER is not set
-# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNBYTES 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_IPRANGE 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_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_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_ISA is not set
-# CONFIG_NET_KEY is not set
-# CONFIG_NET_KEY_MIGRATE 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_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_CODEL=y
-# CONFIG_NET_SCH_GRED is not set
-# CONFIG_NET_SCH_HFSC 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_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_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_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_NI52 is not set
-# CONFIG_NI65 is not set
-# CONFIG_NILFS2_FS is not set
-# CONFIG_NIU is not set
-CONFIG_NLATTR=y
-# 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_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_OMAP_OCP2SCP is not set
-# CONFIG_OMAP_USB2 is not set
-# CONFIG_OMFS_FS is not set
-# CONFIG_OPENVSWITCH 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_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_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_PDC_ADMA is not set
-# CONFIG_PERF_COUNTERS is not set
-# CONFIG_PERF_EVENTS 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_PID_IN_CONTEXTIDR is not set
-# CONFIG_PID_NS is not set
-# CONFIG_PINCTRL is not set
-# CONFIG_PINCTRL_EXYNOS is not set
-# CONFIG_PINCTRL_EXYNOS5440 is not set
-# 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_POWERTV is not set
-# CONFIG_POWER_AVS is not set
-# CONFIG_POWER_RESET 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_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_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_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_RAMOOPS 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_RC_CORE 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_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_BQ24022 is not set
-# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
-# CONFIG_REGULATOR_GPIO 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_RFD_FTL is not set
-# CONFIG_RFKILL is not set
-# CONFIG_RFKILL_INPUT is not set
-# CONFIG_RING_BUFFER_BENCHMARK 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_ISL12022 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_MPC5121 is not set
-# CONFIG_RTC_DRV_MSM6242 is not set
-# CONFIG_RTC_DRV_PCF2123 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_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_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_RTS5139 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_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_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_SB105X 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_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_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_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_AK8975 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_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_I5K_AMB 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_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_MCP3021 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_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_DETECT_IRQ is not set
-# 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_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_SCCNXP 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_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_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_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_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_CAMERA 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_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_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_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_EMBEDDED is not set
-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_SSB 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_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_TEHUTI is not set
-# CONFIG_TEST_KSTRTOX is not set
-# CONFIG_TEST_LIST_SORT is not set
-# CONFIG_TEST_POWER 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_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_DAC7512 is not set
-# CONFIG_TI_ST is not set
-# CONFIG_TLAN is not set
-# CONFIG_TMD_HERMES 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_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_TPS6105X is not set
-# CONFIG_TPS65010 is not set
-# CONFIG_TPS6507X is not set
-# CONFIG_TR 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_TTY_PRINTK is not set
-# CONFIG_TUN is not set
-# CONFIG_TWL4030_CORE 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_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_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_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_DEVICEFS=y
-# CONFIG_USB_DEVICE_CLASS is not set
-# CONFIG_USB_DSBR is not set
-# CONFIG_USB_DUMMY_HCD is not set
-# CONFIG_USB_DWC3 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_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_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_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_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_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_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_HID is not set
-# CONFIG_USB_HIDDEV 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_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_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_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_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_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_WHITELIST is not set
-# CONFIG_USB_OXU210HP_HCD is not set
-# CONFIG_USB_PEGASUS 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_S2255 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_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_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_XIRCOM 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_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_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_MSP3400 is not set
-# CONFIG_VIDEO_MT9V011 is not set
-# CONFIG_VIDEO_MXB is not set
-# CONFIG_VIDEO_NOON010PC30 is not set
-# CONFIG_VIDEO_OUTPUT_CONTROL 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_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_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_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_UPD64031A is not set
-# CONFIG_VIDEO_UPD64083 is not set
-# CONFIG_VIDEO_USBVISION is not set
-# CONFIG_VIDEO_V4L2 is not set
-# CONFIG_VIDEO_V4L2_COMMON 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_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_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_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_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_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_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_WLAGS49_H2 is not set
-# CONFIG_WLAGS49_H25 is not set
-CONFIG_WLAN=y
-# CONFIG_WL_TI is not set
-# CONFIG_WR_PPMC is not set
-# CONFIG_X25 is not set
-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_XILINX_AXI_EMAC is not set
-# CONFIG_XILINX_EMACLITE is not set
-# CONFIG_XILINX_LL_TEMAC 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_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.8/001-ARM-7668-1-fix-memset-related-crashes-caused-by-rece.patch b/target/linux/generic/patches-3.8/001-ARM-7668-1-fix-memset-related-crashes-caused-by-rece.patch
deleted file mode 100644 (file)
index 07061b0..0000000
+++ /dev/null
@@ -1,250 +0,0 @@
-From 455bd4c430b0c0a361f38e8658a0d6cb469942b5 Mon Sep 17 00:00:00 2001
-From: Ivan Djelic <ivan.djelic@parrot.com>
-Date: Wed, 6 Mar 2013 20:09:27 +0100
-Subject: [PATCH] ARM: 7668/1: fix memset-related crashes caused by recent GCC
- (4.7.2) optimizations
-
-Recent GCC versions (e.g. GCC-4.7.2) perform optimizations based on
-assumptions about the implementation of memset and similar functions.
-The current ARM optimized memset code does not return the value of
-its first argument, as is usually expected from standard implementations.
-
-For instance in the following function:
-
-void debug_mutex_lock_common(struct mutex *lock, struct mutex_waiter *waiter)
-{
-       memset(waiter, MUTEX_DEBUG_INIT, sizeof(*waiter));
-       waiter->magic = waiter;
-       INIT_LIST_HEAD(&waiter->list);
-}
-
-compiled as:
-
-800554d0 <debug_mutex_lock_common>:
-800554d0:       e92d4008        push    {r3, lr}
-800554d4:       e1a00001        mov     r0, r1
-800554d8:       e3a02010        mov     r2, #16 ; 0x10
-800554dc:       e3a01011        mov     r1, #17 ; 0x11
-800554e0:       eb04426e        bl      80165ea0 <memset>
-800554e4:       e1a03000        mov     r3, r0
-800554e8:       e583000c        str     r0, [r3, #12]
-800554ec:       e5830000        str     r0, [r3]
-800554f0:       e5830004        str     r0, [r3, #4]
-800554f4:       e8bd8008        pop     {r3, pc}
-
-GCC assumes memset returns the value of pointer 'waiter' in register r0; causing
-register/memory corruptions.
-
-This patch fixes the return value of the assembly version of memset.
-It adds a 'mov' instruction and merges an additional load+store into
-existing load/store instructions.
-For ease of review, here is a breakdown of the patch into 4 simple steps:
-
-Step 1
-======
-Perform the following substitutions:
-ip -> r8, then
-r0 -> ip,
-and insert 'mov ip, r0' as the first statement of the function.
-At this point, we have a memset() implementation returning the proper result,
-but corrupting r8 on some paths (the ones that were using ip).
-
-Step 2
-======
-Make sure r8 is saved and restored when (! CALGN(1)+0) == 1:
-
-save r8:
--       str     lr, [sp, #-4]!
-+       stmfd   sp!, {r8, lr}
-
-and restore r8 on both exit paths:
--       ldmeqfd sp!, {pc}               @ Now <64 bytes to go.
-+       ldmeqfd sp!, {r8, pc}           @ Now <64 bytes to go.
-(...)
-        tst     r2, #16
-        stmneia ip!, {r1, r3, r8, lr}
--       ldr     lr, [sp], #4
-+       ldmfd   sp!, {r8, lr}
-
-Step 3
-======
-Make sure r8 is saved and restored when (! CALGN(1)+0) == 0:
-
-save r8:
--       stmfd   sp!, {r4-r7, lr}
-+       stmfd   sp!, {r4-r8, lr}
-
-and restore r8 on both exit paths:
-        bgt     3b
--       ldmeqfd sp!, {r4-r7, pc}
-+       ldmeqfd sp!, {r4-r8, pc}
-(...)
-        tst     r2, #16
-        stmneia ip!, {r4-r7}
--       ldmfd   sp!, {r4-r7, lr}
-+       ldmfd   sp!, {r4-r8, lr}
-
-Step 4
-======
-Rewrite register list "r4-r7, r8" as "r4-r8".
-
-Signed-off-by: Ivan Djelic <ivan.djelic@parrot.com>
-Reviewed-by: Nicolas Pitre <nico@linaro.org>
-Signed-off-by: Dirk Behme <dirk.behme@gmail.com>
-Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
----
- arch/arm/lib/memset.S | 85 ++++++++++++++++++++++++++-------------------------
- 1 file changed, 44 insertions(+), 41 deletions(-)
-
---- a/arch/arm/lib/memset.S
-+++ b/arch/arm/lib/memset.S
-@@ -19,9 +19,9 @@
- 1:    subs    r2, r2, #4              @ 1 do we have enough
-       blt     5f                      @ 1 bytes to align with?
-       cmp     r3, #2                  @ 1
--      strltb  r1, [r0], #1            @ 1
--      strleb  r1, [r0], #1            @ 1
--      strb    r1, [r0], #1            @ 1
-+      strltb  r1, [ip], #1            @ 1
-+      strleb  r1, [ip], #1            @ 1
-+      strb    r1, [ip], #1            @ 1
-       add     r2, r2, r3              @ 1 (r2 = r2 - (4 - r3))
- /*
-  * The pointer is now aligned and the length is adjusted.  Try doing the
-@@ -29,10 +29,14 @@
-  */
- ENTRY(memset)
--      ands    r3, r0, #3              @ 1 unaligned?
-+/*
-+ * Preserve the contents of r0 for the return value.
-+ */
-+      mov     ip, r0
-+      ands    r3, ip, #3              @ 1 unaligned?
-       bne     1b                      @ 1
- /*
-- * we know that the pointer in r0 is aligned to a word boundary.
-+ * we know that the pointer in ip is aligned to a word boundary.
-  */
-       orr     r1, r1, r1, lsl #8
-       orr     r1, r1, r1, lsl #16
-@@ -43,29 +47,28 @@ ENTRY(memset)
- #if ! CALGN(1)+0
- /*
-- * We need an extra register for this loop - save the return address and
-- * use the LR
-+ * We need 2 extra registers for this loop - use r8 and the LR
-  */
--      str     lr, [sp, #-4]!
--      mov     ip, r1
-+      stmfd   sp!, {r8, lr}
-+      mov     r8, r1
-       mov     lr, r1
- 2:    subs    r2, r2, #64
--      stmgeia r0!, {r1, r3, ip, lr}   @ 64 bytes at a time.
--      stmgeia r0!, {r1, r3, ip, lr}
--      stmgeia r0!, {r1, r3, ip, lr}
--      stmgeia r0!, {r1, r3, ip, lr}
-+      stmgeia ip!, {r1, r3, r8, lr}   @ 64 bytes at a time.
-+      stmgeia ip!, {r1, r3, r8, lr}
-+      stmgeia ip!, {r1, r3, r8, lr}
-+      stmgeia ip!, {r1, r3, r8, lr}
-       bgt     2b
--      ldmeqfd sp!, {pc}               @ Now <64 bytes to go.
-+      ldmeqfd sp!, {r8, pc}           @ Now <64 bytes to go.
- /*
-  * No need to correct the count; we're only testing bits from now on
-  */
-       tst     r2, #32
--      stmneia r0!, {r1, r3, ip, lr}
--      stmneia r0!, {r1, r3, ip, lr}
-+      stmneia ip!, {r1, r3, r8, lr}
-+      stmneia ip!, {r1, r3, r8, lr}
-       tst     r2, #16
--      stmneia r0!, {r1, r3, ip, lr}
--      ldr     lr, [sp], #4
-+      stmneia ip!, {r1, r3, r8, lr}
-+      ldmfd   sp!, {r8, lr}
- #else
-@@ -74,54 +77,54 @@ ENTRY(memset)
-  * whole cache lines at once.
-  */
--      stmfd   sp!, {r4-r7, lr}
-+      stmfd   sp!, {r4-r8, lr}
-       mov     r4, r1
-       mov     r5, r1
-       mov     r6, r1
-       mov     r7, r1
--      mov     ip, r1
-+      mov     r8, r1
-       mov     lr, r1
-       cmp     r2, #96
--      tstgt   r0, #31
-+      tstgt   ip, #31
-       ble     3f
--      and     ip, r0, #31
--      rsb     ip, ip, #32
--      sub     r2, r2, ip
--      movs    ip, ip, lsl #(32 - 4)
--      stmcsia r0!, {r4, r5, r6, r7}
--      stmmiia r0!, {r4, r5}
--      tst     ip, #(1 << 30)
--      mov     ip, r1
--      strne   r1, [r0], #4
-+      and     r8, ip, #31
-+      rsb     r8, r8, #32
-+      sub     r2, r2, r8
-+      movs    r8, r8, lsl #(32 - 4)
-+      stmcsia ip!, {r4, r5, r6, r7}
-+      stmmiia ip!, {r4, r5}
-+      tst     r8, #(1 << 30)
-+      mov     r8, r1
-+      strne   r1, [ip], #4
- 3:    subs    r2, r2, #64
--      stmgeia r0!, {r1, r3-r7, ip, lr}
--      stmgeia r0!, {r1, r3-r7, ip, lr}
-+      stmgeia ip!, {r1, r3-r8, lr}
-+      stmgeia ip!, {r1, r3-r8, lr}
-       bgt     3b
--      ldmeqfd sp!, {r4-r7, pc}
-+      ldmeqfd sp!, {r4-r8, pc}
-       tst     r2, #32
--      stmneia r0!, {r1, r3-r7, ip, lr}
-+      stmneia ip!, {r1, r3-r8, lr}
-       tst     r2, #16
--      stmneia r0!, {r4-r7}
--      ldmfd   sp!, {r4-r7, lr}
-+      stmneia ip!, {r4-r7}
-+      ldmfd   sp!, {r4-r8, lr}
- #endif
- 4:    tst     r2, #8
--      stmneia r0!, {r1, r3}
-+      stmneia ip!, {r1, r3}
-       tst     r2, #4
--      strne   r1, [r0], #4
-+      strne   r1, [ip], #4
- /*
-  * When we get here, we've got less than 4 bytes to zero.  We
-  * may have an unaligned pointer as well.
-  */
- 5:    tst     r2, #2
--      strneb  r1, [r0], #1
--      strneb  r1, [r0], #1
-+      strneb  r1, [ip], #1
-+      strneb  r1, [ip], #1
-       tst     r2, #1
--      strneb  r1, [r0], #1
-+      strneb  r1, [ip], #1
-       mov     pc, lr
- ENDPROC(memset)
diff --git a/target/linux/generic/patches-3.8/002-ARM-7668-1-fix-memset-related-crashes-caused-by-rece.patch b/target/linux/generic/patches-3.8/002-ARM-7668-1-fix-memset-related-crashes-caused-by-rece.patch
deleted file mode 100644 (file)
index 266e507..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-From 418df63adac56841ef6b0f1fcf435bc64d4ed177 Mon Sep 17 00:00:00 2001
-From: Nicolas Pitre <nicolas.pitre@linaro.org>
-Date: Tue, 12 Mar 2013 13:00:42 +0100
-Subject: [PATCH] ARM: 7670/1: fix the memset fix
-
-Commit 455bd4c430b0 ("ARM: 7668/1: fix memset-related crashes caused by
-recent GCC (4.7.2) optimizations") attempted to fix a compliance issue
-with the memset return value.  However the memset itself became broken
-by that patch for misaligned pointers.
-
-This fixes the above by branching over the entry code from the
-misaligned fixup code to avoid reloading the original pointer.
-
-Also, because the function entry alignment is wrong in the Thumb mode
-compilation, that fixup code is moved to the end.
-
-While at it, the entry instructions are slightly reworked to help dual
-issue pipelines.
-
-Signed-off-by: Nicolas Pitre <nico@linaro.org>
-Tested-by: Alexander Holler <holler@ahsoftware.de>
-Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
----
- arch/arm/lib/memset.S | 33 +++++++++++++--------------------
- 1 file changed, 13 insertions(+), 20 deletions(-)
-
---- a/arch/arm/lib/memset.S
-+++ b/arch/arm/lib/memset.S
-@@ -14,31 +14,15 @@
-       .text
-       .align  5
--      .word   0
--
--1:    subs    r2, r2, #4              @ 1 do we have enough
--      blt     5f                      @ 1 bytes to align with?
--      cmp     r3, #2                  @ 1
--      strltb  r1, [ip], #1            @ 1
--      strleb  r1, [ip], #1            @ 1
--      strb    r1, [ip], #1            @ 1
--      add     r2, r2, r3              @ 1 (r2 = r2 - (4 - r3))
--/*
-- * The pointer is now aligned and the length is adjusted.  Try doing the
-- * memset again.
-- */
- ENTRY(memset)
--/*
-- * Preserve the contents of r0 for the return value.
-- */
--      mov     ip, r0
--      ands    r3, ip, #3              @ 1 unaligned?
--      bne     1b                      @ 1
-+      ands    r3, r0, #3              @ 1 unaligned?
-+      mov     ip, r0                  @ preserve r0 as return value
-+      bne     6f                      @ 1
- /*
-  * we know that the pointer in ip is aligned to a word boundary.
-  */
--      orr     r1, r1, r1, lsl #8
-+1:    orr     r1, r1, r1, lsl #8
-       orr     r1, r1, r1, lsl #16
-       mov     r3, r1
-       cmp     r2, #16
-@@ -127,4 +111,13 @@ ENTRY(memset)
-       tst     r2, #1
-       strneb  r1, [ip], #1
-       mov     pc, lr
-+
-+6:    subs    r2, r2, #4              @ 1 do we have enough
-+      blt     5b                      @ 1 bytes to align with?
-+      cmp     r3, #2                  @ 1
-+      strltb  r1, [ip], #1            @ 1
-+      strleb  r1, [ip], #1            @ 1
-+      strb    r1, [ip], #1            @ 1
-+      add     r2, r2, r3              @ 1 (r2 = r2 - (4 - r3))
-+      b       1b
- ENDPROC(memset)
diff --git a/target/linux/generic/patches-3.8/007-hso-Earlier-catch-of-error-condition.patch b/target/linux/generic/patches-3.8/007-hso-Earlier-catch-of-error-condition.patch
deleted file mode 100644 (file)
index a8a6225..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-From 35e57e1b49a351aa804dab6010cd46ae6112a541 Mon Sep 17 00:00:00 2001
-From: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
-Date: Wed, 21 Aug 2013 01:43:07 -0700
-Subject: [PATCH 1/2] hso: Earlier catch of error condition
-
-There is no need to get an interface specification if we know it's the
-wrong one.
-
-Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
-Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/usb/hso.c |    9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
---- a/drivers/net/usb/hso.c
-+++ b/drivers/net/usb/hso.c
-@@ -2908,6 +2908,11 @@ static int hso_probe(struct usb_interfac
-       struct hso_shared_int *shared_int;
-       struct hso_device *tmp_dev = NULL;
-+      if (interface->cur_altsetting->desc.bInterfaceClass != 0xFF) {
-+              dev_err(&interface->dev, "Not our interface\n");
-+              return -ENODEV;
-+      }
-+
-       if_num = interface->altsetting->desc.bInterfaceNumber;
-       /* Get the interface/port specification from either driver_info or from
-@@ -2917,10 +2922,6 @@ static int hso_probe(struct usb_interfac
-       else
-               port_spec = hso_get_config_data(interface);
--      if (interface->cur_altsetting->desc.bInterfaceClass != 0xFF) {
--              dev_err(&interface->dev, "Not our interface\n");
--              return -ENODEV;
--      }
-       /* Check if we need to switch to alt interfaces prior to port
-        * configuration */
-       if (interface->num_altsetting > 1)
diff --git a/target/linux/generic/patches-3.8/008-hso-Fix-stack-corruption-on-some-architectures.patch b/target/linux/generic/patches-3.8/008-hso-Fix-stack-corruption-on-some-architectures.patch
deleted file mode 100644 (file)
index c562c1b..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-From e75dc677ff8d06ffa61bef6fee436227ae5440c6 Mon Sep 17 00:00:00 2001
-From: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
-Date: Wed, 21 Aug 2013 01:43:19 -0700
-Subject: [PATCH 2/2] hso: Fix stack corruption on some architectures
-
-As Sergei Shtylyov explained in the #mipslinux IRC channel:
-[Mon 2013-08-19 12:28:21 PM PDT] <headless> guys, are you sure it's not "DMA off stack" case?
-[Mon 2013-08-19 12:28:35 PM PDT] <headless> it's a known stack corruptor on non-coherent arches
-[Mon 2013-08-19 12:31:48 PM PDT] <DonkeyHotei> headless: for usb/ehci?
-[Mon 2013-08-19 12:34:11 PM PDT] <DonkeyHotei> headless: explain
-[Mon 2013-08-19 12:35:38 PM PDT] <headless> usb_control_msg() (or other such func) should not use buffer on stack. DMA from/to stack is prohibited
-[Mon 2013-08-19 12:35:58 PM PDT] <headless> and EHCI uses DMA on control xfers (as well as all the others)
-
-Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
-Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/usb/hso.c |    6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
---- a/drivers/net/usb/hso.c
-+++ b/drivers/net/usb/hso.c
-@@ -2838,13 +2838,16 @@ exit:
- static int hso_get_config_data(struct usb_interface *interface)
- {
-       struct usb_device *usbdev = interface_to_usbdev(interface);
--      u8 config_data[17];
-+      u8 *config_data = kmalloc(17, GFP_KERNEL);
-       u32 if_num = interface->altsetting->desc.bInterfaceNumber;
-       s32 result;
-+      if (!config_data)
-+              return -ENOMEM;
-       if (usb_control_msg(usbdev, usb_rcvctrlpipe(usbdev, 0),
-                           0x86, 0xC0, 0, 0, config_data, 17,
-                           USB_CTRL_SET_TIMEOUT) != 0x11) {
-+              kfree(config_data);
-               return -EIO;
-       }
-@@ -2895,6 +2898,7 @@ static int hso_get_config_data(struct us
-       if (config_data[16] & 0x1)
-               result |= HSO_INFO_CRC_BUG;
-+      kfree(config_data);
-       return result;
- }
diff --git a/target/linux/generic/patches-3.8/010-mtd_mp25p80_add_gd25q32_gd25q64.patch b/target/linux/generic/patches-3.8/010-mtd_mp25p80_add_gd25q32_gd25q64.patch
deleted file mode 100644 (file)
index 6ec137f..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/drivers/mtd/devices/m25p80.c
-+++ b/drivers/mtd/devices/m25p80.c
-@@ -642,6 +642,10 @@ static const struct spi_device_id m25p_i
-       /* Everspin */
-       { "mr25h256", CAT25_INFO(  32 * 1024, 1, 256, 2) },
-+      /* GigaDevice */
-+      { "gd25q32", INFO(0xc84016, 0, 64 * 1024,  64, SECT_4K) },
-+      { "gd25q64", INFO(0xc84017, 0, 64 * 1024, 128, SECT_4K) },
-+
-       /* Intel/Numonyx -- xxxs33b */
-       { "160s33b",  INFO(0x898911, 0, 64 * 1024,  32, 0) },
-       { "320s33b",  INFO(0x898912, 0, 64 * 1024,  64, 0) },
diff --git a/target/linux/generic/patches-3.8/020-ssb_update.patch b/target/linux/generic/patches-3.8/020-ssb_update.patch
deleted file mode 100644 (file)
index 7baa17d..0000000
+++ /dev/null
@@ -1,1589 +0,0 @@
---- a/drivers/ssb/Kconfig
-+++ b/drivers/ssb/Kconfig
-@@ -136,10 +136,15 @@ config SSB_DRIVER_MIPS
-         If unsure, say N
-+config SSB_SFLASH
-+      bool "SSB serial flash support"
-+      depends on SSB_DRIVER_MIPS
-+      default y
-+
- # Assumption: We are on embedded, if we compile the MIPS core.
- config SSB_EMBEDDED
-       bool
--      depends on SSB_DRIVER_MIPS
-+      depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
-       default y
- config SSB_DRIVER_EXTIF
---- a/drivers/ssb/Makefile
-+++ b/drivers/ssb/Makefile
-@@ -11,6 +11,7 @@ ssb-$(CONFIG_SSB_SDIOHOST)           += sdio.o
- # built-in drivers
- ssb-y                                 += driver_chipcommon.o
- ssb-y                                 += driver_chipcommon_pmu.o
-+ssb-$(CONFIG_SSB_SFLASH)              += driver_chipcommon_sflash.o
- ssb-$(CONFIG_SSB_DRIVER_MIPS)         += driver_mipscore.o
- ssb-$(CONFIG_SSB_DRIVER_EXTIF)                += driver_extif.o
- ssb-$(CONFIG_SSB_DRIVER_PCICORE)      += driver_pcicore.o
---- a/drivers/ssb/driver_chipcommon.c
-+++ b/drivers/ssb/driver_chipcommon.c
-@@ -354,7 +354,7 @@ void ssb_chipcommon_init(struct ssb_chip
-       if (cc->dev->id.revision >= 11)
-               cc->status = chipco_read32(cc, SSB_CHIPCO_CHIPSTAT);
--      ssb_dprintk(KERN_INFO PFX "chipcommon status is 0x%x\n", cc->status);
-+      ssb_dbg("chipcommon status is 0x%x\n", cc->status);
-       if (cc->dev->id.revision >= 20) {
-               chipco_write32(cc, SSB_CHIPCO_GPIOPULLUP, 0);
---- a/drivers/ssb/driver_chipcommon_pmu.c
-+++ b/drivers/ssb/driver_chipcommon_pmu.c
-@@ -110,8 +110,8 @@ static void ssb_pmu0_pllinit_r0(struct s
-               return;
-       }
--      ssb_printk(KERN_INFO PFX "Programming PLL to %u.%03u MHz\n",
--                 (crystalfreq / 1000), (crystalfreq % 1000));
-+      ssb_info("Programming PLL to %u.%03u MHz\n",
-+               crystalfreq / 1000, crystalfreq % 1000);
-       /* First turn the PLL off. */
-       switch (bus->chip_id) {
-@@ -138,7 +138,7 @@ static void ssb_pmu0_pllinit_r0(struct s
-       }
-       tmp = chipco_read32(cc, SSB_CHIPCO_CLKCTLST);
-       if (tmp & SSB_CHIPCO_CLKCTLST_HAVEHT)
--              ssb_printk(KERN_EMERG PFX "Failed to turn the PLL off!\n");
-+              ssb_emerg("Failed to turn the PLL off!\n");
-       /* Set PDIV in PLL control 0. */
-       pllctl = ssb_chipco_pll_read(cc, SSB_PMU0_PLLCTL0);
-@@ -249,8 +249,8 @@ static void ssb_pmu1_pllinit_r0(struct s
-               return;
-       }
--      ssb_printk(KERN_INFO PFX "Programming PLL to %u.%03u MHz\n",
--                 (crystalfreq / 1000), (crystalfreq % 1000));
-+      ssb_info("Programming PLL to %u.%03u MHz\n",
-+               crystalfreq / 1000, crystalfreq % 1000);
-       /* First turn the PLL off. */
-       switch (bus->chip_id) {
-@@ -275,7 +275,7 @@ static void ssb_pmu1_pllinit_r0(struct s
-       }
-       tmp = chipco_read32(cc, SSB_CHIPCO_CLKCTLST);
-       if (tmp & SSB_CHIPCO_CLKCTLST_HAVEHT)
--              ssb_printk(KERN_EMERG PFX "Failed to turn the PLL off!\n");
-+              ssb_emerg("Failed to turn the PLL off!\n");
-       /* Set p1div and p2div. */
-       pllctl = ssb_chipco_pll_read(cc, SSB_PMU1_PLLCTL0);
-@@ -349,9 +349,8 @@ static void ssb_pmu_pll_init(struct ssb_
-       case 43222:
-               break;
-       default:
--              ssb_printk(KERN_ERR PFX
--                         "ERROR: PLL init unknown for device %04X\n",
--                         bus->chip_id);
-+              ssb_err("ERROR: PLL init unknown for device %04X\n",
-+                      bus->chip_id);
-       }
- }
-@@ -472,9 +471,8 @@ static void ssb_pmu_resources_init(struc
-               max_msk = 0xFFFFF;
-               break;
-       default:
--              ssb_printk(KERN_ERR PFX
--                         "ERROR: PMU resource config unknown for device %04X\n",
--                         bus->chip_id);
-+              ssb_err("ERROR: PMU resource config unknown for device %04X\n",
-+                      bus->chip_id);
-       }
-       if (updown_tab) {
-@@ -526,8 +524,8 @@ void ssb_pmu_init(struct ssb_chipcommon
-       pmucap = chipco_read32(cc, SSB_CHIPCO_PMU_CAP);
-       cc->pmu.rev = (pmucap & SSB_CHIPCO_PMU_CAP_REVISION);
--      ssb_dprintk(KERN_DEBUG PFX "Found rev %u PMU (capabilities 0x%08X)\n",
--                  cc->pmu.rev, pmucap);
-+      ssb_dbg("Found rev %u PMU (capabilities 0x%08X)\n",
-+              cc->pmu.rev, pmucap);
-       if (cc->pmu.rev == 1)
-               chipco_mask32(cc, SSB_CHIPCO_PMU_CTL,
-@@ -638,9 +636,8 @@ u32 ssb_pmu_get_alp_clock(struct ssb_chi
-       case 0x5354:
-               ssb_pmu_get_alp_clock_clk0(cc);
-       default:
--              ssb_printk(KERN_ERR PFX
--                         "ERROR: PMU alp clock unknown for device %04X\n",
--                         bus->chip_id);
-+              ssb_err("ERROR: PMU alp clock unknown for device %04X\n",
-+                      bus->chip_id);
-               return 0;
-       }
- }
-@@ -654,9 +651,8 @@ u32 ssb_pmu_get_cpu_clock(struct ssb_chi
-               /* 5354 chip uses a non programmable PLL of frequency 240MHz */
-               return 240000000;
-       default:
--              ssb_printk(KERN_ERR PFX
--                         "ERROR: PMU cpu clock unknown for device %04X\n",
--                         bus->chip_id);
-+              ssb_err("ERROR: PMU cpu clock unknown for device %04X\n",
-+                      bus->chip_id);
-               return 0;
-       }
- }
-@@ -669,9 +665,8 @@ u32 ssb_pmu_get_controlclock(struct ssb_
-       case 0x5354:
-               return 120000000;
-       default:
--              ssb_printk(KERN_ERR PFX
--                         "ERROR: PMU controlclock unknown for device %04X\n",
--                         bus->chip_id);
-+              ssb_err("ERROR: PMU controlclock unknown for device %04X\n",
-+                      bus->chip_id);
-               return 0;
-       }
- }
-@@ -692,8 +687,23 @@ void ssb_pmu_spuravoid_pllupdate(struct
-               pmu_ctl = SSB_CHIPCO_PMU_CTL_PLL_UPD;
-               break;
-       case 43222:
--              /* TODO: BCM43222 requires updating PLLs too */
--              return;
-+              if (spuravoid == 1) {
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL0, 0x11500008);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL1, 0x0C000C06);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL2, 0x0F600a08);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL3, 0x00000000);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL4, 0x2001E920);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL5, 0x88888815);
-+              } else {
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL0, 0x11100008);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL1, 0x0c000c06);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL2, 0x03000a08);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL3, 0x00000000);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL4, 0x200005c0);
-+                      ssb_chipco_pll_write(cc, SSB_PMU1_PLLCTL5, 0x88888855);
-+              }
-+              pmu_ctl = SSB_CHIPCO_PMU_CTL_PLL_UPD;
-+              break;
-       default:
-               ssb_printk(KERN_ERR PFX
-                          "Unknown spuravoidance settings for chip 0x%04X, not changing PLL\n",
---- /dev/null
-+++ b/drivers/ssb/driver_chipcommon_sflash.c
-@@ -0,0 +1,164 @@
-+/*
-+ * Sonics Silicon Backplane
-+ * ChipCommon serial flash interface
-+ *
-+ * Licensed under the GNU/GPL. See COPYING for details.
-+ */
-+
-+#include <linux/ssb/ssb.h>
-+
-+#include "ssb_private.h"
-+
-+static struct resource ssb_sflash_resource = {
-+      .name   = "ssb_sflash",
-+      .start  = SSB_FLASH2,
-+      .end    = 0,
-+      .flags  = IORESOURCE_MEM | IORESOURCE_READONLY,
-+};
-+
-+struct platform_device ssb_sflash_dev = {
-+      .name           = "ssb_sflash",
-+      .resource       = &ssb_sflash_resource,
-+      .num_resources  = 1,
-+};
-+
-+struct ssb_sflash_tbl_e {
-+      char *name;
-+      u32 id;
-+      u32 blocksize;
-+      u16 numblocks;
-+};
-+
-+static const struct ssb_sflash_tbl_e ssb_sflash_st_tbl[] = {
-+      { "M25P20", 0x11, 0x10000, 4, },
-+      { "M25P40", 0x12, 0x10000, 8, },
-+
-+      { "M25P16", 0x14, 0x10000, 32, },
-+      { "M25P32", 0x15, 0x10000, 64, },
-+      { "M25P64", 0x16, 0x10000, 128, },
-+      { "M25FL128", 0x17, 0x10000, 256, },
-+      { 0 },
-+};
-+
-+static const struct ssb_sflash_tbl_e ssb_sflash_sst_tbl[] = {
-+      { "SST25WF512", 1, 0x1000, 16, },
-+      { "SST25VF512", 0x48, 0x1000, 16, },
-+      { "SST25WF010", 2, 0x1000, 32, },
-+      { "SST25VF010", 0x49, 0x1000, 32, },
-+      { "SST25WF020", 3, 0x1000, 64, },
-+      { "SST25VF020", 0x43, 0x1000, 64, },
-+      { "SST25WF040", 4, 0x1000, 128, },
-+      { "SST25VF040", 0x44, 0x1000, 128, },
-+      { "SST25VF040B", 0x8d, 0x1000, 128, },
-+      { "SST25WF080", 5, 0x1000, 256, },
-+      { "SST25VF080B", 0x8e, 0x1000, 256, },
-+      { "SST25VF016", 0x41, 0x1000, 512, },
-+      { "SST25VF032", 0x4a, 0x1000, 1024, },
-+      { "SST25VF064", 0x4b, 0x1000, 2048, },
-+      { 0 },
-+};
-+
-+static const struct ssb_sflash_tbl_e ssb_sflash_at_tbl[] = {
-+      { "AT45DB011", 0xc, 256, 512, },
-+      { "AT45DB021", 0x14, 256, 1024, },
-+      { "AT45DB041", 0x1c, 256, 2048, },
-+      { "AT45DB081", 0x24, 256, 4096, },
-+      { "AT45DB161", 0x2c, 512, 4096, },
-+      { "AT45DB321", 0x34, 512, 8192, },
-+      { "AT45DB642", 0x3c, 1024, 8192, },
-+      { 0 },
-+};
-+
-+static void ssb_sflash_cmd(struct ssb_chipcommon *cc, u32 opcode)
-+{
-+      int i;
-+      chipco_write32(cc, SSB_CHIPCO_FLASHCTL,
-+                     SSB_CHIPCO_FLASHCTL_START | opcode);
-+      for (i = 0; i < 1000; i++) {
-+              if (!(chipco_read32(cc, SSB_CHIPCO_FLASHCTL) &
-+                    SSB_CHIPCO_FLASHCTL_BUSY))
-+                      return;
-+              cpu_relax();
-+      }
-+      pr_err("SFLASH control command failed (timeout)!\n");
-+}
-+
-+/* Initialize serial flash access */
-+int ssb_sflash_init(struct ssb_chipcommon *cc)
-+{
-+      struct ssb_sflash *sflash = &cc->dev->bus->mipscore.sflash;
-+      const struct ssb_sflash_tbl_e *e;
-+      u32 id, id2;
-+
-+      switch (cc->capabilities & SSB_CHIPCO_CAP_FLASHT) {
-+      case SSB_CHIPCO_FLASHT_STSER:
-+              ssb_sflash_cmd(cc, SSB_CHIPCO_FLASHCTL_ST_DP);
-+
-+              chipco_write32(cc, SSB_CHIPCO_FLASHADDR, 0);
-+              ssb_sflash_cmd(cc, SSB_CHIPCO_FLASHCTL_ST_RES);
-+              id = chipco_read32(cc, SSB_CHIPCO_FLASHDATA);
-+
-+              chipco_write32(cc, SSB_CHIPCO_FLASHADDR, 1);
-+              ssb_sflash_cmd(cc, SSB_CHIPCO_FLASHCTL_ST_RES);
-+              id2 = chipco_read32(cc, SSB_CHIPCO_FLASHDATA);
-+
-+              switch (id) {
-+              case 0xbf:
-+                      for (e = ssb_sflash_sst_tbl; e->name; e++) {
-+                              if (e->id == id2)
-+                                      break;
-+                      }
-+                      break;
-+              case 0x13:
-+                      return -ENOTSUPP;
-+              default:
-+                      for (e = ssb_sflash_st_tbl; e->name; e++) {
-+                              if (e->id == id)
-+                                      break;
-+                      }
-+                      break;
-+              }
-+              if (!e->name) {
-+                      pr_err("Unsupported ST serial flash (id: 0x%X, id2: 0x%X)\n",
-+                             id, id2);
-+                      return -ENOTSUPP;
-+              }
-+
-+              break;
-+      case SSB_CHIPCO_FLASHT_ATSER:
-+              ssb_sflash_cmd(cc, SSB_CHIPCO_FLASHCTL_AT_STATUS);
-+              id = chipco_read32(cc, SSB_CHIPCO_FLASHDATA) & 0x3c;
-+
-+              for (e = ssb_sflash_at_tbl; e->name; e++) {
-+                      if (e->id == id)
-+                              break;
-+              }
-+              if (!e->name) {
-+                      pr_err("Unsupported Atmel serial flash (id: 0x%X)\n",
-+                             id);
-+                      return -ENOTSUPP;
-+              }
-+
-+              break;
-+      default:
-+              pr_err("Unsupported flash type\n");
-+              return -ENOTSUPP;
-+      }
-+
-+      sflash->window = SSB_FLASH2;
-+      sflash->blocksize = e->blocksize;
-+      sflash->numblocks = e->numblocks;
-+      sflash->size = sflash->blocksize * sflash->numblocks;
-+      sflash->present = true;
-+
-+      pr_info("Found %s serial flash (size: %dKiB, blocksize: 0x%X, blocks: %d)\n",
-+              e->name, sflash->size / 1024, e->blocksize, e->numblocks);
-+
-+      /* Prepare platform device, but don't register it yet. It's too early,
-+       * malloc (required by device_private_init) is not available yet. */
-+      ssb_sflash_dev.resource[0].end = ssb_sflash_dev.resource[0].start +
-+                                       sflash->size;
-+      ssb_sflash_dev.dev.platform_data = sflash;
-+
-+      return 0;
-+}
---- a/drivers/ssb/driver_gpio.c
-+++ b/drivers/ssb/driver_gpio.c
-@@ -74,6 +74,16 @@ static void ssb_gpio_chipco_free(struct
-       ssb_chipco_gpio_pullup(&bus->chipco, 1 << gpio, 0);
- }
-+static int ssb_gpio_chipco_to_irq(struct gpio_chip *chip, unsigned gpio)
-+{
-+      struct ssb_bus *bus = ssb_gpio_get_bus(chip);
-+
-+      if (bus->bustype == SSB_BUSTYPE_SSB)
-+              return ssb_mips_irq(bus->chipco.dev) + 2;
-+      else
-+              return -EINVAL;
-+}
-+
- static int ssb_gpio_chipco_init(struct ssb_bus *bus)
- {
-       struct gpio_chip *chip = &bus->gpio;
-@@ -86,6 +96,7 @@ static int ssb_gpio_chipco_init(struct s
-       chip->set               = ssb_gpio_chipco_set_value;
-       chip->direction_input   = ssb_gpio_chipco_direction_input;
-       chip->direction_output  = ssb_gpio_chipco_direction_output;
-+      chip->to_irq            = ssb_gpio_chipco_to_irq;
-       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
-@@ -134,6 +145,16 @@ static int ssb_gpio_extif_direction_outp
-       return 0;
- }
-+static int ssb_gpio_extif_to_irq(struct gpio_chip *chip, unsigned gpio)
-+{
-+      struct ssb_bus *bus = ssb_gpio_get_bus(chip);
-+
-+      if (bus->bustype == SSB_BUSTYPE_SSB)
-+              return ssb_mips_irq(bus->extif.dev) + 2;
-+      else
-+              return -EINVAL;
-+}
-+
- static int ssb_gpio_extif_init(struct ssb_bus *bus)
- {
-       struct gpio_chip *chip = &bus->gpio;
-@@ -144,6 +165,7 @@ static int ssb_gpio_extif_init(struct ss
-       chip->set               = ssb_gpio_extif_set_value;
-       chip->direction_input   = ssb_gpio_extif_direction_input;
-       chip->direction_output  = ssb_gpio_extif_direction_output;
-+      chip->to_irq            = ssb_gpio_extif_to_irq;
-       chip->ngpio             = 5;
-       /* 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/drivers/ssb/driver_mipscore.c
-+++ b/drivers/ssb/driver_mipscore.c
-@@ -10,6 +10,7 @@
- #include <linux/ssb/ssb.h>
-+#include <linux/mtd/physmap.h>
- #include <linux/serial.h>
- #include <linux/serial_core.h>
- #include <linux/serial_reg.h>
-@@ -17,6 +18,25 @@
- #include "ssb_private.h"
-+static const char *part_probes[] = { "bcm47xxpart", NULL };
-+
-+static struct physmap_flash_data ssb_pflash_data = {
-+      .part_probe_types       = part_probes,
-+};
-+
-+static struct resource ssb_pflash_resource = {
-+      .name   = "ssb_pflash",
-+      .flags  = IORESOURCE_MEM,
-+};
-+
-+struct platform_device ssb_pflash_dev = {
-+      .name           = "physmap-flash",
-+      .dev            = {
-+              .platform_data  = &ssb_pflash_data,
-+      },
-+      .resource       = &ssb_pflash_resource,
-+      .num_resources  = 1,
-+};
- static inline u32 mips_read32(struct ssb_mipscore *mcore,
-                             u16 offset)
-@@ -147,21 +167,22 @@ static void set_irq(struct ssb_device *d
-               irqflag |= (ipsflag & ~ipsflag_irq_mask[irq]);
-               ssb_write32(mdev, SSB_IPSFLAG, irqflag);
-       }
--      ssb_dprintk(KERN_INFO PFX
--                  "set_irq: core 0x%04x, irq %d => %d\n",
--                  dev->id.coreid, oldirq+2, irq+2);
-+      ssb_dbg("set_irq: core 0x%04x, irq %d => %d\n",
-+              dev->id.coreid, oldirq+2, irq+2);
- }
- static void print_irq(struct ssb_device *dev, unsigned int irq)
- {
--      int i;
-       static const char *irq_name[] = {"2(S)", "3", "4", "5", "6", "D", "I"};
--      ssb_dprintk(KERN_INFO PFX
--              "core 0x%04x, irq :", dev->id.coreid);
--      for (i = 0; i <= 6; i++) {
--              ssb_dprintk(" %s%s", irq_name[i], i==irq?"*":" ");
--      }
--      ssb_dprintk("\n");
-+      ssb_dbg("core 0x%04x, irq : %s%s %s%s %s%s %s%s %s%s %s%s %s%s\n",
-+              dev->id.coreid,
-+              irq_name[0], irq == 0 ? "*" : " ",
-+              irq_name[1], irq == 1 ? "*" : " ",
-+              irq_name[2], irq == 2 ? "*" : " ",
-+              irq_name[3], irq == 3 ? "*" : " ",
-+              irq_name[4], irq == 4 ? "*" : " ",
-+              irq_name[5], irq == 5 ? "*" : " ",
-+              irq_name[6], irq == 6 ? "*" : " ");
- }
- static void dump_irq(struct ssb_bus *bus)
-@@ -189,34 +210,43 @@ static void ssb_mips_serial_init(struct
- static void ssb_mips_flash_detect(struct ssb_mipscore *mcore)
- {
-       struct ssb_bus *bus = mcore->dev->bus;
-+      struct ssb_pflash *pflash = &mcore->pflash;
-       /* When there is no chipcommon on the bus there is 4MB flash */
-       if (!ssb_chipco_available(&bus->chipco)) {
--              mcore->pflash.present = true;
--              mcore->pflash.buswidth = 2;
--              mcore->pflash.window = SSB_FLASH1;
--              mcore->pflash.window_size = SSB_FLASH1_SZ;
--              return;
-+              pflash->present = true;
-+              pflash->buswidth = 2;
-+              pflash->window = SSB_FLASH1;
-+              pflash->window_size = SSB_FLASH1_SZ;
-+              goto ssb_pflash;
-       }
-       /* There is ChipCommon, so use it to read info about flash */
-       switch (bus->chipco.capabilities & SSB_CHIPCO_CAP_FLASHT) {
-       case SSB_CHIPCO_FLASHT_STSER:
-       case SSB_CHIPCO_FLASHT_ATSER:
--              pr_err("Serial flash not supported\n");
-+              pr_debug("Found serial flash\n");
-+              ssb_sflash_init(&bus->chipco);
-               break;
-       case SSB_CHIPCO_FLASHT_PARA:
-               pr_debug("Found parallel flash\n");
--              mcore->pflash.present = true;
--              mcore->pflash.window = SSB_FLASH2;
--              mcore->pflash.window_size = SSB_FLASH2_SZ;
-+              pflash->present = true;
-+              pflash->window = SSB_FLASH2;
-+              pflash->window_size = SSB_FLASH2_SZ;
-               if ((ssb_read32(bus->chipco.dev, SSB_CHIPCO_FLASH_CFG)
-                              & SSB_CHIPCO_CFG_DS16) == 0)
--                      mcore->pflash.buswidth = 1;
-+                      pflash->buswidth = 1;
-               else
--                      mcore->pflash.buswidth = 2;
-+                      pflash->buswidth = 2;
-               break;
-       }
-+
-+ssb_pflash:
-+      if (pflash->present) {
-+              ssb_pflash_data.width = pflash->buswidth;
-+              ssb_pflash_resource.start = pflash->window;
-+              ssb_pflash_resource.end = pflash->window + pflash->window_size;
-+      }
- }
- u32 ssb_cpu_clock(struct ssb_mipscore *mcore)
-@@ -257,7 +287,7 @@ void ssb_mipscore_init(struct ssb_mipsco
-       if (!mcore->dev)
-               return; /* We don't have a MIPS core */
--      ssb_dprintk(KERN_INFO PFX "Initializing MIPS core...\n");
-+      ssb_dbg("Initializing MIPS core...\n");
-       bus = mcore->dev->bus;
-       hz = ssb_clockspeed(bus);
-@@ -305,7 +335,7 @@ void ssb_mipscore_init(struct ssb_mipsco
-                       break;
-               }
-       }
--      ssb_dprintk(KERN_INFO PFX "after irq reconfiguration\n");
-+      ssb_dbg("after irq reconfiguration\n");
-       dump_irq(bus);
-       ssb_mips_serial_init(mcore);
---- a/drivers/ssb/driver_pcicore.c
-+++ b/drivers/ssb/driver_pcicore.c
-@@ -263,8 +263,7 @@ int ssb_pcicore_plat_dev_init(struct pci
-               return -ENODEV;
-       }
--      ssb_printk(KERN_INFO "PCI: Fixing up device %s\n",
--                 pci_name(d));
-+      ssb_info("PCI: Fixing up device %s\n", pci_name(d));
-       /* Fix up interrupt lines */
-       d->irq = ssb_mips_irq(extpci_core->dev) + 2;
-@@ -285,12 +284,12 @@ static void ssb_pcicore_fixup_pcibridge(
-       if (dev->bus->number != 0 || PCI_SLOT(dev->devfn) != 0)
-               return;
--      ssb_printk(KERN_INFO "PCI: Fixing up bridge %s\n", pci_name(dev));
-+      ssb_info("PCI: Fixing up bridge %s\n", pci_name(dev));
-       /* Enable PCI bridge bus mastering and memory space */
-       pci_set_master(dev);
-       if (pcibios_enable_device(dev, ~0) < 0) {
--              ssb_printk(KERN_ERR "PCI: SSB bridge enable failed\n");
-+              ssb_err("PCI: SSB bridge enable failed\n");
-               return;
-       }
-@@ -299,8 +298,8 @@ static void ssb_pcicore_fixup_pcibridge(
-       /* Make sure our latency is high enough to handle the devices behind us */
-       lat = 168;
--      ssb_printk(KERN_INFO "PCI: Fixing latency timer of device %s to %u\n",
--                 pci_name(dev), lat);
-+      ssb_info("PCI: Fixing latency timer of device %s to %u\n",
-+               pci_name(dev), lat);
-       pci_write_config_byte(dev, PCI_LATENCY_TIMER, lat);
- }
- DECLARE_PCI_FIXUP_EARLY(PCI_ANY_ID, PCI_ANY_ID, ssb_pcicore_fixup_pcibridge);
-@@ -323,7 +322,7 @@ static void ssb_pcicore_init_hostmode(st
-               return;
-       extpci_core = pc;
--      ssb_dprintk(KERN_INFO PFX "PCIcore in host mode found\n");
-+      ssb_dbg("PCIcore in host mode found\n");
-       /* Reset devices on the external PCI bus */
-       val = SSB_PCICORE_CTL_RST_OE;
-       val |= SSB_PCICORE_CTL_CLK_OE;
-@@ -338,7 +337,7 @@ static void ssb_pcicore_init_hostmode(st
-       udelay(1); /* Assertion time demanded by the PCI standard */
-       if (pc->dev->bus->has_cardbus_slot) {
--              ssb_dprintk(KERN_INFO PFX "CardBus slot detected\n");
-+              ssb_dbg("CardBus slot detected\n");
-               pc->cardbusmode = 1;
-               /* GPIO 1 resets the bridge */
-               ssb_gpio_out(pc->dev->bus, 1, 1);
---- a/drivers/ssb/embedded.c
-+++ b/drivers/ssb/embedded.c
-@@ -57,9 +57,8 @@ int ssb_watchdog_register(struct ssb_bus
-                                            bus->busnumber, &wdt,
-                                            sizeof(wdt));
-       if (IS_ERR(pdev)) {
--              ssb_dprintk(KERN_INFO PFX
--                          "can not register watchdog device, err: %li\n",
--                          PTR_ERR(pdev));
-+              ssb_dbg("can not register watchdog device, err: %li\n",
-+                      PTR_ERR(pdev));
-               return PTR_ERR(pdev);
-       }
---- a/drivers/ssb/main.c
-+++ b/drivers/ssb/main.c
-@@ -275,8 +275,8 @@ int ssb_devices_thaw(struct ssb_freeze_c
-               err = sdrv->probe(sdev, &sdev->id);
-               if (err) {
--                      ssb_printk(KERN_ERR PFX "Failed to thaw device %s\n",
--                                 dev_name(sdev->dev));
-+                      ssb_err("Failed to thaw device %s\n",
-+                              dev_name(sdev->dev));
-                       result = err;
-               }
-               ssb_device_put(sdev);
-@@ -447,10 +447,9 @@ void ssb_bus_unregister(struct ssb_bus *
-       err = ssb_gpio_unregister(bus);
-       if (err == -EBUSY)
--              ssb_dprintk(KERN_ERR PFX "Some GPIOs are still in use.\n");
-+              ssb_dbg("Some GPIOs are still in use\n");
-       else if (err)
--              ssb_dprintk(KERN_ERR PFX
--                          "Can not unregister GPIO driver: %i\n", err);
-+              ssb_dbg("Can not unregister GPIO driver: %i\n", err);
-       ssb_buses_lock();
-       ssb_devices_unregister(bus);
-@@ -497,8 +496,7 @@ static int ssb_devices_register(struct s
-               devwrap = kzalloc(sizeof(*devwrap), GFP_KERNEL);
-               if (!devwrap) {
--                      ssb_printk(KERN_ERR PFX
--                                 "Could not allocate device\n");
-+                      ssb_err("Could not allocate device\n");
-                       err = -ENOMEM;
-                       goto error;
-               }
-@@ -537,9 +535,7 @@ static int ssb_devices_register(struct s
-               sdev->dev = dev;
-               err = device_register(dev);
-               if (err) {
--                      ssb_printk(KERN_ERR PFX
--                                 "Could not register %s\n",
--                                 dev_name(dev));
-+                      ssb_err("Could not register %s\n", dev_name(dev));
-                       /* Set dev to NULL to not unregister
-                        * dev on error unwinding. */
-                       sdev->dev = NULL;
-@@ -549,6 +545,22 @@ static int ssb_devices_register(struct s
-               dev_idx++;
-       }
-+#ifdef CONFIG_SSB_DRIVER_MIPS
-+      if (bus->mipscore.pflash.present) {
-+              err = platform_device_register(&ssb_pflash_dev);
-+              if (err)
-+                      pr_err("Error registering parallel flash\n");
-+      }
-+#endif
-+
-+#ifdef CONFIG_SSB_SFLASH
-+      if (bus->mipscore.sflash.present) {
-+              err = platform_device_register(&ssb_sflash_dev);
-+              if (err)
-+                      pr_err("Error registering serial flash\n");
-+      }
-+#endif
-+
-       return 0;
- error:
-       /* Unwind the already registered devices. */
-@@ -817,10 +829,9 @@ static int ssb_bus_register(struct ssb_b
-       ssb_mipscore_init(&bus->mipscore);
-       err = ssb_gpio_init(bus);
-       if (err == -ENOTSUPP)
--              ssb_dprintk(KERN_DEBUG PFX "GPIO driver not activated\n");
-+              ssb_dbg("GPIO driver not activated\n");
-       else if (err)
--              ssb_dprintk(KERN_ERR PFX
--                         "Error registering GPIO driver: %i\n", err);
-+              ssb_dbg("Error registering GPIO driver: %i\n", err);
-       err = ssb_fetch_invariants(bus, get_invariants);
-       if (err) {
-               ssb_bus_may_powerdown(bus);
-@@ -870,11 +881,11 @@ int ssb_bus_pcibus_register(struct ssb_b
-       err = ssb_bus_register(bus, ssb_pci_get_invariants, 0);
-       if (!err) {
--              ssb_printk(KERN_INFO PFX "Sonics Silicon Backplane found on "
--                         "PCI device %s\n", dev_name(&host_pci->dev));
-+              ssb_info("Sonics Silicon Backplane found on PCI device %s\n",
-+                       dev_name(&host_pci->dev));
-       } else {
--              ssb_printk(KERN_ERR PFX "Failed to register PCI version"
--                         " of SSB with error %d\n", err);
-+              ssb_err("Failed to register PCI version of SSB with error %d\n",
-+                      err);
-       }
-       return err;
-@@ -895,8 +906,8 @@ int ssb_bus_pcmciabus_register(struct ss
-       err = ssb_bus_register(bus, ssb_pcmcia_get_invariants, baseaddr);
-       if (!err) {
--              ssb_printk(KERN_INFO PFX "Sonics Silicon Backplane found on "
--                         "PCMCIA device %s\n", pcmcia_dev->devname);
-+              ssb_info("Sonics Silicon Backplane found on PCMCIA device %s\n",
-+                       pcmcia_dev->devname);
-       }
-       return err;
-@@ -917,8 +928,8 @@ int ssb_bus_sdiobus_register(struct ssb_
-       err = ssb_bus_register(bus, ssb_sdio_get_invariants, ~0);
-       if (!err) {
--              ssb_printk(KERN_INFO PFX "Sonics Silicon Backplane found on "
--                         "SDIO device %s\n", sdio_func_id(func));
-+              ssb_info("Sonics Silicon Backplane found on SDIO device %s\n",
-+                       sdio_func_id(func));
-       }
-       return err;
-@@ -936,8 +947,8 @@ int ssb_bus_ssbbus_register(struct ssb_b
-       err = ssb_bus_register(bus, get_invariants, baseaddr);
-       if (!err) {
--              ssb_printk(KERN_INFO PFX "Sonics Silicon Backplane found at "
--                         "address 0x%08lX\n", baseaddr);
-+              ssb_info("Sonics Silicon Backplane found at address 0x%08lX\n",
-+                       baseaddr);
-       }
-       return err;
-@@ -1331,7 +1342,7 @@ out:
- #endif
-       return err;
- error:
--      ssb_printk(KERN_ERR PFX "Bus powerdown failed\n");
-+      ssb_err("Bus powerdown failed\n");
-       goto out;
- }
- EXPORT_SYMBOL(ssb_bus_may_powerdown);
-@@ -1354,7 +1365,7 @@ int ssb_bus_powerup(struct ssb_bus *bus,
-       return 0;
- error:
--      ssb_printk(KERN_ERR PFX "Bus powerup failed\n");
-+      ssb_err("Bus powerup failed\n");
-       return err;
- }
- EXPORT_SYMBOL(ssb_bus_powerup);
-@@ -1462,15 +1473,13 @@ static int __init ssb_modinit(void)
-       err = b43_pci_ssb_bridge_init();
-       if (err) {
--              ssb_printk(KERN_ERR "Broadcom 43xx PCI-SSB-bridge "
--                         "initialization failed\n");
-+              ssb_err("Broadcom 43xx PCI-SSB-bridge initialization failed\n");
-               /* don't fail SSB init because of this */
-               err = 0;
-       }
-       err = ssb_gige_init();
-       if (err) {
--              ssb_printk(KERN_ERR "SSB Broadcom Gigabit Ethernet "
--                         "driver initialization failed\n");
-+              ssb_err("SSB Broadcom Gigabit Ethernet driver initialization failed\n");
-               /* don't fail SSB init because of this */
-               err = 0;
-       }
---- a/drivers/ssb/pci.c
-+++ b/drivers/ssb/pci.c
-@@ -56,7 +56,7 @@ int ssb_pci_switch_coreidx(struct ssb_bu
-       }
-       return 0;
- error:
--      ssb_printk(KERN_ERR PFX "Failed to switch to core %u\n", coreidx);
-+      ssb_err("Failed to switch to core %u\n", coreidx);
-       return -ENODEV;
- }
-@@ -67,10 +67,9 @@ int ssb_pci_switch_core(struct ssb_bus *
-       unsigned long flags;
- #if SSB_VERBOSE_PCICORESWITCH_DEBUG
--      ssb_printk(KERN_INFO PFX
--                 "Switching to %s core, index %d\n",
--                 ssb_core_name(dev->id.coreid),
--                 dev->core_index);
-+      ssb_info("Switching to %s core, index %d\n",
-+               ssb_core_name(dev->id.coreid),
-+               dev->core_index);
- #endif
-       spin_lock_irqsave(&bus->bar_lock, flags);
-@@ -231,6 +230,15 @@ static inline u8 ssb_crc8(u8 crc, u8 dat
-       return t[crc ^ data];
- }
-+static void sprom_get_mac(char *mac, const u16 *in)
-+{
-+      int i;
-+      for (i = 0; i < 3; i++) {
-+              *mac++ = in[i] >> 8;
-+              *mac++ = in[i];
-+      }
-+}
-+
- static u8 ssb_sprom_crc(const u16 *sprom, u16 size)
- {
-       int word;
-@@ -278,7 +286,7 @@ static int sprom_do_write(struct ssb_bus
-       u32 spromctl;
-       u16 size = bus->sprom_size;
--      ssb_printk(KERN_NOTICE PFX "Writing SPROM. Do NOT turn off the power! Please stand by...\n");
-+      ssb_notice("Writing SPROM. Do NOT turn off the power! Please stand by...\n");
-       err = pci_read_config_dword(pdev, SSB_SPROMCTL, &spromctl);
-       if (err)
-               goto err_ctlreg;
-@@ -286,17 +294,17 @@ static int sprom_do_write(struct ssb_bus
-       err = pci_write_config_dword(pdev, SSB_SPROMCTL, spromctl);
-       if (err)
-               goto err_ctlreg;
--      ssb_printk(KERN_NOTICE PFX "[ 0%%");
-+      ssb_notice("[ 0%%");
-       msleep(500);
-       for (i = 0; i < size; i++) {
-               if (i == size / 4)
--                      ssb_printk("25%%");
-+                      ssb_cont("25%%");
-               else if (i == size / 2)
--                      ssb_printk("50%%");
-+                      ssb_cont("50%%");
-               else if (i == (size * 3) / 4)
--                      ssb_printk("75%%");
-+                      ssb_cont("75%%");
-               else if (i % 2)
--                      ssb_printk(".");
-+                      ssb_cont(".");
-               writew(sprom[i], bus->mmio + bus->sprom_offset + (i * 2));
-               mmiowb();
-               msleep(20);
-@@ -309,12 +317,12 @@ static int sprom_do_write(struct ssb_bus
-       if (err)
-               goto err_ctlreg;
-       msleep(500);
--      ssb_printk("100%% ]\n");
--      ssb_printk(KERN_NOTICE PFX "SPROM written.\n");
-+      ssb_cont("100%% ]\n");
-+      ssb_notice("SPROM written\n");
-       return 0;
- err_ctlreg:
--      ssb_printk(KERN_ERR PFX "Could not access SPROM control register.\n");
-+      ssb_err("Could not access SPROM control register.\n");
-       return err;
- }
-@@ -339,10 +347,23 @@ static s8 r123_extract_antgain(u8 sprom_
-       return (s8)gain;
- }
-+static void sprom_extract_r23(struct ssb_sprom *out, const u16 *in)
-+{
-+      SPEX(boardflags_hi, SSB_SPROM2_BFLHI, 0xFFFF, 0);
-+      SPEX(opo, SSB_SPROM2_OPO, SSB_SPROM2_OPO_VALUE, 0);
-+      SPEX(pa1lob0, SSB_SPROM2_PA1LOB0, 0xFFFF, 0);
-+      SPEX(pa1lob1, SSB_SPROM2_PA1LOB1, 0xFFFF, 0);
-+      SPEX(pa1lob2, SSB_SPROM2_PA1LOB2, 0xFFFF, 0);
-+      SPEX(pa1hib0, SSB_SPROM2_PA1HIB0, 0xFFFF, 0);
-+      SPEX(pa1hib1, SSB_SPROM2_PA1HIB1, 0xFFFF, 0);
-+      SPEX(pa1hib2, SSB_SPROM2_PA1HIB2, 0xFFFF, 0);
-+      SPEX(maxpwr_ah, SSB_SPROM2_MAXP_A, SSB_SPROM2_MAXP_A_HI, 0);
-+      SPEX(maxpwr_al, SSB_SPROM2_MAXP_A, SSB_SPROM2_MAXP_A_LO,
-+           SSB_SPROM2_MAXP_A_LO_SHIFT);
-+}
-+
- static void sprom_extract_r123(struct ssb_sprom *out, const u16 *in)
- {
--      int i;
--      u16 v;
-       u16 loc[3];
-       if (out->revision == 3)                 /* rev 3 moved MAC */
-@@ -352,19 +373,10 @@ static void sprom_extract_r123(struct ss
-               loc[1] = SSB_SPROM1_ET0MAC;
-               loc[2] = SSB_SPROM1_ET1MAC;
-       }
--      for (i = 0; i < 3; i++) {
--              v = in[SPOFF(loc[0]) + i];
--              *(((__be16 *)out->il0mac) + i) = cpu_to_be16(v);
--      }
-+      sprom_get_mac(out->il0mac, &in[SPOFF(loc[0])]);
-       if (out->revision < 3) {        /* only rev 1-2 have et0, et1 */
--              for (i = 0; i < 3; i++) {
--                      v = in[SPOFF(loc[1]) + i];
--                      *(((__be16 *)out->et0mac) + i) = cpu_to_be16(v);
--              }
--              for (i = 0; i < 3; i++) {
--                      v = in[SPOFF(loc[2]) + i];
--                      *(((__be16 *)out->et1mac) + i) = cpu_to_be16(v);
--              }
-+              sprom_get_mac(out->et0mac, &in[SPOFF(loc[1])]);
-+              sprom_get_mac(out->et1mac, &in[SPOFF(loc[2])]);
-       }
-       SPEX(et0phyaddr, SSB_SPROM1_ETHPHY, SSB_SPROM1_ETHPHY_ET0A, 0);
-       SPEX(et1phyaddr, SSB_SPROM1_ETHPHY, SSB_SPROM1_ETHPHY_ET1A,
-@@ -372,6 +384,7 @@ static void sprom_extract_r123(struct ss
-       SPEX(et0mdcport, SSB_SPROM1_ETHPHY, SSB_SPROM1_ETHPHY_ET0M, 14);
-       SPEX(et1mdcport, SSB_SPROM1_ETHPHY, SSB_SPROM1_ETHPHY_ET1M, 15);
-       SPEX(board_rev, SSB_SPROM1_BINF, SSB_SPROM1_BINF_BREV, 0);
-+      SPEX(board_type, SSB_SPROM1_SPID, 0xFFFF, 0);
-       if (out->revision == 1)
-               SPEX(country_code, SSB_SPROM1_BINF, SSB_SPROM1_BINF_CCODE,
-                    SSB_SPROM1_BINF_CCODE_SHIFT);
-@@ -398,8 +411,7 @@ static void sprom_extract_r123(struct ss
-            SSB_SPROM1_ITSSI_A_SHIFT);
-       SPEX(itssi_bg, SSB_SPROM1_ITSSI, SSB_SPROM1_ITSSI_BG, 0);
-       SPEX(boardflags_lo, SSB_SPROM1_BFLLO, 0xFFFF, 0);
--      if (out->revision >= 2)
--              SPEX(boardflags_hi, SSB_SPROM2_BFLHI, 0xFFFF, 0);
-+
-       SPEX(alpha2[0], SSB_SPROM1_CCODE, 0xff00, 8);
-       SPEX(alpha2[1], SSB_SPROM1_CCODE, 0x00ff, 0);
-@@ -410,6 +422,8 @@ static void sprom_extract_r123(struct ss
-       out->antenna_gain.a1 = r123_extract_antgain(out->revision, in,
-                                                   SSB_SPROM1_AGAIN_A,
-                                                   SSB_SPROM1_AGAIN_A_SHIFT);
-+      if (out->revision >= 2)
-+              sprom_extract_r23(out, in);
- }
- /* Revs 4 5 and 8 have partially shared layout */
-@@ -454,23 +468,20 @@ static void sprom_extract_r458(struct ss
- static void sprom_extract_r45(struct ssb_sprom *out, const u16 *in)
- {
--      int i;
--      u16 v;
-       u16 il0mac_offset;
-       if (out->revision == 4)
-               il0mac_offset = SSB_SPROM4_IL0MAC;
-       else
-               il0mac_offset = SSB_SPROM5_IL0MAC;
--      /* extract the MAC address */
--      for (i = 0; i < 3; i++) {
--              v = in[SPOFF(il0mac_offset) + i];
--              *(((__be16 *)out->il0mac) + i) = cpu_to_be16(v);
--      }
-+
-+      sprom_get_mac(out->il0mac, &in[SPOFF(il0mac_offset)]);
-+
-       SPEX(et0phyaddr, SSB_SPROM4_ETHPHY, SSB_SPROM4_ETHPHY_ET0A, 0);
-       SPEX(et1phyaddr, SSB_SPROM4_ETHPHY, SSB_SPROM4_ETHPHY_ET1A,
-            SSB_SPROM4_ETHPHY_ET1A_SHIFT);
-       SPEX(board_rev, SSB_SPROM4_BOARDREV, 0xFFFF, 0);
-+      SPEX(board_type, SSB_SPROM1_SPID, 0xFFFF, 0);
-       if (out->revision == 4) {
-               SPEX(alpha2[0], SSB_SPROM4_CCODE, 0xff00, 8);
-               SPEX(alpha2[1], SSB_SPROM4_CCODE, 0x00ff, 0);
-@@ -530,7 +541,7 @@ static void sprom_extract_r45(struct ssb
- static void sprom_extract_r8(struct ssb_sprom *out, const u16 *in)
- {
-       int i;
--      u16 v, o;
-+      u16 o;
-       u16 pwr_info_offset[] = {
-               SSB_SROM8_PWR_INFO_CORE0, SSB_SROM8_PWR_INFO_CORE1,
-               SSB_SROM8_PWR_INFO_CORE2, SSB_SROM8_PWR_INFO_CORE3
-@@ -539,11 +550,10 @@ static void sprom_extract_r8(struct ssb_
-                       ARRAY_SIZE(out->core_pwr_info));
-       /* extract the MAC address */
--      for (i = 0; i < 3; i++) {
--              v = in[SPOFF(SSB_SPROM8_IL0MAC) + i];
--              *(((__be16 *)out->il0mac) + i) = cpu_to_be16(v);
--      }
-+      sprom_get_mac(out->il0mac, &in[SPOFF(SSB_SPROM8_IL0MAC)]);
-+
-       SPEX(board_rev, SSB_SPROM8_BOARDREV, 0xFFFF, 0);
-+      SPEX(board_type, SSB_SPROM1_SPID, 0xFFFF, 0);
-       SPEX(alpha2[0], SSB_SPROM8_CCODE, 0xff00, 8);
-       SPEX(alpha2[1], SSB_SPROM8_CCODE, 0x00ff, 0);
-       SPEX(boardflags_lo, SSB_SPROM8_BFLLO, 0xFFFF, 0);
-@@ -743,7 +753,7 @@ static int sprom_extract(struct ssb_bus
-       memset(out, 0, sizeof(*out));
-       out->revision = in[size - 1] & 0x00FF;
--      ssb_dprintk(KERN_DEBUG PFX "SPROM revision %d detected.\n", out->revision);
-+      ssb_dbg("SPROM revision %d detected\n", out->revision);
-       memset(out->et0mac, 0xFF, 6);           /* preset et0 and et1 mac */
-       memset(out->et1mac, 0xFF, 6);
-@@ -752,7 +762,7 @@ static int sprom_extract(struct ssb_bus
-                * number stored in the SPROM.
-                * Always extract r1. */
-               out->revision = 1;
--              ssb_dprintk(KERN_DEBUG PFX "SPROM treated as revision %d\n", out->revision);
-+              ssb_dbg("SPROM treated as revision %d\n", out->revision);
-       }
-       switch (out->revision) {
-@@ -769,9 +779,8 @@ static int sprom_extract(struct ssb_bus
-               sprom_extract_r8(out, in);
-               break;
-       default:
--              ssb_printk(KERN_WARNING PFX "Unsupported SPROM"
--                         " revision %d detected. Will extract"
--                         " v1\n", out->revision);
-+              ssb_warn("Unsupported SPROM revision %d detected. Will extract v1\n",
-+                       out->revision);
-               out->revision = 1;
-               sprom_extract_r123(out, in);
-       }
-@@ -791,7 +800,7 @@ static int ssb_pci_sprom_get(struct ssb_
-       u16 *buf;
-       if (!ssb_is_sprom_available(bus)) {
--              ssb_printk(KERN_ERR PFX "No SPROM available!\n");
-+              ssb_err("No SPROM available!\n");
-               return -ENODEV;
-       }
-       if (bus->chipco.dev) {  /* can be unavailable! */
-@@ -810,7 +819,7 @@ static int ssb_pci_sprom_get(struct ssb_
-       } else {
-               bus->sprom_offset = SSB_SPROM_BASE1;
-       }
--      ssb_dprintk(KERN_INFO PFX "SPROM offset is 0x%x\n", bus->sprom_offset);
-+      ssb_dbg("SPROM offset is 0x%x\n", bus->sprom_offset);
-       buf = kcalloc(SSB_SPROMSIZE_WORDS_R123, sizeof(u16), GFP_KERNEL);
-       if (!buf)
-@@ -835,18 +844,15 @@ static int ssb_pci_sprom_get(struct ssb_
-                        * available for this device in some other storage */
-                       err = ssb_fill_sprom_with_fallback(bus, sprom);
-                       if (err) {
--                              ssb_printk(KERN_WARNING PFX "WARNING: Using"
--                                         " fallback SPROM failed (err %d)\n",
--                                         err);
-+                              ssb_warn("WARNING: Using fallback SPROM failed (err %d)\n",
-+                                       err);
-                       } else {
--                              ssb_dprintk(KERN_DEBUG PFX "Using SPROM"
--                                          " revision %d provided by"
--                                          " platform.\n", sprom->revision);
-+                              ssb_dbg("Using SPROM revision %d provided by platform\n",
-+                                      sprom->revision);
-                               err = 0;
-                               goto out_free;
-                       }
--                      ssb_printk(KERN_WARNING PFX "WARNING: Invalid"
--                                 " SPROM CRC (corrupt SPROM)\n");
-+                      ssb_warn("WARNING: Invalid SPROM CRC (corrupt SPROM)\n");
-               }
-       }
-       err = sprom_extract(bus, sprom, buf, bus->sprom_size);
---- a/drivers/ssb/pcihost_wrapper.c
-+++ b/drivers/ssb/pcihost_wrapper.c
-@@ -38,7 +38,7 @@ static int ssb_pcihost_resume(struct pci
-       struct ssb_bus *ssb = pci_get_drvdata(dev);
-       int err;
--      pci_set_power_state(dev, 0);
-+      pci_set_power_state(dev, PCI_D0);
-       err = pci_enable_device(dev);
-       if (err)
-               return err;
---- a/drivers/ssb/pcmcia.c
-+++ b/drivers/ssb/pcmcia.c
-@@ -143,7 +143,7 @@ int ssb_pcmcia_switch_coreidx(struct ssb
-       return 0;
- error:
--      ssb_printk(KERN_ERR PFX "Failed to switch to core %u\n", coreidx);
-+      ssb_err("Failed to switch to core %u\n", coreidx);
-       return err;
- }
-@@ -153,10 +153,9 @@ int ssb_pcmcia_switch_core(struct ssb_bu
-       int err;
- #if SSB_VERBOSE_PCMCIACORESWITCH_DEBUG
--      ssb_printk(KERN_INFO PFX
--                 "Switching to %s core, index %d\n",
--                 ssb_core_name(dev->id.coreid),
--                 dev->core_index);
-+      ssb_info("Switching to %s core, index %d\n",
-+               ssb_core_name(dev->id.coreid),
-+               dev->core_index);
- #endif
-       err = ssb_pcmcia_switch_coreidx(bus, dev->core_index);
-@@ -192,7 +191,7 @@ int ssb_pcmcia_switch_segment(struct ssb
-       return 0;
- error:
--      ssb_printk(KERN_ERR PFX "Failed to switch pcmcia segment\n");
-+      ssb_err("Failed to switch pcmcia segment\n");
-       return err;
- }
-@@ -549,44 +548,39 @@ static int ssb_pcmcia_sprom_write_all(st
-       bool failed = 0;
-       size_t size = SSB_PCMCIA_SPROM_SIZE;
--      ssb_printk(KERN_NOTICE PFX
--                 "Writing SPROM. Do NOT turn off the power! "
--                 "Please stand by...\n");
-+      ssb_notice("Writing SPROM. Do NOT turn off the power! Please stand by...\n");
-       err = ssb_pcmcia_sprom_command(bus, SSB_PCMCIA_SPROMCTL_WRITEEN);
-       if (err) {
--              ssb_printk(KERN_NOTICE PFX
--                         "Could not enable SPROM write access.\n");
-+              ssb_notice("Could not enable SPROM write access\n");
-               return -EBUSY;
-       }
--      ssb_printk(KERN_NOTICE PFX "[ 0%%");
-+      ssb_notice("[ 0%%");
-       msleep(500);
-       for (i = 0; i < size; i++) {
-               if (i == size / 4)
--                      ssb_printk("25%%");
-+                      ssb_cont("25%%");
-               else if (i == size / 2)
--                      ssb_printk("50%%");
-+                      ssb_cont("50%%");
-               else if (i == (size * 3) / 4)
--                      ssb_printk("75%%");
-+                      ssb_cont("75%%");
-               else if (i % 2)
--                      ssb_printk(".");
-+                      ssb_cont(".");
-               err = ssb_pcmcia_sprom_write(bus, i, sprom[i]);
-               if (err) {
--                      ssb_printk(KERN_NOTICE PFX
--                                 "Failed to write to SPROM.\n");
-+                      ssb_notice("Failed to write to SPROM\n");
-                       failed = 1;
-                       break;
-               }
-       }
-       err = ssb_pcmcia_sprom_command(bus, SSB_PCMCIA_SPROMCTL_WRITEDIS);
-       if (err) {
--              ssb_printk(KERN_NOTICE PFX
--                         "Could not disable SPROM write access.\n");
-+              ssb_notice("Could not disable SPROM write access\n");
-               failed = 1;
-       }
-       msleep(500);
-       if (!failed) {
--              ssb_printk("100%% ]\n");
--              ssb_printk(KERN_NOTICE PFX "SPROM written.\n");
-+              ssb_cont("100%% ]\n");
-+              ssb_notice("SPROM written\n");
-       }
-       return failed ? -EBUSY : 0;
-@@ -700,7 +694,7 @@ static int ssb_pcmcia_do_get_invariants(
-       return -ENOSPC; /* continue with next entry */
- error:
--      ssb_printk(KERN_ERR PFX
-+      ssb_err(
-                  "PCMCIA: Failed to fetch device invariants: %s\n",
-                  error_description);
-       return -ENODEV;
-@@ -722,7 +716,7 @@ int ssb_pcmcia_get_invariants(struct ssb
-       res = pcmcia_loop_tuple(bus->host_pcmcia, CISTPL_FUNCE,
-                               ssb_pcmcia_get_mac, sprom);
-       if (res != 0) {
--              ssb_printk(KERN_ERR PFX
-+              ssb_err(
-                       "PCMCIA: Failed to fetch MAC address\n");
-               return -ENODEV;
-       }
-@@ -733,7 +727,7 @@ int ssb_pcmcia_get_invariants(struct ssb
-       if ((res == 0) || (res == -ENOSPC))
-               return 0;
--      ssb_printk(KERN_ERR PFX
-+      ssb_err(
-                       "PCMCIA: Failed to fetch device invariants\n");
-       return -ENODEV;
- }
-@@ -843,6 +837,6 @@ int ssb_pcmcia_init(struct ssb_bus *bus)
-       return 0;
- error:
--      ssb_printk(KERN_ERR PFX "Failed to initialize PCMCIA host device\n");
-+      ssb_err("Failed to initialize PCMCIA host device\n");
-       return err;
- }
---- a/drivers/ssb/scan.c
-+++ b/drivers/ssb/scan.c
-@@ -125,8 +125,7 @@ static u16 pcidev_to_chipid(struct pci_d
-               chipid_fallback = 0x4401;
-               break;
-       default:
--              ssb_printk(KERN_ERR PFX
--                         "PCI-ID not in fallback list\n");
-+              ssb_err("PCI-ID not in fallback list\n");
-       }
-       return chipid_fallback;
-@@ -152,8 +151,7 @@ static u8 chipid_to_nrcores(u16 chipid)
-       case 0x4704:
-               return 9;
-       default:
--              ssb_printk(KERN_ERR PFX
--                         "CHIPID not in nrcores fallback list\n");
-+              ssb_err("CHIPID not in nrcores fallback list\n");
-       }
-       return 1;
-@@ -320,15 +318,13 @@ int ssb_bus_scan(struct ssb_bus *bus,
-                       bus->chip_package = 0;
-               }
-       }
--      ssb_printk(KERN_INFO PFX "Found chip with id 0x%04X, rev 0x%02X and "
--                 "package 0x%02X\n", bus->chip_id, bus->chip_rev,
--                 bus->chip_package);
-+      ssb_info("Found chip with id 0x%04X, rev 0x%02X and package 0x%02X\n",
-+               bus->chip_id, bus->chip_rev, bus->chip_package);
-       if (!bus->nr_devices)
-               bus->nr_devices = chipid_to_nrcores(bus->chip_id);
-       if (bus->nr_devices > ARRAY_SIZE(bus->devices)) {
--              ssb_printk(KERN_ERR PFX
--                         "More than %d ssb cores found (%d)\n",
--                         SSB_MAX_NR_CORES, bus->nr_devices);
-+              ssb_err("More than %d ssb cores found (%d)\n",
-+                      SSB_MAX_NR_CORES, bus->nr_devices);
-               goto err_unmap;
-       }
-       if (bus->bustype == SSB_BUSTYPE_SSB) {
-@@ -370,8 +366,7 @@ int ssb_bus_scan(struct ssb_bus *bus,
-                       nr_80211_cores++;
-                       if (nr_80211_cores > 1) {
-                               if (!we_support_multiple_80211_cores(bus)) {
--                                      ssb_dprintk(KERN_INFO PFX "Ignoring additional "
--                                                  "802.11 core\n");
-+                                      ssb_dbg("Ignoring additional 802.11 core\n");
-                                       continue;
-                               }
-                       }
-@@ -379,8 +374,7 @@ int ssb_bus_scan(struct ssb_bus *bus,
-               case SSB_DEV_EXTIF:
- #ifdef CONFIG_SSB_DRIVER_EXTIF
-                       if (bus->extif.dev) {
--                              ssb_printk(KERN_WARNING PFX
--                                         "WARNING: Multiple EXTIFs found\n");
-+                              ssb_warn("WARNING: Multiple EXTIFs found\n");
-                               break;
-                       }
-                       bus->extif.dev = dev;
-@@ -388,8 +382,7 @@ int ssb_bus_scan(struct ssb_bus *bus,
-                       break;
-               case SSB_DEV_CHIPCOMMON:
-                       if (bus->chipco.dev) {
--                              ssb_printk(KERN_WARNING PFX
--                                         "WARNING: Multiple ChipCommon found\n");
-+                              ssb_warn("WARNING: Multiple ChipCommon found\n");
-                               break;
-                       }
-                       bus->chipco.dev = dev;
-@@ -398,8 +391,7 @@ int ssb_bus_scan(struct ssb_bus *bus,
-               case SSB_DEV_MIPS_3302:
- #ifdef CONFIG_SSB_DRIVER_MIPS
-                       if (bus->mipscore.dev) {
--                              ssb_printk(KERN_WARNING PFX
--                                         "WARNING: Multiple MIPS cores found\n");
-+                              ssb_warn("WARNING: Multiple MIPS cores found\n");
-                               break;
-                       }
-                       bus->mipscore.dev = dev;
-@@ -420,8 +412,7 @@ int ssb_bus_scan(struct ssb_bus *bus,
-                               }
-                       }
-                       if (bus->pcicore.dev) {
--                              ssb_printk(KERN_WARNING PFX
--                                         "WARNING: Multiple PCI(E) cores found\n");
-+                              ssb_warn("WARNING: Multiple PCI(E) cores found\n");
-                               break;
-                       }
-                       bus->pcicore.dev = dev;
---- a/drivers/ssb/sprom.c
-+++ b/drivers/ssb/sprom.c
-@@ -54,7 +54,7 @@ static int hex2sprom(u16 *sprom, const c
-       while (cnt < sprom_size_words) {
-               memcpy(tmp, dump, 4);
-               dump += 4;
--              err = strict_strtoul(tmp, 16, &parsed);
-+              err = kstrtoul(tmp, 16, &parsed);
-               if (err)
-                       return err;
-               sprom[cnt++] = swab16((u16)parsed);
-@@ -127,13 +127,13 @@ ssize_t ssb_attr_sprom_store(struct ssb_
-               goto out_kfree;
-       err = ssb_devices_freeze(bus, &freeze);
-       if (err) {
--              ssb_printk(KERN_ERR PFX "SPROM write: Could not freeze all devices\n");
-+              ssb_err("SPROM write: Could not freeze all devices\n");
-               goto out_unlock;
-       }
-       res = sprom_write(bus, sprom);
-       err = ssb_devices_thaw(&freeze);
-       if (err)
--              ssb_printk(KERN_ERR PFX "SPROM write: Could not thaw all devices\n");
-+              ssb_err("SPROM write: Could not thaw all devices\n");
- out_unlock:
-       mutex_unlock(&bus->sprom_mutex);
- out_kfree:
---- a/drivers/ssb/ssb_private.h
-+++ b/drivers/ssb/ssb_private.h
-@@ -9,16 +9,27 @@
- #define PFX   "ssb: "
- #ifdef CONFIG_SSB_SILENT
--# define ssb_printk(fmt, x...)        do { /* nothing */ } while (0)
-+# define ssb_printk(fmt, ...)                                 \
-+      do { if (0) printk(fmt, ##__VA_ARGS__); } while (0)
- #else
--# define ssb_printk           printk
-+# define ssb_printk(fmt, ...)                                 \
-+      printk(fmt, ##__VA_ARGS__)
- #endif /* CONFIG_SSB_SILENT */
-+#define ssb_emerg(fmt, ...)   ssb_printk(KERN_EMERG PFX fmt, ##__VA_ARGS__)
-+#define ssb_err(fmt, ...)     ssb_printk(KERN_ERR PFX fmt, ##__VA_ARGS__)
-+#define ssb_warn(fmt, ...)    ssb_printk(KERN_WARNING PFX fmt, ##__VA_ARGS__)
-+#define ssb_notice(fmt, ...)  ssb_printk(KERN_NOTICE PFX fmt, ##__VA_ARGS__)
-+#define ssb_info(fmt, ...)    ssb_printk(KERN_INFO PFX fmt, ##__VA_ARGS__)
-+#define ssb_cont(fmt, ...)    ssb_printk(KERN_CONT fmt, ##__VA_ARGS__)
-+
- /* dprintk: Debugging printk; vanishes for non-debug compilation */
- #ifdef CONFIG_SSB_DEBUG
--# define ssb_dprintk(fmt, x...)       ssb_printk(fmt , ##x)
-+# define ssb_dbg(fmt, ...)                                    \
-+      ssb_printk(KERN_DEBUG PFX fmt, ##__VA_ARGS__)
- #else
--# define ssb_dprintk(fmt, x...)       do { /* nothing */ } while (0)
-+# define ssb_dbg(fmt, ...)                                    \
-+      do { if (0) printk(KERN_DEBUG PFX fmt, ##__VA_ARGS__); } while (0)
- #endif
- #ifdef CONFIG_SSB_DEBUG
-@@ -217,6 +228,25 @@ extern u32 ssb_chipco_watchdog_timer_set
-                                            u32 ticks);
- extern u32 ssb_chipco_watchdog_timer_set_ms(struct bcm47xx_wdt *wdt, u32 ms);
-+/* driver_chipcommon_sflash.c */
-+#ifdef CONFIG_SSB_SFLASH
-+int ssb_sflash_init(struct ssb_chipcommon *cc);
-+#else
-+static inline int ssb_sflash_init(struct ssb_chipcommon *cc)
-+{
-+      pr_err("Serial flash not supported\n");
-+      return 0;
-+}
-+#endif /* CONFIG_SSB_SFLASH */
-+
-+#ifdef CONFIG_SSB_DRIVER_MIPS
-+extern struct platform_device ssb_pflash_dev;
-+#endif
-+
-+#ifdef CONFIG_SSB_SFLASH
-+extern struct platform_device ssb_sflash_dev;
-+#endif
-+
- #ifdef CONFIG_SSB_DRIVER_EXTIF
- extern u32 ssb_extif_watchdog_timer_set_wdt(struct bcm47xx_wdt *wdt, u32 ticks);
- extern u32 ssb_extif_watchdog_timer_set_ms(struct bcm47xx_wdt *wdt, u32 ms);
---- a/include/linux/ssb/ssb.h
-+++ b/include/linux/ssb/ssb.h
-@@ -26,13 +26,14 @@ struct ssb_sprom_core_pwr_info {
- struct ssb_sprom {
-       u8 revision;
--      u8 il0mac[6];           /* MAC address for 802.11b/g */
--      u8 et0mac[6];           /* MAC address for Ethernet */
--      u8 et1mac[6];           /* MAC address for 802.11a */
-+      u8 il0mac[6] __aligned(sizeof(u16));    /* MAC address for 802.11b/g */
-+      u8 et0mac[6] __aligned(sizeof(u16));    /* MAC address for Ethernet */
-+      u8 et1mac[6] __aligned(sizeof(u16));    /* MAC address for 802.11a */
-       u8 et0phyaddr;          /* MII address for enet0 */
-       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. */
-@@ -340,13 +341,61 @@ enum ssb_bustype {
- #define SSB_BOARDVENDOR_DELL  0x1028  /* Dell */
- #define SSB_BOARDVENDOR_HP    0x0E11  /* HP */
- /* board_type */
-+#define SSB_BOARD_BCM94301CB  0x0406
-+#define SSB_BOARD_BCM94301MP  0x0407
-+#define SSB_BOARD_BU4309      0x040A
-+#define SSB_BOARD_BCM94309CB  0x040B
-+#define SSB_BOARD_BCM4309MP   0x040C
-+#define SSB_BOARD_BU4306      0x0416
- #define SSB_BOARD_BCM94306MP  0x0418
- #define SSB_BOARD_BCM4309G    0x0421
- #define SSB_BOARD_BCM4306CB   0x0417
--#define SSB_BOARD_BCM4309MP   0x040C
-+#define SSB_BOARD_BCM94306PC  0x0425  /* pcmcia 3.3v 4306 card */
-+#define SSB_BOARD_BCM94306CBSG        0x042B  /* with SiGe PA */
-+#define SSB_BOARD_PCSG94306   0x042D  /* with SiGe PA */
-+#define SSB_BOARD_BU4704SD    0x042E  /* with sdram */
-+#define SSB_BOARD_BCM94704AGR 0x042F  /* dual 11a/11g Router */
-+#define SSB_BOARD_BCM94308MP  0x0430  /* 11a-only minipci */
-+#define SSB_BOARD_BU4318      0x0447
-+#define SSB_BOARD_CB4318      0x0448
-+#define SSB_BOARD_MPG4318     0x0449
- #define SSB_BOARD_MP4318      0x044A
--#define SSB_BOARD_BU4306      0x0416
--#define SSB_BOARD_BU4309      0x040A
-+#define SSB_BOARD_SD4318      0x044B
-+#define SSB_BOARD_BCM94306P   0x044C  /* with SiGe */
-+#define SSB_BOARD_BCM94303MP  0x044E
-+#define SSB_BOARD_BCM94306MPM 0x0450
-+#define SSB_BOARD_BCM94306MPL 0x0453
-+#define SSB_BOARD_PC4303      0x0454  /* pcmcia */
-+#define SSB_BOARD_BCM94306MPLNA       0x0457
-+#define SSB_BOARD_BCM94306MPH 0x045B
-+#define SSB_BOARD_BCM94306PCIV        0x045C
-+#define SSB_BOARD_BCM94318MPGH        0x0463
-+#define SSB_BOARD_BU4311      0x0464
-+#define SSB_BOARD_BCM94311MC  0x0465
-+#define SSB_BOARD_BCM94311MCAG        0x0466
-+/* 4321 boards */
-+#define SSB_BOARD_BU4321      0x046B
-+#define SSB_BOARD_BU4321E     0x047C
-+#define SSB_BOARD_MP4321      0x046C
-+#define SSB_BOARD_CB2_4321    0x046D
-+#define SSB_BOARD_CB2_4321_AG 0x0066
-+#define SSB_BOARD_MC4321      0x046E
-+/* 4325 boards */
-+#define SSB_BOARD_BCM94325DEVBU       0x0490
-+#define SSB_BOARD_BCM94325BGABU       0x0491
-+#define SSB_BOARD_BCM94325SDGWB       0x0492
-+#define SSB_BOARD_BCM94325SDGMDL      0x04AA
-+#define SSB_BOARD_BCM94325SDGMDL2     0x04C6
-+#define SSB_BOARD_BCM94325SDGMDL3     0x04C9
-+#define SSB_BOARD_BCM94325SDABGWBA    0x04E1
-+/* 4322 boards */
-+#define SSB_BOARD_BCM94322MC  0x04A4
-+#define SSB_BOARD_BCM94322USB 0x04A8  /* dualband */
-+#define SSB_BOARD_BCM94322HM  0x04B0
-+#define SSB_BOARD_BCM94322USB2D       0x04Bf  /* single band discrete front end */
-+/* 4312 boards */
-+#define SSB_BOARD_BU4312      0x048A
-+#define SSB_BOARD_BCM4312MCGSG        0x04B5
- /* chip_package */
- #define SSB_CHIPPACK_BCM4712S 1       /* Small 200pin 4712 */
- #define SSB_CHIPPACK_BCM4712M 2       /* Medium 225pin 4712 */
---- a/include/linux/ssb/ssb_driver_gige.h
-+++ b/include/linux/ssb/ssb_driver_gige.h
-@@ -97,21 +97,16 @@ static inline bool ssb_gige_must_flush_p
-       return 0;
- }
--#ifdef CONFIG_BCM47XX
--#include <asm/mach-bcm47xx/nvram.h>
- /* Get the device MAC address */
--static inline void ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr)
--{
--      char buf[20];
--      if (nvram_getenv("et0macaddr", buf, sizeof(buf)) < 0)
--              return;
--      nvram_parse_macaddr(buf, macaddr);
--}
--#else
--static inline void ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr)
-+static inline int ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr)
- {
-+      struct ssb_gige *dev = pdev_to_ssb_gige(pdev);
-+      if (!dev)
-+              return -ENODEV;
-+
-+      memcpy(macaddr, dev->dev->bus->sprom.et0mac, 6);
-+      return 0;
- }
--#endif
- extern int ssb_gige_pcibios_plat_dev_init(struct ssb_device *sdev,
-                                         struct pci_dev *pdev);
-@@ -175,6 +170,10 @@ static inline bool ssb_gige_must_flush_p
- {
-       return 0;
- }
-+static inline int ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr)
-+{
-+      return -ENODEV;
-+}
- #endif /* CONFIG_SSB_DRIVER_GIGE */
- #endif /* LINUX_SSB_DRIVER_GIGE_H_ */
---- a/include/linux/ssb/ssb_driver_mips.h
-+++ b/include/linux/ssb/ssb_driver_mips.h
-@@ -20,6 +20,18 @@ struct ssb_pflash {
-       u32 window_size;
- };
-+#ifdef CONFIG_SSB_SFLASH
-+struct ssb_sflash {
-+      bool present;
-+      u32 window;
-+      u32 blocksize;
-+      u16 numblocks;
-+      u32 size;
-+
-+      void *priv;
-+};
-+#endif
-+
- struct ssb_mipscore {
-       struct ssb_device *dev;
-@@ -27,6 +39,9 @@ struct ssb_mipscore {
-       struct ssb_serial_port serial_ports[4];
-       struct ssb_pflash pflash;
-+#ifdef CONFIG_SSB_SFLASH
-+      struct ssb_sflash sflash;
-+#endif
- };
- extern void ssb_mipscore_init(struct ssb_mipscore *mcore);
-@@ -45,6 +60,11 @@ void ssb_mipscore_init(struct ssb_mipsco
- {
- }
-+static inline unsigned int ssb_mips_irq(struct ssb_device *dev)
-+{
-+      return 0;
-+}
-+
- #endif /* CONFIG_SSB_DRIVER_MIPS */
- #endif /* LINUX_SSB_MIPSCORE_H_ */
---- a/include/linux/ssb/ssb_regs.h
-+++ b/include/linux/ssb/ssb_regs.h
-@@ -172,6 +172,7 @@
- #define SSB_SPROMSIZE_WORDS_R4                220
- #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_SPROM_BASE1                       0x1000
- #define SSB_SPROM_BASE31              0x0800
- #define SSB_SPROM_REVISION            0x007E
-@@ -289,11 +290,11 @@
- #define  SSB_SPROM4_ETHPHY_ET1A_SHIFT 5
- #define  SSB_SPROM4_ETHPHY_ET0M               (1<<14) /* MDIO for enet0 */
- #define  SSB_SPROM4_ETHPHY_ET1M               (1<<15) /* MDIO for enet1 */
--#define SSB_SPROM4_ANTAVAIL           0x005D  /* Antenna available bitfields */
--#define  SSB_SPROM4_ANTAVAIL_A                0x00FF  /* A-PHY bitfield */
--#define  SSB_SPROM4_ANTAVAIL_A_SHIFT  0
--#define  SSB_SPROM4_ANTAVAIL_BG               0xFF00  /* B-PHY and G-PHY bitfield */
--#define  SSB_SPROM4_ANTAVAIL_BG_SHIFT 8
-+#define SSB_SPROM4_ANTAVAIL           0x005C  /* Antenna available bitfields */
-+#define  SSB_SPROM4_ANTAVAIL_BG               0x00FF  /* B-PHY and G-PHY bitfield */
-+#define  SSB_SPROM4_ANTAVAIL_BG_SHIFT 0
-+#define  SSB_SPROM4_ANTAVAIL_A                0xFF00  /* A-PHY bitfield */
-+#define  SSB_SPROM4_ANTAVAIL_A_SHIFT  8
- #define SSB_SPROM4_AGAIN01            0x005E  /* Antenna Gain (in dBm Q5.2) */
- #define  SSB_SPROM4_AGAIN0            0x00FF  /* Antenna 0 */
- #define  SSB_SPROM4_AGAIN0_SHIFT      0
---- 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.8/025-bcma_backport.patch b/target/linux/generic/patches-3.8/025-bcma_backport.patch
deleted file mode 100644 (file)
index 21cffb1..0000000
+++ /dev/null
@@ -1,1988 +0,0 @@
---- a/arch/mips/bcm47xx/serial.c
-+++ b/arch/mips/bcm47xx/serial.c
-@@ -62,7 +62,7 @@ static int __init uart8250_init_bcma(voi
-               p->mapbase = (unsigned int) bcma_port->regs;
-               p->membase = (void *) bcma_port->regs;
--              p->irq = bcma_port->irq + 2;
-+              p->irq = bcma_port->irq;
-               p->uartclk = bcma_port->baud_base;
-               p->regshift = bcma_port->reg_shift;
-               p->iotype = UPIO_MEM;
---- a/drivers/bcma/Kconfig
-+++ b/drivers/bcma/Kconfig
-@@ -26,6 +26,7 @@ config BCMA_HOST_PCI_POSSIBLE
- config BCMA_HOST_PCI
-       bool "Support for BCMA on PCI-host bus"
-       depends on BCMA_HOST_PCI_POSSIBLE
-+      default y
- config BCMA_DRIVER_PCI_HOSTMODE
-       bool "Driver for PCI core working in hostmode"
-@@ -34,8 +35,14 @@ config BCMA_DRIVER_PCI_HOSTMODE
-         PCI core hostmode operation (external PCI bus).
- config BCMA_HOST_SOC
--      bool
--      depends on BCMA_DRIVER_MIPS
-+      bool "Support for BCMA in a SoC"
-+      depends on BCMA
-+      help
-+        Host interface for a Broadcom AIX bus directly mapped into
-+        the memory. This only works with the Broadcom SoCs from the
-+        BCM47XX line.
-+
-+        If unsure, say N
- config BCMA_DRIVER_MIPS
-       bool "BCMA Broadcom MIPS core driver"
---- a/drivers/bcma/bcma_private.h
-+++ b/drivers/bcma/bcma_private.h
-@@ -22,6 +22,8 @@
- struct bcma_bus;
- /* main.c */
-+bool bcma_wait_value(struct bcma_device *core, u16 reg, u32 mask, u32 value,
-+                   int timeout);
- 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,
-@@ -31,6 +33,8 @@ int __init bcma_bus_early_register(struc
- int bcma_bus_suspend(struct bcma_bus *bus);
- int bcma_bus_resume(struct bcma_bus *bus);
- #endif
-+struct bcma_device *bcma_find_core_unit(struct bcma_bus *bus, u16 coreid,
-+                                      u8 unit);
- /* scan.c */
- int bcma_bus_scan(struct bcma_bus *bus);
-@@ -45,6 +49,7 @@ int bcma_sprom_get(struct bcma_bus *bus)
- /* driver_chipcommon.c */
- #ifdef CONFIG_BCMA_DRIVER_MIPS
- void bcma_chipco_serial_init(struct bcma_drv_cc *cc);
-+extern struct platform_device bcma_pflash_dev;
- #endif /* CONFIG_BCMA_DRIVER_MIPS */
- /* driver_chipcommon_pmu.c */
---- a/drivers/bcma/core.c
-+++ b/drivers/bcma/core.c
-@@ -9,6 +9,25 @@
- #include <linux/export.h>
- #include <linux/bcma/bcma.h>
-+static bool bcma_core_wait_value(struct bcma_device *core, u16 reg, u32 mask,
-+                               u32 value, int timeout)
-+{
-+      unsigned long deadline = jiffies + timeout;
-+      u32 val;
-+
-+      do {
-+              val = bcma_aread32(core, reg);
-+              if ((val & mask) == value)
-+                      return true;
-+              cpu_relax();
-+              udelay(10);
-+      } while (!time_after_eq(jiffies, deadline));
-+
-+      bcma_warn(core->bus, "Timeout waiting for register 0x%04X!\n", reg);
-+
-+      return false;
-+}
-+
- bool bcma_core_is_enabled(struct bcma_device *core)
- {
-       if ((bcma_aread32(core, BCMA_IOCTL) & (BCMA_IOCTL_CLK | BCMA_IOCTL_FGC))
-@@ -25,13 +44,15 @@ void bcma_core_disable(struct bcma_devic
-       if (bcma_aread32(core, BCMA_RESET_CTL) & BCMA_RESET_CTL_RESET)
-               return;
--      bcma_awrite32(core, BCMA_IOCTL, flags);
--      bcma_aread32(core, BCMA_IOCTL);
--      udelay(10);
-+      bcma_core_wait_value(core, BCMA_RESET_ST, ~0, 0, 300);
-       bcma_awrite32(core, BCMA_RESET_CTL, BCMA_RESET_CTL_RESET);
-       bcma_aread32(core, BCMA_RESET_CTL);
-       udelay(1);
-+
-+      bcma_awrite32(core, BCMA_IOCTL, flags);
-+      bcma_aread32(core, BCMA_IOCTL);
-+      udelay(10);
- }
- EXPORT_SYMBOL_GPL(bcma_core_disable);
-@@ -43,6 +64,7 @@ int bcma_core_enable(struct bcma_device
-       bcma_aread32(core, BCMA_IOCTL);
-       bcma_awrite32(core, BCMA_RESET_CTL, 0);
-+      bcma_aread32(core, BCMA_RESET_CTL);
-       udelay(1);
-       bcma_awrite32(core, BCMA_IOCTL, (BCMA_IOCTL_CLK | flags));
-@@ -104,7 +126,13 @@ void bcma_core_pll_ctl(struct bcma_devic
-               if (i)
-                       bcma_err(core->bus, "PLL enable timeout\n");
-       } else {
--              bcma_warn(core->bus, "Disabling PLL not supported yet!\n");
-+              /*
-+               * Mask the PLL but don't wait for it to be disabled. PLL may be
-+               * shared between cores and will be still up if there is another
-+               * core using it.
-+               */
-+              bcma_mask32(core, BCMA_CLKCTLST, ~req);
-+              bcma_read32(core, BCMA_CLKCTLST);
-       }
- }
- EXPORT_SYMBOL_GPL(bcma_core_pll_ctl);
---- a/drivers/bcma/driver_chipcommon.c
-+++ b/drivers/bcma/driver_chipcommon.c
-@@ -25,13 +25,14 @@ static inline u32 bcma_cc_write32_masked
-       return value;
- }
--static u32 bcma_chipco_get_alp_clock(struct bcma_drv_cc *cc)
-+u32 bcma_chipco_get_alp_clock(struct bcma_drv_cc *cc)
- {
-       if (cc->capabilities & BCMA_CC_CAP_PMU)
-               return bcma_pmu_get_alp_clock(cc);
-       return 20000000;
- }
-+EXPORT_SYMBOL_GPL(bcma_chipco_get_alp_clock);
- static u32 bcma_chipco_watchdog_get_max_timer(struct bcma_drv_cc *cc)
- {
-@@ -139,8 +140,15 @@ void bcma_core_chipcommon_init(struct bc
-       bcma_core_chipcommon_early_init(cc);
-       if (cc->core->id.rev >= 20) {
--              bcma_cc_write32(cc, BCMA_CC_GPIOPULLUP, 0);
--              bcma_cc_write32(cc, BCMA_CC_GPIOPULLDOWN, 0);
-+              u32 pullup = 0, pulldown = 0;
-+
-+              if (cc->core->bus->chipinfo.id == BCMA_CHIP_ID_BCM43142) {
-+                      pullup = 0x402e0;
-+                      pulldown = 0x20500;
-+              }
-+
-+              bcma_cc_write32(cc, BCMA_CC_GPIOPULLUP, pullup);
-+              bcma_cc_write32(cc, BCMA_CC_GPIOPULLDOWN, pulldown);
-       }
-       if (cc->capabilities & BCMA_CC_CAP_PMU)
-@@ -213,6 +221,7 @@ u32 bcma_chipco_gpio_out(struct bcma_drv
-       return res;
- }
-+EXPORT_SYMBOL_GPL(bcma_chipco_gpio_out);
- u32 bcma_chipco_gpio_outen(struct bcma_drv_cc *cc, u32 mask, u32 value)
- {
-@@ -225,6 +234,7 @@ u32 bcma_chipco_gpio_outen(struct bcma_d
-       return res;
- }
-+EXPORT_SYMBOL_GPL(bcma_chipco_gpio_outen);
- /*
-  * If the bit is set to 0, chipcommon controlls this GPIO,
-@@ -329,7 +339,7 @@ void bcma_chipco_serial_init(struct bcma
-               return;
-       }
--      irq = bcma_core_mips_irq(cc->core);
-+      irq = bcma_core_irq(cc->core);
-       /* Determine the registers of the UARTs */
-       cc->nr_serial_ports = (cc->capabilities & BCMA_CC_CAP_NRUART);
---- a/drivers/bcma/driver_chipcommon_nflash.c
-+++ b/drivers/bcma/driver_chipcommon_nflash.c
-@@ -5,11 +5,11 @@
-  * Licensed under the GNU/GPL. See COPYING for details.
-  */
-+#include "bcma_private.h"
-+
- #include <linux/platform_device.h>
- #include <linux/bcma/bcma.h>
--#include "bcma_private.h"
--
- struct platform_device bcma_nflash_dev = {
-       .name           = "bcma_nflash",
-       .num_resources  = 0,
---- a/drivers/bcma/driver_chipcommon_pmu.c
-+++ b/drivers/bcma/driver_chipcommon_pmu.c
-@@ -56,6 +56,109 @@ void bcma_chipco_regctl_maskset(struct b
- }
- EXPORT_SYMBOL_GPL(bcma_chipco_regctl_maskset);
-+static u32 bcma_pmu_xtalfreq(struct bcma_drv_cc *cc)
-+{
-+      u32 ilp_ctl, alp_hz;
-+
-+      if (!(bcma_cc_read32(cc, BCMA_CC_PMU_STAT) &
-+            BCMA_CC_PMU_STAT_EXT_LPO_AVAIL))
-+              return 0;
-+
-+      bcma_cc_write32(cc, BCMA_CC_PMU_XTAL_FREQ,
-+                      BIT(BCMA_CC_PMU_XTAL_FREQ_MEASURE_SHIFT));
-+      usleep_range(1000, 2000);
-+
-+      ilp_ctl = bcma_cc_read32(cc, BCMA_CC_PMU_XTAL_FREQ);
-+      ilp_ctl &= BCMA_CC_PMU_XTAL_FREQ_ILPCTL_MASK;
-+
-+      bcma_cc_write32(cc, BCMA_CC_PMU_XTAL_FREQ, 0);
-+
-+      alp_hz = ilp_ctl * 32768 / 4;
-+      return (alp_hz + 50000) / 100000 * 100;
-+}
-+
-+static void bcma_pmu2_pll_init0(struct bcma_drv_cc *cc, u32 xtalfreq)
-+{
-+      struct bcma_bus *bus = cc->core->bus;
-+      u32 freq_tgt_target = 0, freq_tgt_current;
-+      u32 pll0, mask;
-+
-+      switch (bus->chipinfo.id) {
-+      case BCMA_CHIP_ID_BCM43142:
-+              /* pmu2_xtaltab0_adfll_485 */
-+              switch (xtalfreq) {
-+              case 12000:
-+                      freq_tgt_target = 0x50D52;
-+                      break;
-+              case 20000:
-+                      freq_tgt_target = 0x307FE;
-+                      break;
-+              case 26000:
-+                      freq_tgt_target = 0x254EA;
-+                      break;
-+              case 37400:
-+                      freq_tgt_target = 0x19EF8;
-+                      break;
-+              case 52000:
-+                      freq_tgt_target = 0x12A75;
-+                      break;
-+              }
-+              break;
-+      }
-+
-+      if (!freq_tgt_target) {
-+              bcma_err(bus, "Unknown TGT frequency for xtalfreq %d\n",
-+                       xtalfreq);
-+              return;
-+      }
-+
-+      pll0 = bcma_chipco_pll_read(cc, BCMA_CC_PMU15_PLL_PLLCTL0);
-+      freq_tgt_current = (pll0 & BCMA_CC_PMU15_PLL_PC0_FREQTGT_MASK) >>
-+              BCMA_CC_PMU15_PLL_PC0_FREQTGT_SHIFT;
-+
-+      if (freq_tgt_current == freq_tgt_target) {
-+              bcma_debug(bus, "Target TGT frequency already set\n");
-+              return;
-+      }
-+
-+      /* Turn off PLL */
-+      switch (bus->chipinfo.id) {
-+      case BCMA_CHIP_ID_BCM43142:
-+              mask = (u32)~(BCMA_RES_4314_HT_AVAIL |
-+                            BCMA_RES_4314_MACPHY_CLK_AVAIL);
-+
-+              bcma_cc_mask32(cc, BCMA_CC_PMU_MINRES_MSK, mask);
-+              bcma_cc_mask32(cc, BCMA_CC_PMU_MAXRES_MSK, mask);
-+              bcma_wait_value(cc->core, BCMA_CLKCTLST,
-+                              BCMA_CLKCTLST_HAVEHT, 0, 20000);
-+              break;
-+      }
-+
-+      pll0 &= ~BCMA_CC_PMU15_PLL_PC0_FREQTGT_MASK;
-+      pll0 |= freq_tgt_target << BCMA_CC_PMU15_PLL_PC0_FREQTGT_SHIFT;
-+      bcma_chipco_pll_write(cc, BCMA_CC_PMU15_PLL_PLLCTL0, pll0);
-+
-+      /* Flush */
-+      if (cc->pmu.rev >= 2)
-+              bcma_cc_set32(cc, BCMA_CC_PMU_CTL, BCMA_CC_PMU_CTL_PLL_UPD);
-+
-+      /* TODO: Do we need to update OTP? */
-+}
-+
-+static void bcma_pmu_pll_init(struct bcma_drv_cc *cc)
-+{
-+      struct bcma_bus *bus = cc->core->bus;
-+      u32 xtalfreq = bcma_pmu_xtalfreq(cc);
-+
-+      switch (bus->chipinfo.id) {
-+      case BCMA_CHIP_ID_BCM43142:
-+              if (xtalfreq == 0)
-+                      xtalfreq = 20000;
-+              bcma_pmu2_pll_init0(cc, xtalfreq);
-+              break;
-+      }
-+}
-+
- static void bcma_pmu_resources_init(struct bcma_drv_cc *cc)
- {
-       struct bcma_bus *bus = cc->core->bus;
-@@ -66,6 +169,25 @@ static void bcma_pmu_resources_init(stru
-               min_msk = 0x200D;
-               max_msk = 0xFFFF;
-               break;
-+      case BCMA_CHIP_ID_BCM43142:
-+              min_msk = BCMA_RES_4314_LPLDO_PU |
-+                        BCMA_RES_4314_PMU_SLEEP_DIS |
-+                        BCMA_RES_4314_PMU_BG_PU |
-+                        BCMA_RES_4314_CBUCK_LPOM_PU |
-+                        BCMA_RES_4314_CBUCK_PFM_PU |
-+                        BCMA_RES_4314_CLDO_PU |
-+                        BCMA_RES_4314_LPLDO2_LVM |
-+                        BCMA_RES_4314_WL_PMU_PU |
-+                        BCMA_RES_4314_LDO3P3_PU |
-+                        BCMA_RES_4314_OTP_PU |
-+                        BCMA_RES_4314_WL_PWRSW_PU |
-+                        BCMA_RES_4314_LQ_AVAIL |
-+                        BCMA_RES_4314_LOGIC_RET |
-+                        BCMA_RES_4314_MEM_SLEEP |
-+                        BCMA_RES_4314_MACPHY_RET |
-+                        BCMA_RES_4314_WL_CORE_READY;
-+              max_msk = 0x3FFFFFFF;
-+              break;
-       default:
-               bcma_debug(bus, "PMU resource config unknown or not needed for device 0x%04X\n",
-                          bus->chipinfo.id);
-@@ -165,6 +287,7 @@ void bcma_pmu_init(struct bcma_drv_cc *c
-               bcma_cc_set32(cc, BCMA_CC_PMU_CTL,
-                            BCMA_CC_PMU_CTL_NOILPONW);
-+      bcma_pmu_pll_init(cc);
-       bcma_pmu_resources_init(cc);
-       bcma_pmu_workarounds(cc);
- }
-@@ -174,19 +297,35 @@ u32 bcma_pmu_get_alp_clock(struct bcma_d
-       struct bcma_bus *bus = cc->core->bus;
-       switch (bus->chipinfo.id) {
-+      case BCMA_CHIP_ID_BCM4313:
-+      case BCMA_CHIP_ID_BCM43224:
-+      case BCMA_CHIP_ID_BCM43225:
-+      case BCMA_CHIP_ID_BCM43227:
-+      case BCMA_CHIP_ID_BCM43228:
-+      case BCMA_CHIP_ID_BCM4331:
-+      case BCMA_CHIP_ID_BCM43421:
-+      case BCMA_CHIP_ID_BCM43428:
-+      case BCMA_CHIP_ID_BCM43431:
-       case BCMA_CHIP_ID_BCM4716:
--      case BCMA_CHIP_ID_BCM4748:
-       case BCMA_CHIP_ID_BCM47162:
--      case BCMA_CHIP_ID_BCM4313:
--      case BCMA_CHIP_ID_BCM5357:
-+      case BCMA_CHIP_ID_BCM4748:
-       case BCMA_CHIP_ID_BCM4749:
-+      case BCMA_CHIP_ID_BCM5357:
-       case BCMA_CHIP_ID_BCM53572:
-+      case BCMA_CHIP_ID_BCM6362:
-               /* always 20Mhz */
-               return 20000 * 1000;
--      case BCMA_CHIP_ID_BCM5356:
-       case BCMA_CHIP_ID_BCM4706:
-+      case BCMA_CHIP_ID_BCM5356:
-               /* always 25Mhz */
-               return 25000 * 1000;
-+      case BCMA_CHIP_ID_BCM43460:
-+      case BCMA_CHIP_ID_BCM4352:
-+      case BCMA_CHIP_ID_BCM4360:
-+              if (cc->status & BCMA_CC_CHIPST_4360_XTAL_40MZ)
-+                      return 40000 * 1000;
-+              else
-+                      return 20000 * 1000;
-       default:
-               bcma_warn(bus, "No ALP clock specified for %04X device, pmu rev. %d, using default %d Hz\n",
-                         bus->chipinfo.id, cc->pmu.rev, BCMA_CC_PMU_ALP_CLOCK);
-@@ -264,7 +403,7 @@ static u32 bcma_pmu_pll_clock_bcm4706(st
- }
- /* query bus clock frequency for PMU-enabled chipcommon */
--static u32 bcma_pmu_get_bus_clock(struct bcma_drv_cc *cc)
-+u32 bcma_pmu_get_bus_clock(struct bcma_drv_cc *cc)
- {
-       struct bcma_bus *bus = cc->core->bus;
-@@ -293,6 +432,7 @@ static u32 bcma_pmu_get_bus_clock(struct
-       }
-       return BCMA_CC_PMU_HT_CLOCK;
- }
-+EXPORT_SYMBOL_GPL(bcma_pmu_get_bus_clock);
- /* query cpu clock frequency for PMU-enabled chipcommon */
- u32 bcma_pmu_get_cpu_clock(struct bcma_drv_cc *cc)
-@@ -372,7 +512,7 @@ void bcma_pmu_spuravoid_pllupdate(struct
-               tmp |= (bcm5357_bcm43236_ndiv[spuravoid]) << BCMA_CC_PMU1_PLL0_PC2_NDIV_INT_SHIFT;
-               bcma_cc_write32(cc, BCMA_CC_PLLCTL_DATA, tmp);
--              tmp = 1 << 10;
-+              tmp = BCMA_CC_PMU_CTL_PLL_UPD;
-               break;
-       case BCMA_CHIP_ID_BCM4331:
-@@ -393,7 +533,7 @@ void bcma_pmu_spuravoid_pllupdate(struct
-                       bcma_pmu_spuravoid_pll_write(cc, BCMA_CC_PMU_PLL_CTL2,
-                                                    0x03000a08);
-               }
--              tmp = 1 << 10;
-+              tmp = BCMA_CC_PMU_CTL_PLL_UPD;
-               break;
-       case BCMA_CHIP_ID_BCM43224:
-@@ -426,7 +566,7 @@ void bcma_pmu_spuravoid_pllupdate(struct
-                       bcma_pmu_spuravoid_pll_write(cc, BCMA_CC_PMU_PLL_CTL5,
-                                                    0x88888815);
-               }
--              tmp = 1 << 10;
-+              tmp = BCMA_CC_PMU_CTL_PLL_UPD;
-               break;
-       case BCMA_CHIP_ID_BCM4716:
-@@ -460,7 +600,7 @@ void bcma_pmu_spuravoid_pllupdate(struct
-                                                    0x88888815);
-               }
--              tmp = 3 << 9;
-+              tmp = BCMA_CC_PMU_CTL_PLL_UPD | BCMA_CC_PMU_CTL_NOILPONW;
-               break;
-       case BCMA_CHIP_ID_BCM43227:
-@@ -496,7 +636,7 @@ void bcma_pmu_spuravoid_pllupdate(struct
-                       bcma_pmu_spuravoid_pll_write(cc, BCMA_CC_PMU_PLL_CTL5,
-                                                    0x88888815);
-               }
--              tmp = 1 << 10;
-+              tmp = BCMA_CC_PMU_CTL_PLL_UPD;
-               break;
-       default:
-               bcma_err(bus, "Unknown spuravoidance settings for chip 0x%04X, not changing PLL\n",
---- a/drivers/bcma/driver_chipcommon_sflash.c
-+++ b/drivers/bcma/driver_chipcommon_sflash.c
-@@ -5,11 +5,11 @@
-  * Licensed under the GNU/GPL. See COPYING for details.
-  */
-+#include "bcma_private.h"
-+
- #include <linux/platform_device.h>
- #include <linux/bcma/bcma.h>
--#include "bcma_private.h"
--
- static struct resource bcma_sflash_resource = {
-       .name   = "bcma_sflash",
-       .start  = BCMA_SOC_FLASH2,
-@@ -30,7 +30,7 @@ struct bcma_sflash_tbl_e {
-       u16 numblocks;
- };
--static struct bcma_sflash_tbl_e bcma_sflash_st_tbl[] = {
-+static const struct bcma_sflash_tbl_e bcma_sflash_st_tbl[] = {
-       { "M25P20", 0x11, 0x10000, 4, },
-       { "M25P40", 0x12, 0x10000, 8, },
-@@ -41,7 +41,7 @@ static struct bcma_sflash_tbl_e bcma_sfl
-       { 0 },
- };
--static struct bcma_sflash_tbl_e bcma_sflash_sst_tbl[] = {
-+static const struct bcma_sflash_tbl_e bcma_sflash_sst_tbl[] = {
-       { "SST25WF512", 1, 0x1000, 16, },
-       { "SST25VF512", 0x48, 0x1000, 16, },
-       { "SST25WF010", 2, 0x1000, 32, },
-@@ -59,7 +59,7 @@ static struct bcma_sflash_tbl_e bcma_sfl
-       { 0 },
- };
--static struct bcma_sflash_tbl_e bcma_sflash_at_tbl[] = {
-+static const struct bcma_sflash_tbl_e bcma_sflash_at_tbl[] = {
-       { "AT45DB011", 0xc, 256, 512, },
-       { "AT45DB021", 0x14, 256, 1024, },
-       { "AT45DB041", 0x1c, 256, 2048, },
-@@ -89,7 +89,7 @@ int bcma_sflash_init(struct bcma_drv_cc
- {
-       struct bcma_bus *bus = cc->core->bus;
-       struct bcma_sflash *sflash = &cc->sflash;
--      struct bcma_sflash_tbl_e *e;
-+      const struct bcma_sflash_tbl_e *e;
-       u32 id, id2;
-       switch (cc->capabilities & BCMA_CC_CAP_FLASHT) {
---- a/drivers/bcma/driver_gpio.c
-+++ b/drivers/bcma/driver_gpio.c
-@@ -73,6 +73,16 @@ static void bcma_gpio_free(struct gpio_c
-       bcma_chipco_gpio_pullup(cc, 1 << gpio, 0);
- }
-+static int bcma_gpio_to_irq(struct gpio_chip *chip, unsigned gpio)
-+{
-+      struct bcma_drv_cc *cc = bcma_gpio_get_cc(chip);
-+
-+      if (cc->core->bus->hosttype == BCMA_HOSTTYPE_SOC)
-+              return bcma_core_irq(cc->core);
-+      else
-+              return -EINVAL;
-+}
-+
- int bcma_gpio_init(struct bcma_drv_cc *cc)
- {
-       struct gpio_chip *chip = &cc->gpio;
-@@ -85,6 +95,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;
-+      chip->to_irq            = bcma_gpio_to_irq;
-       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/drivers/bcma/driver_mips.c
-+++ b/drivers/bcma/driver_mips.c
-@@ -14,11 +14,33 @@
- #include <linux/bcma/bcma.h>
-+#include <linux/mtd/physmap.h>
-+#include <linux/platform_device.h>
- #include <linux/serial.h>
- #include <linux/serial_core.h>
- #include <linux/serial_reg.h>
- #include <linux/time.h>
-+static const char *part_probes[] = { "bcm47xxpart", NULL };
-+
-+static struct physmap_flash_data bcma_pflash_data = {
-+      .part_probe_types       = part_probes,
-+};
-+
-+static struct resource bcma_pflash_resource = {
-+      .name   = "bcma_pflash",
-+      .flags  = IORESOURCE_MEM,
-+};
-+
-+struct platform_device bcma_pflash_dev = {
-+      .name           = "physmap-flash",
-+      .dev            = {
-+              .platform_data  = &bcma_pflash_data,
-+      },
-+      .resource       = &bcma_pflash_resource,
-+      .num_resources  = 1,
-+};
-+
- /* The 47162a0 hangs when reading MIPS DMP registers registers */
- static inline bool bcma_core_mips_bcm47162a0_quirk(struct bcma_device *dev)
- {
-@@ -74,28 +96,41 @@ static u32 bcma_core_mips_irqflag(struct
-               return dev->core_index;
-       flag = bcma_aread32(dev, BCMA_MIPS_OOBSELOUTA30);
--      return flag & 0x1F;
-+      if (flag)
-+              return flag & 0x1F;
-+      else
-+              return 0x3f;
- }
- /* Get the MIPS IRQ assignment for a specified device.
-  * If unassigned, 0 is returned.
-+ * If disabled, 5 is returned.
-+ * If not supported, 6 is returned.
-  */
--unsigned int bcma_core_mips_irq(struct bcma_device *dev)
-+static unsigned int bcma_core_mips_irq(struct bcma_device *dev)
- {
-       struct bcma_device *mdev = dev->bus->drv_mips.core;
-       u32 irqflag;
-       unsigned int irq;
-       irqflag = bcma_core_mips_irqflag(dev);
-+      if (irqflag == 0x3f)
-+              return 6;
--      for (irq = 1; irq <= 4; irq++)
-+      for (irq = 0; irq <= 4; irq++)
-               if (bcma_read32(mdev, BCMA_MIPS_MIPS74K_INTMASK(irq)) &
-                   (1 << irqflag))
-                       return irq;
--      return 0;
-+      return 5;
- }
--EXPORT_SYMBOL(bcma_core_mips_irq);
-+
-+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)
- {
-@@ -114,7 +149,7 @@ static void bcma_core_mips_set_irq(struc
-               bcma_write32(mdev, BCMA_MIPS_MIPS74K_INTMASK(0),
-                           bcma_read32(mdev, BCMA_MIPS_MIPS74K_INTMASK(0)) &
-                           ~(1 << irqflag));
--      else
-+      else if (oldirq != 5)
-               bcma_write32(mdev, BCMA_MIPS_MIPS74K_INTMASK(oldirq), 0);
-       /* assign the new one */
-@@ -123,9 +158,9 @@ static void bcma_core_mips_set_irq(struc
-                           bcma_read32(mdev, BCMA_MIPS_MIPS74K_INTMASK(0)) |
-                           (1 << irqflag));
-       } else {
--              u32 oldirqflag = bcma_read32(mdev,
--                                           BCMA_MIPS_MIPS74K_INTMASK(irq));
--              if (oldirqflag) {
-+              u32 irqinitmask = bcma_read32(mdev,
-+                                            BCMA_MIPS_MIPS74K_INTMASK(irq));
-+              if (irqinitmask) {
-                       struct bcma_device *core;
-                       /* backplane irq line is in use, find out who uses
-@@ -133,7 +168,7 @@ static void bcma_core_mips_set_irq(struc
-                        */
-                       list_for_each_entry(core, &bus->cores, list) {
-                               if ((1 << bcma_core_mips_irqflag(core)) ==
--                                  oldirqflag) {
-+                                  irqinitmask) {
-                                       bcma_core_mips_set_irq(core, 0);
-                                       break;
-                               }
-@@ -143,15 +178,31 @@ static void bcma_core_mips_set_irq(struc
-                            1 << irqflag);
-       }
--      bcma_info(bus, "set_irq: core 0x%04x, irq %d => %d\n",
--                dev->id.id, oldirq + 2, irq + 2);
-+      bcma_debug(bus, "set_irq: core 0x%04x, irq %d => %d\n",
-+                 dev->id.id, oldirq <= 4 ? oldirq + 2 : 0, irq + 2);
-+}
-+
-+static void bcma_core_mips_set_irq_name(struct bcma_bus *bus, unsigned int irq,
-+                                      u16 coreid, u8 unit)
-+{
-+      struct bcma_device *core;
-+
-+      core = bcma_find_core_unit(bus, coreid, unit);
-+      if (!core) {
-+              bcma_warn(bus,
-+                        "Can not find core (id: 0x%x, unit %i) for IRQ configuration.\n",
-+                        coreid, unit);
-+              return;
-+      }
-+
-+      bcma_core_mips_set_irq(core, irq);
- }
- static void bcma_core_mips_print_irq(struct bcma_device *dev, unsigned int irq)
- {
-       int i;
-       static const char *irq_name[] = {"2(S)", "3", "4", "5", "6", "D", "I"};
--      printk(KERN_INFO KBUILD_MODNAME ": core 0x%04x, irq :", dev->id.id);
-+      printk(KERN_DEBUG KBUILD_MODNAME ": core 0x%04x, irq :", dev->id.id);
-       for (i = 0; i <= 6; i++)
-               printk(" %s%s", irq_name[i], i == irq ? "*" : " ");
-       printk("\n");
-@@ -182,6 +233,7 @@ static void bcma_core_mips_flash_detect(
- {
-       struct bcma_bus *bus = mcore->core->bus;
-       struct bcma_drv_cc *cc = &bus->drv_cc;
-+      struct bcma_pflash *pflash = &cc->pflash;
-       switch (cc->capabilities & BCMA_CC_CAP_FLASHT) {
-       case BCMA_CC_FLASHT_STSER:
-@@ -191,15 +243,20 @@ static void bcma_core_mips_flash_detect(
-               break;
-       case BCMA_CC_FLASHT_PARA:
-               bcma_debug(bus, "Found parallel flash\n");
--              cc->pflash.present = true;
--              cc->pflash.window = BCMA_SOC_FLASH2;
--              cc->pflash.window_size = BCMA_SOC_FLASH2_SZ;
-+              pflash->present = true;
-+              pflash->window = BCMA_SOC_FLASH2;
-+              pflash->window_size = BCMA_SOC_FLASH2_SZ;
-               if ((bcma_read32(cc->core, BCMA_CC_FLASH_CFG) &
-                    BCMA_CC_FLASH_CFG_DS) == 0)
--                      cc->pflash.buswidth = 1;
-+                      pflash->buswidth = 1;
-               else
--                      cc->pflash.buswidth = 2;
-+                      pflash->buswidth = 2;
-+
-+              bcma_pflash_data.width = pflash->buswidth;
-+              bcma_pflash_resource.start = pflash->window;
-+              bcma_pflash_resource.end = pflash->window + pflash->window_size;
-+
-               break;
-       default:
-               bcma_err(bus, "Flash type not supported\n");
-@@ -227,6 +284,32 @@ void bcma_core_mips_early_init(struct bc
-       mcore->early_setup_done = true;
- }
-+static void bcma_fix_i2s_irqflag(struct bcma_bus *bus)
-+{
-+      struct bcma_device *cpu, *pcie, *i2s;
-+
-+      /* Fixup the interrupts in 4716/4748 for i2s core (2010 Broadcom SDK)
-+       * (IRQ flags > 7 are ignored when setting the interrupt masks)
-+       */
-+      if (bus->chipinfo.id != BCMA_CHIP_ID_BCM4716 &&
-+          bus->chipinfo.id != BCMA_CHIP_ID_BCM4748)
-+              return;
-+
-+      cpu = bcma_find_core(bus, BCMA_CORE_MIPS_74K);
-+      pcie = bcma_find_core(bus, BCMA_CORE_PCIE);
-+      i2s = bcma_find_core(bus, BCMA_CORE_I2S);
-+      if (cpu && pcie && i2s &&
-+          bcma_aread32(cpu, BCMA_MIPS_OOBSELINA74) == 0x08060504 &&
-+          bcma_aread32(pcie, BCMA_MIPS_OOBSELINA74) == 0x08060504 &&
-+          bcma_aread32(i2s, BCMA_MIPS_OOBSELOUTA30) == 0x88) {
-+              bcma_awrite32(cpu, BCMA_MIPS_OOBSELINA74, 0x07060504);
-+              bcma_awrite32(pcie, BCMA_MIPS_OOBSELINA74, 0x07060504);
-+              bcma_awrite32(i2s, BCMA_MIPS_OOBSELOUTA30, 0x87);
-+              bcma_debug(bus,
-+                         "Moved i2s interrupt to oob line 7 instead of 8\n");
-+      }
-+}
-+
- void bcma_core_mips_init(struct bcma_drv_mips *mcore)
- {
-       struct bcma_bus *bus;
-@@ -236,43 +319,55 @@ void bcma_core_mips_init(struct bcma_drv
-       if (mcore->setup_done)
-               return;
--      bcma_info(bus, "Initializing MIPS core...\n");
-+      bcma_debug(bus, "Initializing MIPS core...\n");
-       bcma_core_mips_early_init(mcore);
--      mcore->assigned_irqs = 1;
-+      bcma_fix_i2s_irqflag(bus);
--      /* Assign IRQs to all cores on the bus */
--      list_for_each_entry(core, &bus->cores, list) {
--              int mips_irq;
--              if (core->irq)
--                      continue;
--
--              mips_irq = bcma_core_mips_irq(core);
--              if (mips_irq > 4)
--                      core->irq = 0;
--              else
--                      core->irq = mips_irq + 2;
--              if (core->irq > 5)
--                      continue;
--              switch (core->id.id) {
--              case BCMA_CORE_PCI:
--              case BCMA_CORE_PCIE:
--              case BCMA_CORE_ETHERNET:
--              case BCMA_CORE_ETHERNET_GBIT:
--              case BCMA_CORE_MAC_GBIT:
--              case BCMA_CORE_80211:
--              case BCMA_CORE_USB20_HOST:
--                      /* These devices get their own IRQ line if available,
--                       * the rest goes on IRQ0
--                       */
--                      if (mcore->assigned_irqs <= 4)
--                              bcma_core_mips_set_irq(core,
--                                                     mcore->assigned_irqs++);
--                      break;
-+      switch (bus->chipinfo.id) {
-+      case BCMA_CHIP_ID_BCM4716:
-+      case BCMA_CHIP_ID_BCM4748:
-+              bcma_core_mips_set_irq_name(bus, 1, BCMA_CORE_80211, 0);
-+              bcma_core_mips_set_irq_name(bus, 2, BCMA_CORE_MAC_GBIT, 0);
-+              bcma_core_mips_set_irq_name(bus, 3, BCMA_CORE_USB20_HOST, 0);
-+              bcma_core_mips_set_irq_name(bus, 4, BCMA_CORE_PCIE, 0);
-+              bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_CHIPCOMMON, 0);
-+              bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_I2S, 0);
-+              break;
-+      case BCMA_CHIP_ID_BCM5356:
-+      case BCMA_CHIP_ID_BCM47162:
-+      case BCMA_CHIP_ID_BCM53572:
-+              bcma_core_mips_set_irq_name(bus, 1, BCMA_CORE_80211, 0);
-+              bcma_core_mips_set_irq_name(bus, 2, BCMA_CORE_MAC_GBIT, 0);
-+              bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_CHIPCOMMON, 0);
-+              break;
-+      case BCMA_CHIP_ID_BCM5357:
-+      case BCMA_CHIP_ID_BCM4749:
-+              bcma_core_mips_set_irq_name(bus, 1, BCMA_CORE_80211, 0);
-+              bcma_core_mips_set_irq_name(bus, 2, BCMA_CORE_MAC_GBIT, 0);
-+              bcma_core_mips_set_irq_name(bus, 3, BCMA_CORE_USB20_HOST, 0);
-+              bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_CHIPCOMMON, 0);
-+              bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_I2S, 0);
-+              break;
-+      case BCMA_CHIP_ID_BCM4706:
-+              bcma_core_mips_set_irq_name(bus, 1, BCMA_CORE_PCIE, 0);
-+              bcma_core_mips_set_irq_name(bus, 2, BCMA_CORE_4706_MAC_GBIT,
-+                                          0);
-+              bcma_core_mips_set_irq_name(bus, 3, BCMA_CORE_PCIE, 1);
-+              bcma_core_mips_set_irq_name(bus, 4, BCMA_CORE_USB20_HOST, 0);
-+              bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_4706_CHIPCOMMON,
-+                                          0);
-+              break;
-+      default:
-+              list_for_each_entry(core, &bus->cores, list) {
-+                      core->irq = bcma_core_irq(core);
-               }
-+              bcma_err(bus,
-+                       "Unknown device (0x%x) found, can not configure IRQs\n",
-+                       bus->chipinfo.id);
-       }
--      bcma_info(bus, "IRQ reconfiguration done\n");
-+      bcma_debug(bus, "IRQ reconfiguration done\n");
-       bcma_core_mips_dump_irq(bus);
-       mcore->setup_done = true;
---- a/drivers/bcma/driver_pci_host.c
-+++ b/drivers/bcma/driver_pci_host.c
-@@ -94,19 +94,19 @@ static int bcma_extpci_read_config(struc
-       if (dev == 0) {
-               /* we support only two functions on device 0 */
-               if (func > 1)
--                      return -EINVAL;
-+                      goto out;
-               /* accesses to config registers with offsets >= 256
-                * requires indirect access.
-                */
-               if (off >= PCI_CONFIG_SPACE_SIZE) {
-                       addr = (func << 12);
--                      addr |= (off & 0x0FFF);
-+                      addr |= (off & 0x0FFC);
-                       val = bcma_pcie_read_config(pc, addr);
-               } else {
-                       addr = BCMA_CORE_PCI_PCICFG0;
-                       addr |= (func << 8);
--                      addr |= (off & 0xfc);
-+                      addr |= (off & 0xFC);
-                       val = pcicore_read32(pc, addr);
-               }
-       } else {
-@@ -119,11 +119,9 @@ static int bcma_extpci_read_config(struc
-                       goto out;
-               if (mips_busprobe32(val, mmio)) {
--                      val = 0xffffffff;
-+                      val = 0xFFFFFFFF;
-                       goto unmap;
-               }
--
--              val = readl(mmio);
-       }
-       val >>= (8 * (off & 3));
-@@ -151,7 +149,7 @@ static int bcma_extpci_write_config(stru
-                                  const void *buf, int len)
- {
-       int err = -EINVAL;
--      u32 addr = 0, val = 0;
-+      u32 addr, val;
-       void __iomem *mmio = 0;
-       u16 chipid = pc->core->bus->chipinfo.id;
-@@ -159,16 +157,22 @@ static int bcma_extpci_write_config(stru
-       if (unlikely(len != 1 && len != 2 && len != 4))
-               goto out;
-       if (dev == 0) {
-+              /* we support only two functions on device 0 */
-+              if (func > 1)
-+                      goto out;
-+
-               /* accesses to config registers with offsets >= 256
-                * requires indirect access.
-                */
--              if (off < PCI_CONFIG_SPACE_SIZE) {
--                      addr = pc->core->addr + BCMA_CORE_PCI_PCICFG0;
-+              if (off >= PCI_CONFIG_SPACE_SIZE) {
-+                      addr = (func << 12);
-+                      addr |= (off & 0x0FFC);
-+                      val = bcma_pcie_read_config(pc, addr);
-+              } else {
-+                      addr = BCMA_CORE_PCI_PCICFG0;
-                       addr |= (func << 8);
--                      addr |= (off & 0xfc);
--                      mmio = ioremap_nocache(addr, sizeof(val));
--                      if (!mmio)
--                              goto out;
-+                      addr |= (off & 0xFC);
-+                      val = pcicore_read32(pc, addr);
-               }
-       } else {
-               addr = bcma_get_cfgspace_addr(pc, dev, func, off);
-@@ -180,19 +184,17 @@ static int bcma_extpci_write_config(stru
-                       goto out;
-               if (mips_busprobe32(val, mmio)) {
--                      val = 0xffffffff;
-+                      val = 0xFFFFFFFF;
-                       goto unmap;
-               }
-       }
-       switch (len) {
-       case 1:
--              val = readl(mmio);
-               val &= ~(0xFF << (8 * (off & 3)));
-               val |= *((const u8 *)buf) << (8 * (off & 3));
-               break;
-       case 2:
--              val = readl(mmio);
-               val &= ~(0xFFFF << (8 * (off & 3)));
-               val |= *((const u16 *)buf) << (8 * (off & 3));
-               break;
-@@ -200,13 +202,14 @@ static int bcma_extpci_write_config(stru
-               val = *((const u32 *)buf);
-               break;
-       }
--      if (dev == 0 && !addr) {
-+      if (dev == 0) {
-               /* accesses to config registers with offsets >= 256
-                * requires indirect access.
-                */
--              addr = (func << 12);
--              addr |= (off & 0x0FFF);
--              bcma_pcie_write_config(pc, addr, val);
-+              if (off >= PCI_CONFIG_SPACE_SIZE)
-+                      bcma_pcie_write_config(pc, addr, val);
-+              else
-+                      pcicore_write32(pc, addr, val);
-       } else {
-               writel(val, mmio);
-@@ -276,7 +279,7 @@ static u8 bcma_find_pci_capability(struc
-       /* check for Header type 0 */
-       bcma_extpci_read_config(pc, dev, func, PCI_HEADER_TYPE, &byte_val,
-                               sizeof(u8));
--      if ((byte_val & 0x7f) != PCI_HEADER_TYPE_NORMAL)
-+      if ((byte_val & 0x7F) != PCI_HEADER_TYPE_NORMAL)
-               return cap_ptr;
-       /* check if the capability pointer field exists */
-@@ -401,6 +404,8 @@ void bcma_core_pci_hostmode_init(struct
-               return;
-       }
-+      spin_lock_init(&pc_host->cfgspace_lock);
-+
-       pc->host_controller = pc_host;
-       pc_host->pci_controller.io_resource = &pc_host->io_resource;
-       pc_host->pci_controller.mem_resource = &pc_host->mem_resource;
-@@ -426,7 +431,7 @@ void bcma_core_pci_hostmode_init(struct
-       /* Reset RC */
-       usleep_range(3000, 5000);
-       pcicore_write32(pc, BCMA_CORE_PCI_CTL, BCMA_CORE_PCI_CTL_RST_OE);
--      usleep_range(1000, 2000);
-+      msleep(50);
-       pcicore_write32(pc, BCMA_CORE_PCI_CTL, BCMA_CORE_PCI_CTL_RST |
-                       BCMA_CORE_PCI_CTL_RST_OE);
-@@ -488,6 +493,17 @@ void bcma_core_pci_hostmode_init(struct
-       bcma_core_pci_enable_crs(pc);
-+      if (bus->chipinfo.id == BCMA_CHIP_ID_BCM4706 ||
-+          bus->chipinfo.id == BCMA_CHIP_ID_BCM4716) {
-+              u16 val16;
-+              bcma_extpci_read_config(pc, 0, 0, BCMA_CORE_PCI_CFG_DEVCTRL,
-+                                      &val16, sizeof(val16));
-+              val16 |= (2 << 5);      /* Max payload size of 512 */
-+              val16 |= (2 << 12);     /* MRRS 512 */
-+              bcma_extpci_write_config(pc, 0, 0, BCMA_CORE_PCI_CFG_DEVCTRL,
-+                                       &val16, sizeof(val16));
-+      }
-+
-       /* Enable PCI bridge BAR0 memory & master access */
-       tmp = PCI_COMMAND_MASTER | PCI_COMMAND_MEMORY;
-       bcma_extpci_write_config(pc, 0, 0, PCI_COMMAND, &tmp, sizeof(tmp));
-@@ -565,6 +581,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI
- int bcma_core_pci_plat_dev_init(struct pci_dev *dev)
- {
-       struct bcma_drv_pci_host *pc_host;
-+      int readrq;
-       if (dev->bus->ops->read != bcma_core_pci_hostmode_read_config) {
-               /* This is not a device on the PCI-core bridge. */
-@@ -576,9 +593,14 @@ 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_mips_irq(pc_host->pdev->core) + 2;
-+      dev->irq = bcma_core_irq(pc_host->pdev->core);
-       pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq);
-+      readrq = pcie_get_readrq(dev);
-+      if (readrq > 128) {
-+              pr_info("change PCIe max read request size from %i to 128\n", readrq);
-+              pcie_set_readrq(dev, 128);
-+      }
-       return 0;
- }
- EXPORT_SYMBOL(bcma_core_pci_plat_dev_init);
-@@ -595,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_mips_irq(pc_host->pdev->core) + 2;
-+      return bcma_core_irq(pc_host->pdev->core);
- }
- EXPORT_SYMBOL(bcma_core_pci_pcibios_map_irq);
---- a/drivers/bcma/host_pci.c
-+++ b/drivers/bcma/host_pci.c
-@@ -275,6 +275,7 @@ static DEFINE_PCI_DEVICE_TABLE(bcma_pci_
-       { 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, 0x4727) },
-       { 0, },
- };
---- a/drivers/bcma/main.c
-+++ b/drivers/bcma/main.c
-@@ -81,8 +81,8 @@ struct bcma_device *bcma_find_core(struc
- }
- EXPORT_SYMBOL_GPL(bcma_find_core);
--static struct bcma_device *bcma_find_core_unit(struct bcma_bus *bus, u16 coreid,
--                                             u8 unit)
-+struct bcma_device *bcma_find_core_unit(struct bcma_bus *bus, u16 coreid,
-+                                      u8 unit)
- {
-       struct bcma_device *core;
-@@ -93,6 +93,25 @@ static struct bcma_device *bcma_find_cor
-       return NULL;
- }
-+bool bcma_wait_value(struct bcma_device *core, u16 reg, u32 mask, u32 value,
-+                   int timeout)
-+{
-+      unsigned long deadline = jiffies + timeout;
-+      u32 val;
-+
-+      do {
-+              val = bcma_read32(core, reg);
-+              if ((val & mask) == value)
-+                      return true;
-+              cpu_relax();
-+              udelay(10);
-+      } while (!time_after_eq(jiffies, deadline));
-+
-+      bcma_warn(core->bus, "Timeout waiting for register 0x%04X!\n", reg);
-+
-+      return false;
-+}
-+
- static void bcma_release_core_dev(struct device *dev)
- {
-       struct bcma_device *core = container_of(dev, struct bcma_device, dev);
-@@ -120,6 +139,11 @@ static int bcma_register_cores(struct bc
-                       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);
-@@ -149,6 +173,14 @@ static int bcma_register_cores(struct bc
-               dev_id++;
-       }
-+#ifdef CONFIG_BCMA_DRIVER_MIPS
-+      if (bus->drv_cc.pflash.present) {
-+              err = platform_device_register(&bcma_pflash_dev);
-+              if (err)
-+                      bcma_err(bus, "Error registering parallel flash\n");
-+      }
-+#endif
-+
- #ifdef CONFIG_BCMA_SFLASH
-       if (bus->drv_cc.sflash.present) {
-               err = platform_device_register(&bcma_sflash_dev);
-@@ -205,7 +237,7 @@ int bcma_bus_register(struct bcma_bus *b
-       err = bcma_bus_scan(bus);
-       if (err) {
-               bcma_err(bus, "Failed to scan: %d\n", err);
--              return -1;
-+              return err;
-       }
-       /* Early init CC core */
---- a/drivers/bcma/scan.c
-+++ b/drivers/bcma/scan.c
-@@ -32,6 +32,18 @@ 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_ARMCA9, "ARM Cortex A9 core (ihost)" },
-       { BCMA_CORE_AMEMC, "AMEMC (DDR)" },
-       { BCMA_CORE_ALTA, "ALTA (I2S)" },
-       { BCMA_CORE_INVALID, "Invalid" },
-@@ -84,6 +96,8 @@ static const struct bcma_device_id_name
-       { BCMA_CORE_I2S, "I2S" },
-       { BCMA_CORE_SDR_DDR1_MEM_CTL, "SDR/DDR1 Memory Controller" },
-       { BCMA_CORE_SHIM, "SHIM" },
-+      { BCMA_CORE_PCIE2, "PCIe Gen2" },
-+      { BCMA_CORE_ARM_CR4, "ARM CR4" },
-       { BCMA_CORE_DEFAULT, "Default" },
- };
-@@ -137,19 +151,19 @@ static void bcma_scan_switch_core(struct
-                                      addr);
- }
--static u32 bcma_erom_get_ent(struct bcma_bus *bus, u32 **eromptr)
-+static u32 bcma_erom_get_ent(struct bcma_bus *bus, u32 __iomem **eromptr)
- {
-       u32 ent = readl(*eromptr);
-       (*eromptr)++;
-       return ent;
- }
--static void bcma_erom_push_ent(u32 **eromptr)
-+static void bcma_erom_push_ent(u32 __iomem **eromptr)
- {
-       (*eromptr)--;
- }
--static s32 bcma_erom_get_ci(struct bcma_bus *bus, u32 **eromptr)
-+static s32 bcma_erom_get_ci(struct bcma_bus *bus, u32 __iomem **eromptr)
- {
-       u32 ent = bcma_erom_get_ent(bus, eromptr);
-       if (!(ent & SCAN_ER_VALID))
-@@ -159,14 +173,14 @@ static s32 bcma_erom_get_ci(struct bcma_
-       return ent;
- }
--static bool bcma_erom_is_end(struct bcma_bus *bus, u32 **eromptr)
-+static bool bcma_erom_is_end(struct bcma_bus *bus, u32 __iomem **eromptr)
- {
-       u32 ent = bcma_erom_get_ent(bus, eromptr);
-       bcma_erom_push_ent(eromptr);
-       return (ent == (SCAN_ER_TAG_END | SCAN_ER_VALID));
- }
--static bool bcma_erom_is_bridge(struct bcma_bus *bus, u32 **eromptr)
-+static bool bcma_erom_is_bridge(struct bcma_bus *bus, u32 __iomem **eromptr)
- {
-       u32 ent = bcma_erom_get_ent(bus, eromptr);
-       bcma_erom_push_ent(eromptr);
-@@ -175,7 +189,7 @@ static bool bcma_erom_is_bridge(struct b
-               ((ent & SCAN_ADDR_TYPE) == SCAN_ADDR_TYPE_BRIDGE));
- }
--static void bcma_erom_skip_component(struct bcma_bus *bus, u32 **eromptr)
-+static void bcma_erom_skip_component(struct bcma_bus *bus, u32 __iomem **eromptr)
- {
-       u32 ent;
-       while (1) {
-@@ -189,7 +203,7 @@ static void bcma_erom_skip_component(str
-       bcma_erom_push_ent(eromptr);
- }
--static s32 bcma_erom_get_mst_port(struct bcma_bus *bus, u32 **eromptr)
-+static s32 bcma_erom_get_mst_port(struct bcma_bus *bus, u32 __iomem **eromptr)
- {
-       u32 ent = bcma_erom_get_ent(bus, eromptr);
-       if (!(ent & SCAN_ER_VALID))
-@@ -199,7 +213,7 @@ static s32 bcma_erom_get_mst_port(struct
-       return ent;
- }
--static s32 bcma_erom_get_addr_desc(struct bcma_bus *bus, u32 **eromptr,
-+static u32 bcma_erom_get_addr_desc(struct bcma_bus *bus, u32 __iomem **eromptr,
-                                 u32 type, u8 port)
- {
-       u32 addrl, addrh, sizel, sizeh = 0;
-@@ -211,7 +225,7 @@ static s32 bcma_erom_get_addr_desc(struc
-           ((ent & SCAN_ADDR_TYPE) != type) ||
-           (((ent & SCAN_ADDR_PORT) >> SCAN_ADDR_PORT_SHIFT) != port)) {
-               bcma_erom_push_ent(eromptr);
--              return -EINVAL;
-+              return (u32)-EINVAL;
-       }
-       addrl = ent & SCAN_ADDR_ADDR;
-@@ -255,11 +269,13 @@ static struct bcma_device *bcma_find_cor
-       return NULL;
- }
-+#define IS_ERR_VALUE_U32(x) ((x) >= (u32)-MAX_ERRNO)
-+
- static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
-                             struct bcma_device_id *match, int core_num,
-                             struct bcma_device *core)
- {
--      s32 tmp;
-+      u32 tmp;
-       u8 i, j;
-       s32 cia, cib;
-       u8 ports[2], wrappers[2];
-@@ -337,11 +353,11 @@ static int bcma_get_next_core(struct bcm
-        * the main register space for the core
-        */
-       tmp = bcma_erom_get_addr_desc(bus, eromptr, SCAN_ADDR_TYPE_SLAVE, 0);
--      if (tmp <= 0) {
-+      if (tmp == 0 || IS_ERR_VALUE_U32(tmp)) {
-               /* Try again to see if it is a bridge */
-               tmp = bcma_erom_get_addr_desc(bus, eromptr,
-                                             SCAN_ADDR_TYPE_BRIDGE, 0);
--              if (tmp <= 0) {
-+              if (tmp == 0 || IS_ERR_VALUE_U32(tmp)) {
-                       return -EILSEQ;
-               } else {
-                       bcma_info(bus, "Bridge found\n");
-@@ -355,7 +371,7 @@ static int bcma_get_next_core(struct bcm
-               for (j = 0; ; j++) {
-                       tmp = bcma_erom_get_addr_desc(bus, eromptr,
-                               SCAN_ADDR_TYPE_SLAVE, i);
--                      if (tmp < 0) {
-+                      if (IS_ERR_VALUE_U32(tmp)) {
-                               /* no more entries for port _i_ */
-                               /* pr_debug("erom: slave port %d "
-                                * "has %d descriptors\n", i, j); */
-@@ -372,7 +388,7 @@ static int bcma_get_next_core(struct bcm
-               for (j = 0; ; j++) {
-                       tmp = bcma_erom_get_addr_desc(bus, eromptr,
-                               SCAN_ADDR_TYPE_MWRAP, i);
--                      if (tmp < 0) {
-+                      if (IS_ERR_VALUE_U32(tmp)) {
-                               /* no more entries for port _i_ */
-                               /* pr_debug("erom: master wrapper %d "
-                                * "has %d descriptors\n", i, j); */
-@@ -390,7 +406,7 @@ static int bcma_get_next_core(struct bcm
-               for (j = 0; ; j++) {
-                       tmp = bcma_erom_get_addr_desc(bus, eromptr,
-                               SCAN_ADDR_TYPE_SWRAP, i + hack);
--                      if (tmp < 0) {
-+                      if (IS_ERR_VALUE_U32(tmp)) {
-                               /* no more entries for port _i_ */
-                               /* pr_debug("erom: master wrapper %d "
-                                * has %d descriptors\n", i, j); */
---- a/drivers/bcma/sprom.c
-+++ b/drivers/bcma/sprom.c
-@@ -72,12 +72,12 @@ fail:
-  * R/W ops.
-  **************************************************/
--static void bcma_sprom_read(struct bcma_bus *bus, u16 offset, u16 *sprom)
-+static void bcma_sprom_read(struct bcma_bus *bus, u16 offset, u16 *sprom,
-+                          size_t words)
- {
-       int i;
--      for (i = 0; i < SSB_SPROMSIZE_WORDS_R4; i++)
--              sprom[i] = bcma_read16(bus->drv_cc.core,
--                                     offset + (i * 2));
-+      for (i = 0; i < words; i++)
-+              sprom[i] = bcma_read16(bus->drv_cc.core, offset + (i * 2));
- }
- /**************************************************
-@@ -124,29 +124,29 @@ static inline u8 bcma_crc8(u8 crc, u8 da
-       return t[crc ^ data];
- }
--static u8 bcma_sprom_crc(const u16 *sprom)
-+static u8 bcma_sprom_crc(const u16 *sprom, size_t words)
- {
-       int word;
-       u8 crc = 0xFF;
--      for (word = 0; word < SSB_SPROMSIZE_WORDS_R4 - 1; word++) {
-+      for (word = 0; word < words - 1; word++) {
-               crc = bcma_crc8(crc, sprom[word] & 0x00FF);
-               crc = bcma_crc8(crc, (sprom[word] & 0xFF00) >> 8);
-       }
--      crc = bcma_crc8(crc, sprom[SSB_SPROMSIZE_WORDS_R4 - 1] & 0x00FF);
-+      crc = bcma_crc8(crc, sprom[words - 1] & 0x00FF);
-       crc ^= 0xFF;
-       return crc;
- }
--static int bcma_sprom_check_crc(const u16 *sprom)
-+static int bcma_sprom_check_crc(const u16 *sprom, size_t words)
- {
-       u8 crc;
-       u8 expected_crc;
-       u16 tmp;
--      crc = bcma_sprom_crc(sprom);
--      tmp = sprom[SSB_SPROMSIZE_WORDS_R4 - 1] & SSB_SPROM_REVISION_CRC;
-+      crc = bcma_sprom_crc(sprom, words);
-+      tmp = sprom[words - 1] & SSB_SPROM_REVISION_CRC;
-       expected_crc = tmp >> SSB_SPROM_REVISION_CRC_SHIFT;
-       if (crc != expected_crc)
-               return -EPROTO;
-@@ -154,21 +154,25 @@ static int bcma_sprom_check_crc(const u1
-       return 0;
- }
--static int bcma_sprom_valid(const u16 *sprom)
-+static int bcma_sprom_valid(struct bcma_bus *bus, const u16 *sprom,
-+                          size_t words)
- {
-       u16 revision;
-       int err;
--      err = bcma_sprom_check_crc(sprom);
-+      err = bcma_sprom_check_crc(sprom, words);
-       if (err)
-               return err;
--      revision = sprom[SSB_SPROMSIZE_WORDS_R4 - 1] & SSB_SPROM_REVISION_REV;
--      if (revision != 8 && revision != 9) {
-+      revision = sprom[words - 1] & SSB_SPROM_REVISION_REV;
-+      if (revision != 8 && revision != 9 && revision != 10) {
-               pr_err("Unsupported SPROM revision: %d\n", revision);
-               return -ENOENT;
-       }
-+      bus->sprom.revision = revision;
-+      bcma_debug(bus, "Found SPROM revision %d\n", revision);
-+
-       return 0;
- }
-@@ -208,15 +212,13 @@ static void bcma_sprom_extract_r8(struct
-       BUILD_BUG_ON(ARRAY_SIZE(pwr_info_offset) !=
-                       ARRAY_SIZE(bus->sprom.core_pwr_info));
--      bus->sprom.revision = sprom[SSB_SPROMSIZE_WORDS_R4 - 1] &
--              SSB_SPROM_REVISION_REV;
--
-       for (i = 0; i < 3; i++) {
-               v = sprom[SPOFF(SSB_SPROM8_IL0MAC) + i];
-               *(((__be16 *)bus->sprom.il0mac) + i) = cpu_to_be16(v);
-       }
-       SPEX(board_rev, SSB_SPROM8_BOARDREV, ~0, 0);
-+      SPEX(board_type, SSB_SPROM1_SPID, ~0, 0);
-       SPEX(txpid2g[0], SSB_SPROM4_TXPID2G01, SSB_SPROM4_TXPID2G0,
-            SSB_SPROM4_TXPID2G0_SHIFT);
-@@ -501,7 +503,7 @@ static bool bcma_sprom_onchip_available(
-       case BCMA_CHIP_ID_BCM4331:
-               present = chip_status & BCMA_CC_CHIPST_4331_OTP_PRESENT;
-               break;
--
-+      case BCMA_CHIP_ID_BCM43142:
-       case BCMA_CHIP_ID_BCM43224:
-       case BCMA_CHIP_ID_BCM43225:
-               /* for these chips OTP is always available */
-@@ -549,7 +551,9 @@ int bcma_sprom_get(struct bcma_bus *bus)
- {
-       u16 offset = BCMA_CC_SPROM;
-       u16 *sprom;
--      int err = 0;
-+      size_t sprom_sizes[] = { SSB_SPROMSIZE_WORDS_R4,
-+                               SSB_SPROMSIZE_WORDS_R10, };
-+      int i, err = 0;
-       if (!bus->drv_cc.core)
-               return -EOPNOTSUPP;
-@@ -578,32 +582,37 @@ int bcma_sprom_get(struct bcma_bus *bus)
-               }
-       }
--      sprom = kcalloc(SSB_SPROMSIZE_WORDS_R4, sizeof(u16),
--                      GFP_KERNEL);
--      if (!sprom)
--              return -ENOMEM;
--
-       if (bus->chipinfo.id == BCMA_CHIP_ID_BCM4331 ||
-           bus->chipinfo.id == BCMA_CHIP_ID_BCM43431)
-               bcma_chipco_bcm4331_ext_pa_lines_ctl(&bus->drv_cc, false);
-       bcma_debug(bus, "SPROM offset 0x%x\n", offset);
--      bcma_sprom_read(bus, offset, sprom);
-+      for (i = 0; i < ARRAY_SIZE(sprom_sizes); i++) {
-+              size_t words = sprom_sizes[i];
-+
-+              sprom = kcalloc(words, sizeof(u16), GFP_KERNEL);
-+              if (!sprom)
-+                      return -ENOMEM;
-+
-+              bcma_sprom_read(bus, offset, sprom, words);
-+              err = bcma_sprom_valid(bus, sprom, words);
-+              if (!err)
-+                      break;
-+
-+              kfree(sprom);
-+      }
-       if (bus->chipinfo.id == BCMA_CHIP_ID_BCM4331 ||
-           bus->chipinfo.id == BCMA_CHIP_ID_BCM43431)
-               bcma_chipco_bcm4331_ext_pa_lines_ctl(&bus->drv_cc, true);
--      err = bcma_sprom_valid(sprom);
-       if (err) {
--              bcma_warn(bus, "invalid sprom read from the PCIe card, try to use fallback sprom\n");
-+              bcma_warn(bus, "Invalid SPROM read from the PCIe card, trying to use fallback SPROM\n");
-               err = bcma_fill_sprom_with_fallback(bus, &bus->sprom);
--              goto out;
-+      } else {
-+              bcma_sprom_extract_r8(bus, sprom);
-+              kfree(sprom);
-       }
--      bcma_sprom_extract_r8(bus, sprom);
--
--out:
--      kfree(sprom);
-       return err;
- }
---- a/include/linux/bcma/bcma.h
-+++ b/include/linux/bcma/bcma.h
-@@ -72,7 +72,19 @@ 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_4706_SOC_RAM                0x50E
-+#define BCMA_CORE_ARMCA9              0x510
- #define BCMA_CORE_4706_MAC_GBIT               0x52D
- #define BCMA_CORE_AMEMC                       0x52E   /* DDR1/2 memory controller core */
- #define BCMA_CORE_ALTA                        0x534   /* I2S core */
-@@ -134,12 +146,20 @@ struct bcma_host_ops {
- #define BCMA_CORE_I2S                 0x834
- #define BCMA_CORE_SDR_DDR1_MEM_CTL    0x835   /* SDR/DDR1 memory controller core */
- #define BCMA_CORE_SHIM                        0x837   /* SHIM component in ubus/6362 */
-+#define BCMA_CORE_PHY_AC              0x83B
-+#define BCMA_CORE_PCIE2                       0x83C   /* PCI Express Gen2 */
-+#define BCMA_CORE_USB30_DEV           0x83D
-+#define BCMA_CORE_ARM_CR4             0x83E
- #define BCMA_CORE_DEFAULT             0xFFF
- #define BCMA_MAX_NR_CORES             16
- /* 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
-@@ -172,6 +192,65 @@ struct bcma_host_ops {
- #define  BCMA_PKG_ID_BCM5357  11
- #define BCMA_CHIP_ID_BCM53572 53572
- #define  BCMA_PKG_ID_BCM47188 9
-+#define BCMA_CHIP_ID_BCM4707  53010
-+#define  BCMA_PKG_ID_BCM4707  1
-+#define  BCMA_PKG_ID_BCM4708  2
-+#define  BCMA_PKG_ID_BCM4709  0
-+#define BCMA_CHIP_ID_BCM53018 53018
-+
-+/* Board types (on PCI usually equals to the subsystem dev id) */
-+/* BCM4313 */
-+#define BCMA_BOARD_TYPE_BCM94313BU    0X050F
-+#define BCMA_BOARD_TYPE_BCM94313HM    0X0510
-+#define BCMA_BOARD_TYPE_BCM94313EPA   0X0511
-+#define BCMA_BOARD_TYPE_BCM94313HMG   0X051C
-+/* BCM4716 */
-+#define BCMA_BOARD_TYPE_BCM94716NR2   0X04CD
-+/* BCM43224 */
-+#define BCMA_BOARD_TYPE_BCM943224X21  0X056E
-+#define BCMA_BOARD_TYPE_BCM943224X21_FCC      0X00D1
-+#define BCMA_BOARD_TYPE_BCM943224X21B 0X00E9
-+#define BCMA_BOARD_TYPE_BCM943224M93  0X008B
-+#define BCMA_BOARD_TYPE_BCM943224M93A 0X0090
-+#define BCMA_BOARD_TYPE_BCM943224X16  0X0093
-+#define BCMA_BOARD_TYPE_BCM94322X9    0X008D
-+#define BCMA_BOARD_TYPE_BCM94322M35E  0X008E
-+/* BCM43228 */
-+#define BCMA_BOARD_TYPE_BCM943228BU8  0X0540
-+#define BCMA_BOARD_TYPE_BCM943228BU9  0X0541
-+#define BCMA_BOARD_TYPE_BCM943228BU   0X0542
-+#define BCMA_BOARD_TYPE_BCM943227HM4L 0X0543
-+#define BCMA_BOARD_TYPE_BCM943227HMB  0X0544
-+#define BCMA_BOARD_TYPE_BCM943228HM4L 0X0545
-+#define BCMA_BOARD_TYPE_BCM943228SD   0X0573
-+/* BCM4331 */
-+#define BCMA_BOARD_TYPE_BCM94331X19   0X00D6
-+#define BCMA_BOARD_TYPE_BCM94331X28   0X00E4
-+#define BCMA_BOARD_TYPE_BCM94331X28B  0X010E
-+#define BCMA_BOARD_TYPE_BCM94331PCIEBT3AX     0X00E4
-+#define BCMA_BOARD_TYPE_BCM94331X12_2G        0X00EC
-+#define BCMA_BOARD_TYPE_BCM94331X12_5G        0X00ED
-+#define BCMA_BOARD_TYPE_BCM94331X29B  0X00EF
-+#define BCMA_BOARD_TYPE_BCM94331CSAX  0X00EF
-+#define BCMA_BOARD_TYPE_BCM94331X19C  0X00F5
-+#define BCMA_BOARD_TYPE_BCM94331X33   0X00F4
-+#define BCMA_BOARD_TYPE_BCM94331BU    0X0523
-+#define BCMA_BOARD_TYPE_BCM94331S9BU  0X0524
-+#define BCMA_BOARD_TYPE_BCM94331MC    0X0525
-+#define BCMA_BOARD_TYPE_BCM94331MCI   0X0526
-+#define BCMA_BOARD_TYPE_BCM94331PCIEBT4       0X0527
-+#define BCMA_BOARD_TYPE_BCM94331HM    0X0574
-+#define BCMA_BOARD_TYPE_BCM94331PCIEDUAL      0X059B
-+#define BCMA_BOARD_TYPE_BCM94331MCH5  0X05A9
-+#define BCMA_BOARD_TYPE_BCM94331CS    0X05C6
-+#define BCMA_BOARD_TYPE_BCM94331CD    0X05DA
-+/* BCM53572 */
-+#define BCMA_BOARD_TYPE_BCM953572BU   0X058D
-+#define BCMA_BOARD_TYPE_BCM953572NR2  0X058E
-+#define BCMA_BOARD_TYPE_BCM947188NR2  0X058F
-+#define BCMA_BOARD_TYPE_BCM953572SDRNR2       0X0590
-+/* BCM43142 */
-+#define BCMA_BOARD_TYPE_BCM943142HM   0X05E0
- struct bcma_device {
-       struct bcma_bus *bus;
---- a/include/linux/bcma/bcma_driver_chipcommon.h
-+++ b/include/linux/bcma/bcma_driver_chipcommon.h
-@@ -27,7 +27,7 @@
- #define   BCMA_CC_FLASHT_NONE         0x00000000      /* No flash */
- #define   BCMA_CC_FLASHT_STSER                0x00000100      /* ST serial flash */
- #define   BCMA_CC_FLASHT_ATSER                0x00000200      /* Atmel serial flash */
--#define   BCMA_CC_FLASHT_NFLASH               0x00000200      /* NAND flash */
-+#define   BCMA_CC_FLASHT_NAND         0x00000300      /* NAND flash */
- #define         BCMA_CC_FLASHT_PARA           0x00000700      /* Parallel flash */
- #define  BCMA_CC_CAP_PLLT             0x00038000      /* PLL Type */
- #define   BCMA_PLLTYPE_NONE           0x00000000
-@@ -104,6 +104,7 @@
- #define  BCMA_CC_CHIPST_4706_MIPS_BENDIAN     BIT(3) /* 0: little, 1: big endian */
- #define  BCMA_CC_CHIPST_4706_PCIE1_DISABLE    BIT(5) /* PCIE1 enable strap pin */
- #define  BCMA_CC_CHIPST_5357_NAND_BOOT                BIT(4) /* NAND boot, valid for CC rev 38 and/or BCM5357 */
-+#define  BCMA_CC_CHIPST_4360_XTAL_40MZ                0x00000001
- #define BCMA_CC_JCMD                  0x0030          /* Rev >= 10 only */
- #define  BCMA_CC_JCMD_START           0x80000000
- #define  BCMA_CC_JCMD_BUSY            0x80000000
-@@ -315,6 +316,9 @@
- #define BCMA_CC_PMU_CTL                       0x0600 /* PMU control */
- #define  BCMA_CC_PMU_CTL_ILP_DIV      0xFFFF0000 /* ILP div mask */
- #define  BCMA_CC_PMU_CTL_ILP_DIV_SHIFT        16
-+#define  BCMA_CC_PMU_CTL_RES          0x00006000 /* reset control mask */
-+#define  BCMA_CC_PMU_CTL_RES_SHIFT    13
-+#define  BCMA_CC_PMU_CTL_RES_RELOAD   0x2     /* reload POR values */
- #define  BCMA_CC_PMU_CTL_PLL_UPD      0x00000400
- #define  BCMA_CC_PMU_CTL_NOILPONW     0x00000200 /* No ILP on wait */
- #define  BCMA_CC_PMU_CTL_HTREQEN      0x00000100 /* HT req enable */
-@@ -326,6 +330,8 @@
- #define BCMA_CC_PMU_CAP                       0x0604 /* PMU capabilities */
- #define  BCMA_CC_PMU_CAP_REVISION     0x000000FF /* Revision mask */
- #define BCMA_CC_PMU_STAT              0x0608 /* PMU status */
-+#define  BCMA_CC_PMU_STAT_EXT_LPO_AVAIL       0x00000100
-+#define  BCMA_CC_PMU_STAT_WDRESET     0x00000080
- #define  BCMA_CC_PMU_STAT_INTPEND     0x00000040 /* Interrupt pending */
- #define  BCMA_CC_PMU_STAT_SBCLKST     0x00000030 /* Backplane clock status? */
- #define  BCMA_CC_PMU_STAT_HAVEALP     0x00000008 /* ALP available */
-@@ -351,6 +357,11 @@
- #define BCMA_CC_REGCTL_DATA           0x065C
- #define BCMA_CC_PLLCTL_ADDR           0x0660
- #define BCMA_CC_PLLCTL_DATA           0x0664
-+#define BCMA_CC_PMU_STRAPOPT          0x0668 /* (corerev >= 28) */
-+#define BCMA_CC_PMU_XTAL_FREQ         0x066C /* (pmurev >= 10) */
-+#define  BCMA_CC_PMU_XTAL_FREQ_ILPCTL_MASK    0x00001FFF
-+#define  BCMA_CC_PMU_XTAL_FREQ_MEASURE_MASK   0x80000000
-+#define  BCMA_CC_PMU_XTAL_FREQ_MEASURE_SHIFT  31
- #define BCMA_CC_SPROM                 0x0800 /* SPROM beginning */
- /* NAND flash MLC controller registers (corerev >= 38) */
- #define BCMA_CC_NAND_REVISION         0x0C00
-@@ -431,6 +442,23 @@
- #define  BCMA_CC_PMU6_4706_PROC_NDIV_MODE_MASK        0x00000007
- #define  BCMA_CC_PMU6_4706_PROC_NDIV_MODE_SHIFT       0
-+/* PMU rev 15 */
-+#define BCMA_CC_PMU15_PLL_PLLCTL0     0
-+#define  BCMA_CC_PMU15_PLL_PC0_CLKSEL_MASK    0x00000003
-+#define  BCMA_CC_PMU15_PLL_PC0_CLKSEL_SHIFT   0
-+#define  BCMA_CC_PMU15_PLL_PC0_FREQTGT_MASK   0x003FFFFC
-+#define  BCMA_CC_PMU15_PLL_PC0_FREQTGT_SHIFT  2
-+#define  BCMA_CC_PMU15_PLL_PC0_PRESCALE_MASK  0x00C00000
-+#define  BCMA_CC_PMU15_PLL_PC0_PRESCALE_SHIFT 22
-+#define  BCMA_CC_PMU15_PLL_PC0_KPCTRL_MASK    0x07000000
-+#define  BCMA_CC_PMU15_PLL_PC0_KPCTRL_SHIFT   24
-+#define  BCMA_CC_PMU15_PLL_PC0_FCNTCTRL_MASK  0x38000000
-+#define  BCMA_CC_PMU15_PLL_PC0_FCNTCTRL_SHIFT 27
-+#define  BCMA_CC_PMU15_PLL_PC0_FDCMODE_MASK   0x40000000
-+#define  BCMA_CC_PMU15_PLL_PC0_FDCMODE_SHIFT  30
-+#define  BCMA_CC_PMU15_PLL_PC0_CTRLBIAS_MASK  0x80000000
-+#define  BCMA_CC_PMU15_PLL_PC0_CTRLBIAS_SHIFT 31
-+
- /* ALP clock on pre-PMU chips */
- #define BCMA_CC_PMU_ALP_CLOCK         20000000
- /* HT clock for systems with PMU-enabled chipcommon */
-@@ -503,6 +531,37 @@
- #define BCMA_CHIPCTL_5357_I2S_PINS_ENABLE     BIT(18)
- #define BCMA_CHIPCTL_5357_I2CSPI_PINS_ENABLE  BIT(19)
-+#define BCMA_RES_4314_LPLDO_PU                        BIT(0)
-+#define BCMA_RES_4314_PMU_SLEEP_DIS           BIT(1)
-+#define BCMA_RES_4314_PMU_BG_PU                       BIT(2)
-+#define BCMA_RES_4314_CBUCK_LPOM_PU           BIT(3)
-+#define BCMA_RES_4314_CBUCK_PFM_PU            BIT(4)
-+#define BCMA_RES_4314_CLDO_PU                 BIT(5)
-+#define BCMA_RES_4314_LPLDO2_LVM              BIT(6)
-+#define BCMA_RES_4314_WL_PMU_PU                       BIT(7)
-+#define BCMA_RES_4314_LNLDO_PU                        BIT(8)
-+#define BCMA_RES_4314_LDO3P3_PU                       BIT(9)
-+#define BCMA_RES_4314_OTP_PU                  BIT(10)
-+#define BCMA_RES_4314_XTAL_PU                 BIT(11)
-+#define BCMA_RES_4314_WL_PWRSW_PU             BIT(12)
-+#define BCMA_RES_4314_LQ_AVAIL                        BIT(13)
-+#define BCMA_RES_4314_LOGIC_RET                       BIT(14)
-+#define BCMA_RES_4314_MEM_SLEEP                       BIT(15)
-+#define BCMA_RES_4314_MACPHY_RET              BIT(16)
-+#define BCMA_RES_4314_WL_CORE_READY           BIT(17)
-+#define BCMA_RES_4314_ILP_REQ                 BIT(18)
-+#define BCMA_RES_4314_ALP_AVAIL                       BIT(19)
-+#define BCMA_RES_4314_MISC_PWRSW_PU           BIT(20)
-+#define BCMA_RES_4314_SYNTH_PWRSW_PU          BIT(21)
-+#define BCMA_RES_4314_RX_PWRSW_PU             BIT(22)
-+#define BCMA_RES_4314_RADIO_PU                        BIT(23)
-+#define BCMA_RES_4314_VCO_LDO_PU              BIT(24)
-+#define BCMA_RES_4314_AFE_LDO_PU              BIT(25)
-+#define BCMA_RES_4314_RX_LDO_PU                       BIT(26)
-+#define BCMA_RES_4314_TX_LDO_PU                       BIT(27)
-+#define BCMA_RES_4314_HT_AVAIL                        BIT(28)
-+#define BCMA_RES_4314_MACPHY_CLK_AVAIL                BIT(29)
-+
- /* Data for the PMU, if available.
-  * Check availability with ((struct bcma_chipcommon)->capabilities & BCMA_CC_CAP_PMU)
-  */
-@@ -528,6 +587,7 @@ struct bcma_sflash {
-       u32 size;
-       struct mtd_info *mtd;
-+      void *priv;
- };
- #endif
-@@ -606,6 +666,8 @@ void bcma_chipco_bcm4331_ext_pa_lines_ct
- extern u32 bcma_chipco_watchdog_timer_set(struct bcma_drv_cc *cc, u32 ticks);
-+extern u32 bcma_chipco_get_alp_clock(struct bcma_drv_cc *cc);
-+
- void bcma_chipco_irq_mask(struct bcma_drv_cc *cc, u32 mask, u32 value);
- u32 bcma_chipco_irq_status(struct bcma_drv_cc *cc, u32 mask);
-@@ -634,4 +696,6 @@ extern void bcma_chipco_regctl_maskset(s
-                                      u32 offset, u32 mask, u32 set);
- extern void bcma_pmu_spuravoid_pllupdate(struct bcma_drv_cc *cc, int spuravoid);
-+extern u32 bcma_pmu_get_bus_clock(struct bcma_drv_cc *cc);
-+
- #endif /* LINUX_BCMA_DRIVER_CC_H_ */
---- a/include/linux/bcma/bcma_driver_mips.h
-+++ b/include/linux/bcma/bcma_driver_mips.h
-@@ -28,6 +28,7 @@
- #define BCMA_MIPS_MIPS74K_GPIOEN      0x0048
- #define BCMA_MIPS_MIPS74K_CLKCTLST    0x01E0
-+#define BCMA_MIPS_OOBSELINA74         0x004
- #define BCMA_MIPS_OOBSELOUTA30                0x100
- struct bcma_device;
-@@ -36,19 +37,23 @@ struct bcma_drv_mips {
-       struct bcma_device *core;
-       u8 setup_done:1;
-       u8 early_setup_done:1;
--      unsigned int assigned_irqs;
- };
- #ifdef CONFIG_BCMA_DRIVER_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);
- #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)
-+{
-+      return 0;
-+}
- #endif
- extern u32 bcma_cpu_clock(struct bcma_drv_mips *mcore);
--extern unsigned int bcma_core_mips_irq(struct bcma_device *dev);
--
- #endif /* LINUX_BCMA_DRIVER_MIPS_H_ */
---- a/include/linux/bcma/bcma_driver_pci.h
-+++ b/include/linux/bcma/bcma_driver_pci.h
-@@ -179,10 +179,33 @@ struct pci_dev;
- #define BCMA_CORE_PCI_CFG_FUN_MASK            7       /* Function mask */
- #define BCMA_CORE_PCI_CFG_OFF_MASK            0xfff   /* Register mask */
-+#define BCMA_CORE_PCI_CFG_DEVCTRL             0xd8
-+
-+#define BCMA_CORE_PCI_
-+
-+/* MDIO devices (SERDES modules) */
-+#define BCMA_CORE_PCI_MDIO_IEEE0              0x000
-+#define BCMA_CORE_PCI_MDIO_IEEE1              0x001
-+#define BCMA_CORE_PCI_MDIO_BLK0                       0x800
-+#define BCMA_CORE_PCI_MDIO_BLK1                       0x801
-+#define  BCMA_CORE_PCI_MDIO_BLK1_MGMT0                0x16
-+#define  BCMA_CORE_PCI_MDIO_BLK1_MGMT1                0x17
-+#define  BCMA_CORE_PCI_MDIO_BLK1_MGMT2                0x18
-+#define  BCMA_CORE_PCI_MDIO_BLK1_MGMT3                0x19
-+#define  BCMA_CORE_PCI_MDIO_BLK1_MGMT4                0x1A
-+#define BCMA_CORE_PCI_MDIO_BLK2                       0x802
-+#define BCMA_CORE_PCI_MDIO_BLK3                       0x803
-+#define BCMA_CORE_PCI_MDIO_BLK4                       0x804
-+#define BCMA_CORE_PCI_MDIO_TXPLL              0x808   /* TXPLL register block idx */
-+#define BCMA_CORE_PCI_MDIO_TXCTRL0            0x820
-+#define BCMA_CORE_PCI_MDIO_SERDESID           0x831
-+#define BCMA_CORE_PCI_MDIO_RXCTRL0            0x840
-+
- /* PCIE Root Capability Register bits (Host mode only) */
- #define BCMA_CORE_PCI_RC_CRS_VISIBILITY               0x0001
- struct bcma_drv_pci;
-+struct bcma_bus;
- #ifdef CONFIG_BCMA_DRIVER_PCI_HOSTMODE
- struct bcma_drv_pci_host {
-@@ -217,7 +240,9 @@ struct bcma_drv_pci {
- 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);
--extern void bcma_core_pci_extend_L1timer(struct bcma_drv_pci *pc, bool extend);
-+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);
- extern int bcma_core_pci_plat_dev_init(struct pci_dev *dev);
---- a/include/linux/bcma/bcma_regs.h
-+++ b/include/linux/bcma/bcma_regs.h
-@@ -37,6 +37,7 @@
- #define  BCMA_IOST_BIST_DONE          0x8000
- #define BCMA_RESET_CTL                        0x0800
- #define  BCMA_RESET_CTL_RESET         0x0001
-+#define BCMA_RESET_ST                 0x0804
- /* BCMA PCI config space registers. */
- #define BCMA_PCI_PMCSR                        0x44
---- a/drivers/bcma/driver_pci.c
-+++ b/drivers/bcma/driver_pci.c
-@@ -31,7 +31,7 @@ static void bcma_pcie_write(struct bcma_
-       pcicore_write32(pc, BCMA_CORE_PCI_PCIEIND_DATA, data);
- }
--static void bcma_pcie_mdio_set_phy(struct bcma_drv_pci *pc, u8 phy)
-+static void bcma_pcie_mdio_set_phy(struct bcma_drv_pci *pc, u16 phy)
- {
-       u32 v;
-       int i;
-@@ -55,7 +55,7 @@ static void bcma_pcie_mdio_set_phy(struc
-       }
- }
--static u16 bcma_pcie_mdio_read(struct bcma_drv_pci *pc, u8 device, u8 address)
-+static u16 bcma_pcie_mdio_read(struct bcma_drv_pci *pc, u16 device, u8 address)
- {
-       int max_retries = 10;
-       u16 ret = 0;
-@@ -98,7 +98,7 @@ static u16 bcma_pcie_mdio_read(struct bc
-       return ret;
- }
--static void bcma_pcie_mdio_write(struct bcma_drv_pci *pc, u8 device,
-+static void bcma_pcie_mdio_write(struct bcma_drv_pci *pc, u16 device,
-                               u8 address, u16 data)
- {
-       int max_retries = 10;
-@@ -137,6 +137,13 @@ static void bcma_pcie_mdio_write(struct
-       pcicore_write32(pc, BCMA_CORE_PCI_MDIO_CONTROL, 0);
- }
-+static u16 bcma_pcie_mdio_writeread(struct bcma_drv_pci *pc, u16 device,
-+                                  u8 address, u16 data)
-+{
-+      bcma_pcie_mdio_write(pc, device, address, data);
-+      return bcma_pcie_mdio_read(pc, device, address);
-+}
-+
- /**************************************************
-  * Workarounds.
-  **************************************************/
-@@ -229,6 +236,32 @@ void bcma_core_pci_init(struct bcma_drv_
-               bcma_core_pci_clientmode_init(pc);
- }
-+void bcma_core_pci_power_save(struct bcma_bus *bus, bool up)
-+{
-+      struct bcma_drv_pci *pc;
-+      u16 data;
-+
-+      if (bus->hosttype != BCMA_HOSTTYPE_PCI)
-+              return;
-+
-+      pc = &bus->drv_pci[0];
-+
-+      if (pc->core->id.rev >= 15 && pc->core->id.rev <= 20) {
-+              data = up ? 0x74 : 0x7C;
-+              bcma_pcie_mdio_writeread(pc, BCMA_CORE_PCI_MDIO_BLK1,
-+                                       BCMA_CORE_PCI_MDIO_BLK1_MGMT1, 0x7F64);
-+              bcma_pcie_mdio_writeread(pc, BCMA_CORE_PCI_MDIO_BLK1,
-+                                       BCMA_CORE_PCI_MDIO_BLK1_MGMT3, data);
-+      } else if (pc->core->id.rev >= 21 && pc->core->id.rev <= 22) {
-+              data = up ? 0x75 : 0x7D;
-+              bcma_pcie_mdio_writeread(pc, BCMA_CORE_PCI_MDIO_BLK1,
-+                                       BCMA_CORE_PCI_MDIO_BLK1_MGMT1, 0x7E65);
-+              bcma_pcie_mdio_writeread(pc, BCMA_CORE_PCI_MDIO_BLK1,
-+                                       BCMA_CORE_PCI_MDIO_BLK1_MGMT3, data);
-+      }
-+}
-+EXPORT_SYMBOL_GPL(bcma_core_pci_power_save);
-+
- int bcma_core_pci_irq_ctl(struct bcma_drv_pci *pc, struct bcma_device *core,
-                         bool enable)
- {
-@@ -262,7 +295,7 @@ out:
- }
- EXPORT_SYMBOL_GPL(bcma_core_pci_irq_ctl);
--void bcma_core_pci_extend_L1timer(struct bcma_drv_pci *pc, bool extend)
-+static void bcma_core_pci_extend_L1timer(struct bcma_drv_pci *pc, bool extend)
- {
-       u32 w;
-@@ -274,4 +307,29 @@ void bcma_core_pci_extend_L1timer(struct
-       bcma_pcie_write(pc, BCMA_CORE_PCI_DLLP_PMTHRESHREG, w);
-       bcma_pcie_read(pc, BCMA_CORE_PCI_DLLP_PMTHRESHREG);
- }
--EXPORT_SYMBOL_GPL(bcma_core_pci_extend_L1timer);
-+
-+void bcma_core_pci_up(struct bcma_bus *bus)
-+{
-+      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)
-+{
-+      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/net/wireless/brcm80211/brcmsmac/aiutils.c
-+++ b/drivers/net/wireless/brcm80211/brcmsmac/aiutils.c
-@@ -685,27 +685,6 @@ bool ai_clkctl_cc(struct si_pub *sih, en
-       return mode == BCMA_CLKMODE_FAST;
- }
--void ai_pci_up(struct si_pub *sih)
--{
--      struct si_info *sii;
--
--      sii = container_of(sih, struct si_info, pub);
--
--      if (sii->icbus->hosttype == BCMA_HOSTTYPE_PCI)
--              bcma_core_pci_extend_L1timer(&sii->icbus->drv_pci[0], true);
--}
--
--/* Unconfigure and/or apply various WARs when going down */
--void ai_pci_down(struct si_pub *sih)
--{
--      struct si_info *sii;
--
--      sii = container_of(sih, struct si_info, pub);
--
--      if (sii->icbus->hosttype == BCMA_HOSTTYPE_PCI)
--              bcma_core_pci_extend_L1timer(&sii->icbus->drv_pci[0], false);
--}
--
- /* Enable BT-COEX & Ex-PA for 4313 */
- void ai_epa_4313war(struct si_pub *sih)
- {
---- a/drivers/net/wireless/brcm80211/brcmsmac/aiutils.h
-+++ b/drivers/net/wireless/brcm80211/brcmsmac/aiutils.h
-@@ -183,9 +183,6 @@ extern u16 ai_clkctl_fast_pwrup_delay(st
- extern bool ai_clkctl_cc(struct si_pub *sih, enum bcma_clkmode mode);
- extern bool ai_deviceremoved(struct si_pub *sih);
--extern void ai_pci_down(struct si_pub *sih);
--extern void ai_pci_up(struct si_pub *sih);
--
- /* Enable Ex-PA for 4313 */
- extern void ai_epa_4313war(struct si_pub *sih);
---- a/drivers/net/wireless/brcm80211/brcmsmac/main.c
-+++ b/drivers/net/wireless/brcm80211/brcmsmac/main.c
-@@ -4648,7 +4648,7 @@ static int brcms_b_attach(struct brcms_c
-       brcms_c_coredisable(wlc_hw);
-       /* Match driver "down" state */
--      ai_pci_down(wlc_hw->sih);
-+      bcma_core_pci_down(wlc_hw->d11core->bus);
-       /* turn off pll and xtal to match driver "down" state */
-       brcms_b_xtal(wlc_hw, OFF);
-@@ -4991,12 +4991,12 @@ static int brcms_b_up_prep(struct brcms_
-        */
-       if (brcms_b_radio_read_hwdisabled(wlc_hw)) {
-               /* put SB PCI in down state again */
--              ai_pci_down(wlc_hw->sih);
-+              bcma_core_pci_down(wlc_hw->d11core->bus);
-               brcms_b_xtal(wlc_hw, OFF);
-               return -ENOMEDIUM;
-       }
--      ai_pci_up(wlc_hw->sih);
-+      bcma_core_pci_up(wlc_hw->d11core->bus);
-       /* reset the d11 core */
-       brcms_b_corereset(wlc_hw, BRCMS_USE_COREFLAGS);
-@@ -5193,7 +5193,7 @@ static int brcms_b_down_finish(struct br
-               /* turn off primary xtal and pll */
-               if (!wlc_hw->noreset) {
--                      ai_pci_down(wlc_hw->sih);
-+                      bcma_core_pci_down(wlc_hw->d11core->bus);
-                       brcms_b_xtal(wlc_hw, OFF);
-               }
-       }
diff --git a/target/linux/generic/patches-3.8/030-backport-lib-devres-Introduce-devm_ioremap_resource.patch b/target/linux/generic/patches-3.8/030-backport-lib-devres-Introduce-devm_ioremap_resource.patch
deleted file mode 100644 (file)
index b902223..0000000
+++ /dev/null
@@ -1,251 +0,0 @@
-From 75096579c3ac39ddc2f8b0d9a8924eba31f4d920 Mon Sep 17 00:00:00 2001
-From: Thierry Reding <thierry.reding@avionic-design.de>
-Date: Mon, 21 Jan 2013 11:08:54 +0100
-Subject: [PATCH] lib: devres: Introduce devm_ioremap_resource()
-
-The devm_request_and_ioremap() function is very useful and helps avoid a
-whole lot of boilerplate. However, one issue that keeps popping up is
-its lack of a specific error code to determine which of the steps that
-it performs failed. Furthermore, while the function gives an example and
-suggests what error code to return on failure, a wide variety of error
-codes are used throughout the tree.
-
-In an attempt to fix these problems, this patch adds a new function that
-drivers can transition to. The devm_ioremap_resource() returns a pointer
-to the remapped I/O memory on success or an ERR_PTR() encoded error code
-on failure. Callers can check for failure using IS_ERR() and determine
-its cause by extracting the error code using PTR_ERR().
-
-devm_request_and_ioremap() is implemented as a wrapper around the new
-API and return NULL on failure as before. This ensures that backwards
-compatibility is maintained until all users have been converted to the
-new API, at which point the old devm_request_and_ioremap() function
-should be removed.
-
-A semantic patch is included which can be used to convert from the old
-devm_request_and_ioremap() API to the new devm_ioremap_resource() API.
-Some non-trivial cases may require manual intervention, though.
-
-Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
-Cc: Arnd Bergmann <arnd@arndb.de>
-Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- Documentation/driver-model/devres.txt              |    3 +-
- include/linux/device.h                             |    1 +
- lib/devres.c                                       |   57 ++++++++++---
- scripts/coccinelle/api/devm_ioremap_resource.cocci |   90 ++++++++++++++++++++
- 4 files changed, 137 insertions(+), 14 deletions(-)
- create mode 100644 scripts/coccinelle/api/devm_ioremap_resource.cocci
-
---- a/Documentation/driver-model/devres.txt
-+++ b/Documentation/driver-model/devres.txt
-@@ -266,7 +266,8 @@ IOMAP
-   devm_ioremap()
-   devm_ioremap_nocache()
-   devm_iounmap()
--  devm_request_and_ioremap() : checks resource, requests region, ioremaps
-+  devm_ioremap_resource() : checks resource, requests memory region, ioremaps
-+  devm_request_and_ioremap() : obsoleted by devm_ioremap_resource()
-   pcim_iomap()
-   pcim_iounmap()
-   pcim_iomap_table()  : array of mapped addresses indexed by BAR
---- a/include/linux/device.h
-+++ b/include/linux/device.h
-@@ -573,6 +573,7 @@ extern int devres_release_group(struct d
- extern void *devm_kzalloc(struct device *dev, size_t size, gfp_t gfp);
- extern void devm_kfree(struct device *dev, void *p);
-+void __iomem *devm_ioremap_resource(struct device *dev, struct resource *res);
- void __iomem *devm_request_and_ioremap(struct device *dev,
-                       struct resource *res);
---- a/lib/devres.c
-+++ b/lib/devres.c
-@@ -86,22 +86,24 @@ void devm_iounmap(struct device *dev, vo
- EXPORT_SYMBOL(devm_iounmap);
- /**
-- * devm_request_and_ioremap() - Check, request region, and ioremap resource
-- * @dev: Generic device to handle the resource for
-+ * devm_ioremap_resource() - check, request region, and ioremap resource
-+ * @dev: generic device to handle the resource for
-  * @res: resource to be handled
-  *
-- * Takes all necessary steps to ioremap a mem resource. Uses managed device, so
-- * everything is undone on driver detach. Checks arguments, so you can feed
-- * it the result from e.g. platform_get_resource() directly. Returns the
-- * remapped pointer or NULL on error. Usage example:
-+ * Checks that a resource is a valid memory region, requests the memory region
-+ * and ioremaps it either as cacheable or as non-cacheable memory depending on
-+ * the resource's flags. All operations are managed and will be undone on
-+ * driver detach.
-+ *
-+ * Returns a pointer to the remapped memory or an ERR_PTR() encoded error code
-+ * on failure. Usage example:
-  *
-  *    res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-- *    base = devm_request_and_ioremap(&pdev->dev, res);
-- *    if (!base)
-- *            return -EADDRNOTAVAIL;
-+ *    base = devm_ioremap_resource(&pdev->dev, res);
-+ *    if (IS_ERR(base))
-+ *            return PTR_ERR(base);
-  */
--void __iomem *devm_request_and_ioremap(struct device *dev,
--                      struct resource *res)
-+void __iomem *devm_ioremap_resource(struct device *dev, struct resource *res)
- {
-       resource_size_t size;
-       const char *name;
-@@ -111,7 +113,7 @@ void __iomem *devm_request_and_ioremap(s
-       if (!res || resource_type(res) != IORESOURCE_MEM) {
-               dev_err(dev, "invalid resource\n");
--              return NULL;
-+              return ERR_PTR(-EINVAL);
-       }
-       size = resource_size(res);
-@@ -119,7 +121,7 @@ void __iomem *devm_request_and_ioremap(s
-       if (!devm_request_mem_region(dev, res->start, size, name)) {
-               dev_err(dev, "can't request region for resource %pR\n", res);
--              return NULL;
-+              return ERR_PTR(-EBUSY);
-       }
-       if (res->flags & IORESOURCE_CACHEABLE)
-@@ -130,10 +132,39 @@ void __iomem *devm_request_and_ioremap(s
-       if (!dest_ptr) {
-               dev_err(dev, "ioremap failed for resource %pR\n", res);
-               devm_release_mem_region(dev, res->start, size);
-+              dest_ptr = ERR_PTR(-ENOMEM);
-       }
-       return dest_ptr;
- }
-+EXPORT_SYMBOL(devm_ioremap_resource);
-+
-+/**
-+ * devm_request_and_ioremap() - Check, request region, and ioremap resource
-+ * @dev: Generic device to handle the resource for
-+ * @res: resource to be handled
-+ *
-+ * Takes all necessary steps to ioremap a mem resource. Uses managed device, so
-+ * everything is undone on driver detach. Checks arguments, so you can feed
-+ * it the result from e.g. platform_get_resource() directly. Returns the
-+ * remapped pointer or NULL on error. Usage example:
-+ *
-+ *    res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-+ *    base = devm_request_and_ioremap(&pdev->dev, res);
-+ *    if (!base)
-+ *            return -EADDRNOTAVAIL;
-+ */
-+void __iomem *devm_request_and_ioremap(struct device *device,
-+                                     struct resource *res)
-+{
-+      void __iomem *dest_ptr;
-+
-+      dest_ptr = devm_ioremap_resource(device, res);
-+      if (IS_ERR(dest_ptr))
-+              return NULL;
-+
-+      return dest_ptr;
-+}
- EXPORT_SYMBOL(devm_request_and_ioremap);
- #ifdef CONFIG_HAS_IOPORT
---- /dev/null
-+++ b/scripts/coccinelle/api/devm_ioremap_resource.cocci
-@@ -0,0 +1,90 @@
-+virtual patch
-+virtual report
-+
-+@depends on patch@
-+expression base, dev, res;
-+@@
-+
-+-base = devm_request_and_ioremap(dev, res);
-++base = devm_ioremap_resource(dev, res);
-+ ...
-+ if (
-+-base == NULL
-++IS_ERR(base)
-+ || ...) {
-+<...
-+-     return ...;
-++     return PTR_ERR(base);
-+...>
-+ }
-+
-+@depends on patch@
-+expression e, E, ret;
-+identifier l;
-+@@
-+
-+ e = devm_ioremap_resource(...);
-+ ...
-+ if (IS_ERR(e) || ...) {
-+      ... when any
-+-     ret = E;
-++     ret = PTR_ERR(e);
-+      ...
-+(
-+      return ret;
-+|
-+      goto l;
-+)
-+ }
-+
-+@depends on patch@
-+expression e;
-+@@
-+
-+ e = devm_ioremap_resource(...);
-+ ...
-+ if (IS_ERR(e) || ...) {
-+      ...
-+-     \(dev_dbg\|dev_err\|pr_debug\|pr_err\|DRM_ERROR\)(...);
-+      ...
-+ }
-+
-+@depends on patch@
-+expression e;
-+identifier l;
-+@@
-+
-+ e = devm_ioremap_resource(...);
-+ ...
-+ if (IS_ERR(e) || ...)
-+-{
-+(
-+      return ...;
-+|
-+      goto l;
-+)
-+-}
-+
-+@r depends on report@
-+expression e;
-+identifier l;
-+position p1;
-+@@
-+
-+*e = devm_request_and_ioremap@p1(...);
-+ ...
-+ if (e == NULL || ...) {
-+      ...
-+(
-+      return ...;
-+|
-+      goto l;
-+)
-+ }
-+
-+@script:python depends on r@
-+p1 << r.p1;
-+@@
-+
-+msg = "ERROR: deprecated devm_request_and_ioremap() API used on line %s" % (p1[0].line)
-+coccilib.report.print_report(p1[0], msg)
diff --git a/target/linux/generic/patches-3.8/031-PCI-Remove-__weak-annotation-from-pcibios_get_phb_of.patch b/target/linux/generic/patches-3.8/031-PCI-Remove-__weak-annotation-from-pcibios_get_phb_of.patch
deleted file mode 100644 (file)
index ed97776..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-From 10629d711ed780470937ecda50d9ffa0e925a4ee Mon Sep 17 00:00:00 2001
-From: Bjorn Helgaas <bhelgaas@google.com>
-Date: Wed, 10 Apr 2013 09:56:54 -0600
-Subject: [PATCH 1/2] PCI: Remove __weak annotation from
- pcibios_get_phb_of_node decl
-
-The __weak annotation on the pcibios_get_phb_of_node() declaration
-causes *every* definition to be marked "weak."  The linker then
-selects one based on link order, which may be the wrong one.
-
-Gabor found that on MIPS, the linker selected the generic implementation
-from drivers/pci even though arch/mips supplied a definition without the
-__weak annotation:
-
-$ mipsel-openwrt-linux-readelf -s arch/mips/pci/built-in.o \
-    drivers/pci/built-in.o vmlinux.o | grep pcibios_get_phb_of_node
-      86: 0000046c    12 FUNC    WEAK   DEFAULT    2 pcibios_get_phb_of_node
-    1430: 00012e2c   104 FUNC    WEAK   DEFAULT    2 pcibios_get_phb_of_node
-   31898: 0017e4ec   104 FUNC    WEAK   DEFAULT    2 pcibios_get_phb_of_node
-
-This removes the __weak annotation from the pcibios_get_phb_of_node()
-declaration so arch-specific non-weak implementations work reliably.
-
-Suggested-by: Gabor Juhos <juhosg@openwrt.org>
-Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
----
- include/linux/pci.h |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/include/linux/pci.h
-+++ b/include/linux/pci.h
-@@ -1803,7 +1803,7 @@ extern void pci_set_bus_of_node(struct p
- extern void pci_release_bus_of_node(struct pci_bus *bus);
- /* Arch may override this (weak) */
--extern struct device_node * __weak pcibios_get_phb_of_node(struct pci_bus *bus);
-+extern struct device_node *pcibios_get_phb_of_node(struct pci_bus *bus);
- static inline struct device_node *
- pci_device_to_OF_node(const struct pci_dev *pdev)
diff --git a/target/linux/generic/patches-3.8/032-MIPS-PCI-Implement-pcibios_get_phb_of_node.patch b/target/linux/generic/patches-3.8/032-MIPS-PCI-Implement-pcibios_get_phb_of_node.patch
deleted file mode 100644 (file)
index cd43c27..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-From 9a97cd43f4ef62520a852b5a2348233b0f37455b Mon Sep 17 00:00:00 2001
-From: Gabor Juhos <juhosg@openwrt.org>
-Date: Thu, 4 Apr 2013 20:01:23 +0200
-Subject: [PATCH 2/2] MIPS/PCI: Implement pcibios_get_phb_of_node
-
-The of_node field of the device assigned to a
-PCI bus is used during scanning of the PCI bus.
-However on MIPS, the of_node field is assigned
-only after the bus has been scanned.
-
-Implement the architecture specific version of
-'pcibios_get_phb_of_node'. Which ensures that the
-PCI driver core will initialize the of_node field
-before starting the scan.
-
-Also remove the local assignment of bus->dev.of_node,
-it is not needed after the patch.
-
-Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
-Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
----
- arch/mips/pci/pci.c |    8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
---- a/arch/mips/pci/pci.c
-+++ b/arch/mips/pci/pci.c
-@@ -115,7 +115,6 @@ static void pcibios_scanbus(struct pci_c
-                       pci_bus_assign_resources(bus);
-                       pci_enable_bridges(bus);
-               }
--              bus->dev.of_node = hose->of_node;
-       }
- }
-@@ -169,6 +168,13 @@ void pci_load_of_ranges(struct pci_contr
-               }
-       }
- }
-+
-+struct device_node *pcibios_get_phb_of_node(struct pci_bus *bus)
-+{
-+      struct pci_controller *hose = bus->sysdata;
-+
-+      return of_node_get(hose->of_node);
-+}
- #endif
- static DEFINE_MUTEX(pci_scan_mutex);
diff --git a/target/linux/generic/patches-3.8/033-backport-spi-of-Use-DT-aliases-for-assigning-bus-number.patch b/target/linux/generic/patches-3.8/033-backport-spi-of-Use-DT-aliases-for-assigning-bus-number.patch
deleted file mode 100644 (file)
index 02a2eca..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-From bb29785e0d6d150181704be2efcc3141044625e2 Mon Sep 17 00:00:00 2001
-From: Grant Likely <grant.likely@secretlab.ca>
-Date: Fri, 21 Dec 2012 19:32:09 +0000
-Subject: [PATCH] spi/of: Use DT aliases for assigning bus number
-
-Linux assigns a number to each spi_master in the system, but when the
-platform used the device tree, the numbers are dynamically assigned and
-are not predictable. In general this shouldn't matter since the kernel
-doesn't use the bus number for anything other than matching a bus to
-spi_boardinfo (not used for DT). However, sometimes userspace needs to
-figure out which bus is which, so it makes sense to use the global
-/aliases namespace to choose a specific bus number.
-
-It is safe to derive the bus number from an alias because aliases will
-never cause two buses to try and use the same bus number. (At one time
-the cell-index property was used for this purpose, but cell-index has
-the risk of an id collision).
-
-Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
-Cc: Anatolij Gustschin <agust@denx.de>
-Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
----
- drivers/spi/spi.c |    3 +++
- 1 file changed, 3 insertions(+)
-
---- a/drivers/spi/spi.c
-+++ b/drivers/spi/spi.c
-@@ -1135,6 +1135,9 @@ int spi_register_master(struct spi_maste
-       if (master->num_chipselect == 0)
-               return -EINVAL;
-+      if ((master->bus_num < 0) && master->dev.of_node)
-+              master->bus_num = of_alias_get_id(master->dev.of_node, "spi");
-+
-       /* convention:  dynamically assigned bus IDs count down from the max */
-       if (master->bus_num < 0) {
-               /* FIXME switch to an IDR based scheme, something like
diff --git a/target/linux/generic/patches-3.8/040-backport_led_gpio_request_fix.patch b/target/linux/generic/patches-3.8/040-backport_led_gpio_request_fix.patch
deleted file mode 100644 (file)
index b54ce59..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/drivers/leds/leds-gpio.c
-+++ b/drivers/leds/leds-gpio.c
-@@ -107,6 +107,10 @@ static int create_gpio_led(const struct
-               return 0;
-       }
-+      ret = devm_gpio_request(parent, template->gpio, template->name);
-+      if (ret < 0)
-+              return ret;
-+
-       led_dat->cdev.name = template->name;
-       led_dat->cdev.default_trigger = template->default_trigger;
-       led_dat->gpio = template->gpio;
-@@ -126,10 +130,7 @@ static int create_gpio_led(const struct
-       if (!template->retain_state_suspended)
-               led_dat->cdev.flags |= LED_CORE_SUSPENDRESUME;
--      ret = devm_gpio_request_one(parent, template->gpio,
--                                  (led_dat->active_low ^ state) ?
--                                  GPIOF_OUT_INIT_HIGH : GPIOF_OUT_INIT_LOW,
--                                  template->name);
-+      ret = gpio_direction_output(led_dat->gpio, led_dat->active_low ^ state);
-       if (ret < 0)
-               return ret;
diff --git a/target/linux/generic/patches-3.8/060-hso_devices.patch b/target/linux/generic/patches-3.8/060-hso_devices.patch
deleted file mode 100644 (file)
index ab0c120..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
---- a/drivers/net/usb/hso.c
-+++ b/drivers/net/usb/hso.c
-@@ -468,8 +468,10 @@ static const struct usb_device_id hso_id
-       {USB_DEVICE(0x0af0, 0x8400)},
-       {USB_DEVICE(0x0af0, 0x8600)},
-       {USB_DEVICE(0x0af0, 0x8800)},
--      {USB_DEVICE(0x0af0, 0x8900)},
--      {USB_DEVICE(0x0af0, 0x9000)},
-+      {USB_DEVICE(0x0af0, 0x8900)},  /* GTM 67xx */
-+      {USB_DEVICE(0x0af0, 0x9000)},  /* GTM 66xx */
-+      {USB_DEVICE(0x0af0, 0x9200)},  /* GTM 67xxWFS */
-+      {USB_DEVICE(0x0af0, 0x9300)},  /* GTM 66xxWFS */
-       {USB_DEVICE(0x0af0, 0xd035)},
-       {USB_DEVICE(0x0af0, 0xd055)},
-       {USB_DEVICE(0x0af0, 0xd155)},
---- a/drivers/usb/storage/unusual_devs.h
-+++ b/drivers/usb/storage/unusual_devs.h
-@@ -1244,6 +1244,18 @@ UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0
-               USB_SC_DEVICE, USB_PR_DEVICE, NULL,
-               0 ),
-+UNUSUAL_DEV( 0x0af0, 0x9200, 0x0000, 0x0000,
-+              "Option",
-+              "Globetrotter 67xxWFS SD-Card",
-+              USB_SC_DEVICE, USB_PR_DEVICE, NULL,
-+              0 ),
-+
-+UNUSUAL_DEV( 0x0af0, 0x9300, 0x0000, 0x0000,
-+              "Option",
-+              "Globetrotter 66xxWFS SD-Card",
-+              USB_SC_DEVICE, USB_PR_DEVICE, NULL,
-+              0 ),
-+
- UNUSUAL_DEV( 0x0af0, 0xc100, 0x0000, 0x0000,
-               "Option",
-               "GI 070x SD-Card",
diff --git a/target/linux/generic/patches-3.8/061-arm_xz_decompressor_build_fix.patch b/target/linux/generic/patches-3.8/061-arm_xz_decompressor_build_fix.patch
deleted file mode 100644 (file)
index e39a429..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/arch/arm/boot/compressed/decompress.c
-+++ b/arch/arm/boot/compressed/decompress.c
-@@ -50,6 +50,7 @@ extern char * strstr(const char * s1, co
- #ifdef CONFIG_KERNEL_XZ
- #define memmove memmove
- #define memcpy memcpy
-+extern char * strstr(const char *, const char *);
- #include "../../../../lib/decompress_unxz.c"
- #endif
diff --git a/target/linux/generic/patches-3.8/062-mips_decompressor_build_fix.patch b/target/linux/generic/patches-3.8/062-mips_decompressor_build_fix.patch
deleted file mode 100644 (file)
index 52c45c3..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-From 0db3db45f5bd6df4bdc03bbd5dec672e16164c4e Mon Sep 17 00:00:00 2001
-From: Florian Fainelli <florian@openwrt.org>
-Date: Mon, 12 Nov 2012 12:31:55 +0100
-Subject: [PATCH] MIPS: decompressor: fix build failure on memcpy() in
- decompress.c
-
-The decompress.c file includes linux/kernel.h which causes the following
-inclusion chain to be pulled:
-linux/kernel.h ->
-       linux/dynamic_debug.h ->
-               linux/string.h ->
-                       asm/string.h
-
-We end up having a the GCC builtin + architecture specific memcpy() expanding
-into this:
-
-void *({ size_t __len = (size_t n); void *__ret; if
-(__builtin_constant_p(size_t n) && __len >= 64) __ret = memcpy((void *dest),
-(const void *src), __len); else __ret = __builtin_memcpy((void *dest), (const
-void *src), __len); __ret; })
-{
- [memcpy implementation in decompress.c starts here]
- int i;
- const char *s = src;
- char *d = dest;
-
- for (i = 0; i < n; i++)
-  d[i] = s[i];
- return dest;
-}
-
-raising the following compilation error:
-arch/mips/boot/compressed/decompress.c:46:8: error: expected identifier or '('
-before '{' token
-
-There are at least three possibilities to fix this issue:
-
-1) define _LINUX_STRING_H_ at the beginning of decompress.c to prevent
-   further linux/string.h definitions and declarations from being used, and add
-   an explicit strstr() declaration for linux/dynamic_debug.h
-
-2) remove the inclusion of linux/kernel.h because we actually use no definition
-   or declaration from this header file
-
-3) undefine memcpy or re-define memcpy to memcpy thus resulting in picking up
-   the local memcpy() implementation to this compilation unit
-
-This patch uses the second option which is the less intrusive one.
-
-Signed-off-by: Florian Fainelli <florian@openwrt.org>
----
- arch/mips/boot/compressed/decompress.c |    2 --
- 1 file changed, 2 deletions(-)
-
---- a/arch/mips/boot/compressed/decompress.c
-+++ b/arch/mips/boot/compressed/decompress.c
-@@ -10,9 +10,7 @@
-  * Free Software Foundation;  either version 2 of the  License, or (at your
-  * option) any later version.
-  */
--
- #include <linux/types.h>
--#include <linux/kernel.h>
- #include <asm/addrspace.h>
diff --git a/target/linux/generic/patches-3.8/084-x86_fix_perf_uclibc_build.patch b/target/linux/generic/patches-3.8/084-x86_fix_perf_uclibc_build.patch
deleted file mode 100644 (file)
index 95163a4..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From 031d8ad2c3cee85c515e551fc8c0054bdedb7b8b Mon Sep 17 00:00:00 2001
-From: Florian Fainelli <florian@openwrt.org>
-Date: Thu, 13 Dec 2012 18:02:11 +0100
-Subject: [PATCH] x86: fix perf build with uclibc toolchains
-
-libio.h is not provided by uClibc, in order to be able to test the
-definition of __UCLIBC__ we need to include stdlib.h, which also
-includes stddef.h, providing the definition of 'NULL'
-
-Signed-off-by: Florian Fainelli <florian@openwrt.org>
----
- tools/perf/arch/x86/util/dwarf-regs.c |    3 +++
- 1 file changed, 3 insertions(+)
-
---- a/tools/perf/arch/x86/util/dwarf-regs.c
-+++ b/tools/perf/arch/x86/util/dwarf-regs.c
-@@ -20,7 +20,10 @@
-  *
-  */
-+#include <stdlib.h>
-+#ifndef __UCLIBC__
- #include <libio.h>
-+#endif
- #include <dwarf-regs.h>
- /*
diff --git a/target/linux/generic/patches-3.8/100-overlayfs.patch b/target/linux/generic/patches-3.8/100-overlayfs.patch
deleted file mode 100644 (file)
index 26f373d..0000000
+++ /dev/null
@@ -1,3191 +0,0 @@
---- a/Documentation/filesystems/Locking
-+++ b/Documentation/filesystems/Locking
-@@ -64,6 +64,7 @@ prototypes:
-       int (*atomic_open)(struct inode *, struct dentry *,
-                               struct file *, unsigned open_flag,
-                               umode_t create_mode, int *opened);
-+      int (*dentry_open)(struct dentry *, struct file *, const struct cred *);
- locking rules:
-       all may block
-@@ -91,6 +92,7 @@ removexattr: yes
- fiemap:               no
- update_time:  no
- atomic_open:  yes
-+dentry_open:  no
-       Additionally, ->rmdir(), ->unlink() and ->rename() have ->i_mutex on
- victim.
---- /dev/null
-+++ b/Documentation/filesystems/overlayfs.txt
-@@ -0,0 +1,199 @@
-+Written by: Neil Brown <neilb@suse.de>
-+
-+Overlay Filesystem
-+==================
-+
-+This document describes a prototype for a new approach to providing
-+overlay-filesystem functionality in Linux (sometimes referred to as
-+union-filesystems).  An overlay-filesystem tries to present a
-+filesystem which is the result over overlaying one filesystem on top
-+of the other.
-+
-+The result will inevitably fail to look exactly like a normal
-+filesystem for various technical reasons.  The expectation is that
-+many use cases will be able to ignore these differences.
-+
-+This approach is 'hybrid' because the objects that appear in the
-+filesystem do not all appear to belong to that filesystem.  In many
-+cases an object accessed in the union will be indistinguishable
-+from accessing the corresponding object from the original filesystem.
-+This is most obvious from the 'st_dev' field returned by stat(2).
-+
-+While directories will report an st_dev from the overlay-filesystem,
-+all non-directory objects will report an st_dev from the lower or
-+upper filesystem that is providing the object.  Similarly st_ino will
-+only be unique when combined with st_dev, and both of these can change
-+over the lifetime of a non-directory object.  Many applications and
-+tools ignore these values and will not be affected.
-+
-+Upper and Lower
-+---------------
-+
-+An overlay filesystem combines two filesystems - an 'upper' filesystem
-+and a 'lower' filesystem.  When a name exists in both filesystems, the
-+object in the 'upper' filesystem is visible while the object in the
-+'lower' filesystem is either hidden or, in the case of directories,
-+merged with the 'upper' object.
-+
-+It would be more correct to refer to an upper and lower 'directory
-+tree' rather than 'filesystem' as it is quite possible for both
-+directory trees to be in the same filesystem and there is no
-+requirement that the root of a filesystem be given for either upper or
-+lower.
-+
-+The lower filesystem can be any filesystem supported by Linux and does
-+not need to be writable.  The lower filesystem can even be another
-+overlayfs.  The upper filesystem will normally be writable and if it
-+is it must support the creation of trusted.* extended attributes, and
-+must provide valid d_type in readdir responses, at least for symbolic
-+links - so NFS is not suitable.
-+
-+A read-only overlay of two read-only filesystems may use any
-+filesystem type.
-+
-+Directories
-+-----------
-+
-+Overlaying mainly involves directories.  If a given name appears in both
-+upper and lower filesystems and refers to a non-directory in either,
-+then the lower object is hidden - the name refers only to the upper
-+object.
-+
-+Where both upper and lower objects are directories, a merged directory
-+is formed.
-+
-+At mount time, the two directories given as mount options are combined
-+into a merged directory:
-+
-+  mount -t overlayfs overlayfs -olowerdir=/lower,upperdir=/upper /overlay
-+
-+Then whenever a lookup is requested in such a merged directory, the
-+lookup is performed in each actual directory and the combined result
-+is cached in the dentry belonging to the overlay filesystem.  If both
-+actual lookups find directories, both are stored and a merged
-+directory is created, otherwise only one is stored: the upper if it
-+exists, else the lower.
-+
-+Only the lists of names from directories are merged.  Other content
-+such as metadata and extended attributes are reported for the upper
-+directory only.  These attributes of the lower directory are hidden.
-+
-+whiteouts and opaque directories
-+--------------------------------
-+
-+In order to support rm and rmdir without changing the lower
-+filesystem, an overlay filesystem needs to record in the upper filesystem
-+that files have been removed.  This is done using whiteouts and opaque
-+directories (non-directories are always opaque).
-+
-+The overlay filesystem uses extended attributes with a
-+"trusted.overlay."  prefix to record these details.
-+
-+A whiteout is created as a symbolic link with target
-+"(overlay-whiteout)" and with xattr "trusted.overlay.whiteout" set to "y".
-+When a whiteout is found in the upper level of a merged directory, any
-+matching name in the lower level is ignored, and the whiteout itself
-+is also hidden.
-+
-+A directory is made opaque by setting the xattr "trusted.overlay.opaque"
-+to "y".  Where the upper filesystem contains an opaque directory, any
-+directory in the lower filesystem with the same name is ignored.
-+
-+readdir
-+-------
-+
-+When a 'readdir' request is made on a merged directory, the upper and
-+lower directories are each read and the name lists merged in the
-+obvious way (upper is read first, then lower - entries that already
-+exist are not re-added).  This merged name list is cached in the
-+'struct file' and so remains as long as the file is kept open.  If the
-+directory is opened and read by two processes at the same time, they
-+will each have separate caches.  A seekdir to the start of the
-+directory (offset 0) followed by a readdir will cause the cache to be
-+discarded and rebuilt.
-+
-+This means that changes to the merged directory do not appear while a
-+directory is being read.  This is unlikely to be noticed by many
-+programs.
-+
-+seek offsets are assigned sequentially when the directories are read.
-+Thus if
-+  - read part of a directory
-+  - remember an offset, and close the directory
-+  - re-open the directory some time later
-+  - seek to the remembered offset
-+
-+there may be little correlation between the old and new locations in
-+the list of filenames, particularly if anything has changed in the
-+directory.
-+
-+Readdir on directories that are not merged is simply handled by the
-+underlying directory (upper or lower).
-+
-+
-+Non-directories
-+---------------
-+
-+Objects that are not directories (files, symlinks, device-special
-+files etc.) are presented either from the upper or lower filesystem as
-+appropriate.  When a file in the lower filesystem is accessed in a way
-+the requires write-access, such as opening for write access, changing
-+some metadata etc., the file is first copied from the lower filesystem
-+to the upper filesystem (copy_up).  Note that creating a hard-link
-+also requires copy_up, though of course creation of a symlink does
-+not.
-+
-+The copy_up may turn out to be unnecessary, for example if the file is
-+opened for read-write but the data is not modified.
-+
-+The copy_up process first makes sure that the containing directory
-+exists in the upper filesystem - creating it and any parents as</