feature: mtk-sdk 24.10 first test
This commit is contained in:
parent
5c35e29c00
commit
58a1b60b48
334
defconfig/mt7981-ax3000.config
Normal file
334
defconfig/mt7981-ax3000.config
Normal file
@ -0,0 +1,334 @@
|
||||
CONFIG_TARGET_mediatek=y
|
||||
CONFIG_TARGET_mediatek_mt7981=y
|
||||
CONFIG_TARGET_MULTI_PROFILE=y
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_abt_asr3000=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_abt_asr3000=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_cetron_ct3003=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_cetron_ct3003=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_cmcc_a10=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_cmcc_a10=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_cmcc_rax3000m-emmc=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_cmcc_rax3000m-emmc=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_cmcc_rax3000m=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_cmcc_rax3000m=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_h3c_nx30pro=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_h3c_nx30pro=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_imou_lc-hx3001=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_imou_lc-hx3001=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_jcg_q30=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_jcg_q30=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_konka_komi-a31=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_konka_komi-a31=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_livinet_zr-3020=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_livinet_zr-3020=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_mt7981-360-t7-108M=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_mt7981-360-t7-108M=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_mt7981-clt-r30b1=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_mt7981-clt-r30b1=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_mt7981-clt-r30b1-112M=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_mt7981-clt-r30b1-112M=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_xiaomi_mi-router-ax3000t=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_xiaomi_mi-router-ax3000t=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_xiaomi_mi-router-ax3000t-stock=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_xiaomi_mi-router-ax3000t-stock=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_xiaomi_mi-router-wr30u-112m=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_xiaomi_mi-router-wr30u-112m=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7981_DEVICE_xiaomi_mi-router-wr30u-stock=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7981_DEVICE_xiaomi_mi-router-wr30u-stock=""
|
||||
CONFIG_DEVEL=y
|
||||
CONFIG_TOOLCHAINOPTS=y
|
||||
CONFIG_BUSYBOX_CUSTOM=y
|
||||
CONFIG_TARGET_PER_DEVICE_ROOTFS=y
|
||||
CONFIG_AFALG_UPDATE_CTR_IV=y
|
||||
CONFIG_BUSYBOX_CONFIG_BLKID=y
|
||||
CONFIG_BUSYBOX_CONFIG_FEATURE_BLKID_TYPE=y
|
||||
CONFIG_BUSYBOX_CONFIG_VOLUMEID=y
|
||||
CONFIG_CONNINFRA_AUTO_UP=y
|
||||
CONFIG_CONNINFRA_EMI_SUPPORT=y
|
||||
# CONFIG_GDB is not set
|
||||
CONFIG_INCLUDE_CONFIG=y
|
||||
CONFIG_JSON_OVERVIEW_IMAGE_INFO=y
|
||||
# CONFIG_KERNEL_BLK_DEV_THROTTLING is not set
|
||||
# CONFIG_KERNEL_CFS_BANDWIDTH is not set
|
||||
CONFIG_KERNEL_CGROUP_DEVICE=y
|
||||
CONFIG_KERNEL_CGROUP_FREEZER=y
|
||||
CONFIG_KERNEL_DEVMEM=y
|
||||
# CONFIG_KERNEL_KEYS is not set
|
||||
# CONFIG_KERNEL_MEMCG_SWAP is not set
|
||||
CONFIG_KERNEL_NET_CLS_CGROUP=y
|
||||
CONFIG_MTK_ACK_CTS_TIMEOUT_SUPPORT=y
|
||||
CONFIG_MTK_AIR_MONITOR=y
|
||||
CONFIG_MTK_AMPDU_CONF_SUPPORT=y
|
||||
CONFIG_MTK_ANTENNA_CONTROL_SUPPORT=y
|
||||
CONFIG_MTK_APCLI_SUPPORT=y
|
||||
CONFIG_MTK_ATE_SUPPORT=y
|
||||
CONFIG_MTK_BACKGROUND_SCAN_SUPPORT=y
|
||||
CONFIG_MTK_CAL_BIN_FILE_SUPPORT=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_MURU=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_PP=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_SR=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_TXCMD_DBG=y
|
||||
CONFIG_MTK_CHIP_MT7981=y
|
||||
CONFIG_MTK_CONNINFRA_APSOC=y
|
||||
CONFIG_MTK_CONNINFRA_APSOC_MT7981=y
|
||||
CONFIG_MTK_CON_WPS_SUPPORT=y
|
||||
CONFIG_MTK_DBDC_MODE=y
|
||||
CONFIG_MTK_DOT11K_RRM_SUPPORT=y
|
||||
CONFIG_MTK_DOT11R_FT_SUPPORT=y
|
||||
CONFIG_MTK_DOT11W_PMF_SUPPORT=y
|
||||
CONFIG_MTK_DOT11_HE_AX=y
|
||||
CONFIG_MTK_DOT11_N_SUPPORT=y
|
||||
CONFIG_MTK_DOT11_VHT_AC=y
|
||||
CONFIG_MTK_FAST_NAT_SUPPORT=y
|
||||
CONFIG_MTK_FIRST_IF_EEPROM_FLASH=y
|
||||
CONFIG_MTK_FIRST_IF_IPAILNA=y
|
||||
CONFIG_MTK_FIRST_IF_MT7981=y
|
||||
CONFIG_MTK_GREENAP_SUPPORT=y
|
||||
CONFIG_MTK_G_BAND_256QAM_SUPPORT=y
|
||||
CONFIG_MTK_HDR_TRANS_RX_SUPPORT=y
|
||||
CONFIG_MTK_HDR_TRANS_TX_SUPPORT=y
|
||||
CONFIG_MTK_ICAP_SUPPORT=y
|
||||
CONFIG_MTK_IGMP_SNOOP_SUPPORT=y
|
||||
CONFIG_MTK_INTERWORKING=y
|
||||
CONFIG_MTK_BAND_STEERING=y
|
||||
CONFIG_MTK_MAP_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R2_VER_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R3_VER_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R2_6E_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R3_6E_SUPPORT=y
|
||||
CONFIG_MTK_MBO_SUPPORT=y
|
||||
CONFIG_MTK_MBSS_DTIM_SUPPORT=y
|
||||
CONFIG_MTK_MBSS_SUPPORT=y
|
||||
CONFIG_MTK_MCAST_RATE_SPECIFIC=y
|
||||
CONFIG_MTK_MEMORY_SHRINK=y
|
||||
CONFIG_MTK_MEMORY_SHRINK_AGGRESS=y
|
||||
CONFIG_MTK_MGMT_TXPWR_CTRL=y
|
||||
CONFIG_MTK_MLME_MULTI_QUEUE_SUPPORT=y
|
||||
CONFIG_MTK_MT_AP_SUPPORT=m
|
||||
CONFIG_MTK_MT_DFS_SUPPORT=y
|
||||
CONFIG_MTK_MT_MAC=y
|
||||
CONFIG_MTK_MT_WIFI=m
|
||||
CONFIG_MTK_MT_WIFI_PATH="mt_wifi"
|
||||
CONFIG_MTK_MUMIMO_SUPPORT=y
|
||||
CONFIG_MTK_MU_RA_SUPPORT=y
|
||||
CONFIG_MTK_OFFCHANNEL_SCAN_FEATURE=y
|
||||
CONFIG_MTK_OWE_SUPPORT=y
|
||||
CONFIG_MTK_QOS_R1_SUPPORT=y
|
||||
CONFIG_MTK_RA_PHY_RATE_SUPPORT=y
|
||||
CONFIG_MTK_RED_SUPPORT=y
|
||||
CONFIG_MTK_RTMP_FLASH_SUPPORT=y
|
||||
CONFIG_MTK_RT_FIRST_CARD_EEPROM="flash"
|
||||
CONFIG_MTK_RT_FIRST_IF_RF_OFFSET=0xc0000
|
||||
CONFIG_MTK_SCS_FW_OFFLOAD=y
|
||||
CONFIG_MTK_SECOND_IF_NONE=y
|
||||
CONFIG_MTK_SMART_CARRIER_SENSE_SUPPORT=y
|
||||
CONFIG_MTK_SPECTRUM_SUPPORT=y
|
||||
CONFIG_MTK_SUPPORT_OPENWRT=y
|
||||
CONFIG_MTK_THIRD_IF_NONE=y
|
||||
CONFIG_MTK_TPC_SUPPORT=y
|
||||
CONFIG_MTK_TXBF_SUPPORT=y
|
||||
CONFIG_MTK_UAPSD=y
|
||||
CONFIG_MTK_VLAN_SUPPORT=y
|
||||
CONFIG_MTK_VOW_SUPPORT=y
|
||||
CONFIG_MTK_WARP_V2=y
|
||||
CONFIG_MTK_WDS_SUPPORT=y
|
||||
CONFIG_MTK_WHNAT_SUPPORT=m
|
||||
CONFIG_MTK_WIFI_BASIC_FUNC=y
|
||||
CONFIG_MTK_WIFI_DRIVER=y
|
||||
CONFIG_MTK_WIFI_EAP_FEATURE=y
|
||||
CONFIG_MTK_WIFI_FW_BIN_LOAD=y
|
||||
CONFIG_MTK_WIFI_MODE_AP=m
|
||||
CONFIG_MTK_WIFI_MT_MAC=y
|
||||
CONFIG_MTK_WIFI_TWT_SUPPORT=y
|
||||
CONFIG_MTK_WLAN_HOOK=y
|
||||
CONFIG_MTK_WLAN_SERVICE=y
|
||||
CONFIG_MTK_WNM_SUPPORT=y
|
||||
CONFIG_MTK_WPA3_SUPPORT=y
|
||||
CONFIG_MTK_WSC_INCLUDED=y
|
||||
CONFIG_MTK_WSC_V2_SUPPORT=y
|
||||
CONFIG_MTK_MT7981_NEW_FW=y
|
||||
# CONFIG_OPENSSL_ENGINE_BUILTIN is not set
|
||||
# CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM is not set
|
||||
CONFIG_OPENSSL_WITH_NPN=y
|
||||
# CONFIG_PACKAGE_TURBOACC_INCLUDE_FLOW_OFFLOADING is not set
|
||||
CONFIG_PACKAGE_TURBOACC_INCLUDE_NO_FASTPATH=y
|
||||
CONFIG_PACKAGE_blockd=y
|
||||
CONFIG_PACKAGE_ca-certificates=y
|
||||
CONFIG_PACKAGE_datconf=y
|
||||
CONFIG_PACKAGE_datconf-lua=y
|
||||
CONFIG_PACKAGE_ebtables=y
|
||||
CONFIG_PACKAGE_ethtool=y
|
||||
CONFIG_PACKAGE_htop=y
|
||||
CONFIG_PACKAGE_ip-bridge=y
|
||||
CONFIG_PACKAGE_ip6tables-extra=y
|
||||
CONFIG_PACKAGE_ipset=y
|
||||
CONFIG_PACKAGE_iptables-mod-conntrack-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-filter=y
|
||||
CONFIG_PACKAGE_iptables-mod-hashlimit=y
|
||||
CONFIG_PACKAGE_iptables-mod-iface=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipmark=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipopt=y
|
||||
CONFIG_PACKAGE_iptables-mod-iprange=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipv4options=y
|
||||
CONFIG_PACKAGE_iptables-mod-nat-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-proto=y
|
||||
CONFIG_PACKAGE_iptables-mod-tee=y
|
||||
CONFIG_PACKAGE_iptables-mod-tproxy=y
|
||||
CONFIG_PACKAGE_iptables-mod-u32=y
|
||||
CONFIG_PACKAGE_iw=y
|
||||
CONFIG_PACKAGE_iwinfo=y
|
||||
CONFIG_PACKAGE_kmod-ata-core=y
|
||||
CONFIG_PACKAGE_kmod-conninfra=y
|
||||
CONFIG_PACKAGE_kmod-crypto-acompress=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ccm=y
|
||||
CONFIG_PACKAGE_kmod-crypto-cmac=y
|
||||
CONFIG_PACKAGE_kmod-crypto-crc32c=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ctr=y
|
||||
CONFIG_PACKAGE_kmod-crypto-des=y
|
||||
CONFIG_PACKAGE_kmod-crypto-gcm=y
|
||||
CONFIG_PACKAGE_kmod-crypto-gf128=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ghash=y
|
||||
CONFIG_PACKAGE_kmod-crypto-hmac=y
|
||||
CONFIG_PACKAGE_kmod-crypto-md4=y
|
||||
CONFIG_PACKAGE_kmod-crypto-md5=y
|
||||
CONFIG_PACKAGE_kmod-crypto-rng=y
|
||||
CONFIG_PACKAGE_kmod-crypto-seqiv=y
|
||||
CONFIG_PACKAGE_kmod-crypto-sha256=y
|
||||
CONFIG_PACKAGE_kmod-crypto-sha512=y
|
||||
CONFIG_PACKAGE_kmod-ebtables=y
|
||||
CONFIG_PACKAGE_kmod-ebtables-ipv4=y
|
||||
CONFIG_PACKAGE_kmod-ebtables-ipv6=y
|
||||
CONFIG_PACKAGE_kmod-fs-autofs4=y
|
||||
CONFIG_PACKAGE_kmod-fs-vfat=y
|
||||
CONFIG_PACKAGE_kmod-ifb=y
|
||||
CONFIG_PACKAGE_kmod-inet-diag=y
|
||||
CONFIG_PACKAGE_kmod-ip6tables-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-compat-xtables=y
|
||||
CONFIG_PACKAGE_kmod-ipt-conntrack-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-filter=y
|
||||
CONFIG_PACKAGE_kmod-ipt-hashlimit=y
|
||||
CONFIG_PACKAGE_kmod-ipt-iface=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipmark=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipopt=y
|
||||
CONFIG_PACKAGE_kmod-ipt-iprange=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipv4options=y
|
||||
CONFIG_PACKAGE_kmod-ipt-nat-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-offload=y
|
||||
CONFIG_PACKAGE_kmod-ipt-proto=y
|
||||
CONFIG_PACKAGE_kmod-ipt-raw6=y
|
||||
CONFIG_PACKAGE_kmod-ipt-tee=y
|
||||
CONFIG_PACKAGE_kmod-ipt-tproxy=y
|
||||
CONFIG_PACKAGE_kmod-ipt-u32=y
|
||||
CONFIG_PACKAGE_kmod-lib-crc32c=y
|
||||
CONFIG_PACKAGE_kmod-lib-lzo=y
|
||||
CONFIG_PACKAGE_kmod-mediatek_hnat=y
|
||||
CONFIG_PACKAGE_kmod-mt_wifi=y
|
||||
CONFIG_PACKAGE_kmod-nf-flow=y
|
||||
CONFIG_PACKAGE_kmod-nls-base=y
|
||||
CONFIG_PACKAGE_kmod-nls-cp437=y
|
||||
CONFIG_PACKAGE_kmod-nls-iso8859-1=y
|
||||
CONFIG_PACKAGE_kmod-nls-utf8=y
|
||||
CONFIG_PACKAGE_kmod-sched-core=y
|
||||
CONFIG_PACKAGE_kmod-scsi-core=y
|
||||
CONFIG_PACKAGE_kmod-tcp-bbr=y
|
||||
CONFIG_PACKAGE_kmod-tun=y
|
||||
CONFIG_PACKAGE_kmod-warp=y
|
||||
CONFIG_PACKAGE_kmod-zram=y
|
||||
CONFIG_PACKAGE_kvcedit=y
|
||||
CONFIG_PACKAGE_libatomic=y
|
||||
CONFIG_PACKAGE_libblkid=y
|
||||
CONFIG_PACKAGE_libcap-ng=y
|
||||
CONFIG_PACKAGE_libcbor=y
|
||||
CONFIG_PACKAGE_libevdev=y
|
||||
CONFIG_PACKAGE_libfido2=y
|
||||
CONFIG_PACKAGE_libipset=y
|
||||
CONFIG_PACKAGE_libkvcutil=y
|
||||
CONFIG_PACKAGE_libncurses=y
|
||||
CONFIG_PACKAGE_libnl=y
|
||||
CONFIG_PACKAGE_libnl-core=y
|
||||
CONFIG_PACKAGE_libnl-genl=y
|
||||
CONFIG_PACKAGE_libnl-nf=y
|
||||
CONFIG_PACKAGE_libnl-route=y
|
||||
CONFIG_PACKAGE_libopenssl-afalg_sync=y
|
||||
CONFIG_PACKAGE_libopenssl-devcrypto=y
|
||||
CONFIG_PACKAGE_libpcap=y
|
||||
CONFIG_PACKAGE_libstdcpp=y
|
||||
CONFIG_PACKAGE_libudev-zero=y
|
||||
CONFIG_PACKAGE_libuuid=y
|
||||
CONFIG_PACKAGE_lua-cjson=y
|
||||
CONFIG_PACKAGE_luci-app-eqos-mtk=y
|
||||
CONFIG_PACKAGE_luci-app-mtwifi-cfg=y
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Haproxy is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ShadowsocksR_Libev_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Rust_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Simple_Obfs is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Trojan_Plus is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray_Plugin is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Xray is not set
|
||||
# CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-ng is not set
|
||||
# CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-webui is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ChinaDNS_NG is not set
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_NONE_V2RAY=y
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Client is not set
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Client=y
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Server=y
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Simple_Obfs is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Xray is not set
|
||||
CONFIG_PACKAGE_luci-app-turboacc-mtk=y
|
||||
CONFIG_PACKAGE_luci-app-upnp-mtk-adjust=y
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_ShadowsocksR_Libev_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Trojan is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray_plugin is not set
|
||||
CONFIG_PACKAGE_luci-i18n-eqos-mtk-zh-cn=y
|
||||
CONFIG_PACKAGE_luci-i18n-mtwifi-cfg-zh-cn=y
|
||||
CONFIG_PACKAGE_luci-i18n-turboacc-mtk-zh-cn=y
|
||||
CONFIG_PACKAGE_luci-theme-argon=y
|
||||
CONFIG_PACKAGE_luci-theme-bootstrap-mod=y
|
||||
CONFIG_PACKAGE_mii_mgr=y
|
||||
CONFIG_PACKAGE_mtkhqos_util=y
|
||||
CONFIG_PACKAGE_mtk-smp=y
|
||||
CONFIG_PACKAGE_nano=y
|
||||
CONFIG_PACKAGE_openssh-keygen=y
|
||||
CONFIG_PACKAGE_openssh-sftp-server=y
|
||||
CONFIG_PACKAGE_openssl-util=y
|
||||
CONFIG_PACKAGE_regs=y
|
||||
CONFIG_PACKAGE_resolveip=y
|
||||
CONFIG_PACKAGE_swconfig=y
|
||||
CONFIG_PACKAGE_switch=y
|
||||
CONFIG_PACKAGE_tc-mod-iptables=y
|
||||
CONFIG_PACKAGE_tc-tiny=y
|
||||
CONFIG_PACKAGE_tcpdump=y
|
||||
CONFIG_PACKAGE_terminfo=y
|
||||
CONFIG_PACKAGE_wifi-dats=y
|
||||
CONFIG_PACKAGE_mtwifi-cfg=y
|
||||
CONFIG_PACKAGE_wireless-regdb=y
|
||||
CONFIG_PACKAGE_wireless-tools=y
|
||||
CONFIG_PACKAGE_zram-swap=y
|
||||
# CONFIG_PKG_CHECK_FORMAT_SECURITY is not set
|
||||
# CONFIG_PKG_FORTIFY_SOURCE_1 is not set
|
||||
CONFIG_PKG_FORTIFY_SOURCE_2=y
|
||||
CONFIG_WARP_CHIPSET="mt7981"
|
||||
CONFIG_WARP_DBG_SUPPORT=y
|
||||
CONFIG_WARP_VERSION=2
|
||||
CONFIG_WED_HW_RRO_SUPPORT=y
|
||||
# CONFIG_WOLFSSL_HAS_ECC25519 is not set
|
||||
CONFIG_first_card=y
|
||||
CONFIG_first_card_name="MT7981"
|
||||
# CONFIG_AFALG_FALLBACK is not set
|
||||
# CONFIG_MTK_BAND_STEERING is not set
|
||||
# CONFIG_MTK_DEFAULT_5G_PROFILE is not set
|
||||
# CONFIG_MTK_MAC_REPEATER_SUPPORT is not set
|
||||
# CONFIG_MTK_MULTI_PROFILE_SUPPORT is not set
|
||||
# CONFIG_MTK_PCIE_ASPM_DYM_CTRL_SUPPORT is not set
|
||||
# CONFIG_MTK_PRE_CAL_TRX_SET1_SUPPORT is not set
|
||||
# CONFIG_MTK_PRE_CAL_TRX_SET2_SUPPORT is not set
|
||||
# CONFIG_MTK_RLM_CAL_CACHE_SUPPORT is not set
|
||||
# CONFIG_MTK_SNIFFER_RADIOTAP_SUPPORT is not set
|
8141
defconfig/mt7986-ax4200-bpir3_mini.config
Normal file
8141
defconfig/mt7986-ax4200-bpir3_mini.config
Normal file
File diff suppressed because it is too large
Load Diff
313
defconfig/mt7986-ax4200.config
Normal file
313
defconfig/mt7986-ax4200.config
Normal file
@ -0,0 +1,313 @@
|
||||
CONFIG_TARGET_mediatek=y
|
||||
CONFIG_TARGET_mediatek_mt7986=y
|
||||
CONFIG_TARGET_MULTI_PROFILE=y
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7986_DEVICE_BPI-R3MINI-EMMC=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7986_DEVICE_BPI-R3MINI-EMMC=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7986_DEVICE_BPI-R3MINI-NAND=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7986_DEVICE_BPI-R3MINI-NAND=""
|
||||
CONFIG_DEVEL=y
|
||||
CONFIG_TARGET_mediatek_mt7986_DEVICE_BPI-R3MINI-NAND=y
|
||||
CONFIG_TARGET_PROFILE="DEVICE_BPI-R3MINI-NAND"
|
||||
CONFIG_DEFAULT_bpir3_mini-properties=y
|
||||
CONFIG_TOOLCHAINOPTS=y
|
||||
CONFIG_BUSYBOX_CUSTOM=y
|
||||
CONFIG_TARGET_PER_DEVICE_ROOTFS=y
|
||||
CONFIG_AFALG_UPDATE_CTR_IV=y
|
||||
CONFIG_BUSYBOX_CONFIG_BLKID=y
|
||||
CONFIG_BUSYBOX_CONFIG_FEATURE_BLKID_TYPE=y
|
||||
CONFIG_BUSYBOX_CONFIG_VOLUMEID=y
|
||||
CONFIG_CONNINFRA_AUTO_UP=y
|
||||
CONFIG_CONNINFRA_EMI_SUPPORT=y
|
||||
# CONFIG_GDB is not set
|
||||
CONFIG_INCLUDE_CONFIG=y
|
||||
CONFIG_JSON_OVERVIEW_IMAGE_INFO=y
|
||||
# CONFIG_KERNEL_BLK_DEV_THROTTLING is not set
|
||||
# CONFIG_KERNEL_CFS_BANDWIDTH is not set
|
||||
CONFIG_KERNEL_CGROUP_DEVICE=y
|
||||
CONFIG_KERNEL_CGROUP_FREEZER=y
|
||||
CONFIG_KERNEL_DEVMEM=y
|
||||
# CONFIG_KERNEL_KEYS is not set
|
||||
# CONFIG_KERNEL_MEMCG_SWAP is not set
|
||||
CONFIG_KERNEL_NET_CLS_CGROUP=y
|
||||
CONFIG_MODEMMANAGER_WITH_AT_COMMAND_VIA_DBUS=y
|
||||
CONFIG_MTK_ACK_CTS_TIMEOUT_SUPPORT=y
|
||||
CONFIG_MTK_AIR_MONITOR=y
|
||||
CONFIG_MTK_AMPDU_CONF_SUPPORT=y
|
||||
CONFIG_MTK_ANTENNA_CONTROL_SUPPORT=y
|
||||
CONFIG_MTK_APCLI_SUPPORT=y
|
||||
CONFIG_MTK_ATE_SUPPORT=y
|
||||
CONFIG_MTK_BACKGROUND_SCAN_SUPPORT=y
|
||||
CONFIG_MTK_CAL_BIN_FILE_SUPPORT=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_MURU=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_PP=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_SR=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_TXCMD_DBG=y
|
||||
CONFIG_MTK_CHIP_MT7986=y
|
||||
CONFIG_MTK_CONNINFRA_APSOC=y
|
||||
CONFIG_MTK_CONNINFRA_APSOC_MT7986=y
|
||||
CONFIG_MTK_CON_WPS_SUPPORT=y
|
||||
CONFIG_MTK_DBDC_MODE=y
|
||||
CONFIG_MTK_DOT11K_RRM_SUPPORT=y
|
||||
CONFIG_MTK_DOT11R_FT_SUPPORT=y
|
||||
CONFIG_MTK_DOT11W_PMF_SUPPORT=y
|
||||
CONFIG_MTK_DOT11_HE_AX=y
|
||||
CONFIG_MTK_DOT11_N_SUPPORT=y
|
||||
CONFIG_MTK_DOT11_VHT_AC=y
|
||||
CONFIG_MTK_FAST_NAT_SUPPORT=y
|
||||
CONFIG_MTK_FIRST_IF_EEPROM_FLASH=y
|
||||
CONFIG_MTK_FIRST_IF_IPAILNA=y
|
||||
CONFIG_MTK_FIRST_IF_MT7986=y
|
||||
CONFIG_MTK_GREENAP_SUPPORT=y
|
||||
CONFIG_MTK_G_BAND_256QAM_SUPPORT=y
|
||||
CONFIG_MTK_HDR_TRANS_RX_SUPPORT=y
|
||||
CONFIG_MTK_HDR_TRANS_TX_SUPPORT=y
|
||||
CONFIG_MTK_ICAP_SUPPORT=y
|
||||
CONFIG_MTK_IGMP_SNOOP_SUPPORT=y
|
||||
CONFIG_MTK_INTERWORKING=y
|
||||
CONFIG_MTK_BAND_STEERING=y
|
||||
CONFIG_MTK_MAP_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R2_VER_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R3_VER_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R2_6E_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R3_6E_SUPPORT=y
|
||||
CONFIG_MTK_MBO_SUPPORT=y
|
||||
CONFIG_MTK_MBSS_DTIM_SUPPORT=y
|
||||
CONFIG_MTK_MBSS_SUPPORT=y
|
||||
CONFIG_MTK_MCAST_RATE_SPECIFIC=y
|
||||
CONFIG_MTK_MGMT_TXPWR_CTRL=y
|
||||
CONFIG_MTK_MLME_MULTI_QUEUE_SUPPORT=y
|
||||
CONFIG_MTK_MT7986_NEW_FW=y
|
||||
CONFIG_MTK_MT_AP_SUPPORT=m
|
||||
CONFIG_MTK_MT_DFS_SUPPORT=y
|
||||
CONFIG_MTK_MT_MAC=y
|
||||
CONFIG_MTK_MT_WIFI=m
|
||||
CONFIG_MTK_MT_WIFI_PATH="mt_wifi"
|
||||
CONFIG_MTK_MUMIMO_SUPPORT=y
|
||||
CONFIG_MTK_MU_RA_SUPPORT=y
|
||||
CONFIG_MTK_OFFCHANNEL_SCAN_FEATURE=y
|
||||
CONFIG_MTK_OWE_SUPPORT=y
|
||||
CONFIG_MTK_PHY_ICS_SUPPORT=y
|
||||
CONFIG_MTK_QOS_R1_SUPPORT=y
|
||||
CONFIG_MTK_RA_PHY_RATE_SUPPORT=y
|
||||
CONFIG_MTK_RED_SUPPORT=y
|
||||
CONFIG_MTK_RTMP_FLASH_SUPPORT=y
|
||||
CONFIG_MTK_RT_FIRST_CARD_EEPROM="flash"
|
||||
CONFIG_MTK_RT_FIRST_IF_RF_OFFSET=0xc0000
|
||||
CONFIG_MTK_SCS_FW_OFFLOAD=y
|
||||
CONFIG_MTK_SECOND_IF_NONE=y
|
||||
CONFIG_MTK_SMART_CARRIER_SENSE_SUPPORT=y
|
||||
CONFIG_MTK_SPECTRUM_SUPPORT=y
|
||||
CONFIG_MTK_SUPPORT_OPENWRT=y
|
||||
CONFIG_MTK_THERMAL_PROTECT_SUPPORT=y
|
||||
CONFIG_MTK_THIRD_IF_NONE=y
|
||||
CONFIG_MTK_TPC_SUPPORT=y
|
||||
CONFIG_MTK_TXBF_SUPPORT=y
|
||||
CONFIG_MTK_UAPSD=y
|
||||
CONFIG_MTK_VLAN_SUPPORT=y
|
||||
CONFIG_MTK_VOW_SUPPORT=y
|
||||
CONFIG_MTK_WARP_V2=y
|
||||
CONFIG_MTK_WDS_SUPPORT=y
|
||||
CONFIG_MTK_WHNAT_SUPPORT=m
|
||||
CONFIG_MTK_WIFI_ADIE_TYPE="mt7976"
|
||||
CONFIG_MTK_WIFI_BASIC_FUNC=y
|
||||
CONFIG_MTK_WIFI_DRIVER=y
|
||||
CONFIG_MTK_WIFI_EAP_FEATURE=y
|
||||
CONFIG_MTK_WIFI_FW_BIN_LOAD=y
|
||||
CONFIG_MTK_WIFI_MODE_AP=m
|
||||
CONFIG_MTK_WIFI_MT_MAC=y
|
||||
CONFIG_MTK_WIFI_SKU_TYPE="AX4200"
|
||||
CONFIG_MTK_WIFI_TWT_SUPPORT=y
|
||||
CONFIG_MTK_WLAN_HOOK=y
|
||||
CONFIG_MTK_WLAN_SERVICE=y
|
||||
CONFIG_MTK_WNM_SUPPORT=y
|
||||
CONFIG_MTK_WPA3_SUPPORT=y
|
||||
CONFIG_MTK_WSC_INCLUDED=y
|
||||
CONFIG_MTK_WSC_V2_SUPPORT=y
|
||||
# CONFIG_OPENSSL_ENGINE_BUILTIN is not set
|
||||
# CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM is not set
|
||||
CONFIG_OPENSSL_WITH_NPN=y
|
||||
# CONFIG_PACKAGE_TURBOACC_INCLUDE_FLOW_OFFLOADING is not set
|
||||
CONFIG_PACKAGE_TURBOACC_INCLUDE_NO_FASTPATH=y
|
||||
CONFIG_PACKAGE_blockd=y
|
||||
CONFIG_PACKAGE_ca-certificates=y
|
||||
CONFIG_PACKAGE_datconf=y
|
||||
CONFIG_PACKAGE_datconf-lua=y
|
||||
CONFIG_PACKAGE_ethtool=y
|
||||
CONFIG_PACKAGE_ebtables=y
|
||||
CONFIG_PACKAGE_htop=y
|
||||
CONFIG_PACKAGE_ip-bridge=y
|
||||
CONFIG_PACKAGE_ip6tables-extra=y
|
||||
CONFIG_PACKAGE_ipset=y
|
||||
CONFIG_PACKAGE_iptables-mod-conntrack-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-filter=y
|
||||
CONFIG_PACKAGE_iptables-mod-hashlimit=y
|
||||
CONFIG_PACKAGE_iptables-mod-iface=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipmark=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipopt=y
|
||||
CONFIG_PACKAGE_iptables-mod-iprange=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipv4options=y
|
||||
CONFIG_PACKAGE_iptables-mod-nat-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-proto=y
|
||||
CONFIG_PACKAGE_iptables-mod-tee=y
|
||||
CONFIG_PACKAGE_iptables-mod-tproxy=y
|
||||
CONFIG_PACKAGE_iptables-mod-u32=y
|
||||
CONFIG_PACKAGE_iw=y
|
||||
CONFIG_PACKAGE_iwinfo=y
|
||||
CONFIG_PACKAGE_kmod-ata-core=y
|
||||
CONFIG_PACKAGE_kmod-conninfra=y
|
||||
CONFIG_PACKAGE_kmod-crypto-acompress=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ccm=y
|
||||
CONFIG_PACKAGE_kmod-crypto-cmac=y
|
||||
CONFIG_PACKAGE_kmod-crypto-crc32c=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ctr=y
|
||||
CONFIG_PACKAGE_kmod-crypto-des=y
|
||||
CONFIG_PACKAGE_kmod-crypto-gcm=y
|
||||
CONFIG_PACKAGE_kmod-crypto-gf128=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ghash=y
|
||||
CONFIG_PACKAGE_kmod-crypto-hmac=y
|
||||
CONFIG_PACKAGE_kmod-crypto-md4=y
|
||||
CONFIG_PACKAGE_kmod-crypto-md5=y
|
||||
CONFIG_PACKAGE_kmod-crypto-rng=y
|
||||
CONFIG_PACKAGE_kmod-crypto-seqiv=y
|
||||
CONFIG_PACKAGE_kmod-crypto-sha256=y
|
||||
CONFIG_PACKAGE_kmod-crypto-sha512=y
|
||||
CONFIG_PACKAGE_kmod-ebtables=y
|
||||
CONFIG_PACKAGE_kmod-ebtables-ipv4=y
|
||||
CONFIG_PACKAGE_kmod-ebtables-ipv6=y
|
||||
CONFIG_PACKAGE_kmod-fs-autofs4=y
|
||||
CONFIG_PACKAGE_kmod-fs-vfat=y
|
||||
CONFIG_PACKAGE_kmod-inet-diag=y
|
||||
CONFIG_PACKAGE_kmod-ip6tables-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-compat-xtables=y
|
||||
CONFIG_PACKAGE_kmod-ipt-conntrack-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-filter=y
|
||||
CONFIG_PACKAGE_kmod-ipt-hashlimit=y
|
||||
CONFIG_PACKAGE_kmod-ipt-iface=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipmark=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipopt=y
|
||||
CONFIG_PACKAGE_kmod-ipt-iprange=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipv4options=y
|
||||
CONFIG_PACKAGE_kmod-ipt-nat-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-offload=y
|
||||
CONFIG_PACKAGE_kmod-ipt-proto=y
|
||||
CONFIG_PACKAGE_kmod-ipt-raw6=y
|
||||
CONFIG_PACKAGE_kmod-ipt-tee=y
|
||||
CONFIG_PACKAGE_kmod-ipt-tproxy=y
|
||||
CONFIG_PACKAGE_kmod-ipt-u32=y
|
||||
CONFIG_PACKAGE_kmod-leds-ws2812b=y
|
||||
CONFIG_PACKAGE_kmod-lib-crc32c=y
|
||||
CONFIG_PACKAGE_kmod-lib-lzo=y
|
||||
CONFIG_PACKAGE_kmod-mediatek_hnat=y
|
||||
CONFIG_PACKAGE_kmod-mt_wifi=y
|
||||
CONFIG_PACKAGE_kmod-nf-flow=y
|
||||
CONFIG_PACKAGE_kmod-nls-base=y
|
||||
CONFIG_PACKAGE_kmod-nls-cp437=y
|
||||
CONFIG_PACKAGE_kmod-nls-iso8859-1=y
|
||||
CONFIG_PACKAGE_kmod-nls-utf8=y
|
||||
CONFIG_PACKAGE_kmod-scsi-core=y
|
||||
CONFIG_PACKAGE_kmod-tcp-bbr=y
|
||||
CONFIG_PACKAGE_kmod-tun=y
|
||||
CONFIG_PACKAGE_kmod-warp=y
|
||||
CONFIG_PACKAGE_kmod-zram=y
|
||||
CONFIG_PACKAGE_kvcedit=y
|
||||
CONFIG_PACKAGE_libatomic=y
|
||||
CONFIG_PACKAGE_libblkid=y
|
||||
CONFIG_PACKAGE_libcap-ng=y
|
||||
CONFIG_PACKAGE_libcbor=y
|
||||
CONFIG_PACKAGE_libevdev=y
|
||||
CONFIG_PACKAGE_libfido2=y
|
||||
CONFIG_PACKAGE_libipset=y
|
||||
CONFIG_PACKAGE_libkvcutil=y
|
||||
CONFIG_PACKAGE_libncurses=y
|
||||
CONFIG_PACKAGE_libnl=y
|
||||
CONFIG_PACKAGE_libnl-core=y
|
||||
CONFIG_PACKAGE_libnl-genl=y
|
||||
CONFIG_PACKAGE_libnl-nf=y
|
||||
CONFIG_PACKAGE_libnl-route=y
|
||||
CONFIG_PACKAGE_libopenssl-afalg_sync=y
|
||||
CONFIG_PACKAGE_libopenssl-devcrypto=y
|
||||
CONFIG_PACKAGE_libpcap=y
|
||||
CONFIG_PACKAGE_libstdcpp=y
|
||||
CONFIG_PACKAGE_libudev-zero=y
|
||||
CONFIG_PACKAGE_libuuid=y
|
||||
CONFIG_PACKAGE_luci-app-eqos-mtk=y
|
||||
CONFIG_PACKAGE_luci-app-mtk=y
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Haproxy is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ShadowsocksR_Libev_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Rust_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Simple_Obfs is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Trojan_Plus is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray_Plugin is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Xray is not set
|
||||
# CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-ng is not set
|
||||
# CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-webui is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ChinaDNS_NG is not set
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_NONE_V2RAY=y
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Client is not set
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Client=y
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Server=y
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Simple_Obfs is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Xray is not set
|
||||
CONFIG_PACKAGE_luci-app-turboacc-mtk=y
|
||||
CONFIG_PACKAGE_luci-app-upnp-mtk-adjust=y
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_ShadowsocksR_Libev_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Trojan is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray_plugin is not set
|
||||
CONFIG_PACKAGE_luci-i18n-mtk-zh-cn=y
|
||||
CONFIG_PACKAGE_luci-i18n-turboacc-mtk-zh-cn=y
|
||||
CONFIG_PACKAGE_luci-theme-argon=y
|
||||
CONFIG_PACKAGE_luci-theme-bootstrap-mod=y
|
||||
CONFIG_PACKAGE_mii_mgr=y
|
||||
CONFIG_PACKAGE_mtkhqos_util=y
|
||||
CONFIG_PACKAGE_mtk-smp=y
|
||||
CONFIG_PACKAGE_nano=y
|
||||
CONFIG_PACKAGE_openssh-keygen=y
|
||||
CONFIG_PACKAGE_openssh-sftp-server=y
|
||||
CONFIG_PACKAGE_openssl-util=y
|
||||
CONFIG_PACKAGE_regs=y
|
||||
CONFIG_PACKAGE_resolveip=y
|
||||
CONFIG_PACKAGE_swconfig=y
|
||||
CONFIG_PACKAGE_switch=y
|
||||
CONFIG_PACKAGE_tcpdump=y
|
||||
CONFIG_PACKAGE_terminfo=y
|
||||
CONFIG_PACKAGE_wifi-dats=y
|
||||
CONFIG_PACKAGE_wifi-profile=y
|
||||
CONFIG_PACKAGE_wireless-regdb=y
|
||||
CONFIG_PACKAGE_wireless-tools=y
|
||||
CONFIG_PACKAGE_zram-swap=y
|
||||
# CONFIG_PKG_CHECK_FORMAT_SECURITY is not set
|
||||
# CONFIG_PKG_FORTIFY_SOURCE_1 is not set
|
||||
CONFIG_PKG_FORTIFY_SOURCE_2=y
|
||||
CONFIG_WARP_CHIPSET="mt7986"
|
||||
CONFIG_WARP_DBG_SUPPORT=y
|
||||
CONFIG_WARP_MEMORY_LEAK_DBG=y
|
||||
CONFIG_WARP_NEW_FW=y
|
||||
CONFIG_WARP_VERSION=2
|
||||
CONFIG_WED_HW_RRO_SUPPORT=y
|
||||
CONFIG_WIFI_NORMAL_SETTING=y
|
||||
# CONFIG_WOLFSSL_HAS_ECC25519 is not set
|
||||
CONFIG_first_card=y
|
||||
CONFIG_first_card_name="MT7986"
|
||||
# CONFIG_AFALG_FALLBACK is not set
|
||||
# CONFIG_MTK_BAND_STEERING is not set
|
||||
# CONFIG_MTK_DEFAULT_5G_PROFILE is not set
|
||||
# CONFIG_MTK_MAC_REPEATER_SUPPORT is not set
|
||||
# CONFIG_MTK_MULTI_PROFILE_SUPPORT is not set
|
||||
# CONFIG_MTK_PCIE_ASPM_DYM_CTRL_SUPPORT is not set
|
||||
# CONFIG_MTK_PRE_CAL_TRX_SET1_SUPPORT is not set
|
||||
# CONFIG_MTK_PRE_CAL_TRX_SET2_SUPPORT is not set
|
||||
# CONFIG_MTK_RLM_CAL_CACHE_SUPPORT is not set
|
||||
# CONFIG_MTK_SNIFFER_RADIOTAP_SUPPORT is not set
|
||||
#
|
||||
# BPI-R3-MINI Properties
|
||||
#
|
||||
CONFIG_PACKAGE_bpir3_mini-properties=y
|
||||
# end of BPI-R3-MINI Properties
|
301
defconfig/mt7986-ax6000-256m.config
Normal file
301
defconfig/mt7986-ax6000-256m.config
Normal file
@ -0,0 +1,301 @@
|
||||
CONFIG_TARGET_mediatek=y
|
||||
CONFIG_TARGET_mediatek_mt7986=y
|
||||
CONFIG_TARGET_MULTI_PROFILE=y
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7986_DEVICE_netcore_n60=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7986_DEVICE_netcore_n60=""
|
||||
CONFIG_DEVEL=y
|
||||
CONFIG_TOOLCHAINOPTS=y
|
||||
CONFIG_BUSYBOX_CUSTOM=y
|
||||
CONFIG_TARGET_PER_DEVICE_ROOTFS=y
|
||||
CONFIG_AFALG_UPDATE_CTR_IV=y
|
||||
CONFIG_BUSYBOX_CONFIG_BLKID=y
|
||||
CONFIG_BUSYBOX_CONFIG_FEATURE_BLKID_TYPE=y
|
||||
CONFIG_BUSYBOX_CONFIG_VOLUMEID=y
|
||||
CONFIG_CONNINFRA_AUTO_UP=y
|
||||
CONFIG_CONNINFRA_EMI_SUPPORT=y
|
||||
# CONFIG_GDB is not set
|
||||
CONFIG_INCLUDE_CONFIG=y
|
||||
CONFIG_JSON_OVERVIEW_IMAGE_INFO=y
|
||||
# CONFIG_KERNEL_BLK_DEV_THROTTLING is not set
|
||||
# CONFIG_KERNEL_CFS_BANDWIDTH is not set
|
||||
CONFIG_KERNEL_CGROUP_DEVICE=y
|
||||
CONFIG_KERNEL_CGROUP_FREEZER=y
|
||||
CONFIG_KERNEL_DEVMEM=y
|
||||
# CONFIG_KERNEL_KEYS is not set
|
||||
# CONFIG_KERNEL_MEMCG_SWAP is not set
|
||||
CONFIG_KERNEL_NET_CLS_CGROUP=y
|
||||
CONFIG_MTK_ACK_CTS_TIMEOUT_SUPPORT=y
|
||||
CONFIG_MTK_AIR_MONITOR=y
|
||||
CONFIG_MTK_AMPDU_CONF_SUPPORT=y
|
||||
CONFIG_MTK_ANTENNA_CONTROL_SUPPORT=y
|
||||
CONFIG_MTK_APCLI_SUPPORT=y
|
||||
CONFIG_MTK_ATE_SUPPORT=y
|
||||
CONFIG_MTK_BACKGROUND_SCAN_SUPPORT=y
|
||||
CONFIG_MTK_CAL_BIN_FILE_SUPPORT=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_MURU=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_PP=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_SR=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_TXCMD_DBG=y
|
||||
CONFIG_MTK_CHIP_MT7986=y
|
||||
CONFIG_MTK_CONNINFRA_APSOC=y
|
||||
CONFIG_MTK_CONNINFRA_APSOC_MT7986=y
|
||||
CONFIG_MTK_CON_WPS_SUPPORT=y
|
||||
CONFIG_MTK_DBDC_MODE=y
|
||||
CONFIG_MTK_DOT11K_RRM_SUPPORT=y
|
||||
CONFIG_MTK_DOT11R_FT_SUPPORT=y
|
||||
CONFIG_MTK_DOT11W_PMF_SUPPORT=y
|
||||
CONFIG_MTK_DOT11_HE_AX=y
|
||||
CONFIG_MTK_DOT11_N_SUPPORT=y
|
||||
CONFIG_MTK_DOT11_VHT_AC=y
|
||||
CONFIG_MTK_FAST_NAT_SUPPORT=y
|
||||
CONFIG_MTK_FIRST_IF_EEPROM_FLASH=y
|
||||
CONFIG_MTK_FIRST_IF_IPAILNA=y
|
||||
CONFIG_MTK_FIRST_IF_MT7986=y
|
||||
CONFIG_MTK_GREENAP_SUPPORT=y
|
||||
CONFIG_MTK_G_BAND_256QAM_SUPPORT=y
|
||||
CONFIG_MTK_HDR_TRANS_RX_SUPPORT=y
|
||||
CONFIG_MTK_HDR_TRANS_TX_SUPPORT=y
|
||||
CONFIG_MTK_ICAP_SUPPORT=y
|
||||
CONFIG_MTK_IGMP_SNOOP_SUPPORT=y
|
||||
CONFIG_MTK_INTERWORKING=y
|
||||
CONFIG_MTK_BAND_STEERING=y
|
||||
CONFIG_MTK_MAP_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R2_VER_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R3_VER_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R2_6E_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R3_6E_SUPPORT=y
|
||||
CONFIG_MTK_MBO_SUPPORT=y
|
||||
CONFIG_MTK_MBSS_DTIM_SUPPORT=y
|
||||
CONFIG_MTK_MBSS_SUPPORT=y
|
||||
CONFIG_MTK_MCAST_RATE_SPECIFIC=y
|
||||
CONFIG_MTK_MEMORY_SHRINK=y
|
||||
CONFIG_MTK_MEMORY_SHRINK_AGGRESS=y
|
||||
CONFIG_MTK_MGMT_TXPWR_CTRL=y
|
||||
CONFIG_MTK_MLME_MULTI_QUEUE_SUPPORT=y
|
||||
CONFIG_MTK_MT_AP_SUPPORT=m
|
||||
CONFIG_MTK_MT_DFS_SUPPORT=y
|
||||
CONFIG_MTK_MT_MAC=y
|
||||
CONFIG_MTK_MT_WIFI=m
|
||||
CONFIG_MTK_MT_WIFI_PATH="mt_wifi"
|
||||
CONFIG_MTK_MUMIMO_SUPPORT=y
|
||||
CONFIG_MTK_MU_RA_SUPPORT=y
|
||||
CONFIG_MTK_OFFCHANNEL_SCAN_FEATURE=y
|
||||
CONFIG_MTK_OWE_SUPPORT=y
|
||||
CONFIG_MTK_PHY_ICS_SUPPORT=y
|
||||
CONFIG_MTK_QOS_R1_SUPPORT=y
|
||||
CONFIG_MTK_RA_PHY_RATE_SUPPORT=y
|
||||
CONFIG_MTK_RED_SUPPORT=y
|
||||
CONFIG_MTK_RTMP_FLASH_SUPPORT=y
|
||||
CONFIG_MTK_RT_FIRST_CARD_EEPROM="flash"
|
||||
CONFIG_MTK_RT_FIRST_IF_RF_OFFSET=0xc0000
|
||||
CONFIG_MTK_SCS_FW_OFFLOAD=y
|
||||
CONFIG_MTK_SECOND_IF_NONE=y
|
||||
CONFIG_MTK_SMART_CARRIER_SENSE_SUPPORT=y
|
||||
CONFIG_MTK_SPECTRUM_SUPPORT=y
|
||||
CONFIG_MTK_SUPPORT_OPENWRT=y
|
||||
CONFIG_MTK_THERMAL_PROTECT_SUPPORT=y
|
||||
CONFIG_MTK_THIRD_IF_NONE=y
|
||||
CONFIG_MTK_TPC_SUPPORT=y
|
||||
CONFIG_MTK_TXBF_SUPPORT=y
|
||||
CONFIG_MTK_UAPSD=y
|
||||
CONFIG_MTK_VLAN_SUPPORT=y
|
||||
CONFIG_MTK_VOW_SUPPORT=y
|
||||
CONFIG_MTK_WARP_V2=y
|
||||
CONFIG_MTK_WDS_SUPPORT=y
|
||||
CONFIG_MTK_WHNAT_SUPPORT=m
|
||||
CONFIG_MTK_WIFI_ADIE_TYPE="mt7976"
|
||||
CONFIG_MTK_WIFI_BASIC_FUNC=y
|
||||
CONFIG_MTK_WIFI_DRIVER=y
|
||||
CONFIG_MTK_WIFI_EAP_FEATURE=y
|
||||
CONFIG_MTK_WIFI_FW_BIN_LOAD=y
|
||||
CONFIG_MTK_WIFI_MODE_AP=m
|
||||
CONFIG_MTK_WIFI_MT_MAC=y
|
||||
CONFIG_MTK_WIFI_SKU_TYPE="AX6000"
|
||||
CONFIG_MTK_WIFI_TWT_SUPPORT=y
|
||||
CONFIG_MTK_WLAN_HOOK=y
|
||||
CONFIG_MTK_WLAN_SERVICE=y
|
||||
CONFIG_MTK_WNM_SUPPORT=y
|
||||
CONFIG_MTK_WPA3_SUPPORT=y
|
||||
CONFIG_MTK_WSC_INCLUDED=y
|
||||
CONFIG_MTK_WSC_V2_SUPPORT=y
|
||||
# CONFIG_OPENSSL_ENGINE_BUILTIN is not set
|
||||
# CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM is not set
|
||||
CONFIG_OPENSSL_WITH_NPN=y
|
||||
# CONFIG_PACKAGE_TURBOACC_INCLUDE_FLOW_OFFLOADING is not set
|
||||
CONFIG_PACKAGE_TURBOACC_INCLUDE_NO_FASTPATH=y
|
||||
CONFIG_PACKAGE_blockd=y
|
||||
CONFIG_PACKAGE_ca-certificates=y
|
||||
CONFIG_PACKAGE_datconf=y
|
||||
CONFIG_PACKAGE_datconf-lua=y
|
||||
CONFIG_PACKAGE_ethtool=y
|
||||
CONFIG_PACKAGE_ebtables=y
|
||||
CONFIG_PACKAGE_htop=y
|
||||
CONFIG_PACKAGE_ip-bridge=y
|
||||
CONFIG_PACKAGE_ip6tables-extra=y
|
||||
CONFIG_PACKAGE_ipset=y
|
||||
CONFIG_PACKAGE_iptables-mod-conntrack-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-filter=y
|
||||
CONFIG_PACKAGE_iptables-mod-hashlimit=y
|
||||
CONFIG_PACKAGE_iptables-mod-iface=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipmark=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipopt=y
|
||||
CONFIG_PACKAGE_iptables-mod-iprange=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipv4options=y
|
||||
CONFIG_PACKAGE_iptables-mod-nat-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-proto=y
|
||||
CONFIG_PACKAGE_iptables-mod-tee=y
|
||||
CONFIG_PACKAGE_iptables-mod-tproxy=y
|
||||
CONFIG_PACKAGE_iptables-mod-u32=y
|
||||
CONFIG_PACKAGE_iw=y
|
||||
CONFIG_PACKAGE_iwinfo=y
|
||||
CONFIG_PACKAGE_kmod-ata-core=y
|
||||
CONFIG_PACKAGE_kmod-conninfra=y
|
||||
CONFIG_PACKAGE_kmod-crypto-acompress=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ccm=y
|
||||
CONFIG_PACKAGE_kmod-crypto-cmac=y
|
||||
CONFIG_PACKAGE_kmod-crypto-crc32c=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ctr=y
|
||||
CONFIG_PACKAGE_kmod-crypto-des=y
|
||||
CONFIG_PACKAGE_kmod-crypto-gcm=y
|
||||
CONFIG_PACKAGE_kmod-crypto-gf128=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ghash=y
|
||||
CONFIG_PACKAGE_kmod-crypto-hmac=y
|
||||
CONFIG_PACKAGE_kmod-crypto-md4=y
|
||||
CONFIG_PACKAGE_kmod-crypto-md5=y
|
||||
CONFIG_PACKAGE_kmod-crypto-rng=y
|
||||
CONFIG_PACKAGE_kmod-crypto-seqiv=y
|
||||
CONFIG_PACKAGE_kmod-crypto-sha256=y
|
||||
CONFIG_PACKAGE_kmod-crypto-sha512=y
|
||||
CONFIG_PACKAGE_kmod-ebtables=y
|
||||
CONFIG_PACKAGE_kmod-ebtables-ipv4=y
|
||||
CONFIG_PACKAGE_kmod-ebtables-ipv6=y
|
||||
CONFIG_PACKAGE_kmod-fs-autofs4=y
|
||||
CONFIG_PACKAGE_kmod-fs-vfat=y
|
||||
CONFIG_PACKAGE_kmod-inet-diag=y
|
||||
CONFIG_PACKAGE_kmod-ip6tables-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-compat-xtables=y
|
||||
CONFIG_PACKAGE_kmod-ipt-conntrack-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-filter=y
|
||||
CONFIG_PACKAGE_kmod-ipt-hashlimit=y
|
||||
CONFIG_PACKAGE_kmod-ipt-iface=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipmark=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipopt=y
|
||||
CONFIG_PACKAGE_kmod-ipt-iprange=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipv4options=y
|
||||
CONFIG_PACKAGE_kmod-ipt-nat-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-offload=y
|
||||
CONFIG_PACKAGE_kmod-ipt-proto=y
|
||||
CONFIG_PACKAGE_kmod-ipt-raw6=y
|
||||
CONFIG_PACKAGE_kmod-ipt-tee=y
|
||||
CONFIG_PACKAGE_kmod-ipt-tproxy=y
|
||||
CONFIG_PACKAGE_kmod-ipt-u32=y
|
||||
CONFIG_PACKAGE_kmod-leds-ws2812b=y
|
||||
CONFIG_PACKAGE_kmod-lib-crc32c=y
|
||||
CONFIG_PACKAGE_kmod-lib-lzo=y
|
||||
CONFIG_PACKAGE_kmod-mediatek_hnat=y
|
||||
CONFIG_PACKAGE_kmod-mt_wifi=y
|
||||
CONFIG_PACKAGE_kmod-nf-flow=y
|
||||
CONFIG_PACKAGE_kmod-nls-base=y
|
||||
CONFIG_PACKAGE_kmod-nls-cp437=y
|
||||
CONFIG_PACKAGE_kmod-nls-iso8859-1=y
|
||||
CONFIG_PACKAGE_kmod-nls-utf8=y
|
||||
CONFIG_PACKAGE_kmod-scsi-core=y
|
||||
CONFIG_PACKAGE_kmod-tcp-bbr=y
|
||||
CONFIG_PACKAGE_kmod-tun=y
|
||||
CONFIG_PACKAGE_kmod-warp=y
|
||||
CONFIG_PACKAGE_kmod-zram=y
|
||||
CONFIG_PACKAGE_kvcedit=y
|
||||
CONFIG_PACKAGE_libatomic=y
|
||||
CONFIG_PACKAGE_libblkid=y
|
||||
CONFIG_PACKAGE_libcap-ng=y
|
||||
CONFIG_PACKAGE_libcbor=y
|
||||
CONFIG_PACKAGE_libevdev=y
|
||||
CONFIG_PACKAGE_libfido2=y
|
||||
CONFIG_PACKAGE_libipset=y
|
||||
CONFIG_PACKAGE_libkvcutil=y
|
||||
CONFIG_PACKAGE_libncurses=y
|
||||
CONFIG_PACKAGE_libnl=y
|
||||
CONFIG_PACKAGE_libnl-core=y
|
||||
CONFIG_PACKAGE_libnl-genl=y
|
||||
CONFIG_PACKAGE_libnl-nf=y
|
||||
CONFIG_PACKAGE_libnl-route=y
|
||||
CONFIG_PACKAGE_libopenssl-afalg_sync=y
|
||||
CONFIG_PACKAGE_libopenssl-devcrypto=y
|
||||
CONFIG_PACKAGE_libpcap=y
|
||||
CONFIG_PACKAGE_libstdcpp=y
|
||||
CONFIG_PACKAGE_libudev-zero=y
|
||||
CONFIG_PACKAGE_libuuid=y
|
||||
CONFIG_PACKAGE_luci-app-eqos-mtk=y
|
||||
CONFIG_PACKAGE_luci-app-mtk=y
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Haproxy is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ShadowsocksR_Libev_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Rust_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Simple_Obfs is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Trojan_Plus is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray_Plugin is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Xray is not set
|
||||
# CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-ng is not set
|
||||
# CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-webui is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ChinaDNS_NG is not set
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_NONE_V2RAY=y
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Client is not set
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Client=y
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Server=y
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Simple_Obfs is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Xray is not set
|
||||
CONFIG_PACKAGE_luci-app-turboacc-mtk=y
|
||||
CONFIG_PACKAGE_luci-app-upnp-mtk-adjust=y
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_ShadowsocksR_Libev_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Trojan is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray_plugin is not set
|
||||
CONFIG_PACKAGE_luci-i18n-mtk-zh-cn=y
|
||||
CONFIG_PACKAGE_luci-i18n-turboacc-mtk-zh-cn=y
|
||||
CONFIG_PACKAGE_luci-theme-argon=y
|
||||
CONFIG_PACKAGE_luci-theme-bootstrap-mod=y
|
||||
CONFIG_PACKAGE_mii_mgr=y
|
||||
CONFIG_PACKAGE_mtkhqos_util=y
|
||||
CONFIG_PACKAGE_nano=y
|
||||
CONFIG_PACKAGE_openssh-keygen=y
|
||||
CONFIG_PACKAGE_openssh-sftp-server=y
|
||||
CONFIG_PACKAGE_openssl-util=y
|
||||
CONFIG_PACKAGE_regs=y
|
||||
CONFIG_PACKAGE_resolveip=y
|
||||
CONFIG_PACKAGE_swconfig=y
|
||||
CONFIG_PACKAGE_switch=y
|
||||
CONFIG_PACKAGE_tcpdump=y
|
||||
CONFIG_PACKAGE_terminfo=y
|
||||
CONFIG_PACKAGE_wifi-dats=y
|
||||
CONFIG_PACKAGE_wifi-profile=y
|
||||
CONFIG_PACKAGE_wireless-regdb=y
|
||||
CONFIG_PACKAGE_wireless-tools=y
|
||||
CONFIG_PACKAGE_zram-swap=y
|
||||
# CONFIG_PKG_CHECK_FORMAT_SECURITY is not set
|
||||
# CONFIG_PKG_FORTIFY_SOURCE_1 is not set
|
||||
CONFIG_PKG_FORTIFY_SOURCE_2=y
|
||||
CONFIG_WARP_CHIPSET="mt7986"
|
||||
CONFIG_WARP_DBG_SUPPORT=y
|
||||
CONFIG_WARP_NEW_FW=y
|
||||
CONFIG_WARP_VERSION=2
|
||||
CONFIG_WED_HW_RRO_SUPPORT=y
|
||||
CONFIG_WIFI_NORMAL_SETTING=y
|
||||
# CONFIG_WOLFSSL_HAS_ECC25519 is not set
|
||||
CONFIG_first_card=y
|
||||
CONFIG_first_card_name="MT7986"
|
||||
# CONFIG_AFALG_FALLBACK is not set
|
||||
# CONFIG_MTK_BAND_STEERING is not set
|
||||
# CONFIG_MTK_DEFAULT_5G_PROFILE is not set
|
||||
# CONFIG_MTK_MAC_REPEATER_SUPPORT is not set
|
||||
# CONFIG_MTK_MULTI_PROFILE_SUPPORT is not set
|
||||
# CONFIG_MTK_PCIE_ASPM_DYM_CTRL_SUPPORT is not set
|
||||
# CONFIG_MTK_PRE_CAL_TRX_SET1_SUPPORT is not set
|
||||
# CONFIG_MTK_PRE_CAL_TRX_SET2_SUPPORT is not set
|
||||
# CONFIG_MTK_RLM_CAL_CACHE_SUPPORT is not set
|
||||
# CONFIG_MTK_SNIFFER_RADIOTAP_SUPPORT is not set
|
310
defconfig/mt7986-ax6000.config
Normal file
310
defconfig/mt7986-ax6000.config
Normal file
@ -0,0 +1,310 @@
|
||||
CONFIG_TARGET_mediatek=y
|
||||
CONFIG_TARGET_mediatek_mt7986=y
|
||||
CONFIG_TARGET_MULTI_PROFILE=y
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7986_DEVICE_glinet_gl-mt6000=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7986_DEVICE_glinet_gl-mt6000=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7986_DEVICE_tplink_tl-xdr6086=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7986_DEVICE_tplink_tl-xdr6086=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7986_DEVICE_tplink_tl-xdr6088=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7986_DEVICE_tplink_tl-xdr6088=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7986_DEVICE_xiaomi_redmi-router-ax6000=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7986_DEVICE_xiaomi_redmi-router-ax6000=""
|
||||
CONFIG_TARGET_DEVICE_mediatek_mt7986_DEVICE_xiaomi_redmi-router-ax6000-stock=y
|
||||
CONFIG_TARGET_DEVICE_PACKAGES_mediatek_mt7986_DEVICE_xiaomi_redmi-router-ax6000-stock=""
|
||||
CONFIG_DEVEL=y
|
||||
CONFIG_TOOLCHAINOPTS=y
|
||||
CONFIG_BUSYBOX_CUSTOM=y
|
||||
CONFIG_TARGET_PER_DEVICE_ROOTFS=y
|
||||
CONFIG_AFALG_UPDATE_CTR_IV=y
|
||||
CONFIG_BUSYBOX_CONFIG_BLKID=y
|
||||
CONFIG_BUSYBOX_CONFIG_FEATURE_BLKID_TYPE=y
|
||||
CONFIG_BUSYBOX_CONFIG_VOLUMEID=y
|
||||
CONFIG_CONNINFRA_AUTO_UP=y
|
||||
CONFIG_CONNINFRA_EMI_SUPPORT=y
|
||||
# CONFIG_GDB is not set
|
||||
CONFIG_INCLUDE_CONFIG=y
|
||||
CONFIG_JSON_OVERVIEW_IMAGE_INFO=y
|
||||
# CONFIG_KERNEL_BLK_DEV_THROTTLING is not set
|
||||
# CONFIG_KERNEL_CFS_BANDWIDTH is not set
|
||||
CONFIG_KERNEL_CGROUP_DEVICE=y
|
||||
CONFIG_KERNEL_CGROUP_FREEZER=y
|
||||
CONFIG_KERNEL_DEVMEM=y
|
||||
# CONFIG_KERNEL_KEYS is not set
|
||||
# CONFIG_KERNEL_MEMCG_SWAP is not set
|
||||
CONFIG_KERNEL_NET_CLS_CGROUP=y
|
||||
CONFIG_MTK_ACK_CTS_TIMEOUT_SUPPORT=y
|
||||
CONFIG_MTK_AIR_MONITOR=y
|
||||
CONFIG_MTK_AMPDU_CONF_SUPPORT=y
|
||||
CONFIG_MTK_ANTENNA_CONTROL_SUPPORT=y
|
||||
CONFIG_MTK_APCLI_SUPPORT=y
|
||||
CONFIG_MTK_ATE_SUPPORT=y
|
||||
CONFIG_MTK_BACKGROUND_SCAN_SUPPORT=y
|
||||
CONFIG_MTK_CAL_BIN_FILE_SUPPORT=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_MURU=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_PP=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_SR=y
|
||||
CONFIG_MTK_CFG_SUPPORT_FALCON_TXCMD_DBG=y
|
||||
CONFIG_MTK_CHIP_MT7986=y
|
||||
CONFIG_MTK_CONNINFRA_APSOC=y
|
||||
CONFIG_MTK_CONNINFRA_APSOC_MT7986=y
|
||||
CONFIG_MTK_CON_WPS_SUPPORT=y
|
||||
CONFIG_MTK_DBDC_MODE=y
|
||||
CONFIG_MTK_DOT11K_RRM_SUPPORT=y
|
||||
CONFIG_MTK_DOT11R_FT_SUPPORT=y
|
||||
CONFIG_MTK_DOT11W_PMF_SUPPORT=y
|
||||
CONFIG_MTK_DOT11_HE_AX=y
|
||||
CONFIG_MTK_DOT11_N_SUPPORT=y
|
||||
CONFIG_MTK_DOT11_VHT_AC=y
|
||||
CONFIG_MTK_FAST_NAT_SUPPORT=y
|
||||
CONFIG_MTK_FIRST_IF_EEPROM_FLASH=y
|
||||
CONFIG_MTK_FIRST_IF_IPAILNA=y
|
||||
CONFIG_MTK_FIRST_IF_MT7986=y
|
||||
CONFIG_MTK_GREENAP_SUPPORT=y
|
||||
CONFIG_MTK_G_BAND_256QAM_SUPPORT=y
|
||||
CONFIG_MTK_HDR_TRANS_RX_SUPPORT=y
|
||||
CONFIG_MTK_HDR_TRANS_TX_SUPPORT=y
|
||||
CONFIG_MTK_ICAP_SUPPORT=y
|
||||
CONFIG_MTK_IGMP_SNOOP_SUPPORT=y
|
||||
CONFIG_MTK_INTERWORKING=y
|
||||
CONFIG_MTK_BAND_STEERING=y
|
||||
CONFIG_MTK_MAP_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R2_VER_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R3_VER_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R2_6E_SUPPORT=y
|
||||
CONFIG_MTK_MAP_R3_6E_SUPPORT=y
|
||||
CONFIG_MTK_MBO_SUPPORT=y
|
||||
CONFIG_MTK_MBSS_DTIM_SUPPORT=y
|
||||
CONFIG_MTK_MBSS_SUPPORT=y
|
||||
CONFIG_MTK_MCAST_RATE_SPECIFIC=y
|
||||
CONFIG_MTK_MGMT_TXPWR_CTRL=y
|
||||
CONFIG_MTK_MLME_MULTI_QUEUE_SUPPORT=y
|
||||
CONFIG_MTK_MT7986_NEW_FW=y
|
||||
CONFIG_MTK_MT_AP_SUPPORT=m
|
||||
CONFIG_MTK_MT_DFS_SUPPORT=y
|
||||
CONFIG_MTK_MT_MAC=y
|
||||
CONFIG_MTK_MT_WIFI=m
|
||||
CONFIG_MTK_MT_WIFI_PATH="mt_wifi"
|
||||
CONFIG_MTK_MUMIMO_SUPPORT=y
|
||||
CONFIG_MTK_MU_RA_SUPPORT=y
|
||||
CONFIG_MTK_OFFCHANNEL_SCAN_FEATURE=y
|
||||
CONFIG_MTK_OWE_SUPPORT=y
|
||||
CONFIG_MTK_PHY_ICS_SUPPORT=y
|
||||
CONFIG_MTK_QOS_R1_SUPPORT=y
|
||||
CONFIG_MTK_RA_PHY_RATE_SUPPORT=y
|
||||
CONFIG_MTK_RED_SUPPORT=y
|
||||
CONFIG_MTK_RTMP_FLASH_SUPPORT=y
|
||||
CONFIG_MTK_RT_FIRST_CARD_EEPROM="flash"
|
||||
CONFIG_MTK_RT_FIRST_IF_RF_OFFSET=0xc0000
|
||||
CONFIG_MTK_SCS_FW_OFFLOAD=y
|
||||
CONFIG_MTK_SECOND_IF_NONE=y
|
||||
CONFIG_MTK_SMART_CARRIER_SENSE_SUPPORT=y
|
||||
CONFIG_MTK_SPECTRUM_SUPPORT=y
|
||||
CONFIG_MTK_SUPPORT_OPENWRT=y
|
||||
CONFIG_MTK_THERMAL_PROTECT_SUPPORT=y
|
||||
CONFIG_MTK_THIRD_IF_NONE=y
|
||||
CONFIG_MTK_TPC_SUPPORT=y
|
||||
CONFIG_MTK_TXBF_SUPPORT=y
|
||||
CONFIG_MTK_UAPSD=y
|
||||
CONFIG_MTK_VLAN_SUPPORT=y
|
||||
CONFIG_MTK_VOW_SUPPORT=y
|
||||
CONFIG_MTK_WARP_V2=y
|
||||
CONFIG_MTK_WDS_SUPPORT=y
|
||||
CONFIG_MTK_WHNAT_SUPPORT=m
|
||||
CONFIG_MTK_WIFI_ADIE_TYPE="mt7976"
|
||||
CONFIG_MTK_WIFI_BASIC_FUNC=y
|
||||
CONFIG_MTK_WIFI_DRIVER=y
|
||||
CONFIG_MTK_WIFI_EAP_FEATURE=y
|
||||
CONFIG_MTK_WIFI_FW_BIN_LOAD=y
|
||||
CONFIG_MTK_WIFI_MODE_AP=m
|
||||
CONFIG_MTK_WIFI_MT_MAC=y
|
||||
CONFIG_MTK_WIFI_SKU_TYPE="AX6000"
|
||||
CONFIG_MTK_WIFI_TWT_SUPPORT=y
|
||||
CONFIG_MTK_WLAN_HOOK=y
|
||||
CONFIG_MTK_WLAN_SERVICE=y
|
||||
CONFIG_MTK_WNM_SUPPORT=y
|
||||
CONFIG_MTK_WPA3_SUPPORT=y
|
||||
CONFIG_MTK_WSC_INCLUDED=y
|
||||
CONFIG_MTK_WSC_V2_SUPPORT=y
|
||||
# CONFIG_OPENSSL_ENGINE_BUILTIN is not set
|
||||
# CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM is not set
|
||||
CONFIG_OPENSSL_WITH_NPN=y
|
||||
# CONFIG_PACKAGE_TURBOACC_INCLUDE_FLOW_OFFLOADING is not set
|
||||
CONFIG_PACKAGE_TURBOACC_INCLUDE_NO_FASTPATH=y
|
||||
CONFIG_PACKAGE_blockd=y
|
||||
CONFIG_PACKAGE_ca-certificates=y
|
||||
CONFIG_PACKAGE_datconf=y
|
||||
CONFIG_PACKAGE_datconf-lua=y
|
||||
CONFIG_PACKAGE_ethtool=y
|
||||
CONFIG_PACKAGE_ebtables=y
|
||||
CONFIG_PACKAGE_htop=y
|
||||
CONFIG_PACKAGE_ip-bridge=y
|
||||
CONFIG_PACKAGE_ip6tables-extra=y
|
||||
CONFIG_PACKAGE_ipset=y
|
||||
CONFIG_PACKAGE_iptables-mod-conntrack-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-filter=y
|
||||
CONFIG_PACKAGE_iptables-mod-hashlimit=y
|
||||
CONFIG_PACKAGE_iptables-mod-iface=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipmark=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipopt=y
|
||||
CONFIG_PACKAGE_iptables-mod-iprange=y
|
||||
CONFIG_PACKAGE_iptables-mod-ipv4options=y
|
||||
CONFIG_PACKAGE_iptables-mod-nat-extra=y
|
||||
CONFIG_PACKAGE_iptables-mod-proto=y
|
||||
CONFIG_PACKAGE_iptables-mod-tee=y
|
||||
CONFIG_PACKAGE_iptables-mod-tproxy=y
|
||||
CONFIG_PACKAGE_iptables-mod-u32=y
|
||||
CONFIG_PACKAGE_iw=y
|
||||
CONFIG_PACKAGE_iwinfo=y
|
||||
CONFIG_PACKAGE_kmod-ata-core=y
|
||||
CONFIG_PACKAGE_kmod-conninfra=y
|
||||
CONFIG_PACKAGE_kmod-crypto-acompress=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ccm=y
|
||||
CONFIG_PACKAGE_kmod-crypto-cmac=y
|
||||
CONFIG_PACKAGE_kmod-crypto-crc32c=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ctr=y
|
||||
CONFIG_PACKAGE_kmod-crypto-des=y
|
||||
CONFIG_PACKAGE_kmod-crypto-gcm=y
|
||||
CONFIG_PACKAGE_kmod-crypto-gf128=y
|
||||
CONFIG_PACKAGE_kmod-crypto-ghash=y
|
||||
CONFIG_PACKAGE_kmod-crypto-hmac=y
|
||||
CONFIG_PACKAGE_kmod-crypto-md4=y
|
||||
CONFIG_PACKAGE_kmod-crypto-md5=y
|
||||
CONFIG_PACKAGE_kmod-crypto-rng=y
|
||||
CONFIG_PACKAGE_kmod-crypto-seqiv=y
|
||||
CONFIG_PACKAGE_kmod-crypto-sha256=y
|
||||
CONFIG_PACKAGE_kmod-crypto-sha512=y
|
||||
CONFIG_PACKAGE_kmod-ebtables=y
|
||||
CONFIG_PACKAGE_kmod-ebtables-ipv4=y
|
||||
CONFIG_PACKAGE_kmod-ebtables-ipv6=y
|
||||
CONFIG_PACKAGE_kmod-fs-autofs4=y
|
||||
CONFIG_PACKAGE_kmod-fs-vfat=y
|
||||
CONFIG_PACKAGE_kmod-inet-diag=y
|
||||
CONFIG_PACKAGE_kmod-ip6tables-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-compat-xtables=y
|
||||
CONFIG_PACKAGE_kmod-ipt-conntrack-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-filter=y
|
||||
CONFIG_PACKAGE_kmod-ipt-hashlimit=y
|
||||
CONFIG_PACKAGE_kmod-ipt-iface=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipmark=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipopt=y
|
||||
CONFIG_PACKAGE_kmod-ipt-iprange=y
|
||||
CONFIG_PACKAGE_kmod-ipt-ipv4options=y
|
||||
CONFIG_PACKAGE_kmod-ipt-nat-extra=y
|
||||
CONFIG_PACKAGE_kmod-ipt-offload=y
|
||||
CONFIG_PACKAGE_kmod-ipt-proto=y
|
||||
CONFIG_PACKAGE_kmod-ipt-raw6=y
|
||||
CONFIG_PACKAGE_kmod-ipt-tee=y
|
||||
CONFIG_PACKAGE_kmod-ipt-tproxy=y
|
||||
CONFIG_PACKAGE_kmod-ipt-u32=y
|
||||
CONFIG_PACKAGE_kmod-leds-ws2812b=y
|
||||
CONFIG_PACKAGE_kmod-lib-crc32c=y
|
||||
CONFIG_PACKAGE_kmod-lib-lzo=y
|
||||
CONFIG_PACKAGE_kmod-mediatek_hnat=y
|
||||
CONFIG_PACKAGE_kmod-mt_wifi=y
|
||||
CONFIG_PACKAGE_kmod-nf-flow=y
|
||||
CONFIG_PACKAGE_kmod-nls-base=y
|
||||
CONFIG_PACKAGE_kmod-nls-cp437=y
|
||||
CONFIG_PACKAGE_kmod-nls-iso8859-1=y
|
||||
CONFIG_PACKAGE_kmod-nls-utf8=y
|
||||
CONFIG_PACKAGE_kmod-scsi-core=y
|
||||
CONFIG_PACKAGE_kmod-tcp-bbr=y
|
||||
CONFIG_PACKAGE_kmod-tun=y
|
||||
CONFIG_PACKAGE_kmod-warp=y
|
||||
CONFIG_PACKAGE_kmod-zram=y
|
||||
CONFIG_PACKAGE_kvcedit=y
|
||||
CONFIG_PACKAGE_libatomic=y
|
||||
CONFIG_PACKAGE_libblkid=y
|
||||
CONFIG_PACKAGE_libcap-ng=y
|
||||
CONFIG_PACKAGE_libcbor=y
|
||||
CONFIG_PACKAGE_libevdev=y
|
||||
CONFIG_PACKAGE_libfido2=y
|
||||
CONFIG_PACKAGE_libipset=y
|
||||
CONFIG_PACKAGE_libkvcutil=y
|
||||
CONFIG_PACKAGE_libncurses=y
|
||||
CONFIG_PACKAGE_libnl=y
|
||||
CONFIG_PACKAGE_libnl-core=y
|
||||
CONFIG_PACKAGE_libnl-genl=y
|
||||
CONFIG_PACKAGE_libnl-nf=y
|
||||
CONFIG_PACKAGE_libnl-route=y
|
||||
CONFIG_PACKAGE_libopenssl-afalg_sync=y
|
||||
CONFIG_PACKAGE_libopenssl-devcrypto=y
|
||||
CONFIG_PACKAGE_libpcap=y
|
||||
CONFIG_PACKAGE_libstdcpp=y
|
||||
CONFIG_PACKAGE_libudev-zero=y
|
||||
CONFIG_PACKAGE_libuuid=y
|
||||
CONFIG_PACKAGE_luci-app-eqos-mtk=y
|
||||
CONFIG_PACKAGE_luci-app-mtwifi-cfg=y
|
||||
CONFIG_PACKAGE_lua-cjson=y
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Haproxy is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ShadowsocksR_Libev_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Rust_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Simple_Obfs is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Trojan_Plus is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray_Plugin is not set
|
||||
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Xray is not set
|
||||
# CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-ng is not set
|
||||
# CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-webui is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ChinaDNS_NG is not set
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_NONE_V2RAY=y
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Client is not set
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Client=y
|
||||
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Server=y
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Client is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Simple_Obfs is not set
|
||||
# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Xray is not set
|
||||
CONFIG_PACKAGE_luci-app-turboacc-mtk=y
|
||||
CONFIG_PACKAGE_luci-app-upnp-mtk-adjust=y
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_ShadowsocksR_Libev_Server is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Trojan is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray is not set
|
||||
# CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray_plugin is not set
|
||||
CONFIG_PACKAGE_luci-i18n-mtwifi-cfg-zh-cn=y
|
||||
CONFIG_PACKAGE_luci-i18n-turboacc-mtk-zh-cn=y
|
||||
CONFIG_PACKAGE_luci-theme-argon=y
|
||||
CONFIG_PACKAGE_luci-theme-bootstrap-mod=y
|
||||
CONFIG_PACKAGE_mii_mgr=y
|
||||
CONFIG_PACKAGE_mtkhqos_util=y
|
||||
CONFIG_PACKAGE_mtk-smp=y
|
||||
CONFIG_PACKAGE_nano=y
|
||||
CONFIG_PACKAGE_openssh-keygen=y
|
||||
CONFIG_PACKAGE_openssh-sftp-server=y
|
||||
CONFIG_PACKAGE_openssl-util=y
|
||||
CONFIG_PACKAGE_regs=y
|
||||
CONFIG_PACKAGE_resolveip=y
|
||||
CONFIG_PACKAGE_swconfig=y
|
||||
CONFIG_PACKAGE_switch=y
|
||||
CONFIG_PACKAGE_tcpdump=y
|
||||
CONFIG_PACKAGE_terminfo=y
|
||||
CONFIG_PACKAGE_wifi-dats=y
|
||||
CONFIG_PACKAGE_mtwifi-cfg=y
|
||||
CONFIG_PACKAGE_wireless-regdb=y
|
||||
CONFIG_PACKAGE_wireless-tools=y
|
||||
CONFIG_PACKAGE_zram-swap=y
|
||||
# CONFIG_PKG_CHECK_FORMAT_SECURITY is not set
|
||||
# CONFIG_PKG_FORTIFY_SOURCE_1 is not set
|
||||
CONFIG_PKG_FORTIFY_SOURCE_2=y
|
||||
CONFIG_WARP_CHIPSET="mt7986"
|
||||
CONFIG_WARP_DBG_SUPPORT=y
|
||||
CONFIG_WARP_MEMORY_LEAK_DBG=y
|
||||
CONFIG_WARP_NEW_FW=y
|
||||
CONFIG_WARP_VERSION=2
|
||||
CONFIG_WED_HW_RRO_SUPPORT=y
|
||||
# CONFIG_WOLFSSL_HAS_ECC25519 is not set
|
||||
CONFIG_first_card=y
|
||||
CONFIG_first_card_name="MT7986"
|
||||
# CONFIG_AFALG_FALLBACK is not set
|
||||
# CONFIG_MTK_BAND_STEERING is not set
|
||||
# CONFIG_MTK_DEFAULT_5G_PROFILE is not set
|
||||
# CONFIG_MTK_MAC_REPEATER_SUPPORT is not set
|
||||
# CONFIG_MTK_MULTI_PROFILE_SUPPORT is not set
|
||||
# CONFIG_MTK_PCIE_ASPM_DYM_CTRL_SUPPORT is not set
|
||||
# CONFIG_MTK_PRE_CAL_TRX_SET1_SUPPORT is not set
|
||||
# CONFIG_MTK_PRE_CAL_TRX_SET2_SUPPORT is not set
|
||||
# CONFIG_MTK_RLM_CAL_CACHE_SUPPORT is not set
|
||||
# CONFIG_MTK_SNIFFER_RADIOTAP_SUPPORT is not set
|
BIN
dl/datconf-6bb733f7.tar.bz2
Normal file
BIN
dl/datconf-6bb733f7.tar.bz2
Normal file
Binary file not shown.
BIN
dl/mt7981-7.6.7.0-20221209-b9c02f-obj.tar.xz
Normal file
BIN
dl/mt7981-7.6.7.0-20221209-b9c02f-obj.tar.xz
Normal file
Binary file not shown.
BIN
dl/mt7981_20220425-4c770b-obj.tar.xz
Normal file
BIN
dl/mt7981_20220425-4c770b-obj.tar.xz
Normal file
Binary file not shown.
BIN
dl/mt7986-7.6.7.0-20221209-b9c02f-obj.tar.xz
Normal file
BIN
dl/mt7986-7.6.7.0-20221209-b9c02f-obj.tar.xz
Normal file
Binary file not shown.
BIN
dl/mt798x-7.6.6.1-src.tar.xz
Normal file
BIN
dl/mt798x-7.6.6.1-src.tar.xz
Normal file
Binary file not shown.
BIN
dl/warp_20220425-d15d0a-obj.tar.xz
Normal file
BIN
dl/warp_20220425-d15d0a-obj.tar.xz
Normal file
Binary file not shown.
BIN
dl/warp_20221209-3e6ae1-src.tar.xz
Normal file
BIN
dl/warp_20221209-3e6ae1-src.tar.xz
Normal file
Binary file not shown.
2
include/kernel-5.4
Normal file
2
include/kernel-5.4
Normal file
@ -0,0 +1,2 @@
|
||||
LINUX_VERSION-5.4 = .284
|
||||
LINUX_KERNEL_HASH-5.4.284 = 77221ab9aebeac746915c755ec3b7d320f85cd219c63d9c501820fbca1e3b32b
|
@ -162,7 +162,7 @@ generate_network() {
|
||||
static)
|
||||
local ipad
|
||||
case "$1" in
|
||||
lan) ipad=${ipaddr:-"192.168.1.1"} ;;
|
||||
lan) ipad=${ipaddr:-"192.168.6.1"} ;;
|
||||
*) ipad=${ipaddr:-"192.168.$((addr_offset++)).1"} ;;
|
||||
esac
|
||||
|
||||
|
@ -1,51 +1,75 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
#
|
||||
# Copyright (C) 2020 Lean <coolsnowwolf@gmail.com>
|
||||
# Copyright (C) 2021-2023 ImmortalWrt.org
|
||||
# Copyright (C) 2021 ImmortalWrt.org
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=autocore
|
||||
PKG_FLAGS:=nonshared
|
||||
PKG_RELEASE:=42
|
||||
PKG_RELEASE:=$(COMMITCOUNT)
|
||||
|
||||
PKG_CONFIG_DEPENDS:= \
|
||||
CONFIG_TARGET_bcm27xx \
|
||||
CONFIG_TARGET_bcm53xx \
|
||||
CONFIG_TARGET_x86
|
||||
CONFIG_TARGET_mediatek \
|
||||
CONFIG_TARGET_mvebu
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/target.mk
|
||||
|
||||
define Package/autocore
|
||||
TITLE:=auto core loadbalance script.
|
||||
DEPENDS:=@(aarch64||arm||i386||i686||x86_64) \
|
||||
+TARGET_bcm27xx:bcm27xx-utils \
|
||||
define Package/autocore-arm
|
||||
TITLE:=ARM auto core script.
|
||||
MAINTAINER:=CN_SZTL
|
||||
DEPENDS:=@(arm||aarch64) \
|
||||
+TARGET_bcm27xx:bcm27xx-userland \
|
||||
+TARGET_bcm53xx:nvram \
|
||||
+TARGET_x86:ethtool \
|
||||
+TARGET_x86:lm-sensors
|
||||
+(TARGET_mediatek||TARGET_mvebu):mhz
|
||||
VARIANT:=arm
|
||||
endef
|
||||
|
||||
define Package/autocore-x86
|
||||
TITLE:=x86/x64 auto core loadbalance script.
|
||||
MAINTAINER:=Lean / CN_SZTL
|
||||
DEPENDS:=@TARGET_x86 +lm-sensors +ethtool
|
||||
VARIANT:=x86
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
endef
|
||||
|
||||
define Package/autocore/install
|
||||
define Package/autocore/install/Default
|
||||
$(INSTALL_DIR) $(1)/etc/uci-defaults
|
||||
$(INSTALL_BIN) ./files/60-autocore-reload-rpcd $(1)/etc/uci-defaults/
|
||||
|
||||
ifneq ($(filter i386 i686 x86_64, $(ARCH)),)
|
||||
$(INSTALL_DIR) $(1)/etc/init.d
|
||||
$(INSTALL_BIN) ./files/autocore $(1)/etc/init.d/
|
||||
endif
|
||||
$(INSTALL_BIN) ./files/generic/60-autocore-reload-rpcd $(1)/etc/uci-defaults/
|
||||
|
||||
$(INSTALL_DIR) $(1)/sbin
|
||||
$(INSTALL_BIN) ./files/cpuinfo $(1)/sbin/
|
||||
ifneq ($(filter ipq% mediatek% qualcommax%, $(TARGETID)),)
|
||||
$(INSTALL_BIN) ./files/tempinfo $(1)/sbin/
|
||||
endif
|
||||
$(INSTALL_BIN) ./files/generic/cpuinfo $(1)/sbin/
|
||||
|
||||
$(INSTALL_DIR) $(1)/usr/share/rpcd/acl.d
|
||||
$(CP) ./files/luci-mod-status-autocore.json $(1)/usr/share/rpcd/acl.d/
|
||||
$(CP) ./files/generic/luci-mod-status-autocore.json $(1)/usr/share/rpcd/acl.d/
|
||||
|
||||
ifeq ($(filter ipq% mediatek%, $(TARGETID)),)
|
||||
$(INSTALL_BIN) ./files/generic/ethinfo $(1)/sbin/
|
||||
|
||||
$(INSTALL_DIR) $(1)/www/luci-static/resources/view/status/include
|
||||
$(INSTALL_DATA) ./files/generic/21_ethinfo.js $(1)/www/luci-static/resources/view/status/include/
|
||||
endif
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,autocore))
|
||||
define Package/autocore-arm/install
|
||||
$(call Package/autocore/install/Default,$(1))
|
||||
|
||||
ifneq ($(filter ipq% mediatek%, $(TARGETID)),)
|
||||
$(INSTALL_BIN) ./files/arm/tempinfo $(1)/sbin/
|
||||
endif
|
||||
endef
|
||||
|
||||
define Package/autocore-x86/install
|
||||
$(call Package/autocore/install/Default,$(1))
|
||||
|
||||
$(INSTALL_DIR) $(1)/etc/init.d
|
||||
$(INSTALL_BIN) ./files/x86/autocore $(1)/etc/init.d/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,autocore-arm))
|
||||
$(eval $(call BuildPackage,autocore-x86))
|
||||
|
36
package/emortal/autocore/files/arm/tempinfo
Executable file
36
package/emortal/autocore/files/arm/tempinfo
Executable file
@ -0,0 +1,36 @@
|
||||
#!/bin/sh
|
||||
|
||||
IEEE_PATH="/sys/class/ieee80211"
|
||||
THERMAL_PATH="/sys/class/thermal"
|
||||
|
||||
get_mtwifi_temp() {
|
||||
local ifname="$1"
|
||||
local flag
|
||||
if [ -f "/sys/class/net/${ifname}/flags" ]; then
|
||||
flag="$(cat /sys/class/net/${ifname}/flags)"
|
||||
if [ "$((flag & 0x1))" -eq "1" ]; then
|
||||
iwpriv ${ifname} stat | awk '/CurrentTemperature/ {printf("%d°C", $3)}'
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
if grep -Eq "ipq40xx|ipq806x" "/etc/openwrt_release"; then
|
||||
wifi_temp="$(awk '{printf("%.1f°C ", $0 / 1000)}' "$IEEE_PATH"/phy*/device/hwmon/hwmon*/temp1_input | awk '$1=$1')"
|
||||
elif grep -Eq "mediatek" "/etc/openwrt_release"; then
|
||||
wifi_temp1="$(get_mtwifi_temp ra0)"
|
||||
wifi_temp2="$(get_mtwifi_temp rax0)"
|
||||
wifi_temp="$(echo "$wifi_temp1 $wifi_temp2" | xargs)"
|
||||
else
|
||||
wifi_temp="$(awk '{printf("%.1f°C ", $0 / 1000)}' "$IEEE_PATH"/phy*/hwmon*/temp1_input | awk '$1=$1')"
|
||||
fi
|
||||
|
||||
if grep -q "ipq40xx" "/etc/openwrt_release"; then
|
||||
if [ -e "$IEEE_PATH/phy0/hwmon0/temp1_input" ]; then
|
||||
mt76_temp=" $(awk -F ': ' '{print $2}' "$IEEE_PATH/phy0/hwmon0/temp1_input")°C"
|
||||
fi
|
||||
|
||||
echo -n "WiFi:${mt76_temp} ${wifi_temp}"
|
||||
else
|
||||
cpu_temp="$(awk '{printf("%.1f°C", $0 / 1000)}' "$THERMAL_PATH/thermal_zone0/temp")"
|
||||
echo -n "CPU: ${cpu_temp}, WiFi: ${wifi_temp}"
|
||||
fi
|
@ -1,61 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /etc/openwrt_release
|
||||
|
||||
CPUINFO_PATH="/proc/cpuinfo"
|
||||
CPUFREQ_PATH="/sys/devices/system/cpu/cpufreq"
|
||||
THERMAL_PATH="/sys/class/thermal"
|
||||
|
||||
cpu_arch="$(awk -F ': ' '/model name/ {print $2}' "$CPUINFO_PATH" | head -n1)"
|
||||
[ -n "${cpu_arch}" ] || cpu_arch="?"
|
||||
|
||||
case "$DISTRIB_TARGET" in
|
||||
"x86"/*)
|
||||
cpu_cores="$(grep "core id" "$CPUINFO_PATH" | sort -u | wc -l)C $(grep -c "processor" "$CPUINFO_PATH")T" ;;
|
||||
*)
|
||||
cpu_cores="$(grep -c "processor" "$CPUINFO_PATH")" ;;
|
||||
esac
|
||||
|
||||
case "$DISTRIB_TARGET" in
|
||||
"bcm27xx"/*)
|
||||
cpu_freq="$(( $(vcgencmd measure_clock arm | awk -F '=' '{print $2}') / 1000000 ))Mhz" ;;
|
||||
"bcm53xx"/*)
|
||||
cpu_freq="$(nvram get clkfreq | awk -F ',' '{print $1}')MHz" ;;
|
||||
"rockchip"/*)
|
||||
cpu_freq="$(awk '{printf("%.fMHz ", $0 / 1000)}' "$CPUFREQ_PATH"/policy*/cpuinfo_cur_freq | awk '$1=$1')" ;;
|
||||
"x86"/*)
|
||||
cpu_freq="$(awk -F ': ' '/MHz/ {print $2}' "$CPUINFO_PATH" | head -n1)MHz" ;;
|
||||
*)
|
||||
[ ! -e "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq" ] || \
|
||||
cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$DISTRIB_TARGET" in
|
||||
"bcm27xx"/*)
|
||||
cpu_temp="$(vcgencmd measure_temp | awk -F '=' '{print $2}' | awk -F "'" '{print $1}')°C" ;;
|
||||
"ipq40xx"/*|"ipq806x"/*|"mediatek"/*|"qualcommax"/*) ;;
|
||||
"x86"/*)
|
||||
if [ -n "$(uci -q get "wechatpush.config.server_host")" ]; then
|
||||
cpu_temp="$(/usr/share/wechatpush/wechatpush soc)°C"
|
||||
elif grep -q "GenuineIntel" "/proc/cpuinfo"; then
|
||||
cpu_temp="$(sensors "coretemp-*" 2>"/dev/null" | grep -E "(Package id |Core )" | grep -Eo "\+[0-9.]*°C" | head -n1 | tr -d "+")"
|
||||
elif grep -q "AuthenticAMD" "/proc/cpuinfo"; then
|
||||
cpu_temp="$(sensors "k*temp-*" 2>"/dev/null" | awk '/Tdie/ {print $2}' | head -n1 | tr -d "+")"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
[ ! -e "$THERMAL_PATH/thermal_zone0/temp" ] || \
|
||||
cpu_temp="$(awk '{printf("%.1f°C", $0 / 1000)}' "$THERMAL_PATH/thermal_zone0/temp")"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -z "$cpu_freq" ] && [ -n "$cpu_temp" ]; then
|
||||
echo -n "$cpu_arch x $cpu_cores ($cpu_temp)"
|
||||
elif [ -z "$cpu_temp" ] && [ -n "$cpu_freq" ]; then
|
||||
echo -n "$cpu_arch x $cpu_cores ($cpu_freq)"
|
||||
elif [ -n "$cpu_temp" ] && [ -n "$cpu_freq" ]; then
|
||||
echo -n "$cpu_arch x $cpu_cores ($cpu_freq, ${cpu_temp})"
|
||||
else
|
||||
echo -n "$cpu_arch x $cpu_cores"
|
||||
fi
|
60
package/emortal/autocore/files/generic/21_ethinfo.js
Normal file
60
package/emortal/autocore/files/generic/21_ethinfo.js
Normal file
@ -0,0 +1,60 @@
|
||||
'use strict';
|
||||
'require baseclass';
|
||||
'require rpc';
|
||||
|
||||
var callLuciETHInfo = rpc.declare({
|
||||
object: 'luci',
|
||||
method: 'getETHInfo',
|
||||
expect: { '': {} }
|
||||
});
|
||||
|
||||
return L.Class.extend({
|
||||
title: _('Ethernet Information'),
|
||||
|
||||
load: function() {
|
||||
return Promise.all([
|
||||
L.resolveDefault(callLuciETHInfo(), {})
|
||||
]);
|
||||
},
|
||||
|
||||
render: function(data) {
|
||||
var ethinfo = Array.isArray(data[0].ethinfo) ? data[0].ethinfo : [];
|
||||
|
||||
var table = E('table', { 'class': 'table' }, [
|
||||
E('tr', { 'class': 'tr table-titles' }, [
|
||||
E('th', { 'class': 'th' }, _('Ethernet Name')),
|
||||
E('th', { 'class': 'th' }, _('Link Status')),
|
||||
E('th', { 'class': 'th' }, _('Speed')),
|
||||
E('th', { 'class': 'th' }, _('Duplex'))
|
||||
])
|
||||
]);
|
||||
|
||||
cbi_update_table(table, ethinfo.map(function(info) {
|
||||
var exp1;
|
||||
var exp2;
|
||||
|
||||
if (info.status == "yes")
|
||||
exp1 = _('Link Up');
|
||||
else if (info.status == "no")
|
||||
exp1 = _('Link Down');
|
||||
|
||||
if (info.duplex == "Full")
|
||||
exp2 = _('Full Duplex');
|
||||
else if (info.duplex == "Half")
|
||||
exp2 = _('Half Duplex');
|
||||
else
|
||||
exp2 = _('-');
|
||||
|
||||
return [
|
||||
info.name,
|
||||
exp1,
|
||||
info.speed,
|
||||
exp2
|
||||
];
|
||||
}));
|
||||
|
||||
return E([
|
||||
table
|
||||
]);
|
||||
}
|
||||
});
|
68
package/emortal/autocore/files/generic/cpuinfo
Executable file
68
package/emortal/autocore/files/generic/cpuinfo
Executable file
@ -0,0 +1,68 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /etc/openwrt_release
|
||||
|
||||
CPUINFO_PATH="/proc/cpuinfo"
|
||||
CPUFREQ_PATH="/sys/devices/system/cpu/cpufreq"
|
||||
THERMAL_PATH="/sys/class/thermal"
|
||||
|
||||
cpu_arch="$(awk -F ': ' '/model name/ {print $2}' "$CPUINFO_PATH" | head -n1)"
|
||||
[ -n "${cpu_arch}" ] || cpu_arch="?"
|
||||
|
||||
case "$DISTRIB_TARGET" in
|
||||
"x86"/*)
|
||||
cpu_cores="$(grep "core id" "$CPUINFO_PATH" | sort -u | wc -l)C $(grep -c "processor" "$CPUINFO_PATH")T" ;;
|
||||
*)
|
||||
cpu_cores="$(grep -c "processor" "$CPUINFO_PATH")" ;;
|
||||
esac
|
||||
|
||||
case "$DISTRIB_TARGET" in
|
||||
"bcm27xx"/*)
|
||||
cpu_freq="$(( $(vcgencmd measure_clock arm | awk -F '=' '{print $2}') / 1000000 ))Mhz" ;;
|
||||
"bcm53xx"/*)
|
||||
cpu_freq="$(nvram get clkfreq | awk -F ',' '{print $1}')MHz" ;;
|
||||
"mediatek"/*|"mvebu"/*)
|
||||
cpu_freq="" ;;
|
||||
"mvebu/cortexa72")
|
||||
cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
|
||||
big_cpu_freq="$(awk '{printf("%.fMHz ", $0 / 1000)}' "$CPUFREQ_PATH/policy2/cpuinfo_cur_freq")"
|
||||
;;
|
||||
"rockchip"/*)
|
||||
cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
|
||||
[ ! -e "$CPUFREQ_PATH/policy4/cpuinfo_cur_freq" ] || \
|
||||
big_cpu_freq="$(awk '{printf("%.fMHz ", $0 / 1000)}' "$CPUFREQ_PATH/policy4/cpuinfo_cur_freq")"
|
||||
;;
|
||||
"x86"/*)
|
||||
cpu_freq="$(awk -F ': ' '/MHz/ {print $2}' "$CPUINFO_PATH" | head -n1)MHz" ;;
|
||||
*)
|
||||
[ ! -e "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq" ] || \
|
||||
cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$DISTRIB_TARGET" in
|
||||
"bcm27xx"/*)
|
||||
cpu_temp="$(vcgencmd measure_temp | awk -F '=' '{print $2}' | awk -F "'" '{print $1}')°C" ;;
|
||||
"x86"/*)
|
||||
if grep -q "GenuineIntel" "/proc/cpuinfo"; then
|
||||
cpu_temp="$(sensors "coretemp-*" 2>"/dev/null" | grep -E "(Package id |Core )" | grep -Eo "\+[0-9.]*°C" | head -n1 | tr -d "+")"
|
||||
elif grep -q "AuthenticAMD" "/proc/cpuinfo"; then
|
||||
cpu_temp="$(sensors "k*temp-*" 2>"/dev/null" | awk '/Tdie/ {print $2}' | head -n1 | tr -d "+")"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
[ ! -e "$THERMAL_PATH/thermal_zone0/temp" ] || \
|
||||
cpu_temp="$(awk '{printf("%.1f°C", $0 / 1000)}' "$THERMAL_PATH/thermal_zone0/temp")"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -z "$big_cpu_freq$cpu_freq" ] && [ -n "$cpu_temp" ]; then
|
||||
echo -n "$cpu_arch x $cpu_cores ($cpu_temp)"
|
||||
elif [ -z "$cpu_temp" ] && [ -n "$big_cpu_freq$cpu_freq" ] || \
|
||||
grep -Eq "ipq|mediatek" "/etc/openwrt_release"; then
|
||||
echo -n "$cpu_arch x $cpu_cores ($big_cpu_freq$cpu_freq)"
|
||||
elif [ -n "$cpu_temp" ] && [ -n "$big_cpu_freq$cpu_freq" ]; then
|
||||
echo -n "$cpu_arch x $cpu_cores ($big_cpu_freq$cpu_freq, ${cpu_temp})"
|
||||
else
|
||||
echo -n "$cpu_arch x $cpu_cores"
|
||||
fi
|
65
package/emortal/autocore/files/generic/ethinfo
Executable file
65
package/emortal/autocore/files/generic/ethinfo
Executable file
@ -0,0 +1,65 @@
|
||||
#!/usr/bin/lua
|
||||
-- Copyright (C) 2022 Tianling Shen <cnsztl@immortalwrt.org>
|
||||
|
||||
local util = require "luci.util"
|
||||
local jsonc = require "luci.jsonc"
|
||||
|
||||
local eth_info = {}
|
||||
local ifname, stat
|
||||
|
||||
for ifname, stat in pairs(util.ubus("network.device", "status")) do
|
||||
if ifname:match("^(lan%d+)$") == ifname then
|
||||
local status, speed, duplex
|
||||
|
||||
status = stat.carrier and "yes" or "no"
|
||||
|
||||
if not stat.carrier or not stat.speed or stat.speed:sub(1, 1) == "-" then
|
||||
speed = "-"
|
||||
else
|
||||
speed = stat.speed:sub(1, -2) .. "Mb/s"
|
||||
end
|
||||
|
||||
if speed == '-' then
|
||||
duplex = "-"
|
||||
elseif stat.speed:sub(-1) == "F" then
|
||||
duplex = "Full"
|
||||
else
|
||||
duplex = "Half"
|
||||
end
|
||||
|
||||
eth_info[#eth_info+1] = { name = ifname, status = status,
|
||||
speed = speed, duplex = duplex }
|
||||
end
|
||||
end
|
||||
|
||||
for ifname, stat in pairs(util.ubus("network.device", "status")) do
|
||||
if ifname:match("^(wan)$") == ifname then
|
||||
local status, speed, duplex
|
||||
|
||||
status = stat.carrier and "yes" or "no"
|
||||
|
||||
if not stat.carrier or not stat.speed or stat.speed:sub(1, 1) == "-" then
|
||||
speed = "-"
|
||||
else
|
||||
speed = stat.speed:sub(1, -2) .. "Mb/s"
|
||||
end
|
||||
|
||||
if speed == '-' then
|
||||
duplex = "-"
|
||||
elseif stat.speed:sub(-1) == "F" then
|
||||
duplex = "Full"
|
||||
else
|
||||
duplex = "Half"
|
||||
end
|
||||
|
||||
eth_info[#eth_info+1] = { name = ifname, status = status,
|
||||
speed = speed, duplex = duplex }
|
||||
end
|
||||
end
|
||||
|
||||
table.sort(eth_info,
|
||||
function(a, b)
|
||||
return a.name < b.name
|
||||
end)
|
||||
|
||||
print(jsonc.stringify(eth_info))
|
@ -0,0 +1,10 @@
|
||||
{
|
||||
"luci-mod-status-autocore": {
|
||||
"description": "Grant access to autocore",
|
||||
"read": {
|
||||
"ubus": {
|
||||
"luci": [ "getCPUInfo", "getETHInfo", "getTempInfo" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,10 +0,0 @@
|
||||
{
|
||||
"luci-mod-status-autocore": {
|
||||
"description": "Grant access to autocore",
|
||||
"read": {
|
||||
"ubus": {
|
||||
"luci": [ "getCPUInfo", "getTempInfo" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,40 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /etc/openwrt_release
|
||||
|
||||
IEEE_PATH="/sys/class/ieee80211"
|
||||
THERMAL_PATH="/sys/class/thermal"
|
||||
|
||||
case "$DISTRIB_TARGET" in
|
||||
ipq40xx/*|ipq806x/*)
|
||||
wifi_temp="$(awk '{printf("%.1f°C ", $0 / 1000)}' "$IEEE_PATH"/phy*/device/hwmon/hwmon*/temp1_input 2>"/dev/null" | awk '$1=$1')"
|
||||
;;
|
||||
mediatek/mt7622)
|
||||
wifi_temp="$(awk '{printf("%.1f°C ", $0 / 1000)}' "$IEEE_PATH"/wl*/hwmon*/temp1_input 2>"/dev/null" | awk '$1=$1')"
|
||||
;;
|
||||
*)
|
||||
wifi_temp="$(awk '{printf("%.1f°C ", $0 / 1000)}' "$IEEE_PATH"/phy*/hwmon*/temp1_input 2>"/dev/null" | awk '$1=$1')"
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$DISTRIB_TARGET" in
|
||||
ipq40xx/*)
|
||||
if [ -e "$IEEE_PATH/phy0/hwmon0/temp1_input" ]; then
|
||||
mt76_temp="$(awk -F ': ' '{print $2}' "$IEEE_PATH/phy0/hwmon0/temp1_input" 2>"/dev/null")°C"
|
||||
fi
|
||||
[ -z "$mt76_temp" ] || wifi_temp="${wifi_temp:+$wifi_temp }$mt76_temp"
|
||||
;;
|
||||
*)
|
||||
cpu_temp="$(awk '{printf("%.1f°C", $0 / 1000)}' "$THERMAL_PATH/thermal_zone0/temp" 2>"/dev/null")"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -n "$cpu_temp" ] && [ -z "$wifi_temp" ]; then
|
||||
echo -n "CPU: $cpu_temp"
|
||||
elif [ -z "$cpu_temp" ] && [ -n "$wifi_temp" ]; then
|
||||
echo -n "WiFi: $wifi_temp"
|
||||
elif [ -n "$cpu_temp" ] && [ -n "$wifi_temp" ]; then
|
||||
echo -n "CPU: $cpu_temp, WiFi: $wifi_temp"
|
||||
else
|
||||
echo -n "No temperature info"
|
||||
fi
|
43
package/firmware/bpir3_mini-properties/Makefile
Normal file
43
package/firmware/bpir3_mini-properties/Makefile
Normal file
@ -0,0 +1,43 @@
|
||||
#
|
||||
# Copyright (C) 2016 MediaTek
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=bpir3_mini-properties
|
||||
PKG_RELEASE:=1
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/bpir3_mini-properties
|
||||
SECTION:=firmware
|
||||
CATEGORY:=Firmware
|
||||
TITLE:=PHYs firmware & fan control for BPI-R3-MINI
|
||||
endef
|
||||
|
||||
define Package/bpir3_mini-properties/description
|
||||
This package install PHYs firmware & fan control for BPI-R3-MINI.
|
||||
endef
|
||||
|
||||
define Package/bpir3_mini-properties/config
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
endef
|
||||
|
||||
define Package/bpir3_mini-properties/install
|
||||
$(INSTALL_DIR) $(1)/sbin/
|
||||
$(INSTALL_DIR) $(1)/etc/init.d/
|
||||
$(INSTALL_DIR) $(1)/lib/firmware/
|
||||
$(INSTALL_BIN) ./files/bpir3_fanspeed $(1)/sbin/
|
||||
$(INSTALL_BIN) ./files/fanspeed.init $(1)/etc/init.d/fanspeed
|
||||
$(INSTALL_BIN) ./files/ltecalling.init $(1)/etc/init.d/ltecalling
|
||||
$(INSTALL_DATA) ./files/EthMD32.dm.bin $(1)/lib/firmware/
|
||||
$(INSTALL_DATA) ./files/EthMD32.DSP.bin $(1)/lib/firmware/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,bpir3_mini-properties))
|
BIN
package/firmware/bpir3_mini-properties/files/EthMD32.DSP.bin
Normal file
BIN
package/firmware/bpir3_mini-properties/files/EthMD32.DSP.bin
Normal file
Binary file not shown.
BIN
package/firmware/bpir3_mini-properties/files/EthMD32.dm.bin
Normal file
BIN
package/firmware/bpir3_mini-properties/files/EthMD32.dm.bin
Normal file
Binary file not shown.
40
package/firmware/bpir3_mini-properties/files/bpir3_fanspeed
Executable file
40
package/firmware/bpir3_mini-properties/files/bpir3_fanspeed
Executable file
@ -0,0 +1,40 @@
|
||||
#!/bin/sh
|
||||
|
||||
### enable fan ###
|
||||
echo 0 > /sys/class/pwm/pwmchip0/export
|
||||
echo 10000 > /sys/class/pwm/pwmchip0/pwm0/period
|
||||
echo 7000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
|
||||
echo normal > /sys/class/pwm/pwmchip0/pwm0/polarity
|
||||
echo 1 > /sys/class/pwm/pwmchip0/pwm0/enable
|
||||
|
||||
while :
|
||||
do
|
||||
sleep 20
|
||||
result=`cat /sys/class/thermal/thermal_zone0/temp`
|
||||
|
||||
temperature=$((result))
|
||||
#echo $temperature
|
||||
if [ ${temperature} -le 58000 ]; then
|
||||
echo 5000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
|
||||
fi
|
||||
|
||||
if [ ${temperature} -ge 58000 ]; then
|
||||
echo 5000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
|
||||
fi
|
||||
|
||||
if [ ${temperature} -ge 62000 ]; then
|
||||
echo 4500 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
|
||||
fi
|
||||
|
||||
if [ ${temperature} -ge 75000 ]; then
|
||||
echo 3700 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
|
||||
fi
|
||||
|
||||
if [ ${temperature} -ge 80000 ]; then
|
||||
echo 2500 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
|
||||
fi
|
||||
|
||||
if [ ${temperature} -ge 85000 ]; then
|
||||
echo 1000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
|
||||
fi
|
||||
done
|
16
package/firmware/bpir3_mini-properties/files/fanspeed.init
Executable file
16
package/firmware/bpir3_mini-properties/files/fanspeed.init
Executable file
@ -0,0 +1,16 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
START=99
|
||||
USE_PROCD=1
|
||||
|
||||
start_service() {
|
||||
if [ ! -f /sys/class/pwm/pwmchip0/export ]; then
|
||||
return
|
||||
fi
|
||||
|
||||
procd_open_instance
|
||||
procd_set_param stdout 1
|
||||
procd_set_param stderr 1
|
||||
procd_set_param command "/sbin/bpir3_fanspeed"
|
||||
procd_close_instance
|
||||
}
|
14
package/firmware/bpir3_mini-properties/files/ltecalling.init
Executable file
14
package/firmware/bpir3_mini-properties/files/ltecalling.init
Executable file
@ -0,0 +1,14 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
START=80
|
||||
USE_PROCD=1
|
||||
|
||||
start_service() {
|
||||
if [ -f /sys/class/gpio/export ]; then
|
||||
### enable M.2 5G RM500U-CN Module Power ###
|
||||
echo 443 > /sys/class/gpio/export
|
||||
echo 431 > /sys/class/gpio/export
|
||||
echo out > /sys/class/gpio/gpio431/direction
|
||||
echo 0 > /sys/class/gpio/gpio431/value
|
||||
fi
|
||||
}
|
46
package/kernel/exfat/Makefile
Normal file
46
package/kernel/exfat/Makefile
Normal file
@ -0,0 +1,46 @@
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=exfat
|
||||
PKG_VERSION:=6.0.0
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/namjaejeon/linux-exfat-oot/tar.gz/$(PKG_VERSION)?
|
||||
PKG_HASH:=08513c4ad7bceda6570435f54e76fc91369cbf404968838bdd3f566495f20f36
|
||||
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/linux-exfat-oot-$(PKG_VERSION)
|
||||
|
||||
PKG_MAINTAINER:=
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define KernelPackage/fs-exfat
|
||||
SECTION:=kernel
|
||||
CATEGORY:=Kernel modules
|
||||
SUBMENU:=Filesystems
|
||||
TITLE:=exFAT kernel module
|
||||
URL:=https://github.com/namjaejeon/linux-exfat-oot
|
||||
FILES:=$(PKG_BUILD_DIR)/exfat.ko
|
||||
AUTOLOAD:=$(call AutoProbe,exfat)
|
||||
DEPENDS:= +kmod-nls-base
|
||||
endef
|
||||
|
||||
define KernelPackage/exfat/description
|
||||
This package provides the kernel module for exfat.
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
$(KERNEL_MAKE) M="$(PKG_BUILD_DIR)" \
|
||||
EXTRA_CFLAGS="$(EXTRA_CFLAGS)" \
|
||||
$(PKG_EXTRA_KCONFIG) \
|
||||
CONFIG_EXFAT_FS=m \
|
||||
modules
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,fs-exfat))
|
@ -538,9 +538,8 @@ static int gpio_keys_button_probe(struct platform_device *pdev,
|
||||
struct device_node *child =
|
||||
of_get_next_child(dev->of_node, prev);
|
||||
|
||||
bdata->gpiod = devm_fwnode_gpiod_get(dev,
|
||||
of_fwnode_handle(child), NULL, GPIOD_IN,
|
||||
desc);
|
||||
bdata->gpiod = devm_gpiod_get_from_of_node(dev,
|
||||
child, "gpios", 0, GPIOD_IN, desc);
|
||||
|
||||
prev = child;
|
||||
}
|
||||
|
74
package/kernel/ksmbd/Makefile
Normal file
74
package/kernel/ksmbd/Makefile
Normal file
@ -0,0 +1,74 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=ksmbd
|
||||
PKG_VERSION:=3.5.0
|
||||
PKG_RELEASE:=$(AUTORELEASE)
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/cifsd-team/cifsd/tar.gz/$(PKG_VERSION)?
|
||||
PKG_HASH:= ceb11850bee8ff3575228e1b691d83d710cd9cb586bdaf8e5769d06b82eaaf05
|
||||
|
||||
PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com>
|
||||
PKG_LICENSE:=GPL-2.0-or-later
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
TAR_OPTIONS+= --strip-components 1
|
||||
TAR_CMD=$(HOST_TAR) -C $(1) $(TAR_OPTIONS)
|
||||
|
||||
define KernelPackage/fs-ksmbd
|
||||
SUBMENU:=Filesystems
|
||||
TITLE:=SMB kernel server support
|
||||
URL:=https://github.com/cifsd-team/cifsd
|
||||
FILES:=$(PKG_BUILD_DIR)/ksmbd.ko
|
||||
DEPENDS:= \
|
||||
+kmod-asn1-decoder \
|
||||
+kmod-nls-base \
|
||||
+kmod-nls-utf8 \
|
||||
+kmod-crypto-md4 \
|
||||
+kmod-crypto-md5 \
|
||||
+kmod-crypto-hmac \
|
||||
+kmod-crypto-ecb \
|
||||
+kmod-crypto-des \
|
||||
+kmod-crypto-sha256 \
|
||||
+kmod-crypto-cmac \
|
||||
+kmod-crypto-sha512 \
|
||||
+kmod-crypto-aead \
|
||||
+kmod-crypto-ccm \
|
||||
+kmod-crypto-gcm \
|
||||
+kmod-fs-nfsd
|
||||
endef
|
||||
|
||||
# The last DEPENDS entry is a hack in order to get CONFIG_OID_REGISTRY
|
||||
# which it seems can't be selected independently. Some bug in either base or upstream.
|
||||
|
||||
define KernelPackage/fs-ksmbd/description
|
||||
Ksmbd is an In-kernel SMBv(1)2/3 fileserver.
|
||||
It's an implementation of the SMB protocol in kernel space for sharing files and IPC services over network.
|
||||
endef
|
||||
|
||||
define KernelPackage/fs-ksmbd/config
|
||||
config KSMBD_SMB_INSECURE_SERVER
|
||||
bool "Support for insecure SMB1/CIFS and SMB2.0 protocols"
|
||||
depends on PACKAGE_kmod-fs-ksmbd
|
||||
help
|
||||
This enables deprecated insecure protocols dialects: SMB1/CIFS and SMB2.0.
|
||||
default y
|
||||
endef
|
||||
|
||||
ifeq ($(CONFIG_KSMBD_SMB_INSECURE_SERVER),y)
|
||||
PKG_EXTRA_KCONFIG:=CONFIG_SMB_INSECURE_SERVER=y
|
||||
EXTRA_CFLAGS += -DCONFIG_SMB_INSECURE_SERVER=1
|
||||
endif
|
||||
|
||||
define Build/Compile
|
||||
$(KERNEL_MAKE) M="$(PKG_BUILD_DIR)" \
|
||||
EXTRA_CFLAGS="$(EXTRA_CFLAGS)" \
|
||||
$(PKG_EXTRA_KCONFIG) \
|
||||
CONFIG_SMB_SERVER=m \
|
||||
modules
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,fs-ksmbd))
|
11
package/kernel/ksmbd/patches/01-keep_kmod_metadata.patch
Normal file
11
package/kernel/ksmbd/patches/01-keep_kmod_metadata.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- a/glob.h
|
||||
+++ b/glob.h
|
||||
@@ -7,6 +7,8 @@
|
||||
#ifndef __KSMBD_GLOB_H
|
||||
#define __KSMBD_GLOB_H
|
||||
|
||||
+#undef CONFIG_MODULE_STRIPPED
|
||||
+
|
||||
#include <linux/ctype.h>
|
||||
|
||||
#include "unicode.h"
|
@ -20,8 +20,7 @@ define KernelPackage/leds-ws2812b
|
||||
FILES:= \
|
||||
$(PKG_BUILD_DIR)/leds-ws2812b.ko
|
||||
AUTOLOAD:=$(call AutoProbe,leds-ws2812b,1)
|
||||
DEPENDS:=@TARGET_mediatek_filogic
|
||||
endef
|
||||
endef
|
||||
|
||||
define KernelPackage/leds-ws2812b/description
|
||||
LED support for driving WS2812B (NeoPixel) using SPI MOSI.
|
||||
|
@ -12,12 +12,10 @@ PKG_NAME:=kernel
|
||||
PKG_FLAGS:=hold
|
||||
|
||||
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/packages
|
||||
SUBTARGETS = $(sort $(filter-out feeds,$(notdir $(wildcard $(TOPDIR)/target/linux/* $(TOPDIR)/target/linux/feeds/*))))
|
||||
SUBTARGET_MODULES = $(foreach t,$(SUBTARGETS),$(firstword $(wildcard $(TOPDIR)/target/linux/feeds/$(t)/modules.mk $(TOPDIR)/target/linux/$(t)/modules.mk)))
|
||||
SCAN_DEPS=modules/*.mk $(SUBTARGET_MODULES) $(TOPDIR)/include/netfilter.mk
|
||||
SCAN_DEPS=modules/*.mk $(TOPDIR)/target/linux/*/modules.mk $(TOPDIR)/include/netfilter.mk
|
||||
|
||||
PKG_LICENSE:=GPL-2.0-only
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_LICENSE_FILES:=
|
||||
|
||||
export SHELL:=/bin/sh
|
||||
.ONESHELL:
|
||||
@ -26,7 +24,7 @@ export SHELL:=/bin/sh
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
ifeq ($(DUMP),)
|
||||
STAMP_BUILT:=$(STAMP_BUILT)_$(shell $(SCRIPT_DIR)/kconfig.pl $(LINUX_DIR)/.config | $(MKHASH) md5)
|
||||
STAMP_BUILT:=$(STAMP_BUILT)_$(shell $(SCRIPT_DIR)/kconfig.pl $(LINUX_DIR)/.config | mkhash md5)
|
||||
-include $(LINUX_DIR)/.config
|
||||
endif
|
||||
|
||||
@ -37,9 +35,6 @@ endef
|
||||
define Build/Configure
|
||||
endef
|
||||
|
||||
define Build/Quilt
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
endef
|
||||
|
||||
@ -52,18 +47,13 @@ define Package/kernel
|
||||
CATEGORY:=Kernel
|
||||
DEFAULT:=y
|
||||
TITLE:=Virtual kernel package
|
||||
VERSION:=$(LINUX_VERSION)~$(LINUX_VERMAGIC)-r$(LINUX_RELEASE)
|
||||
VERSION:=$(LINUX_VERSION)-$(LINUX_RELEASE)-$(LINUX_VERMAGIC)
|
||||
URL:=http://www.kernel.org/
|
||||
PKG_FLAGS:=nonshared
|
||||
endef
|
||||
|
||||
define Package/kernel/install
|
||||
$(INSTALL_DIR) $(1)/$(MODULES_SUBDIR)
|
||||
$(INSTALL_DATA) $(LINUX_DIR)/modules.builtin $(1)/$(MODULES_SUBDIR)
|
||||
$(SED) 's,.*/,,' $(1)/$(MODULES_SUBDIR)/modules.builtin
|
||||
strings $(LINUX_DIR)/modules.builtin.modinfo | \
|
||||
grep -E -v "\.(file$(if CONFIG_MODULE_STRIPPED,|parmtype))=" | \
|
||||
tr '\n' '\0' > $(1)/$(MODULES_SUBDIR)/modules.builtin.modinfo
|
||||
# nothing to do
|
||||
endef
|
||||
|
||||
define Package/kernel/extra_provides
|
||||
@ -73,4 +63,4 @@ endef
|
||||
$(eval $(if $(DUMP),,$(call BuildPackage,kernel)))
|
||||
|
||||
include $(sort $(wildcard ./modules/*.mk))
|
||||
-include $(SUBTARGET_MODULES)
|
||||
-include $(TOPDIR)/target/linux/*/modules.mk
|
||||
|
@ -12,7 +12,7 @@ config_get teql $INTERFACE teql
|
||||
|
||||
if [ "$teql" != "" ]; then
|
||||
logger Adding device $DEVICE to TEQL master $teql
|
||||
modprobe sch_teql
|
||||
insmod sch_teql
|
||||
tc qdisc add dev $DEVICE root $teql
|
||||
|
||||
# The kernel doesn't let us bring it up until it has at least one
|
||||
|
@ -7,3 +7,6 @@ net.netfilter.nf_conntrack_tcp_timeout_established=7440
|
||||
net.netfilter.nf_conntrack_udp_timeout=60
|
||||
net.netfilter.nf_conntrack_udp_timeout_stream=180
|
||||
net.netfilter.nf_conntrack_helper=1
|
||||
net.netfilter.nf_conntrack_buckets=65536
|
||||
net.netfilter.nf_conntrack_expect_max=16384
|
||||
net.netfilter.nf_conntrack_max=100000
|
||||
|
@ -65,7 +65,7 @@ define KernelPackage/ata-ahci-platform
|
||||
$(LINUX_DIR)/drivers/ata/ahci_platform.ko \
|
||||
$(LINUX_DIR)/drivers/ata/libahci_platform.ko
|
||||
AUTOLOAD:=$(call AutoLoad,40,libahci libahci_platform ahci_platform,1)
|
||||
$(call AddDepends/ata,@TARGET_ipq806x||TARGET_layerscape||TARGET_rockchip||TARGET_sunxi)
|
||||
$(call AddDepends/ata,@TARGET_ipq806x||TARGET_layerscape||TARGET_sunxi)
|
||||
endef
|
||||
|
||||
define KernelPackage/ata-ahci-platform/description
|
||||
@ -89,18 +89,21 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,ata-artop))
|
||||
|
||||
define KernelPackage/ata-ahci-dwc
|
||||
TITLE:=Synopsys DWC AHCI SATA
|
||||
KCONFIG:= \
|
||||
CONFIG_AHCI_DWC \
|
||||
CONFIG_SATA_HOST=y
|
||||
FILES:=$(LINUX_DIR)/drivers/ata/ahci_dwc.ko
|
||||
DEPENDS:=+kmod-ata-ahci-platform
|
||||
AUTOLOAD:=$(call AutoLoad,41,ahci_dwc,1)
|
||||
$(call AddDepends/ata,@TARGET_rockchip)
|
||||
|
||||
define KernelPackage/ata-marvell-sata
|
||||
TITLE:=Marvell Serial ATA support
|
||||
KCONFIG:=CONFIG_SATA_MV
|
||||
FILES:=$(LINUX_DIR)/drivers/ata/sata_mv.ko
|
||||
AUTOLOAD:=$(call AutoLoad,41,sata_mv,1)
|
||||
$(call AddDepends/ata)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,ata-ahci-dwc))
|
||||
define KernelPackage/ata-marvell-sata/description
|
||||
SATA support for marvell chipsets
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,ata-marvell-sata))
|
||||
|
||||
|
||||
define KernelPackage/ata-nvidia-sata
|
||||
TITLE:=Nvidia Serial ATA support
|
||||
@ -215,7 +218,7 @@ $(eval $(call KernelPackage,dax))
|
||||
define KernelPackage/dm
|
||||
SUBMENU:=$(BLOCK_MENU)
|
||||
TITLE:=Device Mapper
|
||||
DEPENDS:=+kmod-crypto-manager +kmod-dax +KERNEL_KEYS:kmod-keys-encrypted
|
||||
DEPENDS:=+kmod-crypto-manager +kmod-dax
|
||||
# All the "=n" are unnecessary, they're only there
|
||||
# to stop the config from asking the question.
|
||||
# MIRROR is M because I've needed it for pvmove.
|
||||
@ -240,7 +243,7 @@ define KernelPackage/dm
|
||||
$(LINUX_DIR)/drivers/md/dm-log.ko \
|
||||
$(LINUX_DIR)/drivers/md/dm-mirror.ko \
|
||||
$(LINUX_DIR)/drivers/md/dm-region-hash.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,dm-mod dm-log dm-region-hash dm-mirror dm-crypt,1)
|
||||
AUTOLOAD:=$(call AutoLoad,30,dm-mod dm-log dm-region-hash dm-mirror dm-crypt)
|
||||
endef
|
||||
|
||||
define KernelPackage/dm/description
|
||||
@ -275,7 +278,7 @@ define KernelPackage/iscsi-initiator
|
||||
CONFIG_INET \
|
||||
CONFIG_SCSI_LOWLEVEL=y \
|
||||
CONFIG_ISCSI_TCP \
|
||||
CONFIG_SCSI_ISCSI_ATTRS
|
||||
CONFIG_SCSI_ISCSI_ATTRS=y
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/scsi/iscsi_tcp.ko \
|
||||
$(LINUX_DIR)/drivers/scsi/libiscsi.ko \
|
||||
@ -462,7 +465,7 @@ define KernelPackage/loop
|
||||
CONFIG_BLK_DEV_LOOP \
|
||||
CONFIG_BLK_DEV_CRYPTOLOOP=n
|
||||
FILES:=$(LINUX_DIR)/drivers/block/loop.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,loop,1)
|
||||
AUTOLOAD:=$(call AutoLoad,30,loop)
|
||||
endef
|
||||
|
||||
define KernelPackage/loop/description
|
||||
@ -508,16 +511,16 @@ $(eval $(call KernelPackage,nbd))
|
||||
define KernelPackage/nvme
|
||||
SUBMENU:=$(BLOCK_MENU)
|
||||
TITLE:=NVM Express block device
|
||||
DEPENDS:=@PCI_SUPPORT +kmod-hwmon-core
|
||||
DEPENDS:=@PCI_SUPPORT
|
||||
KCONFIG:= \
|
||||
CONFIG_NVME_CORE \
|
||||
CONFIG_BLK_DEV_NVME \
|
||||
CONFIG_NVME_MULTIPATH=n \
|
||||
CONFIG_NVME_HWMON=y
|
||||
CONFIG_NVME_HWMON=n
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/nvme/host/nvme-core.ko \
|
||||
$(LINUX_DIR)/drivers/nvme/host/nvme.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,nvme-core nvme,1)
|
||||
AUTOLOAD:=$(call AutoLoad,30,nvme-core nvme)
|
||||
endef
|
||||
|
||||
define KernelPackage/nvme/description
|
||||
@ -533,13 +536,11 @@ define KernelPackage/scsi-core
|
||||
TITLE:=SCSI device support
|
||||
KCONFIG:= \
|
||||
CONFIG_SCSI \
|
||||
CONFIG_SCSI_COMMON \
|
||||
CONFIG_BLK_DEV_SD
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/scsi/scsi_mod.ko \
|
||||
$(LINUX_DIR)/drivers/scsi/scsi_common.ko \
|
||||
$(LINUX_DIR)/drivers/scsi/sd_mod.ko
|
||||
AUTOLOAD:=$(call AutoLoad,40,scsi_mod scsi_common sd_mod,1)
|
||||
AUTOLOAD:=$(call AutoLoad,40,scsi_mod sd_mod,1)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,scsi-core))
|
||||
@ -559,24 +560,16 @@ endef
|
||||
$(eval $(call KernelPackage,scsi-generic))
|
||||
|
||||
|
||||
define KernelPackage/cdrom
|
||||
TITLE:=Kernel library module for CD / DVD drives
|
||||
KCONFIG:=CONFIG_CDROM
|
||||
HIDDEN:=1
|
||||
FILES:=$(LINUX_DIR)/drivers/cdrom/cdrom.ko
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,cdrom))
|
||||
|
||||
|
||||
define KernelPackage/scsi-cdrom
|
||||
SUBMENU:=$(BLOCK_MENU)
|
||||
TITLE:=Kernel support for CD / DVD drives
|
||||
DEPENDS:=+kmod-scsi-core +kmod-cdrom
|
||||
DEPENDS:=+kmod-scsi-core
|
||||
KCONFIG:= \
|
||||
CONFIG_BLK_DEV_SR \
|
||||
CONFIG_BLK_DEV_SR_VENDOR=n
|
||||
FILES:=$(LINUX_DIR)/drivers/scsi/sr_mod.ko
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/cdrom/cdrom.ko \
|
||||
$(LINUX_DIR)/drivers/scsi/sr_mod.ko
|
||||
AUTOLOAD:=$(call AutoLoad,45,sr_mod)
|
||||
endef
|
||||
|
||||
|
@ -13,7 +13,6 @@ define KernelPackage/can
|
||||
KCONFIG:=\
|
||||
CONFIG_CAN=m \
|
||||
CONFIG_CAN_DEV \
|
||||
CONFIG_CAN_NETLINK=y \
|
||||
CONFIG_CAN_CALC_BITTIMING=y \
|
||||
CONFIG_CAN_LEDS=y \
|
||||
CONFIG_CAN_AT91=n \
|
||||
@ -120,9 +119,9 @@ $(eval $(call KernelPackage,can-c-can-platform))
|
||||
define KernelPackage/can-flexcan
|
||||
TITLE:=Support for Freescale FLEXCAN based chips
|
||||
KCONFIG:=CONFIG_CAN_FLEXCAN
|
||||
FILES:=$(LINUX_DIR)/drivers/net/can/flexcan/flexcan.ko
|
||||
FILES:=$(LINUX_DIR)/drivers/net/can/flexcan.ko
|
||||
AUTOLOAD:=$(call AutoProbe,flexcan)
|
||||
$(call AddDepends/can,@TARGET_imx)
|
||||
$(call AddDepends/can,@TARGET_imx6)
|
||||
endef
|
||||
|
||||
define KernelPackage/can-flexcan/description
|
||||
@ -153,7 +152,7 @@ define KernelPackage/can-mcp251x
|
||||
CONFIG_SPI=y \
|
||||
CONFIG_CAN_MCP251X
|
||||
FILES:=$(LINUX_DIR)/drivers/net/can/spi/mcp251x.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mcp251x)
|
||||
AUTOLOAD:=$(call AutoProbe,can-mcp251x)
|
||||
$(call AddDepends/can)
|
||||
endef
|
||||
|
||||
@ -183,7 +182,7 @@ $(eval $(call KernelPackage,can-raw))
|
||||
define KernelPackage/can-slcan
|
||||
TITLE:=Serial / USB serial CAN Adaptors (slcan)
|
||||
KCONFIG:=CONFIG_CAN_SLCAN
|
||||
FILES:=$(LINUX_DIR)/drivers/net/can/slcan/slcan.ko
|
||||
FILES:=$(LINUX_DIR)/drivers/net/can/slcan.ko
|
||||
AUTOLOAD:=$(call AutoProbe,slcan)
|
||||
$(call AddDepends/can)
|
||||
endef
|
||||
@ -231,9 +230,9 @@ $(eval $(call KernelPackage,can-usb-ems))
|
||||
|
||||
define KernelPackage/can-usb-esd
|
||||
TITLE:=ESD USB/2 CAN/USB interface
|
||||
KCONFIG:=CONFIG_CAN_ESD_USB
|
||||
FILES:=$(LINUX_DIR)/drivers/net/can/usb/esd_usb.ko
|
||||
AUTOLOAD:=$(call AutoProbe,esd_usb2 esd_usb)
|
||||
KCONFIG:=CONFIG_CAN_ESD_USB2
|
||||
FILES:=$(LINUX_DIR)/drivers/net/can/usb/esd_usb2.ko
|
||||
AUTOLOAD:=$(call AutoProbe,esd_usb2)
|
||||
$(call AddDepends/can,+kmod-usb-core)
|
||||
endef
|
||||
|
||||
@ -245,25 +244,6 @@ endef
|
||||
$(eval $(call KernelPackage,can-usb-esd))
|
||||
|
||||
|
||||
define KernelPackage/can-usb-gs
|
||||
TITLE:=Geschwister Schneider UG interfaces
|
||||
KCONFIG:=CONFIG_CAN_GS_USB
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/net/can/usb/gs_usb.ko
|
||||
AUTOLOAD:=$(call AutoProbe,gs_usb)
|
||||
$(call AddDepends/can,+kmod-usb-core)
|
||||
endef
|
||||
|
||||
define KernelPackage/can-usb-gsr/description
|
||||
This driver supports the Geschwister Schneider and
|
||||
bytewerk.org candleLight compatible
|
||||
(https://github.com/candle-usb/candleLight_fw) USB/CAN
|
||||
interfaces.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,can-usb-gs))
|
||||
|
||||
|
||||
define KernelPackage/can-usb-kvaser
|
||||
TITLE:=Kvaser CAN/USB interface
|
||||
KCONFIG:=CONFIG_CAN_KVASER_USB
|
||||
|
@ -11,7 +11,7 @@ CRYPTO_MODULES = \
|
||||
ALGAPI2=crypto_algapi \
|
||||
BLKCIPHER2=crypto_blkcipher
|
||||
|
||||
CRYPTO_TARGET = $(BOARD)/$(SUBTARGET)
|
||||
CRYPTO_TARGET = $(BOARD)/$(if $(SUBTARGET),$(SUBTARGET),generic)
|
||||
|
||||
crypto_confvar=CONFIG_CRYPTO_$(word 1,$(subst =,$(space),$(1)))
|
||||
crypto_file=$(LINUX_DIR)/crypto/$(word 2,$(subst =,$(space),$(1))).ko
|
||||
@ -50,13 +50,8 @@ $(eval $(call KernelPackage,crypto-aead))
|
||||
|
||||
define KernelPackage/crypto-arc4
|
||||
TITLE:=ARC4 cipher CryptoAPI module
|
||||
DEPENDS:=+kmod-crypto-user
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_ARC4 \
|
||||
CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/crypto/arc4.ko \
|
||||
$(LINUX_DIR)/lib/crypto/libarc4.ko
|
||||
KCONFIG:=CONFIG_CRYPTO_ARC4
|
||||
FILES:=$(LINUX_DIR)/crypto/arc4.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,arc4)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
@ -68,28 +63,14 @@ define KernelPackage/crypto-authenc
|
||||
TITLE:=Combined mode wrapper for IPsec
|
||||
DEPENDS:=+kmod-crypto-manager +kmod-crypto-null
|
||||
KCONFIG:=CONFIG_CRYPTO_AUTHENC
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/crypto/authenc.ko \
|
||||
$(LINUX_DIR)/crypto/authencesn.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,authenc authencesn)
|
||||
FILES:=$(LINUX_DIR)/crypto/authenc.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,authenc)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-authenc))
|
||||
|
||||
|
||||
define KernelPackage/crypto-blake2b
|
||||
TITLE:=Support for BLAKE2b cryptographic hash function (RFC 7693)
|
||||
DEPENDS:=+kmod-crypto-hash
|
||||
KCONFIG:=CONFIG_CRYPTO_BLAKE2B
|
||||
FILES:=$(LINUX_DIR)/crypto/blake2b_generic.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,blake2b_generic)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-blake2b))
|
||||
|
||||
|
||||
define KernelPackage/crypto-cbc
|
||||
TITLE:=Cipher Block Chaining CryptoAPI module
|
||||
DEPENDS:=+kmod-crypto-manager
|
||||
@ -114,18 +95,6 @@ endef
|
||||
$(eval $(call KernelPackage,crypto-ccm))
|
||||
|
||||
|
||||
define KernelPackage/crypto-chacha20poly1305
|
||||
TITLE:=ChaCha20-Poly1305 AEAD support, RFC7539 (used by strongSwan IPsec VPN)
|
||||
DEPENDS:=+kmod-crypto-aead +kmod-crypto-manager
|
||||
KCONFIG:=CONFIG_CRYPTO_CHACHA20POLY1305
|
||||
FILES:=$(LINUX_DIR)/crypto/chacha20poly1305.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,chacha20poly1305)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-chacha20poly1305))
|
||||
|
||||
|
||||
define KernelPackage/crypto-cmac
|
||||
TITLE:=Support for Cipher-based Message Authentication Code (CMAC)
|
||||
DEPENDS:=+kmod-crypto-hash
|
||||
@ -226,7 +195,7 @@ $(eval $(call KernelPackage,crypto-ecb))
|
||||
|
||||
define KernelPackage/crypto-ecdh
|
||||
TITLE:=ECDH algorithm
|
||||
DEPENDS:=+kmod-crypto-kpp +kmod-crypto-rng
|
||||
DEPENDS:=+kmod-crypto-kpp
|
||||
KCONFIG:= CONFIG_CRYPTO_ECDH
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/crypto/ecdh_generic.ko \
|
||||
@ -240,7 +209,7 @@ $(eval $(call KernelPackage,crypto-ecdh))
|
||||
|
||||
define KernelPackage/crypto-echainiv
|
||||
TITLE:=Encrypted Chain IV Generator
|
||||
DEPENDS:=+kmod-crypto-aead +kmod-crypto-geniv
|
||||
DEPENDS:=+kmod-crypto-aead
|
||||
KCONFIG:=CONFIG_CRYPTO_ECHAINIV
|
||||
FILES:=$(LINUX_DIR)/crypto/echainiv.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,echainiv)
|
||||
@ -249,27 +218,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-echainiv))
|
||||
|
||||
define KernelPackage/crypto-engine
|
||||
TITLE:=Crypto engine
|
||||
KCONFIG:=CONFIG_CRYPTO_ENGINE
|
||||
FILES:=$(LINUX_DIR)/crypto/crypto_engine.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,crypto_engine)
|
||||
$(call AddDepends/crypto, +kmod-crypto-rsa +kmod-crypto-kpp)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-engine))
|
||||
|
||||
define KernelPackage/crypto-essiv
|
||||
TITLE:=ESSIV support for block encryption
|
||||
DEPENDS:=+kmod-crypto-authenc
|
||||
KCONFIG:=CONFIG_CRYPTO_ESSIV
|
||||
FILES:= $(LINUX_DIR)/crypto/essiv.ko
|
||||
AUTOLOAD:=$(call AutoLoad,10,essiv)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-essiv))
|
||||
|
||||
|
||||
define KernelPackage/crypto-fcrypt
|
||||
TITLE:=FCRYPT cipher CryptoAPI module
|
||||
@ -308,10 +256,8 @@ $(eval $(call KernelPackage,crypto-xcbc))
|
||||
|
||||
define KernelPackage/crypto-gf128
|
||||
TITLE:=GF(2^128) multiplication functions CryptoAPI module
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_GF128MUL \
|
||||
CONFIG_CRYPTO_LIB_GF128MUL
|
||||
FILES:=$(LINUX_DIR)/lib/crypto/gf128mul.ko
|
||||
KCONFIG:=CONFIG_CRYPTO_GF128MUL
|
||||
FILES:=$(LINUX_DIR)/crypto/gf128mul.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,gf128mul)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
@ -335,8 +281,7 @@ define KernelPackage/crypto-ghash/arm-ce
|
||||
AUTOLOAD+=$(call AutoLoad,09,ghash-arm-ce)
|
||||
endef
|
||||
|
||||
KernelPackage/crypto-ghash/imx/cortexa7=$(KernelPackage/crypto-ghash/arm-ce)
|
||||
KernelPackage/crypto-ghash/imx/cortexa9=$(KernelPackage/crypto-ghash/arm-ce)
|
||||
KernelPackage/crypto-ghash/imx6=$(KernelPackage/crypto-ghash/arm-ce)
|
||||
KernelPackage/crypto-ghash/ipq40xx=$(KernelPackage/crypto-ghash/arm-ce)
|
||||
KernelPackage/crypto-ghash/mvebu/cortexa9=$(KernelPackage/crypto-ghash/arm-ce)
|
||||
|
||||
@ -366,26 +311,6 @@ endef
|
||||
$(eval $(call KernelPackage,crypto-hmac))
|
||||
|
||||
|
||||
define KernelPackage/crypto-hw-atmel
|
||||
TITLE:=Microchip / Atmel ECC/SHA/RNG hw accelerator
|
||||
DEPENDS:=+kmod-i2c-core +kmod-crypto-ecdh +kmod-crypto-sha1 \
|
||||
+kmod-crypto-sha256 +kmod-lib-crc16 +kmod-random-core
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_HW=y \
|
||||
CONFIG_CRYPTO_DEV_ATMEL_I2C \
|
||||
CONFIG_CRYPTO_DEV_ATMEL_ECC \
|
||||
CONFIG_CRYPTO_DEV_ATMEL_SHA204A
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/crypto/atmel-i2c.ko \
|
||||
$(LINUX_DIR)/drivers/crypto/atmel-ecc.ko \
|
||||
$(LINUX_DIR)/drivers/crypto/atmel-sha204a.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,atmel-i2c atmel-ecc atmel-sha204a)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-hw-atmel))
|
||||
|
||||
|
||||
define KernelPackage/crypto-hw-ccp
|
||||
TITLE:=AMD Cryptographic Coprocessor
|
||||
DEPENDS:= \
|
||||
@ -415,7 +340,7 @@ $(eval $(call KernelPackage,crypto-hw-ccp))
|
||||
|
||||
define KernelPackage/crypto-hw-geode
|
||||
TITLE:=AMD Geode hardware crypto module
|
||||
DEPENDS:=@TARGET_x86_geode +kmod-crypto-manager
|
||||
DEPENDS:=+kmod-crypto-manager
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_HW=y \
|
||||
CONFIG_CRYPTO_DEV_GEODE
|
||||
@ -429,7 +354,7 @@ $(eval $(call KernelPackage,crypto-hw-geode))
|
||||
|
||||
define KernelPackage/crypto-hw-hifn-795x
|
||||
TITLE:=HIFN 795x crypto accelerator
|
||||
DEPENDS:=@PCI_SUPPORT +kmod-random-core +kmod-crypto-manager
|
||||
DEPENDS:=+kmod-random-core +kmod-crypto-manager
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_HW=y \
|
||||
CONFIG_CRYPTO_DEV_HIFN_795X \
|
||||
@ -441,19 +366,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-hw-hifn-795x))
|
||||
|
||||
define KernelPackage/crypto-hw-ixp4xx
|
||||
TITLE:=Intel IXP4xx crypto accelerator
|
||||
DEPENDS:=@TARGET_ixp4xx +kmod-random-core +kmod-crypto-manager +kmod-crypto-authenc +kmod-crypto-des
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_HW=y \
|
||||
CONFIG_CRYPTO_DEV_IXP4XX
|
||||
FILES:=$(LINUX_DIR)/drivers/crypto/intel/ixp4xx/ixp4xx_crypto.ko
|
||||
AUTOLOAD:=$(call AutoProbe,ixp4xx_crypto)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-hw-ixp4xx))
|
||||
|
||||
|
||||
define KernelPackage/crypto-hw-padlock
|
||||
TITLE:=VIA PadLock ACE with AES/SHA hw crypto module
|
||||
@ -475,9 +387,8 @@ $(eval $(call KernelPackage,crypto-hw-padlock))
|
||||
|
||||
define KernelPackage/crypto-hw-safexcel
|
||||
TITLE:= MVEBU SafeXcel Crypto Engine module
|
||||
DEPENDS:=@(TARGET_mvebu_cortexa53||TARGET_mvebu_cortexa72||TARGET_mediatek_filogic||TARGET_mediatek_mt7623) \
|
||||
+eip197-mini-firmware +kmod-crypto-authenc +kmod-crypto-des +kmod-crypto-md5 +kmod-crypto-hmac \
|
||||
+kmod-crypto-sha1 +kmod-crypto-sha256 +kmod-crypto-sha512
|
||||
DEPENDS:=@(TARGET_mvebu_cortexa53||TARGET_mvebu_cortexa72) +eip197-mini-firmware \
|
||||
+kmod-crypto-authenc +kmod-crypto-md5 +kmod-crypto-hmac +kmod-crypto-sha256 +kmod-crypto-sha512
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_HW=y \
|
||||
CONFIG_CRYPTO_DEV_SAFEXCEL
|
||||
@ -503,8 +414,7 @@ $(eval $(call KernelPackage,crypto-hw-safexcel))
|
||||
|
||||
define KernelPackage/crypto-hw-talitos
|
||||
TITLE:=Freescale integrated security engine (SEC) driver
|
||||
DEPENDS:=@(TARGET_mpc85xx||TARGET_layerscape) +kmod-crypto-manager \
|
||||
+kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc +kmod-crypto-des
|
||||
DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc +kmod-crypto-des
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_HW=y \
|
||||
CONFIG_CRYPTO_DEV_TALITOS \
|
||||
@ -518,35 +428,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-hw-talitos))
|
||||
|
||||
define KernelPackage/crypto-hw-eip93
|
||||
TITLE:=MTK EIP93 crypto module
|
||||
DEPENDS:=@TARGET_ramips_mt7621 \
|
||||
+kmod-crypto-authenc \
|
||||
+kmod-crypto-des \
|
||||
+kmod-crypto-md5 \
|
||||
+kmod-crypto-sha1 \
|
||||
+kmod-crypto-sha256
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_HW=y \
|
||||
CONFIG_CRYPTO_DEV_EIP93 \
|
||||
CONFIG_CRYPTO_DEV_EIP93_AES=y \
|
||||
CONFIG_CRYPTO_DEV_EIP93_DES=y \
|
||||
CONFIG_CRYPTO_DEV_EIP93_AEAD=y \
|
||||
CONFIG_CRYPTO_DEV_EIP93_GENERIC_SW_MAX_LEN=256 \
|
||||
CONFIG_CRYPTO_DEV_EIP93_AES_128_SW_MAX_LEN=512
|
||||
FILES:=$(LINUX_DIR)/drivers/crypto/mtk-eip93/crypto-hw-eip93.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,crypto-hw-eip93)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
define KernelPackage/crypto-hw-eip93/description
|
||||
Kernel module to enable EIP-93 Crypto engine as found
|
||||
in the Mediatek MT7621 SoC.
|
||||
It enables DES/3DES/AES ECB/CBC/CTR and
|
||||
IPSEC offload with authenc(hmac(sha1/sha256), aes/cbc/rfc3686)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-hw-eip93))
|
||||
|
||||
define KernelPackage/crypto-kpp
|
||||
TITLE:=Key-agreement Protocol Primitives
|
||||
@ -558,6 +439,7 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-kpp))
|
||||
|
||||
|
||||
define KernelPackage/crypto-lib-chacha20
|
||||
TITLE:=ChaCha library interface
|
||||
KCONFIG:=CONFIG_CRYPTO_LIB_CHACHA
|
||||
@ -578,8 +460,6 @@ define KernelPackage/crypto-lib-chacha20/arm
|
||||
FILES:=$(LINUX_DIR)/arch/arm/crypto/chacha-neon.ko
|
||||
endef
|
||||
|
||||
KernelPackage/crypto-lib-chacha20/armeb=$(KernelPackage/crypto-lib-chacha20/arm)
|
||||
|
||||
define KernelPackage/crypto-lib-chacha20/aarch64
|
||||
KCONFIG+=CONFIG_CRYPTO_CHACHA20_NEON
|
||||
FILES+=$(LINUX_DIR)/arch/arm64/crypto/chacha-neon.ko
|
||||
@ -628,7 +508,7 @@ define KernelPackage/crypto-lib-curve25519/config
|
||||
imply PACKAGE_kmod-crypto-kpp
|
||||
endef
|
||||
|
||||
define KernelPackage/crypto-lib-curve25519/x86_64
|
||||
define KernelPackage/crypto-lib-curve25519/x86/64
|
||||
KCONFIG+=CONFIG_CRYPTO_CURVE25519_X86
|
||||
FILES+=$(LINUX_DIR)/arch/x86/crypto/curve25519-x86_64.ko
|
||||
endef
|
||||
@ -643,11 +523,6 @@ ifeq ($(ARCH)-$(CONFIG_KERNEL_MODE_NEON),arm-y)
|
||||
$(KernelPackage/crypto-lib-curve25519/arm-neon)
|
||||
endif
|
||||
|
||||
ifdef KernelPackage/crypto-lib-curve25519/$(ARCH)
|
||||
KernelPackage/crypto-lib-curve25519/$(CRYPTO_TARGET)=\
|
||||
$(KernelPackage/crypto-lib-curve25519/$(ARCH))
|
||||
endif
|
||||
|
||||
$(eval $(call KernelPackage,crypto-lib-curve25519))
|
||||
|
||||
|
||||
@ -673,8 +548,6 @@ define KernelPackage/crypto-lib-poly1305/arm
|
||||
FILES:=$(LINUX_DIR)/arch/arm/crypto/poly1305-arm.ko
|
||||
endef
|
||||
|
||||
KernelPackage/crypto-lib-poly1305/armeb=$(KernelPackage/crypto-lib-poly1305/arm)
|
||||
|
||||
define KernelPackage/crypto-lib-poly1305/aarch64
|
||||
KCONFIG+=CONFIG_CRYPTO_POLY1305_NEON
|
||||
FILES:=$(LINUX_DIR)/arch/arm64/crypto/poly1305-neon.ko
|
||||
@ -699,7 +572,7 @@ $(eval $(call KernelPackage,crypto-lib-poly1305))
|
||||
|
||||
define KernelPackage/crypto-manager
|
||||
TITLE:=CryptoAPI algorithm manager
|
||||
DEPENDS:=+kmod-crypto-aead +kmod-crypto-hash
|
||||
DEPENDS:=+kmod-crypto-aead +kmod-crypto-hash +kmod-crypto-pcompress
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_MANAGER \
|
||||
CONFIG_CRYPTO_MANAGER2
|
||||
@ -740,16 +613,11 @@ define KernelPackage/crypto-md5/octeon
|
||||
AUTOLOAD+=$(call AutoLoad,09,octeon-md5)
|
||||
endef
|
||||
|
||||
define KernelPackage/crypto-md5/powerpc
|
||||
define KernelPackage/crypto-md5/mpc85xx
|
||||
FILES+=$(LINUX_DIR)/arch/powerpc/crypto/md5-ppc.ko
|
||||
AUTOLOAD+=$(call AutoLoad,09,md5-ppc)
|
||||
endef
|
||||
|
||||
ifdef KernelPackage/crypto-md5/$(ARCH)
|
||||
KernelPackage/crypto-md5/$(CRYPTO_TARGET)=\
|
||||
$(KernelPackage/crypto-md5/$(ARCH))
|
||||
endif
|
||||
|
||||
$(eval $(call KernelPackage,crypto-md5))
|
||||
|
||||
|
||||
@ -767,9 +635,8 @@ $(eval $(call KernelPackage,crypto-michael-mic))
|
||||
|
||||
define KernelPackage/crypto-misc
|
||||
TITLE:=Other CryptoAPI modules
|
||||
DEPENDS:=+kmod-crypto-xts +kmod-crypto-user
|
||||
DEPENDS:=+kmod-crypto-xts
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y \
|
||||
CONFIG_CRYPTO_CAMELLIA_X86_64 \
|
||||
CONFIG_CRYPTO_BLOWFISH_X86_64 \
|
||||
CONFIG_CRYPTO_TWOFISH_X86_64 \
|
||||
@ -788,9 +655,11 @@ define KernelPackage/crypto-misc
|
||||
CONFIG_CRYPTO_CAMELLIA \
|
||||
CONFIG_CRYPTO_CAST5 \
|
||||
CONFIG_CRYPTO_CAST6 \
|
||||
CONFIG_CRYPTO_FCRYPT \
|
||||
CONFIG_CRYPTO_KHAZAD \
|
||||
CONFIG_CRYPTO_SERPENT \
|
||||
CONFIG_CRYPTO_TEA \
|
||||
CONFIG_CRYPTO_TGR192 \
|
||||
CONFIG_CRYPTO_TWOFISH \
|
||||
CONFIG_CRYPTO_TWOFISH_COMMON \
|
||||
CONFIG_CRYPTO_TWOFISH_586 \
|
||||
@ -803,6 +672,7 @@ define KernelPackage/crypto-misc
|
||||
$(LINUX_DIR)/crypto/cast6_generic.ko \
|
||||
$(LINUX_DIR)/crypto/khazad.ko \
|
||||
$(LINUX_DIR)/crypto/tea.ko \
|
||||
$(LINUX_DIR)/crypto/tgr192.ko \
|
||||
$(LINUX_DIR)/crypto/twofish_common.ko \
|
||||
$(LINUX_DIR)/crypto/wp512.ko \
|
||||
$(LINUX_DIR)/crypto/twofish_generic.ko \
|
||||
@ -810,7 +680,7 @@ define KernelPackage/crypto-misc
|
||||
$(LINUX_DIR)/crypto/blowfish_generic.ko \
|
||||
$(LINUX_DIR)/crypto/serpent_generic.ko
|
||||
AUTOLOAD:=$(call AutoLoad,10,anubis camellia_generic cast_common \
|
||||
cast5_generic cast6_generic khazad tea twofish_common \
|
||||
cast5_generic cast6_generic khazad tea tgr192 twofish_common \
|
||||
wp512 blowfish_common serpent_generic)
|
||||
ifndef CONFIG_TARGET_x86
|
||||
AUTOLOAD+= $(call AutoLoad,10,twofish_generic blowfish_generic)
|
||||
@ -823,14 +693,15 @@ ifndef CONFIG_TARGET_x86_64
|
||||
FILES+= \
|
||||
$(LINUX_DIR)/arch/x86/crypto/twofish-i586.ko \
|
||||
$(LINUX_DIR)/arch/x86/crypto/serpent-sse2-i586.ko \
|
||||
$(LINUX_DIR)/arch/x86/crypto/glue_helper.ko \
|
||||
$(LINUX_DIR)/crypto/cryptd.ko \
|
||||
$(LINUX_DIR)/crypto/crypto_simd.ko
|
||||
AUTOLOAD+= $(call AutoLoad,10,cryptd \
|
||||
AUTOLOAD+= $(call AutoLoad,10,cryptd glue_helper \
|
||||
serpent-sse2-i586 twofish-i586 blowfish_generic)
|
||||
endef
|
||||
endif
|
||||
|
||||
define KernelPackage/crypto-misc/x86_64
|
||||
define KernelPackage/crypto-misc/x86/64
|
||||
FILES+= \
|
||||
$(LINUX_DIR)/arch/x86/crypto/camellia-x86_64.ko \
|
||||
$(LINUX_DIR)/arch/x86/crypto/blowfish-x86_64.ko \
|
||||
@ -850,11 +721,6 @@ define KernelPackage/crypto-misc/x86_64
|
||||
twofish-avx-x86_64 blowfish-x86_64 serpent-avx-x86_64 serpent-avx2)
|
||||
endef
|
||||
|
||||
ifdef KernelPackage/crypto-misc/$(ARCH)
|
||||
KernelPackage/crypto-misc/$(CRYPTO_TARGET)=\
|
||||
$(KernelPackage/crypto-misc/$(ARCH))
|
||||
endif
|
||||
|
||||
$(eval $(call KernelPackage,crypto-misc))
|
||||
|
||||
|
||||
@ -881,13 +747,26 @@ endef
|
||||
$(eval $(call KernelPackage,crypto-pcbc))
|
||||
|
||||
|
||||
define KernelPackage/crypto-pcompress
|
||||
TITLE:=CryptoAPI Partial (de)compression operations
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_PCOMP=y \
|
||||
CONFIG_CRYPTO_PCOMP2
|
||||
FILES:=$(LINUX_DIR)/crypto/pcompress.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,pcompress)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-pcompress))
|
||||
|
||||
|
||||
define KernelPackage/crypto-rsa
|
||||
TITLE:=RSA algorithm
|
||||
DEPENDS:=+kmod-crypto-manager +kmod-asn1-decoder
|
||||
KCONFIG:= CONFIG_CRYPTO_RSA
|
||||
HIDDEN:=1
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/lib/crypto/mpi/mpi.ko \
|
||||
$(LINUX_DIR)/lib/mpi/mpi.ko \
|
||||
$(LINUX_DIR)/crypto/akcipher.ko \
|
||||
$(LINUX_DIR)/crypto/rsa_generic.ko
|
||||
AUTOLOAD:=$(call AutoLoad,10,rsa_generic)
|
||||
@ -911,7 +790,7 @@ $(eval $(call KernelPackage,crypto-rmd160))
|
||||
|
||||
define KernelPackage/crypto-rng
|
||||
TITLE:=CryptoAPI random number generation
|
||||
DEPENDS:=+kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha512 +kmod-crypto-sha3
|
||||
DEPENDS:=+kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha256
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_DRBG \
|
||||
CONFIG_CRYPTO_DRBG_HMAC=y \
|
||||
@ -930,22 +809,9 @@ endef
|
||||
$(eval $(call KernelPackage,crypto-rng))
|
||||
|
||||
|
||||
define KernelPackage/crypto-geniv
|
||||
TITLE:=CryptoAPI Shared IV generator
|
||||
HIDDEN:=1
|
||||
DEPENDS:=+kmod-crypto-rng +kmod-crypto-aead
|
||||
KCONFIG:=CONFIG_CRYPTO_GENIV
|
||||
FILES:=$(LINUX_DIR)/crypto/geniv.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,geniv)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-geniv))
|
||||
|
||||
|
||||
define KernelPackage/crypto-seqiv
|
||||
TITLE:=CryptoAPI Sequence Number IV Generator
|
||||
DEPENDS:=+kmod-crypto-aead +kmod-crypto-rng +kmod-crypto-geniv
|
||||
DEPENDS:=+kmod-crypto-aead +kmod-crypto-rng
|
||||
KCONFIG:=CONFIG_CRYPTO_SEQIV
|
||||
FILES:=$(LINUX_DIR)/crypto/seqiv.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,seqiv)
|
||||
@ -962,7 +828,6 @@ define KernelPackage/crypto-sha1
|
||||
CONFIG_CRYPTO_SHA1 \
|
||||
CONFIG_CRYPTO_SHA1_ARM \
|
||||
CONFIG_CRYPTO_SHA1_ARM_NEON \
|
||||
CONFIG_CRYPTO_SHA1_ARM64_CE \
|
||||
CONFIG_CRYPTO_SHA1_OCTEON \
|
||||
CONFIG_CRYPTO_SHA1_PPC_SPE \
|
||||
CONFIG_CRYPTO_SHA1_SSSE3
|
||||
@ -982,21 +847,9 @@ define KernelPackage/crypto-sha1/arm-neon
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha1-arm-neon)
|
||||
endef
|
||||
|
||||
define KernelPackage/crypto-sha1/aarch64-ce
|
||||
FILES+=$(LINUX_DIR)/arch/arm64/crypto/sha1-ce.ko
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha1-ce)
|
||||
endef
|
||||
|
||||
KernelPackage/crypto-sha1/imx/cortexa7=$(KernelPackage/crypto-sha1/arm-neon)
|
||||
KernelPackage/crypto-sha1/imx/cortexa9=$(KernelPackage/crypto-sha1/arm-neon)
|
||||
KernelPackage/crypto-sha1/imx6=$(KernelPackage/crypto-sha1/arm-neon)
|
||||
KernelPackage/crypto-sha1/ipq40xx=$(KernelPackage/crypto-sha1/arm-neon)
|
||||
KernelPackage/crypto-sha1/mediatek/filogic=$(KernelPackage/crypto-sha1/aarch64-ce)
|
||||
KernelPackage/crypto-sha1/mediatek/mt7622=$(KernelPackage/crypto-sha1/aarch64-ce)
|
||||
KernelPackage/crypto-sha1/mvebu/cortexa9=$(KernelPackage/crypto-sha1/arm-neon)
|
||||
KernelPackage/crypto-sha1/mvebu/cortexa53=$(KernelPackage/crypto-sha1/aarch64-ce)
|
||||
KernelPackage/crypto-sha1/mvebu/cortexa72=$(KernelPackage/crypto-sha1/aarch64-ce)
|
||||
KernelPackage/crypto-sha1/qualcommax=$(KernelPackage/crypto-sha1/aarch64-ce)
|
||||
KernelPackage/crypto-sha1/rockchip/armv8=$(KernelPackage/crypto-sha1/aarch64-ce)
|
||||
|
||||
define KernelPackage/crypto-sha1/octeon
|
||||
FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha1.ko
|
||||
@ -1010,33 +863,14 @@ define KernelPackage/crypto-sha1/mpc85xx
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha1-ppc-spe)
|
||||
endef
|
||||
|
||||
ifndef CONFIG_TARGET_uml
|
||||
define KernelPackage/crypto-sha1/x86_64
|
||||
define KernelPackage/crypto-sha1/x86/64
|
||||
FILES+=$(LINUX_DIR)/arch/x86/crypto/sha1-ssse3.ko
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha1-ssse3)
|
||||
endef
|
||||
endif
|
||||
|
||||
ifdef KernelPackage/crypto-sha1/$(ARCH)
|
||||
KernelPackage/crypto-sha1/$(CRYPTO_TARGET)=\
|
||||
$(KernelPackage/crypto-sha1/$(ARCH))
|
||||
endif
|
||||
|
||||
$(eval $(call KernelPackage,crypto-sha1))
|
||||
|
||||
|
||||
define KernelPackage/crypto-sha3
|
||||
TITLE:=SHA3 digest CryptoAPI module
|
||||
DEPENDS:=+kmod-crypto-hash
|
||||
KCONFIG:= CONFIG_CRYPTO_SHA3
|
||||
FILES:=$(LINUX_DIR)/crypto/sha3_generic.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,sha3_generic)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-sha3))
|
||||
|
||||
|
||||
define KernelPackage/crypto-sha256
|
||||
TITLE:=SHA224 SHA256 digest CryptoAPI module
|
||||
DEPENDS:=+kmod-crypto-hash
|
||||
@ -1044,8 +878,6 @@ define KernelPackage/crypto-sha256
|
||||
CONFIG_CRYPTO_SHA256 \
|
||||
CONFIG_CRYPTO_SHA256_OCTEON \
|
||||
CONFIG_CRYPTO_SHA256_PPC_SPE \
|
||||
CONFIG_CRYPTO_SHA256_ARM64 \
|
||||
CONFIG_CRYPTO_SHA2_ARM64_CE \
|
||||
CONFIG_CRYPTO_SHA256_SSSE3
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/crypto/sha256_generic.ko \
|
||||
@ -1054,17 +886,6 @@ define KernelPackage/crypto-sha256
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
define KernelPackage/crypto-sha256/aarch64
|
||||
FILES+=$(LINUX_DIR)/arch/arm64/crypto/sha256-arm64.ko
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha256-arm64)
|
||||
endef
|
||||
|
||||
define KernelPackage/crypto-sha256/aarch64-ce
|
||||
$(call KernelPackage/crypto-sha256/aarch64)
|
||||
FILES+=$(LINUX_DIR)/arch/arm64/crypto/sha2-ce.ko
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha2-ce)
|
||||
endef
|
||||
|
||||
define KernelPackage/crypto-sha256/octeon
|
||||
FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha256.ko
|
||||
AUTOLOAD+=$(call AutoLoad,09,octeon-sha256)
|
||||
@ -1075,24 +896,10 @@ define KernelPackage/crypto-sha256/mpc85xx
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha256-ppc-spe)
|
||||
endef
|
||||
|
||||
ifndef CONFIG_TARGET_uml
|
||||
define KernelPackage/crypto-sha256/x86_64
|
||||
define KernelPackage/crypto-sha256/x86/64
|
||||
FILES+=$(LINUX_DIR)/arch/x86/crypto/sha256-ssse3.ko
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha256-ssse3)
|
||||
endef
|
||||
endif
|
||||
|
||||
KernelPackage/crypto-sha256/mediatek/filogic=$(KernelPackage/crypto-sha256/aarch64-ce)
|
||||
KernelPackage/crypto-sha256/mediatek/mt7622=$(KernelPackage/crypto-sha256/aarch64-ce)
|
||||
KernelPackage/crypto-sha256/mvebu/cortexa53=$(KernelPackage/crypto-sha256/aarch64-ce)
|
||||
KernelPackage/crypto-sha256/mvebu/cortexa72=$(KernelPackage/crypto-sha256/aarch64-ce)
|
||||
KernelPackage/crypto-sha256/qualcommax=$(KernelPackage/crypto-sha256/aarch64-ce)
|
||||
KernelPackage/crypto-sha256/rockchip/armv8=$(KernelPackage/crypto-sha256/aarch64-ce)
|
||||
|
||||
ifdef KernelPackage/crypto-sha256/$(ARCH)
|
||||
KernelPackage/crypto-sha256/$(CRYPTO_TARGET)=\
|
||||
$(KernelPackage/crypto-sha256/$(ARCH))
|
||||
endif
|
||||
|
||||
$(eval $(call KernelPackage,crypto-sha256))
|
||||
|
||||
@ -1103,7 +910,6 @@ define KernelPackage/crypto-sha512
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_SHA512 \
|
||||
CONFIG_CRYPTO_SHA512_ARM \
|
||||
CONFIG_CRYPTO_SHA512_ARM64 \
|
||||
CONFIG_CRYPTO_SHA512_OCTEON \
|
||||
CONFIG_CRYPTO_SHA512_SSSE3
|
||||
FILES:=$(LINUX_DIR)/crypto/sha512_generic.ko
|
||||
@ -1116,13 +922,7 @@ define KernelPackage/crypto-sha512/arm
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha512-arm)
|
||||
endef
|
||||
|
||||
define KernelPackage/crypto-sha512/aarch64
|
||||
FILES+=$(LINUX_DIR)/arch/arm64/crypto/sha512-arm64.ko
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha512-arm64)
|
||||
endef
|
||||
|
||||
KernelPackage/crypto-sha512/imx/cortexa7=$(KernelPackage/crypto-sha512/arm)
|
||||
KernelPackage/crypto-sha512/imx/cortexa9=$(KernelPackage/crypto-sha512/arm)
|
||||
KernelPackage/crypto-sha512/imx6=$(KernelPackage/crypto-sha512/arm)
|
||||
KernelPackage/crypto-sha512/ipq40xx=$(KernelPackage/crypto-sha512/arm)
|
||||
KernelPackage/crypto-sha512/mvebu/cortexa9=$(KernelPackage/crypto-sha512/arm)
|
||||
|
||||
@ -1133,17 +933,10 @@ endef
|
||||
|
||||
KernelPackage/crypto-sha512/tegra=$(KernelPackage/crypto-sha512/arm)
|
||||
|
||||
ifndef CONFIG_TARGET_uml
|
||||
define KernelPackage/crypto-sha512/x86_64
|
||||
define KernelPackage/crypto-sha512/x86/64
|
||||
FILES+=$(LINUX_DIR)/arch/x86/crypto/sha512-ssse3.ko
|
||||
AUTOLOAD+=$(call AutoLoad,09,sha512-ssse3)
|
||||
endef
|
||||
endif
|
||||
|
||||
ifdef KernelPackage/crypto-sha512/$(ARCH)
|
||||
KernelPackage/crypto-sha512/$(CRYPTO_TARGET)=\
|
||||
$(KernelPackage/crypto-sha512/$(ARCH))
|
||||
endif
|
||||
|
||||
$(eval $(call KernelPackage,crypto-sha512))
|
||||
|
||||
@ -1160,7 +953,7 @@ $(eval $(call KernelPackage,crypto-test))
|
||||
|
||||
define KernelPackage/crypto-user
|
||||
TITLE:=CryptoAPI userspace interface
|
||||
DEPENDS:=+kmod-crypto-hash +kmod-crypto-manager +kmod-crypto-rng
|
||||
DEPENDS:=+kmod-crypto-hash +kmod-crypto-manager
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_USER \
|
||||
CONFIG_CRYPTO_USER_API \
|
||||
@ -1182,6 +975,16 @@ endef
|
||||
$(eval $(call KernelPackage,crypto-user))
|
||||
|
||||
|
||||
define KernelPackage/crypto-wq
|
||||
TITLE:=CryptoAPI work queue handling
|
||||
KCONFIG:=CONFIG_CRYPTO_WORKQUEUE
|
||||
FILES:=$(LINUX_DIR)/crypto/crypto_wq.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,crypto_wq)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
$(eval $(call KernelPackage,crypto-wq))
|
||||
|
||||
|
||||
define KernelPackage/crypto-xts
|
||||
TITLE:=XTS cipher CryptoAPI module
|
||||
DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-manager
|
||||
@ -1193,15 +996,3 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-xts))
|
||||
|
||||
|
||||
define KernelPackage/crypto-xxhash
|
||||
TITLE:=xxHash non-cryptographic hash algorithm
|
||||
DEPENDS:=+kmod-crypto-hash +kmod-lib-xxhash
|
||||
KCONFIG:=CONFIG_CRYPTO_XXHASH
|
||||
FILES:=$(LINUX_DIR)/crypto/xxhash_generic.ko
|
||||
AUTOLOAD:=$(call AutoLoad,09,xxhash_generic)
|
||||
$(call AddDepends/crypto)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,crypto-xxhash))
|
||||
|
||||
|
@ -10,7 +10,7 @@ FS_MENU:=Filesystems
|
||||
define KernelPackage/fs-9p
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=Plan 9 Resource Sharing Support
|
||||
DEPENDS:=+kmod-9pnet +kmod-fs-netfs
|
||||
DEPENDS:=+kmod-9pnet
|
||||
KCONFIG:=\
|
||||
CONFIG_9P_FS \
|
||||
CONFIG_9P_FS_POSIX_ACL=n \
|
||||
@ -67,9 +67,10 @@ $(eval $(call KernelPackage,fs-autofs4))
|
||||
define KernelPackage/fs-btrfs
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=BTRFS filesystem support
|
||||
DEPENDS:=+kmod-lib-crc32c +kmod-lib-lzo +kmod-lib-zlib-inflate +kmod-lib-zlib-deflate +kmod-lib-raid6 +kmod-lib-xor +kmod-lib-zstd +kmod-crypto-blake2b +kmod-crypto-xxhash
|
||||
DEPENDS:=+kmod-lib-crc32c +kmod-lib-lzo +kmod-lib-zlib-inflate +kmod-lib-zlib-deflate +kmod-lib-raid6 +kmod-lib-xor +kmod-lib-zstd
|
||||
KCONFIG:=\
|
||||
CONFIG_BTRFS_FS \
|
||||
CONFIG_BTRFS_FS_POSIX_ACL=n \
|
||||
CONFIG_BTRFS_FS_CHECK_INTEGRITY=n
|
||||
FILES:=\
|
||||
$(LINUX_DIR)/fs/btrfs/btrfs.ko
|
||||
@ -83,25 +84,6 @@ endef
|
||||
$(eval $(call KernelPackage,fs-btrfs))
|
||||
|
||||
|
||||
define KernelPackage/fs-smbfs-common
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=SMBFS common dependencies support
|
||||
HIDDEN:=1
|
||||
DEPENDS:=+kmod-fs-netfs +kmod-nls-ucs2-utils
|
||||
KCONFIG:=\
|
||||
CONFIG_SMBFS
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/fs/smb/common/cifs_arc4.ko \
|
||||
$(LINUX_DIR)/fs/smb/common/cifs_md4.ko
|
||||
endef
|
||||
|
||||
define KernelPackage/fs-smbfs-common/description
|
||||
Kernel module dependency for CIFS or SMB_SERVER support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,fs-smbfs-common))
|
||||
|
||||
|
||||
define KernelPackage/fs-cifs
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=CIFS support
|
||||
@ -109,24 +91,21 @@ define KernelPackage/fs-cifs
|
||||
CONFIG_CIFS \
|
||||
CONFIG_CIFS_DFS_UPCALL=n \
|
||||
CONFIG_CIFS_UPCALL=n
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/fs/smb/client/cifs.ko
|
||||
FILES:=$(LINUX_DIR)/fs/cifs/cifs.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,cifs)
|
||||
$(call AddDepends/nls)
|
||||
DEPENDS+= \
|
||||
+kmod-fs-smbfs-common \
|
||||
+kmod-crypto-md4 \
|
||||
+kmod-crypto-md5 \
|
||||
+kmod-crypto-sha256 \
|
||||
+kmod-crypto-sha512 \
|
||||
+kmod-crypto-cmac \
|
||||
+kmod-crypto-hmac \
|
||||
+kmod-crypto-arc4 \
|
||||
+kmod-crypto-aead \
|
||||
+kmod-crypto-ccm \
|
||||
+kmod-crypto-ecb \
|
||||
+kmod-crypto-des \
|
||||
+kmod-asn1-decoder \
|
||||
+kmod-oid-registry \
|
||||
+kmod-dnsresolver
|
||||
+kmod-crypto-des
|
||||
endef
|
||||
|
||||
define KernelPackage/fs-cifs/description
|
||||
@ -185,24 +164,6 @@ endef
|
||||
$(eval $(call KernelPackage,fs-efivarfs))
|
||||
|
||||
|
||||
define KernelPackage/fs-exfat
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=exFAT filesystem support
|
||||
KCONFIG:= \
|
||||
CONFIG_EXFAT_FS \
|
||||
CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
|
||||
FILES:= $(LINUX_DIR)/fs/exfat/exfat.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,exfat,1)
|
||||
DEPENDS:=+kmod-nls-base
|
||||
endef
|
||||
|
||||
define KernelPackage/fs-exfat/description
|
||||
Kernel module for exFAT filesystem support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,fs-exfat))
|
||||
|
||||
|
||||
define KernelPackage/fs-exportfs
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=exportfs kernel server support
|
||||
@ -262,22 +223,18 @@ $(eval $(call KernelPackage,fs-f2fs))
|
||||
define KernelPackage/fs-fscache
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=General filesystem local cache manager
|
||||
DEPENDS:=+kmod-fs-netfs
|
||||
DEPENDS:=
|
||||
KCONFIG:=\
|
||||
CONFIG_FSCACHE \
|
||||
CONFIG_FSCACHE=m \
|
||||
CONFIG_FSCACHE_STATS=y \
|
||||
CONFIG_FSCACHE_HISTOGRAM=n \
|
||||
CONFIG_FSCACHE_DEBUG=n \
|
||||
CONFIG_FSCACHE_OBJECT_LIST=n \
|
||||
CONFIG_CACHEFILES \
|
||||
CONFIG_CACHEFILES=y \
|
||||
CONFIG_CACHEFILES_DEBUG=n \
|
||||
CONFIG_CACHEFILES_HISTOGRAM=n \
|
||||
CONFIG_CACHEFILES_ERROR_INJECTION=n \
|
||||
CONFIG_CACHEFILES_ONDEMAND=n
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/fs/fscache/fscache.ko \
|
||||
$(LINUX_DIR)/fs/cachefiles/cachefiles.ko
|
||||
AUTOLOAD:=$(call AutoLoad,29,fscache cachefiles)
|
||||
CONFIG_CACHEFILES_HISTOGRAM=n
|
||||
FILES:=$(LINUX_DIR)/fs/fscache/fscache.ko
|
||||
AUTOLOAD:=$(call AutoLoad,29,fscache)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,fs-fscache))
|
||||
@ -286,7 +243,6 @@ $(eval $(call KernelPackage,fs-fscache))
|
||||
define KernelPackage/fs-hfs
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=HFS filesystem support
|
||||
DEPENDS:=+kmod-cdrom
|
||||
KCONFIG:=CONFIG_HFS_FS
|
||||
FILES:=$(LINUX_DIR)/fs/hfs/hfs.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,hfs)
|
||||
@ -303,7 +259,6 @@ $(eval $(call KernelPackage,fs-hfs))
|
||||
define KernelPackage/fs-hfsplus
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=HFS+ filesystem support
|
||||
DEPENDS:=+kmod-cdrom
|
||||
KCONFIG:=CONFIG_HFSPLUS_FS
|
||||
FILES:=$(LINUX_DIR)/fs/hfsplus/hfsplus.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,hfsplus)
|
||||
@ -320,7 +275,7 @@ $(eval $(call KernelPackage,fs-hfsplus))
|
||||
define KernelPackage/fs-isofs
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=ISO9660 filesystem support
|
||||
DEPENDS:=+kmod-lib-zlib-inflate +kmod-cdrom
|
||||
DEPENDS:=+kmod-lib-zlib-inflate
|
||||
KCONFIG:=CONFIG_ISO9660_FS CONFIG_JOLIET=y CONFIG_ZISOFS=n
|
||||
FILES:=$(LINUX_DIR)/fs/isofs/isofs.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,isofs)
|
||||
@ -340,7 +295,6 @@ define KernelPackage/fs-jfs
|
||||
KCONFIG:=CONFIG_JFS_FS
|
||||
FILES:=$(LINUX_DIR)/fs/jfs/jfs.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,jfs,1)
|
||||
DEPENDS:=+kmod-nls-ucs2-utils
|
||||
$(call AddDepends/nls)
|
||||
endef
|
||||
|
||||
@ -350,43 +304,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,fs-jfs))
|
||||
|
||||
|
||||
define KernelPackage/fs-ksmbd
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=SMB kernel server support
|
||||
DEPENDS:= \
|
||||
+kmod-nls-base \
|
||||
+kmod-nls-utf8 \
|
||||
+kmod-crypto-md5 \
|
||||
+kmod-crypto-hmac \
|
||||
+kmod-crypto-ecb \
|
||||
+kmod-crypto-des \
|
||||
+kmod-crypto-sha256 \
|
||||
+kmod-crypto-cmac \
|
||||
+kmod-crypto-sha512 \
|
||||
+kmod-crypto-aead \
|
||||
+kmod-crypto-ccm \
|
||||
+kmod-crypto-gcm \
|
||||
+kmod-asn1-decoder \
|
||||
+kmod-oid-registry \
|
||||
+kmod-fs-smbfs-common
|
||||
KCONFIG:= \
|
||||
CONFIG_SMB_SERVER \
|
||||
CONFIG_SMB_SERVER_SMBDIRECT=n \
|
||||
CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=n \
|
||||
CONFIG_SMB_SERVER_KERBEROS5=n
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/fs/smb/server/ksmbd.ko
|
||||
AUTOLOAD:=$(call AutoLoad,41,ksmbd)
|
||||
endef
|
||||
|
||||
define KernelPackage/fs-ksmbd/description
|
||||
Kernel module for SMB kernel server support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,fs-ksmbd))
|
||||
|
||||
|
||||
define KernelPackage/fs-minix
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=Minix filesystem support
|
||||
@ -419,17 +336,6 @@ endef
|
||||
$(eval $(call KernelPackage,fs-msdos))
|
||||
|
||||
|
||||
define KernelPackage/fs-netfs
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=Network Filesystems support
|
||||
KCONFIG:= CONFIG_NETFS_SUPPORT
|
||||
FILES:=$(LINUX_DIR)/fs/netfs/netfs.ko
|
||||
AUTOLOAD:=$(call AutoLoad,28,netfs)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,fs-netfs))
|
||||
|
||||
|
||||
define KernelPackage/fs-nfs
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=NFS filesystem client support
|
||||
@ -453,17 +359,10 @@ $(eval $(call KernelPackage,fs-nfs))
|
||||
define KernelPackage/fs-nfs-common
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=Common NFS filesystem modules
|
||||
DEPENDS:=+kmod-oid-registry
|
||||
KCONFIG:= \
|
||||
CONFIG_LOCKD \
|
||||
CONFIG_SUNRPC \
|
||||
CONFIG_GRACE_PERIOD \
|
||||
CONFIG_NFS_V4=y \
|
||||
CONFIG_NFS_V4_1=y \
|
||||
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" \
|
||||
CONFIG_NFS_V4_1_MIGRATION=n \
|
||||
CONFIG_NFS_V4_2=y \
|
||||
CONFIG_NFS_V4_2_READ_PLUS=n
|
||||
CONFIG_GRACE_PERIOD
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/fs/lockd/lockd.ko \
|
||||
$(LINUX_DIR)/net/sunrpc/sunrpc.ko \
|
||||
@ -491,9 +390,10 @@ define KernelPackage/fs-nfs-common-rpcsec
|
||||
CONFIG_SUNRPC_GSS \
|
||||
CONFIG_RPCSEC_GSS_KRB5
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/lib/oid_registry.ko \
|
||||
$(LINUX_DIR)/net/sunrpc/auth_gss/auth_rpcgss.ko \
|
||||
$(LINUX_DIR)/net/sunrpc/auth_gss/rpcsec_gss_krb5.ko
|
||||
AUTOLOAD:=$(call AutoLoad,31,auth_rpcgss rpcsec_gss_krb5)
|
||||
AUTOLOAD:=$(call AutoLoad,31,oid_registry auth_rpcgss rpcsec_gss_krb5)
|
||||
endef
|
||||
|
||||
define KernelPackage/fs-nfs-common-rpcsec/description
|
||||
@ -548,8 +448,7 @@ define KernelPackage/fs-nfsd
|
||||
CONFIG_NFSD_BLOCKLAYOUT=n \
|
||||
CONFIG_NFSD_SCSILAYOUT=n \
|
||||
CONFIG_NFSD_FLEXFILELAYOUT=n \
|
||||
CONFIG_NFSD_FAULT_INJECTION=n \
|
||||
CONFIG_NFSD_V4_2_INTER_SSC=n
|
||||
CONFIG_NFSD_FAULT_INJECTION=n
|
||||
FILES:=$(LINUX_DIR)/fs/nfsd/nfsd.ko
|
||||
AUTOLOAD:=$(call AutoLoad,40,nfsd)
|
||||
endef
|
||||
@ -580,18 +479,19 @@ $(eval $(call KernelPackage,fs-ntfs))
|
||||
|
||||
define KernelPackage/fs-ntfs3
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=NTFS filesystem read & write (new driver) support
|
||||
KCONFIG:= CONFIG_NTFS3_FS CONFIG_NTFS3_FS_POSIX_ACL=y
|
||||
TITLE:=NTFS3 Read-Write file system support
|
||||
DEPENDS:=+kmod-nls-base
|
||||
KCONFIG:= \
|
||||
CONFIG_NTFS3_FS \
|
||||
CONFIG_NTFS3_64BIT_CLUSTER=y \
|
||||
CONFIG_NTFS3_LZX_XPRESS=y \
|
||||
CONFIG_NTFS3_FS_POSIX_ACL=y
|
||||
FILES:=$(LINUX_DIR)/fs/ntfs3/ntfs3.ko
|
||||
$(call AddDepends/nls)
|
||||
AUTOLOAD:=$(call AutoLoad,80,ntfs3)
|
||||
AUTOLOAD:=$(call AutoLoad,30,ntfs3)
|
||||
endef
|
||||
|
||||
define KernelPackage/fs-ntfs3/description
|
||||
Kernel module for fully functional NTFS filesystem support. It allows
|
||||
reading as well as writing.
|
||||
|
||||
It supports NTFS versions up to 3.1.
|
||||
Kernel module for NTFS3 filesystem support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,fs-ntfs3))
|
||||
@ -634,7 +534,7 @@ define KernelPackage/fs-udf
|
||||
KCONFIG:=CONFIG_UDF_FS
|
||||
FILES:=$(LINUX_DIR)/fs/udf/udf.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,udf)
|
||||
DEPENDS:=+kmod-lib-crc-itu-t +kmod-cdrom
|
||||
DEPENDS:=+kmod-lib-crc-itu-t
|
||||
$(call AddDepends/nls)
|
||||
endef
|
||||
|
||||
@ -654,7 +554,7 @@ define KernelPackage/fs-vfat
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/fs/fat/fat.ko \
|
||||
$(LINUX_DIR)/fs/fat/vfat.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,fat vfat,1)
|
||||
AUTOLOAD:=$(call AutoLoad,30,fat vfat)
|
||||
$(call AddDepends/nls,cp437 iso8859-1 utf8)
|
||||
endef
|
||||
|
||||
@ -694,22 +594,3 @@ define KernelPackage/fuse/description
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,fuse))
|
||||
|
||||
|
||||
define KernelPackage/pstore
|
||||
SUBMENU:=$(FS_MENU)
|
||||
TITLE:=Pstore file system
|
||||
DEFAULT:=m if ALL_KMODS
|
||||
KCONFIG:= \
|
||||
CONFIG_PSTORE \
|
||||
CONFIG_PSTORE_COMPRESS=y
|
||||
FILES:= $(LINUX_DIR)/fs/pstore/pstore.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,pstore,1)
|
||||
DEPENDS:=+kmod-lib-zlib-deflate +kmod-lib-zlib-inflate
|
||||
endef
|
||||
|
||||
define KernelPackage/pstore/description
|
||||
Kernel module for pstore filesystem support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,pstore))
|
||||
|
@ -1,139 +0,0 @@
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
GPIO_MENU:=GPIO support
|
||||
|
||||
define KernelPackage/gpio-amd-fch
|
||||
SUBMENU:=$(GPIO_MENU)
|
||||
DEPENDS:=@GPIO_SUPPORT @TARGET_x86
|
||||
TITLE:=GPIO support for AMD Fusion Controller Hub (G-series SOCs)
|
||||
KCONFIG:=CONFIG_GPIO_AMD_FCH
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-amd-fch.ko
|
||||
AUTOLOAD:=$(call AutoLoad,25,gpio-amd-fch,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-amd-fch/description
|
||||
This option enables driver for GPIO on AMDs Fusion Controller Hub,
|
||||
as found on G-series SOCs (eg. GX-412TC)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-amd-fch))
|
||||
|
||||
|
||||
define KernelPackage/gpio-beeper
|
||||
SUBMENU:=$(GPIO_MENU)
|
||||
TITLE:=GPIO beeper support
|
||||
DEPENDS:=+kmod-input-core
|
||||
KCONFIG:= \
|
||||
CONFIG_INPUT_MISC=y \
|
||||
CONFIG_INPUT_GPIO_BEEPER
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-beeper/description
|
||||
This enables playing beeps through an GPIO-connected buzzer
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-beeper))
|
||||
|
||||
|
||||
define KernelPackage/gpio-cascade
|
||||
SUBMENU:=$(GPIO_MENU)
|
||||
TITLE:=Generic GPIO cascade
|
||||
KCONFIG:=CONFIG_GPIO_CASCADE
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-mux-core
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-cascade.ko
|
||||
AUTOLOAD:=$(call AutoLoad,29,gpio-cascade,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-cascade/description
|
||||
Kernel module for Generic GPIO cascade
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-cascade))
|
||||
|
||||
|
||||
define KernelPackage/gpio-f7188x
|
||||
SUBMENU:=$(GPIO_MENU)
|
||||
TITLE:=Fintek F718xx/F818xx GPIO Support
|
||||
DEPENDS:=@GPIO_SUPPORT @TARGET_x86
|
||||
KCONFIG:=CONFIG_GPIO_F7188X
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-f7188x.ko
|
||||
AUTOLOAD:=$(call AutoProbe,gpio-f7188x)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-f7188x/description
|
||||
Kernel module for the GPIOs found on many Fintek Super-IO chips.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-f7188x))
|
||||
|
||||
|
||||
define KernelPackage/gpio-it87
|
||||
SUBMENU:=$(GPIO_MENU)
|
||||
DEPENDS:=@GPIO_SUPPORT @TARGET_x86
|
||||
TITLE:=GPIO support for IT87xx Super I/O chips
|
||||
KCONFIG:=CONFIG_GPIO_IT87
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-it87.ko
|
||||
AUTOLOAD:=$(call AutoLoad,25,gpio-it87,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-it87/description
|
||||
This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
|
||||
supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as
|
||||
well.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-it87))
|
||||
|
||||
|
||||
define KernelPackage/gpio-nxp-74hc164
|
||||
SUBMENU:=$(GPIO_MENU)
|
||||
TITLE:=NXP 74HC164 GPIO expander support
|
||||
KCONFIG:=CONFIG_GPIO_74X164
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-74x164.ko
|
||||
AUTOLOAD:=$(call AutoProbe,gpio-74x164)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-nxp-74hc164/description
|
||||
Kernel module for NXP 74HC164 GPIO expander
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-nxp-74hc164))
|
||||
|
||||
|
||||
define KernelPackage/gpio-pca953x
|
||||
SUBMENU:=$(GPIO_MENU)
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
|
||||
TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
|
||||
KCONFIG:=CONFIG_GPIO_PCA953X \
|
||||
CONFIG_GPIO_PCA953X_IRQ=y
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
|
||||
AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-pca953x/description
|
||||
Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
|
||||
PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-pca953x))
|
||||
|
||||
|
||||
define KernelPackage/gpio-pcf857x
|
||||
SUBMENU:=$(GPIO_MENU)
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
|
||||
TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
|
||||
KCONFIG:=CONFIG_GPIO_PCF857X
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
|
||||
AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-pcf857x/description
|
||||
Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-pcf857x))
|
@ -34,7 +34,7 @@ define KernelPackage/hwmon-ad7418
|
||||
KCONFIG:=CONFIG_SENSORS_AD7418
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/ad7418.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,ad7418 ad7418)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-core)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-ad7418/description
|
||||
@ -43,6 +43,20 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-ad7418))
|
||||
|
||||
define KernelPackage/hwmon-ads1015
|
||||
TITLE:=Texas Instruments ADS1015
|
||||
KCONFIG:= CONFIG_SENSORS_ADS1015
|
||||
FILES:= $(LINUX_DIR)/drivers/hwmon/ads1015.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,ads1015)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-ads1015/description
|
||||
Kernel module for Texas Instruments ADS1015 Analog-to-Digital converter
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-ads1015))
|
||||
|
||||
define KernelPackage/hwmon-adt7410
|
||||
TITLE:=ADT7410 monitoring support
|
||||
KCONFIG:= \
|
||||
@ -52,7 +66,7 @@ define KernelPackage/hwmon-adt7410
|
||||
$(LINUX_DIR)/drivers/hwmon/adt7x10.ko \
|
||||
$(LINUX_DIR)/drivers/hwmon/adt7410.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,adt7x10 adt7410)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-core)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-adt7410/description
|
||||
@ -77,23 +91,6 @@ endef
|
||||
$(eval $(call KernelPackage,hwmon-adt7475))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-coretemp
|
||||
TITLE:=Intel Core/Core2/Atom temperature sensor
|
||||
KCONFIG:=CONFIG_SENSORS_CORETEMP
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/coretemp.ko
|
||||
AUTOLOAD:=$(call AutoProbe,coretemp)
|
||||
$(call AddDepends/hwmon,@TARGET_x86)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-coretemp/description
|
||||
Kernel module for Intel Core/Core2/Atom temperature monitoring support.
|
||||
Most of the family 6 CPUs are supported.
|
||||
Check Documentation/hwmon/coretemp.rst for details.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-coretemp))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-dme1737
|
||||
TITLE:=SMSC DME1737 and compatible monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_DME1737
|
||||
@ -125,40 +122,6 @@ endef
|
||||
$(eval $(call KernelPackage,hwmon-drivetemp))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-emc2305
|
||||
TITLE:=Microchip EMC2301/2/3/5 fan controller
|
||||
KCONFIG:=CONFIG_SENSORS_EMC2305
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/emc2305.ko
|
||||
AUTOLOAD:=$(call AutoProbe,emc2305)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core +PACKAGE_kmod-thermal:kmod-thermal +kmod-regmap-i2c)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-emc2305/description
|
||||
Kernel module for Microchip EMC2301/EMC2302/EMC2303/EMC2305 fan controllers
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-emc2305))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-gsc
|
||||
TITLE:=Gateworks System Controller support
|
||||
KCONFIG:=CONFIG_MFD_GATEWORKS_GSC \
|
||||
CONFIG_SENSORS_GSC
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/mfd/gateworks-gsc.ko \
|
||||
$(LINUX_DIR)/drivers/hwmon/gsc-hwmon.ko
|
||||
AUTOLOAD:=$(call AutoLoad,20,gsc-hwmon,1)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core +kmod-mfd)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-gsc/description
|
||||
Kernel module for Gateworks System Controller with temperature sensor,
|
||||
ADCs, and FAN controller
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-gsc))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-gpiofan
|
||||
TITLE:=Generic GPIO FAN support
|
||||
KCONFIG:=CONFIG_SENSORS_GPIO_FAN
|
||||
@ -189,21 +152,6 @@ endef
|
||||
$(eval $(call KernelPackage,hwmon-f71882fg))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-g762
|
||||
TITLE:=G762/G763 fan speed PWM controller support
|
||||
KCONFIG:=CONFIG_SENSORS_G762
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/g762.ko
|
||||
AUTOLOAD:=$(call AutoProbe,g762)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-g762/description
|
||||
Kernel module for Global Mixed-mode Technology Inc G761/G762/G763 fan speed PWM controller chips.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-g762))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-ina209
|
||||
TITLE:=INA209 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_INA209
|
||||
@ -249,21 +197,6 @@ endef
|
||||
$(eval $(call KernelPackage,hwmon-it87))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-jc42
|
||||
TITLE:=Jedec JC42.4 compliant temperature sensors support
|
||||
KCONFIG:=CONFIG_SENSORS_JC42
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/jc42.ko
|
||||
AUTOLOAD:=$(call AutoProbe,jc42)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-i2c)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-jc42/description
|
||||
Kernel module for Jedec JC42.4 compliant temperature sensors
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-jc42))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-lm63
|
||||
TITLE:=LM63/64 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_LM63
|
||||
@ -279,23 +212,6 @@ endef
|
||||
$(eval $(call KernelPackage,hwmon-lm63))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-lm70
|
||||
TITLE:=LM70 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_LM70 \
|
||||
CONFIG_SPI=y \
|
||||
CONFIG_SPI_MASTER=y
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/lm70.ko
|
||||
AUTOLOAD:=$(call AutoProbe,lm70)
|
||||
$(call AddDepends/hwmon)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-lm70/description
|
||||
Kernel module for lm70 and compatible thermal monitor chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-lm70))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-lm75
|
||||
TITLE:=LM75 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_LM75
|
||||
@ -401,36 +317,6 @@ endef
|
||||
$(eval $(call KernelPackage,hwmon-ltc4151))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-max6642
|
||||
TITLE:=MAX6642 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_MAX6642
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/max6642.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,max6642 max6642)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-max6642/description
|
||||
Kernel module for Maxim MAX6642 temperature monitor
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-max6642))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-max6697
|
||||
TITLE:=MAX6697 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_MAX6697
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/max6697.ko
|
||||
AUTOLOAD:=$(call AutoProbe,max6697)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-max6697/description
|
||||
Kernel module for Maxim MAX6697 temperature monitor
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-max6697))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-mcp3021
|
||||
TITLE:=MCP3021/3221 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_MCP3021
|
||||
@ -449,11 +335,9 @@ $(eval $(call KernelPackage,hwmon-mcp3021))
|
||||
define KernelPackage/hwmon-nct6775
|
||||
TITLE:=NCT6106D/6775F/6776F/6779D/6791D/6792D/6793D and compatibles monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_NCT6775
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/hwmon/nct6775.ko \
|
||||
$(LINUX_DIR)/drivers/hwmon/nct6775-core.ko
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/nct6775.ko
|
||||
AUTOLOAD:=$(call AutoProbe,nct6775)
|
||||
$(call AddDepends/hwmon,@PCI_SUPPORT @TARGET_x86 +kmod-hwmon-vid +kmod-regmap-core)
|
||||
$(call AddDepends/hwmon,@PCI_SUPPORT @TARGET_x86 +kmod-hwmon-vid)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-nct6775/description
|
||||
@ -463,21 +347,6 @@ endef
|
||||
$(eval $(call KernelPackage,hwmon-nct6775))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-nct7802
|
||||
TITLE:=NCT7802Y and compatibles monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_NCT7802
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/nct7802.ko
|
||||
AUTOLOAD:=$(call AutoProbe,nct7802)
|
||||
$(call AddDepends/hwmon,+kmod-regmap-i2c)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-nct7802/description
|
||||
Kernel module for NCT7802Y thermal monitor chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-nct7802))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-pc87360
|
||||
TITLE:=PC87360 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_PC87360
|
||||
@ -572,36 +441,6 @@ endef
|
||||
$(eval $(call KernelPackage,hwmon-sht21))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-sht3x
|
||||
TITLE:=Sensiron SHT3x and compat. monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_SHT3x
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/sht3x.ko
|
||||
AUTOLOAD:=$(call AutoProbe,sht3x)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core +kmod-lib-crc8)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-sht3x/description
|
||||
Kernel module for Sensirion SHT3x temperature and humidity sensors chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-sht3x))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-tc654
|
||||
TITLE:=TC654 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_TC654
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/tc654.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,tc654)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-tc654/description
|
||||
Kernel module for Microchip TC654/TC655 and compatibles
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-tc654))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-tmp102
|
||||
TITLE:=Texas Instruments TMP102 monitoring support
|
||||
KCONFIG:=CONFIG_SENSORS_TMP102
|
||||
@ -647,20 +486,6 @@ endef
|
||||
$(eval $(call KernelPackage,hwmon-tmp421))
|
||||
|
||||
|
||||
define KernelPackage/hwmon-tps23861
|
||||
TITLE:=Texas Instruments TPS23861 PoE PSE
|
||||
KCONFIG:=CONFIG_SENSORS_TPS23861
|
||||
FILES:=$(LINUX_DIR)/drivers/hwmon/tps23861.ko
|
||||
AUTOLOAD:=$(call AutoProbe,tps23861)
|
||||
$(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-i2c)
|
||||
endef
|
||||
|
||||
define KernelPackage/hwmon-tps23861/description
|
||||
Kernel module for the Texas Instruments TPS23861 802.3at PoE PSE chips.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,hwmon-tps23861))
|
||||
|
||||
define KernelPackage/hwmon-vid
|
||||
TITLE:=VID/VRM/VRD voltage conversion module.
|
||||
KCONFIG:=CONFIG_HWMON_VID
|
||||
|
@ -84,49 +84,6 @@ endef
|
||||
$(eval $(call KernelPackage,i2c-algo-pcf))
|
||||
|
||||
|
||||
I2C_CCGS_UCSI_MODULES:= \
|
||||
CONFIG_I2C_CCGX_UCSI:drivers/i2c/busses/i2c-ccgx-ucsi
|
||||
|
||||
define KernelPackage/i2c-ccgs-ucsi
|
||||
$(call i2c_defaults,$(I2C_CCGS_UCSI_MODULES),58)
|
||||
TITLE:=Cypress CCGx Type-C controller
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-core
|
||||
HIDDEN:=y
|
||||
endef
|
||||
|
||||
|
||||
$(eval $(call KernelPackage,i2c-ccgs-ucsi))
|
||||
|
||||
|
||||
I2C_DWCORE_MODULES:= \
|
||||
CONFIG_I2C_DESIGNWARE_CORE:drivers/i2c/busses/i2c-designware-core
|
||||
|
||||
define KernelPackage/i2c-designware-core
|
||||
$(call i2c_defaults,$(I2C_DWCORE_MODULES),58)
|
||||
TITLE:=Synopsys DesignWare I2C core
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-core
|
||||
HIDDEN:=y
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,i2c-designware-core))
|
||||
|
||||
|
||||
I2C_DWPCI_MODULES:= \
|
||||
CONFIG_I2C_DESIGNWARE_PCI:drivers/i2c/busses/i2c-designware-pci
|
||||
|
||||
define KernelPackage/i2c-designware-pci
|
||||
$(call i2c_defaults,$(I2C_DWPCI_MODULES),59)
|
||||
TITLE:=Synopsys DesignWare PCI
|
||||
DEPENDS:=@PCI_SUPPORT +kmod-i2c-designware-core +kmod-i2c-ccgs-ucsi
|
||||
endef
|
||||
|
||||
define KernelPackage/i2c-designware-pci/description
|
||||
Support for Synopsys DesignWare I2C controller. Only master mode is supported.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,i2c-designware-pci))
|
||||
|
||||
|
||||
I2C_GPIO_MODULES:= \
|
||||
CONFIG_I2C_GPIO:drivers/i2c/busses/i2c-gpio
|
||||
|
||||
@ -169,24 +126,6 @@ endef
|
||||
$(eval $(call KernelPackage,i2c-i801))
|
||||
|
||||
|
||||
I2C_MLXCPLD_MODULES:= \
|
||||
CONFIG_I2C_MLXCPLD:drivers/i2c/busses/i2c-mlxcpld
|
||||
|
||||
define KernelPackage/i2c-mlxcpld
|
||||
$(call i2c_defaults,$(I2C_MLXCPLD_MODULES),59)
|
||||
TITLE:=Mellanox I2C driver
|
||||
DEPENDS:=@TARGET_x86_64 +kmod-regmap-core
|
||||
endef
|
||||
|
||||
define KernelPackage/i2c-mlxcpld/description
|
||||
This exposes the Mellanox platform I2C busses
|
||||
to the linux I2C layer for X86 based systems.
|
||||
Controller is implemented as CPLD logic.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,i2c-mlxcpld))
|
||||
|
||||
|
||||
I2C_MUX_MODULES:= \
|
||||
CONFIG_I2C_MUX:drivers/i2c/i2c-mux
|
||||
|
||||
@ -218,40 +157,6 @@ endef
|
||||
$(eval $(call KernelPackage,i2c-mux-gpio))
|
||||
|
||||
|
||||
I2C_MUX_MLXCPLD_MODULES:= \
|
||||
CONFIG_I2C_MUX_MLXCPLD:drivers/i2c/muxes/i2c-mux-mlxcpld
|
||||
|
||||
define KernelPackage/i2c-mux-mlxcpld
|
||||
$(call i2c_defaults,$(I2C_MUX_MLXCPLD_MODULES),51)
|
||||
TITLE:=Mellanox CPLD based I2C multiplexer
|
||||
DEPENDS:=+kmod-i2c-mlxcpld +kmod-i2c-mux
|
||||
endef
|
||||
|
||||
define KernelPackage/i2c-mux-mlxcpld/description
|
||||
This driver provides access to
|
||||
I2C busses connected through a MUX, which is controlled
|
||||
by a CPLD register.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,i2c-mux-mlxcpld))
|
||||
|
||||
|
||||
I2C_MUX_REG_MODULES:= \
|
||||
CONFIG_I2C_MUX_REG:drivers/i2c/muxes/i2c-mux-reg
|
||||
|
||||
define KernelPackage/i2c-mux-reg
|
||||
$(call i2c_defaults,$(I2C_MUX_REG_MODULES),51)
|
||||
TITLE:=Register-based I2C mux/switches
|
||||
DEPENDS:=+kmod-i2c-mux
|
||||
endef
|
||||
|
||||
define KernelPackage/i2c-mux-reg/description
|
||||
Kernel modules for register-based I2C bus mux/switching devices
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,i2c-mux-reg))
|
||||
|
||||
|
||||
I2C_MUX_PCA9541_MODULES:= \
|
||||
CONFIG_I2C_MUX_PCA9541:drivers/i2c/muxes/i2c-mux-pca9541
|
||||
|
||||
|
@ -25,17 +25,14 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,iio-core))
|
||||
|
||||
define AddDepends/iio
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS+=+kmod-iio-core $(1)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-kfifo-buf
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=Industrial I/O buffering based on kfifo
|
||||
DEPENDS:=+kmod-iio-core
|
||||
KCONFIG:=CONFIG_IIO_KFIFO_BUF
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/buffer/kfifo_buf.ko
|
||||
AUTOLOAD:=$(call AutoLoad,55,kfifo_buf)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-kfifo-buf/description
|
||||
@ -46,45 +43,13 @@ endef
|
||||
$(eval $(call KernelPackage,iio-kfifo-buf))
|
||||
|
||||
|
||||
define KernelPackage/industrialio-hw-consumer
|
||||
TITLE:=Provides a bonding way to an other device in hardware
|
||||
KCONFIG:=CONFIG_IIO_BUFFER_HW_CONSUMER
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/buffer/industrialio-hw-consumer.ko
|
||||
AUTOLOAD:=$(call AutoLoad,55,industrialio-hw-consumer)
|
||||
$(call AddDepends/iio,+kmod-iio-kfifo-buf)
|
||||
endef
|
||||
|
||||
define KernelPackage/industrialio-hw-consumer/description
|
||||
Provides a way to bonding when an IIO device has a direct connection
|
||||
to another device in hardware. In this case buffers for data transfers
|
||||
are handled by hardware.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,industrialio-hw-consumer))
|
||||
|
||||
|
||||
define KernelPackage/industrialio-buffer-cb
|
||||
TITLE:=Provides callback buffer used for push in-kernel interfaces
|
||||
KCONFIG:=CONFIG_IIO_BUFFER_CB
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/buffer/industrialio-buffer-cb.ko
|
||||
AUTOLOAD:=$(call AutoLoad,55,industrialio-triggered-buffer-cb)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/industrialio-buffer-cb/description
|
||||
Should be selected by any drivers that do in-kernel push usage.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,industrialio-buffer-cb))
|
||||
|
||||
|
||||
define KernelPackage/industrialio-triggered-buffer
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=Provides helper functions for setting up triggered buffers.
|
||||
DEPENDS:=+kmod-iio-kfifo-buf
|
||||
DEPENDS:=+kmod-iio-core +kmod-iio-kfifo-buf
|
||||
KCONFIG:=CONFIG_IIO_TRIGGERED_BUFFER
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/buffer/industrialio-triggered-buffer.ko
|
||||
AUTOLOAD:=$(call AutoLoad,55,industrialio-triggered-buffer)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/industrialio-triggered-buffer/description
|
||||
@ -95,14 +60,14 @@ $(eval $(call KernelPackage,industrialio-triggered-buffer))
|
||||
|
||||
|
||||
define KernelPackage/iio-ad799x
|
||||
DEPENDS:=+kmod-i2c-core +kmod-industrialio-triggered-buffer
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer
|
||||
TITLE:=Analog Devices AD799x ADC driver
|
||||
KCONFIG:= \
|
||||
CONFIG_AD799X_RING_BUFFER=y \
|
||||
CONFIG_AD799X
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/adc/ad799x.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,ad799x)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-ad799x/description
|
||||
@ -113,30 +78,15 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,iio-ad799x))
|
||||
|
||||
define KernelPackage/iio-ads1015
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-industrialio-triggered-buffer
|
||||
TITLE:=Texas Instruments ADS1015 ADC driver
|
||||
KCONFIG:= CONFIG_TI_ADS1015
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/adc/ti-ads1015.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,ti-ads1015)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-ads1015/description
|
||||
This driver adds support for Texas Instruments ADS1015 and ADS1115 ADCs.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,iio-ads1015))
|
||||
|
||||
define KernelPackage/iio-hmc5843
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-industrialio-triggered-buffer
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-regmap-i2c +kmod-industrialio-triggered-buffer
|
||||
TITLE:=Honeywell HMC58x3 Magnetometer
|
||||
KCONFIG:= CONFIG_SENSORS_HMC5843_I2C
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/iio/magnetometer/hmc5843_i2c.ko \
|
||||
$(LINUX_DIR)/drivers/iio/magnetometer/hmc5843_core.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,hmc5843)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-hmc5843/description
|
||||
@ -146,12 +96,12 @@ endef
|
||||
$(eval $(call KernelPackage,iio-hmc5843))
|
||||
|
||||
define KernelPackage/iio-bh1750
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-i2c-core +kmod-iio-core
|
||||
TITLE:=ROHM BH1750 ambient light sensor
|
||||
KCONFIG:= CONFIG_BH1750
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/light/bh1750.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,bh1750)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
define KernelPackage/iio-bh1750/description
|
||||
ROHM BH1750 ambient light sensor (i2c bus)
|
||||
@ -159,12 +109,12 @@ endef
|
||||
$(eval $(call KernelPackage,iio-bh1750))
|
||||
|
||||
define KernelPackage/iio-am2315
|
||||
DEPENDS:=+kmod-i2c-core +kmod-industrialio-triggered-buffer
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer
|
||||
TITLE:=Asong AM2315 humidity/temperature sensor
|
||||
KCONFIG:= CONFIG_AM2315
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/humidity/am2315.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,am2315)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
define KernelPackage/iio-am2315/description
|
||||
Aosong AM2315 humidity/temperature sensor (I2C bus)
|
||||
@ -172,13 +122,13 @@ endef
|
||||
$(eval $(call KernelPackage,iio-am2315))
|
||||
|
||||
define KernelPackage/iio-mxs-lradc
|
||||
DEPENDS:=@TARGET_mxs +kmod-industrialio-triggered-buffer
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=@TARGET_mxs +kmod-iio-core +kmod-industrialio-triggered-buffer
|
||||
TITLE:=Freescale i.MX23/i.MX28 LRADC ADC driver
|
||||
KCONFIG:= \
|
||||
CONFIG_MXS_LRADC_ADC
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/adc/mxs-lradc-adc.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,mxs-lradc-adc)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-mxs-lradc/description
|
||||
@ -188,13 +138,13 @@ endef
|
||||
$(eval $(call KernelPackage,iio-mxs-lradc))
|
||||
|
||||
define KernelPackage/iio-dht11
|
||||
DEPENDS:=@GPIO_SUPPORT @USES_DEVICETREE
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
|
||||
TITLE:=DHT11 (and compatible) humidity and temperature sensors
|
||||
KCONFIG:= \
|
||||
CONFIG_DHT11
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,dht11)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-dht11/description
|
||||
@ -207,11 +157,11 @@ $(eval $(call KernelPackage,iio-dht11))
|
||||
|
||||
|
||||
define KernelPackage/iio-bme680
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=BME680 gas/humidity/pressure/temperature sensor
|
||||
DEPENDS:=+kmod-regmap-core
|
||||
DEPENDS:=+kmod-iio-core +kmod-regmap-core
|
||||
KCONFIG:=CONFIG_BME680
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/chemical/bme680_core.ko
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-bme680/description
|
||||
@ -222,12 +172,12 @@ endef
|
||||
$(eval $(call KernelPackage,iio-bme680))
|
||||
|
||||
define KernelPackage/iio-bme680-i2c
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=BME680 gas/humidity/pressure/temperature sensor (I2C)
|
||||
DEPENDS:=+kmod-iio-bme680 +kmod-regmap-i2c
|
||||
KCONFIG:=CONFIG_BME680_I2C
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/chemical/bme680_i2c.ko
|
||||
AUTOLOAD:=$(call AutoProbe,bme680-i2c)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
define KernelPackage/iio-bme680-i2c/description
|
||||
This driver adds support for Bosch Sensortec's BME680 connected via I2C.
|
||||
@ -236,12 +186,12 @@ endef
|
||||
$(eval $(call KernelPackage,iio-bme680-i2c))
|
||||
|
||||
define KernelPackage/iio-bme680-spi
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=BME680 gas/humidity/pressure/temperature sensor (SPI)
|
||||
DEPENDS:=+kmod-iio-bme680 +kmod-regmap-spi
|
||||
KCONFIG:=CONFIG_BME680_SPI
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/chemical/bme680_spi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,bme680-spi)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
define KernelPackage/iio-bme680-spi/description
|
||||
This driver adds support for Bosch Sensortec's BME680 connected via SPI.
|
||||
@ -251,11 +201,11 @@ $(eval $(call KernelPackage,iio-bme680-spi))
|
||||
|
||||
|
||||
define KernelPackage/iio-bmp280
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor
|
||||
DEPENDS:=+kmod-regmap-core
|
||||
DEPENDS:=+kmod-iio-core +kmod-regmap-core
|
||||
KCONFIG:=CONFIG_BMP280
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280.ko
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-bmp280/description
|
||||
@ -268,12 +218,12 @@ $(eval $(call KernelPackage,iio-bmp280))
|
||||
|
||||
|
||||
define KernelPackage/iio-bmp280-i2c
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor (I2C)
|
||||
DEPENDS:=+kmod-iio-bmp280 +kmod-i2c-core +kmod-regmap-i2c
|
||||
KCONFIG:=CONFIG_BMP280_I2C
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-i2c.ko
|
||||
AUTOLOAD:=$(call AutoProbe,bmp280-i2c)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
define KernelPackage/iio-bmp280-i2c/description
|
||||
This driver adds support for Bosch Sensortec's digital pressure and
|
||||
@ -284,12 +234,12 @@ $(eval $(call KernelPackage,iio-bmp280-i2c))
|
||||
|
||||
|
||||
define KernelPackage/iio-bmp280-spi
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor (SPI)
|
||||
DEPENDS:=+kmod-iio-bmp280 +kmod-spi-bitbang
|
||||
KCONFIG:=CONFIG_BMP280_SPI
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-spi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,bmp280-spi)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
define KernelPackage/iio-bmp280-spi/description
|
||||
This driver adds support for Bosch Sensortec's digital pressure and
|
||||
@ -299,7 +249,8 @@ endef
|
||||
$(eval $(call KernelPackage,iio-bmp280-spi))
|
||||
|
||||
define KernelPackage/iio-htu21
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-i2c-core +kmod-iio-core
|
||||
TITLE:=HTU21 humidity & temperature sensor
|
||||
KCONFIG:= \
|
||||
CONFIG_HTU21 \
|
||||
@ -308,7 +259,6 @@ define KernelPackage/iio-htu21
|
||||
$(LINUX_DIR)/drivers/iio/humidity/htu21.ko \
|
||||
$(LINUX_DIR)/drivers/iio/common/ms_sensors/ms_sensors_i2c.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,htu21)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-htu21/description
|
||||
@ -322,13 +272,13 @@ $(eval $(call KernelPackage,iio-htu21))
|
||||
|
||||
|
||||
define KernelPackage/iio-ccs811
|
||||
DEPENDS:=+kmod-i2c-core +kmod-industrialio-triggered-buffer
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer
|
||||
TITLE:=AMS CCS811 VOC sensor
|
||||
KCONFIG:= \
|
||||
CONFIG_CCS811
|
||||
FILES:= $(LINUX_DIR)/drivers/iio/chemical/ccs811.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,ccs811)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-ccs811/description
|
||||
@ -339,12 +289,12 @@ $(eval $(call KernelPackage,iio-ccs811))
|
||||
|
||||
|
||||
define KernelPackage/iio-si7020
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-i2c-core +kmod-iio-core
|
||||
TITLE:=Silicon Labs Si7020 sensor
|
||||
KCONFIG:= CONFIG_SI7020
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/humidity/si7020.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,si7020)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-si7020/description
|
||||
@ -357,15 +307,15 @@ $(eval $(call KernelPackage,iio-si7020))
|
||||
|
||||
|
||||
define KernelPackage/iio-st_accel
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=STMicroelectronics accelerometer 3-Axis Driver
|
||||
DEPENDS:=+kmod-regmap-core +kmod-industrialio-triggered-buffer
|
||||
DEPENDS:=+kmod-iio-core +kmod-regmap-core +kmod-industrialio-triggered-buffer
|
||||
KCONFIG:= \
|
||||
CONFIG_IIO_ST_ACCEL_3AXIS \
|
||||
CONFIG_IIO_ST_SENSORS_CORE
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/iio/accel/st_accel.ko \
|
||||
$(LINUX_DIR)/drivers/iio/common/st_sensors/st_sensors.ko
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-st_accel/description
|
||||
@ -379,6 +329,7 @@ $(eval $(call KernelPackage,iio-st_accel))
|
||||
|
||||
|
||||
define KernelPackage/iio-st_accel-i2c
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=STMicroelectronics accelerometer 3-Axis Driver (I2C)
|
||||
DEPENDS:=+kmod-iio-st_accel +kmod-i2c-core +kmod-regmap-i2c
|
||||
KCONFIG:= CONFIG_IIO_ST_ACCEL_I2C_3AXIS
|
||||
@ -386,7 +337,6 @@ define KernelPackage/iio-st_accel-i2c
|
||||
$(LINUX_DIR)/drivers/iio/accel/st_accel_i2c.ko \
|
||||
$(LINUX_DIR)/drivers/iio/common/st_sensors/st_sensors_i2c.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,st_accel_i2c)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-st_accel-i2c/description
|
||||
@ -397,6 +347,7 @@ $(eval $(call KernelPackage,iio-st_accel-i2c))
|
||||
|
||||
|
||||
define KernelPackage/iio-st_accel-spi
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=STMicroelectronics accelerometer 3-Axis Driver (SPI)
|
||||
DEPENDS:=+kmod-iio-st_accel +kmod-regmap-spi
|
||||
KCONFIG:= CONFIG_IIO_ST_ACCEL_SPI_3AXIS
|
||||
@ -404,7 +355,6 @@ define KernelPackage/iio-st_accel-spi
|
||||
$(LINUX_DIR)/drivers/iio/accel/st_accel_spi.ko \
|
||||
$(LINUX_DIR)/drivers/iio/common/st_sensors/st_sensors_spi.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,st_accel_spi)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-st_accel-spi/description
|
||||
@ -415,12 +365,12 @@ $(eval $(call KernelPackage,iio-st_accel-spi))
|
||||
|
||||
|
||||
define KernelPackage/iio-lsm6dsx
|
||||
DEPENDS:=+kmod-iio-kfifo-buf +kmod-regmap-core +kmod-industrialio-triggered-buffer
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-iio-core +kmod-iio-kfifo-buf +kmod-regmap-core
|
||||
TITLE:=ST LSM6DSx driver for IMU MEMS sensors
|
||||
KCONFIG:=CONFIG_IIO_ST_LSM6DSX
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.ko
|
||||
AUTOLOAD:=$(call AutoProbe,st_lsm6dsx)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-lsm6dsx/description
|
||||
@ -431,12 +381,12 @@ $(eval $(call KernelPackage,iio-lsm6dsx))
|
||||
|
||||
|
||||
define KernelPackage/iio-lsm6dsx-i2c
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-iio-lsm6dsx +kmod-i2c-core +kmod-regmap-i2c
|
||||
TITLE:=ST LSM6DSx driver for IMU MEMS sensors (I2C)
|
||||
KCONFIG:=CONFIG_IIO_ST_LSM6DSX
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_i2c.ko
|
||||
AUTOLOAD:=$(call AutoProbe,st_lsm6dsx-i2c)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-lsm6dsx-i2c/description
|
||||
@ -447,12 +397,12 @@ $(eval $(call KernelPackage,iio-lsm6dsx-i2c))
|
||||
|
||||
|
||||
define KernelPackage/iio-lsm6dsx-spi
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-iio-lsm6dsx +kmod-regmap-spi
|
||||
TITLE:=ST LSM6DSx driver for IMU MEMS sensors (SPI)
|
||||
KCONFIG:=CONFIG_IIO_ST_LSM6DSX
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_spi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,st_lsm6dsx-spi)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-lsm6dsx-spi/description
|
||||
@ -463,16 +413,12 @@ $(eval $(call KernelPackage,iio-lsm6dsx-spi))
|
||||
|
||||
|
||||
define KernelPackage/iio-sps30
|
||||
DEPENDS:=+kmod-i2c-core +kmod-industrialio-triggered-buffer +kmod-lib-crc8
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer +kmod-lib-crc8
|
||||
TITLE:=Sensirion SPS30 particulate matter sensor
|
||||
KCONFIG:= \
|
||||
CONFIG_SPS30 \
|
||||
CONFIG_SPS30_I2C
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/iio/chemical/sps30.ko \
|
||||
$(LINUX_DIR)/drivers/iio/chemical/sps30_i2c.ko
|
||||
AUTOLOAD:=$(call AutoProbe,sps30 sps30_i2c)
|
||||
$(call AddDepends/iio)
|
||||
KCONFIG:=CONFIG_SPS30
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/chemical/sps30.ko
|
||||
AUTOLOAD:=$(call AutoProbe,sps30)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-sps30/description
|
||||
@ -483,12 +429,12 @@ $(eval $(call KernelPackage,iio-sps30))
|
||||
|
||||
|
||||
define KernelPackage/iio-tsl4531
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-i2c-core +kmod-iio-core
|
||||
TITLE:=TAOS TSL4531 ambient light sensor
|
||||
KCONFIG:= CONFIG_TSL4531
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/light/tsl4531.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,tsl4531)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-tsl4531/description
|
||||
@ -501,12 +447,12 @@ $(eval $(call KernelPackage,iio-tsl4531))
|
||||
|
||||
|
||||
define KernelPackage/iio-fxas21002c
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=Freescale FXAS21002C 3-axis gyro driver
|
||||
DEPENDS:=+kmod-regmap-core +kmod-industrialio-triggered-buffer
|
||||
DEPENDS:=+kmod-iio-core +kmod-regmap-core +kmod-industrialio-triggered-buffer
|
||||
KCONFIG:= CONFIG_FXAS21002C
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/gyro/fxas21002c_core.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,fxas21002c)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-fxas21002c/description
|
||||
@ -517,12 +463,12 @@ $(eval $(call KernelPackage,iio-fxas21002c))
|
||||
|
||||
|
||||
define KernelPackage/iio-fxas21002c-i2c
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=Freescale FXAS21002C 3-axis gyro driver (I2C)
|
||||
DEPENDS:=+kmod-iio-fxas21002c +kmod-i2c-core +kmod-regmap-i2c
|
||||
KCONFIG:= CONFIG_FXAS21002C_I2C
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/gyro/fxas21002c_i2c.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,fxas21002c_i2c)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-fxas21002c-i2c/description
|
||||
@ -534,12 +480,12 @@ endef
|
||||
$(eval $(call KernelPackage,iio-fxas21002c-i2c))
|
||||
|
||||
define KernelPackage/iio-fxas21002c-spi
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-iio-fxas21002c +kmod-regmap-spi
|
||||
TITLE:=Freescale FXAS21002C 3-axis gyro driver (SPI)
|
||||
KCONFIG:= CONFIG_FXAS21002C_SPI
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/gyro/fxas21002c_spi.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,fxas21002c_spi)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-fxas21002c-spi/description
|
||||
@ -551,12 +497,12 @@ $(eval $(call KernelPackage,iio-fxas21002c-spi))
|
||||
|
||||
|
||||
define KernelPackage/iio-fxos8700
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=Freescale FXOS8700 3-axis accelerometer driver
|
||||
DEPENDS:=+kmod-regmap-core
|
||||
DEPENDS:=+kmod-iio-core +kmod-regmap-core
|
||||
KCONFIG:= CONFIG_FXOS8700
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/imu/fxos8700_core.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,fxos8700)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-fxos8700/description
|
||||
@ -567,12 +513,12 @@ $(eval $(call KernelPackage,iio-fxos8700))
|
||||
|
||||
|
||||
define KernelPackage/iio-fxos8700-i2c
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
TITLE:=Freescale FXOS8700 3-axis acceleromter driver (I2C)
|
||||
DEPENDS:=+kmod-iio-fxos8700 +kmod-i2c-core +kmod-regmap-i2c
|
||||
KCONFIG:= CONFIG_FXOS8700_I2C
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/imu/fxos8700_i2c.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,fxos8700_i2c)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-fxos8700-i2c/description
|
||||
@ -584,12 +530,12 @@ endef
|
||||
$(eval $(call KernelPackage,iio-fxos8700-i2c))
|
||||
|
||||
define KernelPackage/iio-fxos8700-spi
|
||||
SUBMENU:=$(IIO_MENU)
|
||||
DEPENDS:=+kmod-iio-fxos8700 +kmod-regmap-spi
|
||||
TITLE:=Freescale FXOS8700 3-axis accelerometer driver (SPI)
|
||||
KCONFIG:= CONFIG_FXOS8700_SPI
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/imu/fxos8700_spi.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,fxos8700_spi)
|
||||
$(call AddDepends/iio)
|
||||
endef
|
||||
|
||||
define KernelPackage/iio-fxos8700-spi/description
|
||||
@ -598,17 +544,3 @@ define KernelPackage/iio-fxos8700-spi/description
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,iio-fxos8700-spi))
|
||||
|
||||
define KernelPackage/iio-ti-am335x-adc
|
||||
TITLE:= TI Sitara AM335x ADC driver
|
||||
DEPENDS:=@TARGET_omap
|
||||
KCONFIG:=CONFIG_TI_AM335X_ADC
|
||||
FILES:=$(LINUX_DIR)/drivers/iio/adc/ti_am335x_adc.ko
|
||||
AUTOLOAD:=$(call AutoProbe,ti_am335x_adc)
|
||||
$(call AddDepends/iio,+kmod-iio-kfifo-buf)
|
||||
endef
|
||||
define KernelPackage/iio-ti-am335x-adc/description
|
||||
Driver for the TI AM335x ADC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,iio-ti-am335x-adc))
|
||||
|
@ -11,7 +11,7 @@ define KernelPackage/hid
|
||||
SUBMENU:=$(INPUT_MODULES_MENU)
|
||||
TITLE:=HID Devices
|
||||
DEPENDS:=+kmod-input-core +kmod-input-evdev
|
||||
KCONFIG:=CONFIG_HID CONFIG_HID_SUPPORT=y CONFIG_HIDRAW=y CONFIG_HID_BATTERY_STRENGTH=y
|
||||
KCONFIG:=CONFIG_HID CONFIG_HIDRAW=y CONFIG_HID_BATTERY_STRENGTH=y
|
||||
FILES:=$(LINUX_DIR)/drivers/hid/hid.ko
|
||||
AUTOLOAD:=$(call AutoLoad,61,hid)
|
||||
endef
|
||||
@ -92,7 +92,7 @@ $(eval $(call KernelPackage,input-gpio-keys))
|
||||
define KernelPackage/input-gpio-keys-polled
|
||||
SUBMENU:=$(INPUT_MODULES_MENU)
|
||||
TITLE:=Polled GPIO key support
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-input-core
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
|
||||
KCONFIG:= \
|
||||
CONFIG_KEYBOARD_GPIO_POLLED \
|
||||
CONFIG_INPUT_KEYBOARD=y
|
||||
@ -142,6 +142,21 @@ endef
|
||||
$(eval $(call KernelPackage,input-joydev))
|
||||
|
||||
|
||||
define KernelPackage/input-polldev
|
||||
SUBMENU:=$(INPUT_MODULES_MENU)
|
||||
TITLE:=Polled Input device support
|
||||
DEPENDS:=+kmod-input-core
|
||||
KCONFIG:=CONFIG_INPUT_POLLDEV
|
||||
FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
|
||||
endef
|
||||
|
||||
define KernelPackage/input-polldev/description
|
||||
Kernel module for support of polled input devices
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,input-polldev))
|
||||
|
||||
|
||||
define KernelPackage/input-matrixkmap
|
||||
SUBMENU:=$(INPUT_MODULES_MENU)
|
||||
TITLE:=Input matrix devices support
|
||||
@ -164,8 +179,10 @@ define KernelPackage/input-touchscreen-ads7846
|
||||
DEPENDS:=+kmod-hwmon-core +kmod-input-core +kmod-spi-bitbang
|
||||
KCONFIG:= \
|
||||
CONFIG_INPUT_TOUCHSCREEN=y \
|
||||
CONFIG_TOUCHSCREEN_PROPERTIES=y \
|
||||
CONFIG_TOUCHSCREEN_ADS7846
|
||||
FILES:=$(LINUX_DIR)/drivers/input/touchscreen/ads7846.ko
|
||||
FILES:=$(LINUX_DIR)/drivers/input/touchscreen/ads7846.ko \
|
||||
$(LINUX_DIR)/drivers/input/touchscreen/of_touchscreen.ko
|
||||
AUTOLOAD:=$(call AutoProbe,ads7846)
|
||||
endef
|
||||
|
||||
@ -176,29 +193,10 @@ endef
|
||||
$(eval $(call KernelPackage,input-touchscreen-ads7846))
|
||||
|
||||
|
||||
define KernelPackage/input-touchscreen-edt-ft5x06
|
||||
SUBMENU:=$(INPUT_MODULES_MENU)
|
||||
TITLE:=EDT FT5x06 and Focaltech FT6236 based touchscreens
|
||||
DEPENDS:=+kmod-i2c-core +kmod-input-core +kmod-regmap-i2c
|
||||
KCONFIG:= \
|
||||
CONFIG_INPUT_TOUCHSCREEN=y \
|
||||
CONFIG_TOUCHSCREEN_EDT_FT5X06
|
||||
FILES:=$(LINUX_DIR)/drivers/input/touchscreen/edt-ft5x06.ko
|
||||
AUTOLOAD:=$(call AutoProbe,edt-ft5x06)
|
||||
endef
|
||||
|
||||
define KernelPackage/input-touchscreen-edt-ft5x06/description
|
||||
Kernel module for EDT FT5206, FT5306, FT5406, FT5506, Evervision FT5726 \
|
||||
and Focaltech FT6236 based touchscreens
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,input-touchscreen-edt-ft5x06))
|
||||
|
||||
|
||||
define KernelPackage/keyboard-imx
|
||||
SUBMENU:=$(INPUT_MODULES_MENU)
|
||||
TITLE:=IMX keypad support
|
||||
DEPENDS:=@(TARGET_mxs||TARGET_imx) +kmod-input-matrixkmap
|
||||
DEPENDS:=@(TARGET_mxs||TARGET_imx6) +kmod-input-matrixkmap
|
||||
KCONFIG:= \
|
||||
CONFIG_KEYBOARD_IMX \
|
||||
CONFIG_INPUT_KEYBOARD=y
|
||||
|
@ -38,21 +38,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,ledtrig-activity))
|
||||
|
||||
define KernelPackage/ledtrig-audio
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=LED Audio Mute Trigger
|
||||
KCONFIG:=CONFIG_LEDS_TRIGGER_AUDIO
|
||||
FILES:=$(LED_TRIGGER_DIR)/ledtrig-audio.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,ledtrig-audio)
|
||||
endef
|
||||
|
||||
define KernelPackage/ledtrig-audio/description
|
||||
Kernel module that allows LEDs to be controlled by audio drivers
|
||||
to follow audio mute and mic-mute changes.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,ledtrig-audio))
|
||||
|
||||
define KernelPackage/ledtrig-gpio
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=LED GPIO Trigger
|
||||
@ -115,92 +100,6 @@ endef
|
||||
$(eval $(call KernelPackage,ledtrig-pattern))
|
||||
|
||||
|
||||
define KernelPackage/ledtrig-tty
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=LED Trigger for TTY devices
|
||||
KCONFIG:=CONFIG_LEDS_TRIGGER_TTY
|
||||
FILES:=$(LED_TRIGGER_DIR)/ledtrig-tty.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,ledtrig-tty)
|
||||
endef
|
||||
|
||||
define KernelPackage/ledtrig-tty/description
|
||||
This allows LEDs to be controlled by activity on ttys which includes
|
||||
serial devices like '/dev/ttyS0'.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,ledtrig-tty))
|
||||
|
||||
|
||||
define KernelPackage/leds-apu
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=PC Engines APU1 LED support
|
||||
DEPENDS:= @GPIO_SUPPORT @TARGET_x86
|
||||
KCONFIG:=CONFIG_LEDS_APU
|
||||
FILES:=$(LINUX_DIR)/drivers/leds/leds-apu.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,leds-apu,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/leds-apu/description
|
||||
Driver for the PC Engines APU1 LEDs.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,leds-apu))
|
||||
|
||||
|
||||
define KernelPackage/leds-ktd202x
|
||||
SUBMENU:=LED modules
|
||||
TITLE:=LED support for KTD202x Chips
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c
|
||||
KCONFIG:=CONFIG_LEDS_KTD202X
|
||||
FILES:= $(LINUX_DIR)/drivers/leds/rgb/leds-ktd202x.ko
|
||||
AUTOLOAD:=$(call AutoProbe,leds-ktd202x,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/leds-ktd202x/description
|
||||
This option enables support for the Kinetic KTD2026/KTD2027
|
||||
RGB/White LED driver found in different BQ mobile phones.
|
||||
It is a 3 or 4 channel LED driver programmed via an I2C interface.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,leds-ktd202x))
|
||||
|
||||
|
||||
define KernelPackage/leds-mlxcpld
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=LED support for the Mellanox boards
|
||||
DEPENDS:=@TARGET_x86
|
||||
KCONFIG:=CONFIG_LEDS_MLXCPLD
|
||||
FILES:=$(LINUX_DIR)/drivers/leds/leds-mlxcpld.ko
|
||||
AUTOLOAD:=$(call AutoProbe,leds-mlxcpld)
|
||||
endef
|
||||
|
||||
define KernelPackage/leds-mlxcpld/description
|
||||
This option enables support for the LEDs on the Mellanox
|
||||
boards.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,leds-mlxcpld))
|
||||
|
||||
|
||||
define KernelPackage/leds-pca955x
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=LED driver for PCA955x I2C chips
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
|
||||
KCONFIG:=CONFIG_LEDS_PCA955X \
|
||||
CONFIG_LEDS_PCA955X_GPIO=y
|
||||
FILES:=$(LINUX_DIR)/drivers/leds/leds-pca955x.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,leds-pca955x,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/leds-pca955x/description
|
||||
This option enables support for LEDs connected to PCA955x
|
||||
LED driver chips accessed via the I2C bus. Supported
|
||||
devices include PCA9550, PCA9551, PCA9552, and PCA9553.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,leds-pca955x))
|
||||
|
||||
|
||||
define KernelPackage/leds-pca963x
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=PCA963x LED support
|
||||
@ -232,24 +131,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,leds-pwm))
|
||||
|
||||
|
||||
define KernelPackage/leds-tlc591xx
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=LED driver for TLC59108 and TLC59116 controllers
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c
|
||||
KCONFIG:=CONFIG_LEDS_TLC591XX
|
||||
FILES:=$(LINUX_DIR)/drivers/leds/leds-tlc591xx.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,leds-tlc591xx,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/leds-tlc591xx/description
|
||||
This option enables support for Texas Instruments TLC59108
|
||||
and TLC59116 LED controllers.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,leds-tlc591xx))
|
||||
|
||||
|
||||
define KernelPackage/leds-uleds
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=Userspace LEDs
|
||||
@ -263,54 +144,3 @@ define KernelPackage/leds-uleds/description
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,leds-uleds))
|
||||
|
||||
|
||||
define KernelPackage/input-leds
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=Input device LED support
|
||||
DEPENDS:=+kmod-input-core
|
||||
KCONFIG:=CONFIG_INPUT_LEDS
|
||||
FILES:=$(LINUX_DIR)/drivers/input/input-leds.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,input-leds,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/input-leds/description
|
||||
Provides support for LEDs on input devices- for example,
|
||||
keyboard num/caps/scroll lock.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,input-leds))
|
||||
|
||||
|
||||
define KernelPackage/leds-lp55xx-common
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=LED common driver for LP5521/LP5523/LP55231/LP5562 controllers
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_LEDS_LP55XX_COMMON
|
||||
FILES:=$(LINUX_DIR)/drivers/leds/leds-lp55xx-common.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,leds-lp55xx-common,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/leds-lp55xx-common/description
|
||||
This option enables support for Texas Instruments
|
||||
LP5521/LP5523/LP55231/LP5562 common driver.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,leds-lp55xx-common))
|
||||
|
||||
|
||||
define KernelPackage/leds-lp5562
|
||||
SUBMENU:=$(LEDS_MENU)
|
||||
TITLE:=LED driver for LP5562 controllers
|
||||
DEPENDS:=+kmod-i2c-core +kmod-leds-lp55xx-common
|
||||
KCONFIG:=CONFIG_LEDS_LP5562
|
||||
FILES:=$(LINUX_DIR)/drivers/leds/leds-lp5562.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,leds-lp5562,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/leds-lp5562/description
|
||||
This option enables support for Texas Instruments LP5562
|
||||
LED controllers.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,leds-lp5562))
|
@ -109,10 +109,9 @@ define KernelPackage/lib-lzo
|
||||
HIDDEN:=1
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/crypto/lzo.ko \
|
||||
$(LINUX_DIR)/crypto/lzo-rle.ko \
|
||||
$(LINUX_DIR)/lib/lzo/lzo_compress.ko \
|
||||
$(LINUX_DIR)/lib/lzo/lzo_decompress.ko
|
||||
AUTOLOAD:=$(call AutoProbe,lzo lzo-rle lzo_compress lzo_decompress)
|
||||
AUTOLOAD:=$(call AutoProbe,lzo lzo_compress lzo_decompress)
|
||||
endef
|
||||
|
||||
define KernelPackage/lib-lzo/description
|
||||
@ -122,31 +121,21 @@ endef
|
||||
$(eval $(call KernelPackage,lib-lzo))
|
||||
|
||||
|
||||
define KernelPackage/lib-xxhash
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=xxhash support
|
||||
HIDDEN:=1
|
||||
KCONFIG:=CONFIG_XXHASH
|
||||
FILES:=$(LINUX_DIR)/lib/xxhash.ko
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,lib-xxhash))
|
||||
|
||||
|
||||
define KernelPackage/lib-zstd
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=ZSTD support
|
||||
DEPENDS:=+kmod-crypto-acompress +kmod-lib-xxhash
|
||||
DEPENDS:=+kmod-crypto-acompress
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_ZSTD \
|
||||
CONFIG_ZSTD_COMPRESS \
|
||||
CONFIG_ZSTD_DECOMPRESS
|
||||
CONFIG_ZSTD_DECOMPRESS \
|
||||
CONFIG_XXHASH
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/crypto/zstd.ko \
|
||||
$(LINUX_DIR)/lib/zstd/zstd_common.ko \
|
||||
$(LINUX_DIR)/lib/xxhash.ko \
|
||||
$(LINUX_DIR)/lib/zstd/zstd_compress.ko \
|
||||
$(LINUX_DIR)/lib/zstd/zstd_decompress.ko
|
||||
AUTOLOAD:=$(call AutoProbe,zstd zstd_compress zstd_decompress)
|
||||
AUTOLOAD:=$(call AutoProbe,xxhash zstd zstd_compress zstd_decompress)
|
||||
endef
|
||||
|
||||
define KernelPackage/lib-zstd/description
|
||||
@ -156,28 +145,19 @@ endef
|
||||
$(eval $(call KernelPackage,lib-zstd))
|
||||
|
||||
|
||||
define KernelPackage/lib-lz4-decompress
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=LZ4 decompress
|
||||
HIDDEN:=1
|
||||
KCONFIG:=CONFIG_LZ4_DECOMPRESS
|
||||
FILES:=$(LINUX_DIR)/lib/lz4/lz4_decompress.ko
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,lib-lz4-decompress))
|
||||
|
||||
|
||||
define KernelPackage/lib-lz4
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=LZ4 support
|
||||
DEPENDS:=+kmod-crypto-acompress +kmod-lib-lz4-decompress
|
||||
DEPENDS:=+kmod-crypto-acompress
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_LZ4 \
|
||||
CONFIG_LZ4_COMPRESS
|
||||
CONFIG_LZ4_COMPRESS \
|
||||
CONFIG_LZ4_DECOMPRESS
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/crypto/lz4.ko \
|
||||
$(LINUX_DIR)/lib/lz4/lz4_compress.ko
|
||||
AUTOLOAD:=$(call AutoProbe,lz4 lz4_compress)
|
||||
$(LINUX_DIR)/lib/lz4/lz4_compress.ko \
|
||||
$(LINUX_DIR)/lib/lz4/lz4_decompress.ko
|
||||
AUTOLOAD:=$(call AutoProbe,lz4 lz4_compress lz4_decompress)
|
||||
endef
|
||||
|
||||
define KernelPackage/lib-lz4/description
|
||||
@ -187,48 +167,6 @@ endef
|
||||
$(eval $(call KernelPackage,lib-lz4))
|
||||
|
||||
|
||||
define KernelPackage/lib-lz4hc
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=LZ4HC support
|
||||
DEPENDS:=+kmod-crypto-acompress +kmod-lib-lz4-decompress
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_LZ4HC \
|
||||
CONFIG_LZ4HC_COMPRESS
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/crypto/lz4hc.ko \
|
||||
$(LINUX_DIR)/lib/lz4/lz4hc_compress.ko
|
||||
AUTOLOAD:=$(call AutoProbe,lz4hc lz4hc_compress)
|
||||
endef
|
||||
|
||||
define KernelPackage/lib-lz4hc/description
|
||||
Kernel module for LZ4HC compression/decompression support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,lib-lz4hc))
|
||||
|
||||
|
||||
define KernelPackage/lib-842
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=842 support
|
||||
DEPENDS:=+kmod-crypto-acompress +kmod-crypto-crc32
|
||||
KCONFIG:= \
|
||||
CONFIG_CRYPTO_842 \
|
||||
CONFIG_842_COMPRESS \
|
||||
CONFIG_842_DECOMPRESS
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/crypto/842.ko \
|
||||
$(LINUX_DIR)/lib/842/842_compress.ko \
|
||||
$(LINUX_DIR)/lib/842/842_decompress.ko
|
||||
AUTOLOAD:=$(call AutoProbe,842 842_compress 842_decompress)
|
||||
endef
|
||||
|
||||
define KernelPackage/lib-842/description
|
||||
Kernel module for 842 compression/decompression support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,lib-842))
|
||||
|
||||
|
||||
define KernelPackage/lib-raid6
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=RAID6 algorithm support
|
||||
@ -334,49 +272,3 @@ define KernelPackage/asn1-decoder
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,asn1-decoder))
|
||||
|
||||
define KernelPackage/asn1-encoder
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=Simple ASN1 encoder
|
||||
KCONFIG:= CONFIG_ASN1_ENCODER
|
||||
HIDDEN:=1
|
||||
FILES:=$(LINUX_DIR)/lib/asn1_encoder.ko
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,asn1-encoder))
|
||||
|
||||
define KernelPackage/oid-registry
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=Object identifier registry
|
||||
KCONFIG:= CONFIG_OID_REGISTRY
|
||||
FILES:=$(LINUX_DIR)/lib/oid_registry.ko
|
||||
AUTOLOAD:=$(call AutoLoad,31,oid_registry)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,oid-registry))
|
||||
|
||||
|
||||
define KernelPackage/lib-objagg
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=objagg support
|
||||
FILES:=$(LINUX_DIR)/lib/objagg.ko
|
||||
KCONFIG:= \
|
||||
CONFIG_OBJAGG \
|
||||
CONFIG_TEST_OBJAGG=n
|
||||
AUTOLOAD:=$(call AutoProbe,objagg)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,lib-objagg))
|
||||
|
||||
|
||||
define KernelPackage/lib-parman
|
||||
SUBMENU:=$(LIB_MENU)
|
||||
TITLE:=parman support
|
||||
FILES:=$(LINUX_DIR)/lib/parman.ko
|
||||
KCONFIG:= \
|
||||
CONFIG_PARMAN \
|
||||
CONFIG_TEST_PARMAN=n
|
||||
AUTOLOAD:=$(call AutoProbe,parman)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,lib-parman))
|
||||
|
@ -1,34 +0,0 @@
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
MENU_TITLE:=Multiplexer Support
|
||||
|
||||
define KernelPackage/mux-core
|
||||
SUBMENU:=$(MENU_TITLE)
|
||||
TITLE:=Multiplexer Support
|
||||
KCONFIG:=CONFIG_MULTIPLEXER
|
||||
FILES:=$(LINUX_DIR)/drivers/mux/mux-core.ko
|
||||
AUTOLOAD:=$(call AutoLoad,25,mux-core,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/mux-core/description
|
||||
Kernel module for multiplexer support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mux-core))
|
||||
|
||||
define KernelPackage/mux-gpio
|
||||
SUBMENU:=$(MENU_TITLE)
|
||||
TITLE:=GPIO-controlled Multiplexer controller
|
||||
KCONFIG:=CONFIG_MUX_GPIO
|
||||
DEPENDS:=@GPIO_SUPPORT kmod-mux-core
|
||||
FILES:=$(LINUX_DIR)/drivers/mux/mux-gpio.ko
|
||||
AUTOLOAD:=$(call AutoLoad,25,mux-gpio,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/mux-gpio/description
|
||||
Kernel modules for GPIO-controlled Multiplexer controller
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mux-gpio))
|
File diff suppressed because it is too large
Load Diff
@ -818,6 +818,27 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,ipt-cluster))
|
||||
|
||||
define KernelPackage/ipt-clusterip
|
||||
TITLE:=Module for CLUSTERIP
|
||||
KCONFIG:=$(KCONFIG_IPT_CLUSTERIP)
|
||||
FILES:=$(foreach mod,$(IPT_CLUSTERIP-m),$(LINUX_DIR)/net/$(mod).ko)
|
||||
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CLUSTERIP-m)))
|
||||
$(call AddDepends/ipt,+kmod-nf-conntrack)
|
||||
endef
|
||||
|
||||
define KernelPackage/ipt-clusterip/description
|
||||
Netfilter (IPv4-only) module for CLUSTERIP
|
||||
The CLUSTERIP target allows you to build load-balancing clusters of
|
||||
network servers without having a dedicated load-balancing
|
||||
router/server/switch.
|
||||
|
||||
To use it also enable iptables-mod-clusterip
|
||||
|
||||
see `iptables -j CLUSTERIP --help` for more information.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,ipt-clusterip))
|
||||
|
||||
|
||||
define KernelPackage/ipt-extra
|
||||
TITLE:=Extra modules
|
||||
@ -1048,40 +1069,6 @@ endef
|
||||
$(eval $(call KernelPackage,nfnetlink-queue))
|
||||
|
||||
|
||||
define KernelPackage/nfnetlink-cthelper
|
||||
TITLE:=Netfilter User space conntrack helpers
|
||||
FILES:=$(LINUX_DIR)/net/netfilter/nfnetlink_cthelper.ko
|
||||
KCONFIG:=CONFIG_NF_CT_NETLINK_HELPER
|
||||
AUTOLOAD:=$(call AutoProbe,nfnetlink_cthelper)
|
||||
$(call AddDepends/nfnetlink,+kmod-nfnetlink-queue +kmod-nf-conntrack-netlink)
|
||||
endef
|
||||
|
||||
define KernelPackage/nfnetlink-cthelper/description
|
||||
Kernel modules support for a netlink-based connection tracking
|
||||
userspace helpers interface
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,nfnetlink-cthelper))
|
||||
|
||||
|
||||
define KernelPackage/nfnetlink-cttimeout
|
||||
TITLE:=Netfilter conntrack expectation timeout
|
||||
FILES:=$(LINUX_DIR)/net/netfilter/nfnetlink_cttimeout.ko
|
||||
KCONFIG:=CONFIG_NF_CT_NETLINK_TIMEOUT
|
||||
AUTOLOAD:=$(call AutoProbe,nfnetlink_cttimeout)
|
||||
$(call AddDepends/nfnetlink,+kmod-nf-conntrack @KERNEL_NF_CONNTRACK_TIMEOUT)
|
||||
endef
|
||||
|
||||
define KernelPackage/nfnetlink-cttimeout/description
|
||||
Kernel modules support for a netlink-based connection tracking
|
||||
userspace timeout interface
|
||||
|
||||
Requires CONFIG_NF_CONNTRACK_TIMEOUT (only enabled for non-small flash devices)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,nfnetlink-cttimeout))
|
||||
|
||||
|
||||
define KernelPackage/nf-conntrack-netlink
|
||||
TITLE:=Connection tracking netlink interface
|
||||
FILES:=$(LINUX_DIR)/net/netfilter/nf_conntrack_netlink.ko
|
||||
@ -1210,11 +1197,15 @@ define KernelPackage/nft-offload
|
||||
DEPENDS:=@IPV6 +kmod-nf-flow +kmod-nft-nat
|
||||
KCONFIG:= \
|
||||
CONFIG_NF_FLOW_TABLE_INET \
|
||||
CONFIG_NF_FLOW_TABLE_IPV4 \
|
||||
CONFIG_NF_FLOW_TABLE_IPV6 \
|
||||
CONFIG_NFT_FLOW_OFFLOAD
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/net/netfilter/nf_flow_table_inet.ko \
|
||||
$(LINUX_DIR)/net/ipv4/netfilter/nf_flow_table_ipv4.ko \
|
||||
$(LINUX_DIR)/net/ipv6/netfilter/nf_flow_table_ipv6.ko \
|
||||
$(LINUX_DIR)/net/netfilter/nft_flow_offload.ko
|
||||
AUTOLOAD:=$(call AutoProbe,nf_flow_table_inet nft_flow_offload)
|
||||
AUTOLOAD:=$(call AutoProbe,nf_flow_table_inet nf_flow_table_ipv4 nf_flow_table_ipv6 nft_flow_offload)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,nft-offload))
|
||||
@ -1226,7 +1217,6 @@ define KernelPackage/nft-netdev
|
||||
DEPENDS:=+kmod-nft-core
|
||||
KCONFIG:= \
|
||||
CONFIG_NETFILTER_INGRESS=y \
|
||||
CONFIG_NETFILTER_EGRESS=y \
|
||||
CONFIG_NF_TABLES_NETDEV \
|
||||
CONFIG_NF_DUP_NETDEV \
|
||||
CONFIG_NFT_DUP_NETDEV \
|
||||
|
@ -42,32 +42,12 @@ endef
|
||||
$(eval $(call KernelPackage,atmtcp))
|
||||
|
||||
|
||||
define KernelPackage/appletalk
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Appletalk protocol support
|
||||
KCONFIG:= \
|
||||
CONFIG_ATALK \
|
||||
CONFIG_DEV_APPLETALK \
|
||||
CONFIG_IPDDP=n
|
||||
FILES:=$(LINUX_DIR)/net/appletalk/appletalk.ko
|
||||
AUTOLOAD:=$(call AutoLoad,40,appletalk)
|
||||
endef
|
||||
|
||||
define KernelPackage/appletalk/description
|
||||
Kernel module for AppleTalk protocol.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,appletalk))
|
||||
|
||||
|
||||
define KernelPackage/bonding
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Ethernet bonding driver
|
||||
KCONFIG:=CONFIG_BONDING
|
||||
DEPENDS:=PACKAGE_kmod-tls:kmod-tls
|
||||
FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.ko
|
||||
AUTOLOAD:=$(call AutoLoad,40,bonding)
|
||||
MODPARAMS.bonding:=max_bonds=0
|
||||
endef
|
||||
|
||||
define KernelPackage/bonding/description
|
||||
@ -110,8 +90,7 @@ define KernelPackage/vxlan
|
||||
+kmod-udptunnel4 \
|
||||
+IPV6:kmod-udptunnel6
|
||||
KCONFIG:=CONFIG_VXLAN
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/net/vxlan/vxlan.ko
|
||||
FILES:=$(LINUX_DIR)/drivers/net/vxlan.ko
|
||||
AUTOLOAD:=$(call AutoLoad,13,vxlan)
|
||||
endef
|
||||
|
||||
@ -235,8 +214,10 @@ $(eval $(call KernelPackage,ipsec))
|
||||
IPSEC4-m = \
|
||||
ipv4/ah4 \
|
||||
ipv4/esp4 \
|
||||
ipv4/xfrm4_tunnel \
|
||||
ipv4/ipcomp \
|
||||
ipv4/xfrm4_tunnel
|
||||
|
||||
IPSEC4-m += $(ifeq ($$(strip $$(call CompareKernelPatchVer,$$(KERNEL_PATCHVER),le,5.2))),ipv4/xfrm4_mode_beet ipv4/xfrm4_mode_transport ipv4/xfrm4_mode_tunnel)
|
||||
|
||||
define KernelPackage/ipsec4
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
@ -246,6 +227,9 @@ define KernelPackage/ipsec4
|
||||
CONFIG_INET_AH \
|
||||
CONFIG_INET_ESP \
|
||||
CONFIG_INET_IPCOMP \
|
||||
CONFIG_INET_XFRM_MODE_BEET \
|
||||
CONFIG_INET_XFRM_MODE_TRANSPORT \
|
||||
CONFIG_INET_XFRM_MODE_TUNNEL \
|
||||
CONFIG_INET_XFRM_TUNNEL \
|
||||
CONFIG_INET_ESP_OFFLOAD=n
|
||||
FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
|
||||
@ -258,6 +242,9 @@ define KernelPackage/ipsec4/description
|
||||
- ah4
|
||||
- esp4
|
||||
- ipcomp4
|
||||
- xfrm4_mode_beet
|
||||
- xfrm4_mode_transport
|
||||
- xfrm4_mode_tunnel
|
||||
- xfrm4_tunnel
|
||||
endef
|
||||
|
||||
@ -267,8 +254,10 @@ $(eval $(call KernelPackage,ipsec4))
|
||||
IPSEC6-m = \
|
||||
ipv6/ah6 \
|
||||
ipv6/esp6 \
|
||||
ipv6/xfrm6_tunnel \
|
||||
ipv6/ipcomp6 \
|
||||
ipv6/xfrm6_tunnel
|
||||
|
||||
IPSEC6-m += $(ifeq ($$(strip $$(call CompareKernelPatchVer,$$(KERNEL_PATCHVER),le,5.2))),ipv6/xfrm6_mode_beet ipv6/xfrm6_mode_transport ipv6/xfrm6_mode_tunnel)
|
||||
|
||||
define KernelPackage/ipsec6
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
@ -278,6 +267,9 @@ define KernelPackage/ipsec6
|
||||
CONFIG_INET6_AH \
|
||||
CONFIG_INET6_ESP \
|
||||
CONFIG_INET6_IPCOMP \
|
||||
CONFIG_INET6_XFRM_MODE_BEET \
|
||||
CONFIG_INET6_XFRM_MODE_TRANSPORT \
|
||||
CONFIG_INET6_XFRM_MODE_TUNNEL \
|
||||
CONFIG_INET6_XFRM_TUNNEL \
|
||||
CONFIG_INET6_ESP_OFFLOAD=n
|
||||
FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
|
||||
@ -290,6 +282,9 @@ define KernelPackage/ipsec6/description
|
||||
- ah6
|
||||
- esp6
|
||||
- ipcomp6
|
||||
- xfrm6_mode_beet
|
||||
- xfrm6_mode_transport
|
||||
- xfrm6_mode_tunnel
|
||||
- xfrm6_tunnel
|
||||
endef
|
||||
|
||||
@ -348,7 +343,7 @@ $(eval $(call KernelPackage,ip6-vti))
|
||||
define KernelPackage/xfrm-interface
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=IPsec XFRM Interface
|
||||
DEPENDS:=@IPV6 +kmod-ipsec4 +kmod-ipsec6
|
||||
DEPENDS:=+kmod-ipsec4 +IPV6:kmod-ipsec6
|
||||
KCONFIG:=CONFIG_XFRM_INTERFACE
|
||||
FILES:=$(LINUX_DIR)/net/xfrm/xfrm_interface.ko
|
||||
AUTOLOAD:=$(call AutoProbe,xfrm_interface)
|
||||
@ -536,23 +531,6 @@ endef
|
||||
$(eval $(call KernelPackage,veth))
|
||||
|
||||
|
||||
define KernelPackage/vrf
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Virtual Routing and Forwarding (Lite)
|
||||
DEPENDS:=@KERNEL_NET_L3_MASTER_DEV
|
||||
KCONFIG:=CONFIG_NET_VRF
|
||||
FILES:=$(LINUX_DIR)/drivers/net/vrf.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,vrf)
|
||||
endef
|
||||
|
||||
define KernelPackage/vrf/description
|
||||
This option enables the support for mapping interfaces into VRF's. The
|
||||
support enables VRF devices.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,vrf))
|
||||
|
||||
|
||||
define KernelPackage/slhc
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
HIDDEN:=1
|
||||
@ -710,8 +688,12 @@ endef
|
||||
$(eval $(call KernelPackage,mppe))
|
||||
|
||||
|
||||
SCHED_MODULES_CORE = sch_ingress sch_hfsc sch_htb sch_tbf cls_basic cls_fw cls_route cls_flow cls_u32 em_u32 act_gact act_mirred act_skbedit cls_matchall
|
||||
SCHED_FILES_CORE = $(foreach mod,$(SCHED_MODULES_CORE),$(LINUX_DIR)/net/sched/$(mod).ko)
|
||||
SCHED_MODULES = $(patsubst $(LINUX_DIR)/net/sched/%.ko,%,$(wildcard $(LINUX_DIR)/net/sched/*.ko))
|
||||
SCHED_MODULES_CORE = sch_ingress sch_fq_codel sch_hfsc sch_htb sch_tbf cls_basic cls_fw cls_route cls_flow cls_u32 em_u32 act_gact act_mirred act_skbedit cls_matchall
|
||||
SCHED_MODULES_FILTER = $(SCHED_MODULES_CORE) act_connmark act_ctinfo sch_cake sch_netem sch_mqprio em_ipset cls_bpf cls_flower act_bpf act_vlan
|
||||
SCHED_MODULES_EXTRA = $(filter-out $(SCHED_MODULES_FILTER),$(SCHED_MODULES))
|
||||
SCHED_FILES = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(filter $(SCHED_MODULES_CORE),$(SCHED_MODULES)))
|
||||
SCHED_FILES_EXTRA = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(SCHED_MODULES_EXTRA))
|
||||
|
||||
define KernelPackage/sched-core
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
@ -722,6 +704,7 @@ define KernelPackage/sched-core
|
||||
CONFIG_NET_SCH_HTB \
|
||||
CONFIG_NET_SCH_TBF \
|
||||
CONFIG_NET_SCH_INGRESS \
|
||||
CONFIG_NET_SCH_FQ_CODEL \
|
||||
CONFIG_NET_CLS=y \
|
||||
CONFIG_NET_CLS_ACT=y \
|
||||
CONFIG_NET_CLS_BASIC \
|
||||
@ -735,7 +718,7 @@ define KernelPackage/sched-core
|
||||
CONFIG_NET_CLS_MATCHALL \
|
||||
CONFIG_NET_EMATCH=y \
|
||||
CONFIG_NET_EMATCH_U32
|
||||
FILES:=$(SCHED_FILES_CORE)
|
||||
FILES:=$(SCHED_FILES)
|
||||
AUTOLOAD:=$(call AutoLoad,70, $(SCHED_MODULES_CORE))
|
||||
endef
|
||||
|
||||
@ -746,52 +729,35 @@ endef
|
||||
$(eval $(call KernelPackage,sched-core))
|
||||
|
||||
|
||||
define KernelPackage/sched-act-police
|
||||
define KernelPackage/sched-cake
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Traffic Policing
|
||||
TITLE:=Cake fq_codel/blue derived shaper
|
||||
DEPENDS:=+kmod-sched-core
|
||||
KCONFIG:=CONFIG_NET_ACT_POLICE
|
||||
FILES:=$(LINUX_DIR)/net/sched/act_police.ko
|
||||
AUTOLOAD:=$(call AutoProbe,act_police)
|
||||
KCONFIG:=CONFIG_NET_SCH_CAKE
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_cake.ko
|
||||
AUTOLOAD:=$(call AutoProbe,sch_cake)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-act-police))
|
||||
define KernelPackage/sched-cake/description
|
||||
Common Applications Kept Enhanced fq_codel/blue derived shaper
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-cake))
|
||||
|
||||
define KernelPackage/sched-act-sample
|
||||
define KernelPackage/sched-flower
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Traffic Sampling
|
||||
TITLE:=Flower traffic classifier
|
||||
DEPENDS:=+kmod-sched-core
|
||||
KCONFIG:= \
|
||||
CONFIG_NET_ACT_SAMPLE \
|
||||
CONFIG_PSAMPLE
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/net/psample/psample.ko \
|
||||
$(LINUX_DIR)/net/sched/act_sample.ko
|
||||
AUTOLOAD:=$(call AutoProbe,act_sample psample)
|
||||
KCONFIG:=CONFIG_NET_CLS_FLOWER
|
||||
FILES:=$(LINUX_DIR)/net/sched/cls_flower.ko
|
||||
AUTOLOAD:=$(call AutoProbe, cls_flower)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-act-sample/description
|
||||
Packet sampling tc action.
|
||||
define KernelPackage/sched-flower/description
|
||||
Allows to classify packets based on a configurable combination of packet keys and masks.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-act-sample))
|
||||
|
||||
|
||||
define KernelPackage/sched-act-ipt
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=IPtables targets
|
||||
DEPENDS:=+kmod-ipt-core +kmod-sched-core
|
||||
KCONFIG:=CONFIG_NET_ACT_IPT
|
||||
FILES:=$(LINUX_DIR)/net/sched/act_ipt.ko
|
||||
AUTOLOAD:=$(call AutoProbe, act_ipt)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-act-ipt/description
|
||||
Allows to invoke iptables targets after successful classification.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-act-ipt))
|
||||
$(eval $(call KernelPackage,sched-flower))
|
||||
|
||||
|
||||
define KernelPackage/sched-act-vlan
|
||||
@ -810,36 +776,20 @@ endef
|
||||
$(eval $(call KernelPackage,sched-act-vlan))
|
||||
|
||||
|
||||
define KernelPackage/sched-bpf
|
||||
define KernelPackage/sched-mqprio
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Traffic shaper support for Berkeley Packet Filter
|
||||
KCONFIG:= \
|
||||
CONFIG_NET_CLS_BPF \
|
||||
CONFIG_NET_ACT_BPF
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/net/sched/cls_bpf.ko \
|
||||
$(LINUX_DIR)/net/sched/act_bpf.ko
|
||||
AUTOLOAD:=$(call AutoLoad,72,cls_bpf act_bpf)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-bpf))
|
||||
|
||||
|
||||
define KernelPackage/sched-cake
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Cake fq_codel/blue derived shaper
|
||||
TITLE:=Multi-queue priority scheduler (MQPRIO)
|
||||
DEPENDS:=+kmod-sched-core
|
||||
KCONFIG:=CONFIG_NET_SCH_CAKE
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_cake.ko
|
||||
AUTOLOAD:=$(call AutoProbe,sch_cake)
|
||||
KCONFIG:=CONFIG_NET_SCH_MQPRIO
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_mqprio.ko
|
||||
AUTOLOAD:=$(call AutoProbe, sch_mqprio)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-cake/description
|
||||
Common Applications Kept Enhanced fq_codel/blue derived shaper
|
||||
define KernelPackage/sched-mqprio/description
|
||||
This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-cake))
|
||||
|
||||
$(eval $(call KernelPackage,sched-mqprio))
|
||||
|
||||
define KernelPackage/sched-connmark
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
@ -851,7 +801,6 @@ define KernelPackage/sched-connmark
|
||||
endef
|
||||
$(eval $(call KernelPackage,sched-connmark))
|
||||
|
||||
|
||||
define KernelPackage/sched-ctinfo
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Traffic shaper ctinfo support
|
||||
@ -862,55 +811,6 @@ define KernelPackage/sched-ctinfo
|
||||
endef
|
||||
$(eval $(call KernelPackage,sched-ctinfo))
|
||||
|
||||
|
||||
define KernelPackage/sched-drr
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Deficit Round Robin scheduler (DRR)
|
||||
DEPENDS:=+kmod-sched-core
|
||||
KCONFIG:=CONFIG_NET_SCH_DRR
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_drr.ko
|
||||
AUTOLOAD:=$(call AutoProbe,sch_drr)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-drr/description
|
||||
DRR algorithm Configuration
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-drr))
|
||||
|
||||
|
||||
define KernelPackage/sched-flower
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Flower traffic classifier
|
||||
DEPENDS:=+kmod-sched-core
|
||||
KCONFIG:=CONFIG_NET_CLS_FLOWER
|
||||
FILES:=$(LINUX_DIR)/net/sched/cls_flower.ko
|
||||
AUTOLOAD:=$(call AutoProbe, cls_flower)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-flower/description
|
||||
Allows to classify packets based on a configurable combination of packet keys and masks.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-flower))
|
||||
|
||||
|
||||
define KernelPackage/sched-fq-pie
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Flow Queue Proportional Integral Enhanced (FQ-PIE)
|
||||
DEPENDS:=+kmod-sched-core +kmod-sched-pie
|
||||
KCONFIG:=CONFIG_NET_SCH_FQ_PIE
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_fq_pie.ko
|
||||
AUTOLOAD:=$(call AutoProbe, sch_fq_pie)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-fq-pie/description
|
||||
A queuing discipline that combines Flow Queuing with the PIE AQM.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-fq-pie))
|
||||
|
||||
|
||||
define KernelPackage/sched-ipset
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Traffic shaper ipset support
|
||||
@ -925,95 +825,19 @@ endef
|
||||
$(eval $(call KernelPackage,sched-ipset))
|
||||
|
||||
|
||||
define KernelPackage/sched-mqprio-common
|
||||
define KernelPackage/sched-bpf
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=mqprio queue common dependencies support
|
||||
HIDDEN:=1
|
||||
KCONFIG:=CONFIG_NET_SCH_MQPRIO_LIB
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_mqprio_lib.ko
|
||||
TITLE:=Traffic shaper support for Berkeley Packet Filter
|
||||
KCONFIG:= \
|
||||
CONFIG_NET_CLS_BPF \
|
||||
CONFIG_NET_ACT_BPF
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/net/sched/cls_bpf.ko \
|
||||
$(LINUX_DIR)/net/sched/act_bpf.ko
|
||||
AUTOLOAD:=$(call AutoLoad,72,cls_bpf act_bpf)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-mqprio-common/description
|
||||
Common library for manipulating mqprio queue configurations
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-mqprio-common))
|
||||
|
||||
|
||||
define KernelPackage/sched-mqprio
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Multi-queue priority scheduler (MQPRIO)
|
||||
DEPENDS:=+kmod-sched-core +kmod-sched-mqprio-common
|
||||
KCONFIG:=CONFIG_NET_SCH_MQPRIO
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_mqprio.ko
|
||||
AUTOLOAD:=$(call AutoProbe, sch_mqprio)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-mqprio/description
|
||||
This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-mqprio))
|
||||
|
||||
|
||||
define KernelPackage/sched-pie
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Proportional Integral controller-Enhanced AQM (PIE)
|
||||
DEPENDS:=+kmod-sched-core
|
||||
KCONFIG:=CONFIG_NET_SCH_PIE
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_pie.ko
|
||||
AUTOLOAD:=$(call AutoProbe, sch_pie)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-pie/description
|
||||
A control theoretic active queue management scheme.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-pie))
|
||||
|
||||
|
||||
define KernelPackage/sched-prio
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Multi Band Priority Queueing (PRIO)
|
||||
DEPENDS:=+kmod-sched-core
|
||||
KCONFIG:=CONFIG_NET_SCH_PRIO
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_prio.ko
|
||||
AUTOLOAD:=$(call AutoProbe,sch_prio)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-prio/description
|
||||
PRIO algorithm Configuration
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-prio))
|
||||
|
||||
|
||||
define KernelPackage/sched-red
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Random Early Detection (RED)
|
||||
DEPENDS:=+kmod-sched-core
|
||||
KCONFIG:=CONFIG_NET_SCH_RED
|
||||
FILES:=$(LINUX_DIR)/net/sched/sch_red.ko
|
||||
AUTOLOAD:=$(call AutoProbe,sch_red)
|
||||
endef
|
||||
|
||||
define KernelPackage/sched-red/description
|
||||
Random Early Detection (RED) algorithm Configuration
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-red))
|
||||
|
||||
|
||||
define KernelPackage/sched-skbprio
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=SKB priority queue scheduler (SKBPRIO)
|
||||
DEPENDS:=+kmod-sched-core
|
||||
KCONFIG:= CONFIG_NET_SCH_SKBPRIO
|
||||
FILES:= $(LINUX_DIR)/net/sched/sch_skbprio.ko
|
||||
AUTOLOAD:=$(call AutoProbe,sch_skbprio)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sched-skbprio))
|
||||
$(eval $(call KernelPackage,sched-bpf))
|
||||
|
||||
|
||||
define KernelPackage/bpf-test
|
||||
@ -1026,24 +850,26 @@ endef
|
||||
$(eval $(call KernelPackage,bpf-test))
|
||||
|
||||
|
||||
SCHED_MODULES_EXTRA = sch_codel sch_gred sch_multiq sch_sfq sch_teql sch_fq sch_ets act_pedit act_simple act_skbmod act_csum em_cmp em_nbyte em_meta em_text
|
||||
SCHED_FILES_EXTRA = $(foreach mod,$(SCHED_MODULES_EXTRA),$(LINUX_DIR)/net/sched/$(mod).ko)
|
||||
|
||||
define KernelPackage/sched
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Extra traffic schedulers
|
||||
DEPENDS:=+kmod-sched-core +kmod-lib-crc32c +kmod-lib-textsearch
|
||||
DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-lib-crc32c
|
||||
KCONFIG:= \
|
||||
CONFIG_NET_SCH_CODEL \
|
||||
CONFIG_NET_SCH_DSMARK \
|
||||
CONFIG_NET_SCH_FIFO \
|
||||
CONFIG_NET_SCH_GRED \
|
||||
CONFIG_NET_SCH_MULTIQ \
|
||||
CONFIG_NET_SCH_PRIO \
|
||||
CONFIG_NET_SCH_RED \
|
||||
CONFIG_NET_SCH_SFQ \
|
||||
CONFIG_NET_SCH_TEQL \
|
||||
CONFIG_NET_SCH_FQ \
|
||||
CONFIG_NET_SCH_ETS \
|
||||
CONFIG_NET_SCH_PIE \
|
||||
CONFIG_NET_ACT_POLICE \
|
||||
CONFIG_NET_ACT_IPT \
|
||||
CONFIG_NET_ACT_PEDIT \
|
||||
CONFIG_NET_ACT_SIMP \
|
||||
CONFIG_NET_ACT_SKBMOD \
|
||||
CONFIG_NET_ACT_CSUM \
|
||||
CONFIG_NET_EMATCH_CMP \
|
||||
CONFIG_NET_EMATCH_NBYTE \
|
||||
@ -1090,24 +916,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,tcp-bbr))
|
||||
|
||||
define KernelPackage/tls
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=In-kernel TLS Support with HW Offload
|
||||
KCONFIG:=CONFIG_TLS \
|
||||
CONFIG_TLS_DEVICE=y
|
||||
FILES:=$(LINUX_DIR)/net/tls/tls.ko
|
||||
AUTOLOAD:=$(call AutoProbe,tls)
|
||||
endef
|
||||
|
||||
define KernelPackage/tls/description
|
||||
Kernel module for in-kernel TLS protocol support and hw offload
|
||||
(to supported interfaces).
|
||||
This allows symmetric encryption handling of the TLS protocol to
|
||||
be done in-kernel and it's HW offload when available.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,tls))
|
||||
|
||||
|
||||
define KernelPackage/tcp-hybla
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
@ -1127,24 +935,6 @@ endef
|
||||
$(eval $(call KernelPackage,tcp-hybla))
|
||||
|
||||
|
||||
define KernelPackage/tcp-scalable
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=TCP-Scalable congestion control algorithm
|
||||
KCONFIG:=CONFIG_TCP_CONG_SCALABLE
|
||||
FILES:=$(LINUX_DIR)/net/ipv4/tcp_scalable.ko
|
||||
AUTOLOAD:=$(call AutoProbe,tcp-scalable)
|
||||
endef
|
||||
|
||||
define KernelPackage/tcp-scalable/description
|
||||
Scalable TCP is a sender-side only change to TCP which uses a
|
||||
MIMD congestion control algorithm which has some nice scaling
|
||||
properties, though is known to have fairness issues.
|
||||
See http://www.deneholme.net/tom/scalable/
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,tcp-scalable))
|
||||
|
||||
|
||||
define KernelPackage/ax25
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=AX25 support
|
||||
@ -1252,8 +1042,7 @@ define KernelPackage/sctp
|
||||
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
|
||||
FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
|
||||
AUTOLOAD:= $(call AutoLoad,32,sctp)
|
||||
DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac \
|
||||
+kmod-udptunnel4 +kmod-udptunnel6
|
||||
DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac
|
||||
endef
|
||||
|
||||
define KernelPackage/sctp/description
|
||||
@ -1263,18 +1052,6 @@ endef
|
||||
$(eval $(call KernelPackage,sctp))
|
||||
|
||||
|
||||
define KernelPackage/sctp-diag
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=SCTP diag support
|
||||
DEPENDS:=+kmod-sctp +kmod-inet-diag
|
||||
KCONFIG:=CONFIG_INET_SCTP_DIAG
|
||||
FILES:= $(LINUX_DIR)/net/sctp/sctp_diag.ko
|
||||
AUTOLOAD:= $(call AutoLoad,33,sctp_diag)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sctp-diag))
|
||||
|
||||
|
||||
define KernelPackage/netem
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Network emulation functionality
|
||||
@ -1327,20 +1104,12 @@ define KernelPackage/rxrpc
|
||||
HIDDEN:=1
|
||||
KCONFIG:= \
|
||||
CONFIG_AF_RXRPC \
|
||||
CONFIG_AF_RXRPC_IPV6=y \
|
||||
CONFIG_RXKAD \
|
||||
CONFIG_RXKAD=m \
|
||||
CONFIG_AF_RXRPC_DEBUG=n
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/net/rxrpc/rxrpc.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,rxrpc)
|
||||
DEPENDS:= \
|
||||
+kmod-crypto-fcrypt \
|
||||
+kmod-crypto-hmac \
|
||||
+kmod-crypto-manager \
|
||||
+kmod-crypto-md5 \
|
||||
+kmod-crypto-pcbc \
|
||||
+kmod-udptunnel4 \
|
||||
+IPV6:kmod-udptunnel6
|
||||
AUTOLOAD:=$(call AutoLoad,30,rxrpc.ko)
|
||||
DEPENDS:= +kmod-crypto-manager +kmod-crypto-pcbc +kmod-crypto-fcrypt
|
||||
endef
|
||||
|
||||
define KernelPackage/rxrpc/description
|
||||
@ -1376,13 +1145,16 @@ $(eval $(call KernelPackage,mpls))
|
||||
define KernelPackage/9pnet
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Plan 9 Resource Sharing Support (9P2000)
|
||||
DEPENDS:=@VIRTIO_SUPPORT
|
||||
KCONFIG:= \
|
||||
CONFIG_NET_9P \
|
||||
CONFIG_NET_9P_DEBUG=n \
|
||||
CONFIG_NET_9P_FD=n
|
||||
CONFIG_NET_9P_XEN=n \
|
||||
CONFIG_NET_9P_VIRTIO
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/net/9p/9pnet.ko
|
||||
AUTOLOAD:=$(call AutoLoad,29,9pnet)
|
||||
$(LINUX_DIR)/net/9p/9pnet.ko \
|
||||
$(LINUX_DIR)/net/9p/9pnet_virtio.ko
|
||||
AUTOLOAD:=$(call AutoLoad,29,9pnet 9pnet_virtio)
|
||||
endef
|
||||
|
||||
define KernelPackage/9pnet/description
|
||||
@ -1392,25 +1164,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,9pnet))
|
||||
|
||||
define KernelPackage/9pvirtio
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Plan 9 Virtio Support
|
||||
DEPENDS:=+kmod-9pnet @VIRTIO_SUPPORT
|
||||
KCONFIG:= \
|
||||
CONFIG_NET_9P_XEN=n \
|
||||
CONFIG_NET_9P_VIRTIO
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/net/9p/9pnet_virtio.ko
|
||||
AUTOLOAD:=$(call AutoLoad,29,9pnet_virtio)
|
||||
endef
|
||||
|
||||
define KernelPackage/9pvirtio/description
|
||||
Kernel support support for
|
||||
Plan 9 resource sharing for virtio.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,9pvirtio))
|
||||
|
||||
|
||||
define KernelPackage/nlmon
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
@ -1442,21 +1195,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,mdio))
|
||||
|
||||
define KernelPackage/mdio-bus-mux
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=MDIO bus multiplexers
|
||||
KCONFIG:=CONFIG_MDIO_BUS_MUX
|
||||
HIDDEN:=1
|
||||
FILES:=$(LINUX_DIR)/drivers/net/mdio/mdio-mux.ko
|
||||
AUTOLOAD:=$(call AutoLoad,32,mdio-mux)
|
||||
endef
|
||||
|
||||
define KernelPackage/mdio-bus-mux/description
|
||||
Kernel framework for MDIO bus multiplexers.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mdio-bus-mux))
|
||||
|
||||
define KernelPackage/macsec
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=IEEE 802.1AE MAC-level encryption (MAC)
|
||||
@ -1506,44 +1244,11 @@ define KernelPackage/inet-diag
|
||||
endef
|
||||
|
||||
define KernelPackage/inet-diag/description
|
||||
Support for INET (TCP, DCCP, etc) socket monitoring interface used by
|
||||
native Linux tools such as ss.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,inet-diag))
|
||||
|
||||
|
||||
define KernelPackage/inet-mptcp-diag
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=INET diag support for MultiPath TCP
|
||||
DEPENDS:=@KERNEL_MPTCP +kmod-inet-diag
|
||||
KCONFIG:=CONFIG_INET_MPTCP_DIAG
|
||||
FILES:=$(LINUX_DIR)/net/mptcp/mptcp_diag.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mptcp_diag)
|
||||
endef
|
||||
|
||||
define KernelPackage/inet-mptcp-diag/description
|
||||
Support for INET (MultiPath TCP) socket monitoring interface used by
|
||||
Support for INET (TCP, DCCP, etc) socket monitoring interface used by
|
||||
native Linux tools such as ss.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,inet-mptcp-diag))
|
||||
|
||||
|
||||
define KernelPackage/xdp-sockets-diag
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=PF_XDP sockets monitoring interface support for ss utility
|
||||
DEPENDS:=@KERNEL_XDP_SOCKETS
|
||||
KCONFIG:=CONFIG_XDP_SOCKETS_DIAG
|
||||
FILES:=$(LINUX_DIR)/net/xdp/xsk_diag.ko
|
||||
AUTOLOAD:=$(call AutoLoad,31,xsk_diag)
|
||||
endef
|
||||
|
||||
define KernelPackage/xdp-sockets-diag/description
|
||||
Support for PF_XDP sockets monitoring interface used by the ss tool
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,xdp-sockets-diag))
|
||||
$(eval $(call KernelPackage,inet-diag))
|
||||
|
||||
|
||||
define KernelPackage/wireguard
|
||||
@ -1571,81 +1276,3 @@ define KernelPackage/wireguard/description
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,wireguard))
|
||||
|
||||
|
||||
define KernelPackage/netconsole
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Network console logging support
|
||||
KCONFIG:=CONFIG_NETCONSOLE \
|
||||
CONFIG_NETCONSOLE_DYNAMIC=n
|
||||
FILES:=$(LINUX_DIR)/drivers/net/netconsole.ko
|
||||
AUTOLOAD:=$(call AutoProbe,netconsole)
|
||||
endef
|
||||
|
||||
define KernelPackage/netconsole/description
|
||||
Network console logging support.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,netconsole))
|
||||
|
||||
|
||||
define KernelPackage/qrtr
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=Qualcomm IPC Router support
|
||||
HIDDEN:=1
|
||||
KCONFIG:=CONFIG_QRTR
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/net/qrtr/qrtr.ko
|
||||
AUTOLOAD:=$(call AutoProbe,qrtr)
|
||||
endef
|
||||
|
||||
define KernelPackage/qrtr/description
|
||||
Qualcomm IPC Router support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,qrtr))
|
||||
|
||||
define KernelPackage/qrtr-tun
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=TUN device for Qualcomm IPC Router
|
||||
DEPENDS:=+kmod-qrtr
|
||||
KCONFIG:=CONFIG_QRTR_TUN
|
||||
FILES:= $(LINUX_DIR)/net/qrtr/qrtr-tun.ko
|
||||
AUTOLOAD:=$(call AutoProbe,qrtr-tun)
|
||||
endef
|
||||
|
||||
define KernelPackage/qrtr-tun/description
|
||||
TUN device for Qualcomm IPC Router
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,qrtr-tun))
|
||||
|
||||
define KernelPackage/qrtr-smd
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=SMD IPC Router channels
|
||||
DEPENDS:=+kmod-qrtr @TARGET_qualcommax
|
||||
KCONFIG:=CONFIG_QRTR_SMD
|
||||
FILES:= $(LINUX_DIR)/net/qrtr/qrtr-smd.ko
|
||||
AUTOLOAD:=$(call AutoProbe,qrtr-smd)
|
||||
endef
|
||||
|
||||
define KernelPackage/qrtr-smd/description
|
||||
SMD IPC Router channels
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,qrtr-smd))
|
||||
|
||||
define KernelPackage/qrtr-mhi
|
||||
SUBMENU:=$(NETWORK_SUPPORT_MENU)
|
||||
TITLE:=MHI IPC Router channels
|
||||
DEPENDS:=+kmod-mhi-bus +kmod-qrtr
|
||||
KCONFIG:=CONFIG_QRTR_MHI
|
||||
FILES:= $(LINUX_DIR)/net/qrtr/qrtr-mhi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,qrtr-mhi)
|
||||
endef
|
||||
|
||||
define KernelPackage/qrtr-mhi/description
|
||||
MHI IPC Router channels
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,qrtr-mhi))
|
||||
|
@ -135,10 +135,8 @@ define KernelPackage/nls-cp932
|
||||
SUBMENU:=Native Language Support
|
||||
TITLE:=Codepage 932 (Japanese)
|
||||
KCONFIG:=CONFIG_NLS_CODEPAGE_932
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/fs/nls/nls_cp932.ko \
|
||||
$(LINUX_DIR)/fs/nls/nls_euc-jp.ko
|
||||
AUTOLOAD:=$(call AutoLoad,25,nls_cp932 nls_euc-jp)
|
||||
FILES:=$(LINUX_DIR)/fs/nls/nls_cp932.ko
|
||||
AUTOLOAD:=$(call AutoLoad,25,nls_cp932)
|
||||
$(call AddDepends/nls)
|
||||
endef
|
||||
|
||||
@ -339,19 +337,3 @@ define KernelPackage/nls-utf8/description
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,nls-utf8))
|
||||
|
||||
|
||||
define KernelPackage/nls-ucs2-utils
|
||||
SUBMENU:=Native Language Support
|
||||
TITLE:=UCS-2 common library
|
||||
HIDDEN:=1
|
||||
KCONFIG:=CONFIG_NLS_UCS2_UTILS
|
||||
FILES:=$(LINUX_DIR)/fs/nls/nls_ucs2_utils.ko
|
||||
$(call AddDepends/nls)
|
||||
endef
|
||||
|
||||
define KernelPackage/nls-ucs2-utils/description
|
||||
UCS-2 common library
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,nls-ucs2-utils))
|
||||
|
@ -39,11 +39,9 @@ define KernelPackage/bluetooth
|
||||
CONFIG_BT_RFCOMM \
|
||||
CONFIG_BT_BNEP \
|
||||
CONFIG_BT_HCIBTUSB \
|
||||
CONFIG_BT_HCIBTUSB_BCM=y \
|
||||
CONFIG_BT_HCIBTUSB_MTK=y \
|
||||
CONFIG_BT_HCIBTUSB_RTL=y \
|
||||
CONFIG_BT_HCIBTUSB_BCM=n \
|
||||
CONFIG_BT_HCIUART \
|
||||
CONFIG_BT_HCIUART_BCM=y \
|
||||
CONFIG_BT_HCIUART_BCM=n \
|
||||
CONFIG_BT_HCIUART_INTEL=n \
|
||||
CONFIG_BT_HCIUART_H4 \
|
||||
CONFIG_BT_HCIUART_NOKIA=n \
|
||||
@ -56,10 +54,7 @@ define KernelPackage/bluetooth
|
||||
$(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
|
||||
$(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
|
||||
$(LINUX_DIR)/drivers/bluetooth/btusb.ko \
|
||||
$(LINUX_DIR)/drivers/bluetooth/btbcm.ko \
|
||||
$(LINUX_DIR)/drivers/bluetooth/btintel.ko \
|
||||
$(LINUX_DIR)/drivers/bluetooth/btrtl.ko \
|
||||
$(LINUX_DIR)/drivers/bluetooth/btmtk.ko
|
||||
$(LINUX_DIR)/drivers/bluetooth/btintel.ko
|
||||
AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
|
||||
endef
|
||||
|
||||
@ -76,6 +71,7 @@ define KernelPackage/ath3k
|
||||
KCONFIG:= \
|
||||
CONFIG_BT_ATH3K \
|
||||
CONFIG_BT_HCIUART_ATH3K=y
|
||||
$(call AddDepends/bluetooth)
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/bluetooth/ath3k.ko
|
||||
AUTOLOAD:=$(call AutoProbe,ath3k)
|
||||
@ -111,6 +107,7 @@ define KernelPackage/btmrvl
|
||||
KCONFIG:= \
|
||||
CONFIG_BT_MRVL \
|
||||
CONFIG_BT_MRVL_SDIO
|
||||
$(call AddDepends/bluetooth)
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/bluetooth/btmrvl.ko \
|
||||
$(LINUX_DIR)/drivers/bluetooth/btmrvl_sdio.ko
|
||||
@ -124,24 +121,6 @@ endef
|
||||
$(eval $(call KernelPackage,btmrvl))
|
||||
|
||||
|
||||
define KernelPackage/btsdio
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Bluetooth HCI SDIO driver
|
||||
DEPENDS:=+kmod-bluetooth +kmod-mmc
|
||||
KCONFIG:= \
|
||||
CONFIG_BT_HCIBTSDIO
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/bluetooth/btsdio.ko
|
||||
AUTOLOAD:=$(call AutoProbe,btsdio)
|
||||
endef
|
||||
|
||||
define KernelPackage/btsdio/description
|
||||
Kernel support for Bluetooth device with SDIO interface
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,btsdio))
|
||||
|
||||
|
||||
define KernelPackage/dma-buf
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=DMA shared buffer support
|
||||
@ -203,184 +182,136 @@ endef
|
||||
$(eval $(call KernelPackage,eeprom-at25))
|
||||
|
||||
|
||||
define KernelPackage/google-firmware
|
||||
define KernelPackage/gpio-dev
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Google firmware drivers (Coreboot, VPD, Memconsole)
|
||||
KCONFIG:= \
|
||||
CONFIG_GOOGLE_FIRMWARE=y \
|
||||
CONFIG_GOOGLE_COREBOOT_TABLE \
|
||||
CONFIG_GOOGLE_MEMCONSOLE \
|
||||
CONFIG_GOOGLE_MEMCONSOLE_COREBOOT \
|
||||
CONFIG_GOOGLE_VPD
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/firmware/google/coreboot_table.ko \
|
||||
$(LINUX_DIR)/drivers/firmware/google/memconsole.ko \
|
||||
$(LINUX_DIR)/drivers/firmware/google/memconsole-coreboot.ko \
|
||||
$(LINUX_DIR)/drivers/firmware/google/vpd-sysfs.ko
|
||||
AUTOLOAD:=$(call AutoProbe,coreboot_table memconsole-coreboot vpd-sysfs)
|
||||
TITLE:=Generic GPIO char device support
|
||||
DEPENDS:=@GPIO_SUPPORT
|
||||
KCONFIG:=CONFIG_GPIO_DEVICE
|
||||
FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
|
||||
AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
|
||||
endef
|
||||
|
||||
define KernelPackage/google-firmware/description
|
||||
Kernel modules for Google firmware drivers. Useful for examining firmware and
|
||||
boot details on devices using a Google bootloader based on Coreboot. Provides
|
||||
files like /sys/firmware/log and /sys/firmware/vpd.
|
||||
define KernelPackage/gpio-dev/description
|
||||
Kernel module to allows control of GPIO pins using a character device.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,google-firmware))
|
||||
$(eval $(call KernelPackage,gpio-dev))
|
||||
|
||||
|
||||
define KernelPackage/lkdtm
|
||||
define KernelPackage/gpio-f7188x
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Linux Kernel Dump Test Tool Module
|
||||
KCONFIG:=CONFIG_LKDTM
|
||||
FILES:=$(LINUX_DIR)/drivers/misc/lkdtm/lkdtm.ko
|
||||
AUTOLOAD:=$(call AutoProbe,lkdtm)
|
||||
TITLE:=Fintek F718xx/F818xx GPIO Support
|
||||
DEPENDS:=@GPIO_SUPPORT @TARGET_x86
|
||||
KCONFIG:=CONFIG_GPIO_F7188X
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-f7188x.ko
|
||||
AUTOLOAD:=$(call AutoProbe,gpio-f7188x)
|
||||
endef
|
||||
|
||||
define KernelPackage/lkdtm/description
|
||||
This module enables testing of the different dumping mechanisms by inducing
|
||||
system failures at predefined crash points.
|
||||
define KernelPackage/gpio-f7188x/description
|
||||
Kernel module for the GPIOs found on many Fintek Super-IO chips.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,lkdtm))
|
||||
$(eval $(call KernelPackage,gpio-f7188x))
|
||||
|
||||
|
||||
define KernelPackage/mlx_wdt
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Mellanox Watchdog
|
||||
DEPENDS:=@TARGET_x86 +kmod-regmap-core
|
||||
KCONFIG:= \
|
||||
CONFIG_MELLANOX_PLATFORM=y \
|
||||
CONFIG_MLX_WDT
|
||||
FILES:=$(LINUX_DIR)/drivers/watchdog/mlx_wdt.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mlx_wdt)
|
||||
endef
|
||||
|
||||
define KernelPackage/mlx_wdt/description
|
||||
This is the driver for the hardware watchdog on Mellanox systems.
|
||||
This driver can be used together with the watchdog daemon.
|
||||
It can also watch your kernel to make sure it doesn't freeze,
|
||||
and if it does, it reboots your system after a certain amount of
|
||||
time.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mlx_wdt))
|
||||
|
||||
|
||||
define KernelPackage/mlxreg
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Mellanox platform register access
|
||||
DEPENDS:=@TARGET_x86 +kmod-i2c-mux-mlxcpld
|
||||
KCONFIG:= \
|
||||
CONFIG_MELLANOX_PLATFORM=y \
|
||||
CONFIG_MLX_PLATFORM \
|
||||
CONFIG_MLXREG_HOTPLUG \
|
||||
CONFIG_MLXREG_IO \
|
||||
CONFIG_SENSORS_MLXREG_FAN \
|
||||
CONFIG_LEDS_MLXREG
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/platform/x86/mlx-platform.ko \
|
||||
$(LINUX_DIR)/drivers/platform/mellanox/mlxreg-hotplug.ko \
|
||||
$(LINUX_DIR)/drivers/platform/mellanox/mlxreg-io.ko \
|
||||
$(LINUX_DIR)/drivers/hwmon/mlxreg-fan.ko \
|
||||
$(LINUX_DIR)/drivers/leds/leds-mlxreg.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mlx-platform mlxreg-hotplug mlxreg-io mlxreg-fan leds-mlxreg)
|
||||
endef
|
||||
|
||||
define KernelPackage/mlxreg/description
|
||||
Allows access to Mellanox programmable device register
|
||||
space through sysfs interface. The sets of registers for sysfs access
|
||||
are defined per system type bases and include the registers related
|
||||
to system resets operation, system reset causes monitoring and some
|
||||
kinds of mux selection.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mlxreg))
|
||||
|
||||
|
||||
define KernelPackage/mlxreg-lc
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Mellanox line card platform support
|
||||
DEPENDS:=kmod-mlxreg +kmod-regmap-i2c
|
||||
KCONFIG:=CONFIG_MLXREG_LC
|
||||
FILES:=$(LINUX_DIR)/drivers/platform/mellanox/mlxreg-lc.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mlxreg-lc)
|
||||
endef
|
||||
|
||||
define KernelPackage/mlxreg-lc/description
|
||||
Provides support for the Mellanox MSN4800-XX line cards,
|
||||
which are the part of MSN4800 Ethernet modular switch systems.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mlxreg-lc))
|
||||
|
||||
|
||||
define KernelPackage/mlxreg-sn2201
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Nvidia SN2201 platform support
|
||||
DEPENDS:=kmod-mlxreg +kmod-regmap-i2c
|
||||
KCONFIG:=CONFIG_NVSW_SN2201
|
||||
FILES:=$(LINUX_DIR)/drivers/platform/mellanox/nvsw-sn2201.ko
|
||||
AUTOLOAD:=$(call AutoProbe,nvsw-sn2201)
|
||||
endef
|
||||
|
||||
define KernelPackage/mlxreg-sn2201/description
|
||||
Provides support for the Nvidia SN2201 platform.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mlxreg-sn2201))
|
||||
|
||||
|
||||
define KernelPackage/pinctrl-mcp23s08
|
||||
define KernelPackage/gpio-mcp23s08
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Microchip MCP23xxx I/O expander
|
||||
HIDDEN:=1
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-regmap-core
|
||||
KCONFIG:=CONFIG_PINCTRL_MCP23S08
|
||||
FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08.ko
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
|
||||
KCONFIG:= \
|
||||
CONFIG_GPIO_MCP23S08 \
|
||||
CONFIG_PINCTRL_MCP23S08
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08.ko
|
||||
AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08)
|
||||
endef
|
||||
|
||||
define KernelPackage/pinctrl-mcp23s08/description
|
||||
Kernel module for Microchip MCP23xxx I/O expander
|
||||
define KernelPackage/gpio-mcp23s08/description
|
||||
Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,pinctrl-mcp23s08))
|
||||
$(eval $(call KernelPackage,gpio-mcp23s08))
|
||||
|
||||
|
||||
define KernelPackage/pinctrl-mcp23s08-i2c
|
||||
define KernelPackage/gpio-nxp-74hc164
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Microchip MCP23xxx I/O expander (I2C)
|
||||
DEPENDS:=@GPIO_SUPPORT \
|
||||
+kmod-pinctrl-mcp23s08 \
|
||||
+kmod-i2c-core \
|
||||
+kmod-regmap-i2c
|
||||
KCONFIG:=CONFIG_PINCTRL_MCP23S08_I2C
|
||||
FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08_i2c.ko
|
||||
AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08-i2c)
|
||||
TITLE:=NXP 74HC164 GPIO expander support
|
||||
KCONFIG:=CONFIG_GPIO_74X164
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-74x164.ko
|
||||
AUTOLOAD:=$(call AutoProbe,gpio-74x164)
|
||||
endef
|
||||
|
||||
define KernelPackage/pinctrl-mcp23s08-i2c/description
|
||||
Kernel module for Microchip MCP23xxx I/O expander via I2C
|
||||
define KernelPackage/gpio-nxp-74hc164/description
|
||||
Kernel module for NXP 74HC164 GPIO expander
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,pinctrl-mcp23s08-i2c))
|
||||
$(eval $(call KernelPackage,gpio-nxp-74hc164))
|
||||
|
||||
|
||||
define KernelPackage/pinctrl-mcp23s08-spi
|
||||
define KernelPackage/gpio-pca953x
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Microchip MCP23xxx I/O expander (SPI)
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-pinctrl-mcp23s08
|
||||
KCONFIG:=CONFIG_PINCTRL_MCP23S08_SPI
|
||||
FILES:=$(LINUX_DIR)/drivers/pinctrl/pinctrl-mcp23s08_spi.ko
|
||||
AUTOLOAD:=$(call AutoLoad,40,pinctrl-mcp23s08-spi)
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core +kmod-regmap-i2c
|
||||
TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
|
||||
KCONFIG:=CONFIG_GPIO_PCA953X
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
|
||||
AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
|
||||
endef
|
||||
|
||||
define KernelPackage/pinctrl-mcp23s08-spi/description
|
||||
Kernel module for Microchip MCP23xxx I/O expander via SPI
|
||||
define KernelPackage/gpio-pca953x/description
|
||||
Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
|
||||
PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,pinctrl-mcp23s08-spi))
|
||||
$(eval $(call KernelPackage,gpio-pca953x))
|
||||
|
||||
define KernelPackage/gpio-pcf857x
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
|
||||
TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
|
||||
KCONFIG:=CONFIG_GPIO_PCF857X
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
|
||||
AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-pcf857x/description
|
||||
Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-pcf857x))
|
||||
|
||||
|
||||
define KernelPackage/gpio-it87
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
DEPENDS:=@GPIO_SUPPORT @TARGET_x86
|
||||
TITLE:=GPIO support for IT87xx Super I/O chips
|
||||
KCONFIG:=CONFIG_GPIO_IT87
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-it87.ko
|
||||
AUTOLOAD:=$(call AutoLoad,25,gpio-it87,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-it87/description
|
||||
This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
|
||||
supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as
|
||||
well.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-it87))
|
||||
|
||||
|
||||
define KernelPackage/gpio-amd-fch
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
DEPENDS:=@GPIO_SUPPORT @TARGET_x86
|
||||
TITLE:=GPIO support for AMD Fusion Controller Hub (G-series SOCs)
|
||||
KCONFIG:=CONFIG_GPIO_AMD_FCH
|
||||
FILES:=$(LINUX_DIR)/drivers/gpio/gpio-amd-fch.ko
|
||||
AUTOLOAD:=$(call AutoLoad,25,gpio-amd-fch,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-amd-fch/description
|
||||
This option enables driver for GPIO on AMDs Fusion Controller Hub,
|
||||
as found on G-series SOCs (eg. GX-412TC)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-amd-fch))
|
||||
|
||||
|
||||
define KernelPackage/ppdev
|
||||
@ -444,6 +375,7 @@ define KernelPackage/mmc
|
||||
CONFIG_MMC_BLOCK \
|
||||
CONFIG_MMC_DEBUG=n \
|
||||
CONFIG_MMC_UNSAFE_RESUME=n \
|
||||
CONFIG_MMC_BLOCK_BOUNCE=y \
|
||||
CONFIG_MMC_TIFM_SD=n \
|
||||
CONFIG_MMC_WBSD=n \
|
||||
CONFIG_SDIO_UART=n
|
||||
@ -460,6 +392,23 @@ endef
|
||||
$(eval $(call KernelPackage,mmc))
|
||||
|
||||
|
||||
define KernelPackage/mvsdio
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Marvell MMC/SD/SDIO host driver
|
||||
DEPENDS:=+kmod-mmc @TARGET_kirkwood
|
||||
KCONFIG:= CONFIG_MMC_MVSDIO
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mvsdio,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/mvsdio/description
|
||||
Kernel support for the Marvell SDIO host driver.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mvsdio))
|
||||
|
||||
|
||||
define KernelPackage/sdhci
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Secure Digital Host Controller Interface support
|
||||
@ -529,7 +478,6 @@ define KernelPackage/ssb
|
||||
CONFIG_SSB_DRIVER_MIPS=n \
|
||||
CONFIG_SSB_DRIVER_PCICORE=y \
|
||||
CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
|
||||
CONFIG_SSB_FALLBACK_SPROM=y \
|
||||
CONFIG_SSB_PCIHOST=y \
|
||||
CONFIG_SSB_PCIHOST_POSSIBLE=y \
|
||||
CONFIG_SSB_POSSIBLE=y \
|
||||
@ -554,7 +502,6 @@ define KernelPackage/bcma
|
||||
CONFIG_BCMA \
|
||||
CONFIG_BCMA_POSSIBLE=y \
|
||||
CONFIG_BCMA_BLOCKIO=y \
|
||||
CONFIG_BCMA_FALLBACK_SPROM=y \
|
||||
CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
|
||||
CONFIG_BCMA_HOST_PCI=y \
|
||||
CONFIG_BCMA_HOST_SOC=n \
|
||||
@ -573,16 +520,202 @@ endef
|
||||
$(eval $(call KernelPackage,bcma))
|
||||
|
||||
|
||||
define KernelPackage/mfd
|
||||
define KernelPackage/rtc-ds1307
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Multifunction device drivers
|
||||
HIDDEN:=1
|
||||
KCONFIG:=CONFIG_MFD_CORE
|
||||
FILES:=$(LINUX_DIR)/drivers/mfd/mfd-core.ko
|
||||
AUTOLOAD:=$(call AutoLoad,10,mfd-core)
|
||||
TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-hwmon-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_DS1307 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mfd))
|
||||
define KernelPackage/rtc-ds1307/description
|
||||
Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
|
||||
Epson RX-8025 and various other compatible RTC chips connected via I2C.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-ds1307))
|
||||
|
||||
|
||||
define KernelPackage/rtc-ds1374
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Dallas/Maxim DS1374 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_DS1374 \
|
||||
CONFIG_RTC_DRV_DS1374_WDT=n \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-ds1374/description
|
||||
Kernel module for Dallas/Maxim DS1374.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-ds1374))
|
||||
|
||||
|
||||
define KernelPackage/rtc-ds1672
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Dallas/Maxim DS1672 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_DS1672 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-ds1672/description
|
||||
Kernel module for Dallas/Maxim DS1672 RTC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-ds1672))
|
||||
|
||||
|
||||
define KernelPackage/rtc-em3027
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Microelectronic EM3027 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_EM3027 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-em3027.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-em3027)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-em3027/description
|
||||
Kernel module for Microelectronic EM3027 RTC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-em3027))
|
||||
|
||||
|
||||
define KernelPackage/rtc-isl1208
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Intersil ISL1208 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-isl1208/description
|
||||
Kernel module for Intersil ISL1208 RTC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-isl1208))
|
||||
|
||||
|
||||
define KernelPackage/rtc-pcf8563
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Philips PCF8563/Epson RTC8564 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-pcf8563/description
|
||||
Kernel module for Philips PCF8563 RTC chip.
|
||||
The Epson RTC8564 should work as well.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-pcf8563))
|
||||
|
||||
|
||||
define KernelPackage/rtc-pcf2123
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Philips PCF2123 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-regmap-spi
|
||||
KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-pcf2123/description
|
||||
Kernel module for Philips PCF2123 RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-pcf2123))
|
||||
|
||||
define KernelPackage/rtc-pcf2127
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=NXP PCF2127 and PCF2129 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-spi
|
||||
KCONFIG:=CONFIG_RTC_DRV_PCF2127 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2127.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-pcf2127)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-pcf2127/description
|
||||
Kernel module for NXP PCF2127 and PCF2129 RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-pcf2127))
|
||||
|
||||
|
||||
define KernelPackage/rtc-rs5c372a
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-rs5c372a/description
|
||||
Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-rs5c372a))
|
||||
|
||||
define KernelPackage/rtc-rx8025
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Epson RX-8025 / RX-8035
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_RX8025 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rx8025.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,rtc-rx8025,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-rx8025/description
|
||||
Kernel module for Epson RX-8025 and RX-8035 I2C RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-rx8025))
|
||||
|
||||
define KernelPackage/rtc-s35390a
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Seico S-35390A
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_S35390A \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-s35390a.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,rtc-s35390a,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-s35390a/description
|
||||
Kernel module for Seiko Instruments S-35390A I2C RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-s35390a))
|
||||
|
||||
|
||||
define KernelPackage/mtdtests
|
||||
@ -590,7 +723,6 @@ define KernelPackage/mtdtests
|
||||
TITLE:=MTD subsystem tests
|
||||
KCONFIG:=CONFIG_MTD_TESTS
|
||||
FILES:=\
|
||||
$(LINUX_DIR)/drivers/mtd/tests/mtd_nandbiterrs.ko \
|
||||
$(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
|
||||
$(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
|
||||
$(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
|
||||
@ -598,7 +730,6 @@ define KernelPackage/mtdtests
|
||||
$(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
|
||||
$(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
|
||||
$(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
|
||||
$(LINUX_DIR)/drivers/mtd/tests/mtd_test.ko \
|
||||
$(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
|
||||
endef
|
||||
|
||||
@ -639,42 +770,6 @@ endef
|
||||
$(eval $(call KernelPackage,mtdram))
|
||||
|
||||
|
||||
define KernelPackage/ramoops
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Ramoops (pstore-ram)
|
||||
DEFAULT:=m if ALL_KMODS
|
||||
KCONFIG:=CONFIG_PSTORE_RAM \
|
||||
CONFIG_PSTORE_CONSOLE=y
|
||||
DEPENDS:=+kmod-pstore +kmod-reed-solomon
|
||||
FILES:= $(LINUX_DIR)/fs/pstore/ramoops.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,ramoops,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/ramoops/description
|
||||
Kernel module for pstore-ram (ramoops) crash log storage
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,ramoops))
|
||||
|
||||
|
||||
define KernelPackage/reed-solomon
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Reed-Solomon error correction
|
||||
DEFAULT:=m if ALL_KMODS
|
||||
KCONFIG:=CONFIG_REED_SOLOMON \
|
||||
CONFIG_REED_SOLOMON_DEC8=y \
|
||||
CONFIG_REED_SOLOMON_ENC8=y
|
||||
FILES:= $(LINUX_DIR)/lib/reed_solomon/reed_solomon.ko
|
||||
AUTOLOAD:=$(call AutoLoad,30,reed_solomon,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/reed-solomon/description
|
||||
Kernel module for Reed-Solomon error correction
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,reed-solomon))
|
||||
|
||||
|
||||
define KernelPackage/serial-8250
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=8250 UARTs
|
||||
@ -708,7 +803,7 @@ define KernelPackage/serial-8250-exar
|
||||
KCONFIG:= CONFIG_SERIAL_8250_EXAR
|
||||
FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250_exar.ko
|
||||
AUTOLOAD:=$(call AutoProbe,8250 8250_base 8250_exar)
|
||||
DEPENDS:=@PCI_SUPPORT +kmod-serial-8250
|
||||
DEPENDS:=+kmod-serial-8250
|
||||
endef
|
||||
|
||||
define KernelPackage/serial-8250-exar/description
|
||||
@ -803,10 +898,12 @@ $(eval $(call KernelPackage,ikconfig))
|
||||
define KernelPackage/zram
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=ZRAM
|
||||
DEPENDS:=+kmod-lib-lzo
|
||||
KCONFIG:= \
|
||||
CONFIG_ZSMALLOC \
|
||||
CONFIG_ZRAM \
|
||||
CONFIG_ZRAM_DEBUG=n \
|
||||
CONFIG_PGTABLE_MAPPING=n \
|
||||
CONFIG_ZRAM_WRITEBACK=n \
|
||||
CONFIG_ZSMALLOC_STAT=n
|
||||
FILES:= \
|
||||
@ -819,38 +916,9 @@ define KernelPackage/zram/description
|
||||
Compressed RAM block device support
|
||||
endef
|
||||
|
||||
define KernelPackage/zram/config
|
||||
if PACKAGE_kmod-zram
|
||||
choice
|
||||
prompt "ZRAM Default compressor"
|
||||
default ZRAM_DEF_COMP_LZORLE
|
||||
|
||||
config ZRAM_DEF_COMP_LZORLE
|
||||
bool "lzo-rle"
|
||||
select PACKAGE_kmod-lib-lzo
|
||||
|
||||
config ZRAM_DEF_COMP_LZO
|
||||
bool "lzo"
|
||||
select PACKAGE_kmod-lib-lzo
|
||||
|
||||
config ZRAM_DEF_COMP_LZ4
|
||||
bool "lz4"
|
||||
select PACKAGE_kmod-lib-lz4
|
||||
|
||||
config ZRAM_DEF_COMP_LZ4HC
|
||||
bool "lz4-hc"
|
||||
select PACKAGE_kmod-lib-lz4hc
|
||||
|
||||
config ZRAM_DEF_COMP_ZSTD
|
||||
bool "zstd"
|
||||
select PACKAGE_kmod-lib-zstd
|
||||
|
||||
endchoice
|
||||
endif
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,zram))
|
||||
|
||||
|
||||
define KernelPackage/pps
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=PPS support
|
||||
@ -925,7 +993,7 @@ $(eval $(call KernelPackage,ptp))
|
||||
define KernelPackage/ptp-qoriq
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Freescale QorIQ PTP support
|
||||
DEPENDS:=@(TARGET_mpc85xx||TARGET_qoriq) +kmod-ptp
|
||||
DEPENDS:=@TARGET_mpc85xx +kmod-ptp
|
||||
KCONFIG:=CONFIG_PTP_1588_CLOCK_QORIQ
|
||||
FILES:=$(LINUX_DIR)/drivers/ptp/ptp-qoriq.ko
|
||||
AUTOLOAD:=$(call AutoProbe,ptp-qoriq)
|
||||
@ -962,7 +1030,6 @@ define KernelPackage/thermal
|
||||
CONFIG_THERMAL=y \
|
||||
CONFIG_THERMAL_OF=y \
|
||||
CONFIG_CPU_THERMAL=y \
|
||||
CONFIG_DEVFREQ_THERMAL=n \
|
||||
CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
|
||||
CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
|
||||
CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
|
||||
@ -982,6 +1049,25 @@ endef
|
||||
$(eval $(call KernelPackage,thermal))
|
||||
|
||||
|
||||
define KernelPackage/gpio-beeper
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=GPIO beeper support
|
||||
DEPENDS:=+kmod-input-core
|
||||
KCONFIG:= \
|
||||
CONFIG_INPUT_MISC=y \
|
||||
CONFIG_INPUT_GPIO_BEEPER
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
|
||||
endef
|
||||
|
||||
define KernelPackage/gpio-beeper/description
|
||||
This enables playing beeps through an GPIO-connected buzzer
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,gpio-beeper))
|
||||
|
||||
|
||||
define KernelPackage/echo
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Line Echo Canceller
|
||||
@ -1024,7 +1110,7 @@ define KernelPackage/keys-trusted
|
||||
TITLE:=TPM trusted keys on kernel keyring
|
||||
DEPENDS:=@KERNEL_KEYS +kmod-crypto-hash +kmod-crypto-hmac +kmod-crypto-sha1 +kmod-tpm
|
||||
KCONFIG:=CONFIG_TRUSTED_KEYS
|
||||
FILES:= $(LINUX_DIR)/security/keys/trusted-keys/trusted.ko
|
||||
FILES:=$(LINUX_DIR)/security/keys/trusted.ko
|
||||
AUTOLOAD:=$(call AutoLoad,01,trusted-keys,1)
|
||||
endef
|
||||
|
||||
@ -1042,8 +1128,7 @@ $(eval $(call KernelPackage,keys-trusted))
|
||||
define KernelPackage/tpm
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=TPM Hardware Support
|
||||
DEPENDS:= +kmod-random-core +kmod-asn1-decoder \
|
||||
+kmod-asn1-encoder +kmod-oid-registry
|
||||
DEPENDS:= +kmod-random-core
|
||||
KCONFIG:= CONFIG_TCG_TPM
|
||||
FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm.ko
|
||||
AUTOLOAD:=$(call AutoLoad,10,tpm,1)
|
||||
@ -1106,50 +1191,84 @@ endef
|
||||
$(eval $(call KernelPackage,tpm-i2c-infineon))
|
||||
|
||||
|
||||
define KernelPackage/i6300esb-wdt
|
||||
define KernelPackage/w83627hf-wdt
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Intel 6300ESB Timer/Watchdog
|
||||
DEPENDS:=@PCI_SUPPORT @!SMALL_FLASH
|
||||
KCONFIG:=CONFIG_I6300ESB_WDT \
|
||||
CONFIG_WATCHDOG_CORE=y
|
||||
FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/i6300esb.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,i6300esb,1)
|
||||
TITLE:=Winbond 83627HF Watchdog Timer
|
||||
KCONFIG:=CONFIG_W83627HF_WDT
|
||||
FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/w83627hf_wdt.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,w83627hf-wdt,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/i6300esb-wdt/description
|
||||
Kernel module for the watchdog timer built into the Intel
|
||||
6300ESB controller hub. Also used by QEMU/libvirt.
|
||||
define KernelPackage/w83627hf-wdt/description
|
||||
Kernel module for Winbond 83627HF Watchdog Timer
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,i6300esb-wdt))
|
||||
$(eval $(call KernelPackage,w83627hf-wdt))
|
||||
|
||||
|
||||
define KernelPackage/itco-wdt
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Intel iTCO Watchdog Timer
|
||||
KCONFIG:=CONFIG_ITCO_WDT \
|
||||
CONFIG_ITCO_VENDOR_SUPPORT=y
|
||||
FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_wdt.ko \
|
||||
$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/iTCO_vendor_support.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,iTCO_vendor_support iTCO_wdt,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/itco-wdt/description
|
||||
Kernel module for Intel iTCO Watchdog Timer
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,itco-wdt))
|
||||
|
||||
|
||||
define KernelPackage/it87-wdt
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=ITE IT87 Watchdog Timer
|
||||
KCONFIG:=CONFIG_IT87_WDT
|
||||
FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/it87_wdt.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,it87-wdt,1)
|
||||
MODPARAMS.it87-wdt:= \
|
||||
nogameport=1 \
|
||||
nocir=1
|
||||
endef
|
||||
|
||||
define KernelPackage/it87-wdt/description
|
||||
Kernel module for ITE IT87 Watchdog Timer
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,it87-wdt))
|
||||
|
||||
|
||||
define KernelPackage/f71808e-wdt
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Fintek F718xx/F818xx Watchdog Timer
|
||||
DEPENDS:=@TARGET_x86
|
||||
KCONFIG:=CONFIG_F71808E_WDT
|
||||
FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/f71808e_wdt.ko
|
||||
AUTOLOAD:=$(call AutoProbe,f71808e-wdt,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/f71808e-wdt/description
|
||||
Kernel module for the watchdog timer found on many Fintek Super-IO chips.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,f71808e-wdt))
|
||||
|
||||
define KernelPackage/mhi-bus
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=MHI bus
|
||||
TITLE:=Modem Host Interface (MHI) bus and PCI driver
|
||||
KCONFIG:=CONFIG_MHI_BUS \
|
||||
CONFIG_MHI_BUS_PCI_GENERIC \
|
||||
CONFIG_MHI_BUS_DEBUG=y
|
||||
FILES:=$(LINUX_DIR)/drivers/bus/mhi/host/mhi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mhi)
|
||||
FILES:=$(LINUX_DIR)/drivers/bus/mhi/mhi_pci_generic.ko \
|
||||
$(LINUX_DIR)/drivers/bus/mhi/core/mhi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mhi mhi_pci_generic)
|
||||
endef
|
||||
|
||||
define KernelPackage/mhi-bus/description
|
||||
Kernel module for the Qualcomm MHI bus.
|
||||
Kernel modules for the Qualcoom MHI bus.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mhi-bus))
|
||||
|
||||
define KernelPackage/mhi-pci-generic
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=MHI PCI controller driver
|
||||
DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus
|
||||
KCONFIG:=CONFIG_MHI_BUS_PCI_GENERIC
|
||||
FILES:=$(LINUX_DIR)/drivers/bus/mhi/host/mhi_pci_generic.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mhi_pci_generic)
|
||||
endef
|
||||
|
||||
define KernelPackage/mhi-pci-generic/description
|
||||
Kernel module for the MHI PCI controller driver.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,mhi-pci-generic))
|
||||
|
@ -1,255 +0,0 @@
|
||||
#
|
||||
# Copyright (C) 2006-2024 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
RTC_MENU:=RTC Real-Time Clock Support
|
||||
|
||||
define KernelPackage/rtc-ds1307
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-i2c +kmod-hwmon-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_DS1307 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-ds1307/description
|
||||
Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
|
||||
Epson RX-8025 and various other compatible RTC chips connected via I2C.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-ds1307))
|
||||
|
||||
|
||||
define KernelPackage/rtc-ds1374
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Dallas/Maxim DS1374 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_DS1374 \
|
||||
CONFIG_RTC_DRV_DS1374_WDT=n \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-ds1374/description
|
||||
Kernel module for Dallas/Maxim DS1374.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-ds1374))
|
||||
|
||||
|
||||
define KernelPackage/rtc-ds1672
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Dallas/Maxim DS1672 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_DS1672 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-ds1672/description
|
||||
Kernel module for Dallas/Maxim DS1672 RTC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-ds1672))
|
||||
|
||||
|
||||
define KernelPackage/rtc-em3027
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Microelectronic EM3027 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_EM3027 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-em3027.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-em3027)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-em3027/description
|
||||
Kernel module for Microelectronic EM3027 RTC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-em3027))
|
||||
|
||||
|
||||
define KernelPackage/rtc-isl1208
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Intersil ISL1208 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-isl1208/description
|
||||
Kernel module for Intersil ISL1208 RTC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-isl1208))
|
||||
|
||||
|
||||
define KernelPackage/rtc-mv
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Marvell SoC RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
KCONFIG:=CONFIG_RTC_DRV_MV \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-mv)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-mv/description
|
||||
Kernel module for Marvell SoC RTC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-mv))
|
||||
|
||||
|
||||
define KernelPackage/rtc-pcf8563
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Philips PCF8563/Epson RTC8564 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-pcf8563/description
|
||||
Kernel module for Philips PCF8563 RTC chip.
|
||||
The Epson RTC8564 should work as well.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-pcf8563))
|
||||
|
||||
|
||||
define KernelPackage/rtc-pcf2123
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Philips PCF2123 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-regmap-spi
|
||||
KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-pcf2123/description
|
||||
Kernel module for Philips PCF2123 RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-pcf2123))
|
||||
|
||||
define KernelPackage/rtc-pcf2127
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=NXP PCF2127 and PCF2129 RTC support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core +kmod-regmap-spi
|
||||
KCONFIG:=CONFIG_RTC_DRV_PCF2127 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2127.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-pcf2127)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-pcf2127/description
|
||||
Kernel module for NXP PCF2127 and PCF2129 RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-pcf2127))
|
||||
|
||||
define KernelPackage/rtc-r7301
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Epson RTC7301 support
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-regmap-mmio
|
||||
KCONFIG:=CONFIG_RTC_DRV_R7301 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-r7301.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-r7301)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-r7301/description
|
||||
Kernel module for Epson RTC7301 RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-r7301))
|
||||
|
||||
define KernelPackage/rtc-rs5c372a
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-rs5c372a/description
|
||||
Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-rs5c372a))
|
||||
|
||||
define KernelPackage/rtc-rx8025
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Epson RX-8025 / RX-8035
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_RX8025 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rx8025.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,rtc-rx8025,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-rx8025/description
|
||||
Kernel module for Epson RX-8025 and RX-8035 I2C RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-rx8025))
|
||||
|
||||
define KernelPackage/rtc-s35390a
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Seico S-35390A
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_S35390A \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-s35390a.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,rtc-s35390a,1)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-s35390a/description
|
||||
Kernel module for Seiko Instruments S-35390A I2C RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-s35390a))
|
||||
|
||||
define KernelPackage/rtc-x1205
|
||||
SUBMENU:=$(RTC_MENU)
|
||||
TITLE:=Xicor Intersil X1205
|
||||
DEFAULT:=m if ALL_KMODS && RTC_SUPPORT
|
||||
DEPENDS:=+kmod-i2c-core
|
||||
KCONFIG:=CONFIG_RTC_DRV_X1205 \
|
||||
CONFIG_RTC_CLASS=y
|
||||
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-x1205.ko
|
||||
AUTOLOAD:=$(call AutoProbe,rtc-x1205)
|
||||
endef
|
||||
|
||||
define KernelPackage/rtc-x1205/description
|
||||
Kernel module for Xicor Intersil X1205 I2C RTC chip
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,rtc-x1205))
|
@ -225,51 +225,17 @@ define KernelPackage/sound-soc-imx
|
||||
$(LINUX_DIR)/sound/soc/fsl/snd-soc-fsl-ssi.ko \
|
||||
$(LINUX_DIR)/sound/soc/fsl/imx-pcm-dma.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,snd-soc-imx-audmux snd-soc-fsl-ssi snd-soc-imx-pcm)
|
||||
DEPENDS:=@TARGET_imx +kmod-sound-soc-core
|
||||
DEPENDS:=@TARGET_imx6 +kmod-sound-soc-core
|
||||
$(call AddDepends/sound)
|
||||
endef
|
||||
|
||||
define KernelPackage/sound-soc-imx/description
|
||||
Support for i.MX Platform sound (ssi/audmux/pcm)
|
||||
Support for i.MX6 Platform sound (ssi/audmux/pcm)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sound-soc-imx))
|
||||
|
||||
|
||||
define KernelPackage/sound-soc-mt7986
|
||||
TITLE:=MediaTek MT7986 Audio support
|
||||
KCONFIG:=CONFIG_SND_SOC_MT7986 CONFIG_SND_SOC_MT7986_WM8960
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/sound/soc/mediatek/common/snd-soc-mtk-common.ko \
|
||||
$(LINUX_DIR)/sound/soc/mediatek/mt7986/snd-soc-mt7986-afe.ko
|
||||
AUTOLOAD:=$(call AutoLoad,56,snd-soc-mtk-common snd-soc-mt7986-afe)
|
||||
DEPENDS:=@TARGET_mediatek_filogic +kmod-sound-soc-core
|
||||
$(call AddDepends/sound)
|
||||
endef
|
||||
|
||||
define KernelPackage/sound-soc-mt7986/description
|
||||
Support for audio on systems using the MediaTek MT7986 SoC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sound-soc-mt7986))
|
||||
|
||||
|
||||
define KernelPackage/sound-soc-mt7986-wm8960
|
||||
TITLE:=MediaTek MT7986 Audio support
|
||||
KCONFIG:=CONFIG_SND_SOC_MT7986_WM8960
|
||||
FILES:=$(LINUX_DIR)/sound/soc/mediatek/mt7986/mt7986-wm8960.ko
|
||||
AUTOLOAD:=$(call AutoLoad,57,mt7986-wm8960)
|
||||
DEPENDS:=@TARGET_mediatek_filogic +kmod-sound-soc-wm8960 +kmod-sound-soc-mt7986
|
||||
$(call AddDepends/sound)
|
||||
endef
|
||||
|
||||
define KernelPackage/sound-soc-mt7986-wm8960/description
|
||||
Support for use of the Wolfson Audio WM8960 codec with the MediaTek MT7986 SoC.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sound-soc-mt7986-wm8960))
|
||||
|
||||
|
||||
define KernelPackage/sound-soc-imx-sgtl5000
|
||||
TITLE:=IMX SoC support for SGTL5000
|
||||
KCONFIG:=CONFIG_SND_SOC_IMX_SGTL5000
|
||||
@ -277,29 +243,17 @@ define KernelPackage/sound-soc-imx-sgtl5000
|
||||
$(LINUX_DIR)/sound/soc/codecs/snd-soc-sgtl5000.ko \
|
||||
$(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-sgtl5000.ko
|
||||
AUTOLOAD:=$(call AutoLoad,57,snd-soc-sgtl5000 snd-soc-imx-sgtl5000)
|
||||
DEPENDS:=@TARGET_imx +kmod-sound-soc-imx +kmod-regmap-i2c
|
||||
DEPENDS:=@TARGET_imx6 +kmod-sound-soc-imx
|
||||
$(call AddDepends/sound)
|
||||
endef
|
||||
|
||||
define KernelPackage/sound-soc-imx-sgtl5000/description
|
||||
Support for i.MX Platform sound SGTL5000 codec
|
||||
Support for i.MX6 Platform sound SGTL5000 codec
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sound-soc-imx-sgtl5000))
|
||||
|
||||
|
||||
define KernelPackage/sound-soc-wm8960
|
||||
TITLE:=SoC WM8960 codec support
|
||||
KCONFIG:=CONFIG_SND_SOC_WM8960
|
||||
FILES:=$(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8960.ko
|
||||
DEPENDS:=+kmod-sound-soc-core +kmod-i2c-core +kmod-regmap-i2c
|
||||
AUTOLOAD:=$(call AutoProbe,snd-soc-wm8960)
|
||||
$(call AddDepends/sound)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sound-soc-wm8960))
|
||||
|
||||
|
||||
define KernelPackage/sound-soc-spdif
|
||||
TITLE:=SoC S/PDIF codec support
|
||||
KCONFIG:=CONFIG_SND_SOC_SPDIF
|
||||
@ -314,17 +268,6 @@ endef
|
||||
$(eval $(call KernelPackage,sound-soc-spdif))
|
||||
|
||||
|
||||
define KernelPackage/sound-soc-dmic
|
||||
TITLE:=Generic Digital Microphone CODEC
|
||||
KCONFIG:=CONFIG_SND_SOC_DMIC
|
||||
FILES:=$(LINUX_DIR)/sound/soc/codecs/snd-soc-dmic.ko
|
||||
AUTOLOAD:=$(call AutoProbe,snd-soc-dmic)
|
||||
$(call AddDepends/sound,+kmod-sound-soc-core)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,sound-soc-dmic))
|
||||
|
||||
|
||||
define KernelPackage/pcspkr
|
||||
DEPENDS:=@TARGET_x86 +kmod-input-core
|
||||
TITLE:=PC speaker support
|
||||
@ -361,7 +304,6 @@ $(eval $(call KernelPackage,sound-dummy))
|
||||
define KernelPackage/sound-hda-core
|
||||
SUBMENU:=$(SOUND_MENU)
|
||||
TITLE:=HD Audio Sound Core Support
|
||||
DEPENDS:=+kmod-ledtrig-audio
|
||||
KCONFIG:= \
|
||||
CONFIG_SND_HDA_CORE \
|
||||
CONFIG_SND_HDA_HWDEP=y \
|
||||
@ -580,7 +522,7 @@ define KernelPackage/sound-hda-intel
|
||||
CONFIG_SND_HDA_INTEL
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/sound/pci/hda/snd-hda-intel.ko \
|
||||
$(LINUX_DIR)/sound/hda/snd-intel-dspcfg.ko
|
||||
$(LINUX_DIR)/sound/hda/snd-intel-nhlt.ko
|
||||
AUTOLOAD:=$(call AutoProbe,snd-hda-intel)
|
||||
$(call AddDepends/sound,kmod-sound-hda-core)
|
||||
endef
|
||||
|
@ -15,9 +15,9 @@ define KernelPackage/mmc-spi
|
||||
CONFIG_SPI=y \
|
||||
CONFIG_SPI_MASTER=y
|
||||
FILES:=\
|
||||
$(LINUX_DIR)/drivers/mmc/host/of_mmc_spi.ko \
|
||||
$(if $(CONFIG_OF),$(LINUX_DIR)/drivers/mmc/host/of_mmc_spi.ko) \
|
||||
$(LINUX_DIR)/drivers/mmc/host/mmc_spi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,of_mmc_spi mmc_spi)
|
||||
AUTOLOAD:=$(call AutoProbe,$(if $(CONFIG_OF),of_mmc_spi) mmc_spi)
|
||||
endef
|
||||
|
||||
define KernelPackage/mmc-spi/description
|
||||
|
@ -179,23 +179,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-gadget-eth))
|
||||
|
||||
define KernelPackage/usb-gadget-ncm
|
||||
TITLE:=USB Network Control Model (NCM) Gadget support
|
||||
KCONFIG:=CONFIG_USB_G_NCM
|
||||
DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite \
|
||||
+kmod-usb-gadget-eth
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ncm.ko \
|
||||
$(LINUX_DIR)/drivers/usb/gadget/legacy/g_ncm.ko
|
||||
AUTOLOAD:=$(call AutoLoad,52,usb_f_ncm)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-gadget-ncm/description
|
||||
Kernel support for USB Network Control Model (NCM) Gadget
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-gadget-ncm))
|
||||
|
||||
define KernelPackage/usb-gadget-serial
|
||||
TITLE:=USB Serial Gadget support
|
||||
@ -272,13 +255,13 @@ $(eval $(call KernelPackage,usb-uhci,1))
|
||||
define KernelPackage/usb-ohci
|
||||
TITLE:=Support for OHCI controllers
|
||||
DEPENDS:= \
|
||||
+TARGET_ath79:kmod-phy-ath79-usb \
|
||||
+TARGET_bcm53xx:kmod-usb-bcma \
|
||||
+TARGET_bcm47xx:kmod-usb-bcma \
|
||||
+TARGET_bcm47xx:kmod-usb-ssb
|
||||
KCONFIG:= \
|
||||
CONFIG_USB_OHCI \
|
||||
CONFIG_USB_OHCI_HCD \
|
||||
CONFIG_USB_OHCI_ATH79=y \
|
||||
CONFIG_USB_OHCI_HCD_AT91=y \
|
||||
CONFIG_USB_OHCI_BCM63XX=y \
|
||||
CONFIG_USB_OCTEON_OHCI=y \
|
||||
@ -331,6 +314,17 @@ define KernelPackage/usb-bcma
|
||||
endef
|
||||
$(eval $(call KernelPackage,usb-bcma))
|
||||
|
||||
define KernelPackage/usb-fotg210
|
||||
TITLE:=Support for FOTG210 USB host controllers
|
||||
DEPENDS:=@USB_SUPPORT @TARGET_gemini
|
||||
KCONFIG:=CONFIG_USB_FOTG210_HCD
|
||||
FILES:= \
|
||||
$(if $(CONFIG_USB_FOTG210_HCD),$(LINUX_DIR)/drivers/usb/host/fotg210-hcd.ko)
|
||||
AUTOLOAD:=$(call AutoLoad,50,fotg210-hcd,1)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
$(eval $(call KernelPackage,usb-fotg210))
|
||||
|
||||
define KernelPackage/usb-ssb
|
||||
TITLE:=Support for SSB USB controllers
|
||||
DEPENDS:=@USB_SUPPORT @TARGET_bcm47xx
|
||||
@ -418,9 +412,12 @@ $(eval $(call KernelPackage,usb2-pci))
|
||||
|
||||
define KernelPackage/usb-dwc2
|
||||
TITLE:=DWC2 USB controller driver
|
||||
DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget +kmod-usb-roles
|
||||
DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget
|
||||
KCONFIG:= \
|
||||
CONFIG_USB_PCI=y \
|
||||
CONFIG_USB_DWC2 \
|
||||
CONFIG_USB_DWC2_PCI \
|
||||
CONFIG_USB_DWC2_PLATFORM \
|
||||
CONFIG_USB_DWC2_DEBUG=n \
|
||||
CONFIG_USB_DWC2_VERBOSE=n \
|
||||
CONFIG_USB_DWC2_TRACK_MISSED_SOFS=n \
|
||||
@ -439,64 +436,6 @@ endef
|
||||
$(eval $(call KernelPackage,usb-dwc2))
|
||||
|
||||
|
||||
define KernelPackage/usb-dwc2-pci
|
||||
TITLE:=DWC2 USB controller driver (PCI)
|
||||
DEPENDS:=@PCI_SUPPORT +kmod-usb-dwc2 +kmod-usb-phy-nop
|
||||
KCONFIG:= \
|
||||
CONFIG_USB_PCI=y \
|
||||
CONFIG_USB_DWC2_PCI
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/usb/dwc2/dwc2_pci.ko
|
||||
AUTOLOAD:=$(call AutoLoad,54,dwc2_pci,1)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-dwc2-pci/description
|
||||
The Designware USB2.0 PCI interface module for controllers
|
||||
connected to a PCI bus.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-dwc2-pci))
|
||||
|
||||
|
||||
define KernelPackage/usb-cdns
|
||||
TITLE:=Cadence USB USB controller driver
|
||||
DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget +kmod-usb-roles
|
||||
KCONFIG:= \
|
||||
CONFIG_USB_CDNS_SUPPORT
|
||||
FILES:= $(LINUX_DIR)/drivers/usb/cdns3/cdns-usb-common.ko
|
||||
AUTOLOAD:=$(call AutoLoad,50,cdns-usb-common,1)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-cdns/description
|
||||
This driver provides USB Device Controller support for the
|
||||
Cadence USB Core
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-cdns))
|
||||
|
||||
|
||||
define KernelPackage/usb-cdns3
|
||||
TITLE:=Cadence USB3 USB controller driver
|
||||
DEPENDS:=+kmod-usb-cdns
|
||||
KCONFIG:= \
|
||||
CONFIG_USB_CDNS3 \
|
||||
CONFIG_USB_CDNS3_GADGET=y \
|
||||
CONFIG_USB_CDNS3_HOST=y
|
||||
FILES:= $(LINUX_DIR)/drivers/usb/cdns3/cdns3.ko
|
||||
AUTOLOAD:=$(call AutoLoad,54,cdns3,1)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-cdns3/description
|
||||
This driver provides support for the Dual Role SuperSpeed
|
||||
USB Controller based on the Cadence USB3 IP Core
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-cdns3))
|
||||
|
||||
|
||||
define KernelPackage/usb-dwc3
|
||||
TITLE:=DWC3 USB controller driver
|
||||
KCONFIG:= \
|
||||
@ -519,26 +458,9 @@ endef
|
||||
$(eval $(call KernelPackage,usb-dwc3))
|
||||
|
||||
|
||||
define KernelPackage/usb-dwc3-octeon
|
||||
TITLE:=DWC3 Cavium Octeon USB driver
|
||||
DEPENDS:=@TARGET_octeon +kmod-usb-dwc3
|
||||
KCONFIG:= CONFIG_USB_DWC3_OCTEON
|
||||
FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3-octeon.ko
|
||||
AUTOLOAD:=$(call AutoProbe,dwc3-octeon,1)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-dwc3-octeon/description
|
||||
This driver adds support for Cavium Octeon platforms with DesignWare
|
||||
Core USB3 IP.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-dwc3-octeon))
|
||||
|
||||
|
||||
define KernelPackage/usb-dwc3-qcom
|
||||
TITLE:=DWC3 Qualcomm USB driver
|
||||
DEPENDS:=@(TARGET_ipq40xx||TARGET_ipq806x||TARGET_qualcommax) +kmod-usb-dwc3
|
||||
DEPENDS:=@(TARGET_ipq40xx||TARGET_ipq806x) +kmod-usb-dwc3
|
||||
KCONFIG:= CONFIG_USB_DWC3_QCOM
|
||||
FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3-qcom.ko
|
||||
AUTOLOAD:=$(call AutoLoad,53,dwc3-qcom,1)
|
||||
@ -589,11 +511,11 @@ $(eval $(call KernelPackage,usb-wdm))
|
||||
define KernelPackage/usb-audio
|
||||
TITLE:=Support for USB audio devices
|
||||
KCONFIG:= \
|
||||
CONFIG_USB_AUDIO \
|
||||
CONFIG_SND_USB=y \
|
||||
CONFIG_SND_USB_AUDIO
|
||||
$(call AddDepends/usb)
|
||||
$(call AddDepends/sound)
|
||||
DEPENDS+=+kmod-media-controller
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
|
||||
$(LINUX_DIR)/sound/usb/snd-usb-audio.ko
|
||||
@ -673,21 +595,6 @@ endef
|
||||
$(eval $(call KernelPackage,usb-serial-ch341))
|
||||
|
||||
|
||||
define KernelPackage/usb-serial-ch348
|
||||
TITLE:=Support for CH348 devices
|
||||
KCONFIG:=CONFIG_USB_SERIAL_CH348
|
||||
FILES:=$(LINUX_DIR)/drivers/usb/serial/ch348.ko
|
||||
AUTOLOAD:=$(call AutoProbe,ch348)
|
||||
$(call AddDepends/usb-serial)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-serial-ch348/description
|
||||
Kernel support for Winchiphead CH348 USB-to-8x-Serial converters
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-serial-ch348))
|
||||
|
||||
|
||||
define KernelPackage/usb-serial-edgeport
|
||||
TITLE:=Support for Digi Edgeport devices
|
||||
KCONFIG:=CONFIG_USB_SERIAL_EDGEPORT
|
||||
@ -821,9 +728,8 @@ $(eval $(call KernelPackage,usb-serial-mct))
|
||||
|
||||
define KernelPackage/usb-serial-mos7720
|
||||
TITLE:=Support for Moschip MOS7720 devices
|
||||
KCONFIG:=CONFIG_USB_SERIAL_MOS7720 CONFIG_USB_SERIAL_MOS7715_PARPORT=y
|
||||
KCONFIG:=CONFIG_USB_SERIAL_MOS7720
|
||||
FILES:=$(LINUX_DIR)/drivers/usb/serial/mos7720.ko
|
||||
DEPENDS:=+kmod-ppdev
|
||||
AUTOLOAD:=$(call AutoProbe,mos7720)
|
||||
$(call AddDepends/usb-serial)
|
||||
endef
|
||||
@ -1216,9 +1122,7 @@ $(eval $(call KernelPackage,usb-net-aqc111))
|
||||
|
||||
define KernelPackage/usb-net-asix
|
||||
TITLE:=Kernel module for USB-to-Ethernet Asix convertors
|
||||
DEPENDS:= \
|
||||
+kmod-libphy +kmod-net-selftests +kmod-mdio-devres +kmod-phy-ax88796b \
|
||||
+kmod-phylink
|
||||
DEPENDS:=+kmod-libphy
|
||||
KCONFIG:=CONFIG_USB_NET_AX8817X
|
||||
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
|
||||
AUTOLOAD:=$(call AutoProbe,asix)
|
||||
@ -1281,23 +1185,6 @@ endef
|
||||
$(eval $(call KernelPackage,usb-net-kaweth))
|
||||
|
||||
|
||||
define KernelPackage/usb-net-lan78xx
|
||||
TITLE:=USB-To-Ethernet Microchip LAN78XX convertors
|
||||
DEPENDS:=+kmod-fixed-phy +kmod-phy-microchip +PACKAGE_kmod-of-mdio:kmod-of-mdio
|
||||
KCONFIG:=CONFIG_USB_LAN78XX
|
||||
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/lan78xx.ko
|
||||
AUTOLOAD:=$(call AutoProbe,lan78xx)
|
||||
$(call AddDepends/usb-net)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-net-lan78xx/description
|
||||
Kernel module for Microchip LAN78XX based USB 2 & USB 3
|
||||
10/100/1000 Ethernet adapters.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-net-lan78xx))
|
||||
|
||||
|
||||
define KernelPackage/usb-net-pegasus
|
||||
TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
|
||||
KCONFIG:=CONFIG_USB_PEGASUS
|
||||
@ -1328,25 +1215,8 @@ endef
|
||||
$(eval $(call KernelPackage,usb-net-mcs7830))
|
||||
|
||||
|
||||
define KernelPackage/usb-net-smsc75xx
|
||||
TITLE:=SMSC LAN75XX based USB 2.0 Gigabit ethernet devices
|
||||
DEPENDS:=+kmod-libphy
|
||||
KCONFIG:=CONFIG_USB_NET_SMSC75XX
|
||||
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc75xx.ko
|
||||
AUTOLOAD:=$(call AutoProbe,smsc75xx)
|
||||
$(call AddDepends/usb-net, +kmod-lib-crc16)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-net-smsc75xx/description
|
||||
Kernel module for SMSC LAN75XX based devices
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-net-smsc75xx))
|
||||
|
||||
|
||||
define KernelPackage/usb-net-smsc95xx
|
||||
TITLE:=SMSC LAN95XX based USB 2.0 10/100 ethernet devices
|
||||
DEPENDS:=+kmod-libphy +kmod-phy-smsc +kmod-net-selftests
|
||||
KCONFIG:=CONFIG_USB_NET_SMSC95XX
|
||||
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc95xx.ko
|
||||
AUTOLOAD:=$(call AutoProbe,smsc95xx)
|
||||
@ -1453,7 +1323,6 @@ $(eval $(call KernelPackage,usb-net-rtl8150))
|
||||
|
||||
define KernelPackage/usb-net-rtl8152
|
||||
TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
|
||||
DEPENDS:=+r8152-firmware +kmod-crypto-sha256 +kmod-usb-net-cdc-ncm
|
||||
KCONFIG:=CONFIG_USB_RTL8152
|
||||
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/r8152.ko
|
||||
AUTOLOAD:=$(call AutoProbe,r8152)
|
||||
@ -1519,7 +1388,7 @@ define KernelPackage/usb-net-cdc-ncm
|
||||
KCONFIG:=CONFIG_USB_NET_CDC_NCM
|
||||
FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ncm.ko
|
||||
AUTOLOAD:=$(call AutoProbe,cdc_ncm)
|
||||
$(call AddDepends/usb-net,+kmod-usb-net-cdc-ether)
|
||||
$(call AddDepends/usb-net)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-net-cdc-ncm/description
|
||||
@ -1621,8 +1490,8 @@ $(eval $(call KernelPackage,usb-hid))
|
||||
define KernelPackage/usb-hid-cp2112
|
||||
SUBMENU:=$(USB_MENU)
|
||||
TITLE:=Silicon Labs CP2112 HID USB to SMBus Master Bridge
|
||||
KCONFIG:=CONFIG_HID_CP2112
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-usb-hid +kmod-i2c-core
|
||||
KCONFIG:=CONFIG_GPIOLIB=y CONFIG_HID_CP2112
|
||||
DEPENDS:=+kmod-usb-hid +kmod-i2c-core
|
||||
FILES:=$(LINUX_DIR)/drivers/hid/hid-cp2112.ko
|
||||
AUTOLOAD:=$(call AutoProbe,hid-cp2112)
|
||||
endef
|
||||
@ -1635,23 +1504,6 @@ endef
|
||||
$(eval $(call KernelPackage,usb-hid-cp2112))
|
||||
|
||||
|
||||
define KernelPackage/usb-hid-mcp2221
|
||||
SUBMENU:=$(USB_MENU)
|
||||
TITLE:=Microchip USB 2.0 to I2C/UART Protocol Converter with GPIO
|
||||
KCONFIG:=CONFIG_HID_MCP2221
|
||||
DEPENDS:=@GPIO_SUPPORT +kmod-usb-hid +kmod-i2c-core +kmod-iio-core
|
||||
FILES:=$(LINUX_DIR)/drivers/hid/hid-mcp2221.ko
|
||||
AUTOLOAD:=$(call AutoProbe,hid-mcp2221)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-hid-mcp2221/description
|
||||
HID device driver which registers as an i2c adapter and gpiochip to expose
|
||||
these functions of the MCP2221.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-hid-mcp2221))
|
||||
|
||||
|
||||
define KernelPackage/usb-yealink
|
||||
TITLE:=USB Yealink VOIP phone
|
||||
DEPENDS:=+kmod-input-evdev
|
||||
@ -1736,20 +1588,21 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,usbip-server))
|
||||
|
||||
|
||||
define KernelPackage/usb-chipidea
|
||||
TITLE:=Host and device support for Chipidea controllers
|
||||
DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget @TARGET_ath79 +kmod-usb-ehci +kmod-usb-phy-nop +kmod-usb-roles +kmod-phy-ath79-usb
|
||||
DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget @TARGET_ath79 +kmod-usb-ehci +kmod-usb-phy-nop
|
||||
KCONFIG:= \
|
||||
CONFIG_EXTCON \
|
||||
CONFIG_USB_CHIPIDEA \
|
||||
CONFIG_USB_CHIPIDEA_GENERIC \
|
||||
CONFIG_USB_CHIPIDEA_HOST=y \
|
||||
CONFIG_USB_CHIPIDEA_UDC=y \
|
||||
CONFIG_USB_CHIPIDEA_DEBUG=y
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/extcon/extcon-core.ko \
|
||||
$(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \
|
||||
$(LINUX_DIR)/drivers/usb/common/ulpi.ko
|
||||
$(LINUX_DIR)/drivers/usb/common/ulpi.ko \
|
||||
$(LINUX_DIR)/drivers/usb/roles/roles.ko
|
||||
AUTOLOAD:=$(call AutoLoad,39,ci_hdrc,1)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
@ -1798,25 +1651,25 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,usbmon))
|
||||
|
||||
XHCI_MODULES := xhci-pci xhci-plat-hcd
|
||||
XHCI_MODULES := xhci-hcd xhci-pci xhci-plat-hcd
|
||||
ifdef CONFIG_TARGET_ramips_mt7621
|
||||
XHCI_MODULES += xhci-mtk
|
||||
endif
|
||||
XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,$(XHCI_MODULES)))
|
||||
XHCI_AUTOLOAD := $(patsubst $(LINUX_DIR)/drivers/usb/host/%.ko,%,$(XHCI_FILES))
|
||||
|
||||
define KernelPackage/usb3
|
||||
TITLE:=Support for USB3 controllers
|
||||
DEPENDS:= \
|
||||
+kmod-usb-xhci-hcd \
|
||||
+TARGET_bcm53xx:kmod-usb-bcma \
|
||||
+TARGET_bcm53xx:kmod-phy-bcm-ns-usb3 \
|
||||
+TARGET_ramips_mt7621:kmod-usb-xhci-mtk \
|
||||
+TARGET_mediatek:kmod-usb-xhci-mtk \
|
||||
+TARGET_apm821xx_nand:kmod-usb-xhci-pci-renesas \
|
||||
+TARGET_lantiq_xrx200:kmod-usb-xhci-pci-renesas \
|
||||
+TARGET_mvebu_cortexa9:kmod-usb-xhci-pci-renesas
|
||||
+TARGET_bcm53xx:kmod-phy-bcm-ns-usb3
|
||||
KCONFIG:= \
|
||||
CONFIG_USB_PCI=y \
|
||||
CONFIG_USB_XHCI_HCD \
|
||||
CONFIG_USB_XHCI_PCI \
|
||||
CONFIG_USB_XHCI_PLATFORM
|
||||
CONFIG_USB_XHCI_PLATFORM \
|
||||
CONFIG_USB_XHCI_MTK \
|
||||
CONFIG_USB_XHCI_HCD_DEBUGGING=n
|
||||
FILES:= \
|
||||
$(XHCI_FILES)
|
||||
AUTOLOAD:=$(call AutoLoad,54,$(XHCI_AUTOLOAD),1)
|
||||
@ -1847,73 +1700,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-net2280))
|
||||
|
||||
define KernelPackage/usb-roles
|
||||
TITLE:=USB Role Switch Library Module
|
||||
KCONFIG:=CONFIG_USB_ROLE_SWITCH
|
||||
HIDDEN:=1
|
||||
FILES:=$(LINUX_DIR)/drivers/usb/roles/roles.ko
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-roles/description
|
||||
Support for USB Role Switch
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-roles))
|
||||
|
||||
|
||||
define KernelPackage/usb-xhci-hcd
|
||||
TITLE:=xHCI HCD (USB 3.0) support
|
||||
KCONFIG:= CONFIG_USB_XHCI_HCD
|
||||
HIDDEN:=1
|
||||
FILES:=$(LINUX_DIR)/drivers/usb/host/xhci-hcd.ko
|
||||
AUTOLOAD:=$(call AutoLoad,54,xhci-hcd,1)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-xhci-hcd/description
|
||||
The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
|
||||
"SuperSpeed" host controller hardware.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-xhci-hcd))
|
||||
|
||||
|
||||
define KernelPackage/usb-xhci-mtk
|
||||
TITLE:=xHCI support for MediaTek SoCs
|
||||
DEPENDS:=+kmod-usb-xhci-hcd
|
||||
KCONFIG:=CONFIG_USB_XHCI_MTK
|
||||
HIDDEN:=1
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/usb/host/xhci-mtk-hcd.ko
|
||||
AUTOLOAD:=$(call AutoLoad,54,xhci-mtk-hcd,1)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-xhci-mtk/description
|
||||
Kernel support for the xHCI host controller found in MediaTek SoCs.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-xhci-mtk))
|
||||
|
||||
|
||||
define KernelPackage/usb-xhci-pci-renesas
|
||||
TITLE:=Support for additional Renesas xHCI controller with firmware
|
||||
KCONFIG:=CONFIG_USB_XHCI_PCI_RENESAS
|
||||
HIDDEN:=1
|
||||
FILES:=$(LINUX_DIR)/drivers/usb/host/xhci-pci-renesas.ko
|
||||
AUTOLOAD:=$(call AutoLoad,54,xhci-pci-renesas,1)
|
||||
$(call AddDepends/usb)
|
||||
endef
|
||||
|
||||
define KernelPackage/usb-xhci-pci-renesas/description
|
||||
Kernel support for the Renesas xHCI controller with firmware. Make sure you have
|
||||
the firwmare for the device and installed on your system for this device to work.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,usb-xhci-pci-renesas))
|
||||
|
||||
|
||||
define KernelPackage/chaoskey
|
||||
SUBMENU:=$(USB_MENU)
|
||||
TITLE:=Chaoskey hardware RNG support
|
||||
|
@ -10,56 +10,11 @@ VIDEO_MENU:=Video Support
|
||||
|
||||
V4L2_DIR=v4l2-core
|
||||
V4L2_USB_DIR=usb
|
||||
V4L2_MEM2MEM_DIR=platform
|
||||
|
||||
#
|
||||
# Media
|
||||
#
|
||||
define KernelPackage/media-controller
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Media Controller API
|
||||
KCONFIG:= \
|
||||
CONFIG_MEDIA_SUPPORT \
|
||||
CONFIG_MEDIA_CONTROLLER=y
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/media/mc/mc.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mc)
|
||||
endef
|
||||
|
||||
define KernelPackage/media-controller/description
|
||||
Kernel modules for media controller API used to query media devices
|
||||
internal topology and configure it dynamically.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,media-controller))
|
||||
|
||||
|
||||
#
|
||||
# Video Display
|
||||
#
|
||||
|
||||
define KernelPackage/acpi-video
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=ACPI Extensions For Display Adapters
|
||||
DEPENDS:=@TARGET_x86||TARGET_loongarch64 +kmod-backlight
|
||||
HIDDEN:=1
|
||||
KCONFIG:=CONFIG_ACPI_VIDEO
|
||||
FILES:=$(LINUX_DIR)/drivers/acpi/video.ko
|
||||
AUTOLOAD:=$(call AutoProbe,video)
|
||||
endef
|
||||
|
||||
define KernelPackage/acpi-video/description
|
||||
Kernel support for integrated graphics devices.
|
||||
endef
|
||||
|
||||
define KernelPackage/acpi-video/x86
|
||||
KCONFIG+=CONFIG_ACPI_WMI
|
||||
FILES+=$(LINUX_DIR)/drivers/platform/x86/wmi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,wmi video)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,acpi-video))
|
||||
|
||||
define KernelPackage/backlight
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Backlight support
|
||||
@ -105,7 +60,6 @@ define KernelPackage/fb
|
||||
DEPENDS:=@DISPLAY_SUPPORT
|
||||
KCONFIG:= \
|
||||
CONFIG_FB \
|
||||
CONFIG_FB_DEVICE=y \
|
||||
CONFIG_FB_MXS=n \
|
||||
CONFIG_FB_SM750=n \
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y \
|
||||
@ -128,8 +82,7 @@ define KernelPackage/fb
|
||||
CONFIG_VT_CONSOLE=y \
|
||||
CONFIG_VT_HW_CONSOLE_BINDING=y
|
||||
FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb.ko \
|
||||
$(LINUX_DIR)/lib/fonts/font.ko \
|
||||
$(LINUX_DIR)/drivers/video/fbdev/core/fb_io_fops.ko
|
||||
$(LINUX_DIR)/lib/fonts/font.ko
|
||||
AUTOLOAD:=$(call AutoLoad,06,fb font)
|
||||
endef
|
||||
|
||||
@ -291,8 +244,7 @@ define KernelPackage/drm
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Direct Rendering Manager (DRM) support
|
||||
HIDDEN:=1
|
||||
DEPENDS:=+kmod-dma-buf +kmod-i2c-core +PACKAGE_kmod-backlight:kmod-backlight \
|
||||
+kmod-fb
|
||||
DEPENDS:=+kmod-dma-buf +kmod-i2c-core
|
||||
KCONFIG:=CONFIG_DRM
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/drm.ko \
|
||||
@ -306,99 +258,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,drm))
|
||||
|
||||
|
||||
define KernelPackage/drm-buddy
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=A page based buddy allocator
|
||||
DEPENDS:=@DISPLAY_SUPPORT +kmod-drm
|
||||
KCONFIG:=CONFIG_DRM_BUDDY
|
||||
FILES:= $(LINUX_DIR)/drivers/gpu/drm/drm_buddy.ko
|
||||
AUTOLOAD:=$(call AutoProbe,drm_buddy)
|
||||
endef
|
||||
|
||||
define KernelPackage/drm-buddy/description
|
||||
A page based buddy allocator
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-buddy))
|
||||
|
||||
define KernelPackage/drm-display-helper
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=DRM helpers for display adapters drivers
|
||||
DEPENDS:=@DISPLAY_SUPPORT +kmod-drm-kms-helper
|
||||
KCONFIG:=CONFIG_DRM_DISPLAY_HELPER
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/display/drm_display_helper.ko
|
||||
AUTOLOAD:=$(call AutoProbe,drm_display_helper)
|
||||
endef
|
||||
|
||||
define KernelPackage/drm-display-helper/description
|
||||
DRM helpers for display adapters drivers.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-display-helper))
|
||||
|
||||
|
||||
define KernelPackage/drm-exec
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
HIDDEN:=1
|
||||
TITLE:=Execution context for command submissions
|
||||
DEPENDS:=@DISPLAY_SUPPORT +kmod-drm
|
||||
KCONFIG:=CONFIG_DRM_EXEC
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm_exec.ko
|
||||
AUTOLOAD:=$(call AutoProbe,drm_exec)
|
||||
endef
|
||||
|
||||
define KernelPackage/drm-exec/description
|
||||
Execution context for command submissions.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-exec))
|
||||
|
||||
|
||||
define KernelPackage/drm-gem-shmem-helper
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=GEM shmem helper functions
|
||||
DEPENDS:=@DISPLAY_SUPPORT +kmod-drm
|
||||
KCONFIG:=CONFIG_DRM_GEM_SHMEM_HELPER
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm_shmem_helper.ko
|
||||
AUTOLOAD:=$(call AutoProbe,drm_shmem_helper)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-gem-shmem-helper))
|
||||
|
||||
|
||||
define KernelPackage/drm-dma-helper
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
HIDDEN:=1
|
||||
TITLE:=GEM DMA helper functions
|
||||
DEPENDS:=@DISPLAY_SUPPORT +kmod-drm-kms-helper
|
||||
KCONFIG:=CONFIG_DRM_GEM_DMA_HELPER
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm_dma_helper.ko
|
||||
AUTOLOAD:=$(call AutoProbe,drm_dma_helper)
|
||||
endef
|
||||
|
||||
define KernelPackage/drm-dma-helper/description
|
||||
GEM DMA helper functions.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-dma-helper))
|
||||
|
||||
define KernelPackage/drm-mipi-dbi
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
HIDDEN:=1
|
||||
TITLE:=MIPI DBI helpers
|
||||
DEPENDS:=@DISPLAY_SUPPORT +kmod-backlight +kmod-drm-kms-helper
|
||||
KCONFIG:=CONFIG_DRM_MIPI_DBI
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm_mipi_dbi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,drm_mipi_dbi)
|
||||
endef
|
||||
|
||||
define KernelPackage/drm-mipi-dbi/description
|
||||
MIPI Display Bus Interface (DBI) LCD controller support.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-mipi-dbi))
|
||||
|
||||
define KernelPackage/drm-ttm
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=GPU memory management subsystem
|
||||
@ -415,20 +274,6 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-ttm))
|
||||
|
||||
|
||||
define KernelPackage/drm-ttm-helper
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Helpers for ttm-based gem objects
|
||||
HIDDEN:=1
|
||||
DEPENDS:=@DISPLAY_SUPPORT +kmod-drm-ttm
|
||||
KCONFIG:=CONFIG_DRM_TTM_HELPER
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm_ttm_helper.ko
|
||||
AUTOLOAD:=$(call AutoProbe,drm_ttm_helper)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-ttm-helper))
|
||||
|
||||
|
||||
define KernelPackage/drm-kms-helper
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=CRTC helpers for KMS drivers
|
||||
@ -447,37 +292,18 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-kms-helper))
|
||||
|
||||
define KernelPackage/drm-suballoc-helper
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
HIDDEN:=1
|
||||
TITLE:=DRM suballocation helper
|
||||
DEPENDS:=@DISPLAY_SUPPORT +kmod-drm
|
||||
KCONFIG:=CONFIG_DRM_SUBALLOC_HELPER
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm_suballoc_helper.ko
|
||||
AUTOLOAD:=$(call AutoProbe,drm_suballoc_helper)
|
||||
endef
|
||||
|
||||
define KernelPackage/drm-suballoc-helper/description
|
||||
DRM suballocation helper.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-suballoc-helper))
|
||||
|
||||
define KernelPackage/drm-amdgpu
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=AMDGPU DRM support
|
||||
DEPENDS:=@TARGET_x86||TARGET_loongarch64 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-ttm \
|
||||
+kmod-drm-ttm-helper +kmod-drm-kms-helper +kmod-i2c-algo-bit +amdgpu-firmware \
|
||||
+kmod-drm-display-helper +kmod-drm-buddy +kmod-acpi-video \
|
||||
+kmod-drm-exec +kmod-drm-suballoc-helper
|
||||
DEPENDS:=@TARGET_x86 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-ttm \
|
||||
+kmod-drm-kms-helper +kmod-i2c-algo-bit +amdgpu-firmware
|
||||
KCONFIG:=CONFIG_DRM_AMDGPU \
|
||||
CONFIG_DRM_AMDGPU_SI=y \
|
||||
CONFIG_DRM_AMDGPU_CIK=y \
|
||||
CONFIG_DRM_AMD_DC=y \
|
||||
CONFIG_DEBUG_KERNEL_DC=n
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/amd/amdgpu/amdgpu.ko \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/scheduler/gpu-sched.ko \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/amd/amdxcp/amdxcp.ko
|
||||
$(LINUX_DIR)/drivers/gpu/drm/scheduler/gpu-sched.ko
|
||||
AUTOLOAD:=$(call AutoProbe,amdgpu)
|
||||
endef
|
||||
|
||||
@ -485,63 +311,13 @@ define KernelPackage/drm-amdgpu/description
|
||||
Direct Rendering Manager (DRM) support for AMDGPU Cards
|
||||
endef
|
||||
|
||||
define KernelPackage/drm-amdgpu/loongarch64
|
||||
KCONFIG+=CONFIG_DRM_AMDGPU_USERPTR=y \
|
||||
CONFIG_DRM_AMD_DC=y \
|
||||
CONFIG_DRM_AMD_DC_FP=y \
|
||||
CONFIG_DRM_AMD_DC_SI=y
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-amdgpu))
|
||||
|
||||
define KernelPackage/drm-i915
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Intel i915 DRM support
|
||||
DEPENDS:=@(TARGET_x86_64||TARGET_x86_generic||TARGET_x86_legacy) \
|
||||
@DISPLAY_SUPPORT +kmod-backlight +kmod-drm-ttm \
|
||||
+kmod-drm-ttm-helper +kmod-drm-kms-helper +kmod-i2c-algo-bit +i915-firmware-dmc \
|
||||
+kmod-drm-display-helper +kmod-drm-buddy +kmod-acpi-video \
|
||||
+kmod-drm-exec +kmod-drm-suballoc-helper
|
||||
KCONFIG:=CONFIG_DRM_I915 \
|
||||
CONFIG_DRM_I915_CAPTURE_ERROR=y \
|
||||
CONFIG_DRM_I915_COMPRESS_ERROR=y \
|
||||
CONFIG_DRM_I915_DEBUG=n \
|
||||
CONFIG_DRM_I915_DEBUG_GUC=n \
|
||||
CONFIG_DRM_I915_DEBUG_MMIO=n \
|
||||
CONFIG_DRM_I915_DEBUG_RUNTIME_PM=n \
|
||||
CONFIG_DRM_I915_DEBUG_VBLANK_EVADE=n \
|
||||
CONFIG_DRM_I915_FENCE_TIMEOUT=10000 \
|
||||
CONFIG_DRM_I915_FORCE_PROBE="" \
|
||||
CONFIG_DRM_I915_HEARTBEAT_INTERVAL=2500 \
|
||||
CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS=n \
|
||||
CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000 \
|
||||
CONFIG_DRM_I915_PREEMPT_TIMEOUT=640 \
|
||||
CONFIG_DRM_I915_PREEMPT_TIMEOUT_COMPUTE=7500 \
|
||||
CONFIG_DRM_I915_REQUEST_TIMEOUT=20000 \
|
||||
CONFIG_DRM_I915_SELFTEST=n \
|
||||
CONFIG_DRM_I915_STOP_TIMEOUT=100 \
|
||||
CONFIG_DRM_I915_SW_FENCE_CHECK_DAG=n \
|
||||
CONFIG_DRM_I915_SW_FENCE_DEBUG_OBJECTS=n \
|
||||
CONFIG_DRM_I915_TIMESLICE_DURATION=1 \
|
||||
CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250 \
|
||||
CONFIG_DRM_I915_USERPTR=y \
|
||||
CONFIG_DRM_I915_WERROR=n \
|
||||
CONFIG_FB_INTEL=n
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/i915/i915.ko
|
||||
AUTOLOAD:=$(call AutoProbe,i915)
|
||||
endef
|
||||
|
||||
define KernelPackage/drm-i915/description
|
||||
Direct Rendering Manager (DRM) support for Intel GPU
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-i915))
|
||||
|
||||
|
||||
define KernelPackage/drm-imx
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Freescale i.MX DRM support
|
||||
DEPENDS:=@TARGET_imx +kmod-drm-kms-helper
|
||||
DEPENDS:=@TARGET_imx6 +kmod-drm-kms-helper
|
||||
KCONFIG:=CONFIG_DRM_IMX \
|
||||
CONFIG_DRM_FBDEV_EMULATION=y \
|
||||
CONFIG_DRM_FBDEV_OVERALLOC=100 \
|
||||
@ -557,8 +333,7 @@ define KernelPackage/drm-imx
|
||||
CONFIG_DRM_IMX_LDB=n \
|
||||
CONFIG_DRM_IMX_HDMI=n
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/imx/ipuv3/imxdrm.ko \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/drm_dma_helper.ko \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/imx/imxdrm.ko \
|
||||
$(LINUX_DIR)/drivers/gpu/ipu-v3/imx-ipu-v3.ko
|
||||
AUTOLOAD:=$(call AutoLoad,08,imxdrm imx-ipu-v3 imx-ipuv3-crtc)
|
||||
endef
|
||||
@ -572,14 +347,14 @@ $(eval $(call KernelPackage,drm-imx))
|
||||
define KernelPackage/drm-imx-hdmi
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Freescale i.MX HDMI DRM support
|
||||
DEPENDS:=+kmod-sound-core kmod-drm-imx kmod-drm-display-helper
|
||||
DEPENDS:=+kmod-sound-core kmod-drm-imx
|
||||
KCONFIG:=CONFIG_DRM_IMX_HDMI \
|
||||
CONFIG_DRM_DW_HDMI_AHB_AUDIO \
|
||||
CONFIG_DRM_DW_HDMI_I2S_AUDIO
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi.ko \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.ko \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/imx/ipuv3/dw_hdmi-imx.ko
|
||||
$(LINUX_DIR)/drivers/gpu/drm/imx/dw_hdmi-imx.ko
|
||||
AUTOLOAD:=$(call AutoLoad,08,dw-hdmi dw-hdmi-ahb-audio.ko dw_hdmi-imx)
|
||||
endef
|
||||
|
||||
@ -592,7 +367,7 @@ $(eval $(call KernelPackage,drm-imx-hdmi))
|
||||
define KernelPackage/drm-imx-ldb
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Freescale i.MX LVDS DRM support
|
||||
DEPENDS:=@(TARGET_imx&&TARGET_imx_cortexa9) +kmod-backlight kmod-drm-imx
|
||||
DEPENDS:=+kmod-backlight kmod-drm-imx
|
||||
KCONFIG:=CONFIG_DRM_IMX_LDB \
|
||||
CONFIG_DRM_PANEL_SIMPLE \
|
||||
CONFIG_DRM_PANEL=y \
|
||||
@ -603,8 +378,7 @@ define KernelPackage/drm-imx-ldb
|
||||
CONFIG_DRM_PANEL_LVDS=n \
|
||||
CONFIG_DRM_PANEL_S6E8AA0=n \
|
||||
CONFIG_DRM_PANEL_SITRONIX_ST7789V=n
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/imx/ipuv3/imx-ldb.ko \
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/imx/imx-ldb.ko \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/panel/panel-simple.ko
|
||||
AUTOLOAD:=$(call AutoLoad,08,imx-ldb)
|
||||
endef
|
||||
@ -618,7 +392,7 @@ $(eval $(call KernelPackage,drm-imx-ldb))
|
||||
define KernelPackage/drm-lima
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Mali-4xx GPU support
|
||||
DEPENDS:=@(TARGET_rockchip||TARGET_sunxi) +kmod-drm +kmod-drm-gem-shmem-helper
|
||||
DEPENDS:=@(TARGET_rockchip||TARGET_sunxi) +kmod-drm
|
||||
KCONFIG:= \
|
||||
CONFIG_DRM_VGEM \
|
||||
CONFIG_DRM_GEM_CMA_HELPER=y \
|
||||
@ -639,7 +413,7 @@ $(eval $(call KernelPackage,drm-lima))
|
||||
define KernelPackage/drm-panfrost
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=DRM support for ARM Mali Midgard/Bifrost GPUs
|
||||
DEPENDS:=@(TARGET_rockchip||TARGET_sunxi) +kmod-drm +kmod-drm-gem-shmem-helper
|
||||
DEPENDS:=@(TARGET_rockchip||TARGET_sunxi) +kmod-drm
|
||||
KCONFIG:=CONFIG_DRM_PANFROST
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/panfrost/panfrost.ko \
|
||||
@ -654,30 +428,11 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-panfrost))
|
||||
|
||||
define KernelPackage/drm-panel-mipi-dbi
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Generic MIPI DBI LCD panel
|
||||
DEPENDS:=+kmod-drm-mipi-dbi +kmod-drm-dma-helper
|
||||
KCONFIG:=CONFIG_DRM_PANEL_MIPI_DBI \
|
||||
CONFIG_DRM_FBDEV_EMULATION=y \
|
||||
CONFIG_DRM_FBDEV_OVERALLOC=100
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/gpu/drm/tiny/panel-mipi-dbi.ko
|
||||
AUTOLOAD:=$(call AutoProbe,panel-mipi-dbi)
|
||||
endef
|
||||
|
||||
define KernelPackage/drm-panel-mipi-dbi/description
|
||||
Generic driver for MIPI Alliance Display Bus Interface
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,drm-panel-mipi-dbi))
|
||||
|
||||
define KernelPackage/drm-radeon
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Radeon DRM support
|
||||
DEPENDS:=@TARGET_x86 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-kms-helper \
|
||||
+kmod-drm-ttm +kmod-drm-ttm-helper +kmod-i2c-algo-bit +radeon-firmware \
|
||||
+kmod-drm-display-helper +kmod-acpi-video +kmod-drm-suballoc-helper
|
||||
+kmod-drm-ttm +kmod-i2c-algo-bit +radeon-firmware
|
||||
KCONFIG:=CONFIG_DRM_RADEON
|
||||
FILES:=$(LINUX_DIR)/drivers/gpu/drm/radeon/radeon.ko
|
||||
AUTOLOAD:=$(call AutoProbe,radeon)
|
||||
@ -696,15 +451,21 @@ $(eval $(call KernelPackage,drm-radeon))
|
||||
define KernelPackage/video-core
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE=Video4Linux support
|
||||
DEPENDS:=+PACKAGE_kmod-i2c-core:kmod-i2c-core +kmod-media-controller
|
||||
DEPENDS:=@PCI_SUPPORT||USB_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
|
||||
KCONFIG:= \
|
||||
CONFIG_MEDIA_SUPPORT \
|
||||
CONFIG_MEDIA_CAMERA_SUPPORT=y \
|
||||
CONFIG_VIDEO_DEV \
|
||||
CONFIG_VIDEO_V4L1=y \
|
||||
CONFIG_VIDEO_ALLOW_V4L1=y \
|
||||
CONFIG_VIDEO_CAPTURE_DRIVERS=y \
|
||||
CONFIG_V4L_USB_DRIVERS=y \
|
||||
CONFIG_V4L_PCI_DRIVERS=y \
|
||||
CONFIG_V4L_PLATFORM_DRIVERS=y \
|
||||
CONFIG_MEDIA_PLATFORM_DRIVERS=y
|
||||
CONFIG_V4L_ISA_PARPORT_DRIVERS=y
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/media/$(V4L2_DIR)/videodev.ko
|
||||
AUTOLOAD:=$(call AutoLoad,60,videodev)
|
||||
AUTOLOAD:=$(call AutoLoad,60, videodev v4l2-common)
|
||||
endef
|
||||
|
||||
define KernelPackage/video-core/description
|
||||
@ -725,10 +486,6 @@ $(AddDepends/video)
|
||||
CONFIG_MEDIA_CAMERA_SUPPORT=y
|
||||
endef
|
||||
|
||||
define AddDepends/framegrabber
|
||||
$(AddDepends/video)
|
||||
KCONFIG+=CONFIG_MEDIA_PCI_SUPPORT=y
|
||||
endef
|
||||
|
||||
define KernelPackage/video-videobuf2
|
||||
TITLE:=videobuf2 lib
|
||||
@ -736,7 +493,6 @@ define KernelPackage/video-videobuf2
|
||||
KCONFIG:= \
|
||||
CONFIG_VIDEOBUF2_CORE \
|
||||
CONFIG_VIDEOBUF2_MEMOPS \
|
||||
CONFIG_VIDEOBUF2_V4L2 \
|
||||
CONFIG_VIDEOBUF2_VMALLOC
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-common.ko \
|
||||
@ -753,29 +509,10 @@ endef
|
||||
|
||||
$(eval $(call KernelPackage,video-videobuf2))
|
||||
|
||||
define KernelPackage/video-async
|
||||
TITLE:=V4L2 ASYNC support
|
||||
KCONFIG:=CONFIG_V4L2_ASYNC
|
||||
FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-async.ko
|
||||
$(call AddDepends/video)
|
||||
AUTOLOAD:=$(call AutoProbe,v4l2-async)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-async))
|
||||
|
||||
define KernelPackage/video-fwnode
|
||||
TITLE:=V4L2 FWNODE support
|
||||
KCONFIG:=CONFIG_V4L2_FWNODE
|
||||
FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-fwnode.ko
|
||||
$(call AddDepends/video,+kmod-video-async)
|
||||
AUTOLOAD:=$(call AutoProbe,v4l2-fwnode)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-fwnode))
|
||||
|
||||
define KernelPackage/video-cpia2
|
||||
TITLE:=CPIA2 video driver
|
||||
DEPENDS:=@USB_SUPPORT
|
||||
DEPENDS:=@USB_SUPPORT +kmod-usb-core
|
||||
KCONFIG:=CONFIG_VIDEO_CPIA2
|
||||
FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_USB_DIR)/cpia2/cpia2.ko
|
||||
AUTOLOAD:=$(call AutoProbe,cpia2)
|
||||
@ -810,10 +547,9 @@ $(eval $(call KernelPackage,video-pwc))
|
||||
define KernelPackage/video-uvc
|
||||
TITLE:=USB Video Class (UVC) support
|
||||
DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-video-videobuf2 +kmod-input-core
|
||||
KCONFIG:= CONFIG_USB_VIDEO_CLASS CONFIG_UVC_COMMON
|
||||
FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_USB_DIR)/uvc/uvcvideo.ko \
|
||||
$(LINUX_DIR)/drivers/media/common/uvc.ko
|
||||
AUTOLOAD:=$(call AutoProbe,uvc uvcvideo)
|
||||
KCONFIG:= CONFIG_USB_VIDEO_CLASS
|
||||
FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_USB_DIR)/uvc/uvcvideo.ko
|
||||
AUTOLOAD:=$(call AutoProbe,uvcvideo)
|
||||
$(call AddDepends/camera)
|
||||
endef
|
||||
|
||||
@ -983,21 +719,6 @@ endef
|
||||
$(eval $(call KernelPackage,video-gspca-pac207))
|
||||
|
||||
|
||||
define KernelPackage/video-gspca-pac7302
|
||||
TITLE:=pac7302 webcam support
|
||||
KCONFIG:=CONFIG_USB_GSPCA_PAC7302
|
||||
FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_USB_DIR)/gspca/gspca_pac7302.ko
|
||||
AUTOLOAD:=$(call AutoProbe,gspca_pac7302)
|
||||
$(call AddDepends/camera-gspca)
|
||||
endef
|
||||
|
||||
define KernelPackage/video-gspca-pac7302/description
|
||||
The Pixart PAC7302 USB Camera Driver (pac7302) kernel module
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-gspca-pac7302))
|
||||
|
||||
|
||||
define KernelPackage/video-gspca-pac7311
|
||||
TITLE:=pac7311 webcam support
|
||||
KCONFIG:=CONFIG_USB_GSPCA_PAC7311
|
||||
@ -1193,21 +914,6 @@ endef
|
||||
$(eval $(call KernelPackage,video-gspca-sq905c))
|
||||
|
||||
|
||||
define KernelPackage/video-gspca-sq930x
|
||||
TITLE:=sq930x webcam support
|
||||
KCONFIG:=CONFIG_USB_GSPCA_SQ930X
|
||||
FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_USB_DIR)/gspca/gspca_sq930x.ko
|
||||
AUTOLOAD:=$(call AutoProbe,gspca_sq930x)
|
||||
$(call AddDepends/camera-gspca)
|
||||
endef
|
||||
|
||||
define KernelPackage/video-gspca-sq930x/description
|
||||
The SQ Technologies SQ930X based USB Camera Driver (sq930x) kernel module
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-gspca-sq930x))
|
||||
|
||||
|
||||
define KernelPackage/video-gspca-stk014
|
||||
TITLE:=stk014 webcam support
|
||||
KCONFIG:=CONFIG_USB_GSPCA_STK014
|
||||
@ -1371,114 +1077,3 @@ define KernelPackage/video-gspca-konica/description
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-gspca-konica))
|
||||
|
||||
#
|
||||
# Video Processing
|
||||
#
|
||||
|
||||
define KernelPackage/video-mem2mem
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Memory 2 Memory device support
|
||||
HIDDEN:=1
|
||||
DEPENDS:=+kmod-video-videobuf2
|
||||
KCONFIG:= \
|
||||
CONFIG_V4L_MEM2MEM_DRIVERS=y \
|
||||
CONFIG_V4L2_MEM2MEM_DEV
|
||||
FILES:= $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-mem2mem.ko
|
||||
AUTOLOAD:=$(call AutoLoad,66,v4l2-mem2mem)
|
||||
$(call AddDepends/video)
|
||||
endef
|
||||
|
||||
define KernelPackage/video-mem2mem/description
|
||||
Memory 2 memory device support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-mem2mem))
|
||||
|
||||
define KernelPackage/video-dma-contig
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Video DMA support
|
||||
HIDDEN:=1
|
||||
DEPENDS:=+kmod-video-videobuf2
|
||||
KCONFIG:=CONFIG_VIDEOBUF2_DMA_CONTIG
|
||||
FILES:=$(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-dma-contig.ko
|
||||
AUTOLOAD:=$(call AutoLoad,66,videobuf2-dma-contig)
|
||||
$(call AddDepends/video)
|
||||
endef
|
||||
|
||||
define KernelPackage/video-dma-contig/description
|
||||
Video DMA support Contig
|
||||
endef
|
||||
|
||||
|
||||
$(eval $(call KernelPackage,video-dma-contig))
|
||||
|
||||
define KernelPackage/video-dma-sg
|
||||
SUBMENU:=$(VIDEO_MENU)
|
||||
TITLE:=Video DMA support
|
||||
HIDDEN:=1
|
||||
DEPENDS:=+kmod-video-videobuf2
|
||||
KCONFIG:=CONFIG_VIDEOBUF2_DMA_SG
|
||||
FILES:=$(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-dma-sg.ko
|
||||
AUTOLOAD:=$(call AutoLoad,66,videobuf2-dma-sg)
|
||||
$(call AddDepends/video)
|
||||
endef
|
||||
|
||||
define KernelPackage/video-dma-sg/description
|
||||
Video DMA support SG
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-dma-sg))
|
||||
|
||||
define KernelPackage/video-coda
|
||||
TITLE:=i.MX VPU support
|
||||
DEPENDS:=@(TARGET_imx&&TARGET_imx_cortexa9) +kmod-video-mem2mem +kmod-video-dma-contig
|
||||
KCONFIG:= \
|
||||
CONFIG_VIDEO_CODA \
|
||||
CONFIG_VIDEO_IMX_VDOA
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/coda-vpu.ko \
|
||||
$(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/imx-vdoa.ko \
|
||||
$(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-jpeg.ko
|
||||
AUTOLOAD:=$(call AutoProbe,coda-vpu imx-vdoa v4l2-jpeg)
|
||||
$(call AddDepends/video)
|
||||
endef
|
||||
|
||||
define KernelPackage/video-coda/description
|
||||
The i.MX Video Processing Unit (VPU) kernel module
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-coda))
|
||||
|
||||
define KernelPackage/video-pxp
|
||||
TITLE:=i.MX PXP support
|
||||
DEPENDS:=@TARGET_imx +kmod-video-mem2mem +kmod-video-dma-contig
|
||||
KCONFIG:= CONFIG_VIDEO_IMX_PXP
|
||||
FILES:= $(LINUX_DIR)/drivers/media/platform/nxp/imx-pxp.ko
|
||||
AUTOLOAD:=$(call AutoProbe,imx-pxp)
|
||||
$(call AddDepends/video)
|
||||
endef
|
||||
|
||||
define KernelPackage/video-pxp/description
|
||||
The i.MX Pixel Pipeline (PXP) kernel module
|
||||
This enables hardware accelerated support for image
|
||||
Colour Conversion, Scaling and Rotation
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-pxp))
|
||||
|
||||
define KernelPackage/video-tw686x
|
||||
TITLE:=TW686x support
|
||||
DEPENDS:=@PCIE_SUPPORT +kmod-video-dma-contig +kmod-video-dma-sg +kmod-sound-core
|
||||
KCONFIG:= CONFIG_VIDEO_TW686X
|
||||
FILES:= $(LINUX_DIR)/drivers/media/pci/tw686x/tw686x.ko
|
||||
AUTOLOAD:=$(call AutoProbe,tw686x)
|
||||
MODPARAMS.tw686x:=dma_mode=contig
|
||||
$(call AddDepends/framegrabber)
|
||||
endef
|
||||
|
||||
define KernelPackage/video-tw686x/description
|
||||
The Intersil/Techwell TW686x kernel module
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,video-tw686x))
|
||||
|
@ -20,10 +20,8 @@ define KernelPackage/kvm-x86
|
||||
TITLE:=Kernel-based Virtual Machine (KVM) support
|
||||
DEPENDS:=@TARGET_x86_generic||TARGET_x86_64 +kmod-irqbypass
|
||||
KCONFIG:=\
|
||||
CONFIG_KVM \
|
||||
CONFIG_KVM_MMU_AUDIT=n \
|
||||
CONFIG_KVM_SMM=y \
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
CONFIG_VIRTUALIZATION=y \
|
||||
CONFIG_KVM
|
||||
FILES:= $(LINUX_DIR)/arch/$(LINUX_KARCH)/kvm/kvm.ko
|
||||
AUTOLOAD:=$(call AutoProbe,kvm.ko)
|
||||
endef
|
||||
@ -73,69 +71,3 @@ define KernelPackage/kvm-amd/description
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,kvm-amd))
|
||||
|
||||
|
||||
define KernelPackage/vfio
|
||||
SUBMENU:=Virtualization
|
||||
TITLE:=VFIO Non-Privileged userspace driver framework
|
||||
DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8
|
||||
KCONFIG:= \
|
||||
CONFIG_VFIO \
|
||||
CONFIG_VFIO_NOIOMMU=n \
|
||||
CONFIG_VFIO_MDEV=n
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/vfio/vfio.ko \
|
||||
$(LINUX_DIR)/drivers/vfio/vfio_iommu_type1.ko
|
||||
AUTOLOAD:=$(call AutoProbe,vfio vfio_iommu_type1)
|
||||
endef
|
||||
|
||||
define KernelPackage/vfio/description
|
||||
VFIO provides a framework for secure userspace device drivers.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,vfio))
|
||||
|
||||
|
||||
define KernelPackage/vfio-pci
|
||||
SUBMENU:=Virtualization
|
||||
TITLE:=Generic VFIO support for any PCI device
|
||||
DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8 @PCI_SUPPORT +kmod-vfio +kmod-irqbypass
|
||||
KCONFIG:= \
|
||||
CONFIG_VFIO_PCI \
|
||||
CONFIG_VFIO_PCI_IGD=n
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/vfio/pci/vfio-pci-core.ko \
|
||||
$(LINUX_DIR)/drivers/vfio/pci/vfio-pci.ko
|
||||
AUTOLOAD:=$(call AutoProbe,vfio-pci)
|
||||
endef
|
||||
|
||||
define KernelPackage/vfio-pci/description
|
||||
Support for the generic PCI VFIO bus driver which can connect any PCI
|
||||
device to the VFIO framework.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,vfio-pci))
|
||||
|
||||
|
||||
define KernelPackage/vhost
|
||||
SUBMENU:=Virtualization
|
||||
TITLE:=Host kernel accelerator for virtio (base)
|
||||
KCONFIG:=CONFIG_VHOST
|
||||
FILES:=$(LINUX_DIR)/drivers/vhost/vhost.ko \
|
||||
$(LINUX_DIR)/drivers/vhost/vhost_iotlb.ko
|
||||
AUTOLOAD:=$(call AutoProbe,vhost vhost_iotlb)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,vhost))
|
||||
|
||||
|
||||
define KernelPackage/vhost-net
|
||||
SUBMENU:=Virtualization
|
||||
TITLE:=Host kernel accelerator for virtio-net
|
||||
DEPENDS:=+kmod-tun +kmod-vhost
|
||||
KCONFIG:=CONFIG_VHOST_NET
|
||||
FILES:=$(LINUX_DIR)/drivers/vhost/vhost_net.ko
|
||||
AUTOLOAD:=$(call AutoProbe,vhost_net)
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,vhost-net))
|
||||
|
@ -83,7 +83,7 @@ $(eval $(call KernelPackage,w1-master-ds2490))
|
||||
|
||||
define KernelPackage/w1-master-mxc
|
||||
TITLE:=Freescale MXC 1-wire busmaster
|
||||
DEPENDS:=@TARGET_imx
|
||||
DEPENDS:=@TARGET_imx6
|
||||
KCONFIG:=CONFIG_W1_MASTER_MXC
|
||||
FILES:=$(W1_MASTERS_DIR)/mxc_w1.ko
|
||||
AUTOLOAD:=$(call AutoProbe,mxc_w1)
|
||||
|
42
package/kernel/linux/modules/wireless.mk
Normal file
42
package/kernel/linux/modules/wireless.mk
Normal file
@ -0,0 +1,42 @@
|
||||
#
|
||||
# Copyright (C) 2006-2008 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
WIRELESS_MENU:=Wireless Drivers
|
||||
|
||||
define KernelPackage/net-prism54
|
||||
SUBMENU:=$(WIRELESS_MENU)
|
||||
TITLE:=Intersil Prism54 support
|
||||
DEPENDS:=@PCI_SUPPORT +@DRIVER_WEXT_SUPPORT +prism54-firmware
|
||||
KCONFIG:=CONFIG_PRISM54
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/net/wireless/intersil/prism54/prism54.ko
|
||||
AUTOLOAD:=$(call AutoProbe,prism54)
|
||||
endef
|
||||
|
||||
define KernelPackage/net-prism54/description
|
||||
Kernel modules for Intersil Prism54 support
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,net-prism54))
|
||||
|
||||
|
||||
define KernelPackage/net-rtl8192su
|
||||
SUBMENU:=$(WIRELESS_MENU)
|
||||
TITLE:=RTL8192SU support (staging)
|
||||
DEPENDS:=@USB_SUPPORT +@DRIVER_WEXT_SUPPORT +kmod-usb-core +rtl8192su-firmware
|
||||
KCONFIG:=\
|
||||
CONFIG_STAGING=y \
|
||||
CONFIG_R8712U
|
||||
FILES:=$(LINUX_DIR)/drivers/staging/rtl8712/r8712u.ko
|
||||
AUTOLOAD:=$(call AutoProbe,r8712u)
|
||||
endef
|
||||
|
||||
define KernelPackage/net-rtl8192su/description
|
||||
Kernel modules for RealTek RTL8712 and RTL81XXSU fullmac support.
|
||||
endef
|
||||
|
||||
$(eval $(call KernelPackage,net-rtl8192su))
|
92
package/mtk/applications/datconf/Makefile
Normal file
92
package/mtk/applications/datconf/Makefile
Normal file
@ -0,0 +1,92 @@
|
||||
#
|
||||
# Copyright (C) 2019
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=datconf
|
||||
PKG_REVISION:=6bb733f7
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_REVISION).tar.bz2
|
||||
PKG_RELEASE:=1
|
||||
PKG_USE_NINJA:=0
|
||||
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
|
||||
|
||||
PKG_MAINTAINER:=Weijie Gao <weijie.gao@mediatek.com>
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/cmake.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
define Package/libkvcutil
|
||||
SECTION:=libs
|
||||
CATEGORY:=Libraries
|
||||
TITLE:=C library for Key-value based config files
|
||||
endef
|
||||
|
||||
define Package/kvcedit
|
||||
SECTION:=util
|
||||
CATEGORY:=Utilities
|
||||
DEPENDS:=+libkvcutil
|
||||
TITLE:=Utility for editing key-value based config files
|
||||
endef
|
||||
|
||||
define Package/datconf
|
||||
SECTION:=MTK Properties
|
||||
CATEGORY:=MTK Properties
|
||||
SUBMENU:=Applications
|
||||
DEPENDS:=+kvcedit
|
||||
TITLE:=Utility for editing dat files used by MediaTek Wi-Fi drivers
|
||||
endef
|
||||
|
||||
define Package/datconf-lua
|
||||
SECTION:=MTK Properties
|
||||
CATEGORY:=MTK Properties
|
||||
SUBMENU:=Applications
|
||||
DEPENDS:=+datconf +liblua
|
||||
TITLE:=Lua plugin for datconf
|
||||
endef
|
||||
|
||||
TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
|
||||
TARGET_LDFLAGS += -L$(STAGING_DIR)/usr/lib
|
||||
|
||||
CMAKE_OPTIONS = \
|
||||
-DLUAPATH=/usr/lib/lua
|
||||
|
||||
|
||||
define Package/libkvcutil/install
|
||||
$(INSTALL_DIR) $(1)/lib
|
||||
$(CP) $(PKG_BUILD_DIR)/kvcutil/libkvcutil.so* $(1)/lib/
|
||||
endef
|
||||
|
||||
define Package/kvcedit/install
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/kvcutil/kvcedit $(1)/usr/bin/
|
||||
endef
|
||||
|
||||
define Package/datconf/install
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/datconf/datconf $(1)/usr/bin/
|
||||
endef
|
||||
|
||||
define Package/datconf-lua/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib/lua
|
||||
$(CP) $(PKG_BUILD_DIR)/datconf/lua/datconf.so $(1)/usr/lib/lua/
|
||||
endef
|
||||
|
||||
define Build/InstallDev
|
||||
$(INSTALL_DIR) $(1)/usr/include
|
||||
$(CP) $(PKG_BUILD_DIR)/kvcutil/libkvcutil.h $(1)/usr/include
|
||||
$(CP) $(PKG_BUILD_DIR)/datconf/libdatconf.h $(1)/usr/include
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_BUILD_DIR)/kvcutil/libkvcutil.so* $(1)/usr/lib
|
||||
-$(CP) $(PKG_BUILD_DIR)/datconf/libdatconf.a $(1)/usr/lib
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,libkvcutil))
|
||||
$(eval $(call BuildPackage,kvcedit))
|
||||
$(eval $(call BuildPackage,datconf))
|
||||
$(eval $(call BuildPackage,datconf-lua))
|
11
package/mtk/applications/luci-app-eqos-mtk/Makefile
Normal file
11
package/mtk/applications/luci-app-eqos-mtk/Makefile
Normal file
@ -0,0 +1,11 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
LUCI_TITLE:=LuCI support for Easy QoS
|
||||
LUCI_DEPENDS:=+tc +kmod-sched-core +kmod-ifb @!PACKAGE_luci-app-eqos
|
||||
|
||||
PKG_MAINTAINER:=Jianhui Zhao <jianhuizhao329@gmail.com>
|
||||
PKG_NAME:=luci-app-eqos-mtk
|
||||
|
||||
include $(TOPDIR)/feeds/luci/luci.mk
|
||||
|
||||
# call BuildPackage - OpenWrt buildroot signature
|
@ -0,0 +1,96 @@
|
||||
'use strict';
|
||||
'require form';
|
||||
'require network';
|
||||
'require uci';
|
||||
'require view';
|
||||
|
||||
return view.extend({
|
||||
load: function() {
|
||||
return Promise.all([
|
||||
uci.load('eqos'),
|
||||
network.getHostHints()
|
||||
]);
|
||||
},
|
||||
|
||||
render: function(data) {
|
||||
var m, s, o;
|
||||
|
||||
m = new form.Map('eqos', _('EQoS'),
|
||||
_('Network speed control service.(Compatiable with Mediatek HNAT)'));
|
||||
|
||||
s = m.section(form.NamedSection, 'config', 'eqos');
|
||||
|
||||
o = s.option(form.Flag, 'enabled', _('Enable'));
|
||||
o.default = o.disabled;
|
||||
o.rmempty = false;
|
||||
|
||||
o = s.option(form.Value, 'interface', _('Load balance'),
|
||||
_('Please set a different gateway hop for each network interface before filling in the network interface name. Fill in PPPOE-WAN for dialing and eth1 for DHCP. Leaving it blank to disable it.Please use commas as interface name separators. Example: pppoe-wan,eth1'));
|
||||
o.rmempty = true;
|
||||
|
||||
o = s.option(form.Flag, 'ipv6enabled', _('IPV6Enable'));
|
||||
o.default = o.disabled;
|
||||
o.rmempty = false;
|
||||
|
||||
o = s.option(form.Flag, 'smarthqos', _('SMART_HWQOS'),
|
||||
_('Enabling fair queue will automatically perform hardware offloading for every local host'));
|
||||
o.default = o.disabled;
|
||||
o.rmempty = false;
|
||||
|
||||
o = s.option(form.Value, 'download', _('Download speed (Mbit/s)'),
|
||||
_('Total download bandwidth.'));
|
||||
o.datatype = 'and(uinteger,min(1))';
|
||||
o.rmempty = false;
|
||||
|
||||
o = s.option(form.Value, 'upload', _('Upload speed (Mbit/s)'),
|
||||
_('Total upload bandwidth.'));
|
||||
o.datatype = 'and(uinteger,min(1))';
|
||||
o.rmempty = false;
|
||||
|
||||
|
||||
|
||||
s = m.section(form.TableSection, 'device', _('Speed limit and route choose based on IP address(Auto use hardware QOS)'));
|
||||
s.addremove = true;
|
||||
s.anonymous = true;
|
||||
s.sortable = true;
|
||||
|
||||
o = s.option(form.Flag, 'enabled', _('Enable'));
|
||||
o.default = o.enabled;
|
||||
|
||||
o = s.option(form.Value, 'ip', _('IPV4 address'));
|
||||
o.datatype = 'ip4addr';
|
||||
for (var i of Object.entries(data[1]?.hosts))
|
||||
for (var v in i[1].ipaddrs)
|
||||
if (i[1].ipaddrs[v]) {
|
||||
var ip_addr = i[1].ipaddrs[v], ip_host = i[1].name;
|
||||
o.value(ip_addr, ip_host ? String.format('%s (%s)', ip_host, ip_addr) : ip_addr)
|
||||
}
|
||||
o.rmempty = true;
|
||||
|
||||
var hosts = data[1]?.hosts;
|
||||
o = s.option(form.Value, 'mac', _('IPV6 host'));
|
||||
o.datatype = 'macaddr';
|
||||
Object.keys(hosts).forEach(function(mac) {
|
||||
var hint = hosts[mac].name || L.toArray(hosts[mac].ipaddrs || hosts[mac].ipv4)[0];
|
||||
o.value(mac, hint ? '%s (%s)'.format(mac, hint) : mac);
|
||||
});
|
||||
o.rmempty = true;
|
||||
|
||||
o = s.option(form.Value, 'download', _('Download speed (kbit/s)'));
|
||||
o.datatype = 'and(uinteger,min(0))';
|
||||
o.rmempty = false;
|
||||
|
||||
o = s.option(form.Value, 'upload', _('Upload speed (kbit/s)'));
|
||||
o.datatype = 'and(uinteger,min(0))';
|
||||
o.rmempty = false;
|
||||
|
||||
o = s.option(form.Value, 'comment', _('Comment'));
|
||||
o.rmempty = true;
|
||||
|
||||
o = s.option(form.Value, 'interfacename', _('InterfaceName(start from 0)'));
|
||||
o.datatype = 'and(uinteger,min(0))';
|
||||
o.rmempty = true;
|
||||
|
||||
return m.render();
|
||||
}
|
||||
});
|
@ -0,0 +1,92 @@
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=UTF-8"
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:87
|
||||
msgid "Comment"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:40
|
||||
msgid "Download speed (Mbit/s)"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:79
|
||||
msgid "Download speed (kbit/s)"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:18
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/root/usr/share/luci/menu.d/luci-app-eqos.json:3
|
||||
msgid "EQoS"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:23
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:57
|
||||
msgid "Enable"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:36
|
||||
msgid ""
|
||||
"Enabling fair queue will automatically perform hardware offloading "
|
||||
"forwarding for every local host "
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/root/usr/share/rpcd/acl.d/luci-app-eqos.json:3
|
||||
msgid "Grant UCI access for luci-app-eqos"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:60
|
||||
msgid "IPV4 address"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:71
|
||||
msgid "IPV6 host"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:31
|
||||
msgid "IPV6Enable"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:91
|
||||
msgid "InterfaceName(start from 0)"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:27
|
||||
msgid "Load balance"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:19
|
||||
msgid "Network speed control service.(Compatiable with Mediatek HNAT)"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:28
|
||||
msgid ""
|
||||
"Please set a different gateway hop for each network interface before filling "
|
||||
"in the network interface name. Fill in PPPOE-WAN for dialing and eth1 for "
|
||||
"DHCP. Leaving it blank to disable it.Please use commas as interface name "
|
||||
"separators. Example: pppoe-wan,eth1"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:35
|
||||
msgid "SMART_HWQOS"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:52
|
||||
msgid ""
|
||||
"Speed limit and route choose based on IP address(using unique comment less "
|
||||
"than 32 will enable hardware QOS)"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:41
|
||||
msgid "Total download bandwidth."
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:46
|
||||
msgid "Total upload bandwidth."
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:45
|
||||
msgid "Upload speed (Mbit/s)"
|
||||
msgstr ""
|
||||
|
||||
#: package/mtk/applications/luci-app-eqos-mtk/htdocs/luci-static/resources/view/eqos.js:83
|
||||
msgid "Upload speed (kbit/s)"
|
||||
msgstr ""
|
@ -0,0 +1,91 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: LuCi Chinese Translation\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"Language: zh_Hans\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Pootle 2.0.6\n"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:64
|
||||
msgid "Comment"
|
||||
msgstr "编号"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:28
|
||||
msgid "Download speed (Mbit/s)"
|
||||
msgstr "下载速度 (Mbit/s)"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:18
|
||||
#: applications/luci-app-eqos/root/usr/share/luci/menu.d/luci-app-eqos.json:3
|
||||
msgid "EQoS"
|
||||
msgstr "网速控制"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:24
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:43
|
||||
msgid "Enable"
|
||||
msgstr "启用"
|
||||
|
||||
msgid "SMART_HWQOS"
|
||||
msgstr "智能硬件QOS"
|
||||
|
||||
msgid "Enabling fair queue will automatically perform hardware offloading for every local host"
|
||||
msgstr "启用硬件公平队列,局域网的每台设备将拥有相同的转发优先级,保证设备最低网速(仅对dhcp获得ip地址的设备生效,不兼容固定限速)"
|
||||
|
||||
msgid "IPV6Enable"
|
||||
msgstr "同时作用IPV6"
|
||||
|
||||
msgid "Load balance"
|
||||
msgstr "负载均衡"
|
||||
|
||||
msgid "Please set a different gateway hop for each network interface before filling in the network interface name. Fill in PPPOE-WAN for dialing and eth1 for DHCP. Leaving it blank to disable it.Please use commas as interface name separators. Example: pppoe-wan,eth1"
|
||||
msgstr "请先为每个网络接口设置不同的网关跃点后,再填写网络接口名。拨号填写pppoe-wan,DHCP则填写eth1。留空则不启用.请使用逗号作为接口名分隔符.例子:pppoe-wan, eth1"
|
||||
|
||||
#: applications/luci-app-eqos/root/usr/share/rpcd/acl.d/luci-app-eqos.json:3
|
||||
msgid "Grant UCI access for luci-app-eqos"
|
||||
msgstr "授予 luci-app-eqos 访问 UCI 配置的权限"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:46
|
||||
msgid "IPV4 address"
|
||||
msgstr "IPV4 地址"
|
||||
|
||||
msgid "IPV6 host"
|
||||
msgstr "IPV6 主机"
|
||||
|
||||
|
||||
msgid "Total download bandwidth."
|
||||
msgstr "总下载带宽。"
|
||||
|
||||
msgid "InterfaceName(start from 0)"
|
||||
msgstr "分流接口序号(从0开始,留空则负载均衡)"
|
||||
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:19
|
||||
msgid "Network speed control service.(Compatiable with Mediatek HNAT)"
|
||||
msgstr "网速控制服务(未设置限速主机可正常使用硬件加速)。"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:38
|
||||
msgid "Speed limit and route choose based on IP address(Auto use hardware QOS)"
|
||||
msgstr "基于 IP 分流限速(自动启用硬件QOS.速度设置为0则取消限速)"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:29
|
||||
msgid "Total download bandwidth."
|
||||
msgstr "总下载带宽。"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:34
|
||||
msgid "Total upload bandwidth."
|
||||
msgstr "总上传带宽。"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:33
|
||||
msgid "Upload speed (Mbit/s)"
|
||||
msgstr "上传速度 (Mbit/s)"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:56
|
||||
msgid "Download speed (kbit/s)"
|
||||
msgstr "下载速度 (kbit/s)"
|
||||
|
||||
#: applications/luci-app-eqos/htdocs/luci-static/resources/view/eqos.js:60
|
||||
msgid "Upload speed (kbit/s)"
|
||||
msgstr "上传速度 (kbit/s)"
|
||||
|
@ -0,0 +1,12 @@
|
||||
# The bandwidth unit is Mbit/s
|
||||
config eqos 'config'
|
||||
option enabled 0
|
||||
option download 100
|
||||
option upload 20
|
||||
|
||||
# Limiting the bandwidth of a single Device
|
||||
#config device
|
||||
# option ip "192.168.1.100"
|
||||
# option download 10
|
||||
# option upload 5
|
||||
# option comment 1
|
@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
/etc/init.d/eqos start
|
103
package/mtk/applications/luci-app-eqos-mtk/root/etc/init.d/dhcp_mark.sh
Executable file
103
package/mtk/applications/luci-app-eqos-mtk/root/etc/init.d/dhcp_mark.sh
Executable file
@ -0,0 +1,103 @@
|
||||
#!/bin/sh
|
||||
|
||||
ACTION=$2
|
||||
MARK_FILE="/tmp/dhcp_mac_mark_mapping" # 存储MAC和MARK映射关系的文件
|
||||
LEASE_FILE="/tmp/dhcp.leases" # DHCP leases 文件
|
||||
MAX_MARK=31 # 限制mark值在1到31之间
|
||||
|
||||
# 定义哈希函数,将MAC地址转化为一个数值,限制在1到31之间
|
||||
hash_mac() {
|
||||
MAC=$1
|
||||
# 将MAC地址中的冒号去掉,转化为十六进制数值,取模限制在1到31之间
|
||||
MAC_HEX=$(echo "$MAC" | sed 's/://g')
|
||||
echo $(( 0x$MAC_HEX % MAX_MARK + 1 ))
|
||||
}
|
||||
|
||||
# 从文件中加载当前的MAC-MARK映射
|
||||
load_mapping() {
|
||||
if [ ! -f "$MARK_FILE" ]; then
|
||||
touch "$MARK_FILE"
|
||||
fi
|
||||
cat "$MARK_FILE"
|
||||
}
|
||||
|
||||
# 检查mark是否被占用
|
||||
is_mark_in_use() {
|
||||
MARK=$1
|
||||
grep -q " $MARK$" "$MARK_FILE"
|
||||
return $?
|
||||
}
|
||||
|
||||
# 分配一个可用的mark
|
||||
allocate_mark() {
|
||||
MAC=$1
|
||||
MARK=$(hash_mac $MAC)
|
||||
retries=0 # 记录重试次数
|
||||
max_retries=$((MAX_MARK - 1)) # 允许的最大重试次数
|
||||
|
||||
# 循环检查mark是否被占用,直到找到可用的mark
|
||||
while is_mark_in_use $MARK; do
|
||||
MARK=$((MARK + 1))
|
||||
retries=$((retries + 1))
|
||||
if [ "$MARK" -gt $MAX_MARK ]; then
|
||||
MARK=1
|
||||
fi
|
||||
# 如果重试次数达到最大值,退出循环,表示无法找到可用的MARK
|
||||
if [ "$retries" -ge "$max_retries" ]; then
|
||||
MARK=1
|
||||
break
|
||||
fi
|
||||
done
|
||||
# 返回可用的MARK
|
||||
echo $MARK
|
||||
}
|
||||
|
||||
# 保存MAC和MARK的映射
|
||||
save_mapping() {
|
||||
MAC=$1
|
||||
MARK=$2
|
||||
echo "$MAC $MARK" >> "$MARK_FILE"
|
||||
}
|
||||
|
||||
# 删除MAC对应的MARK映射
|
||||
delete_mapping() {
|
||||
MAC=$1
|
||||
sed -i "/^$MAC /d" "$MARK_FILE"
|
||||
}
|
||||
|
||||
# 处理现有的DHCP记录,确保已有设备保留其MARK
|
||||
process_existing_leases() {
|
||||
while read -r line; do
|
||||
IP=$(echo "$line" | awk '{print $3}')
|
||||
MAC=$(echo "$line" | awk '{print $2}')
|
||||
EXISTING_MARK=$(grep "^$MAC " "$MARK_FILE" | awk '{print $2}')
|
||||
if [ -z "$EXISTING_MARK" ]; then
|
||||
# 如果没有记录,分配新的MARK
|
||||
MARK_VALUE=$(allocate_mark $MAC)
|
||||
save_mapping $MAC $MARK_VALUE
|
||||
else
|
||||
# 使用现有的MARK
|
||||
MARK_VALUE=$EXISTING_MARK
|
||||
fi
|
||||
idpair=$((MARK_VALUE+32))
|
||||
# 添加iptables规则,基于MAC和IP地址给这个设备打上MARK
|
||||
iptables -t mangle -D eqos -s $IP -j DSCP --set-dscp ${MARK_VALUE}
|
||||
iptables -t mangle -D eqos -d $IP -j DSCP --set-dscp ${idpair}
|
||||
ip6tables -t mangle -D eqos -m mac --mac-source $MAC -j MARK --set-mark ${MARK_VALUE}
|
||||
ebtables -t nat -D eqos -p ipv6 -d $MAC -j mark --mark-set ${idpair}
|
||||
iptables -t mangle -A eqos -s $IP -j DSCP --set-dscp ${MARK_VALUE}
|
||||
iptables -t mangle -A eqos -d $IP -j DSCP --set-dscp ${idpair}
|
||||
ip6tables -t mangle -A eqos -m mac --mac-source $MAC -j MARK --set-mark ${MARK_VALUE}
|
||||
ebtables -t nat -A eqos -A ipv6 -d $MAC -j mark --mark-set ${idpair}
|
||||
done < "$LEASE_FILE"
|
||||
}
|
||||
|
||||
if [ "$ACTION" = "init" ]; then
|
||||
rm /tmp/dhcp_mac_mark_mapping
|
||||
load_mapping
|
||||
iptables -t mangle -F eqos
|
||||
ip6tables -t mangle -F eqos
|
||||
ebtables -t nat -F eqos
|
||||
process_existing_leases
|
||||
fi
|
||||
|
102
package/mtk/applications/luci-app-eqos-mtk/root/etc/init.d/eqos
Executable file
102
package/mtk/applications/luci-app-eqos-mtk/root/etc/init.d/eqos
Executable file
@ -0,0 +1,102 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
# Copyright (C) 2006 OpenWrt.org
|
||||
|
||||
START=50
|
||||
USE_PROCD=1
|
||||
|
||||
parse_device() {
|
||||
local cfg="$1"
|
||||
|
||||
local enabled
|
||||
config_get_bool enabled "$cfg" "enabled" "1"
|
||||
[ "$enabled" -eq "1" ] || return 1
|
||||
|
||||
|
||||
local ip download upload comment mac interfacename
|
||||
config_get ip "$cfg" ip
|
||||
config_get download "$cfg" "download"
|
||||
config_get upload "$cfg" "upload"
|
||||
config_get comment "$cfg" "comment"
|
||||
config_get mac "$cfg" "mac"
|
||||
config_get interfacename "$cfg" "interfacename"
|
||||
eqos add "$ip" "$download" "$upload" "$comment" "$mac" "$interfacename"
|
||||
}
|
||||
|
||||
start_service() {
|
||||
config_load "eqos"
|
||||
|
||||
local enabled
|
||||
config_get_bool enabled "config" "enabled" "0"
|
||||
[ "$enabled" -eq "1" ] || return 1
|
||||
|
||||
local download upload comment
|
||||
config_get download "config" "download"
|
||||
config_get upload "config" "upload"
|
||||
config_get comment "config" "comment"
|
||||
config_get smarthqos "config" "smarthqos"
|
||||
config_get interface "config" "interface"
|
||||
eqos start "$download" "$upload" "$comment"
|
||||
|
||||
local ipv6enabled
|
||||
config_get_bool ipv6enabled "config" "ipv6enabled" "0"
|
||||
ip6tables -t mangle -N eqos
|
||||
ip6tables -t mangle -F eqos
|
||||
ebtables -t nat -N eqos
|
||||
ebtables -t nat -F eqos
|
||||
if [ "$ipv6enabled" -eq "1" ]; then
|
||||
ebtables -t nat -D POSTROUTING -j eqos -p ipv6
|
||||
ebtables -t nat -A POSTROUTING -j eqos -p ipv6
|
||||
ip6tables -t mangle -D FORWARD -j eqos
|
||||
ip6tables -t mangle -A FORWARD -j eqos
|
||||
fi
|
||||
|
||||
if [ "$smarthqos" -eq "1" ]; then
|
||||
for i in $(seq 1 31); do
|
||||
if [ "$upload" -ne "0" ]; then
|
||||
echo 2 1 $(($upload*225)) 1 $(($upload*1000)) 4 1 > /sys/kernel/debug/hnat/qdma_txq$i
|
||||
fi
|
||||
done
|
||||
for i in $(seq 33 63); do
|
||||
if [ "$download" -ne "0" ]; then
|
||||
echo 3 1 $(($download*200)) 1 $(($download*1000)) 4 1 > /sys/kernel/debug/hnat/qdma_txq$i
|
||||
fi
|
||||
done
|
||||
fi
|
||||
iptables -t mangle -F PREROUTING
|
||||
if [ $interface ]; then
|
||||
bash /usr/sbin/loadbalance "$interface"
|
||||
fi
|
||||
config_foreach parse_device "device"
|
||||
if [ "$smarthqos" -eq "1" ]; then
|
||||
rm /etc/hotplug.d/dhcp/99-eqos
|
||||
cat << 'EOF' > /etc/hotplug.d/dhcp/99-eqos
|
||||
#!/bin/sh
|
||||
|
||||
# 只有在新增 DHCP 租约时才执行操作
|
||||
if [ "$ACTION" = "add" ]; then
|
||||
|
||||
# 执行指定的命令
|
||||
/etc/init.d/dhcp_mark.sh eqos init
|
||||
fi
|
||||
EOF
|
||||
|
||||
chmod +x /etc/hotplug.d/dhcp/99-eqos
|
||||
/etc/init.d/dnsmasq restart
|
||||
/etc/init.d/dhcp_mark.sh eqos init
|
||||
fi
|
||||
}
|
||||
|
||||
stop_service() {
|
||||
eqos stop
|
||||
iptables -t mangle -F PREROUTING
|
||||
rm /etc/hotplug.d/dhcp/99-eqos
|
||||
}
|
||||
|
||||
reload_service() {
|
||||
stop
|
||||
start
|
||||
}
|
||||
|
||||
service_triggers() {
|
||||
procd_add_reload_trigger "eqos"
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
#!/bin/sh
|
||||
|
||||
uci -q batch <<-EOF >/dev/null
|
||||
delete ucitrack.@eqos[-1]
|
||||
add ucitrack eqos
|
||||
EOF
|
||||
|
||||
rm -f /tmp/luci-indexcache
|
||||
exit 0
|
187
package/mtk/applications/luci-app-eqos-mtk/root/usr/sbin/eqos
Executable file
187
package/mtk/applications/luci-app-eqos-mtk/root/usr/sbin/eqos
Executable file
@ -0,0 +1,187 @@
|
||||
#!/bin/sh
|
||||
|
||||
dev=br-lan
|
||||
hash_file="/tmp/hash_records.txt"
|
||||
|
||||
generate_index() {
|
||||
local input="$1"
|
||||
local hash_value=$(echo -n "$input" | md5sum | cut -d' ' -f1)
|
||||
local decimal_value=$((0x${hash_value:0:8}))
|
||||
local index=$((decimal_value % 31 + 1))
|
||||
echo $index
|
||||
}
|
||||
|
||||
find_available_index() {
|
||||
local base_index=$(generate_index "$1")
|
||||
local index=$base_index
|
||||
|
||||
while true; do
|
||||
if grep -q "^$index$" "$hash_file"; then
|
||||
index=$((index % 31 + 1))
|
||||
if [[ $index -eq $base_index ]]; then
|
||||
echo "All slots are full. Returning 0."
|
||||
return 0
|
||||
fi
|
||||
else
|
||||
echo $index >> "$hash_file"
|
||||
echo $index
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
}
|
||||
stop_qos() {
|
||||
tc qdisc del dev $dev root 2>/dev/null
|
||||
tc qdisc del dev $dev ingress 2>/dev/null
|
||||
tc qdisc del dev ${dev}-ifb root 2>/dev/null
|
||||
ip link del dev ${dev}-ifb 2>/dev/null
|
||||
}
|
||||
|
||||
start_qos() {
|
||||
local dl=$1
|
||||
local up=$2
|
||||
rm /tmp/hash_records.txt
|
||||
touch "$hash_file"
|
||||
tc qdisc add dev $dev root handle 1: htb
|
||||
tc class add dev $dev parent 1: classid 1:1 htb rate ${dl}mbit
|
||||
|
||||
ip link add dev ${dev}-ifb name ${dev}-ifb type ifb
|
||||
ip link set dev ${dev}-ifb up
|
||||
|
||||
tc qdisc add dev ${dev}-ifb root handle 1: htb
|
||||
tc class add dev ${dev}-ifb parent 1: classid 1:1 htb rate ${up}mbit
|
||||
|
||||
tc qdisc add dev $dev ingress
|
||||
tc filter add dev $dev parent ffff: protocol ip u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev ${dev}-ifb
|
||||
}
|
||||
|
||||
iptables_stop() {
|
||||
iptables -t mangle -D FORWARD -j eqos
|
||||
ip6tables -t mangle -D FORWARD -j eqos
|
||||
ebtables -t nat -D POSTROUTING -j eqos -p ipv6
|
||||
echo 0 > /sys/kernel/debug/hnat/qos_toggle
|
||||
sed -i '/\/etc\/init.d\/eqos start/d' /etc/firewall.user
|
||||
iptables -t mangle -D FORWARD -i br-lan -j DSCP --set-dscp 0
|
||||
iptables -t mangle -D FORWARD -o br-lan -j DSCP --set-dscp 0
|
||||
ip6tables -t mangle -D FORWARD -i br-lan -j DSCP --set-dscp 0
|
||||
ip6tables -t mangle -D FORWARD -o br-lan -j DSCP --set-dscp 0
|
||||
echo "10 0" > /sys/kernel/debug/hnat/hnat_setting
|
||||
echo "11 30" >/sys/kernel/debug/hnat/hnat_setting
|
||||
for i in $(seq 0 31); do
|
||||
echo 0 0 0 0 0 4 4 > /sys/kernel/debug/hnat/qdma_txq$i
|
||||
done
|
||||
for i in $(seq 32 63); do
|
||||
echo 1 0 0 0 0 4 4 > /sys/kernel/debug/hnat/qdma_txq$i
|
||||
done
|
||||
echo 0 wrr 10000000 > /sys/kernel/debug/hnat/qdma_sch0
|
||||
echo 0 wrr 10000000 > /sys/kernel/debug/hnat/qdma_sch1
|
||||
echo 0 wrr 10000000 > /sys/kernel/debug/hnat/qdma_sch2
|
||||
echo 0 wrr 10000000 > /sys/kernel/debug/hnat/qdma_sch3
|
||||
}
|
||||
|
||||
iptables_start_prepare() {
|
||||
iptables -t mangle -D FORWARD -i br-lan -j DSCP --set-dscp 0
|
||||
iptables -t mangle -D FORWARD -o br-lan -j DSCP --set-dscp 0
|
||||
iptables -t mangle -A FORWARD -i br-lan -j DSCP --set-dscp 0
|
||||
iptables -t mangle -A FORWARD -o br-lan -j DSCP --set-dscp 0
|
||||
ip6tables -t mangle -D FORWARD -i br-lan -j DSCP --set-dscp 0
|
||||
ip6tables -t mangle -D FORWARD -o br-lan -j DSCP --set-dscp 0
|
||||
ip6tables -t mangle -A FORWARD -i br-lan -j DSCP --set-dscp 0
|
||||
ip6tables -t mangle -A FORWARD -o br-lan -j DSCP --set-dscp 0
|
||||
}
|
||||
|
||||
iptables_start_inital() {
|
||||
iptables -t mangle -N eqos
|
||||
iptables -t mangle -F eqos
|
||||
iptables -t mangle -D FORWARD -j eqos
|
||||
iptables -t mangle -A FORWARD -j eqos
|
||||
echo 1 > /sys/kernel/debug/hnat/qos_toggle
|
||||
echo 0 wrr 10000000 > /sys/kernel/debug/hnat/qdma_sch0
|
||||
echo 0 wrr 10000000 > /sys/kernel/debug/hnat/qdma_sch1
|
||||
echo 0 0 0 0 0 0 0 > /sys/kernel/debug/hnat/qdma_txq0
|
||||
echo 1 0 0 0 0 0 0 > /sys/kernel/debug/hnat/qdma_txq32
|
||||
echo "11 5" >/sys/kernel/debug/hnat/hnat_setting
|
||||
uci -q set "turboacc.config.fastpath_mh_eth_hnat_bind_rate"="5"
|
||||
uci -q commit "turboacc"
|
||||
sed -i '/\/etc\/init.d\/eqos start/d' /etc/firewall.user
|
||||
echo "/etc/init.d/eqos start" >> /etc/firewall.user
|
||||
echo "10 1" > /sys/kernel/debug/hnat/hnat_setting
|
||||
}
|
||||
|
||||
|
||||
case "$1" in
|
||||
"stop")
|
||||
stop_qos
|
||||
iptables_stop
|
||||
;;
|
||||
"start")
|
||||
stop_qos
|
||||
iptables_start_prepare
|
||||
start_qos $2 $3
|
||||
iptables_start_inital
|
||||
echo 1 wrr $(($3*1000)) > /sys/kernel/debug/hnat/qdma_sch2
|
||||
echo 1 wrr $(($2*1000)) > /sys/kernel/debug/hnat/qdma_sch3
|
||||
;;
|
||||
"add")
|
||||
ip="$2"
|
||||
dl="$3"
|
||||
up="$4"
|
||||
macaddr="$6"
|
||||
cnt=$(tc class show dev $dev | wc -l)
|
||||
|
||||
interface="$7"
|
||||
if [ -n "$ip" ]; then
|
||||
id="$(find_available_index "$ip")"
|
||||
elif [ -n "$macaddr" ]; then
|
||||
id="$(find_available_index "$macaddr")"
|
||||
fi
|
||||
idpair=$((id+32))
|
||||
if [ $id -lt 32 ]; then
|
||||
iptables -t mangle -D eqos -s $ip -j DSCP --set-dscp ${id}
|
||||
iptables -t mangle -D eqos -d $ip -j DSCP --set-dscp ${idpair}
|
||||
ip6tables -t mangle -D eqos -m mac --mac-source $macaddr -j MARK --set-mark ${id}
|
||||
ebtables -t nat -D eqos -p ipv6 -d $macaddr -j mark --mark-set ${idpair}
|
||||
if [ $up -ne 0 ]; then
|
||||
echo 2 0 0 1 ${up} 4 1 > /sys/kernel/debug/hnat/qdma_txq${id}
|
||||
iptables -t mangle -A eqos -s $ip -j DSCP --set-dscp ${id}
|
||||
ip6tables -t mangle -A eqos -m mac --mac-source $macaddr -j MARK --set-mark ${id}
|
||||
fi
|
||||
if [ $dl -ne 0 ]; then
|
||||
echo 3 0 0 1 ${dl} 4 1 > /sys/kernel/debug/hnat/qdma_txq${idpair}
|
||||
iptables -t mangle -A eqos -d $ip -j DSCP --set-dscp ${idpair}
|
||||
ebtables -t nat -A eqos -p ipv6 -d $macaddr -j mark --mark-set ${idpair}
|
||||
fi
|
||||
else
|
||||
iptables -t mangle -D eqos -s $ip -j MARK --set-mark 0x99
|
||||
iptables -t mangle -D eqos -d $ip -j MARK --set-mark 0x99
|
||||
if [ $up -ne 0 ]; then
|
||||
iptables -t mangle -A eqos -s $ip -j MARK --set-mark 0x99
|
||||
fi
|
||||
if [ $dl -ne 0 ]; then
|
||||
iptables -t mangle -A eqos -d $ip -j MARK --set-mark 0x99
|
||||
fi
|
||||
fi
|
||||
if [ $id -gt 31 ]; then
|
||||
tc class add dev $dev parent 1:1 classid 1:1$cnt htb rate ${dl}kbit ceil ${dl}kbit
|
||||
tc filter add dev $dev parent 1:0 protocol ip u32 match ip dst $ip flowid 1:1$cnt
|
||||
|
||||
tc class add dev ${dev}-ifb parent 1:1 classid 1:1$cnt htb rate ${up}kbit ceil ${up}kbit
|
||||
tc filter add dev ${dev}-ifb parent 1:0 protocol ip u32 match ip src $ip flowid 1:1$cnt
|
||||
fi
|
||||
if [ $interface ]; then
|
||||
iptables -t mangle -D PREROUTING -s $ip -m conntrack --ctstate NEW -j MARK --set-mark 2"$interface"
|
||||
iptables -t mangle -A PREROUTING -s $ip -m conntrack --ctstate NEW -j MARK --set-mark 2"$interface"
|
||||
iptables -t mangle -D PREROUTING -i br-lan -m conntrack --ctstate ESTABLISHED,RELATED -j CONNMARK --restore-mark
|
||||
iptables -t mangle -A PREROUTING -i br-lan -m conntrack --ctstate ESTABLISHED,RELATED -j CONNMARK --restore-mark
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 <command> [options]"
|
||||
echo "Commands:"
|
||||
echo " start dl_rate up_rate #Total bandwidth (Mbit/s)"
|
||||
echo " stop"
|
||||
echo " add ip dl_rate up_rate #Limiting the bandwidth of a single IP (kbit/s)"
|
||||
echo "Example:"
|
||||
echo " $0 start 30 20 # Total bandwidth: down 30Mbit/s up 20Mbit/s"
|
||||
echo " $0 add 192.168.22.12 10 2 # down 10kbit/s up 2kbit/s"
|
||||
;;
|
||||
esac
|
45
package/mtk/applications/luci-app-eqos-mtk/root/usr/sbin/loadbalance
Executable file
45
package/mtk/applications/luci-app-eqos-mtk/root/usr/sbin/loadbalance
Executable file
@ -0,0 +1,45 @@
|
||||
interface=$1
|
||||
array=(${interface//,/ })
|
||||
PPP_NUM=0
|
||||
|
||||
for var in ${array[@]}
|
||||
do
|
||||
let PPP_NUM=PPP_NUM+1
|
||||
done
|
||||
|
||||
i=0
|
||||
for var in ${array[@]}
|
||||
do
|
||||
ipaddr=$(ip route show |grep default | grep $var | awk '{print $3 }')
|
||||
iptables -t mangle -D PREROUTING -i br-lan -m conntrack --ctstate NEW -m statistic --mode nth --every $PPP_NUM --packet $i -j CONNMARK --set-mark 2"$i"
|
||||
iptables -t mangle -D PREROUTING -i br-lan -m connmark --mark 2"$i" -j MARK --set-mark 2"$i"
|
||||
iptables -t mangle -A PREROUTING -i br-lan -m conntrack --ctstate NEW -m statistic --mode nth --every $PPP_NUM --packet $i -j CONNMARK --set-mark 2"$i"
|
||||
iptables -t mangle -A PREROUTING -i br-lan -m connmark --mark 2"$i" -j MARK --set-mark 2"$i"
|
||||
ip rule del table 2"$i"0
|
||||
ip rule add fwmark 2"$i" table 2"$i"0
|
||||
ip route del default table 2"$i"0
|
||||
ip route add default via $ipaddr dev $var table 2"$i"0
|
||||
let i=i+1
|
||||
done
|
||||
|
||||
|
||||
i=0
|
||||
for var in ${array[@]}
|
||||
do
|
||||
ipaddr=$(ip route show |grep default | grep $var | awk '{print $3 }')
|
||||
iptables -t mangle -D PREROUTING -m conntrack --ctstate NEW -d $ipaddr/24 -j MARK --set-mark 2"$i"
|
||||
iptables -t mangle -A PREROUTING -m conntrack --ctstate NEW -d $ipaddr/24 -j MARK --set-mark 2"$i"
|
||||
let i=i+1
|
||||
done
|
||||
|
||||
iptables -t mangle -D PREROUTING -p tcp --dport 443 -m conntrack --ctstate NEW -j MARK --set-mark 20
|
||||
iptables -t mangle -A PREROUTING -p tcp --dport 443 -m conntrack --ctstate NEW -j MARK --set-mark 20
|
||||
|
||||
iptables -t mangle -D PREROUTING -p udp --dport 443 -m conntrack --ctstate NEW -j MARK --set-mark 20
|
||||
iptables -t mangle -A PREROUTING -p udp --dport 443 -m conntrack --ctstate NEW -j MARK --set-mark 20
|
||||
|
||||
iptables -t mangle -D POSTROUTING -m conntrack --ctstate NEW -j CONNMARK --save-mark
|
||||
iptables -t mangle -A POSTROUTING -m conntrack --ctstate NEW -j CONNMARK --save-mark
|
||||
iptables -t mangle -D PREROUTING -i br-lan -m conntrack --ctstate ESTABLISHED,RELATED -j CONNMARK --restore-mark
|
||||
iptables -t mangle -A PREROUTING -i br-lan -m conntrack --ctstate ESTABLISHED,RELATED -j CONNMARK --restore-mark
|
||||
ip route flush cache
|
@ -0,0 +1,13 @@
|
||||
{
|
||||
"admin/network/eqos": {
|
||||
"title": "EQoS",
|
||||
"action": {
|
||||
"type": "view",
|
||||
"path": "eqos"
|
||||
},
|
||||
"depends": {
|
||||
"acl": [ "luci-app-eqos" ],
|
||||
"uci": { "eqos": true }
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
{
|
||||
"luci-app-eqos": {
|
||||
"description": "Grant UCI access for luci-app-eqos",
|
||||
"read": {
|
||||
"uci": [ "eqos" ]
|
||||
},
|
||||
"write": {
|
||||
"uci": [ "eqos" ]
|
||||
}
|
||||
}
|
||||
}
|
15
package/mtk/applications/luci-app-mtk/Makefile
Normal file
15
package/mtk/applications/luci-app-mtk/Makefile
Normal file
@ -0,0 +1,15 @@
|
||||
#
|
||||
# Copyright (C) Hua Shao <nossiac@163.com>
|
||||
#
|
||||
# This is free software, licensed under the Apache License, Version 2.0 .
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
LUCI_TITLE:=MediaTek Proprietary Configuration.
|
||||
LUCI_DEPENDS:=+datconf-lua
|
||||
LUCI_PKGARCH:=all
|
||||
|
||||
include $(TOPDIR)/feeds/luci/luci.mk
|
||||
|
||||
# call BuildPackage - OpenWrt buildroot signature
|
198
package/mtk/applications/luci-app-mtk/NOTICE
Normal file
198
package/mtk/applications/luci-app-mtk/NOTICE
Normal file
@ -0,0 +1,198 @@
|
||||
Copyright (C) 2016 Gion Kunz
|
||||
|
||||
The MIT License
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
|
||||
documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
|
||||
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||
persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
|
||||
Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
||||
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
|
||||
Copyright 2008 Steven Barth <steven@midlink.org>
|
||||
Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
|
||||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
1421
package/mtk/applications/luci-app-mtk/luasrc/controller/mtkwifi.lua
Normal file
1421
package/mtk/applications/luci-app-mtk/luasrc/controller/mtkwifi.lua
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,67 @@
|
||||
<%#
|
||||
File name : mtk_wifi_apply_reboot.htm
|
||||
This file is used in WebUI based on LuCI to handle the reboot event.
|
||||
%>
|
||||
<%+header%>
|
||||
<h2><a>Reboot Device</a><h2>
|
||||
<div id="div_reboot_warn">
|
||||
<p class="alert-message">
|
||||
As the driver does not support addition or deletion of interfaces on the fly,
|
||||
the settings which were changed during addition or deletion of interfaces have not been applied yet!
|
||||
<br /><br />
|
||||
<strong>
|
||||
The changed settings will be applied only after reboot of the device.
|
||||
Please click on the Reboot button.
|
||||
</strong>
|
||||
<br /><br />
|
||||
<strong>Tip:</strong><br />
|
||||
Add or delete as many interfaces as required before reboot so that you do not have to reboot the device again.<br />
|
||||
Please follow below instructions to add or delete an interface;</em><br />
|
||||
1. Go to <a href='<%=luci.dispatcher.build_url("admin", "network", "wifi")%>'>Wireless Overview</a> web-page.<br />
|
||||
2. Click on Add button to add a new interface or click on Remove button to delete an existing interface.<br />
|
||||
3. If you are are adding a new interface, then, click on <em>Save</em> button after filling out all the required fields such as SSID etc.<br />
|
||||
4. Once you are done with addition/deletion of interfaces, then please click on <em>Reload</em> button or
|
||||
<em>Save and Apply</em> button on any web-page which will redirect to this web-page to perform the reboot of the device.</br>
|
||||
</p>
|
||||
<input class="cbi-button cbi-button-apply" type="button" value="Reboot" onclick="init_reboot()" />
|
||||
</div>
|
||||
<h4 id="msg_on_reboot" class="alert-message warning" style="display:none">
|
||||
<img src="<%=resource%>/icons/loading.gif" alt="" style="vertical-align:middle" />
|
||||
Please wait while the reboot of the device is on progress.
|
||||
</h4>
|
||||
<h4 id="unreach_msg" class="alert-message error" style="display:none">Device has not come on-line yet!</h4>
|
||||
<script type="text/javascript">
|
||||
function online()
|
||||
{
|
||||
location = '<%=controller%>';
|
||||
}
|
||||
|
||||
function ping(numPings)
|
||||
{
|
||||
var loadingImg = document.createElement('IMG');
|
||||
loadingImg.onload = online;
|
||||
loadingImg.src = '<%=resource%>/icons/loading.gif?' + Math.random();
|
||||
numPings -= 1;
|
||||
if(numPings <= 0){
|
||||
document.getElementById("msg_on_reboot").style.display = 'none';
|
||||
document.getElementById("unreach_msg").style.display = '';
|
||||
}
|
||||
else{
|
||||
window.setTimeout(ping, 10000, numPings);
|
||||
}
|
||||
}
|
||||
|
||||
function init_reboot_cb()
|
||||
{
|
||||
window.setTimeout(ping, 10000, 18);
|
||||
}
|
||||
|
||||
function init_reboot()
|
||||
{
|
||||
document.getElementById('div_reboot_warn').style.display = 'none';
|
||||
document.getElementById('msg_on_reboot').style.display = '';
|
||||
(new XHR()).post('<%=controller%>/admin/mtk/wifi/reboot', { token: '<%=token%>' }, init_reboot_cb);
|
||||
}
|
||||
|
||||
</script>
|
||||
<%+footer%>
|
@ -0,0 +1,233 @@
|
||||
<%+header%>
|
||||
<!--
|
||||
This module is a demo to configure MTK' proprietary WiFi driver.
|
||||
Basic idea is to bypass uci and edit wireless profile (mt76xx.dat) directly.
|
||||
LuCI's WiFi configuration is more logical and elegent, but it's quite tricky to
|
||||
translate uci into MTK's WiFi profile (like we did in "uci2dat").
|
||||
|
||||
Hua Shao <nossiac@163.com>
|
||||
-->
|
||||
|
||||
<%
|
||||
local disp = require "luci.dispatcher"
|
||||
-- local request = disp.context.path
|
||||
local request = disp.context.request
|
||||
local mtkwifi = require("mtkwifi")
|
||||
local devname = request[5]
|
||||
local devs = mtkwifi.get_all_devs()
|
||||
local dev = {}
|
||||
for _,v in ipairs(devs) do
|
||||
if v.devname == devname then
|
||||
dev = v
|
||||
end
|
||||
end
|
||||
local cfgs = mtkwifi.load_profile(dev.profile)
|
||||
%>
|
||||
|
||||
<script type="text/javascript" src="<%=resource%>/cbi.js?v=git-17.250.41546-90ac861"></script>
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
|
||||
<form method="post" name="cbi" action="<%=luci.dispatcher.build_url("admin", "network", "wifi", "chip_cfg", devname)%>" enctype="multipart/form-data" onreset="return cbi_validate_reset(this)" onsubmit="return cbi_validate_form(this, '<%:Some fields are invalid, cannot save values!%>') && ValidateAllSettings()" autocomplete="off">
|
||||
<fieldset class="cbi-section">
|
||||
<h2><%:Chip Configurations%> - <%=string.split(devname,".")[1]%>
|
||||
<%local diff = mtkwifi.diff_profile(dev.profile)%>
|
||||
<%if next(diff) ~= nil then%>
|
||||
<span style="color:red;">( <a href="javascript:location.href='<%=luci.dispatcher.build_url("admin", "network", "wifi", "reload", dev.devname)%>'"><%:Click here%></a> <%:to apply changes%>)</span>
|
||||
<%end%>
|
||||
</h2>
|
||||
|
||||
<table id="dev-cfg-basic" class="cbi-section-table">
|
||||
<tr>
|
||||
<td><%:Decline BA Request%></td>
|
||||
<td>
|
||||
<select style="width:auto" name="HT_BADecline">
|
||||
<option value="1" <% if cfgs.HT_BADecline == "1" then %> selected="selected"<% end%>><%:Enable%></option>
|
||||
<option value="0" <% if cfgs.HT_BADecline == "0" then %> selected="selected"<% end%>><%:Disable%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:Reverse Direction Grant (RDG)%></td>
|
||||
<td>
|
||||
<select style="width:auto" name="HT_RDG">
|
||||
<option value="1" <% if cfgs.HT_RDG == "1" then %> selected="selected"<% end%>><%:Enable%></option>
|
||||
<option value="0" <% if cfgs.HT_RDG == "0" then %> selected="selected"<% end%>><%:Disable%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:BA Win size%> <% if string.split(cfgs.WirelessMode,";")[1] == "16" or string.split(cfgs.WirelessMode,";")[1] == "17" or string.split(cfgs.WirelessMode,";")[1] == "18" then %>(1-256)<% else %>(1-64)<% end %></td>
|
||||
<td>
|
||||
<input name="HT_BAWinSize" id="HT_BAWinSize" value="<%=cfgs.HT_BAWinSize%>"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:HT Disallow TKIP%></td>
|
||||
<td>
|
||||
<select style="width:auto" name="HT_DisallowTKIP">
|
||||
<option value="1" <% if cfgs.HT_DisallowTKIP == "1" then %> selected="selected"<% end%>><%:Enable%></option>
|
||||
<option value="0" <% if cfgs.HT_DisallowTKIP == "0" then %> selected="selected"<% end%>><%:Disable%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:Wi-Fi HWNAT%></td>
|
||||
<td>
|
||||
<select style="width:auto" name="WHNAT">
|
||||
<option value="1" <% if cfgs.WHNAT == "1" then %> selected="selected"<% end%>><%:Enable%></option>
|
||||
<option value="0" <% if cfgs.WHNAT ~= "1" then %> selected="selected"<% end%>><%:Disable%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:E2pAccessMode%></td>
|
||||
<td>
|
||||
<select style="width:auto" name="E2pAccessMode">
|
||||
<option value="1" <% if cfgs.E2pAccessMode == "1" then %> selected="selected"<% end%>>EFUSE</option>
|
||||
<option value="2" <% if cfgs.E2pAccessMode == "2" then %> selected="selected"<% end%>>FLASH</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:Beacon Interval%> (20-999)</td>
|
||||
<td>
|
||||
<input name="BeaconPeriod" id="BeaconPeriod" value="<%=cfgs.BeaconPeriod%>" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:Data Beacon Rate (DTIM)%> (1-255)</td>
|
||||
<td>
|
||||
<input name="DtimPeriod" id="DtimPeriod" value="<%=cfgs.DtimPeriod%>" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:BG Protection Mode%></td>
|
||||
<td>
|
||||
<select name="BGProtection" style="width:auto">
|
||||
<option value="0" <% if cfgs.BGProtection == "0" then %>selected="selected"<% end %>><%:Auto%></option>
|
||||
<option value="1" <% if cfgs.BGProtection == "1" then %>selected="selected"<% end %>><%:Always On%></option>
|
||||
<option value="2" <% if cfgs.BGProtection == "2" then %>selected="selected"<% end %>><%:Always Off%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:Short Preamble%></td>
|
||||
<td>
|
||||
<select style="width:auto" name="TxPreamble">
|
||||
<option value="1" <% if cfgs.TxPreamble == "1" then %> selected="selected"<% end%>><%:Enable%></option>
|
||||
<option value="0" <% if cfgs.TxPreamble == "0" then %> selected="selected"<% end%>><%:Disable%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:TX Burst%></td>
|
||||
<td>
|
||||
<select style="width:auto" name="TxBurst">
|
||||
<option value="1" <% if cfgs.TxBurst == "1" then %> selected="selected"<% end%>><%:Enable%></option>
|
||||
<option value="0" <% if cfgs.TxBurst == "0" then %> selected="selected"<% end%>><%:Disable%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:Short Slot%></td>
|
||||
<td>
|
||||
<select style="width:auto" name="ShortSlot">
|
||||
<option value="1" <% if cfgs.ShortSlot == "1" then %> selected="selected"<% end%>><%:Enable%></option>
|
||||
<option value="0" <% if cfgs.ShortSlot == "0" then %> selected="selected"<% end%>><%:Disable%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class="cbi-page-actions">
|
||||
|
||||
<input class="cbi-button cbi-button-apply" name="__apply" value="<%:Save & Apply%>" type="submit">
|
||||
<input class="cbi-button cbi-button-apply" value="<%:Save%>" type="submit">
|
||||
<input class="cbi-button cbi-button-reset" value="<%:Reset%>" type="reset">
|
||||
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
function ValidateAdvancedSettings()
|
||||
{
|
||||
var tmpVal = document.getElementById("HT_BAWinSize").value;
|
||||
<% if string.split(cfgs.WirelessMode,";")[1] == "16" or string.split(cfgs.WirelessMode,";")[1] == "17" or string.split(cfgs.WirelessMode,";")[1] == "18" then %>
|
||||
if(isNaN(tmpVal) || !/^\d{1,3}$/.test(tmpVal) || parseInt(tmpVal) < 1 || parseInt(tmpVal) > 256){
|
||||
alert("BA Win SIze is incorrect!\nPlease enter an integer number between 1 to 256 inclusive.");
|
||||
document.getElementById("HT_BAWinSize").focus();
|
||||
document.getElementById("HT_BAWinSize").select();
|
||||
return false;
|
||||
}
|
||||
<% else %>
|
||||
if(isNaN(tmpVal) || !/^\d{1,2}$/.test(tmpVal) || parseInt(tmpVal) < 1 || parseInt(tmpVal) > 64){
|
||||
alert("BA Win Size is incorrect!\nPlease enter an integer number between 1 to 64 inclusive.");
|
||||
document.getElementById("HT_BAWinSize").focus();
|
||||
document.getElementById("HT_BAWinSize").select();
|
||||
return false;
|
||||
}
|
||||
<% end %>
|
||||
tmpVal = document.getElementById("BeaconPeriod").value;
|
||||
if(isNaN(tmpVal) || !/^\d{2,3}$/.test(tmpVal) || parseInt(tmpVal) < 20 || parseInt(tmpVal) > 999){
|
||||
alert("Beacon Interval is incorrect!\nPlease enter an integer number between 20 to 999 inclusive.");
|
||||
document.getElementById("BeaconPeriod").focus();
|
||||
document.getElementById("BeaconPeriod").select();
|
||||
return false;
|
||||
}
|
||||
tmpVal = document.getElementById("DtimPeriod").value;
|
||||
if(isNaN(tmpVal) || !/^\d{1,3}$/.test(tmpVal) || parseInt(tmpVal) < 1 || parseInt(tmpVal) > 255){
|
||||
alert("Data Beacon Rate (DTIM) is incorrect!\nPlease enter an integer number between 1 to 255 inclusive.");
|
||||
document.getElementById("DtimPeriod").focus();
|
||||
document.getElementById("DtimPeriod").select();
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function ValidateAllSettings(){
|
||||
if( !ValidateAdvancedSettings() ){
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function get_apply_status_cb(rsp)
|
||||
{
|
||||
try{
|
||||
var r = JSON.parse(rsp);
|
||||
}
|
||||
catch(e){
|
||||
return;
|
||||
}
|
||||
if(r.status == "ON_PROGRESS"){
|
||||
var u = confirm("Device is applying the saved settings now!\n" +
|
||||
"It is recommended to wait until all the saved settings are applied.\n" +
|
||||
"Please click on 'OK' button to wait for the device.\n" +
|
||||
"or click on 'Cancel' button to configure the settings available in current web-page.");
|
||||
if (u == true) {
|
||||
location = '<%=luci.dispatcher.build_url("admin", "network", "wifi", "loading")%>' + window.location.pathname;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function get_apply_status()
|
||||
{
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_apply_status")%>', null,
|
||||
function(x)
|
||||
{
|
||||
console.log(x);
|
||||
get_apply_status_cb(x.response);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
window.onload = function() {
|
||||
get_apply_status();
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<%+footer%>
|
@ -0,0 +1,769 @@
|
||||
|
||||
<%+header%>
|
||||
<!--
|
||||
This module is a demo to configure MTK' proprietary WiFi driver.
|
||||
Basic idea is to bypass uci and edit wireless profile (mt76xx.dat) directly.
|
||||
LuCI's WiFi configuration is more logical and elegent, but it's quite tricky to
|
||||
translate uci into MTK's WiFi profile (like we did in "uci2dat").
|
||||
|
||||
Hua Shao <nossiac@163.com>
|
||||
-->
|
||||
|
||||
<%
|
||||
local disp = require "luci.dispatcher"
|
||||
-- local request = disp.context.path
|
||||
local request = disp.context.request
|
||||
local mtkwifi = require("mtkwifi")
|
||||
local devname = request[5]
|
||||
local devs = mtkwifi.get_all_devs()
|
||||
local dev = {}
|
||||
for _,v in ipairs(devs) do
|
||||
if v.devname == devname then
|
||||
dev = v
|
||||
end
|
||||
end
|
||||
local cfgs = mtkwifi.load_profile(dev.profile)
|
||||
local bands = mtkwifi.detect_triband()
|
||||
%>
|
||||
|
||||
<script type="text/javascript" src="<%=resource%>/cbi.js?v=git-17.250.41546-90ac861"></script>
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
|
||||
<form method="post" name="cbi" action="<%=luci.dispatcher.build_url("admin", "network", "wifi", "dev_cfg", devname)%>" enctype="multipart/form-data" onreset="return cbi_validate_reset(this)" onsubmit="return cbi_validate_form(this, '<%:Some fields are invalid, cannot save values!%>') && ValidateAllSettings()" autocomplete="off">
|
||||
<fieldset class="cbi-section">
|
||||
<h2><%:Device Configuration%> - <%=devname%>
|
||||
<%local diff = mtkwifi.diff_profile(dev.profile)%>
|
||||
<%if next(diff) ~= nil then%>
|
||||
<span style="color:red;"> (<a href="javascript:location.href='<%=luci.dispatcher.build_url("admin", "network", "wifi", "reload", dev.devname)%>'"><%:Click here%></a> <%:to apply changes%>)</span>
|
||||
<%end%>
|
||||
</h2>
|
||||
|
||||
<table id="dev-cfg-basic" class="cbi-section-table">
|
||||
<tr>
|
||||
<td><%:Enable wireless device%></td>
|
||||
<td>
|
||||
<input type="radio" name="DevEnable" value="1" <% if cfgs.DevEnable == "1" then %> checked="checked"<% end %>/><%:Enable%>
|
||||
<input type="radio" name="DevEnable" value="0" <% if cfgs.DevEnable == "0" then %> checked="checked"<% end %>/><%:Disable%>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:Channel%></td>
|
||||
<td>
|
||||
<select style="width:auto; min-width:180px;" name="Channel" id="Channel" onchange="Channel_onchange(this.value)" <% if cfgs.ApCliEnable == "1" then %> disabled="disabled" <% end %>>
|
||||
</select>
|
||||
</td>
|
||||
<td><% if cfgs.ApCliEnable == "1" then %><%:APClient/Repeater Mode.%><% end %></td>
|
||||
</tr>
|
||||
<tr id="HT_EXTCHA_TR" style="display:none">
|
||||
<td><%:40MHz HT Ext Channel%></td>
|
||||
<td>
|
||||
<select style="width:auto; min-width:180px;" name="HT_EXTCHA" id="HT_EXTCHA" <% if cfgs.ApCliEnable == "1" or dev.__bw ~= "40" or dev.__bw ~= "60" then %> disabled="disabled" <% end %>>
|
||||
</select>
|
||||
</td>
|
||||
<td><% if cfgs.ApCliEnable == "1" then %><%:APClient/Repeater Mode.%><% end %></td>
|
||||
</tr>
|
||||
<tr id="VHT_Sec80_Channel_TR" style="display:none">
|
||||
<td><%:80MHz Second VHT Channel%></td>
|
||||
<td>
|
||||
<select style="width:auto; min-width:180px; " name="VHT_Sec80_Channel" id="VHT_Sec80_Channel" <% if cfgs.ApCliEnable == "1" or dev.__bw ~= "161" then %> disabled="disabled" <% end %>>
|
||||
</select>
|
||||
</td>
|
||||
<td><% if cfgs.ApCliEnable == "1" then %><%:APClient/Repeater Mode.%><% end %></td>
|
||||
</tr>
|
||||
<% if string.split(cfgs.WirelessMode,";")[1] == "16" or string.split(cfgs.WirelessMode,";")[1] == "17" or string.split(cfgs.WirelessMode,";")[1] == "18" then %>
|
||||
<tr>
|
||||
<td><%:BSS color%></td>
|
||||
<td>
|
||||
<input name="BssColor" id="BssColor" value="<%=cfgs.BSSColorValue%>"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:TWT Support%></td>
|
||||
<td>
|
||||
<select name="TWTSupport" style="width:auto">
|
||||
<option value="0" <% if cfgs.TWTSupport == "0" then %> selected="selected" <% end %>><%:Disable%></option>
|
||||
<option value="1" <% if cfgs.TWTSupport == "1" then %> selected="selected" <% end %>><%:Enable%></option>
|
||||
<option value="2" <% if cfgs.TWTSupport == "2" then %> selected="selected" <% end %>><%:Mandatory%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
|
||||
<input type="hidden" id="WirelessMode" value="<%=string.split(cfgs.WirelessMode,";")[1]%>">
|
||||
<tr>
|
||||
<td><%:Country Code%></td>
|
||||
<td>
|
||||
<select name="CountryCode" style="width:auto" id="CountryCode" onchange="CountryCode_onchange()">
|
||||
<option value="US" id="advCountryCodeUS" <% if cfgs.CountryCode == "US" then %> selected="selected"<% end %>><%:US%></option>
|
||||
<option value="JP" id="advCountryCodeJP" <% if cfgs.CountryCode == "JP" then %> selected="selected"<% end %>><%:JP%></option>
|
||||
<option value="FR" id="advCountryCodeFR" <% if cfgs.CountryCode == "FR" then %> selected="selected"<% end %>><%:FR%></option>
|
||||
<option value="IE" id="advCountryCodeIE" <% if cfgs.CountryCode == "IE" then %> selected="selected"<% end %>><%:IE%></option>
|
||||
<option value="CN" id="advCountryCodeCN" <% if cfgs.CountryCode == "CN" then %> selected="selected"<% end %>><%:CN%></option>
|
||||
<option value="NONE" id="advCountryCodeNONE"<% if cfgs.CountryCode == "NONE" then %> selected="selected"<% end %>><%:NONE%></option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:Country Region%></td>
|
||||
<td>
|
||||
<select style="width:auto; min-width:180px;" name="__cr" id="__cr" onchange="CountryRegion_onchange(this.value)">
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:Channel BandWidth%></td>
|
||||
<td>
|
||||
<select style="width:auto" name="__bw" id="__bw" onchange="Bw_onchange(this.options[this.options.selectedIndex].value)">
|
||||
<option value="20" <% if dev.__bw == "20" then %> selected="selected"<% end%>>20 MHz</option>
|
||||
<option value="40" <% if dev.__bw == "40" then %> selected="selected"<% end%>>40 MHz</option>
|
||||
<option value="60" <% if dev.__bw == "60" then %> selected="selected"<% end%>>20/40 MHz</option>
|
||||
<option value="80" <% if dev.__bw == "80" then %> selected="selected"<% end%>>80 MHz</option>
|
||||
<option value="160" <% if dev.__bw == "160" then %> selected="selected"<% end%>>160 MHz</option>
|
||||
<option value="161" <% if dev.__bw == "161" then %> selected="selected"<% end%>>80+80 MHz</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:TX Stream%></td>
|
||||
<td>
|
||||
<select name="HT_TxStream" style="width:auto">
|
||||
<% if dev.maxTxStream then %>
|
||||
<% for txStreamVal=1,dev.maxTxStream do%>
|
||||
<option value="<%=txStreamVal%>" <% if tonumber(cfgs.HT_TxStream) == txStreamVal then %>selected="selected"<% end %>><%=txStreamVal%></option>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<option value="1" <% if cfgs.HT_TxStream == "1" then %>selected="selected"<% end %>>1</option>
|
||||
<option value="2" <% if cfgs.HT_TxStream == "2" then %>selected="selected"<% end %>>2</option>
|
||||
<option value="3" <% if cfgs.HT_TxStream == "3" then %>selected="selected"<% end %>>3</option>
|
||||
<option value="4" <% if cfgs.HT_TxStream == "4" then %>selected="selected"<% end %>>4</option>
|
||||
<% end %>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:RX Stream%></td>
|
||||
<td>
|
||||
<select name="HT_RxStream" style="width:auto">
|
||||
<% if dev.maxRxStream then %>
|
||||
<% for rxStreamVal=1,dev.maxRxStream do%>
|
||||
<option value="<%=rxStreamVal%>" <% if tonumber(cfgs.HT_RxStream) == rxStreamVal then %>selected="selected"<% end %>><%=rxStreamVal%></option>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<option value="1" <% if cfgs.HT_RxStream == "1" then %>selected="selected"<% end %>>1</option>
|
||||
<option value="2" <% if cfgs.HT_RxStream == "2" then %>selected="selected"<% end %>>2</option>
|
||||
<option value="3" <% if cfgs.HT_RxStream == "3" then %>selected="selected"<% end %>>3</option>
|
||||
<option value="4" <% if cfgs.HT_RxStream == "4" then %>selected="selected"<% end %>>4</option>
|
||||
<% end %>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:TX Power%> (1-100)</td>
|
||||
<td>
|
||||
<input name="TxPower" id="TxPower" value="<%=cfgs.TxPower%>" />
|
||||
</td>
|
||||
</tr>
|
||||
<% if mtkwifi.band(string.split(cfgs.WirelessMode,";")[1]) == "5G" then %>
|
||||
<tr>
|
||||
<td>802.11H</td>
|
||||
<td>
|
||||
<input type="radio" name="IEEE80211H" value="1" <% if cfgs.IEEE80211H == "1" then %> checked="checked"<% end %>/><%:Enable%>
|
||||
<input type="radio" name="IEEE80211H" value="0" <% if cfgs.IEEE80211H == "0" then %> checked="checked"<% end %>/><%:Disable%>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%:DFS%></td>
|
||||
<td>
|
||||
<input type="radio" name="DfsEnable" value="1" <% if cfgs.DfsEnable == "1" then %> checked="checked"<% end %>/><%:Enable%>
|
||||
<input type="radio" name="DfsEnable" value="0" <% if cfgs.DfsEnable == "0" then %> checked="checked"<% end %>/><%:Disable%>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
<% if cfgs.MUTxRxEnable then %>
|
||||
<tr>
|
||||
<td><%:Beam Forming and MIMO Setting%></td>
|
||||
<td>
|
||||
<select name="__mimo" autocomplete="off" >
|
||||
<option value="0"<% if tonumber(dev.__mimo) == 0 then %> selected="selected"<% end %>> ETxBF + SU-MIMO </option>
|
||||
<option value="1"<% if tonumber(dev.__mimo) == 1 then %> selected="selected"<% end %>> ITxBF + SU-MIMO </option>
|
||||
<option value="2"<% if tonumber(dev.__mimo) == 2 then %> selected="selected"<% end %>> ITxBF + ETxBF + SU-MIMO </option>
|
||||
<% if not dev.mimoBand or dev.mimoBand == dev.dbdcBandName then %>
|
||||
<option value="3"<% if tonumber(dev.__mimo) == 3 then %> selected="selected"<% end %>> ETxBF + MU-MIMO </option>
|
||||
<option value="4"<% if tonumber(dev.__mimo) == 4 then %> selected="selected"<% end %>> ITxBF + ETxBF + MU-MIMO </option>
|
||||
<% end %>
|
||||
<option value="5"<% if tonumber(dev.__mimo) == 5 then %> selected="selected"<% end %>> <%:Disable%> TxBF </option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
<% if string.split(cfgs.WirelessMode,";")[1] == "16" or string.split(cfgs.WirelessMode,";")[1] == "17" or string.split(cfgs.WirelessMode,";")[1] == "18" then %>
|
||||
<tr>
|
||||
<td><%:Spatial Reuse%></td>
|
||||
<td>
|
||||
<input type="radio" name="SREnable" value="1" <% if cfgs.SREnable == "1" then %> checked="checked"<% end %>/><%:Enable%>
|
||||
<input type="radio" name="SREnable" value="0" <% if cfgs.SREnable == "0" then %> checked="checked"<% end %>/><%:Disable%>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
</table>
|
||||
</fieldset>
|
||||
<div class="cbi-page-actions">
|
||||
|
||||
<input class="cbi-button cbi-button-apply" name="__apply" value="<%:Save & Apply%>" type="submit">
|
||||
<input class="cbi-button cbi-button-apply" value="<%:Save%>" type="submit">
|
||||
<input class="cbi-button cbi-button-reset" value="<%:Reset%>" type="reset">
|
||||
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
function CountryCode_onchange(){
|
||||
var wMode = document.getElementById('WirelessMode').value;
|
||||
getCountryRegionList(wMode);
|
||||
}
|
||||
|
||||
function CountryRegion_onchange(country_region) {
|
||||
var wmode_o = document.getElementById('WirelessMode');
|
||||
var wmode;
|
||||
|
||||
if (wmode_o)
|
||||
wmode = wmode_o.value;
|
||||
|
||||
if (wmode == "")
|
||||
wmode = "<%=cfgs.WirelessMode%>";
|
||||
|
||||
getChannelList(wmode, country_region);
|
||||
}
|
||||
|
||||
function Channel_onchange (ch) {
|
||||
getBw(null, ch);
|
||||
}
|
||||
|
||||
function Bw_onchange(bw, ch) {
|
||||
var ch_val;
|
||||
|
||||
if (!ch){
|
||||
var ch_o = document.getElementById('Channel');
|
||||
|
||||
if (ch_o)
|
||||
ch_val = ch_o.value;
|
||||
if (ch_val == "")
|
||||
ch_val = "<%=cfgs.Channel%>";
|
||||
} else {
|
||||
ch_val = ch
|
||||
}
|
||||
|
||||
get5G2nd80MhzChannelList(bw, ch_val);
|
||||
getHTExtChannel(bw, ch_val);
|
||||
}
|
||||
|
||||
function disableCountryRegionAsPerCountryCode(){
|
||||
var wModeSelect = document.getElementById('WirelessMode');
|
||||
var wMode = wModeSelect.value;
|
||||
var cCode = document.getElementById('CountryCode').value;
|
||||
var cRegionSelect = document.getElementById('__cr');
|
||||
var invalidCR_2G = {
|
||||
US:[1,3,4,5,7,31,32,33],
|
||||
JP:[],
|
||||
FR:[4,5,31,33],
|
||||
IE:[4,5,31,33],
|
||||
CN:[4,5,31,33],
|
||||
NONE:[]
|
||||
};
|
||||
var invalidCR_5G = {
|
||||
US:[1,7,11,15,19,20,21,22,30,31,32,33,36,37],
|
||||
JP:[0,3,4,5,7,9,10,11,13,14,15,16,17,19,20,21,30,31,32,34,36,37],
|
||||
FR:[0,3,4,5,7,9,10,11,12,13,14,15,16,17,19,20,21,30,31,32,34,36,37],
|
||||
IE:[0,3,4,5,7,9,10,11,12,13,14,15,16,17,19,20,21,30,31,32,34,36,37],
|
||||
CN:[1,7,9,11,12,13,14,15,18,19,20,21,22,30,31,32,33,36,37],
|
||||
NONE:[]
|
||||
};
|
||||
if (is_mode_gband(wMode)){
|
||||
// Channel 14 should be disabled for all the Countries except JAPAN(JP) and NONE Country Code.
|
||||
// If WireleeMode is not in 'B only' mode, then Channel 14 should be disabled for Japan and NONE Country Code too.
|
||||
if(wMode != "1"){
|
||||
if(cCode == "JP"){
|
||||
invalidCR_2G["JP"]=[4,5,31,33];
|
||||
}
|
||||
else if(cCode == "NONE"){
|
||||
invalidCR_2G["NONE"]=[4,5,31,33];
|
||||
}
|
||||
}
|
||||
if((cCode == "JP" && invalidCR_2G["JP"].length > 0) ||
|
||||
(cCode == "NONE" && invalidCR_2G["NONE"].length > 0) ||
|
||||
((cCode != "JP") && (cCode != "NONE"))){
|
||||
for(var idx=0; idx < cRegionSelect.length; idx++){
|
||||
if(invalidCR_2G[cCode] && invalidCR_2G[cCode].indexOf(cRegionSelect.options[idx].value * 1) != -1){
|
||||
cRegionSelect.options[idx].disabled = true;
|
||||
cRegionSelect.options[idx].selected = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (is_mode_aband(wMode) && cCode != "NONE"){
|
||||
for(var idx=0; idx < cRegionSelect.length; idx++){
|
||||
if(invalidCR_5G[cCode] && invalidCR_5G[cCode].indexOf(cRegionSelect.options[idx].value * 1) != -1){
|
||||
cRegionSelect.options[idx].disabled = true;
|
||||
cRegionSelect.options[idx].selected = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
return cRegionSelect.value;
|
||||
}
|
||||
|
||||
function initCountryRegionList(list, mode){
|
||||
var select = document.getElementById('__cr');
|
||||
var cr = {};
|
||||
|
||||
if (is_mode_gband(mode))
|
||||
cr = "<%=cfgs.CountryRegion%>";
|
||||
else if (is_mode_aband(mode))
|
||||
cr = "<%=cfgs.CountryRegionABand%>";
|
||||
|
||||
var new_cr = initList(select, list, cr, "region");
|
||||
new_cr = disableCountryRegionAsPerCountryCode();
|
||||
|
||||
CountryRegion_onchange(new_cr);
|
||||
}
|
||||
|
||||
function getCountryRegionList(mode) {
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_country_region_list")%>', {mode:mode},
|
||||
function(x)
|
||||
{
|
||||
//console.log(x);
|
||||
//console.log(x.response);
|
||||
var json = eval(x.response);
|
||||
initCountryRegionList(json, mode);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function initChannelList(list) {
|
||||
/* choose auto select when no matching item in the lis */
|
||||
var select = document.getElementById('Channel');
|
||||
var ch = {};
|
||||
var new_ch = null;
|
||||
|
||||
ch.cval = select.value;
|
||||
ch.oval = "<%=cfgs.Channel%>";
|
||||
|
||||
var new_ch = initList(select, list, ch, "channel");
|
||||
Channel_onchange(new_ch);
|
||||
}
|
||||
|
||||
function getChannelList(mode, country_region) {
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_channel_list")%>', {mode:mode, country_region:country_region},
|
||||
function(x)
|
||||
{
|
||||
//console.log(x);
|
||||
//console.log(x.response);
|
||||
var json = eval(x.response);
|
||||
initChannelList(json);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function GetCountryRegion(mode) {
|
||||
var cr_o = document.getElementById('__cr');
|
||||
var cr = "";
|
||||
|
||||
if (cr_o) {
|
||||
cr = cr_o.value;
|
||||
}
|
||||
|
||||
if (cr == "") {
|
||||
if (is_mode_gband(mode)) {
|
||||
cr = "<%=cfgs.CountryRegion%>";
|
||||
} else if (is_mode_aband(mode)) {
|
||||
cr = "<%=cfgs.CountryRegionABand%>";
|
||||
} else {
|
||||
alert("Cannot get valid CountryRegion from invalid WireleeMode");
|
||||
}
|
||||
}
|
||||
|
||||
return cr;
|
||||
}
|
||||
|
||||
function getBw(mode, ch) {
|
||||
/* choose bw as wide as possible if modification is needed */
|
||||
var bw_sel = document.getElementById('__bw');
|
||||
var wModeSelect,wmode;
|
||||
|
||||
wModeSelect = document.getElementById('WirelessMode');
|
||||
if (!mode) {
|
||||
wmode = wModeSelect.value*1;
|
||||
} else {
|
||||
wmode = mode*1;
|
||||
}
|
||||
if( <%=string.split(cfgs.WirelessMode,";")[1]%> != 18 ){
|
||||
if (is_mode_legacy_only(wmode) || parseInt(ch) >= 165) {
|
||||
for (var idx=0; idx < bw_sel.length; idx++) {
|
||||
bw_sel.options[idx].disabled = false;
|
||||
|
||||
if (bw_sel.options[idx].value == 20)
|
||||
bw_sel.options[idx].selected = true;
|
||||
|
||||
if (bw_sel.options[idx].value > 20)
|
||||
bw_sel.options[idx].disabled = true;
|
||||
}
|
||||
} else if (is_ch_gband(ch)) {
|
||||
for (var idx=0; idx < bw_sel.length; idx++) {
|
||||
bw_sel.options[idx].disabled = false;
|
||||
|
||||
if ((bw_sel.options[idx].value == 60) && (bw_sel.selectedIndex > idx))
|
||||
bw_sel.options[idx].selected = true;
|
||||
|
||||
if (bw_sel.options[idx].value > 60)
|
||||
bw_sel.options[idx].disabled = true;
|
||||
}
|
||||
} else if (is_ch_aband(ch)) {
|
||||
var chosen60 = false;
|
||||
var bw160 = "<%=cfgs.VHT_BW%>"*1;
|
||||
|
||||
if (bw_sel.value == 60)
|
||||
chosen60 = 1;
|
||||
|
||||
for (var idx=0; idx < bw_sel.length; idx++) {
|
||||
bw_sel.options[idx].disabled = false;
|
||||
if (bw_sel.options[idx].value == 40 && chosen60 && bw160 == 0) {
|
||||
bw_sel.options[idx].selected = true;
|
||||
} else if (bw_sel.options[idx].value == 60) {
|
||||
bw_sel.options[idx].disabled = true;
|
||||
bw_sel.options[idx].selected = false;
|
||||
} else if (wmode == 8 && bw_sel.options[idx].value == 80) {
|
||||
bw_sel.options[idx].disabled = true;
|
||||
bw_sel.options[idx].selected = false;
|
||||
} else if (bw_sel.options[idx].value == 160 && chosen60 && bw160 == 1) {
|
||||
bw_sel.options[idx].selected = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var invalidChBwList = '<%=(dev.invalidChBwList and table.concat(dev.invalidChBwList,";"))%>'.split(";");
|
||||
if(invalidChBwList.length > 0){
|
||||
for (var idx=0; idx < bw_sel.length; idx++) {
|
||||
if(invalidChBwList.indexOf(bw_sel.options[idx].value) != -1){
|
||||
bw_sel.options[idx].disabled = true;
|
||||
bw_sel.options[idx].selected = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(wmode == 18 ) {
|
||||
for (var idx=0; idx < bw_sel.length; idx++) {
|
||||
bw_sel.options[idx].disabled = false;
|
||||
if(bw_sel.options[idx].value == 40 && ch>229){
|
||||
bw_sel.options[idx].disabled = true;
|
||||
bw_sel.options[idx].selected = false;
|
||||
}
|
||||
if(bw_sel.options[idx].value == 80 && ch>221){
|
||||
bw_sel.options[idx].disabled = true;
|
||||
bw_sel.options[idx].selected = false;
|
||||
}
|
||||
if(bw_sel.options[idx].value == 160 && ch>221){
|
||||
bw_sel.options[idx].disabled = true;
|
||||
bw_sel.options[idx].selected = false;
|
||||
}
|
||||
if(bw_sel.options[idx].value == 161 || bw_sel.options[idx].value == 60){
|
||||
bw_sel.options[idx].disabled = true;
|
||||
bw_sel.options[idx].selected = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
Bw_onchange(bw_sel.value, ch);
|
||||
}
|
||||
|
||||
function init5G2nd80MhzChannelList(list,ch,cr) {
|
||||
var select = document.getElementById('VHT_Sec80_Channel');
|
||||
var ch2 = {};
|
||||
var new_ch2 = null;
|
||||
|
||||
ch2.cval = select.value;
|
||||
ch2.oval = "<%=cfgs.VHT_Sec80_Channel%>";
|
||||
|
||||
initList(select, list, ch2, "channel");
|
||||
|
||||
if (select.length > 0) {
|
||||
document.getElementById("VHT_Sec80_Channel_TR").style.display = "";
|
||||
select.disabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
function get5G2nd80MhzChannelList(bw, ch) {
|
||||
document.getElementById("VHT_Sec80_Channel_TR").style.display = "none";
|
||||
var ch_5g_2nd = document.getElementById('VHT_Sec80_Channel');
|
||||
|
||||
ch_5g_2nd.disabled = true;
|
||||
|
||||
|
||||
if (ch == "0")
|
||||
return;
|
||||
|
||||
if (bw != "161" || ch == "0")
|
||||
return;
|
||||
|
||||
var mode = document.getElementById('WirelessMode');
|
||||
mode = mode.value*1;
|
||||
|
||||
var cr = GetCountryRegion(mode);
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_5G_2nd_80Mhz_channel_list")%>', {ch_cur:ch, country_region:cr},
|
||||
function(x)
|
||||
{
|
||||
//console.log(x);
|
||||
//console.log(x.response);
|
||||
var json = eval(x.response);
|
||||
init5G2nd80MhzChannelList(json,ch,cr);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function initHTExtChannelList(list,ch,cr) {
|
||||
var select = document.getElementById('HT_EXTCHA');
|
||||
var ch2 = {};
|
||||
var new_ch2 = null;
|
||||
|
||||
ch2.cval = select.value;
|
||||
ch2.oval = "<%=cfgs.HT_EXTCHA%>";
|
||||
|
||||
initList(select, list, ch2, "val");
|
||||
|
||||
if (select.length > 0) {
|
||||
document.getElementById("HT_EXTCHA_TR").style.display = "";
|
||||
select.disabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
function getHTExtChannel(bw, ch) {
|
||||
document.getElementById("HT_EXTCHA_TR").style.display = "none";
|
||||
|
||||
var ch_2g_ext = document.getElementById('HT_EXTCHA');
|
||||
|
||||
ch_2g_ext.disabled = true;
|
||||
|
||||
if (bw != "40" && bw != "60")
|
||||
return;
|
||||
|
||||
var mode = document.getElementById('WirelessMode');
|
||||
mode = mode.value*1;
|
||||
|
||||
// skip auto channel
|
||||
if(mode==18){
|
||||
if (ch == "0" || parseInt(ch) > 229)
|
||||
return;
|
||||
}
|
||||
else{
|
||||
if (ch == "0" || parseInt(ch) >= 165)
|
||||
return;
|
||||
}
|
||||
|
||||
var cr = GetCountryRegion(mode);
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_HT_ext_channel_list")%>', {mode:mode, ch_cur:ch, country_region:cr},
|
||||
function(x)
|
||||
{
|
||||
//console.log(x);
|
||||
//console.log(x.response);
|
||||
var json = eval(x.response);
|
||||
initHTExtChannelList(json,ch,cr);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function is_mode_legacy_only(mode) {
|
||||
var imode = mode*1;
|
||||
|
||||
return ((imode >= 0) && (imode <= 4));
|
||||
}
|
||||
|
||||
function is_mode_gband(mode) {
|
||||
var imode = mode*1;
|
||||
var gband_mode_list = [0,1,4,6,7,9,16];
|
||||
var i;
|
||||
|
||||
for (i = 0; i < gband_mode_list.length; i++){
|
||||
if( gband_mode_list[i] == imode )
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function is_mode_aband(mode) {
|
||||
var imode = mode*1;
|
||||
var aband_mode_list = [2,8,11,14,15,17,18];
|
||||
var i;
|
||||
|
||||
for (i = 0; i < aband_mode_list.length; i++){
|
||||
if( aband_mode_list[i] == imode )
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function is_ch_gband(ch) {
|
||||
ch = ch*1;
|
||||
|
||||
if (ch == 0) {
|
||||
var wmode = document.getElementById('WirelessMode');
|
||||
|
||||
return is_mode_gband(wmode.value);
|
||||
}
|
||||
|
||||
return ((ch > 0) && (ch <= 14));
|
||||
}
|
||||
|
||||
function is_ch_aband(ch) {
|
||||
ch = ch*1;
|
||||
|
||||
if (ch == 0) {
|
||||
var wmode = document.getElementById('WirelessMode');
|
||||
|
||||
return is_mode_aband(wmode.value);
|
||||
}
|
||||
|
||||
return ((ch >= 36 ) && (ch <= 165));
|
||||
}
|
||||
|
||||
function initList(selobj, list, selvals, value, text){
|
||||
var sel = {};
|
||||
var id = selobj.id;
|
||||
var noChannelGrp = false;
|
||||
var only2G = false;
|
||||
|
||||
if (typeof(selvals) != "object")
|
||||
sel[0] = selvals;
|
||||
else
|
||||
sel = selvals;
|
||||
|
||||
selobj.innerHTML = "";
|
||||
for (var i in list) {
|
||||
if (value != "region") {
|
||||
<% if bands == 3 and mtkwifi.band(string.split(cfgs.WirelessMode,";")[1]) == "5G" then %>
|
||||
<% if cfgs.ChannelGrp == "0:0:1:1" then %>
|
||||
if (list[i].channel == 0 || list[i].channel >= 100){
|
||||
<% elseif cfgs.ChannelGrp == "1:1:0:0" then %>
|
||||
if (list[i].channel <= 64){
|
||||
<% else %>
|
||||
noChannelGrp = true;
|
||||
if (noChannelGrp){
|
||||
<% end %>
|
||||
var opt = document.createElement('option');
|
||||
|
||||
if(value)
|
||||
opt.value = list[i][value];
|
||||
else
|
||||
opt.value = list[i].value;
|
||||
|
||||
if(text)
|
||||
opt.text = list[i][text];
|
||||
else
|
||||
opt.text = list[i].text;
|
||||
|
||||
selobj.appendChild(opt);
|
||||
}
|
||||
<% else %>
|
||||
only2G = true;
|
||||
<% end %>
|
||||
}
|
||||
|
||||
if (only2G || value == "region"){
|
||||
var opt = document.createElement('option');
|
||||
|
||||
if(value)
|
||||
opt.value = list[i][value];
|
||||
else
|
||||
opt.value = list[i].value;
|
||||
|
||||
if(text)
|
||||
opt.text = list[i][text];
|
||||
else
|
||||
opt.text = list[i].text;
|
||||
|
||||
selobj.appendChild(opt);
|
||||
}
|
||||
}
|
||||
|
||||
var selv = null;
|
||||
for (var k in sel) {
|
||||
//console.log("[initList][" + id + "] sel[" + k + "]=" + sel[k]);
|
||||
for (var i=0; i < selobj.length; i++){
|
||||
if (selobj.options[i].value == sel[k]){
|
||||
selobj.options[i].selected = true;
|
||||
selv = sel[k];
|
||||
//console.log("[initList][" + id + "] found selv=" + selv);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (selv) break;
|
||||
}
|
||||
|
||||
if (!selv) {
|
||||
selv = selobj.value;
|
||||
//console.log("[initList][" + id + "] !selv, selv=" + selv);
|
||||
}
|
||||
|
||||
return selv;
|
||||
}
|
||||
|
||||
function ValidateAdvancedSettings()
|
||||
{
|
||||
var tmpVal = document.getElementById("TxPower").value;
|
||||
if(isNaN(tmpVal) || !/^\d{1,3}$/.test(tmpVal) || parseInt(tmpVal) < 1 || parseInt(tmpVal) > 100){
|
||||
alert("TX Power is incorrect!\nPlease enter an integer number between 1 to 100 inclusive.");
|
||||
document.getElementById("TxPower").focus();
|
||||
document.getElementById("TxPower").select();
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function ValidateAllSettings(){
|
||||
if( !ValidateAdvancedSettings() ){
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function get_apply_status_cb(rsp)
|
||||
{
|
||||
try{
|
||||
var r = JSON.parse(rsp);
|
||||
}
|
||||
catch(e){
|
||||
return;
|
||||
}
|
||||
if(r.status == "ON_PROGRESS"){
|
||||
var u = confirm("Device is applying the saved settings now!\n" +
|
||||
"It is recommended to wait until all the saved settings are applied.\n" +
|
||||
"Please click on 'OK' button to wait for the device.\n" +
|
||||
"or click on 'Cancel' button to configure the settings available in current web-page.");
|
||||
if (u == true) {
|
||||
location = '<%=luci.dispatcher.build_url("admin", "network", "wifi", "loading")%>' + window.location.pathname;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function get_apply_status()
|
||||
{
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_apply_status")%>', null,
|
||||
function(x)
|
||||
{
|
||||
console.log(x);
|
||||
get_apply_status_cb(x.response);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
window.onload = function() {
|
||||
var mode = '<%=string.split(cfgs.WirelessMode,";")[1]%>'
|
||||
var cr = GetCountryRegion(mode);
|
||||
getCountryRegionList(mode, cr);
|
||||
get_apply_status();
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<%+footer%>
|
@ -0,0 +1,90 @@
|
||||
<%#
|
||||
File name : mtk_wifi_loading.htm
|
||||
This file is used in WebUI based on LuCI to handle the loading event.
|
||||
%>
|
||||
<%+header%>
|
||||
<%
|
||||
local disp = require "luci.dispatcher"
|
||||
local request = disp.context.request
|
||||
local url = "/"..table.concat(request,'/',5)
|
||||
%>
|
||||
<h2><%:Wireless%></h2>
|
||||
<div class="alert-message" id="BusyMsg">
|
||||
<img src="<%=resource%>/icons/loading.gif" alt="" style="vertical-align:middle" />
|
||||
<big><strong><%:Please wait while the settings are being applied.%></strong></big>
|
||||
</div>
|
||||
<div class="alert-message error" id="TimeoutMsgDiv" style="display:none">
|
||||
<big><strong id="TimeoutMsg">Device is taking too much time to apply the settings!</strong></big>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function visit_url(url)
|
||||
{
|
||||
window.onbeforeunload = function() {};
|
||||
if(url && url.indexOf('<%=controller%>') != -1){
|
||||
location = url;
|
||||
}
|
||||
else{
|
||||
location = '<%=luci.dispatcher.build_url("admin", "network", "wifi")%>';
|
||||
}
|
||||
}
|
||||
|
||||
function get_apply_status_cb(rsp, remNumTries)
|
||||
{
|
||||
try{
|
||||
var r = JSON.parse(rsp);
|
||||
if(r.status == "DONE"){
|
||||
visit_url('<%=url%>');
|
||||
return;
|
||||
}
|
||||
else if(r.status == "REBOOT"){
|
||||
visit_url('<%=luci.dispatcher.build_url("admin", "network", "wifi", "apply_reboot")%>');
|
||||
return;
|
||||
}
|
||||
}
|
||||
catch(e){}
|
||||
finally{
|
||||
remNumTries -= 1;
|
||||
if(remNumTries > 0){
|
||||
window.setTimeout(get_apply_status, 5000, remNumTries);
|
||||
}
|
||||
else{
|
||||
show_header();
|
||||
document.getElementById("TimeoutMsgDiv").style.display = '';
|
||||
document.getElementById("BusyMsg").style.display = 'none';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function get_apply_status(remNumTries)
|
||||
{
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_apply_status")%>', null,
|
||||
function(x)
|
||||
{
|
||||
console.log(x);
|
||||
get_apply_status_cb(x.response, remNumTries);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function show_header()
|
||||
{
|
||||
document.getElementsByTagName("HEADER")[0].style.display = "block";
|
||||
}
|
||||
|
||||
function hide_header()
|
||||
{
|
||||
document.getElementsByTagName("HEADER")[0].style.display = "none";
|
||||
}
|
||||
|
||||
window.onload = function(){
|
||||
hide_header();
|
||||
window.setTimeout(get_apply_status, 5000, 180);
|
||||
}
|
||||
|
||||
window.onbeforeunload = function(evt) {
|
||||
evt.returnValue = "Saved data have not been applied yet! Are you sure?";
|
||||
return evt.returnValue;
|
||||
}
|
||||
</script>
|
||||
<%+footer%>
|
@ -0,0 +1,557 @@
|
||||
<%+header%>
|
||||
<!--
|
||||
This module is a demo to configure MTK' proprietary WiFi driver.
|
||||
Basic idea is to bypass uci and edit wireless profile (mt76xx.dat) directly.
|
||||
LuCI's WiFi configuration is more logical and elegent, but it's quite tricky to
|
||||
translate uci into MTK's WiFi profile (like we did in "uci2dat").
|
||||
|
||||
Hua Shao <nossiac@163.com>
|
||||
-->
|
||||
|
||||
<%
|
||||
local mtkwifi = require("mtkwifi")
|
||||
local devs = mtkwifi.get_all_devs()
|
||||
local l1dat, l1 = mtkwifi.__get_l1dat()
|
||||
local dridx = l1.DEV_RINDEX
|
||||
local main_ifname
|
||||
local chipname
|
||||
%>
|
||||
|
||||
<style>
|
||||
table,td,th
|
||||
{
|
||||
border-top:1px solid ;
|
||||
border-spacing: 0;
|
||||
border-color:#E0E0E0;
|
||||
}
|
||||
</style>
|
||||
|
||||
<h2><%:Wireless%></h2>
|
||||
|
||||
<% if #devs == 0 then %>
|
||||
<div class="alert-message">
|
||||
<big><strong><%:No wireless device found!%></strong></big>
|
||||
</div>
|
||||
<% else %>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<table class="cbi-section-table" style="empty-cells:hide">
|
||||
<% for _,dev in ipairs(devs) do %>
|
||||
<% main_ifname = l1dat and l1dat[dridx][dev.devname].main_ifname or dbdc_prefix[mainidx][subidx].."0" %>
|
||||
<% if mtkwifi.exists("/sys/class/net/"..main_ifname) then %>
|
||||
<!-- physical device -->
|
||||
<tbody>
|
||||
<% if chipname ~= string.split(dev.devname,".")[1].."."..(dev.mainidx) then %>
|
||||
<% chipname = string.split(dev.devname,".")[1].."."..(dev.mainidx) %>
|
||||
<tr style="height:45px">
|
||||
<td style="padding:15px;">
|
||||
<img src="/luci-static/resources/icons/wifi_big.png">
|
||||
</td>
|
||||
<td colspan="2" style="text-align:left">
|
||||
<big><strong title="<%=dev.profile%>"> <%=string.split(dev.devname,".")[1]%></strong></big>
|
||||
<%if not dev.vifs then%>
|
||||
<span style="color:red;">* <%:FATAL ERROR: Incorrect Profile Settings%></span>
|
||||
<%end%>
|
||||
<br>
|
||||
<%if dev.version then%>
|
||||
<span> <%:Driver version%>: <%=dev.version%> <br/></span>
|
||||
<%end%>
|
||||
</td>
|
||||
<td style="width:310px;text-align:right">
|
||||
<div id="ActionBtns_<%=string.split(dev.devname,".")[1]%>">
|
||||
<button class="cbi-button cbi-button-edit" onclick="visit_url('<%=string.split(dev.devname,".")[1]%>',
|
||||
'<%=luci.dispatcher.build_url("admin", "network", "wifi", "chip_cfg_view", dev.devname)%>')"><%:CONFIG%></button>
|
||||
</div>
|
||||
<div id="BusyText_<%=string.split(dev.devname,".")[1]%>" style="display:none">
|
||||
<big><strong><%:Processing request.%></strong></big>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
<tr>
|
||||
<td style="width:56px"></td>
|
||||
<td colspan="2" style="text-align:left;padding-left:25px;">
|
||||
<big><strong title="<%=dev.profile%>"><%=dev.devname%></strong></big>
|
||||
<%local diff = mtkwifi.diff_profile(dev.profile)%>
|
||||
<%if next(diff) ~= nil then%>
|
||||
<span style="color:red;">* <%:need reload to apply changes%></span>
|
||||
<%end%>
|
||||
<br>
|
||||
<%local cfgs = mtkwifi.load_profile(dev.profile)%>
|
||||
<span> <%:Current Band%>: <%=mtkwifi.band(string.split(cfgs.WirelessMode,";")[1])%> <br/> </span>
|
||||
<% if dev.Enable == "0" then%>
|
||||
<span style="color:red;"> <%:Wireless device is disabled%> </span>
|
||||
<%else%>
|
||||
<span> <%:Work mode%>: <% if dev.ApCliEnable == "1" then %> APCli <% else %> AP <% end %> <br/> </span>
|
||||
<%local temp = mtkwifi.get_temp(dev.devname)%>
|
||||
<%if temp then%>
|
||||
<span> <%:Tempature%>: <%=temp%>°C <br/> </span>
|
||||
<%end%>
|
||||
<%local txpwr = mtkwifi.get_txpwr(dev.devname)%>
|
||||
<%if txpwr then%>
|
||||
<span> <%:Tx Power%>: <%=txpwr%> dbm <br/> </span>
|
||||
<%end%>
|
||||
<%end%>
|
||||
</td>
|
||||
<td style="width:310px;text-align:right">
|
||||
<div id="ActionBtns_<%=dev.devname%>">
|
||||
<%if not dev.vifs then%>
|
||||
<button class="cbi-button cbi-button-apply" id="reset" onclick="visit_url('<%=dev.devname%>',
|
||||
'<%=luci.dispatcher.build_url("admin", "network", "wifi", "reset_to_defaults", dev.devname)%>')"><%:Restore Profile to Factory Settings%></button>
|
||||
<%else%>
|
||||
<button class="cbi-button cbi-button-reset" onclick="visit_url_confirm('<%:Are you sure to RELOAD%> <%=dev.devname%>?',
|
||||
'<%=dev.devname%>','<%=luci.dispatcher.build_url("admin", "network", "wifi", "reload", dev.devname)%>')"><%:RELOAD%></button>
|
||||
<button class="cbi-button cbi-button-edit" onclick="visit_url('<%=dev.devname%>',
|
||||
'<%=luci.dispatcher.build_url("admin", "network", "wifi", "dev_cfg_view", dev.devname)%>')"><%:CONFIG%></button>
|
||||
<button class="cbi-button cbi-button-add" onclick='add_vif("<%=dev.devname%>","<%=dev.vifs.__prefix%>","<%=dev.maxVif%>")'><%:ADD%></button>
|
||||
<%end%>
|
||||
</div>
|
||||
<div id="BusyText_<%=dev.devname%>" style="display:none">
|
||||
<big><strong><%:Processing request.%></strong></big>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<!-- /physical device -->
|
||||
<% if dev.vifs and dev.Enable == "1" then%>
|
||||
<!-- network list -->
|
||||
<% for _,vif in ipairs(dev.vifs) do %>
|
||||
<tr class="cbi-section-table-row cbi-rowstyle-1">
|
||||
<td></td>
|
||||
<td class="cbi-value-field" style="width:16px; padding:3px;padding-left:40px;">
|
||||
<% if vif.state == "up" then %>
|
||||
<img src="/luci-static/resources/icons/signal-75-100.png">
|
||||
<% else %>
|
||||
<img src="/luci-static/resources/icons/signal-none.png">
|
||||
<% end %>
|
||||
</td>
|
||||
<td class="cbi-value-field" style="vertical-align:middle; text-align:left; padding:3px">
|
||||
<strong><%:Interface%>:</strong> <%=vif.vifname%> |
|
||||
<strong><%:Type%>:</strong> AP |
|
||||
<strong>SSID:</strong>
|
||||
<span id="SSID_<%=vif.vifname%>">
|
||||
<% if vif.__ssid == "" then %>
|
||||
<span style="color:red;"><%:Error: value not present in dat file%></span>
|
||||
<% else %>
|
||||
<span> <%=vif.__ssid and vif.__ssid:gsub(" "," ") or nil%> <% end %> </span>
|
||||
</span> |
|
||||
<strong><%:Channel%>:</strong>
|
||||
<span id="CHANNEL_<%=vif.vifname%>"><%=vif.__channel or dev.Channel%></span>
|
||||
<br>
|
||||
<% if vif.state == "up" then %>
|
||||
<strong>BSSID:</strong> <span id="BSSID_<%=vif.vifname%>"><%=vif.__bssid%></span> | <strong><%:Wireless Mode%>:</strong> <span><%=dev.WirelessModeList[tonumber(vif.__wirelessmode)]%></span>
|
||||
<% else %>
|
||||
<%:Wireless is disabled or not associated%>
|
||||
<% end %>
|
||||
</td>
|
||||
<td class="cbi-value-field" style="text-align:right">
|
||||
<div id="ActionBtns_<%=vif.vifname%>">
|
||||
<% if not vif.state then %>
|
||||
<button class="cbi-button cbi-button-apply" onclick="alert('Please click on Reload button of ' + '<%=dev.devname%>' + ' device to enable this interface.')"><%:ENABLE%></button>
|
||||
<% elseif vif.state == "up" then %>
|
||||
<button class="cbi-button cbi-button-reset" onclick="visit_url_confirm('<%:Are you sure to DISABLE%> <%=vif.vifname%>?',
|
||||
'<%=vif.vifname%>','<%=luci.dispatcher.build_url("admin", "network", "wifi", "vif_disable", vif.vifname)%>')"><%:DISABLE%></button>
|
||||
<% else %>
|
||||
<button class="cbi-button cbi-button-apply" onclick="visit_url('<%=vif.vifname%>',
|
||||
'<%=luci.dispatcher.build_url("admin", "network", "wifi", "vif_enable", vif.vifname)%>')"><%:ENABLE%></button>
|
||||
<% end %>
|
||||
<button class="cbi-button cbi-button-edit" onclick="visit_url('<%=vif.vifname%>',
|
||||
'<%=luci.dispatcher.build_url("admin", "network", "wifi", "vif_cfg_view", dev.devname, vif.vifname)%>')"><%:CONFIG%></button>
|
||||
<button class="cbi-button cbi-button-remove" onclick="visit_url_confirm('<%:Are you sure to REMOVE%> <%=vif.vifname%>?',
|
||||
'<%=vif.vifname%>','<%=luci.dispatcher.build_url("admin", "network", "wifi", "vif_del", dev.devname, vif.vifname)%>')"><%:REMOVE%></button>
|
||||
</div>
|
||||
<div id="BusyText_<%=vif.vifname%>" style="display:none">
|
||||
<big><strong><%:Processing request.%></strong></big>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
<!-- /network list -->
|
||||
<!-- apcli list -->
|
||||
<% if dev.apcli then %>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td class="cbi-value-field" style="width:16px; padding:3px;padding-left:40px;">
|
||||
<% if dev.apcli.state == "up" then %>
|
||||
<img src="/luci-static/resources/icons/signal-75-100.png">
|
||||
<% else %>
|
||||
<img src="/luci-static/resources/icons/signal-none.png">
|
||||
<% end %>
|
||||
</td>
|
||||
<td class="cbi-value-field" style="vertical-align:middle; text-align:left; padding:3px"><strong><%:Interface%>:</strong> <%=dev.apcli.devname%> | <strong><%:Type%>:</strong> STA | <strong><%:Status%>:</strong> <span id="ConnStatus_<%=dev.apcli.devname%>"><% if dev.ApCliEnable ~= "1" then %> <%:Disconnected%> <% end %></span>
|
||||
<br>
|
||||
<div id="LoadingBar_<%=dev.apcli.devname%>" <% if dev.ApCliEnable ~= "1" then %> style="display:none" <% end %>>
|
||||
<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="width:20px;height:20px;vertical-align:middle;"/> <cite> <%:Loading connection information of%> <%=dev.apcli.devname%></cite>
|
||||
</div>
|
||||
<div id="ConnInfo_<%=dev.apcli.devname%>" style="display:none">
|
||||
<strong>BSSID:</strong> <span id="ApCliBssid_<%=dev.apcli.devname%>"></span> |
|
||||
<strong>SSID:</strong> <span id="ApCliSsid_<%=dev.apcli.devname%>"></span>
|
||||
</div>
|
||||
<span id="DisConnMsg_<%=dev.apcli.devname%>" <% if dev.ApCliEnable == "1" then %> style="display:none" <% end %>><%:Wireless is disabled or not associated%></span>
|
||||
</td>
|
||||
<td style="text-align:right">
|
||||
<div id="ActionBtns_<%=dev.apcli.devname%>">
|
||||
<% if dev.ApCliEnable ~= "1" then %>
|
||||
<% if dev.apcli.state == "up" then %>
|
||||
<button class="cbi-button cbi-button-reset" onclick="visit_url_confirm('<%:Are you sure to DISABLE%> <%=dev.apcli.devname%>?',
|
||||
'<%=dev.apcli.devname%>','<%=luci.dispatcher.build_url("admin", "network", "wifi", "vif_disable", dev.apcli.vifname)%>')"><%:DISABLE%></button>
|
||||
<button class="cbi-button cbi-button-reload" onclick="visit_url_confirm('<%:Are you sure to RECONNECT%> <%=dev.apcli.devname%>?',
|
||||
'<%=dev.apcli.devname%>','<%=luci.dispatcher.build_url("admin", "network", "wifi", "apcli_connect", dev.devname, dev.apcli.vifname)%>')"><%:RECONNECT%></button>
|
||||
<% end %>
|
||||
<button class="cbi-button cbi-button-edit" onclick="visit_url('<%=dev.apcli.devname%>',
|
||||
'<%=luci.dispatcher.build_url("admin", "network", "wifi", "apcli_cfg_view", dev.devname, dev.apcli.vifname)%>')"><%:CONFIG%></button>
|
||||
<% else %>
|
||||
<button class="cbi-button cbi-button-reset" style="display:none" id="ApCliDownBtn_<%=dev.apcli.devname%>" onclick="visit_url_confirm('<%:Are you sure to DISABLE%> <%=dev.apcli.devname%>?',
|
||||
'<%=dev.apcli.devname%>','<%=luci.dispatcher.build_url("admin", "network", "wifi", "vif_disable", dev.apcli.vifname)%>')"><%:DISABLE%></button>
|
||||
<button class="cbi-button cbi-button-apply" style="display:none" id="ApCliUpBtn_<%=dev.apcli.devname%>" onclick="visit_url('<%=dev.apcli.devname%>',
|
||||
'<%=luci.dispatcher.build_url("admin", "network", "wifi", "vif_enable", dev.apcli.vifname)%>')"><%:ENABLE%></button>
|
||||
<button class="cbi-button cbi-button-remove" style="display:none" id="ApCliDisConnBtn_<%=dev.apcli.devname%>" onclick="visit_url_confirm('<%:Are you sure to DISCONNECT%> <%=dev.apcli.devname%>?',
|
||||
'<%=dev.apcli.devname%>','<%=luci.dispatcher.build_url("admin", "network", "wifi", "apcli_disconnect", dev.devname, dev.apcli.vifname)%>')"><%:DISCONNECT%></button>
|
||||
<button class="cbi-button cbi-button-reload" style="display:none" id="ApCliConnBtn_<%=dev.apcli.devname%>" onclick="visit_url_confirm('<%:Are you sure to RECONNECT%> <%=dev.apcli.devname%>?',
|
||||
'<%=dev.apcli.devname%>','<%=luci.dispatcher.build_url("admin", "network", "wifi", "apcli_connect", dev.devname, dev.apcli.vifname)%>')"><%:RECONNECT%></button>
|
||||
<button class="cbi-button cbi-button-edit" style="display:none" id="ApCliCfgBtn_<%=dev.apcli.devname%>" onclick="visit_url('<%=dev.apcli.devname%>',
|
||||
'<%=luci.dispatcher.build_url("admin", "network", "wifi", "apcli_cfg_view", dev.devname, dev.apcli.vifname)%>')"><%:CONFIG%></button>
|
||||
<% end %>
|
||||
</div>
|
||||
<div id="BusyText_<%=dev.apcli.devname%>" style="display:none">
|
||||
<big><strong><%:Processing request.%></strong></big>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
<!-- /apcli list -->
|
||||
<% end %>
|
||||
</tbody>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</table>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="cbi-section">
|
||||
<h2><%:Station List%></h2>
|
||||
<table class="cbi-section-table" style="margin: auto" id="iw-assoclist">
|
||||
<tr class="cbi-section-table-titles">
|
||||
<th class="cbi-section-table-cell"><%:Interface%></th>
|
||||
<th class="cbi-section-table-cell">SSID</th>
|
||||
<th class="cbi-section-table-cell"><%:MAC-Address%></th>
|
||||
<th class="cbi-section-table-cell"><%:Hostname%></th>
|
||||
<th class="cbi-section-table-cell"><%:Security%></th>
|
||||
<th class="cbi-section-table-cell"><%:Signal%> (dBm)</th>
|
||||
<th class="cbi-section-table-cell"><%:TX Rate%></th>
|
||||
<th class="cbi-section-table-cell"><%:RX Rate%></th>
|
||||
<th class="cbi-section-table-cell"><%:Connected Time%></th>
|
||||
</tr>
|
||||
<tr class="cbi-section-table-row cbi-rowstyle-2">
|
||||
<td class="cbi-value-field" colspan="9">
|
||||
<em><%:Collecting data...%></em>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
<% end %>
|
||||
|
||||
<script>
|
||||
|
||||
function clean_stalist_table()
|
||||
{
|
||||
var table = document.getElementById('iw-assoclist');
|
||||
//console.log("clean_aplist_table.aplist len=" + table.rows.length);
|
||||
while(table.rows.length > 1)
|
||||
table.deleteRow(-1);
|
||||
}
|
||||
|
||||
function is_rssi_valid(rssi)
|
||||
{
|
||||
if (rssi == "-109" || rssi == "-127")
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
function insert_stalist_table(ifname, ssid, sta_list)
|
||||
{
|
||||
var i, tr_row, td_cell;
|
||||
var rssi_str, host_str;
|
||||
var tableid = document.getElementById('iw-assoclist');
|
||||
|
||||
for (i = 0; sta_list[i] ; i++){
|
||||
//console.log(sta_list[i]);
|
||||
tr_row = tableid.insertRow(-1);
|
||||
|
||||
tr_row.align = "center";
|
||||
td_cell = tr_row.insertCell(-1);
|
||||
td_cell.innerHTML = ifname;
|
||||
|
||||
td_cell = tr_row.insertCell(-1);
|
||||
td_cell.innerHTML = ssid;
|
||||
|
||||
td_cell = tr_row.insertCell(-1);
|
||||
td_cell.innerHTML = sta_list[i].MacAddr;
|
||||
|
||||
host_str = sta_list[i].hostname
|
||||
if (sta_list[i].ipv4 != "")
|
||||
host_str = host_str + ", " + sta_list[i].ipv4
|
||||
if (sta_list[i].ipv6 != "")
|
||||
host_str = host_str + "<br>" + sta_list[i].ipv6
|
||||
td_cell = tr_row.insertCell(-1);
|
||||
td_cell.innerHTML = host_str;
|
||||
|
||||
td_cell = tr_row.insertCell(-1);
|
||||
td_cell.innerHTML = sta_list[i].security;
|
||||
|
||||
rssi_str = sta_list[i].AvgRssi0;
|
||||
if (is_rssi_valid(sta_list[i].AvgRssi1))
|
||||
rssi_str = rssi_str + ", " + sta_list[i].AvgRssi1;
|
||||
if (is_rssi_valid(sta_list[i].AvgRssi2))
|
||||
rssi_str = rssi_str + ", " + sta_list[i].AvgRssi2;
|
||||
if (is_rssi_valid(sta_list[i].AvgRssi3))
|
||||
rssi_str = rssi_str + ", " + sta_list[i].AvgRssi3;
|
||||
td_cell = tr_row.insertCell(-1);
|
||||
td_cell.innerHTML = rssi_str;
|
||||
|
||||
//TxRate
|
||||
td_cell = tr_row.insertCell(-1);
|
||||
td_cell.innerHTML = sta_list[i].TxRate + "Mbps," + sta_list[i].Bw+ "MHz" + "<br>" + sta_list[i].PhyMode + ", " + sta_list[i].Mcs + ", " + sta_list[i].Gi;
|
||||
|
||||
//RxRate
|
||||
td_cell = tr_row.insertCell(-1);
|
||||
td_cell.innerHTML = sta_list[i].RxRate + "Mbps," + sta_list[i].LastBw + "MHz" + "<br>" + sta_list[i].LastPhyMode + ", " + sta_list[i].LastMcs + ", " + sta_list[i].LastGi;
|
||||
|
||||
td_cell = tr_row.insertCell(-1);
|
||||
td_cell.innerHTML = sta_list[i].Hr + ":" + sta_list[i].Min + ":" + sta_list[i].Sec;
|
||||
}
|
||||
}
|
||||
|
||||
function disable_all_buttons()
|
||||
{
|
||||
var inp = document.getElementsByTagName("BUTTON");
|
||||
for(var idx=0; idx < inp.length; idx++){
|
||||
inp[idx].disabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
function enable_all_buttons()
|
||||
{
|
||||
var inp = document.getElementsByTagName("BUTTON");
|
||||
for(var idx=0; idx < inp.length; idx++){
|
||||
inp[idx].disabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
function visit_url(idSuffix,to)
|
||||
{
|
||||
//disable_all_buttons();
|
||||
//document.getElementById("ActionBtns_"+idSuffix).style.display = "none";
|
||||
//document.getElementById("BusyText_"+idSuffix).style.display = "";
|
||||
location.href = to;
|
||||
}
|
||||
|
||||
function visit_url_confirm(msg, idSuffix, to) {
|
||||
var i = confirm(msg);
|
||||
if (i)
|
||||
visit_url(idSuffix,to);
|
||||
}
|
||||
|
||||
function add_vif(devName, vifPrefix, maxVif)
|
||||
{
|
||||
if (!confirm('<%:Are you sure to ADD wireless interface?%>'))
|
||||
return;
|
||||
disable_all_buttons();
|
||||
document.getElementById("ActionBtns_"+devName).style.display = "none";
|
||||
document.getElementById("BusyText_"+devName).style.display = "";
|
||||
if(isNaN(maxVif) || !/^\d{1,}$/.test(maxVif)){
|
||||
alert("Failed to add a new interface!\nERROR: Incorrect maximum supported VIF setting!\nmaxVif = " + maxVif);
|
||||
location.reload(true);
|
||||
return;
|
||||
}
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_bssid_num")%>/' + devName, null,
|
||||
function(x)
|
||||
{
|
||||
try{
|
||||
var resp = JSON.parse(x.response);
|
||||
if(resp["status"] == "SUCCESS"){
|
||||
if(isNaN(resp["bssidNum"]) || !/^\d{1,}$/.test(resp["bssidNum"]) || parseInt(resp["bssidNum"]) > parseInt(maxVif)){
|
||||
alert("Failed to add a new interface!\nERROR: Device settings have been corrupted!\nBssidNum in Response is: " + resp["bssidNum"]);
|
||||
location.reload(true);
|
||||
}
|
||||
else if(parseInt(resp["bssidNum"]) == parseInt(maxVif)){
|
||||
alert("As the Device " + devName + " supports maximum " + maxVif + " virtual interfaces, no more virtual interfaces can be added!");
|
||||
}
|
||||
else{
|
||||
location.href = '<%=luci.dispatcher.build_url("admin", "network", "wifi", "vif_add_view")%>/' + devName + '/' + vifPrefix;
|
||||
}
|
||||
}
|
||||
else{
|
||||
alert("Failed to add a new interface!\nERROR: " + resp["status"]);
|
||||
}
|
||||
}
|
||||
catch(e){
|
||||
alert("Failed to add a new interface!\nERROR: Incorrect response received!");
|
||||
console.log("Failed to add a new interface!\nERROR: [" + e.name + "] " + e.message);
|
||||
}
|
||||
finally{
|
||||
enable_all_buttons();
|
||||
document.getElementById("ActionBtns_"+devName).style.display = "";
|
||||
document.getElementById("BusyText_"+devName).style.display = "none";
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
var stainfo = [];
|
||||
var stainfo_inited = 0;
|
||||
function staInfoHandler()
|
||||
{
|
||||
for (var i=0; stainfo[i]; i++) {
|
||||
//console.log(stainfo[i].ifname);
|
||||
XHR.poll(3, "<%=luci.dispatcher.build_url("admin", "network", "wifi", "sta_info")%>/" + stainfo[i].ifname, null,
|
||||
function(x)
|
||||
{
|
||||
try{
|
||||
stainfo_inited = 1;
|
||||
//console.log(x.responseText);
|
||||
var response = JSON.parse(x.responseText);
|
||||
for (var j=0; stainfo[j]; j++) {
|
||||
if (response[0].ifname == stainfo[j].ifname) {
|
||||
response.shift(); //delete first item
|
||||
stainfo[j].sta = response;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch(e){}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
function printstainfo()
|
||||
{
|
||||
if (stainfo.length == 0) {
|
||||
clean_stalist_table();
|
||||
return;
|
||||
}
|
||||
if (stainfo_inited) {
|
||||
//console.log(stainfo);
|
||||
clean_stalist_table();
|
||||
var stabuf = stainfo;
|
||||
for (var i=0; stabuf[i]; i++) {
|
||||
insert_stalist_table(stabuf[i].ifname, stabuf[i].ssid, stabuf[i].sta);
|
||||
}
|
||||
}
|
||||
setTimeout(printstainfo, 2000);
|
||||
}
|
||||
|
||||
function apcliInfoTimerHandler(vifNameList,idx,remSec)
|
||||
{
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_apcli_conn_info")%>/' + vifNameList[idx], null,
|
||||
function(x)
|
||||
{
|
||||
try{
|
||||
updateApCliInfoCb(vifNameList,idx,remSec,JSON.parse(x.response));
|
||||
}
|
||||
catch(e){
|
||||
var y={conn_state:"Disconnected"};
|
||||
updateApCliInfoCb(vifNameList,idx,0,y);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
function updateApCliInfoCb(vifNameList,idx,remSec,connInfo)
|
||||
{
|
||||
var vifName = vifNameList[idx];
|
||||
if(connInfo.hasOwnProperty("conn_state") && connInfo["conn_state"] == "Connected"){
|
||||
document.getElementById("ConnStatus_"+vifName).innerHTML = "<%:Connected%>";
|
||||
document.getElementById("ApCliBssid_"+vifName).innerHTML = (connInfo.hasOwnProperty("bssid")) ? connInfo["bssid"] : "?";
|
||||
document.getElementById("ApCliSsid_"+vifName).innerHTML = (connInfo.hasOwnProperty("ssid")) ? connInfo["ssid"].replace(/ /g," ") : "";
|
||||
document.getElementById("LoadingBar_"+vifName).style.display = "none";
|
||||
document.getElementById("ApCliDownBtn_"+vifName).style.display = "";
|
||||
document.getElementById("ApCliDisConnBtn_"+vifName).style.display = "";
|
||||
document.getElementById("ApCliCfgBtn_"+vifName).style.display = "";
|
||||
document.getElementById("ConnInfo_"+vifName).style.display = "";
|
||||
if(idx < vifNameList.length - 1){
|
||||
setTimeout(apcliInfoTimerHandler,1000,vifNameList,idx+1,5);
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(remSec > 1){
|
||||
setTimeout(apcliInfoTimerHandler,1000,vifNameList,idx,remSec - 1);
|
||||
}
|
||||
else{
|
||||
if (connInfo.hasOwnProperty("conn_state") && (connInfo["conn_state"] == "Connected")) {
|
||||
document.getElementById("ConnStatus_"+vifName).innerHTML = "<%:Connected%>";
|
||||
} else {
|
||||
document.getElementById("ConnStatus_"+vifName).innerHTML = "<%:Disconnected%>";
|
||||
}
|
||||
document.getElementById("LoadingBar_"+vifName).style.display = "none";
|
||||
document.getElementById("DisConnMsg_"+vifName).style.display = "";
|
||||
if (connInfo.hasOwnProperty("infc_state") && connInfo["infc_state"] == "up"){
|
||||
document.getElementById("ApCliDownBtn_"+vifName).style.display = "";
|
||||
}
|
||||
else{
|
||||
document.getElementById("ApCliUpBtn_"+vifName).style.display = "";
|
||||
}
|
||||
document.getElementById("ApCliConnBtn_"+vifName).style.display = "";
|
||||
document.getElementById("ApCliCfgBtn_"+vifName).style.display = "";
|
||||
if(idx < vifNameList.length - 1){
|
||||
setTimeout(apcliInfoTimerHandler,1000,vifNameList,idx+1,5);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
function updateApCliInfo()
|
||||
{
|
||||
var apCliInfcList=[];
|
||||
<% for _,dev in ipairs(devs) do %>
|
||||
<% if dev.apcli and dev.ApCliEnable == "1" then %>
|
||||
apCliInfcList.push("<%=dev.apcli.devname%>");
|
||||
<% end %>
|
||||
<% end %>
|
||||
if (apCliInfcList.length >= 1 ){
|
||||
setTimeout(apcliInfoTimerHandler,1000,apCliInfcList,0,3);
|
||||
}
|
||||
}
|
||||
|
||||
function get_apply_status_cb(rsp)
|
||||
{
|
||||
try{
|
||||
var r = JSON.parse(rsp);
|
||||
}
|
||||
catch(e){
|
||||
return;
|
||||
}
|
||||
if(r.status == "ON_PROGRESS"){
|
||||
var u = confirm("Device is applying the saved settings now!\n" +
|
||||
"It is recommended to wait until all the saved settings are applied.\n" +
|
||||
"Please click on 'OK' button to wait for the device.\n" +
|
||||
"or click on 'Cancel' button to configure the settings available in current web-page.");
|
||||
if (u == true) {
|
||||
location = '<%=luci.dispatcher.build_url("admin", "network", "wifi", "loading")%>' + window.location.pathname;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function get_apply_status()
|
||||
{
|
||||
XHR.get('<%=luci.dispatcher.build_url("admin", "network", "wifi", "get_apply_status")%>', null,
|
||||
function(x)
|
||||
{
|
||||
console.log(x);
|
||||
get_apply_status_cb(x.response);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
window.onload = function(){
|
||||
get_apply_status();
|
||||
updateApCliInfo();
|
||||
<% for _,dev in ipairs(devs) do %>
|
||||
<% if dev.vifs then%>
|
||||
<% for _,vif in ipairs(dev.vifs) do %>
|
||||
<% if vif.state == "up" then %>
|
||||
stainfo.push({"ifname": "<%=vif.vifname%>", "ssid": "<%=vif.__ssid%>", "sta": ""});
|
||||
<% end %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
staInfoHandler(stainfo);
|
||||
printstainfo();
|
||||
}
|
||||
</script>
|
||||
<%+footer%>
|
File diff suppressed because it is too large
Load Diff
515
package/mtk/applications/luci-app-mtk/po/zh_Hans/mtk.po
Normal file
515
package/mtk/applications/luci-app-mtk/po/zh_Hans/mtk.po
Normal file
@ -0,0 +1,515 @@
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
||||
msgid "Auto"
|
||||
msgstr "自动"
|
||||
|
||||
msgid "Disable"
|
||||
msgstr "禁用"
|
||||
|
||||
msgid "US"
|
||||
msgstr "US (美国)"
|
||||
|
||||
msgid "JP"
|
||||
msgstr "JP (日本)"
|
||||
|
||||
msgid "FR"
|
||||
msgstr "FR (法国)"
|
||||
|
||||
msgid "IE"
|
||||
msgstr "IE (爱尔兰)"
|
||||
|
||||
msgid "CN"
|
||||
msgstr "CN (中国)"
|
||||
|
||||
msgid "NONE"
|
||||
msgstr "无"
|
||||
|
||||
msgid "Short"
|
||||
msgstr "Short (短)"
|
||||
|
||||
msgid "long"
|
||||
msgstr "Long (长)"
|
||||
|
||||
msgid "Enable"
|
||||
msgstr "启用"
|
||||
|
||||
msgid "Mandatory"
|
||||
msgstr "强制"
|
||||
|
||||
msgid "Always On"
|
||||
msgstr "始终开启"
|
||||
|
||||
msgid "Always Off"
|
||||
msgstr "始终关闭"
|
||||
|
||||
msgid "Tempature"
|
||||
msgstr "温度"
|
||||
|
||||
msgid "Tx Power"
|
||||
msgstr "发射功率"
|
||||
|
||||
msgid "Driver version"
|
||||
msgstr "驱动版本"
|
||||
|
||||
msgid "Current Band"
|
||||
msgstr "当前频段"
|
||||
|
||||
msgid "Work mode"
|
||||
msgstr "工作模式"
|
||||
|
||||
msgid "CONFIG"
|
||||
msgstr "配置"
|
||||
|
||||
msgid "RELOAD"
|
||||
msgstr "重载"
|
||||
|
||||
msgid "ADD"
|
||||
msgstr "添加"
|
||||
|
||||
msgid "RECONNECT"
|
||||
msgstr "重连"
|
||||
|
||||
msgid "DISABLE"
|
||||
msgstr "禁用"
|
||||
|
||||
msgid "ENABLE"
|
||||
msgstr "启用"
|
||||
|
||||
msgid "REMOVE"
|
||||
msgstr "移除"
|
||||
|
||||
msgid "Station List"
|
||||
msgstr "已连接站点"
|
||||
|
||||
msgid "Interface"
|
||||
msgstr "接口"
|
||||
|
||||
msgid "MAC-Address"
|
||||
msgstr "MAC地址"
|
||||
|
||||
msgid "Signal"
|
||||
msgstr "信号强度"
|
||||
|
||||
msgid "TX Rate"
|
||||
msgstr "发射速率"
|
||||
|
||||
msgid "Rx Rate"
|
||||
msgstr "接收速率"
|
||||
|
||||
msgid "Connected Time"
|
||||
msgstr "已连接时间"
|
||||
|
||||
msgid "Channel"
|
||||
msgstr "信道"
|
||||
|
||||
msgid "Security Mode"
|
||||
msgstr "加密方式"
|
||||
|
||||
msgid "Action"
|
||||
msgstr "动作"
|
||||
|
||||
msgid "Choose This"
|
||||
msgstr "选择"
|
||||
|
||||
msgid "40MHz HT Ext Channel"
|
||||
msgstr "HT 40MHz 扩展信道"
|
||||
|
||||
msgid "80MHz Second VHT Channel"
|
||||
msgstr "VHT 80MHz 第二信道"
|
||||
|
||||
msgid "Type"
|
||||
msgstr "接口类型"
|
||||
|
||||
msgid "Status"
|
||||
msgstr "状态"
|
||||
|
||||
msgid "DISCONNECT"
|
||||
msgstr "断开"
|
||||
|
||||
msgid "Connected"
|
||||
msgstr "已连接"
|
||||
|
||||
msgid "Disconnected"
|
||||
msgstr "未连接"
|
||||
|
||||
msgid "FATAL ERROR: Incorrect Profile Settings"
|
||||
msgstr "严重错误: 配置文件设置不正确"
|
||||
|
||||
msgid "Error: value not present in dat file"
|
||||
msgstr "错误:dat文件中未指定SSID值"
|
||||
|
||||
msgid "Wireless is disabled or not associated"
|
||||
msgstr "无线已禁用或未关联"
|
||||
|
||||
msgid "Processing request."
|
||||
msgstr "正在处理请求..."
|
||||
|
||||
msgid "need reload to apply changes"
|
||||
msgstr "请重启无线以应用设置"
|
||||
|
||||
msgid "Click here"
|
||||
msgstr "点击此处"
|
||||
|
||||
msgid "to apply changes"
|
||||
msgstr "以应用设置"
|
||||
|
||||
msgid "Wireless Mode"
|
||||
msgstr "无线模式"
|
||||
|
||||
msgid "Chip Configurations"
|
||||
msgstr "无线芯片设置"
|
||||
|
||||
msgid "Device Configuration"
|
||||
msgstr "无线设备设置"
|
||||
|
||||
msgid "Interface Configurations"
|
||||
msgstr "无线接口设置"
|
||||
|
||||
msgid "ApCli Configurations"
|
||||
msgstr "ApCli设置"
|
||||
|
||||
msgid "Loading connection information of"
|
||||
msgstr "正在加载连接信息"
|
||||
|
||||
msgid "ApCli Available Wireless Networks"
|
||||
msgstr "ApCli可用无线网络列表"
|
||||
|
||||
msgid "ApCli Connection Configurations"
|
||||
msgstr "ApCli连接设置"
|
||||
|
||||
msgid "Decline BA Request"
|
||||
msgstr "拒绝BlockAck请求"
|
||||
|
||||
msgid "Reverse Direction Grant (RDG)"
|
||||
msgstr "HT反向授权(RDG)"
|
||||
|
||||
msgid "BA Win size"
|
||||
msgstr "Block Ack窗口大小"
|
||||
|
||||
msgid "HT Disallow TKIP"
|
||||
msgstr "不允许HT TKIP"
|
||||
|
||||
msgid "Wi-Fi HWNAT"
|
||||
msgstr "启用Wi-Fi硬件加速"
|
||||
|
||||
msgid "E2pAccessMode"
|
||||
msgstr "EEPROM访问方式"
|
||||
|
||||
msgid "Beacon Interval"
|
||||
msgstr "Beacon间隔"
|
||||
|
||||
msgid "Data Beacon Rate (DTIM)"
|
||||
msgstr "DTIM周期"
|
||||
|
||||
msgid "BG Protection Mode"
|
||||
msgstr "BG保护模式"
|
||||
|
||||
msgid "Short Preamble"
|
||||
msgstr "启用短前导码"
|
||||
|
||||
msgid "TX Burst"
|
||||
msgstr "启用突发传输"
|
||||
|
||||
msgid "Short Slot"
|
||||
msgstr "启用短时槽"
|
||||
|
||||
msgid "Channel Auto"
|
||||
msgstr "自动信道"
|
||||
|
||||
msgid "BSS color"
|
||||
msgstr "BSS颜色代码"
|
||||
|
||||
msgid "TWT Support"
|
||||
msgstr "TWT节能机制"
|
||||
|
||||
msgid "Country Code"
|
||||
msgstr "国家代码"
|
||||
|
||||
msgid "Country Region"
|
||||
msgstr "国家区域"
|
||||
|
||||
msgid "Channel BandWidth"
|
||||
msgstr "信道宽度"
|
||||
|
||||
msgid "TX Stream"
|
||||
msgstr "发射空间流"
|
||||
|
||||
msgid "RX Stream"
|
||||
msgstr "接收空间流"
|
||||
|
||||
msgid "TX Power"
|
||||
msgstr "发射功率"
|
||||
|
||||
msgid "DFS"
|
||||
msgstr "动态频率选择(DFS)"
|
||||
|
||||
msgid "Beam Forming and MIMO Setting"
|
||||
msgstr "波束成形与MU-MIMO设置"
|
||||
|
||||
msgid "Spatial Reuse"
|
||||
msgstr "空间复用"
|
||||
|
||||
msgid "Auth Mode"
|
||||
msgstr "认证模式"
|
||||
|
||||
msgid "Encryption"
|
||||
msgstr "加密方式"
|
||||
|
||||
msgid "Key Renewal Interval"
|
||||
msgstr "组密钥更新周期"
|
||||
|
||||
msgid "Key"
|
||||
msgstr "密码"
|
||||
|
||||
msgid "MFPC"
|
||||
msgstr "兼容保护管理帧(MFPC)"
|
||||
|
||||
msgid "MFPR"
|
||||
msgstr "强制保护管理帧(MFPR)"
|
||||
|
||||
msgid "Hidden SSID"
|
||||
msgstr "隐藏SSID"
|
||||
|
||||
msgid "AP Isolation"
|
||||
msgstr "启用AP隔离"
|
||||
|
||||
msgid "WMM Capable"
|
||||
msgstr "启用WMM"
|
||||
|
||||
msgid "Fixed TX Rate"
|
||||
msgstr "固定发射速率"
|
||||
|
||||
msgid "HT STBC"
|
||||
msgstr "启用HT STBC"
|
||||
|
||||
msgid "HT LDPC"
|
||||
msgstr "启用HT LDPC"
|
||||
|
||||
msgid "VHT STBC"
|
||||
msgstr "启用VHT STBC"
|
||||
|
||||
msgid "VHT LDPC"
|
||||
msgstr "启用VHT LDPC"
|
||||
|
||||
msgid "DLS Capable"
|
||||
msgstr "启用终端直通(DLS)"
|
||||
|
||||
msgid "802.11k RRM"
|
||||
msgstr "启用 802.11k"
|
||||
|
||||
msgid "802.11r FT"
|
||||
msgstr "启用 802.11r"
|
||||
|
||||
msgid "APSD Capable"
|
||||
msgstr "启用节能模式(APSD)"
|
||||
|
||||
msgid "Fragment Threshold"
|
||||
msgstr "分片阈值"
|
||||
|
||||
msgid "RTS Threshold"
|
||||
msgstr "RTS阈值"
|
||||
|
||||
msgid "VHT Short GI"
|
||||
msgstr "VHT保护间隔(GI)"
|
||||
|
||||
msgid "VHT BW Signaling"
|
||||
msgstr "VHT动态频宽信令"
|
||||
|
||||
msgid "Dynamic"
|
||||
msgstr "动态"
|
||||
|
||||
msgid "HT Protection"
|
||||
msgstr "HT保护模式"
|
||||
|
||||
msgid "HT Guard Interval"
|
||||
msgstr "HT保护间隔(GI)"
|
||||
|
||||
msgid "HT Operating Mode"
|
||||
msgstr "HT操作模式"
|
||||
|
||||
msgid "HT Mixed Mode"
|
||||
msgstr "HT混合模式(Mixed)"
|
||||
|
||||
msgid "HT Green Field"
|
||||
msgstr "HT绿野模式(Green Field)"
|
||||
|
||||
msgid "Auto Block ACK"
|
||||
msgstr "自动块确认(BlockAck)"
|
||||
|
||||
msgid "Access Control"
|
||||
msgstr "访问控制"
|
||||
|
||||
msgid "Access Policy"
|
||||
msgstr "访问控制策略"
|
||||
|
||||
msgid "Access control MAC address list"
|
||||
msgstr "访问控制MAC地址列表"
|
||||
|
||||
msgid "White List"
|
||||
msgstr "白名单模式"
|
||||
|
||||
msgid "Black List"
|
||||
msgstr "黑名单模式"
|
||||
|
||||
msgid "Basic Settings"
|
||||
msgstr "基本设置"
|
||||
|
||||
msgid "HE Settings"
|
||||
msgstr "HE设置"
|
||||
|
||||
msgid "DL OFDMA"
|
||||
msgstr "下行OFDMA"
|
||||
|
||||
msgid "UL OFDMA"
|
||||
msgstr "上行OFDMA"
|
||||
|
||||
msgid "DL MU-MIMO"
|
||||
msgstr "下行MU-MIMO"
|
||||
|
||||
msgid "UL MU-MIMO"
|
||||
msgstr "上行MU-MIMO"
|
||||
|
||||
msgid "Scan Wireless Network"
|
||||
msgstr "扫描无线网络"
|
||||
|
||||
msgid "ApClient Mode"
|
||||
msgstr "AP客户端模式"
|
||||
|
||||
msgid "APClient/Repeater Mode."
|
||||
msgstr "AP客户端中继模式。"
|
||||
|
||||
msgid "MAC Repeater Mode"
|
||||
msgstr "启用MAC中继模式"
|
||||
|
||||
msgid "Root AP SSID"
|
||||
msgstr "上级AP SSID"
|
||||
|
||||
msgid "Root AP Channel"
|
||||
msgstr "上级AP信道"
|
||||
|
||||
msgid "Root AP Authentication Mode"
|
||||
msgstr "上级AP认证方式"
|
||||
|
||||
msgid "Root AP Encryption"
|
||||
msgstr "上级AP加密方式"
|
||||
|
||||
msgid "Root AP WPA Key"
|
||||
msgstr "上级AP WPA密钥"
|
||||
|
||||
msgid "ApCli MFPC"
|
||||
msgstr "ApCli兼容保护管理帧(MFPC)"
|
||||
|
||||
msgid "ApCli MFPR"
|
||||
msgstr "ApCli强制保护管理帧(MFPR)"
|
||||
|
||||
msgid "ApCli MFPSHA256"
|
||||
msgstr "ApCli启用SHA256保护管理帧"
|
||||
|
||||
msgid "WEP Default Key"
|
||||
msgstr "WEP默认密钥ID"
|
||||
|
||||
msgid "Root AP WEP Key"
|
||||
msgstr "上级AP WEP密钥"
|
||||
|
||||
msgid "Length"
|
||||
msgstr "长度"
|
||||
|
||||
msgid "WEP Key"
|
||||
msgstr "WEP密钥"
|
||||
|
||||
msgid "WEP Key Type"
|
||||
msgstr "WEP密钥类型"
|
||||
|
||||
msgid "PMK Cache Period"
|
||||
msgstr "PMK缓存周期"
|
||||
|
||||
msgid "WEP for 8021X"
|
||||
msgstr "启用8021X WEP"
|
||||
|
||||
msgid "Pre-Authentication"
|
||||
msgstr "启用预认证"
|
||||
|
||||
msgid "Radius Server IP"
|
||||
msgstr "Radius认证服务器IP"
|
||||
|
||||
msgid "Radius Server Port"
|
||||
msgstr "Radius认证服务器端口"
|
||||
|
||||
msgid "Radius Key"
|
||||
msgstr "Radius密钥"
|
||||
|
||||
msgid "Radius Session Timeout"
|
||||
msgstr "Radius会话超时时间"
|
||||
|
||||
msgid "Radius Idle Timeout"
|
||||
msgstr "Radius空闲超时时间"
|
||||
|
||||
msgid "MFPSHA256"
|
||||
msgstr "启用SHA256保护管理帧"
|
||||
|
||||
msgid "Please wait while the settings are being applied."
|
||||
msgstr "正在应用设置,请稍候。"
|
||||
|
||||
msgid "Please wait while the request is being processed."
|
||||
msgstr "正在处理请求,请稍候。"
|
||||
|
||||
msgid "No wireless device found!"
|
||||
msgstr "未找到无线设备!"
|
||||
|
||||
msgid "Please input a valid radius server port number."
|
||||
msgstr "请输入有效的Radius服务器端口号。"
|
||||
|
||||
msgid "The radius shared secret contains invalid characters."
|
||||
msgstr "Radius密钥包含无效字符。"
|
||||
|
||||
msgid "Please input a valid session timeout number or u may have left it empty."
|
||||
msgstr "请输入有效的Radius会话超时时间。"
|
||||
|
||||
msgid "Radius session time out is empty."
|
||||
msgstr "Radius会话超时时间为空。"
|
||||
|
||||
msgid "Please input a valid idle timeout number or u may have left it empty."
|
||||
msgstr "请输入有效的Radius空闲超时时间。"
|
||||
|
||||
msgid "Radius idle time out is empty."
|
||||
msgstr "Radius空闲超时时间为空。"
|
||||
|
||||
msgid "IGMP Snooping"
|
||||
msgstr "IGMP 侦听"
|
||||
|
||||
msgid "Security"
|
||||
msgstr "安全性"
|
||||
|
||||
msgid "Restore Profile to Factory Settings"
|
||||
msgstr "恢复无线配置文件为出厂设置"
|
||||
|
||||
msgid "Are you sure to RELOAD"
|
||||
msgstr "你确认要重载"
|
||||
|
||||
msgid "Are you sure to DISABLE"
|
||||
msgstr "你确认要禁用"
|
||||
|
||||
msgid "Are you sure to REMOVE"
|
||||
msgstr "你确认要移除"
|
||||
|
||||
msgid "Are you sure to RECONNECT"
|
||||
msgstr "你确认要重新连接"
|
||||
|
||||
msgid "Are you sure to DISCONNECT"
|
||||
msgstr "你确认要断开"
|
||||
|
||||
msgid "Are you sure to ADD wireless interface?"
|
||||
msgstr "你确认要新增无线接口?"
|
||||
|
||||
msgid "Enable wireless device"
|
||||
msgstr "启用此无线设备"
|
||||
|
||||
msgid "Wireless device is disabled"
|
||||
msgstr "无线设备已禁用"
|
||||
|
||||
msgid "Kick STA Threshold"
|
||||
msgstr "弱信号剔除阈值"
|
||||
|
||||
msgid "STA Assoc Threshold"
|
||||
msgstr "弱信号接入阈值"
|
177
package/mtk/applications/luci-app-mtk/root/sbin/l1dat
Executable file
177
package/mtk/applications/luci-app-mtk/root/sbin/l1dat
Executable file
@ -0,0 +1,177 @@
|
||||
#!/usr/bin/lua
|
||||
|
||||
-- Constant Definition
|
||||
local FW_PATH = "/lib/firmware/"
|
||||
local MTD_PATH = "/dev/"
|
||||
local MTD_TABLE = "/proc/mtd"
|
||||
local E2P_PART_NAME = "Factory"
|
||||
local E2P_FILE_NAME = "e2p"
|
||||
|
||||
|
||||
function show_usage()
|
||||
print("Usage: l1dat genconfig | dbg | idx2if idx | if2zone ifname | if2dat ifname | zone2if zone | if2dbdcidx ifname")
|
||||
end
|
||||
|
||||
function print_err(msg)
|
||||
io.stderr:write("[ERR][l1dat] "..msg)
|
||||
end
|
||||
|
||||
if not pcall(require, "l1dat_parser") then
|
||||
if arg[1] == "dbg" then
|
||||
print_err("Load l1dat_parser module failed\n")
|
||||
end
|
||||
return
|
||||
end
|
||||
|
||||
local l1parser = require("l1dat_parser")
|
||||
local l1dat = l1parser.load_l1_profile(l1parser.L1_DAT_PATH)
|
||||
|
||||
if not l1dat then
|
||||
if arg[1] == "dbg" then
|
||||
print_err("l1profile.dat is ivalid\n")
|
||||
end
|
||||
return
|
||||
end
|
||||
|
||||
function read_pipe(pipe)
|
||||
local fp = io.popen(pipe)
|
||||
local txt = fp:read("*a")
|
||||
fp:close()
|
||||
return txt
|
||||
end
|
||||
|
||||
function eeprom_extract(part, offset, size, bin_name)
|
||||
local part_name = part or E2P_PART_NAME
|
||||
local dump_name = bin_name or E2P_FILE_NAME
|
||||
|
||||
if not offset or not size or tonumber(offset) < 0 or tonumber(size) < 0 then
|
||||
print_err("Invalid offset or size value")
|
||||
return
|
||||
end
|
||||
local offset_decimal = string.format("%d", offset)
|
||||
local size_decimal = string.format("%d", size)
|
||||
|
||||
local cmd = "cat "..MTD_TABLE.." | grep "..part_name
|
||||
local mtd = read_pipe(cmd)
|
||||
if not mtd or mtd == "" then
|
||||
print_err("mtd partition "..part_name.." not found")
|
||||
return
|
||||
end
|
||||
|
||||
cmd = "[ -e "..FW_PATH.." ] || mkdir "..FW_PATH
|
||||
os.execute(cmd)
|
||||
|
||||
local mtd_node = "/dev/"..string.match(mtd, "(mtd[%d]+)")
|
||||
cmd = "dd if="..mtd_node.." of="..FW_PATH..dump_name.." bs=1 skip="..offset_decimal.." count="..size_decimal.." seek="..offset_decimal.." conv=notrunc 2>/dev/null"
|
||||
os.execute(cmd)
|
||||
end
|
||||
|
||||
local action0 = {
|
||||
["dbg"] = function()
|
||||
show_usage()
|
||||
end,
|
||||
|
||||
["genconfig"] = function()
|
||||
local seen = {}
|
||||
local dridx = l1parser.DEV_RINDEX
|
||||
local cmd = ""
|
||||
local dir = ""
|
||||
for name, dev in pairs(l1dat[dridx]) do
|
||||
if not seen[dev] then
|
||||
seen[dev] = true
|
||||
dir = string.match(dev["profile_path"], "^(.+)/")
|
||||
--print("mkdir -p "..dir)
|
||||
os.execute("mkdir -p "..dir)
|
||||
cmd = "ralink_init gen "..dev["nvram_zone"].." "..dev["profile_path"]
|
||||
--print(cmd)
|
||||
os.execute(cmd)
|
||||
|
||||
eeprom_extract(E2P_PART_NAME, dev.EEPROM_offset, dev.EEPROM_size, dev.EEPROM_name)
|
||||
end
|
||||
end
|
||||
end,
|
||||
|
||||
["if2zone"] = function(ifname)
|
||||
if not ifname then return end
|
||||
|
||||
local zone = l1parser.l1_ifname_to_zone(ifname) or ""
|
||||
print(zone);
|
||||
end,
|
||||
|
||||
["if2dat"] = function(ifname)
|
||||
if not ifname then return end
|
||||
|
||||
local dat_path = l1parser.l1_ifname_to_datpath(ifname) or ""
|
||||
print(dat_path)
|
||||
end,
|
||||
|
||||
["zone2if"] = function(zone)
|
||||
if not zone then return end
|
||||
|
||||
local main_if, ext_if, apcli, wds, mesh = l1parser.l1_zone_to_ifname(zone)
|
||||
|
||||
if main_if then
|
||||
print(main_if.." "..ext_if.." "..apcli.." "..wds.." "..mesh)
|
||||
end
|
||||
end,
|
||||
|
||||
["idx2if"] = function(idx)
|
||||
if not idx then return end
|
||||
|
||||
idx = tonumber(idx)
|
||||
|
||||
local band_num = l1parser.MAX_NUM_DBDC_BAND
|
||||
local dbdc_if
|
||||
local count = 0
|
||||
for k, v in pairs(l1dat) do
|
||||
-- check if last dbdc exists
|
||||
dbdc_if = l1parser.token_get(v.main_ifname, band_num, nil)
|
||||
if dbdc_if then
|
||||
count = count + band_num;
|
||||
else
|
||||
count = count + 1
|
||||
end
|
||||
|
||||
if not dbdc_if and count == idx then
|
||||
print(v.main_ifname)
|
||||
|
||||
break
|
||||
end
|
||||
|
||||
if count >= idx then -- dbdc case
|
||||
local token_num = band_num - ( count - idx )
|
||||
print(l1parser.token_get(v.main_ifname, token_num, nil))
|
||||
|
||||
break
|
||||
end
|
||||
end
|
||||
end,
|
||||
|
||||
["if2dbdcidx"] = function(ifname)
|
||||
if not ifname then return end
|
||||
|
||||
local ridx = l1parser.IF_RINDEX
|
||||
|
||||
if not l1dat[ridx][ifname] then return end
|
||||
|
||||
print(l1dat[ridx][ifname]["subidx"] or "0")
|
||||
end
|
||||
}
|
||||
|
||||
if #arg == 0 then
|
||||
show_usage()
|
||||
return
|
||||
end
|
||||
|
||||
if action0[arg[1]] then
|
||||
if #arg == 1 then
|
||||
--print("#arg == 1", arg[1])
|
||||
action0[arg[1]]()
|
||||
elseif #arg == 2 then
|
||||
--print("#arg == 1", arg[1], arg[2])
|
||||
action0[arg[1]](arg[2])
|
||||
end
|
||||
else
|
||||
print_err("invalid arg \""..arg[1].."\"\n");
|
||||
end
|
||||
|
@ -0,0 +1,337 @@
|
||||
local _tl_compat; if (tonumber((_VERSION or ''):match('[%d.]*$')) or 0) < 5.3 then local p, m = pcall(require, 'compat53.module'); if p then _tl_compat = m end end; local math = _tl_compat and _tl_compat.math or math; local string = _tl_compat and _tl_compat.string or string; local table = _tl_compat and _tl_compat.table or table
|
||||
local inspect = {Options = {}, }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
inspect._VERSION = 'inspect.lua 3.1.0'
|
||||
inspect._URL = 'http://github.com/kikito/inspect.lua'
|
||||
inspect._DESCRIPTION = 'human-readable representations of tables'
|
||||
inspect._LICENSE = [[
|
||||
MIT LICENSE
|
||||
|
||||
Copyright (c) 2022 Enrique García Cota
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
]]
|
||||
inspect.KEY = setmetatable({}, { __tostring = function() return 'inspect.KEY' end })
|
||||
inspect.METATABLE = setmetatable({}, { __tostring = function() return 'inspect.METATABLE' end })
|
||||
|
||||
local tostring = tostring
|
||||
local rep = string.rep
|
||||
local match = string.match
|
||||
local char = string.char
|
||||
local gsub = string.gsub
|
||||
local fmt = string.format
|
||||
|
||||
local function rawpairs(t)
|
||||
return next, t, nil
|
||||
end
|
||||
|
||||
|
||||
|
||||
local function smartQuote(str)
|
||||
if match(str, '"') and not match(str, "'") then
|
||||
return "'" .. str .. "'"
|
||||
end
|
||||
return '"' .. gsub(str, '"', '\\"') .. '"'
|
||||
end
|
||||
|
||||
|
||||
local shortControlCharEscapes = {
|
||||
["\a"] = "\\a", ["\b"] = "\\b", ["\f"] = "\\f", ["\n"] = "\\n",
|
||||
["\r"] = "\\r", ["\t"] = "\\t", ["\v"] = "\\v", ["\127"] = "\\127",
|
||||
}
|
||||
local longControlCharEscapes = { ["\127"] = "\127" }
|
||||
for i = 0, 31 do
|
||||
local ch = char(i)
|
||||
if not shortControlCharEscapes[ch] then
|
||||
shortControlCharEscapes[ch] = "\\" .. i
|
||||
longControlCharEscapes[ch] = fmt("\\%03d", i)
|
||||
end
|
||||
end
|
||||
|
||||
local function escape(str)
|
||||
return (gsub(gsub(gsub(str, "\\", "\\\\"),
|
||||
"(%c)%f[0-9]", longControlCharEscapes),
|
||||
"%c", shortControlCharEscapes))
|
||||
end
|
||||
|
||||
local function isIdentifier(str)
|
||||
return type(str) == "string" and not not str:match("^[_%a][_%a%d]*$")
|
||||
end
|
||||
|
||||
local flr = math.floor
|
||||
local function isSequenceKey(k, sequenceLength)
|
||||
return type(k) == "number" and
|
||||
flr(k) == k and
|
||||
1 <= (k) and
|
||||
k <= sequenceLength
|
||||
end
|
||||
|
||||
local defaultTypeOrders = {
|
||||
['number'] = 1, ['boolean'] = 2, ['string'] = 3, ['table'] = 4,
|
||||
['function'] = 5, ['userdata'] = 6, ['thread'] = 7,
|
||||
}
|
||||
|
||||
local function sortKeys(a, b)
|
||||
local ta, tb = type(a), type(b)
|
||||
|
||||
|
||||
if ta == tb and (ta == 'string' or ta == 'number') then
|
||||
return (a) < (b)
|
||||
end
|
||||
|
||||
local dta = defaultTypeOrders[ta] or 100
|
||||
local dtb = defaultTypeOrders[tb] or 100
|
||||
|
||||
|
||||
return dta == dtb and ta < tb or dta < dtb
|
||||
end
|
||||
|
||||
local function getKeys(t)
|
||||
|
||||
local seqLen = 1
|
||||
while rawget(t, seqLen) ~= nil do
|
||||
seqLen = seqLen + 1
|
||||
end
|
||||
seqLen = seqLen - 1
|
||||
|
||||
local keys, keysLen = {}, 0
|
||||
for k in rawpairs(t) do
|
||||
if not isSequenceKey(k, seqLen) then
|
||||
keysLen = keysLen + 1
|
||||
keys[keysLen] = k
|
||||
end
|
||||
end
|
||||
table.sort(keys, sortKeys)
|
||||
return keys, keysLen, seqLen
|
||||
end
|
||||
|
||||
local function countCycles(x, cycles)
|
||||
if type(x) == "table" then
|
||||
if cycles[x] then
|
||||
cycles[x] = cycles[x] + 1
|
||||
else
|
||||
cycles[x] = 1
|
||||
for k, v in rawpairs(x) do
|
||||
countCycles(k, cycles)
|
||||
countCycles(v, cycles)
|
||||
end
|
||||
countCycles(getmetatable(x), cycles)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local function makePath(path, a, b)
|
||||
local newPath = {}
|
||||
local len = #path
|
||||
for i = 1, len do newPath[i] = path[i] end
|
||||
|
||||
newPath[len + 1] = a
|
||||
newPath[len + 2] = b
|
||||
|
||||
return newPath
|
||||
end
|
||||
|
||||
|
||||
local function processRecursive(process,
|
||||
item,
|
||||
path,
|
||||
visited)
|
||||
if item == nil then return nil end
|
||||
if visited[item] then return visited[item] end
|
||||
|
||||
local processed = process(item, path)
|
||||
if type(processed) == "table" then
|
||||
local processedCopy = {}
|
||||
visited[item] = processedCopy
|
||||
local processedKey
|
||||
|
||||
for k, v in rawpairs(processed) do
|
||||
processedKey = processRecursive(process, k, makePath(path, k, inspect.KEY), visited)
|
||||
if processedKey ~= nil then
|
||||
processedCopy[processedKey] = processRecursive(process, v, makePath(path, processedKey), visited)
|
||||
end
|
||||
end
|
||||
|
||||
local mt = processRecursive(process, getmetatable(processed), makePath(path, inspect.METATABLE), visited)
|
||||
if type(mt) ~= 'table' then mt = nil end
|
||||
setmetatable(processedCopy, mt)
|
||||
processed = processedCopy
|
||||
end
|
||||
return processed
|
||||
end
|
||||
|
||||
local function puts(buf, str)
|
||||
buf.n = buf.n + 1
|
||||
buf[buf.n] = str
|
||||
end
|
||||
|
||||
|
||||
|
||||
local Inspector = {}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
local Inspector_mt = { __index = Inspector }
|
||||
|
||||
local function tabify(inspector)
|
||||
puts(inspector.buf, inspector.newline .. rep(inspector.indent, inspector.level))
|
||||
end
|
||||
|
||||
function Inspector:getId(v)
|
||||
local id = self.ids[v]
|
||||
local ids = self.ids
|
||||
if not id then
|
||||
local tv = type(v)
|
||||
id = (ids[tv] or 0) + 1
|
||||
ids[v], ids[tv] = id, id
|
||||
end
|
||||
return tostring(id)
|
||||
end
|
||||
|
||||
function Inspector:putValue(v)
|
||||
local buf = self.buf
|
||||
local tv = type(v)
|
||||
if tv == 'string' then
|
||||
puts(buf, smartQuote(escape(v)))
|
||||
elseif tv == 'number' or tv == 'boolean' or tv == 'nil' or
|
||||
tv == 'cdata' or tv == 'ctype' then
|
||||
puts(buf, tostring(v))
|
||||
elseif tv == 'table' and not self.ids[v] then
|
||||
local t = v
|
||||
|
||||
if t == inspect.KEY or t == inspect.METATABLE then
|
||||
puts(buf, tostring(t))
|
||||
elseif self.level >= self.depth then
|
||||
puts(buf, '{...}')
|
||||
else
|
||||
if self.cycles[t] > 1 then puts(buf, fmt('<%d>', self:getId(t))) end
|
||||
|
||||
local keys, keysLen, seqLen = getKeys(t)
|
||||
|
||||
puts(buf, '{')
|
||||
self.level = self.level + 1
|
||||
|
||||
for i = 1, seqLen + keysLen do
|
||||
if i > 1 then puts(buf, ',') end
|
||||
if i <= seqLen then
|
||||
puts(buf, ' ')
|
||||
self:putValue(t[i])
|
||||
else
|
||||
local k = keys[i - seqLen]
|
||||
tabify(self)
|
||||
if isIdentifier(k) then
|
||||
puts(buf, k)
|
||||
else
|
||||
puts(buf, "[")
|
||||
self:putValue(k)
|
||||
puts(buf, "]")
|
||||
end
|
||||
puts(buf, ' = ')
|
||||
self:putValue(t[k])
|
||||
end
|
||||
end
|
||||
|
||||
local mt = getmetatable(t)
|
||||
if type(mt) == 'table' then
|
||||
if seqLen + keysLen > 0 then puts(buf, ',') end
|
||||
tabify(self)
|
||||
puts(buf, '<metatable> = ')
|
||||
self:putValue(mt)
|
||||
end
|
||||
|
||||
self.level = self.level - 1
|
||||
|
||||
if keysLen > 0 or type(mt) == 'table' then
|
||||
tabify(self)
|
||||
elseif seqLen > 0 then
|
||||
puts(buf, ' ')
|
||||
end
|
||||
|
||||
puts(buf, '}')
|
||||
end
|
||||
|
||||
else
|
||||
puts(buf, fmt('<%s %d>', tv, self:getId(v)))
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
function inspect.inspect(root, options)
|
||||
options = options or {}
|
||||
|
||||
local depth = options.depth or (math.huge)
|
||||
local newline = options.newline or '\n'
|
||||
local indent = options.indent or ' '
|
||||
local process = options.process
|
||||
|
||||
if process then
|
||||
root = processRecursive(process, root, {}, {})
|
||||
end
|
||||
|
||||
local cycles = {}
|
||||
countCycles(root, cycles)
|
||||
|
||||
local inspector = setmetatable({
|
||||
buf = { n = 0 },
|
||||
ids = {},
|
||||
cycles = cycles,
|
||||
depth = depth,
|
||||
level = 0,
|
||||
newline = newline,
|
||||
indent = indent,
|
||||
}, Inspector_mt)
|
||||
|
||||
inspector:putValue(root)
|
||||
|
||||
return table.concat(inspector.buf)
|
||||
end
|
||||
|
||||
setmetatable(inspect, {
|
||||
__call = function(_, root, options)
|
||||
return inspect.inspect(root, options)
|
||||
end,
|
||||
})
|
||||
|
||||
return inspect
|
349
package/mtk/applications/luci-app-mtk/root/usr/lib/lua/l1dat_parser.lua
Executable file
349
package/mtk/applications/luci-app-mtk/root/usr/lib/lua/l1dat_parser.lua
Executable file
@ -0,0 +1,349 @@
|
||||
#!/usr/bin/env lua
|
||||
|
||||
--[[
|
||||
* A lua library to manipulate mtk's wifi driver. used in luci-app-mtk.
|
||||
*
|
||||
* Copyright (C) 2016 MTK <support@mediatek.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License version 2.1
|
||||
* as published by the Free Software Foundation
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
]]
|
||||
|
||||
local l1dat_parser = {
|
||||
L1_DAT_PATH = "/etc/wireless/l1profile.dat",
|
||||
IF_RINDEX = "ifname_ridx",
|
||||
DEV_RINDEX = "devname_ridx",
|
||||
MAX_NUM_APCLI = 1,
|
||||
MAX_NUM_WDS = 4,
|
||||
MAX_NUM_MESH = 1,
|
||||
MAX_NUM_EXTIF = 16,
|
||||
MAX_NUM_DBDC_BAND = 2,
|
||||
}
|
||||
|
||||
local l1cfg_options = {
|
||||
ext_ifname="",
|
||||
apcli_ifname="apcli",
|
||||
wds_ifname="wds",
|
||||
mesh_ifname="mesh"
|
||||
}
|
||||
|
||||
function l1dat_parser.__trim(s)
|
||||
if s then return (s:gsub("^%s*(.-)%s*$", "%1")) end
|
||||
end
|
||||
|
||||
function l1dat_parser.__cfg2list(str)
|
||||
-- delimeter == ";"
|
||||
local i = 1
|
||||
local list = {}
|
||||
for k in string.gmatch(str, "([^;]+)") do
|
||||
list[i] = k
|
||||
i = i + 1
|
||||
end
|
||||
return list
|
||||
end
|
||||
|
||||
function l1dat_parser.token_get(str, n, v)
|
||||
-- n starts from 1
|
||||
-- v is the backup in case token n is nil
|
||||
if not str then return v end
|
||||
local tmp = l1dat_parser.__cfg2list(str)
|
||||
return tmp[tonumber(n)] or v
|
||||
end
|
||||
|
||||
function l1dat_parser.add_default_value(l1cfg)
|
||||
for k, v in ipairs(l1cfg) do
|
||||
|
||||
for opt, default in pairs(l1cfg_options) do
|
||||
if ( opt == "ext_ifname" ) then
|
||||
v[opt] = v[opt] or v["main_ifname"].."_"
|
||||
else
|
||||
v[opt] = v[opt] or default..k.."_"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return l1cfg
|
||||
end
|
||||
|
||||
function l1dat_parser.get_value_by_idx(devidx, mainidx, subidx, key)
|
||||
--print("Enter l1dat_parser.get_value_by_idx("..devidx..","..mainidx..", "..subidx..", "..key..")<br>")
|
||||
if not devidx or not mainidx or not key then return end
|
||||
|
||||
local devs = l1dat_parser.load_l1_profile(l1dat_parser.L1_DAT_PATH)
|
||||
if not devs then return end
|
||||
|
||||
local dev_ridx = l1dat_parser.DEV_RINDEX
|
||||
local sidx = subidx or 1
|
||||
local devname1 = devidx.."."..mainidx
|
||||
local devname2 = devidx.."."..mainidx.."."..sidx
|
||||
|
||||
--print("devnam1=", devname1, "devname2=", devname2, "<br>")
|
||||
return devs[dev_ridx][devname2] and devs[dev_ridx][devname2][key]
|
||||
or devs[dev_ridx][devname1] and devs[dev_ridx][devname1][key]
|
||||
end
|
||||
|
||||
-- path to zone is 1 to 1 mapping
|
||||
function l1dat_parser.l1_path_to_zone(path)
|
||||
--print("Enter l1dat_parser.l1_path_to_zone("..path..")<br>")
|
||||
if not path then return end
|
||||
|
||||
local devs = l1dat_parser.load_l1_profile(l1dat_parser.L1_DAT_PATH)
|
||||
if not devs then return end
|
||||
|
||||
for _, dev in pairs(devs[l1dat_parser.IF_RINDEX]) do
|
||||
if dev.profile_path == path then
|
||||
return dev.nvram_zone
|
||||
end
|
||||
end
|
||||
|
||||
return
|
||||
end
|
||||
|
||||
-- zone to path is 1 to n mapping
|
||||
function l1dat_parser.l1_zone_to_path(zone)
|
||||
if not zone then return end
|
||||
|
||||
local devs = l1dat_parser.load_l1_profile(l1dat_parser.L1_DAT_PATH)
|
||||
if not devs then return end
|
||||
|
||||
local plist = {}
|
||||
for _, dev in pairs(devs[l1dat_parser.IF_RINDEX]) do
|
||||
if dev.nvram_zone == zone then
|
||||
if not next(plist) then
|
||||
table.insert(plist,dev.profile_path)
|
||||
else
|
||||
local plist_str = table.concat(plist)
|
||||
if not plist_str:match(dev.profile_path) then
|
||||
table.insert(plist,dev.profile_path)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return next(plist) and plist or nil
|
||||
end
|
||||
|
||||
function l1dat_parser.l1_ifname_to_datpath(ifname)
|
||||
if not ifname then return end
|
||||
|
||||
local devs = l1dat_parser.load_l1_profile(l1dat_parser.L1_DAT_PATH)
|
||||
if not devs then return end
|
||||
|
||||
local ridx = l1dat_parser.IF_RINDEX
|
||||
return devs[ridx][ifname] and devs[ridx][ifname].profile_path
|
||||
end
|
||||
|
||||
function l1dat_parser.l1_ifname_to_zone(ifname)
|
||||
if not ifname then return end
|
||||
|
||||
local devs = l1dat_parser.load_l1_profile(l1dat_parser.L1_DAT_PATH)
|
||||
if not devs then return end
|
||||
|
||||
local ridx = l1dat_parser.IF_RINDEX
|
||||
return devs[ridx][ifname] and devs[ridx][ifname].nvram_zone
|
||||
end
|
||||
|
||||
function l1dat_parser.l1_zone_to_ifname(zone)
|
||||
if not zone then return end
|
||||
|
||||
local devs = l1dat_parser.load_l1_profile(l1dat_parser.L1_DAT_PATH)
|
||||
if not devs then return end
|
||||
|
||||
local zone_dev
|
||||
for _, dev in pairs(devs[l1dat_parser.DEV_RINDEX]) do
|
||||
if dev.nvram_zone == zone then
|
||||
zone_dev = dev
|
||||
end
|
||||
end
|
||||
|
||||
if not zone_dev then
|
||||
return nil
|
||||
else
|
||||
return zone_dev.main_ifname, zone_dev.ext_ifname, zone_dev.apcli_ifname, zone_dev.wds_ifname, zone_dev.mesh_ifname
|
||||
end
|
||||
end
|
||||
|
||||
-- input: L1 profile path.
|
||||
-- output A table, devs, contains
|
||||
-- 1. devs[%d] = table of each INDEX# in the L1 profile
|
||||
-- 2. devs.ifname_ridx[ifname]
|
||||
-- = table of each ifname and point to relevant contain in dev[$d]
|
||||
-- 3. devs.devname_ridx[devname] similar to devs.ifnameridx, but use devname.
|
||||
-- devname = INDEX#_value.mainidx(.subidx)
|
||||
-- Using *_ridx do not need to handle name=k1;k2 case of DBDC card.
|
||||
function l1dat_parser.load_l1_profile(path)
|
||||
local devs = setmetatable({}, {__index=
|
||||
function(tbl, key)
|
||||
local util = require("luci.util")
|
||||
--print("metatable function:", util.serialize_data(tbl), key)
|
||||
--print("-----------------------------------------------")
|
||||
if ( string.match(key, "^%d+")) then
|
||||
tbl[key] = {}
|
||||
return tbl[key]
|
||||
end
|
||||
end
|
||||
})
|
||||
local nixio = require("nixio")
|
||||
local chipset_num = {}
|
||||
local dir = io.popen("ls /etc/wireless/")
|
||||
if not dir then return end
|
||||
local fd = io.open(path, "r")
|
||||
if not fd then return end
|
||||
|
||||
-- convert l1 profile into lua table
|
||||
for line in fd:lines() do
|
||||
line = l1dat_parser.__trim(line)
|
||||
if string.byte(line) ~= string.byte("#") then
|
||||
local i = string.find(line, "=")
|
||||
if i then
|
||||
local k, v, k1, k2
|
||||
k = l1dat_parser.__trim( string.sub(line, 1, i-1) )
|
||||
v = l1dat_parser.__trim( string.sub(line, i+1) )
|
||||
k1, k2 = string.match(k, "INDEX(%d+)_(.+)")
|
||||
if k1 then
|
||||
k1 = tonumber(k1) + 1
|
||||
if devs[k1][k2] then
|
||||
nixio.syslog("warning", "skip repeated key"..line)
|
||||
end
|
||||
devs[k1][k2] = v or ""
|
||||
else
|
||||
k1 = string.match(k, "INDEX(%d+)")
|
||||
k1 = tonumber(k1) + 1
|
||||
devs[k1]["INDEX"] = v
|
||||
|
||||
chipset_num[v] = (not chipset_num[v] and 1) or chipset_num[v] + 1
|
||||
devs[k1]["mainidx"] = chipset_num[v]
|
||||
end
|
||||
--else
|
||||
-- nixio.syslog("warning", "skip line without '=' "..line)
|
||||
end
|
||||
--else
|
||||
-- nixio.syslog("warning", "skip comment line "..line)
|
||||
end
|
||||
end
|
||||
|
||||
l1dat_parser.add_default_value(devs)
|
||||
--local util = require("luci.util")
|
||||
--local seen2 = {}
|
||||
-- print("Before setup ridx", util.serialize_data(devs, seen2))
|
||||
|
||||
-- Force to setup reverse indice for quick search.
|
||||
-- Benifit:
|
||||
-- 1. O(1) search with ifname, devname
|
||||
-- 2. Seperate DBDC name=k1;k2 format in the L1 profile into each
|
||||
-- ifname, devname.
|
||||
local dbdc_if = {}
|
||||
local ridx = l1dat_parser.IF_RINDEX
|
||||
local dridx = l1dat_parser.DEV_RINDEX
|
||||
local band_num = l1dat_parser.MAX_NUM_DBDC_BAND
|
||||
local k, v, dev, i , j, last
|
||||
local devname
|
||||
devs[ridx] = {}
|
||||
devs[dridx] = {}
|
||||
for _, dev in ipairs(devs) do
|
||||
dbdc_if[band_num] = l1dat_parser.token_get(dev.main_ifname, band_num, nil)
|
||||
if dbdc_if[band_num] then
|
||||
for i = 1, band_num - 1 do
|
||||
dbdc_if[i] = l1dat_parser.token_get(dev.main_ifname, i, nil)
|
||||
end
|
||||
for i = 1, band_num do
|
||||
devs[ridx][dbdc_if[i]] = {}
|
||||
devs[ridx][dbdc_if[i]]["subidx"] = i
|
||||
|
||||
for k, v in pairs(dev) do
|
||||
if k == "INDEX" or k == "EEPROM_offset" or k == "EEPROM_size"
|
||||
or k == "mainidx" then
|
||||
devs[ridx][dbdc_if[i]][k] = v
|
||||
else
|
||||
devs[ridx][dbdc_if[i]][k] = l1dat_parser.token_get(v, i, "")
|
||||
end
|
||||
end
|
||||
devname = dev.INDEX.."."..dev.mainidx.."."..devs[ridx][dbdc_if[i]]["subidx"]
|
||||
devs[dridx][devname] = devs[ridx][dbdc_if[i]]
|
||||
end
|
||||
|
||||
local apcli_if, wds_if, ext_if, mesh_if = {}, {}, {}, {}
|
||||
|
||||
for i = 1, band_num do
|
||||
ext_if[i] = l1dat_parser.token_get(dev.ext_ifname, i, nil)
|
||||
apcli_if[i] = l1dat_parser.token_get(dev.apcli_ifname, i, nil)
|
||||
wds_if[i] = l1dat_parser.token_get(dev.wds_ifname, i, nil)
|
||||
mesh_if[i] = l1dat_parser.token_get(dev.mesh_ifname, i, nil)
|
||||
end
|
||||
|
||||
for i = 1, l1dat_parser.MAX_NUM_EXTIF - 1 do -- ifname idx is from 0
|
||||
for j = 1, band_num do
|
||||
devs[ridx][ext_if[j]..i] = devs[ridx][dbdc_if[j]]
|
||||
end
|
||||
end
|
||||
|
||||
for i = 0, l1dat_parser.MAX_NUM_APCLI - 1 do
|
||||
for j = 1, band_num do
|
||||
devs[ridx][apcli_if[j]..i] = devs[ridx][dbdc_if[j]]
|
||||
end
|
||||
end
|
||||
|
||||
for i = 0, l1dat_parser.MAX_NUM_WDS - 1 do
|
||||
for j = 1, band_num do
|
||||
devs[ridx][wds_if[j]..i] = devs[ridx][dbdc_if[j]]
|
||||
end
|
||||
end
|
||||
|
||||
for i = 0, l1dat_parser.MAX_NUM_MESH - 1 do
|
||||
for j = 1, band_num do
|
||||
if mesh_if[j] then
|
||||
devs[ridx][mesh_if[j]..i] = devs[ridx][dbdc_if[j]]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
else
|
||||
devs[ridx][dev.main_ifname] = dev
|
||||
|
||||
devname = dev.INDEX.."."..dev.mainidx
|
||||
devs[dridx][devname] = dev
|
||||
|
||||
for i = 1, l1dat_parser.MAX_NUM_EXTIF - 1 do -- ifname idx is from 0
|
||||
devs[ridx][dev.ext_ifname..i] = dev
|
||||
end
|
||||
|
||||
for i = 0, l1dat_parser.MAX_NUM_APCLI - 1 do -- ifname idx is from 0
|
||||
devs[ridx][dev.apcli_ifname..i] = dev
|
||||
end
|
||||
|
||||
for i = 0, l1dat_parser.MAX_NUM_WDS - 1 do -- ifname idx is from 0
|
||||
devs[ridx][dev.wds_ifname..i] = dev
|
||||
end
|
||||
|
||||
for i = 0, l1dat_parser.MAX_NUM_MESH - 1 do -- ifname idx is from 0
|
||||
devs[ridx][dev.mesh_ifname..i] = dev
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
fd:close()
|
||||
return devs
|
||||
end
|
||||
|
||||
function l1dat_parser.creat_link_for_nvram( )
|
||||
local devs = l1dat_parser.load_l1_profile(l1dat_parser.L1_DAT_PATH)
|
||||
for devname, dev in pairs(devs.devname_ridx) do
|
||||
local dev = devs.devname_ridx[devname]
|
||||
profile = dev.profile_path
|
||||
os.execute("mkdir -p /tmp/mtk/wifi/")
|
||||
if dev.nvram_zone == "dev1" then
|
||||
os.execute("ln -sf " ..profile.." /tmp/mtk/wifi/2860")
|
||||
elseif dev.nvram_zone == "dev2" then
|
||||
os.execute("ln -sf " ..profile.." /tmp/mtk/wifi/rtdev")
|
||||
elseif dev.nvram_zone == "dev3" then
|
||||
os.execute("ln -sf " ..profile.." /tmp/mtk/wifi/wifi3")
|
||||
end
|
||||
end
|
||||
end
|
||||
return l1dat_parser
|
1764
package/mtk/applications/luci-app-mtk/root/usr/lib/lua/mtkwifi.lua
Normal file
1764
package/mtk/applications/luci-app-mtk/root/usr/lib/lua/mtkwifi.lua
Normal file
File diff suppressed because it is too large
Load Diff
130
package/mtk/applications/luci-app-mtk/root/usr/lib/lua/shuci.lua
Normal file
130
package/mtk/applications/luci-app-mtk/root/usr/lib/lua/shuci.lua
Normal file
@ -0,0 +1,130 @@
|
||||
#!/usr/bin/env lua
|
||||
|
||||
--[[
|
||||
* A pure lua library to translate between:
|
||||
* lua table <--> uci config
|
||||
*
|
||||
* For UCI: http://wiki.openwrt.org/doc/techref/uci
|
||||
* http://wiki.openwrt.org/doc/uci
|
||||
*
|
||||
* Copyright (C) 2015 Hua Shao <nossiac@163.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License version 2.1
|
||||
* as published by the Free Software Foundation
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
]]
|
||||
|
||||
|
||||
local shuci = {}
|
||||
|
||||
function shuci.decode(path)
|
||||
function file_exists(name)
|
||||
local f=io.open(name,"r")
|
||||
if f~=nil then io.close(f) return true else return false end
|
||||
end
|
||||
local function linebreaker(str)
|
||||
local i,_ = string.find(str, "([^%s])")
|
||||
if not i then return nil end
|
||||
if string.find(str, "config%s+%w+") then
|
||||
local i,j,k,v = string.find(str, "config%s+([%w-_]+)%s*['\"]*([^%s\'\"]*)")
|
||||
return "section", k, v
|
||||
elseif string.find(str, "option%s+%w+") then
|
||||
local i,j,k,v = string.find(str, "option%s+([%w-_]+)%s*['\"]([^'\"]+)['\"]")
|
||||
if not k or not v then
|
||||
i,j,k,v = string.find(str, "option%s+([%w-_]+)%s*['\"]*([^%s\'\"]*)")
|
||||
end
|
||||
return "option", k, v
|
||||
elseif string.find(str, "list%s+%w+") then
|
||||
local i,j,k,v = string.find(str, "list%s+([%w-_]+)%s*['\"]([^'\"]+)['\"]")
|
||||
if not k or not v then
|
||||
i,j,k,v = string.find(str, "list%s+([%w-_]+)%s*['\"]*([^%s\'\"]*)")
|
||||
end
|
||||
return "list", k, v
|
||||
end
|
||||
end
|
||||
|
||||
if not file_exists(path) then
|
||||
return
|
||||
end
|
||||
|
||||
local _sect_ = nil
|
||||
local t = {}
|
||||
for line in io.lines(path) do
|
||||
local _type, _name, _value = linebreaker(line)
|
||||
if _type == "section" then
|
||||
if not t[_name] then
|
||||
t[_name] = {}
|
||||
end
|
||||
t[_name][#t[_name]+1] = {}
|
||||
_sect_ = t[_name][#t[_name]]
|
||||
if _value then
|
||||
_sect_[".name"] = _value
|
||||
end
|
||||
end
|
||||
if _type == "option" then
|
||||
if _name and _value then
|
||||
_sect_[_name] = _value
|
||||
end
|
||||
end
|
||||
if _type == "list" and _name and _value then
|
||||
local idx
|
||||
if not _sect_[_name] then
|
||||
_sect_[_name] = {}
|
||||
_sect_[_name][1] = _value
|
||||
else
|
||||
idx = #_sect_[_name]
|
||||
_sect_[_name][idx+1] = _value
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return t
|
||||
end
|
||||
|
||||
|
||||
function shuci.encode(t, path)
|
||||
local dump = io.write
|
||||
if path then
|
||||
local fp = io.open(path, "w")
|
||||
dump = function(str) fp:write(str) end
|
||||
end
|
||||
for stype,ss in pairs(t) do
|
||||
if #ss > 0 then
|
||||
for _,s in ipairs(ss) do
|
||||
dump(string.format("config\t%s\t'%s'\n", stype, s[".name"] or ""))
|
||||
for k,v in pairs(s) do
|
||||
if type(v) == "table" then
|
||||
for _,vv in ipairs(v) do
|
||||
dump(string.format("\tlist\t%s\t'%s'\n",k,vv))
|
||||
end
|
||||
elseif type(v) == "string" and k ~= ".name" then
|
||||
dump(string.format("\toption\t%s\t'%s'\n",k,v))
|
||||
elseif type(v) == "number" and k ~= ".name" then
|
||||
dump(string.format("\toption\t%s\t'%s'\n",k,tonumber(v)))
|
||||
end
|
||||
end
|
||||
dump("\n")
|
||||
end
|
||||
else
|
||||
dump(string.format("config\t%s\t'%s'\n", stype, ss[".name"] or ""))
|
||||
for k,v in pairs(ss) do
|
||||
if type(v) == "table" then
|
||||
for _,vv in ipairs(v) do
|
||||
dump(string.format("\tlist\t%s\t'%s'\n",k,vv))
|
||||
end
|
||||
elseif type(v) == "string" and k ~= ".name" then
|
||||
dump(string.format("\toption\t%s\t'%s'\n",k,v))
|
||||
elseif type(v) == "number" and k ~= ".name" then
|
||||
dump(string.format("\toption\t%s\t'%s'\n",k,tonumber(v)))
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return shuci
|
24
package/mtk/applications/luci-app-mtk/src/Makefile
Normal file
24
package/mtk/applications/luci-app-mtk/src/Makefile
Normal file
@ -0,0 +1,24 @@
|
||||
OBJ_IOCTL = ioctl_helper.o rate_calc.o security.o
|
||||
CFLAGS += -I.
|
||||
CFLAGS += -I$(ROOTDIR)/user/luci/lua-5.1.5/src
|
||||
CFLAGS += -Wall -shared -fPIC
|
||||
LUCI_APP_MTK_TARGET = ioctl_helper
|
||||
|
||||
%.o: %.c $(DEPS)
|
||||
$(CC) -c -o $@ $< $(CFLAGS)
|
||||
|
||||
all: $(LUCI_APP_MTK_TARGET)
|
||||
|
||||
ioctl_helper: $(OBJ_IOCTL)
|
||||
$(CC) -o $@.so $^ $(CFLAGS)
|
||||
|
||||
compile: $(LUCI_APP_MTK_TARGET)
|
||||
|
||||
install: compile
|
||||
mkdir -p $(DESTDIR)/usr/lib/lua
|
||||
cp -pR ioctl_helper.so $(DESTDIR)/usr/lib/lua/
|
||||
|
||||
clean:
|
||||
rm -f *.o *.so
|
||||
|
||||
romfs:
|
629
package/mtk/applications/luci-app-mtk/src/ioctl_helper.c
Normal file
629
package/mtk/applications/luci-app-mtk/src/ioctl_helper.c
Normal file
@ -0,0 +1,629 @@
|
||||
#include <arpa/inet.h>
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
#include <linux/wireless.h>
|
||||
|
||||
#include "mtwifi.h"
|
||||
|
||||
int luaopen_ioctl_helper(lua_State *L)
|
||||
{
|
||||
lua_register(L,"c_get_macaddr",get_macaddr);
|
||||
lua_register(L,"c_convert_string_display",convert_string_display);
|
||||
lua_register(L,"c_StaInfo",StaInfo);
|
||||
lua_register(L,"c_getWMode",getWMOde);
|
||||
lua_register(L,"c_getTempature",getTempature);
|
||||
lua_register(L,"c_scanResult",scanResult);
|
||||
lua_register(L,"c_getTxPower",getTxPower);
|
||||
lua_register(L,"c_getChannel",getChannel);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int scanResult(lua_State *L)
|
||||
{
|
||||
int socket_id;
|
||||
const char *interface = luaL_checkstring(L, 1);
|
||||
const char *tmp_idx = luaL_checkstring(L, 2);
|
||||
struct iwreq wrq;
|
||||
char *data = NULL;
|
||||
unsigned int data_len = 5000;
|
||||
|
||||
if((data = (char *)malloc(data_len)) == NULL){
|
||||
fprintf(stderr, "%s: malloc failed\n", __func__);
|
||||
return -1;
|
||||
}
|
||||
memset(data, 0, data_len);
|
||||
socket_id = socket(AF_INET, SOCK_DGRAM, 0);
|
||||
if (socket_id < 0) {
|
||||
perror("socket() failed");
|
||||
free(data);
|
||||
return socket_id;
|
||||
}
|
||||
|
||||
snprintf(wrq.ifr_name, sizeof(wrq.ifr_name), "%s", interface);
|
||||
snprintf(data, data_len, "%s", tmp_idx);
|
||||
wrq.u.data.length = data_len;
|
||||
wrq.u.data.pointer = data;
|
||||
wrq.u.data.flags = 0;
|
||||
if (ioctl(socket_id, RTPRIV_IOCTL_GSITESURVEY, &wrq) < 0) {
|
||||
fprintf(stderr, "ioctl -> RTPRIV_IOCTL_GSITESURVEY Fail !");
|
||||
close(socket_id);
|
||||
free(data);
|
||||
return -1;
|
||||
}
|
||||
lua_newtable(L);
|
||||
lua_pushstring(L, "scanresult"); /* push key */
|
||||
lua_pushstring(L, data); /* push value */
|
||||
lua_settable(L, -3);
|
||||
close(socket_id);
|
||||
free(data);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
static unsigned int get_temp(const char *interface)
|
||||
{
|
||||
int socket_id;
|
||||
struct iwreq wrq;
|
||||
unsigned int tempature = 0;
|
||||
socket_id = socket(AF_INET, SOCK_DGRAM, 0);
|
||||
if (socket_id < 0) {
|
||||
perror("socket() failed");
|
||||
return socket_id;
|
||||
}
|
||||
|
||||
snprintf(wrq.ifr_name, sizeof(wrq.ifr_name), "%s", interface);
|
||||
wrq.u.data.length = sizeof(tempature);
|
||||
wrq.u.data.pointer = &tempature;
|
||||
wrq.u.data.flags = OID_GET_CPU_TEMPERATURE;
|
||||
if( ioctl(socket_id, RT_PRIV_IOCTL, &wrq) == -1)
|
||||
fprintf(stderr, "%s: ioctl fail\n", __func__);
|
||||
close(socket_id);
|
||||
|
||||
return tempature;
|
||||
}
|
||||
|
||||
int getTempature(lua_State *L)
|
||||
{
|
||||
char tempstr[5] = {0};
|
||||
const char *interface = luaL_checkstring(L, 1);
|
||||
snprintf(tempstr, sizeof(tempstr), "%d", get_temp(interface));
|
||||
lua_newtable(L);
|
||||
lua_pushstring(L, "tempature"); /* push key */
|
||||
lua_pushstring(L, tempstr); /* push value */
|
||||
lua_settable(L, -3);
|
||||
/* Returning one table which is already on top of Lua stack. */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static unsigned int get_txpower(const char *interface)
|
||||
{
|
||||
int socket_id;
|
||||
struct iwreq wrq;
|
||||
int txpower = 0;
|
||||
socket_id = socket(AF_INET, SOCK_DGRAM, 0);
|
||||
if (socket_id < 0) {
|
||||
perror("socket() failed");
|
||||
return socket_id;
|
||||
}
|
||||
|
||||
snprintf(wrq.ifr_name, sizeof(wrq.ifr_name), "%s", interface);
|
||||
wrq.u.txpower.flags = 0;
|
||||
|
||||
if(ioctl(socket_id, SIOCGIWTXPOW, &wrq) >= 0) {
|
||||
txpower = wrq.u.txpower.value;
|
||||
} else {
|
||||
fprintf(stderr, "%s: ioctl fail\n", __func__);
|
||||
}
|
||||
|
||||
close(socket_id);
|
||||
|
||||
return txpower;
|
||||
}
|
||||
|
||||
int getTxPower(lua_State *L)
|
||||
{
|
||||
char tempstr[5] = {0};
|
||||
const char *interface = luaL_checkstring(L, 1);
|
||||
snprintf(tempstr, sizeof(tempstr), "%d", get_txpower(interface));
|
||||
lua_newtable(L);
|
||||
lua_pushstring(L, "txpower"); /* push key */
|
||||
lua_pushstring(L, tempstr); /* push value */
|
||||
lua_settable(L, -3);
|
||||
/* Returning one table which is already on top of Lua stack. */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static unsigned int get_w_mode(const char *interface)
|
||||
{
|
||||
int socket_id;
|
||||
struct iwreq wrq;
|
||||
unsigned char data = 0;
|
||||
socket_id = socket(AF_INET, SOCK_DGRAM, 0);
|
||||
if (socket_id < 0) {
|
||||
perror("socket() failed");
|
||||
return socket_id;
|
||||
}
|
||||
|
||||
snprintf(wrq.ifr_name, sizeof(wrq.ifr_name), "%s", interface);
|
||||
wrq.u.data.length = sizeof(data);
|
||||
wrq.u.data.pointer = &data;
|
||||
wrq.u.data.flags = OID_GET_WMODE;
|
||||
if( ioctl(socket_id, RT_PRIV_IOCTL, &wrq) == -1)
|
||||
fprintf(stderr, "%s: ioctl fail\n", __func__);
|
||||
close(socket_id);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
int get_macaddr(lua_State *L)
|
||||
{
|
||||
const char *ifname = luaL_checkstring(L, 1);
|
||||
struct ifreq ifr;
|
||||
char *ptr;
|
||||
int skfd;
|
||||
static char if_hw[18] = {0};
|
||||
|
||||
if((skfd = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
|
||||
//printf(stderr, "%s: open socket error\n", __func__);
|
||||
return skfd;
|
||||
}
|
||||
snprintf(ifr.ifr_name, IF_NAMESIZE, "%s", ifname);
|
||||
if(ioctl(skfd, SIOCGIFHWADDR, &ifr) < 0) {
|
||||
close(skfd);
|
||||
fprintf(stderr, "%s: ioctl fail\n", __func__);
|
||||
return -1;
|
||||
}
|
||||
|
||||
ptr = (char *)&ifr.ifr_addr.sa_data;
|
||||
sprintf(if_hw, "%02X:%02X:%02X:%02X:%02X:%02X",
|
||||
(ptr[0] & 0377), (ptr[1] & 0377), (ptr[2] & 0377),
|
||||
(ptr[3] & 0377), (ptr[4] & 0377), (ptr[5] & 0377));
|
||||
close(skfd);
|
||||
|
||||
lua_newtable(L);
|
||||
lua_pushstring(L, "macaddr"); /* push key */
|
||||
lua_pushstring(L, if_hw); /* push value */
|
||||
lua_settable(L, -3);
|
||||
/* Returning one table which is already on top of Lua stack. */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int get_channel(const char *interface)
|
||||
{
|
||||
int socket_id;
|
||||
struct iwreq wrq;
|
||||
int channel = -1;
|
||||
socket_id = socket(AF_INET, SOCK_DGRAM, 0);
|
||||
if (socket_id < 0) {
|
||||
perror("socket() failed");
|
||||
return socket_id;
|
||||
}
|
||||
|
||||
snprintf(wrq.ifr_name, sizeof(wrq.ifr_name), "%s", interface);
|
||||
|
||||
if(ioctl(socket_id, SIOCGIWFREQ, &wrq) >= 0) {
|
||||
channel = wrq.u.freq.m;
|
||||
} else {
|
||||
fprintf(stderr, "%s: ioctl fail\n", __func__);
|
||||
}
|
||||
|
||||
close(socket_id);
|
||||
|
||||
return channel;
|
||||
}
|
||||
|
||||
int getChannel(lua_State *L)
|
||||
{
|
||||
char tempstr[5] = {0};
|
||||
const char *interface = luaL_checkstring(L, 1);
|
||||
|
||||
snprintf(tempstr, sizeof(tempstr), "%d", get_channel(interface));
|
||||
lua_newtable(L);
|
||||
lua_pushstring(L, "channel"); /* push key */
|
||||
lua_pushstring(L, tempstr); /* push value */
|
||||
lua_settable(L, -3);
|
||||
/* Returning one table which is already on top of Lua stack. */
|
||||
return 1;
|
||||
}
|
||||
|
||||
int getWMOde(lua_State *L)
|
||||
{
|
||||
char w_mode[5];
|
||||
const char *interface = luaL_checkstring(L, 1);
|
||||
snprintf(w_mode, sizeof(w_mode), "%d", get_w_mode(interface));
|
||||
lua_newtable(L);
|
||||
lua_pushstring(L, "getwmode"); /* push key */
|
||||
lua_pushstring(L, w_mode); /* push value */
|
||||
lua_settable(L, -3);
|
||||
/* Returning one table which is already on top of Lua stack. */
|
||||
return 1;
|
||||
}
|
||||
|
||||
int convert_string_display(lua_State *L)
|
||||
{
|
||||
#define BUF_SIZE 256
|
||||
int len, i;
|
||||
char buffer[BUF_SIZE]; // 33(characters in SSID) * 6(maximum length of a HTML entity) = 198 + 1(null character) = 199
|
||||
char *pOut,*pBufLimit;
|
||||
const char *str = luaL_checkstring(L, 1);
|
||||
|
||||
memset(buffer,0,BUF_SIZE);
|
||||
len = strlen(str);
|
||||
pOut = &buffer[0];
|
||||
pBufLimit = &buffer[BUF_SIZE - 1];
|
||||
for (i = 0; i < len && (pBufLimit - pOut) >=7; i++) { // 6(maximum length of a HTML entity) + 1(null character) = 7
|
||||
switch (str[i]) {
|
||||
case 38:
|
||||
sprintf(pOut, "&"); // '&'
|
||||
pOut += 5;
|
||||
break;
|
||||
|
||||
case 60:
|
||||
sprintf(pOut, "<"); // '<'
|
||||
pOut += 4;
|
||||
break;
|
||||
|
||||
case 62:
|
||||
sprintf(pOut, ">"); // '>'
|
||||
pOut += 4;
|
||||
break;
|
||||
|
||||
case 34:
|
||||
sprintf(pOut, """); // '"'
|
||||
pOut += 5;
|
||||
break;
|
||||
|
||||
case 39:
|
||||
sprintf(pOut, "'"); // '''
|
||||
pOut += 5;
|
||||
break;
|
||||
case 32:
|
||||
sprintf(pOut, " "); // ' '
|
||||
pOut += 6;
|
||||
break;
|
||||
|
||||
default:
|
||||
if ((str[i]>=0) && (str[i]<=31)) {
|
||||
//Device Control Characters
|
||||
sprintf(pOut, "&#%02d;", str[i]);
|
||||
pOut += 5;
|
||||
} else if ((str[i]==39) || (str[i]==47) || (str[i]==59) || (str[i]==92)) {
|
||||
// ' / ; (backslash)
|
||||
sprintf(pOut, "&#%02d;", str[i]);
|
||||
pOut += 5;
|
||||
} else if (str[i]>=127) {
|
||||
//Device Control Characters
|
||||
sprintf(pOut, "&#%03d;", str[i]);
|
||||
pOut += 6;
|
||||
} else {
|
||||
*pOut = str[i];
|
||||
pOut++;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
*pOut = '\0';
|
||||
lua_newtable(L);
|
||||
lua_pushstring(L, "output"); /* push key */
|
||||
lua_pushstring(L, buffer); /* push value */
|
||||
lua_settable(L, -3);
|
||||
return 1;
|
||||
}
|
||||
|
||||
int StaInfo(lua_State *L)
|
||||
{
|
||||
int i, s;
|
||||
struct iwreq iwr;
|
||||
RT_802_11_MAC_TABLE_FIX *table;
|
||||
char tmpBuff[128] = {0};
|
||||
char *phyMode[12] = {"CCK", "OFDM", "MM", "GF", "VHT", "HE",
|
||||
"HE5G", "HE2G", "HE_SU", "HE_EXT_SU", "HE_TRIG", "HE_MU"};
|
||||
const char *interface = luaL_checkstring(L, 1);
|
||||
|
||||
table = (RT_802_11_MAC_TABLE_FIX *)malloc(sizeof(RT_802_11_MAC_TABLE_FIX));
|
||||
if (!table)
|
||||
return -ENOMEM;
|
||||
|
||||
memset(table, 0, sizeof(RT_802_11_MAC_TABLE_FIX));
|
||||
|
||||
s = socket(AF_INET, SOCK_DGRAM, 0);
|
||||
|
||||
snprintf(iwr.ifr_name, IFNAMSIZ, "%s", interface);
|
||||
|
||||
iwr.u.data.pointer = table;
|
||||
|
||||
if (s < 0) {
|
||||
free(table);
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (ioctl(s, RTPRIV_IOCTL_GET_MAC_TABLE_STRUCT, &iwr) < 0) {
|
||||
free(table);
|
||||
close(s);
|
||||
return 0;
|
||||
}
|
||||
|
||||
close(s);
|
||||
|
||||
/* Creates parent table of size table.Num array elements: */
|
||||
lua_createtable(L, table->Num, 0);
|
||||
|
||||
for (i = 0; i < table->Num; i++) {
|
||||
|
||||
lua_pushnumber(L, i);
|
||||
|
||||
RT_802_11_MAC_ENTRY_FIX *pe = &(table->Entry[i]);
|
||||
|
||||
HTTRANSMIT_SETTING_FIX RxRate;
|
||||
HTTRANSMIT_SETTING_FIX TxRate;
|
||||
RxRate.word = pe->LastRxRate.word;
|
||||
TxRate.word = pe->TxRate.word;
|
||||
|
||||
unsigned int mcs = TxRate.field.MCS;
|
||||
unsigned int nss = 0;
|
||||
unsigned long DataRate = 0;
|
||||
|
||||
unsigned int mcs_r = RxRate.field.MCS;
|
||||
unsigned int nss_r = 0;
|
||||
unsigned long DataRate_r = 0;
|
||||
|
||||
int hr, min, sec;
|
||||
|
||||
hr = pe->ConnectedTime/3600;
|
||||
min = (pe->ConnectedTime % 3600)/60;
|
||||
sec = pe->ConnectedTime - hr*3600 - min*60;
|
||||
|
||||
/* Creates first child table of size 34 non-array elements: */
|
||||
lua_createtable(L, 0, 34);
|
||||
|
||||
// MAC Address
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%02X:%02X:%02X:%02X:%02X:%02X", pe->Addr[0], pe->Addr[1], pe->Addr[2], pe->Addr[3],
|
||||
pe->Addr[4], pe->Addr[5]);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "MacAddr");
|
||||
|
||||
// AID, Power Save mode, MIMO Power Save
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", pe->Aid);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Aid");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", pe->Psm);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Psm");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", pe->MimoPs);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "MimoPs");
|
||||
|
||||
// TX Rate NSS-MCS
|
||||
if (TxRate.field.MODE >= MODE_VHT) {
|
||||
nss = ((mcs & (0x3 << 4)) >> 4) + 1;
|
||||
mcs = mcs & 0xF;
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%dSS-MCS%d", nss, mcs);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Mcs");
|
||||
} else {
|
||||
mcs = mcs & 0x3f;
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "MCS%d", mcs);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Mcs");
|
||||
}
|
||||
|
||||
// TX BW
|
||||
if (TxRate.field.BW == BW_20) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", 20);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Bw");
|
||||
} else if (TxRate.field.BW == BW_40) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", 40);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Bw");
|
||||
} else if (TxRate.field.BW == BW_80) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", 80);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Bw");
|
||||
} else if (TxRate.field.BW == BW_160) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", 160);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Bw");
|
||||
}
|
||||
|
||||
//TX SGI
|
||||
if (TxRate.field.MODE < MODE_HTMIX) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", "LGI");
|
||||
} else if (TxRate.field.MODE >= MODE_HE) {
|
||||
if (TxRate.field.ShortGI == 0)
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", "SGI");
|
||||
else if (TxRate.field.ShortGI == 1)
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", "MGI");
|
||||
else if (TxRate.field.ShortGI == 2)
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", "LGI");
|
||||
} else {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", TxRate.field.ShortGI ? "SGI" : "LGI");
|
||||
}
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Gi");
|
||||
|
||||
//TX phy mode
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", phyMode[TxRate.field.MODE]);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "PhyMode");
|
||||
|
||||
//TX STBC
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", TxRate.field.STBC? "STBC": " ");
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Stbc");
|
||||
|
||||
// TxBF configuration
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%c", TxRate.field.iTxBF ? 'I': '-');
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "iTxBF");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%c", TxRate.field.eTxBF ? 'E': '-');
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "eTxBF");
|
||||
|
||||
// RSSI
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", (int)(pe->AvgRssi0));
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "AvgRssi0");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", (int)(pe->AvgRssi1));
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "AvgRssi1");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", (int)(pe->AvgRssi2));
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "AvgRssi2");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", (int)(pe->AvgRssi3));
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "AvgRssi3");
|
||||
|
||||
// Per Stream SNR
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%0.1f", pe->StreamSnr[0]*0.25);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "StreamSnr0");
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%0.1f", pe->StreamSnr[1]*0.25); //mcs>7? pe->StreamSnr[1]*0.25: 0.0);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "StreamSnr1");
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%0.1f", pe->StreamSnr[2]*0.25); //mcs>15? pe->StreamSnr[2]*0.25: 0.0);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "StreamSnr2");
|
||||
|
||||
// Sounding Response SNR
|
||||
if (TxRate.field.eTxBF) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%0.1f", pe->SoundingRespSnr[0]*0.25);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "SoundingRespSnr0");
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%0.1f", pe->SoundingRespSnr[1]*0.25);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "SoundingRespSnr1");
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%0.1f", pe->SoundingRespSnr[2]*0.25);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "SoundingRespSnr2");
|
||||
}
|
||||
|
||||
// Last RX NSS-MCS
|
||||
if (RxRate.field.MODE >= MODE_VHT) {
|
||||
nss_r = (((mcs_r & (0x3 << 4)) >> 4) + 1) / (RxRate.field.STBC + 1);
|
||||
mcs_r = mcs_r & 0xF;
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%dSS-MCS%d", nss_r, mcs_r);
|
||||
} else if (RxRate.field.MODE >= MODE_HTMIX) {
|
||||
mcs_r = mcs_r & 0x3f;
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "MCS%d", mcs_r);
|
||||
} else if (RxRate.field.MODE == MODE_OFDM) {
|
||||
mcs_r = mcs_r & 0xf;
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "MCS%d", mcs_r);
|
||||
RxRate.field.MCS = mcs_r;
|
||||
} else if (RxRate.field.MODE == MODE_CCK) {
|
||||
mcs_r = cck_to_mcs(mcs_r & 0x7);
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "MCS%d", mcs_r);
|
||||
RxRate.field.MCS = mcs_r;
|
||||
}
|
||||
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "LastMcs");
|
||||
|
||||
if (RxRate.field.BW == BW_20) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", 20);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "LastBw");
|
||||
} else if (RxRate.field.BW == BW_40) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", 40);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "LastBw");
|
||||
} else if (RxRate.field.BW == BW_80) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", 80);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "LastBw");
|
||||
} else if (RxRate.field.BW == BW_160) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%d", 160);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "LastBw");
|
||||
}
|
||||
|
||||
if (RxRate.field.MODE < MODE_HTMIX) {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", "LGI");
|
||||
} else if (RxRate.field.MODE >= MODE_HE) {
|
||||
if (RxRate.field.ShortGI == 0)
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", "SGI");
|
||||
else if (RxRate.field.ShortGI == 1)
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", "MGI");
|
||||
else if (RxRate.field.ShortGI == 2)
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", "LGI");
|
||||
} else {
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", RxRate.field.ShortGI ? "SGI" : "LGI");
|
||||
}
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "LastGi");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", phyMode[RxRate.field.MODE]);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "LastPhyMode");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", RxRate.field.STBC ? "STBC": " ");
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "LastStbc");
|
||||
|
||||
// Connect time
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%02d", hr);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Hr");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%02d", min);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Min");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%02d", sec);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "Sec");
|
||||
|
||||
if (TxRate.field.MODE >= MODE_HE) {
|
||||
get_rate_he((mcs & 0xf), TxRate.field.BW, nss, 0, &DataRate);
|
||||
if (TxRate.field.ShortGI == 1)
|
||||
DataRate = (DataRate * 967) >> 10;
|
||||
else if (TxRate.field.ShortGI == 2)
|
||||
DataRate = (DataRate * 870) >> 10;
|
||||
} else {
|
||||
getRate(TxRate, &DataRate);
|
||||
}
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%ld", DataRate);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "TxRate");
|
||||
|
||||
if (RxRate.field.MODE >= MODE_HE) {
|
||||
get_rate_he((mcs_r & 0xf), RxRate.field.BW, nss_r, 0, &DataRate_r);
|
||||
if (RxRate.field.ShortGI == 1)
|
||||
DataRate_r = (DataRate_r * 967) >> 10;
|
||||
else if (RxRate.field.ShortGI == 2)
|
||||
DataRate_r = (DataRate_r * 870) >> 10;
|
||||
} else {
|
||||
getRate(RxRate, &DataRate_r);
|
||||
}
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%ld", DataRate_r);
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "RxRate");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", GetEncryModeStr(pe->EncryMode));
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "EncryptMode");
|
||||
|
||||
snprintf(tmpBuff, sizeof(tmpBuff), "%s", GetAuthModeStr(pe->AuthMode));
|
||||
lua_pushstring(L, tmpBuff);
|
||||
lua_setfield(L, -2, "AuthMode");
|
||||
|
||||
lua_settable(L, -3);
|
||||
}
|
||||
free(table);
|
||||
return 1;
|
||||
}
|
221
package/mtk/applications/luci-app-mtk/src/mtwifi.h
Normal file
221
package/mtk/applications/luci-app-mtk/src/mtwifi.h
Normal file
@ -0,0 +1,221 @@
|
||||
#ifndef __MTWIFI_H
|
||||
#define __MTWIFI_H
|
||||
|
||||
#define USHORT unsigned short
|
||||
#define UCHAR unsigned char
|
||||
#define ULONG unsigned long
|
||||
#define UINT8 unsigned char
|
||||
#define UINT16 unsigned short
|
||||
#define UINT32 unsigned int
|
||||
#define INT32 int
|
||||
#define INT int
|
||||
|
||||
#include <lua.h> /* Always include this */
|
||||
#include <lauxlib.h> /* Always include this */
|
||||
#include <lualib.h> /* Always include this */
|
||||
|
||||
typedef union _HTTRANSMIT_SETTING_FIX {
|
||||
struct {
|
||||
USHORT MCS:6;
|
||||
USHORT ldpc:1;
|
||||
USHORT BW:2;
|
||||
USHORT ShortGI:2;
|
||||
USHORT STBC:1;
|
||||
USHORT eTxBF:1;
|
||||
USHORT iTxBF:1;
|
||||
USHORT MODE:4;
|
||||
} field;
|
||||
UINT32 word;
|
||||
} HTTRANSMIT_SETTING_FIX, *PHTTRANSMIT_SETTING_FIX;
|
||||
|
||||
typedef struct _RT_802_11_MAC_ENTRY_FIX {
|
||||
unsigned char ApIdx;
|
||||
unsigned char Addr[6];
|
||||
unsigned short Aid;
|
||||
unsigned char Psm; // 0:PWR_ACTIVE, 1:PWR_SAVE
|
||||
unsigned char MimoPs; // 0:MMPS_STATIC, 1:MMPS_DYNAMIC, 3:MMPS_Enabled
|
||||
signed char AvgRssi0;
|
||||
signed char AvgRssi1;
|
||||
signed char AvgRssi2;
|
||||
signed char AvgRssi3;
|
||||
unsigned int ConnectedTime;
|
||||
HTTRANSMIT_SETTING_FIX TxRate;
|
||||
HTTRANSMIT_SETTING_FIX LastRxRate;
|
||||
short StreamSnr[3];
|
||||
short SoundingRespSnr[3];
|
||||
UINT32 EncryMode;
|
||||
UINT32 AuthMode;
|
||||
} RT_802_11_MAC_ENTRY_FIX;
|
||||
|
||||
#define MAX_NUMBER_OF_MAC 544
|
||||
|
||||
typedef struct _RT_802_11_MAC_TABLE {
|
||||
unsigned long Num;
|
||||
RT_802_11_MAC_ENTRY_FIX Entry[MAX_NUMBER_OF_MAC];
|
||||
} RT_802_11_MAC_TABLE_FIX;
|
||||
|
||||
#define IF_NAMESIZE 16
|
||||
#define SIOCIWFIRSTPRIV 0x8BE0
|
||||
#define RT_PRIV_IOCTL (SIOCIWFIRSTPRIV + 0x0E)
|
||||
#define RTPRIV_IOCTL_GET_MAC_TABLE_STRUCT (SIOCIWFIRSTPRIV + 0x1F)
|
||||
#define RTPRIV_IOCTL_GSITESURVEY (SIOCIWFIRSTPRIV + 0x0D)
|
||||
#define OID_GET_WMODE 0x099E
|
||||
#define OID_GET_CPU_TEMPERATURE 0x09A1
|
||||
|
||||
#define MODE_CCK 0
|
||||
#define MODE_OFDM 1
|
||||
#define MODE_HTMIX 2
|
||||
#define MODE_HTGREENFIELD 3
|
||||
#define MODE_VHT 4
|
||||
#define MODE_HE 5
|
||||
#define MODE_HE_5G 6
|
||||
#define MODE_HE_24G 7
|
||||
#define MODE_HE_SU 8
|
||||
#define MODE_HE_EXT_SU 9
|
||||
#define MODE_HE_TRIG 10
|
||||
#define MODE_HE_MU 11
|
||||
|
||||
#define TMI_TX_RATE_OFDM_6M 11
|
||||
#define TMI_TX_RATE_OFDM_9M 15
|
||||
#define TMI_TX_RATE_OFDM_12M 10
|
||||
#define TMI_TX_RATE_OFDM_18M 14
|
||||
#define TMI_TX_RATE_OFDM_24M 9
|
||||
#define TMI_TX_RATE_OFDM_36M 13
|
||||
#define TMI_TX_RATE_OFDM_48M 8
|
||||
#define TMI_TX_RATE_OFDM_54M 12
|
||||
|
||||
#define TMI_TX_RATE_CCK_1M_LP 0
|
||||
#define TMI_TX_RATE_CCK_2M_LP 1
|
||||
#define TMI_TX_RATE_CCK_5M_LP 2
|
||||
#define TMI_TX_RATE_CCK_11M_LP 3
|
||||
|
||||
#define TMI_TX_RATE_CCK_2M_SP 5
|
||||
#define TMI_TX_RATE_CCK_5M_SP 6
|
||||
#define TMI_TX_RATE_CCK_11M_SP 7
|
||||
|
||||
enum oid_bw {
|
||||
BAND_WIDTH_20,
|
||||
BAND_WIDTH_40,
|
||||
BAND_WIDTH_80,
|
||||
BAND_WIDTH_160,
|
||||
BAND_WIDTH_10,
|
||||
BAND_WIDTH_5,
|
||||
BAND_WIDTH_8080,
|
||||
BAND_WIDTH_BOTH,
|
||||
BAND_WIDTH_25,
|
||||
BAND_WIDTH_20_242TONE,
|
||||
BAND_WIDTH_NUM
|
||||
};
|
||||
|
||||
#define BW_20 BAND_WIDTH_20
|
||||
#define BW_40 BAND_WIDTH_40
|
||||
#define BW_80 BAND_WIDTH_80
|
||||
#define BW_160 BAND_WIDTH_160
|
||||
#define BW_10 BAND_WIDTH_10
|
||||
#define BW_5 BAND_WIDTH_5
|
||||
#define BW_8080 BAND_WIDTH_8080
|
||||
#define BW_25 BAND_WIDTH_25
|
||||
#define BW_20_242TONE BAND_WIDTH_20_242TONE
|
||||
#define BW_NUM BAND_WIDTH_NUM
|
||||
|
||||
typedef enum _SEC_CIPHER_MODE {
|
||||
SEC_CIPHER_NONE,
|
||||
SEC_CIPHER_WEP40,
|
||||
SEC_CIPHER_WEP104,
|
||||
SEC_CIPHER_WEP128,
|
||||
SEC_CIPHER_TKIP,
|
||||
SEC_CIPHER_CCMP128,
|
||||
SEC_CIPHER_CCMP256,
|
||||
SEC_CIPHER_GCMP128,
|
||||
SEC_CIPHER_GCMP256,
|
||||
SEC_CIPHER_BIP_CMAC128,
|
||||
SEC_CIPHER_BIP_CMAC256,
|
||||
SEC_CIPHER_BIP_GMAC128,
|
||||
SEC_CIPHER_BIP_GMAC256,
|
||||
SEC_CIPHER_WPI_SMS4, /* WPI SMS4 support */
|
||||
SEC_CIPHER_MAX /* Not a real mode, defined as upper bound */
|
||||
} SEC_CIPHER_MODE;
|
||||
|
||||
#define IS_CIPHER_NONE(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_NONE)) > 0)
|
||||
#define IS_CIPHER_WEP40(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_WEP40)) > 0)
|
||||
#define IS_CIPHER_WEP104(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_WEP104)) > 0)
|
||||
#define IS_CIPHER_WEP128(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_WEP128)) > 0)
|
||||
#define IS_CIPHER_WEP(_Cipher) (((_Cipher) & ((1 << SEC_CIPHER_WEP40) | (1 << SEC_CIPHER_WEP104) | (1 << SEC_CIPHER_WEP128))) > 0)
|
||||
#define IS_CIPHER_TKIP(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_TKIP)) > 0)
|
||||
#define IS_CIPHER_WEP_TKIP_ONLY(_Cipher) ((IS_CIPHER_WEP(_Cipher) || IS_CIPHER_TKIP(_Cipher)) && (_Cipher < (1 << SEC_CIPHER_CCMP128)))
|
||||
#define IS_CIPHER_CCMP128(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_CCMP128)) > 0)
|
||||
#define IS_CIPHER_CCMP256(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_CCMP256)) > 0)
|
||||
#define IS_CIPHER_GCMP128(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_GCMP128)) > 0)
|
||||
#define IS_CIPHER_GCMP256(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_GCMP256)) > 0)
|
||||
#define IS_CIPHER_BIP_CMAC128(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_BIP_CMAC128)) > 0)
|
||||
#define IS_CIPHER_BIP_CMAC256(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_BIP_CMAC256)) > 0)
|
||||
#define IS_CIPHER_BIP_GMAC128(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_BIP_GMAC128)) > 0)
|
||||
#define IS_CIPHER_BIP_GMAC256(_Cipher) (((_Cipher) & (1 << SEC_CIPHER_BIP_GMAC256)) > 0)
|
||||
|
||||
/* 802.11 authentication and key management */
|
||||
typedef enum _SEC_AKM_MODE {
|
||||
SEC_AKM_OPEN,
|
||||
SEC_AKM_SHARED,
|
||||
SEC_AKM_AUTOSWITCH,
|
||||
SEC_AKM_WPA1, /* Enterprise security over 802.1x */
|
||||
SEC_AKM_WPA1PSK,
|
||||
SEC_AKM_WPANone, /* For Win IBSS, directly PTK, no handshark */
|
||||
SEC_AKM_WPA2, /* Enterprise security over 802.1x */
|
||||
SEC_AKM_WPA2PSK,
|
||||
SEC_AKM_FT_WPA2,
|
||||
SEC_AKM_FT_WPA2PSK,
|
||||
SEC_AKM_WPA2_SHA256,
|
||||
SEC_AKM_WPA2PSK_SHA256,
|
||||
SEC_AKM_TDLS,
|
||||
SEC_AKM_SAE_SHA256,
|
||||
SEC_AKM_FT_SAE_SHA256,
|
||||
SEC_AKM_SUITEB_SHA256,
|
||||
SEC_AKM_SUITEB_SHA384,
|
||||
SEC_AKM_FT_WPA2_SHA384,
|
||||
SEC_AKM_WAICERT, /* WAI certificate authentication */
|
||||
SEC_AKM_WAIPSK, /* WAI pre-shared key */
|
||||
SEC_AKM_OWE,
|
||||
SEC_AKM_FILS_SHA256,
|
||||
SEC_AKM_FILS_SHA384,
|
||||
SEC_AKM_WPA3, /* WPA3(ent) = WPA2(ent) + PMF MFPR=1 => WPA3 code flow is same as WPA2, the usage of SEC_AKM_WPA3 is to force pmf on */
|
||||
SEC_AKM_MAX /* Not a real mode, defined as upper bound */
|
||||
} SEC_AKM_MODE;
|
||||
|
||||
#define IS_AKM_OPEN(_AKMMap) ((_AKMMap & (1 << SEC_AKM_OPEN)) > 0)
|
||||
#define IS_AKM_SHARED(_AKMMap) ((_AKMMap & (1 << SEC_AKM_SHARED)) > 0)
|
||||
#define IS_AKM_AUTOSWITCH(_AKMMap) ((_AKMMap & (1 << SEC_AKM_AUTOSWITCH)) > 0)
|
||||
#define IS_AKM_WPA1(_AKMMap) ((_AKMMap & (1 << SEC_AKM_WPA1)) > 0)
|
||||
#define IS_AKM_WPA1PSK(_AKMMap) ((_AKMMap & (1 << SEC_AKM_WPA1PSK)) > 0)
|
||||
#define IS_AKM_WPANONE(_AKMMap) ((_AKMMap & (1 << SEC_AKM_WPANone)) > 0)
|
||||
#define IS_AKM_WPA2(_AKMMap) ((_AKMMap & (1 << SEC_AKM_WPA2)) > 0)
|
||||
#define IS_AKM_WPA2PSK(_AKMMap) ((_AKMMap & (1 << SEC_AKM_WPA2PSK)) > 0)
|
||||
#define IS_AKM_FT_WPA2(_AKMMap) ((_AKMMap & (1 << SEC_AKM_FT_WPA2)) > 0)
|
||||
#define IS_AKM_FT_WPA2PSK(_AKMMap) ((_AKMMap & (1 << SEC_AKM_FT_WPA2PSK)) > 0)
|
||||
#define IS_AKM_WPA2_SHA256(_AKMMap) ((_AKMMap & (1 << SEC_AKM_WPA2_SHA256)) > 0)
|
||||
#define IS_AKM_WPA2PSK_SHA256(_AKMMap) ((_AKMMap & (1 << SEC_AKM_WPA2PSK_SHA256)) > 0)
|
||||
#define IS_AKM_TDLS(_AKMMap) ((_AKMMap & (1 << SEC_AKM_TDLS)) > 0)
|
||||
#define IS_AKM_SAE_SHA256(_AKMMap) ((_AKMMap & (1 << SEC_AKM_SAE_SHA256)) > 0)
|
||||
#define IS_AKM_FT_SAE_SHA256(_AKMMap) ((_AKMMap & (1 << SEC_AKM_FT_SAE_SHA256)) > 0)
|
||||
#define IS_AKM_SUITEB_SHA256(_AKMMap) ((_AKMMap & (1 << SEC_AKM_SUITEB_SHA256)) > 0)
|
||||
#define IS_AKM_SUITEB_SHA384(_AKMMap) ((_AKMMap & (1 << SEC_AKM_SUITEB_SHA384)) > 0)
|
||||
#define IS_AKM_FT_WPA2_SHA384(_AKMMap) ((_AKMMap & (1 << SEC_AKM_FT_WPA2_SHA384)) > 0)
|
||||
#define IS_AKM_WPA3(_AKMMap) ((_AKMMap & (1 << SEC_AKM_WPA3)) > 0)
|
||||
#define IS_AKM_WPA3PSK(_AKMMap) (IS_AKM_SAE_SHA256(_AKMMap))
|
||||
#define IS_AKM_WPA3_192BIT(_AKMMap) (IS_AKM_SUITEB_SHA384(_AKMMap))
|
||||
#define IS_AKM_OWE(_AKMMap) ((_AKMMap & (1 << SEC_AKM_OWE)) > 0)
|
||||
|
||||
int get_macaddr(lua_State *L);
|
||||
int convert_string_display(lua_State *L);
|
||||
int StaInfo(lua_State *L);
|
||||
int getWMOde(lua_State *L);
|
||||
int getTxPower(lua_State *L);
|
||||
int getTempature(lua_State *L);
|
||||
int getChannel(lua_State *L);
|
||||
int scanResult(lua_State *L);
|
||||
void getRate(HTTRANSMIT_SETTING_FIX HTSetting, ULONG *fLastTxRxRate);
|
||||
void get_rate_he(UINT8 mcs, UINT8 bw, UINT8 nss, UINT8 dcm, ULONG *last_tx_rate);
|
||||
UINT32 cck_to_mcs(UINT32 mcs);
|
||||
const char *GetEncryModeStr(UINT32 encryMode);
|
||||
const char *GetAuthModeStr(UINT32 authMode);
|
||||
|
||||
#endif
|
479
package/mtk/applications/luci-app-mtk/src/rate_calc.c
Normal file
479
package/mtk/applications/luci-app-mtk/src/rate_calc.c
Normal file
@ -0,0 +1,479 @@
|
||||
#include "mtwifi.h"
|
||||
|
||||
#define MAX_NUM_HE_BANDWIDTHS 4
|
||||
#define MAX_NUM_HE_SPATIAL_STREAMS 4
|
||||
#define MAX_NUM_HE_MCS_ENTRIES 12
|
||||
|
||||
UINT32 cck_to_mcs(UINT32 mcs) {
|
||||
UINT32 ret = 0;
|
||||
if (mcs == TMI_TX_RATE_CCK_1M_LP)
|
||||
ret = 0;
|
||||
else if (mcs == TMI_TX_RATE_CCK_2M_LP)
|
||||
ret = 1;
|
||||
else if (mcs == TMI_TX_RATE_CCK_5M_LP)
|
||||
ret = 2;
|
||||
else if (mcs == TMI_TX_RATE_CCK_11M_LP)
|
||||
ret = 3;
|
||||
else if (mcs == TMI_TX_RATE_CCK_2M_SP)
|
||||
ret = 1;
|
||||
else if (mcs == TMI_TX_RATE_CCK_5M_SP)
|
||||
ret = 2;
|
||||
else if (mcs == TMI_TX_RATE_CCK_11M_SP)
|
||||
ret = 3;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static UINT16 he_mcs_phyrate_mapping_table[MAX_NUM_HE_BANDWIDTHS][MAX_NUM_HE_SPATIAL_STREAMS][MAX_NUM_HE_MCS_ENTRIES] = {
|
||||
{ /*20 Mhz*/
|
||||
/* 1 SS */
|
||||
{
|
||||
/* DCM 0*/
|
||||
8,
|
||||
17,
|
||||
25,
|
||||
34,
|
||||
51,
|
||||
68,
|
||||
77,
|
||||
86,
|
||||
103,
|
||||
114,
|
||||
129,
|
||||
143
|
||||
},
|
||||
/* 2 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
17,
|
||||
34,
|
||||
51,
|
||||
68,
|
||||
103,
|
||||
137,
|
||||
154,
|
||||
172,
|
||||
206,
|
||||
229,
|
||||
258,
|
||||
286
|
||||
},
|
||||
/* 3 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
25,
|
||||
51,
|
||||
77,
|
||||
103,
|
||||
154,
|
||||
206,
|
||||
232,
|
||||
258,
|
||||
309,
|
||||
344,
|
||||
387,
|
||||
430
|
||||
},
|
||||
/* 4 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
34,
|
||||
68,
|
||||
103,
|
||||
137,
|
||||
206,
|
||||
275,
|
||||
309,
|
||||
344,
|
||||
412,
|
||||
458,
|
||||
516,
|
||||
573
|
||||
}
|
||||
},
|
||||
{ /*40 Mhz*/
|
||||
/* 1 SS */
|
||||
{
|
||||
/* DCM 0*/
|
||||
17,
|
||||
34,
|
||||
51,
|
||||
68,
|
||||
103,
|
||||
137,
|
||||
154,
|
||||
172,
|
||||
206,
|
||||
229,
|
||||
258,
|
||||
286
|
||||
},
|
||||
/* 2 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
34,
|
||||
68,
|
||||
103,
|
||||
137,
|
||||
206,
|
||||
275,
|
||||
309,
|
||||
344,
|
||||
412,
|
||||
458,
|
||||
516,
|
||||
573
|
||||
|
||||
},
|
||||
/* 3 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
51,
|
||||
103,
|
||||
154,
|
||||
206,
|
||||
309,
|
||||
412,
|
||||
464,
|
||||
516,
|
||||
619,
|
||||
688,
|
||||
774,
|
||||
860
|
||||
|
||||
},
|
||||
/* 4 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
68,
|
||||
137,
|
||||
206,
|
||||
275,
|
||||
412,
|
||||
550,
|
||||
619,
|
||||
688,
|
||||
825,
|
||||
917,
|
||||
1032,
|
||||
1147
|
||||
}
|
||||
},
|
||||
{ /*80 Mhz*/
|
||||
/* 1 SS */
|
||||
{
|
||||
/* DCM 0*/
|
||||
36,
|
||||
72,
|
||||
108,
|
||||
144,
|
||||
216,
|
||||
288,
|
||||
324,
|
||||
360,
|
||||
432,
|
||||
480,
|
||||
540,
|
||||
600
|
||||
},
|
||||
/* 2 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
72,
|
||||
144,
|
||||
216,
|
||||
288,
|
||||
432,
|
||||
576,
|
||||
648,
|
||||
720,
|
||||
864,
|
||||
960,
|
||||
1080,
|
||||
1201
|
||||
},
|
||||
/* 3 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
108,
|
||||
216,
|
||||
324,
|
||||
432,
|
||||
648,
|
||||
864,
|
||||
972,
|
||||
1080,
|
||||
1297,
|
||||
1441,
|
||||
1621,
|
||||
1801
|
||||
},
|
||||
/* 4 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
144,
|
||||
288,
|
||||
432,
|
||||
576,
|
||||
864,
|
||||
1152,
|
||||
1297,
|
||||
1141,
|
||||
1729,
|
||||
1921,
|
||||
2161,
|
||||
2401
|
||||
}
|
||||
},
|
||||
{ /*160 Mhz*/
|
||||
/* 1 SS */
|
||||
{
|
||||
/* DCM 0*/
|
||||
72,
|
||||
144,
|
||||
216,
|
||||
288,
|
||||
432,
|
||||
576,
|
||||
648,
|
||||
720,
|
||||
864,
|
||||
960,
|
||||
1080,
|
||||
1201
|
||||
},
|
||||
/* 2 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
144,
|
||||
288,
|
||||
432,
|
||||
576,
|
||||
864,
|
||||
1152,
|
||||
1297,
|
||||
1441,
|
||||
1729,
|
||||
1921,
|
||||
2161,
|
||||
2401
|
||||
},
|
||||
/* 3 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
216,
|
||||
432,
|
||||
648,
|
||||
864,
|
||||
1297,
|
||||
1729,
|
||||
1945,
|
||||
2161,
|
||||
2594,
|
||||
2882,
|
||||
3242,
|
||||
3602
|
||||
},
|
||||
/* 4 SS */
|
||||
{
|
||||
/* DCM 0 */
|
||||
288,
|
||||
576,
|
||||
864,
|
||||
1152,
|
||||
1729,
|
||||
2305,
|
||||
2594,
|
||||
2882,
|
||||
3458,
|
||||
3843,
|
||||
4323,
|
||||
4803
|
||||
},
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
void get_rate_he(UINT8 mcs, UINT8 bw, UINT8 nss, UINT8 dcm, ULONG *last_tx_rate)
|
||||
{
|
||||
ULONG value = 0;
|
||||
|
||||
if (nss == 0)
|
||||
nss = 1;
|
||||
|
||||
if (mcs >= MAX_NUM_HE_MCS_ENTRIES)
|
||||
mcs = MAX_NUM_HE_MCS_ENTRIES - 1;
|
||||
|
||||
if (nss > MAX_NUM_HE_SPATIAL_STREAMS)
|
||||
nss = MAX_NUM_HE_SPATIAL_STREAMS;
|
||||
|
||||
if (bw >= MAX_NUM_HE_BANDWIDTHS)
|
||||
bw = MAX_NUM_HE_BANDWIDTHS - 1;
|
||||
|
||||
nss--;
|
||||
|
||||
value = he_mcs_phyrate_mapping_table[bw][nss][mcs];
|
||||
/*In spec data rate when DCM =1 is half of the data rate when DCM = 0*/
|
||||
if (dcm && value)
|
||||
value = value / 2 ;
|
||||
|
||||
*last_tx_rate = (ULONG)value;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static INT32 getLegacyOFDMMCSIndex(UINT8 MCS)
|
||||
{
|
||||
INT32 mcs_index = MCS;
|
||||
|
||||
if (MCS == 0xb)
|
||||
mcs_index = 0;
|
||||
else if (MCS == 0xf)
|
||||
mcs_index = 1;
|
||||
else if (MCS == 0xa)
|
||||
mcs_index = 2;
|
||||
else if (MCS == 0xe)
|
||||
mcs_index = 3;
|
||||
else if (MCS == 0x9)
|
||||
mcs_index = 4;
|
||||
else if (MCS == 0xd)
|
||||
mcs_index = 5;
|
||||
else if (MCS == 0x8)
|
||||
mcs_index = 6;
|
||||
else if (MCS == 0xc)
|
||||
mcs_index = 7;
|
||||
|
||||
return mcs_index;
|
||||
}
|
||||
|
||||
static INT MCSMappingRateTable[] = {
|
||||
2, 4, 11, 22, 12, 18, 24, 36, 48, 72, 96, 108, 109, 110, 111, 112,/* CCK and OFDM */
|
||||
13, 26, 39, 52, 78, 104, 117, 130, 26, 52, 78, 104, 156, 208, 234, 260,
|
||||
39, 78, 117, 156, 234, 312, 351, 390, /* BW 20, 800ns GI, MCS 0~23 */
|
||||
27, 54, 81, 108, 162, 216, 243, 270, 54, 108, 162, 216, 324, 432, 486, 540,
|
||||
81, 162, 243, 324, 486, 648, 729, 810, /* BW 40, 800ns GI, MCS 0~23 */
|
||||
14, 29, 43, 57, 87, 115, 130, 144, 29, 59, 87, 115, 173, 230, 260, 288,
|
||||
43, 87, 130, 173, 260, 317, 390, 433, /* BW 20, 400ns GI, MCS 0~23 */
|
||||
30, 60, 90, 120, 180, 240, 270, 300, 60, 120, 180, 240, 360, 480, 540, 600,
|
||||
90, 180, 270, 360, 540, 720, 810, 900, /* BW 40, 400ns GI, MCS 0~23 */
|
||||
|
||||
/*for 11ac:20 Mhz 800ns GI*/
|
||||
6, 13, 19, 26, 39, 52, 58, 65, 78, 90, /*1ss mcs 0~8*/
|
||||
13, 26, 39, 52, 78, 104, 117, 130, 156, 180, /*2ss mcs 0~8*/
|
||||
19, 39, 58, 78, 117, 156, 175, 195, 234, 260, /*3ss mcs 0~9*/
|
||||
26, 52, 78, 104, 156, 208, 234, 260, 312, 360, /*4ss mcs 0~8*/
|
||||
|
||||
/*for 11ac:40 Mhz 800ns GI*/
|
||||
13, 27, 40, 54, 81, 108, 121, 135, 162, 180, /*1ss mcs 0~9*/
|
||||
27, 54, 81, 108, 162, 216, 243, 270, 324, 360, /*2ss mcs 0~9*/
|
||||
40, 81, 121, 162, 243, 324, 364, 405, 486, 540, /*3ss mcs 0~9*/
|
||||
54, 108, 162, 216, 324, 432, 486, 540, 648, 720, /*4ss mcs 0~9*/
|
||||
|
||||
/*for 11ac:80 Mhz 800ns GI*/
|
||||
29, 58, 87, 117, 175, 234, 263, 292, 351, 390, /*1ss mcs 0~9*/
|
||||
58, 117, 175, 243, 351, 468, 526, 585, 702, 780, /*2ss mcs 0~9*/
|
||||
87, 175, 263, 351, 526, 702, 0, 877, 1053, 1170, /*3ss mcs 0~9*/
|
||||
117, 234, 351, 468, 702, 936, 1053, 1170, 1404, 1560, /*4ss mcs 0~9*/
|
||||
|
||||
/*for 11ac:160 Mhz 800ns GI*/
|
||||
58, 117, 175, 234, 351, 468, 526, 585, 702, 780, /*1ss mcs 0~9*/
|
||||
117, 234, 351, 468, 702, 936, 1053, 1170, 1404, 1560, /*2ss mcs 0~9*/
|
||||
175, 351, 526, 702, 1053, 1404, 1579, 1755, 2160, 0, /*3ss mcs 0~8*/
|
||||
234, 468, 702, 936, 1404, 1872, 2106, 2340, 2808, 3120, /*4ss mcs 0~9*/
|
||||
|
||||
/*for 11ac:20 Mhz 400ns GI*/
|
||||
7, 14, 21, 28, 43, 57, 65, 72, 86, 100, /*1ss mcs 0~8*/
|
||||
14, 28, 43, 57, 86, 115, 130, 144, 173, 200, /*2ss mcs 0~8*/
|
||||
21, 43, 65, 86, 130, 173, 195, 216, 260, 288, /*3ss mcs 0~9*/
|
||||
28, 57, 86, 115, 173, 231, 260, 288, 346, 400, /*4ss mcs 0~8*/
|
||||
|
||||
/*for 11ac:40 Mhz 400ns GI*/
|
||||
15, 30, 45, 60, 90, 120, 135, 150, 180, 200, /*1ss mcs 0~9*/
|
||||
30, 60, 90, 120, 180, 240, 270, 300, 360, 400, /*2ss mcs 0~9*/
|
||||
45, 90, 135, 180, 270, 360, 405, 450, 540, 600, /*3ss mcs 0~9*/
|
||||
60, 120, 180, 240, 360, 480, 540, 600, 720, 800, /*4ss mcs 0~9*/
|
||||
|
||||
/*for 11ac:80 Mhz 400ns GI*/
|
||||
32, 65, 97, 130, 195, 260, 292, 325, 390, 433, /*1ss mcs 0~9*/
|
||||
65, 130, 195, 260, 390, 520, 585, 650, 780, 866, /*2ss mcs 0~9*/
|
||||
97, 195, 292, 390, 585, 780, 0, 975, 1170, 1300, /*3ss mcs 0~9*/
|
||||
130, 260, 390, 520, 780, 1040, 1170, 1300, 1560, 1733, /*4ss mcs 0~9*/
|
||||
|
||||
/*for 11ac:160 Mhz 400ns GI*/
|
||||
65, 130, 195, 260, 390, 520, 585, 650, 780, 866, /*1ss mcs 0~9*/
|
||||
130, 260, 390, 520, 780, 1040, 1170, 1300, 1560, 1733, /*2ss mcs 0~9*/
|
||||
195, 390, 585, 780, 1170, 1560, 1755, 1950, 2340, 0, /*3ss mcs 0~8*/
|
||||
260, 520, 780, 1040, 1560, 2080, 2340, 2600, 3120, 3466, /*4ss mcs 0~9*/
|
||||
|
||||
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
|
||||
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37
|
||||
}; /* 3*3 */
|
||||
|
||||
|
||||
void getRate(HTTRANSMIT_SETTING_FIX HTSetting, ULONG *fLastTxRxRate)
|
||||
{
|
||||
UINT8 Antenna = 0;
|
||||
UINT8 MCS = HTSetting.field.MCS;
|
||||
int rate_count = sizeof(MCSMappingRateTable) / sizeof(int);
|
||||
int rate_index = 0;
|
||||
int value = 0;
|
||||
|
||||
if (HTSetting.field.MODE >= MODE_VHT) {
|
||||
MCS = HTSetting.field.MCS & 0xf;
|
||||
Antenna = (HTSetting.field.MCS >> 4) + 1;
|
||||
|
||||
if (HTSetting.field.BW == BW_20) {
|
||||
rate_index = 112 + ((Antenna - 1) * 10) +
|
||||
((UCHAR)HTSetting.field.ShortGI * 160) +
|
||||
((UCHAR)MCS);
|
||||
} else if (HTSetting.field.BW == BW_40) {
|
||||
rate_index = 152 + ((Antenna - 1) * 10) +
|
||||
((UCHAR)HTSetting.field.ShortGI * 160) +
|
||||
((UCHAR)MCS);
|
||||
} else if (HTSetting.field.BW == BW_80) {
|
||||
rate_index = 192 + ((Antenna - 1) * 10) +
|
||||
((UCHAR)HTSetting.field.ShortGI * 160) +
|
||||
((UCHAR)MCS);
|
||||
} else if (HTSetting.field.BW == BW_160) {
|
||||
rate_index = 232 + ((Antenna - 1) * 10) +
|
||||
((UCHAR)HTSetting.field.ShortGI * 160) +
|
||||
((UCHAR)MCS);
|
||||
}
|
||||
} else {
|
||||
if (HTSetting.field.MODE >= MODE_HTMIX) {
|
||||
MCS = HTSetting.field.MCS;
|
||||
|
||||
if ((HTSetting.field.MODE == MODE_HTMIX)
|
||||
|| (HTSetting.field.MODE == MODE_HTGREENFIELD))
|
||||
Antenna = (MCS >> 3) + 1;
|
||||
|
||||
/* map back to 1SS MCS , multiply by antenna numbers later */
|
||||
if (MCS > 7)
|
||||
MCS %= 8;
|
||||
|
||||
rate_index = 16 + ((UCHAR)HTSetting.field.BW * 24) + ((UCHAR)HTSetting.field.ShortGI * 48) + ((UCHAR)MCS);
|
||||
} else {
|
||||
if (HTSetting.field.MODE == MODE_OFDM)
|
||||
rate_index = getLegacyOFDMMCSIndex(HTSetting.field.MCS) + 4;
|
||||
else if (HTSetting.field.MODE == MODE_CCK)
|
||||
rate_index = (UCHAR)(HTSetting.field.MCS);
|
||||
}
|
||||
}
|
||||
|
||||
if (rate_index < 0)
|
||||
rate_index = 0;
|
||||
|
||||
if (rate_index >= rate_count)
|
||||
rate_index = rate_count - 1;
|
||||
|
||||
if (HTSetting.field.MODE < MODE_VHT)
|
||||
value = (MCSMappingRateTable[rate_index] * 5) / 10;
|
||||
else
|
||||
value = MCSMappingRateTable[rate_index];
|
||||
|
||||
if (HTSetting.field.MODE >= MODE_HTMIX && HTSetting.field.MODE < MODE_VHT)
|
||||
value *= Antenna;
|
||||
|
||||
*fLastTxRxRate = (ULONG)value;
|
||||
return;
|
||||
}
|
79
package/mtk/applications/luci-app-mtk/src/security.c
Normal file
79
package/mtk/applications/luci-app-mtk/src/security.c
Normal file
@ -0,0 +1,79 @@
|
||||
#include "mtwifi.h"
|
||||
|
||||
const char *GetEncryModeStr(UINT32 encryMode)
|
||||
{
|
||||
if (IS_CIPHER_NONE(encryMode))
|
||||
return "NONE";
|
||||
else if (IS_CIPHER_WEP(encryMode))
|
||||
return "WEP";
|
||||
else if (IS_CIPHER_TKIP(encryMode) && IS_CIPHER_CCMP128(encryMode))
|
||||
return "TKIPAES";
|
||||
else if (IS_CIPHER_TKIP(encryMode))
|
||||
return "TKIP";
|
||||
else if (IS_CIPHER_CCMP128(encryMode))
|
||||
return "AES";
|
||||
else if (IS_CIPHER_CCMP256(encryMode))
|
||||
return "CCMP256";
|
||||
else if (IS_CIPHER_GCMP128(encryMode))
|
||||
return "GCMP128";
|
||||
else if (IS_CIPHER_GCMP256(encryMode))
|
||||
return "GCMP256";
|
||||
else if (IS_CIPHER_BIP_CMAC128(encryMode))
|
||||
return "BIP-CMAC128";
|
||||
else if (IS_CIPHER_BIP_CMAC256(encryMode))
|
||||
return "BIP-CMAC256";
|
||||
else if (IS_CIPHER_BIP_GMAC128(encryMode))
|
||||
return "BIP-GMAC128";
|
||||
else if (IS_CIPHER_BIP_GMAC256(encryMode))
|
||||
return "BIP-GMAC256";
|
||||
else
|
||||
return "Unknown";
|
||||
}
|
||||
|
||||
const char *GetAuthModeStr(UINT32 authMode)
|
||||
{
|
||||
if (IS_AKM_OPEN(authMode))
|
||||
return "OPEN";
|
||||
else if (IS_AKM_SHARED(authMode))
|
||||
return "SHARED";
|
||||
else if (IS_AKM_AUTOSWITCH(authMode))
|
||||
return "WEPAUTO";
|
||||
else if (IS_AKM_WPANONE(authMode))
|
||||
return "WPANONE";
|
||||
else if (IS_AKM_FT_WPA2PSK(authMode) && IS_AKM_FT_SAE_SHA256(authMode))
|
||||
return "FT-WPA2PSKWPA3PSK";
|
||||
else if (IS_AKM_WPA1(authMode) && IS_AKM_WPA2(authMode))
|
||||
return "WPA1WPA2";
|
||||
else if (IS_AKM_WPA1PSK(authMode) && IS_AKM_WPA2PSK(authMode))
|
||||
return "WPAPSKWPA2PSK";
|
||||
else if (IS_AKM_WPA2PSK(authMode) && IS_AKM_WPA3PSK(authMode))
|
||||
return "WPA2PSKWPA3PSK";
|
||||
else if (IS_AKM_WPA2PSK(authMode) && IS_AKM_WPA2PSK_SHA256(authMode) && IS_AKM_WPA3PSK(authMode))
|
||||
return "WPA2PSKMIXWPA3PSK";
|
||||
else if (IS_AKM_FT_SAE_SHA256(authMode))
|
||||
return "FT-SAE";
|
||||
else if (IS_AKM_WPA3PSK(authMode))
|
||||
return "WPA3PSK";
|
||||
else if (IS_AKM_WPA1(authMode))
|
||||
return "WPA";
|
||||
else if (IS_AKM_WPA1PSK(authMode))
|
||||
return "WPAPSK";
|
||||
else if (IS_AKM_FT_WPA2(authMode))
|
||||
return "FT-WPA2";
|
||||
else if (IS_AKM_FT_WPA2PSK(authMode))
|
||||
return "FT-WPA2PSK";
|
||||
else if (IS_AKM_WPA3(authMode)) /* WPA3 will be always accompanied by WPA2, so it should put before the WPA2 */
|
||||
return "WPA3";
|
||||
else if (IS_AKM_WPA2(authMode))
|
||||
return "WPA2";
|
||||
else if (IS_AKM_WPA2(authMode) && IS_AKM_WPA2_SHA256(authMode))
|
||||
return "WPA2MIX";
|
||||
else if (IS_AKM_WPA2PSK(authMode))
|
||||
return "WPA2PSK";
|
||||
else if (IS_AKM_WPA3_192BIT(authMode))
|
||||
return "WPA3-192";
|
||||
else if (IS_AKM_OWE(authMode))
|
||||
return "OWE";
|
||||
else
|
||||
return "Unknown";
|
||||
}
|
17
package/mtk/applications/luci-app-mtwifi-cfg/Makefile
Normal file
17
package/mtk/applications/luci-app-mtwifi-cfg/Makefile
Normal file
@ -0,0 +1,17 @@
|
||||
#
|
||||
# Copyright (C) hanwckf <hanwckf@vip.qq.com>
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
LUCI_TITLE:=LuCI support for mtwifi-cfg
|
||||
LUCI_DEPENDS:=+mtwifi-cfg
|
||||
LUCI_PKGARCH:=all
|
||||
|
||||
PKG_VERSION:=1
|
||||
|
||||
include $(TOPDIR)/feeds/luci/luci.mk
|
||||
|
||||
# call BuildPackage - OpenWrt buildroot signature
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user