mirror of https://github.com/OpenIPC/firmware.git
				
				
				
			Merge pull request #183 from cronyx/master
add wifibroadcast, rtl8812au, ath9271 drivers and more small changespull/184/head
						commit
						ac42c54ad6
					
				|  | @ -23,7 +23,9 @@ source "$BR2_EXTERNAL_GOKE_PATH/package/mt7601u-ap-openipc/Config.in" | ||||||
| source "$BR2_EXTERNAL_GOKE_PATH/package/node-exporter/Config.in" | source "$BR2_EXTERNAL_GOKE_PATH/package/node-exporter/Config.in" | ||||||
| source "$BR2_EXTERNAL_GOKE_PATH/package/opus-openipc/Config.in" | source "$BR2_EXTERNAL_GOKE_PATH/package/opus-openipc/Config.in" | ||||||
| source "$BR2_EXTERNAL_GOKE_PATH/package/rtl8188fu-openipc/Config.in" | source "$BR2_EXTERNAL_GOKE_PATH/package/rtl8188fu-openipc/Config.in" | ||||||
|  | source "$BR2_EXTERNAL_GOKE_PATH/package/rtl8812au-openipc/Config.in" | ||||||
| source "$BR2_EXTERNAL_GOKE_PATH/package/uacme-openipc/Config.in" | source "$BR2_EXTERNAL_GOKE_PATH/package/uacme-openipc/Config.in" | ||||||
| source "$BR2_EXTERNAL_GOKE_PATH/package/vtund-openipc/Config.in" | source "$BR2_EXTERNAL_GOKE_PATH/package/vtund-openipc/Config.in" | ||||||
|  | source "$BR2_EXTERNAL_GOKE_PATH/package/wifibroadcast/Config.in" | ||||||
| source "$BR2_EXTERNAL_GOKE_PATH/package/yaml-cli/Config.in" | source "$BR2_EXTERNAL_GOKE_PATH/package/yaml-cli/Config.in" | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1786,7 +1786,7 @@ CONFIG_USB_XHCI_PLATFORM=y | ||||||
| # | # | ||||||
| # also be needed; see USB_STORAGE Help for more info | # also be needed; see USB_STORAGE Help for more info | ||||||
| # | # | ||||||
| CONFIG_USB_STORAGE=m | # CONFIG_USB_STORAGE is not set | ||||||
| # CONFIG_USB_STORAGE_DEBUG is not set | # CONFIG_USB_STORAGE_DEBUG is not set | ||||||
| # CONFIG_USB_STORAGE_REALTEK is not set | # CONFIG_USB_STORAGE_REALTEK is not set | ||||||
| # CONFIG_USB_STORAGE_DATAFAB is not set | # CONFIG_USB_STORAGE_DATAFAB is not set | ||||||
|  |  | ||||||
											
												
													File diff suppressed because it is too large
													Load Diff
												
											
										
									
								
											
												
													File diff suppressed because it is too large
													Load Diff
												
											
										
									
								|  | @ -1819,7 +1819,7 @@ CONFIG_USB_XHCI_PLATFORM=y | ||||||
| # | # | ||||||
| # also be needed; see USB_STORAGE Help for more info | # also be needed; see USB_STORAGE Help for more info | ||||||
| # | # | ||||||
| CONFIG_USB_STORAGE=m | # CONFIG_USB_STORAGE is not set | ||||||
| # CONFIG_USB_STORAGE_DEBUG is not set | # CONFIG_USB_STORAGE_DEBUG is not set | ||||||
| # CONFIG_USB_STORAGE_REALTEK is not set | # CONFIG_USB_STORAGE_REALTEK is not set | ||||||
| # CONFIG_USB_STORAGE_DATAFAB is not set | # CONFIG_USB_STORAGE_DATAFAB is not set | ||||||
|  |  | ||||||
|  | @ -0,0 +1,63 @@ | ||||||
|  | --- a/net/wireless/db.txt	2022-02-06 14:21:30.404705488 +0300
 | ||||||
|  | +++ b/net/wireless/db.txt	2022-02-06 14:22:10.140748295 +0300
 | ||||||
|  | @@ -1,17 +1,43 @@
 | ||||||
|  | -#
 | ||||||
|  | -# This file is a placeholder to prevent accidental build breakage if someone
 | ||||||
|  | -# enables CONFIG_CFG80211_INTERNAL_REGDB.  Almost no one actually needs to
 | ||||||
|  | -# enable that build option.
 | ||||||
|  | -#
 | ||||||
|  | -# You should be using CRDA instead.  It is even better if you use the CRDA
 | ||||||
|  | -# package provided by your distribution, since they will probably keep it
 | ||||||
|  | -# up-to-date on your behalf.
 | ||||||
|  | -#
 | ||||||
|  | -# If you _really_ intend to use CONFIG_CFG80211_INTERNAL_REGDB then you will
 | ||||||
|  | -# need to replace this file with one containing appropriately formatted
 | ||||||
|  | -# regulatory rules that cover the regulatory domains you will be using.  Your
 | ||||||
|  | -# best option is to extract the db.txt file from the wireless-regdb git
 | ||||||
|  | -# repository:
 | ||||||
|  | -#
 | ||||||
|  | -#   git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-regdb.git
 | ||||||
|  | -#
 | ||||||
|  | +country 00:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country DE:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country AT:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country CH:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country TW:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country AU:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country CA:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country US:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country BO:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country GB:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | +
 | ||||||
|  | +country CN:
 | ||||||
|  | +       (2302 - 2742 @ 40), (30)
 | ||||||
|  | +       (4910 - 6110 @ 160), (30)
 | ||||||
|  | @ -0,0 +1,62 @@ | ||||||
|  | --- a/net/wireless/reg.c	2022-02-06 14:25:43.736978901 +0300
 | ||||||
|  | +++ b/net/wireless/reg.c	2022-02-06 14:32:43.577206926 +0300
 | ||||||
|  | @@ -220,34 +220,23 @@
 | ||||||
|  |  	.alpha2 =  "00", | ||||||
|  |  	.reg_rules = { | ||||||
|  |  		/* IEEE 802.11b/g, channels 1..11 */ | ||||||
|  | -		REG_RULE(2412-10, 2462+10, 40, 6, 20, 0),
 | ||||||
|  | +               REG_RULE(2312-10, 2462+10, 40, 6, 30, 0),
 | ||||||
|  |  		/* IEEE 802.11b/g, channels 12..13. */ | ||||||
|  | -		REG_RULE(2467-10, 2472+10, 20, 6, 20,
 | ||||||
|  | -			NL80211_RRF_NO_IR | NL80211_RRF_AUTO_BW),
 | ||||||
|  | +               REG_RULE(2467-10, 2472+10, 40, 6, 30, 0),
 | ||||||
|  |  		/* IEEE 802.11 channel 14 - Only JP enables | ||||||
|  |  		 * this and for 802.11b only */ | ||||||
|  | -		REG_RULE(2484-10, 2484+10, 20, 6, 20,
 | ||||||
|  | -			NL80211_RRF_NO_IR |
 | ||||||
|  | -			NL80211_RRF_NO_OFDM),
 | ||||||
|  | +               REG_RULE(2484-10, 2732+10, 40, 6, 30, 0),
 | ||||||
|  |  		/* IEEE 802.11a, channel 36..48 */ | ||||||
|  | -		REG_RULE(5180-10, 5240+10, 80, 6, 20,
 | ||||||
|  | -                        NL80211_RRF_NO_IR |
 | ||||||
|  | -                        NL80211_RRF_AUTO_BW),
 | ||||||
|  | +               REG_RULE(4920-10, 5240+10, 160, 6, 30, 0),
 | ||||||
|  |   | ||||||
|  |  		/* IEEE 802.11a, channel 52..64 - DFS required */ | ||||||
|  | -		REG_RULE(5260-10, 5320+10, 80, 6, 20,
 | ||||||
|  | -			NL80211_RRF_NO_IR |
 | ||||||
|  | -			NL80211_RRF_AUTO_BW |
 | ||||||
|  | -			NL80211_RRF_DFS),
 | ||||||
|  | +               REG_RULE(5260-10, 5320+10, 80, 6, 30, 0),
 | ||||||
|  |   | ||||||
|  |  		/* IEEE 802.11a, channel 100..144 - DFS required */ | ||||||
|  | -		REG_RULE(5500-10, 5720+10, 160, 6, 20,
 | ||||||
|  | -			NL80211_RRF_NO_IR |
 | ||||||
|  | -			NL80211_RRF_DFS),
 | ||||||
|  | +               REG_RULE(5500-10, 5720+10, 160, 6, 30, 0),
 | ||||||
|  |   | ||||||
|  |  		/* IEEE 802.11a, channel 149..165 */ | ||||||
|  | -		REG_RULE(5745-10, 5825+10, 80, 6, 20,
 | ||||||
|  | -			NL80211_RRF_NO_IR),
 | ||||||
|  | +               REG_RULE(5745-10, 6100+10, 160, 6, 30, 0),
 | ||||||
|  |   | ||||||
|  |  		/* IEEE 802.11ad (60GHz), channels 1..3 */ | ||||||
|  |  		REG_RULE(56160+2160*1-1080, 56160+2160*3+1080, 2160, 0, 0, 0), | ||||||
|  | @@ -3106,7 +3095,7 @@
 | ||||||
|  |  int cfg80211_get_unii(int freq) | ||||||
|  |  { | ||||||
|  |  	/* UNII-1 */ | ||||||
|  | -	if (freq >= 5150 && freq <= 5250)
 | ||||||
|  | +       if (freq >= 4920 && freq <= 5250)
 | ||||||
|  |  		return 0; | ||||||
|  |   | ||||||
|  |  	/* UNII-2A */ | ||||||
|  | @@ -3122,7 +3111,7 @@
 | ||||||
|  |  		return 3; | ||||||
|  |   | ||||||
|  |  	/* UNII-3 */ | ||||||
|  | -	if (freq > 5725 && freq <= 5825)
 | ||||||
|  | +       if (freq > 5725 && freq <= 6100)
 | ||||||
|  |  		return 4; | ||||||
|  |   | ||||||
|  |  	return -EINVAL; | ||||||
|  | @ -0,0 +1,83 @@ | ||||||
|  | --- a/drivers/net/wireless/ath/regd.c	2022-02-06 14:38:00.921409323 +0300
 | ||||||
|  | +++ b/drivers/net/wireless/ath/regd.c	2022-02-06 14:44:22.069710165 +0300
 | ||||||
|  | @@ -33,22 +33,16 @@
 | ||||||
|  |   */ | ||||||
|  |   | ||||||
|  |  /* Only these channels all allow active scan on all world regulatory domains */ | ||||||
|  | -#define ATH9K_2GHZ_CH01_11	REG_RULE(2412-10, 2462+10, 40, 0, 20, 0)
 | ||||||
|  | +#define ATH9K_2GHZ_CH01_11     REG_RULE(2312-10, 2462+10, 40, 0, 30, 0)
 | ||||||
|  |   | ||||||
|  |  /* We enable active scan on these a case by case basis by regulatory domain */ | ||||||
|  | -#define ATH9K_2GHZ_CH12_13	REG_RULE(2467-10, 2472+10, 40, 0, 20,\
 | ||||||
|  | -					 NL80211_RRF_NO_IR)
 | ||||||
|  | -#define ATH9K_2GHZ_CH14		REG_RULE(2484-10, 2484+10, 40, 0, 20,\
 | ||||||
|  | -					 NL80211_RRF_NO_IR | \
 | ||||||
|  | -					 NL80211_RRF_NO_OFDM)
 | ||||||
|  | +#define ATH9K_2GHZ_CH12_13     REG_RULE(2467-10, 2472+10, 40, 0, 30, 0)
 | ||||||
|  | +#define ATH9K_2GHZ_CH14                REG_RULE(2484-10, 2732+10, 40, 0, 30, 0)
 | ||||||
|  |   | ||||||
|  |  /* We allow IBSS on these on a case by case basis by regulatory domain */ | ||||||
|  | -#define ATH9K_5GHZ_5150_5350	REG_RULE(5150-10, 5350+10, 80, 0, 30,\
 | ||||||
|  | -					 NL80211_RRF_NO_IR)
 | ||||||
|  | -#define ATH9K_5GHZ_5470_5850	REG_RULE(5470-10, 5850+10, 80, 0, 30,\
 | ||||||
|  | -					 NL80211_RRF_NO_IR)
 | ||||||
|  | -#define ATH9K_5GHZ_5725_5850	REG_RULE(5725-10, 5850+10, 80, 0, 30,\
 | ||||||
|  | -					 NL80211_RRF_NO_IR)
 | ||||||
|  | +#define ATH9K_5GHZ_5150_5350   REG_RULE(4920-10, 5350+10, 80, 0, 30, 0)
 | ||||||
|  | +#define ATH9K_5GHZ_5470_5850   REG_RULE(5470-10, 6100+10, 80, 0, 30, 0)
 | ||||||
|  | +#define ATH9K_5GHZ_5725_5850   REG_RULE(5725-10, 6100+10, 80, 0, 30, 0)
 | ||||||
|  |   | ||||||
|  |  #define ATH9K_2GHZ_ALL		ATH9K_2GHZ_CH01_11, \ | ||||||
|  |  				ATH9K_2GHZ_CH12_13, \ | ||||||
|  | @@ -77,9 +71,8 @@
 | ||||||
|  |  	.n_reg_rules = 4, | ||||||
|  |  	.alpha2 =  "99", | ||||||
|  |  	.reg_rules = { | ||||||
|  | -		ATH9K_2GHZ_CH01_11,
 | ||||||
|  | -		ATH9K_2GHZ_CH12_13,
 | ||||||
|  | -		ATH9K_5GHZ_NO_MIDBAND,
 | ||||||
|  | +                ATH9K_2GHZ_ALL,
 | ||||||
|  | +                ATH9K_5GHZ_ALL,
 | ||||||
|  |  	} | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  | @@ -88,8 +81,8 @@
 | ||||||
|  |  	.n_reg_rules = 3, | ||||||
|  |  	.alpha2 =  "99", | ||||||
|  |  	.reg_rules = { | ||||||
|  | -		ATH9K_2GHZ_CH01_11,
 | ||||||
|  | -		ATH9K_5GHZ_NO_MIDBAND,
 | ||||||
|  | +                ATH9K_2GHZ_ALL,
 | ||||||
|  | +                ATH9K_5GHZ_ALL,
 | ||||||
|  |  	} | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  | @@ -98,7 +91,7 @@
 | ||||||
|  |  	.n_reg_rules = 3, | ||||||
|  |  	.alpha2 =  "99", | ||||||
|  |  	.reg_rules = { | ||||||
|  | -		ATH9K_2GHZ_CH01_11,
 | ||||||
|  | +                ATH9K_2GHZ_ALL,
 | ||||||
|  |  		ATH9K_5GHZ_ALL, | ||||||
|  |  	} | ||||||
|  |  }; | ||||||
|  | @@ -108,8 +101,7 @@
 | ||||||
|  |  	.n_reg_rules = 4, | ||||||
|  |  	.alpha2 =  "99", | ||||||
|  |  	.reg_rules = { | ||||||
|  | -		ATH9K_2GHZ_CH01_11,
 | ||||||
|  | -		ATH9K_2GHZ_CH12_13,
 | ||||||
|  | +                ATH9K_2GHZ_ALL,
 | ||||||
|  |  		ATH9K_5GHZ_ALL, | ||||||
|  |  	} | ||||||
|  |  }; | ||||||
|  | @@ -256,7 +248,8 @@
 | ||||||
|  |  /* Frequency is one where radar detection is required */ | ||||||
|  |  static bool ath_is_radar_freq(u16 center_freq) | ||||||
|  |  { | ||||||
|  | -	return (center_freq >= 5260 && center_freq <= 5700);
 | ||||||
|  | +//	return (center_freq >= 5260 && center_freq <= 5700);
 | ||||||
|  | +	return 0;
 | ||||||
|  |  } | ||||||
|  |   | ||||||
|  |  static void ath_force_clear_no_ir_chan(struct wiphy *wiphy, | ||||||
|  | @ -0,0 +1,144 @@ | ||||||
|  | --- a/drivers/net/wireless/ath/ath9k/common-init.c	2022-02-06 14:47:53.725892087 +0300
 | ||||||
|  | +++ b/drivers/net/wireless/ath/ath9k/common-init.c	2022-02-06 14:54:27.610245503 +0300
 | ||||||
|  | @@ -22,14 +22,14 @@
 | ||||||
|  |  	.band = NL80211_BAND_2GHZ, \ | ||||||
|  |  	.center_freq = (_freq), \ | ||||||
|  |  	.hw_value = (_idx), \ | ||||||
|  | -	.max_power = 20, \
 | ||||||
|  | +	.max_power = 30, \
 | ||||||
|  |  } | ||||||
|  |   | ||||||
|  |  #define CHAN5G(_freq, _idx) { \ | ||||||
|  |  	.band = NL80211_BAND_5GHZ, \ | ||||||
|  |  	.center_freq = (_freq), \ | ||||||
|  |  	.hw_value = (_idx), \ | ||||||
|  | -	.max_power = 20, \
 | ||||||
|  | +	.max_power = 30, \
 | ||||||
|  |  } | ||||||
|  |   | ||||||
|  |  /* Some 2 GHz radios are actually tunable on 2312-2732 | ||||||
|  | @@ -37,6 +37,27 @@
 | ||||||
|  |   * we have calibration data for all cards though to make | ||||||
|  |   * this static */ | ||||||
|  |  static const struct ieee80211_channel ath9k_2ghz_chantable[] = { | ||||||
|  | +       CHAN2G(2312, 34), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2317, 35), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2322, 36), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2327, 37), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2332, 38), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2337, 39), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2342, 40), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2347, 41), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2352, 42), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2357, 43), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2362, 44), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2367, 45), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2372, 46), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2377, 47), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2382, 48), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2387, 49), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2392, 50), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2397, 51), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2402, 52), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2407, 53), /* Channel XX */
 | ||||||
|  | +
 | ||||||
|  |  	CHAN2G(2412, 0), /* Channel 1 */ | ||||||
|  |  	CHAN2G(2417, 1), /* Channel 2 */ | ||||||
|  |  	CHAN2G(2422, 2), /* Channel 3 */ | ||||||
|  | @@ -50,7 +71,31 @@
 | ||||||
|  |  	CHAN2G(2462, 10), /* Channel 11 */ | ||||||
|  |  	CHAN2G(2467, 11), /* Channel 12 */ | ||||||
|  |  	CHAN2G(2472, 12), /* Channel 13 */ | ||||||
|  | -	CHAN2G(2484, 13), /* Channel 14 */
 | ||||||
|  | +
 | ||||||
|  | +       CHAN2G(2477, 13), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2478, 14), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2482, 15), /* Channel XX */
 | ||||||
|  | + 
 | ||||||
|  | +       CHAN2G(2484, 16), /* Channel 14 */
 | ||||||
|  | + 
 | ||||||
|  | +       CHAN2G(2487, 17), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2489, 18), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2492, 19), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2494, 20), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2497, 21), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2499, 22), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2512, 23), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2532, 24), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2572, 25), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2592, 26), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2612, 27), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2632, 28), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2652, 29), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2672, 30), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2692, 31), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2712, 32), /* Channel XX */
 | ||||||
|  | +       CHAN2G(2732, 33), /* Channel XX */
 | ||||||
|  | +
 | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  |  /* Some 5 GHz radios are actually tunable on XXXX-YYYY | ||||||
|  | @@ -58,34 +103,39 @@
 | ||||||
|  |   * we have calibration data for all cards though to make | ||||||
|  |   * this static */ | ||||||
|  |  static const struct ieee80211_channel ath9k_5ghz_chantable[] = { | ||||||
|  | +       CHAN5G(4920, 54), /* Channel XX */
 | ||||||
|  | +       CHAN5G(4940, 55), /* Channel XX */
 | ||||||
|  | +       CHAN5G(4960, 56), /* Channel XX */
 | ||||||
|  | +       CHAN5G(4980, 57), /* Channel XX */
 | ||||||
|  | +
 | ||||||
|  |  	/* _We_ call this UNII 1 */ | ||||||
|  | -	CHAN5G(5180, 14), /* Channel 36 */
 | ||||||
|  | -	CHAN5G(5200, 15), /* Channel 40 */
 | ||||||
|  | -	CHAN5G(5220, 16), /* Channel 44 */
 | ||||||
|  | -	CHAN5G(5240, 17), /* Channel 48 */
 | ||||||
|  | +       CHAN5G(5180, 58), /* Channel 36 */
 | ||||||
|  | +       CHAN5G(5200, 59), /* Channel 40 */
 | ||||||
|  | +       CHAN5G(5220, 60), /* Channel 44 */
 | ||||||
|  | +       CHAN5G(5240, 61), /* Channel 48 */
 | ||||||
|  |  	/* _We_ call this UNII 2 */ | ||||||
|  | -	CHAN5G(5260, 18), /* Channel 52 */
 | ||||||
|  | -	CHAN5G(5280, 19), /* Channel 56 */
 | ||||||
|  | -	CHAN5G(5300, 20), /* Channel 60 */
 | ||||||
|  | -	CHAN5G(5320, 21), /* Channel 64 */
 | ||||||
|  | +       CHAN5G(5260, 62), /* Channel 52 */
 | ||||||
|  | +       CHAN5G(5280, 63), /* Channel 56 */
 | ||||||
|  | +       CHAN5G(5300, 64), /* Channel 60 */
 | ||||||
|  | +       CHAN5G(5320, 65), /* Channel 64 */
 | ||||||
|  |  	/* _We_ call this "Middle band" */ | ||||||
|  | -	CHAN5G(5500, 22), /* Channel 100 */
 | ||||||
|  | -	CHAN5G(5520, 23), /* Channel 104 */
 | ||||||
|  | -	CHAN5G(5540, 24), /* Channel 108 */
 | ||||||
|  | -	CHAN5G(5560, 25), /* Channel 112 */
 | ||||||
|  | -	CHAN5G(5580, 26), /* Channel 116 */
 | ||||||
|  | -	CHAN5G(5600, 27), /* Channel 120 */
 | ||||||
|  | -	CHAN5G(5620, 28), /* Channel 124 */
 | ||||||
|  | -	CHAN5G(5640, 29), /* Channel 128 */
 | ||||||
|  | -	CHAN5G(5660, 30), /* Channel 132 */
 | ||||||
|  | -	CHAN5G(5680, 31), /* Channel 136 */
 | ||||||
|  | -	CHAN5G(5700, 32), /* Channel 140 */
 | ||||||
|  | +       CHAN5G(5500, 66), /* Channel 100 */
 | ||||||
|  | +       CHAN5G(5520, 67), /* Channel 104 */
 | ||||||
|  | +       CHAN5G(5540, 68), /* Channel 108 */
 | ||||||
|  | +       CHAN5G(5560, 69), /* Channel 112 */
 | ||||||
|  | +       CHAN5G(5580, 70), /* Channel 116 */
 | ||||||
|  | +       CHAN5G(5600, 71), /* Channel 120 */
 | ||||||
|  | +       CHAN5G(5620, 72), /* Channel 124 */
 | ||||||
|  | +       CHAN5G(5640, 73), /* Channel 128 */
 | ||||||
|  | +       CHAN5G(5660, 74), /* Channel 132 */
 | ||||||
|  | +       CHAN5G(5680, 75), /* Channel 136 */
 | ||||||
|  | +       CHAN5G(5700, 76), /* Channel 140 */
 | ||||||
|  |  	/* _We_ call this UNII 3 */ | ||||||
|  | -	CHAN5G(5745, 33), /* Channel 149 */
 | ||||||
|  | -	CHAN5G(5765, 34), /* Channel 153 */
 | ||||||
|  | -	CHAN5G(5785, 35), /* Channel 157 */
 | ||||||
|  | -	CHAN5G(5805, 36), /* Channel 161 */
 | ||||||
|  | -	CHAN5G(5825, 37), /* Channel 165 */
 | ||||||
|  | +       CHAN5G(5745, 77), /* Channel 149 */
 | ||||||
|  | +       CHAN5G(5765, 78), /* Channel 153 */
 | ||||||
|  | +       CHAN5G(5785, 79), /* Channel 157 */
 | ||||||
|  | +       CHAN5G(5805, 80), /* Channel 161 */
 | ||||||
|  | +       CHAN5G(5825, 81), /* Channel 165 */
 | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  |  /* Atheros hardware rate code addition for short premble */ | ||||||
|  | @ -0,0 +1,40 @@ | ||||||
|  | --- a/drivers/net/wireless/ath/ath9k/eeprom_4k.c	2022-02-06 14:59:02.314498487 +0300
 | ||||||
|  | +++ b/drivers/net/wireless/ath/ath9k/eeprom_4k.c	2022-02-06 15:03:17.406759246 +0300
 | ||||||
|  | @@ -18,6 +18,9 @@
 | ||||||
|  |  #include "hw.h" | ||||||
|  |  #include "ar9002_phy.h" | ||||||
|  |   | ||||||
|  | +extern u8 tx_power_man;
 | ||||||
|  | +extern u8 thresh62_man;
 | ||||||
|  | +
 | ||||||
|  |  static int ath9k_hw_4k_get_eeprom_ver(struct ath_hw *ah) | ||||||
|  |  { | ||||||
|  |  	return ((ah->eeprom.map4k.baseEepHeader.version >> 12) & 0xF); | ||||||
|  | @@ -636,8 +639,12 @@
 | ||||||
|  |  	if (test) | ||||||
|  |  	    return; | ||||||
|  |   | ||||||
|  | -	for (i = 0; i < Ar5416RateSize; i++)
 | ||||||
|  | -		ratesArray[i] -= AR5416_PWR_TABLE_OFFSET_DB * 2;
 | ||||||
|  | +	for (i = 0; i < Ar5416RateSize; i++) {
 | ||||||
|  | +//		ratesArray[i] -= AR5416_PWR_TABLE_OFFSET_DB * 2;
 | ||||||
|  | +                ratesArray[i] = tx_power_man;
 | ||||||
|  | +	}
 | ||||||
|  | +
 | ||||||
|  | +       printk("ATH: TX Power set: %d\n",tx_power_man);
 | ||||||
|  |   | ||||||
|  |  	ENABLE_REGWRITE_BUFFER(ah); | ||||||
|  |   | ||||||
|  | @@ -1009,10 +1016,8 @@
 | ||||||
|  |  	if (AR_SREV_9271_10(ah)) | ||||||
|  |  		REG_RMW_FIELD(ah, AR_PHY_RF_CTL3, AR_PHY_TX_END_TO_A2_RX_ON, | ||||||
|  |  			      pModal->txEndToRxOn); | ||||||
|  | -	REG_RMW_FIELD(ah, AR_PHY_CCA, AR9280_PHY_CCA_THRESH62,
 | ||||||
|  | -		      pModal->thresh62);
 | ||||||
|  | -	REG_RMW_FIELD(ah, AR_PHY_EXT_CCA0, AR_PHY_EXT_CCA0_THRESH62,
 | ||||||
|  | -		      pModal->thresh62);
 | ||||||
|  | +       REG_RMW_FIELD(ah, AR_PHY_CCA, AR9280_PHY_CCA_THRESH62, thresh62_man);
 | ||||||
|  | +       REG_RMW_FIELD(ah, AR_PHY_EXT_CCA0, AR_PHY_EXT_CCA0_THRESH62, thresh62_man);
 | ||||||
|  |   | ||||||
|  |  	if ((eep->baseEepHeader.version & AR5416_EEP_VER_MINOR_MASK) >= | ||||||
|  |  						AR5416_EEP_MINOR_VER_2) { | ||||||
|  | @ -0,0 +1,26 @@ | ||||||
|  | --- a/drivers/net/wireless/ath/ath9k/eeprom_9287.c	2022-02-06 15:07:44.951075986 +0300
 | ||||||
|  | +++ b/drivers/net/wireless/ath/ath9k/eeprom_9287.c	2022-02-06 15:09:33.707198364 +0300
 | ||||||
|  | @@ -18,6 +18,8 @@
 | ||||||
|  |  #include "hw.h" | ||||||
|  |  #include "ar9002_phy.h" | ||||||
|  |   | ||||||
|  | +extern u8 tx_power_man;
 | ||||||
|  | +
 | ||||||
|  |  #define SIZE_EEPROM_AR9287 (sizeof(struct ar9287_eeprom) / sizeof(u16)) | ||||||
|  |   | ||||||
|  |  static int ath9k_hw_ar9287_get_eeprom_ver(struct ath_hw *ah) | ||||||
|  | @@ -762,8 +764,12 @@
 | ||||||
|  |  	if (test) | ||||||
|  |  		return; | ||||||
|  |   | ||||||
|  | -	for (i = 0; i < Ar5416RateSize; i++)
 | ||||||
|  | -		ratesArray[i] -= AR9287_PWR_TABLE_OFFSET_DB * 2;
 | ||||||
|  | +	for (i = 0; i < Ar5416RateSize; i++) {
 | ||||||
|  | +//		ratesArray[i] -= AR9287_PWR_TABLE_OFFSET_DB * 2;
 | ||||||
|  | +               ratesArray[i] = tx_power_man;
 | ||||||
|  | +	}
 | ||||||
|  | +
 | ||||||
|  | +       printk("ATH: TX Power set: %d\n",tx_power_man);
 | ||||||
|  |   | ||||||
|  |  	ENABLE_REGWRITE_BUFFER(ah); | ||||||
|  |   | ||||||
|  | @ -0,0 +1,11 @@ | ||||||
|  | --- a/drivers/net/wireless/ath/ath9k/hif_usb.h	2022-02-06 15:12:07.699367211 +0300
 | ||||||
|  | +++ b/drivers/net/wireless/ath/ath9k/hif_usb.h	2022-02-06 15:12:22.731383462 +0300
 | ||||||
|  | @@ -61,7 +61,7 @@
 | ||||||
|  |  #define MAX_PKT_NUM_IN_TRANSFER 10 | ||||||
|  |   | ||||||
|  |  #define MAX_REG_OUT_URB_NUM  1 | ||||||
|  | -#define MAX_REG_IN_URB_NUM   64
 | ||||||
|  | +#define MAX_REG_IN_URB_NUM   8
 | ||||||
|  |   | ||||||
|  |  #define MAX_REG_IN_BUF_SIZE 64 | ||||||
|  |   | ||||||
|  | @ -0,0 +1,53 @@ | ||||||
|  | --- a/drivers/net/wireless/ath/ath9k/hw.c	2022-02-06 15:14:11.847500396 +0300
 | ||||||
|  | +++ b/drivers/net/wireless/ath/ath9k/hw.c	2022-02-06 15:16:29.055645264 +0300
 | ||||||
|  | @@ -37,6 +37,40 @@
 | ||||||
|  |  MODULE_SUPPORTED_DEVICE("Atheros 802.11n WLAN cards"); | ||||||
|  |  MODULE_LICENSE("Dual BSD/GPL"); | ||||||
|  |   | ||||||
|  | +u8 tx_power_man = 58; //manual power
 | ||||||
|  | +u8 cwmin_man = 7;
 | ||||||
|  | +u8 cwmax_man = 15;
 | ||||||
|  | +u8 aifs_man = 2;
 | ||||||
|  | +u8 cck_sifs_man = 10;
 | ||||||
|  | +u8 ofdm_sifs_man = 16;
 | ||||||
|  | +u8 slottime_man = 9;
 | ||||||
|  | +u8 thresh62_man = 28;
 | ||||||
|  | +
 | ||||||
|  | +module_param_named(txpower,tx_power_man,byte,0444);
 | ||||||
|  | +MODULE_PARM_DESC(txpower,"Manual TX power setting, default 58, max 63");
 | ||||||
|  | +
 | ||||||
|  | +module_param_named(cwmin,cwmin_man,byte,0444);
 | ||||||
|  | +MODULE_PARM_DESC(cwmin,"CWMIN setting, 0-255, default 7");
 | ||||||
|  | +
 | ||||||
|  | +module_param_named(cwmax,cwmax_man,byte,0444);
 | ||||||
|  | +MODULE_PARM_DESC(cwmax,"CWMAX setting, 0-255, default 15");
 | ||||||
|  | +
 | ||||||
|  | +module_param_named(aifs,aifs_man,byte,0444);
 | ||||||
|  | +MODULE_PARM_DESC(aifs,"AIFS setting, default 2");
 | ||||||
|  | +
 | ||||||
|  | +module_param_named(cck_sifs,cck_sifs_man,byte,0444);
 | ||||||
|  | +MODULE_PARM_DESC(cck_sifs,"CCK SIFS setting, default 10");
 | ||||||
|  | +
 | ||||||
|  | +module_param_named(ofdm_sifs,ofdm_sifs_man,byte,0444);
 | ||||||
|  | +MODULE_PARM_DESC(ofdm_sifs,"OFDM SIFS setting, default 16");
 | ||||||
|  | +
 | ||||||
|  | +module_param_named(slottime,slottime_man,byte,0444);
 | ||||||
|  | +MODULE_PARM_DESC(slottime,"Slottime setting, default 9");
 | ||||||
|  | +
 | ||||||
|  | +module_param_named(thresh62,thresh62_man,byte,0444);
 | ||||||
|  | +MODULE_PARM_DESC(thresh62,"CCA THRESH62 setting, default 28");
 | ||||||
|  | +
 | ||||||
|  | +
 | ||||||
|  |  static void ath9k_hw_set_clockrate(struct ath_hw *ah) | ||||||
|  |  { | ||||||
|  |  	struct ath_common *common = ath9k_hw_common(ah); | ||||||
|  | @@ -1076,7 +1110,8 @@
 | ||||||
|  |  	} | ||||||
|  |   | ||||||
|  |  	/* As defined by IEEE 802.11-2007 17.3.8.6 */ | ||||||
|  | -	slottime += 3 * ah->coverage_class;
 | ||||||
|  | +//	slottime += 3 * ah->coverage_class;
 | ||||||
|  | +       slottime = slottime_man;
 | ||||||
|  |  	acktimeout = slottime + sifstime + ack_offset; | ||||||
|  |  	ctstimeout = acktimeout; | ||||||
|  |   | ||||||
|  | @ -0,0 +1,11 @@ | ||||||
|  | --- a/drivers/net/wireless/ath/ath9k/hw.h	2022-02-06 15:18:19.827760817 +0300
 | ||||||
|  | +++ b/drivers/net/wireless/ath/ath9k/hw.h	2022-02-06 15:18:51.895794076 +0300
 | ||||||
|  | @@ -73,7 +73,7 @@
 | ||||||
|  |   | ||||||
|  |  #define ATH9K_RSSI_BAD			-128 | ||||||
|  |   | ||||||
|  | -#define ATH9K_NUM_CHANNELS	38
 | ||||||
|  | +#define ATH9K_NUM_CHANNELS	82
 | ||||||
|  |   | ||||||
|  |  /* Register read/write primitives */ | ||||||
|  |  #define REG_WRITE(_ah, _reg, _val) \ | ||||||
|  | @ -0,0 +1,26 @@ | ||||||
|  | --- a/drivers/net/wireless/ath/ath9k/mac.c	2022-02-06 15:20:00.487864963 +0300
 | ||||||
|  | +++ b/drivers/net/wireless/ath/ath9k/mac.c	2022-02-06 15:21:04.523930861 +0300
 | ||||||
|  | @@ -18,6 +18,13 @@
 | ||||||
|  |  #include "hw-ops.h" | ||||||
|  |  #include <linux/export.h> | ||||||
|  |   | ||||||
|  | +extern u8 cwmin_man;
 | ||||||
|  | +extern u8 cwmax_man;
 | ||||||
|  | +extern u8 aifs_man;
 | ||||||
|  | +extern u8 cck_sifs;
 | ||||||
|  | +extern u8 ofdm_sifs;
 | ||||||
|  | +
 | ||||||
|  | +
 | ||||||
|  |  static void ath9k_hw_set_txq_interrupts(struct ath_hw *ah, | ||||||
|  |  					struct ath9k_tx_queue_info *qi) | ||||||
|  |  { | ||||||
|  | @@ -216,7 +223,8 @@
 | ||||||
|  |  	if (qinfo->tqi_aifs != ATH9K_TXQ_USEDEFAULT) | ||||||
|  |  		qi->tqi_aifs = min(qinfo->tqi_aifs, 255U); | ||||||
|  |  	else | ||||||
|  | -		qi->tqi_aifs = INIT_AIFS;
 | ||||||
|  | +//		qi->tqi_aifs = INIT_AIFS;
 | ||||||
|  | +               qi->tqi_aifs = aifs_man;
 | ||||||
|  |  	if (qinfo->tqi_cwmin != ATH9K_TXQ_USEDEFAULT) { | ||||||
|  |  		cw = min(qinfo->tqi_cwmin, 1024U); | ||||||
|  |  		qi->tqi_cwmin = 1; | ||||||
|  | @ -26,7 +26,7 @@ BR2_LINUX_KERNEL=y | ||||||
| BR2_LINUX_KERNEL_CUSTOM_VERSION=y | BR2_LINUX_KERNEL_CUSTOM_VERSION=y | ||||||
| BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9.37" | BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9.37" | ||||||
| BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y | BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y | ||||||
| BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_GOKE_PATH)/board/gk7205v200/kernel/gk7205v200.generic.config" | BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_GOKE_PATH)/board/gk7205v200/kernel/gk7205v200.generic-fpv.config" | ||||||
| BR2_LINUX_KERNEL_UIMAGE=y | BR2_LINUX_KERNEL_UIMAGE=y | ||||||
| BR2_LINUX_KERNEL_XZ=y | BR2_LINUX_KERNEL_XZ=y | ||||||
| BR2_LINUX_KERNEL_EXT_GOKE_PATCHER=y | BR2_LINUX_KERNEL_EXT_GOKE_PATCHER=y | ||||||
|  | @ -85,19 +85,20 @@ BR2_PACKAGE_YAML_CLI=y | ||||||
| 
 | 
 | ||||||
| # WiFi | # WiFi | ||||||
| BR2_PACKAGE_WIRELESS_TOOLS=y | BR2_PACKAGE_WIRELESS_TOOLS=y | ||||||
|  | # BR2_PACKAGE_WIRELESS_REGDB is not set | ||||||
| BR2_PACKAGE_WPA_SUPPLICANT=y | BR2_PACKAGE_WPA_SUPPLICANT=y | ||||||
| BR2_PACKAGE_WPA_SUPPLICANT_CLI=y | BR2_PACKAGE_WPA_SUPPLICANT_CLI=y | ||||||
| BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y | BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y | ||||||
| BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y | BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y | ||||||
| BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC=y | BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC=y | ||||||
| BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_MT7601U=y | # BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_MT7601U is not set | ||||||
| # BR2_PACKAGE_RTL8188EU is not set | # BR2_PACKAGE_RTL8188EU is not set | ||||||
|  | # BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_ATHEROS_9271 is not set | ||||||
|  | BR2_PACKAGE_RTL8812AU_OPENIPC=y | ||||||
| 
 | 
 | ||||||
| # WIREGUARD | # WIREGUARD | ||||||
| # BR2_PACKAGE_WIREGUARD_LINUX_COMPAT is not set | # BR2_PACKAGE_WIREGUARD_LINUX_COMPAT is not set | ||||||
| # BR2_PACKAGE_WIREGUARD_TOOLS is not set | # BR2_PACKAGE_WIREGUARD_TOOLS is not set | ||||||
| 
 | 
 | ||||||
| # FPV | # FPV | ||||||
| BR2_PACKAGE_LIBPCAP=y | BR2_PACKAGE_WIFIBROADCAST=y | ||||||
| # BR2_PACKAGE_TX_RAWSOCK is not set |  | ||||||
| 
 |  | ||||||
|  |  | ||||||
|  | @ -0,0 +1,105 @@ | ||||||
|  | # Architecture | ||||||
|  | BR2_arm=y | ||||||
|  | BR2_cortex_a7=y | ||||||
|  | BR2_ARM_EABI=y | ||||||
|  | BR2_ARM_FPU_NEON_VFPV4=y | ||||||
|  | BR2_ARM_INSTRUCTIONS_THUMB2=y | ||||||
|  | BR2_KERNEL_HEADERS_VERSION=y | ||||||
|  | BR2_DEFAULT_KERNEL_VERSION="4.9.37" | ||||||
|  | BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y | ||||||
|  | 
 | ||||||
|  | # Toolchain | ||||||
|  | BR2_PER_PACKAGE_DIRECTORIES=y | ||||||
|  | BR2_GCC_VERSION_7_X=y | ||||||
|  | # BR2_TOOLCHAIN_USES_UCLIBC is not set | ||||||
|  | # BR2_TOOLCHAIN_BUILDROOT_UCLIBC is not set | ||||||
|  | # BR2_TOOLCHAIN_BUILDROOT_LIBC="uclibc" | ||||||
|  | BR2_TOOLCHAIN_USES_MUSL=y | ||||||
|  | BR2_TOOLCHAIN_BUILDROOT_MUSL=y | ||||||
|  | BR2_TOOLCHAIN_BUILDROOT_LIBC="musl" | ||||||
|  | BR2_TOOLCHAIN_BUILDROOT_CXX=y | ||||||
|  | BR2_TOOLCHAIN_BUILDROOT_LOCALE=y | ||||||
|  | BR2_TOOLCHAIN_BUILDROOT_USE_SSP=y | ||||||
|  | 
 | ||||||
|  | # Kernel | ||||||
|  | BR2_LINUX_KERNEL=y | ||||||
|  | BR2_LINUX_KERNEL_CUSTOM_VERSION=y | ||||||
|  | BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9.37" | ||||||
|  | BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y | ||||||
|  | BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_GOKE_PATH)/board/gk7205v200/kernel/gk7205v300.generic-fpv.config" | ||||||
|  | BR2_LINUX_KERNEL_UIMAGE=y | ||||||
|  | BR2_LINUX_KERNEL_XZ=y | ||||||
|  | BR2_LINUX_KERNEL_EXT_GOKE_PATCHER=y | ||||||
|  | BR2_LINUX_KERNEL_EXT_GOKE_PATCHER_LIST="$(BR2_EXTERNAL_GOKE_PATH)/board/gk7205v200/kernel/patches/ $(BR2_EXTERNAL_GOKE_PATH)/board/gk7205v200/kernel/overlay" | ||||||
|  | 
 | ||||||
|  | # Filesystem | ||||||
|  | # BR2_TARGET_TZ_INFO is not set | ||||||
|  | BR2_TARGET_ROOTFS_CPIO=y | ||||||
|  | BR2_TARGET_ROOTFS_SQUASHFS=y | ||||||
|  | BR2_TARGET_ROOTFS_SQUASHFS4_XZ=y | ||||||
|  | BR2_ROOTFS_OVERLAY="$(TOPDIR)/../general/overlay" | ||||||
|  | BR2_ROOTFS_POST_BUILD_SCRIPT="$(TOPDIR)/../scripts/executing_commands_for_$(BR2_TOOLCHAIN_BUILDROOT_LIBC).sh" | ||||||
|  | 
 | ||||||
|  | # OpenIPC configuration | ||||||
|  | BR2_TOOLCHAIN_BUILDROOT_VENDOR="openipc" | ||||||
|  | BR2_TARGET_GENERIC_ISSUE="Welcome to OpenIPC v2.2" | ||||||
|  | BR2_TARGET_GENERIC_HOSTNAME="openipc-gk7205v300-fpv" | ||||||
|  | BR2_GLOBAL_PATCH_DIR="$(TOPDIR)/../general/package/all-patches" | ||||||
|  | 
 | ||||||
|  | # OpenIPC packages | ||||||
|  | BR2_PACKAGE_BUSYBOX_CONFIG="$(TOPDIR)/../general/package/busybox/busybox.config" | ||||||
|  | BR2_PACKAGE_DROPBEAR=y | ||||||
|  | # BR2_PACKAGE_FDK_AAC_OPENIPC is not set | ||||||
|  | BR2_PACKAGE_FWPRINTENV_OPENIPC=y | ||||||
|  | BR2_PACKAGE_GOKE_OSDRV_GK7205V200=y | ||||||
|  | BR2_PACKAGE_HASERL=y | ||||||
|  | BR2_PACKAGE_HISI_GPIO is not set | ||||||
|  | BR2_PACKAGE_IPCTOOL=y | ||||||
|  | BR2_PACKAGE_JSON_C=y | ||||||
|  | BR2_PACKAGE_LAME_OPENIPC=y | ||||||
|  | BR2_PACKAGE_LIBCURL_OPENIPC=y | ||||||
|  | BR2_PACKAGE_LIBCURL_OPENIPC_CURL=y | ||||||
|  | # BR2_PACKAGE_LIBCURL_OPENIPC_VERBOSE is not set | ||||||
|  | # BR2_PACKAGE_LIBCURL_OPENIPC_PROXY_SUPPORT is not set | ||||||
|  | # BR2_PACKAGE_LIBCURL_OPENIPC_COOKIES_SUPPORT is not set | ||||||
|  | # BR2_PACKAGE_LIBCURL_OPENIPC_EXTRA_PROTOCOLS_FEATURES is not set | ||||||
|  | BR2_PACKAGE_LIBCURL_OPENIPC_MBEDTLS=y | ||||||
|  | BR2_PACKAGE_LIBEVENT_OPENIPC=y | ||||||
|  | BR2_PACKAGE_LIBEVENT_OPENIPC_REMOVE_PYSCRIPT=y | ||||||
|  | BR2_PACKAGE_LIBOGG_OPENIPC=y | ||||||
|  | BR2_PACKAGE_LIBWEBSOCKETS_OPENIPC=y | ||||||
|  | BR2_PACKAGE_LIBYAML=y | ||||||
|  | # BR2_PACKAGE_MAJESTIC_FONTS is not set | ||||||
|  | # BR2_PACKAGE_MAJESTIC_GK7205V200 is not set | ||||||
|  | BR2_PACKAGE_MBEDTLS_OPENIPC=y | ||||||
|  | # BR2_PACKAGE_MBEDTLS_OPENIPC_PROGRAMS is not set | ||||||
|  | # BR2_PACKAGE_MBEDTLS_OPENIPC_COMPRESSION is not set | ||||||
|  | BR2_PACKAGE_MICROBE_WEB=y | ||||||
|  | # BR2_PACKAGE_MINI_SNMPD is not set | ||||||
|  | # BR2_PACKAGE_MOTORS is not set | ||||||
|  | BR2_PACKAGE_OPUS_OPENIPC=y | ||||||
|  | BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y | ||||||
|  | # BR2_PACKAGE_SSHPASS is not set | ||||||
|  | BR2_PACKAGE_UACME_OPENIPC=y | ||||||
|  | # BR2_PACKAGE_VTUND_OPENIPC is not set | ||||||
|  | BR2_PACKAGE_YAML_CLI=y | ||||||
|  | 
 | ||||||
|  | # WiFi | ||||||
|  | BR2_PACKAGE_WIRELESS_TOOLS=y | ||||||
|  | # BR2_PACKAGE_WIRELESS_REGDB is not set | ||||||
|  | BR2_PACKAGE_WPA_SUPPLICANT=y | ||||||
|  | BR2_PACKAGE_WPA_SUPPLICANT_CLI=y | ||||||
|  | BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y | ||||||
|  | BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y | ||||||
|  | BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC=y | ||||||
|  | # BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_MT7601U is not set | ||||||
|  | # BR2_PACKAGE_RTL8188EU is not set | ||||||
|  | # BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_ATHEROS_9271 is not set | ||||||
|  | BR2_PACKAGE_RTL8812AU_OPENIPC=y | ||||||
|  | 
 | ||||||
|  | # WIREGUARD | ||||||
|  | # BR2_PACKAGE_WIREGUARD_LINUX_COMPAT is not set | ||||||
|  | # BR2_PACKAGE_WIREGUARD_TOOLS is not set | ||||||
|  | 
 | ||||||
|  | # FPV | ||||||
|  | BR2_PACKAGE_WIFIBROADCAST=y | ||||||
|  | @ -23,6 +23,8 @@ include $(BR2_EXTERNAL_GOKE_PATH)/package/mt7601u-ap-openipc/mt7601u-ap-openipc. | ||||||
| include $(BR2_EXTERNAL_GOKE_PATH)/package/node-exporter/node-exporter.mk | include $(BR2_EXTERNAL_GOKE_PATH)/package/node-exporter/node-exporter.mk | ||||||
| include $(BR2_EXTERNAL_GOKE_PATH)/package/opus-openipc/opus-openipc.mk | include $(BR2_EXTERNAL_GOKE_PATH)/package/opus-openipc/opus-openipc.mk | ||||||
| include $(BR2_EXTERNAL_GOKE_PATH)/package/rtl8188fu-openipc/rtl8188fu-openipc.mk | include $(BR2_EXTERNAL_GOKE_PATH)/package/rtl8188fu-openipc/rtl8188fu-openipc.mk | ||||||
|  | include $(BR2_EXTERNAL_GOKE_PATH)/package/rtl8812au-openipc/rtl8812au-openipc.mk | ||||||
| include $(BR2_EXTERNAL_GOKE_PATH)/package/uacme-openipc/uacme-openipc.mk | include $(BR2_EXTERNAL_GOKE_PATH)/package/uacme-openipc/uacme-openipc.mk | ||||||
| include $(BR2_EXTERNAL_GOKE_PATH)/package/vtund-openipc/vtund-openipc.mk | include $(BR2_EXTERNAL_GOKE_PATH)/package/vtund-openipc/vtund-openipc.mk | ||||||
|  | include $(BR2_EXTERNAL_GOKE_PATH)/package/wifibroadcast/wifibroadcast.mk | ||||||
| include $(BR2_EXTERNAL_GOKE_PATH)/package/yaml-cli/yaml-cli.mk | include $(BR2_EXTERNAL_GOKE_PATH)/package/yaml-cli/yaml-cli.mk | ||||||
|  | @ -0,0 +1 @@ | ||||||
|  | ../../general/package/rtl8812au-openipc | ||||||
|  | @ -0,0 +1 @@ | ||||||
|  | ../../general/package/wifibroadcast | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| #!/bin/bash | #!/bin/bash | ||||||
| # | # | ||||||
| # OpenIPC.org | v.20220102 | # OpenIPC.org | v.20220221 | ||||||
| # | # | ||||||
| 
 | 
 | ||||||
| MAX_KERNEL_SIZE=0x200000               #    2MiB,  2097152 | MAX_KERNEL_SIZE=0x200000               #    2MiB,  2097152 | ||||||
|  | @ -147,6 +147,11 @@ gk7205v300() { | ||||||
|   fresh && make PLATFORM=goke BOARD=unknown_unknown_${soc}_openipc all && rename |   fresh && make PLATFORM=goke BOARD=unknown_unknown_${soc}_openipc all && rename | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | gk7205v300_fpv() { | ||||||
|  |   soc="gk7205v300" | ||||||
|  |   fresh && make PLATFORM=goke BOARD=unknown_unknown_${soc}_fpv all && rename | ||||||
|  | } | ||||||
|  | 
 | ||||||
| ################################################################################# | ################################################################################# | ||||||
| 
 | 
 | ||||||
| gm8135() { | gm8135() { | ||||||
|  | @ -441,6 +446,7 @@ xm550() { | ||||||
| # gk7205v200_fpv                # FPV | # gk7205v200_fpv                # FPV | ||||||
| # gk7205v200_ufanet             # Ufanet | # gk7205v200_ufanet             # Ufanet | ||||||
| # gk7205v300                    # OpenIPC | # gk7205v300                    # OpenIPC | ||||||
|  | # gk7205v300_fpv                # FPV | ||||||
| # gk7605v100                    # testing.. | # gk7605v100                    # testing.. | ||||||
| # | # | ||||||
| ####### | ####### | ||||||
|  |  | ||||||
|  | @ -43,8 +43,8 @@ _NB! Downloads are for research only, without any guarantee._ | ||||||
| | Fullhan FH8858v210<br>![FH8858v210][FH8858v210]      |        |        |        |     |      |     |      |                    | R&D    | | | Fullhan FH8858v210<br>![FH8858v210][FH8858v210]      |        |        |        |     |      |     |      |                    | R&D    | | ||||||
| | Goke GK7102S<br>![GK7102S][GK7102S]                  |        |        |        |     |      |     |      |                    | R&D    | | | Goke GK7102S<br>![GK7102S][GK7102S]                  |        |        |        |     |      |     |      |                    | R&D    | | ||||||
| | Goke GK7202v300<br>![GK7202v300][GK7202v300]         |        |        |        |     |      |     |      | [⬇][fwGK7202v300]  | WIP    | | | Goke GK7202v300<br>![GK7202v300][GK7202v300]         |        |        |        |     |      |     |      | [⬇][fwGK7202v300]  | WIP    | | ||||||
| | Goke GK7205v200<br>![GK7205v200][GK7205v200]         |   +    |   +    |   +    |  +  |  +   |     |      | [⬇][fwGK7205v200]  | DONE   | | | Goke GK7205v200<br>![GK7205v200][GK7205v200]         |   +    |   +    |   +    |  +  |  +   |  +  |      | [⬇][fwGK7205v200]  | DONE   | | ||||||
| | Goke GK7205v300<br>![GK7205v300][GK7205v300]         |   +    |   +    |   +    |  +  |  +   |     |      | [⬇][fwGK7205v300]  | DONE   | | | Goke GK7205v300<br>![GK7205v300][GK7205v300]         |   +    |   +    |   +    |  +  |  +   |  +  |      | [⬇][fwGK7205v300]  | DONE   | | ||||||
| | Goke GK7605v100<br>![GK7605v100][GK7605v100]         |   +    |   +    |   +    |     |      |     |      | [⬇][fwGK7605v100]  | WIP    | | | Goke GK7605v100<br>![GK7605v100][GK7605v100]         |   +    |   +    |   +    |     |      |     |      | [⬇][fwGK7605v100]  | WIP    | | ||||||
| | GrainMedia GM8135<br>![GM8135][GM8135]               |        |   +    |   +    |     |      |     |      | [⬇][fwGM8135]      | WIP    | | | GrainMedia GM8135<br>![GM8135][GM8135]               |        |   +    |   +    |     |      |     |      | [⬇][fwGM8135]      | WIP    | | ||||||
| | GrainMedia GM8136<br>![GM8136][GM8136]               |        |   +    |   +    |     |      |     |      | [⬇][fwGM8136]      | WIP    | | | GrainMedia GM8136<br>![GM8136][GM8136]               |        |   +    |   +    |     |      |     |      | [⬇][fwGM8136]      | WIP    | | ||||||
|  |  | ||||||
|  | @ -2,3 +2,4 @@ | ||||||
| # Level of messages on console | # Level of messages on console | ||||||
| kernel.printk = 4 4 1 3 | kernel.printk = 4 4 1 3 | ||||||
| # | # | ||||||
|  | net.core.bpf_jit_enable=1 | ||||||
|  |  | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| #!/bin/sh | #!/bin/sh | ||||||
| # | # | ||||||
| # OpenIPC.org | v.20220217 | # OpenIPC.org | v.20220221 | ||||||
| # | # | ||||||
| 
 | 
 | ||||||
| set -e | set -e | ||||||
|  | @ -71,12 +71,17 @@ check_soc() { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| check_release() { | check_release() { | ||||||
|  |   if [ ${version} -eq 1 ]; then | ||||||
|   echo -e "\n\e[1;32m${3}: installed release: ${1}\e[0m" |   echo -e "\n\e[1;32m${3}: installed release: ${1}\e[0m" | ||||||
|   echo -e "\e[1;32m${3}:       new release: ${2}\e[0m\n" |   echo -e "\e[1;32m${3}:       new release: ${2}\e[0m\n" | ||||||
|   if [ "${1}" = "${2}" ]; then |     if [ "${1}" = "${2}" ]; then | ||||||
|     echo -e "\n\e[1;31m${3} has the same release version, skipping...\e[0m\n" | 	echo -e "\n\e[1;31m${3} has the same release version, skipping...\e[0m\n" | ||||||
|     return 0 | 	return 0 | ||||||
|  |     else | ||||||
|  | 	return 1 | ||||||
|  |     fi | ||||||
|   else |   else | ||||||
|  |     echo -e "\n\e[1;31m${3}: Release version check skipped...\e[0m\n" | ||||||
|     return 1 |     return 1 | ||||||
|   fi |   fi | ||||||
| } | } | ||||||
|  | @ -153,7 +158,7 @@ print_usage() { | ||||||
| 	echo "    --kernel=[FILE]          update kernel from file (uImage format)" | 	echo "    --kernel=[FILE]          update kernel from file (uImage format)" | ||||||
| 	echo "    --rootfs=[FILE]          update rootfs from file (squashfs format)" | 	echo "    --rootfs=[FILE]          update rootfs from file (squashfs format)" | ||||||
|   echo |   echo | ||||||
|   echo "    -f                       skip check md5 hash" |   echo "    -f                       skip check md5 hash, release version" | ||||||
|   echo "    --force                    and hostname" |   echo "    --force                    and hostname" | ||||||
| 	echo "    -n                       clear overlayfs" | 	echo "    -n                       clear overlayfs" | ||||||
| 	echo "    -x                       no reboot after success execution" | 	echo "    -x                       no reboot after success execution" | ||||||
|  | @ -170,6 +175,7 @@ remotely=0 | ||||||
| locally=0 | locally=0 | ||||||
| md5=1 | md5=1 | ||||||
| host=1 | host=1 | ||||||
|  | version=1 | ||||||
| 
 | 
 | ||||||
| for arg in $@ | for arg in $@ | ||||||
| do | do | ||||||
|  | @ -190,6 +196,7 @@ do | ||||||
| 			;; | 			;; | ||||||
| 		"-f") | 		"-f") | ||||||
| 			md5=0 | 			md5=0 | ||||||
|  | 			version=0 | ||||||
| 			;; | 			;; | ||||||
| 		"-h") | 		"-h") | ||||||
| 			usage=1 | 			usage=1 | ||||||
|  | @ -214,6 +221,7 @@ do | ||||||
|         "--force") |         "--force") | ||||||
|           md5=0 |           md5=0 | ||||||
|           host=0 |           host=0 | ||||||
|  | 	  version=0 | ||||||
|           ;; |           ;; | ||||||
|         "--help") |         "--help") | ||||||
|           usage=1 |           usage=1 | ||||||
|  |  | ||||||
|  | @ -21,6 +21,11 @@ config BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_RTL8188EU | ||||||
| 	help | 	help | ||||||
| 	  Realtek RTL8188EU | 	  Realtek RTL8188EU | ||||||
| 
 | 
 | ||||||
|  | config BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_ATHEROS_9271 | ||||||
|  |         bool "Atheros AR9271" | ||||||
|  |         help | ||||||
|  |           Atheros AR9271 | ||||||
|  | 
 | ||||||
| endmenu | endmenu | ||||||
| 
 | 
 | ||||||
| endif | endif | ||||||
|  |  | ||||||
|  | @ -9,7 +9,6 @@ LINUX_FIRMWARE_OPENIPC_SITE = http://git.kernel.org/pub/scm/linux/kernel/git/fir | ||||||
| LINUX_FIRMWARE_OPENIPC_SITE_METHOD = git | LINUX_FIRMWARE_OPENIPC_SITE_METHOD = git | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
| # WiFi RTL8188EU
 | # WiFi RTL8188EU
 | ||||||
| ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_RTL8188EU),y) | ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_RTL8188EU),y) | ||||||
| LINUX_FIRMWARE_OPENIPC_FILES += rtlwifi/rtl8188eufw.bin | LINUX_FIRMWARE_OPENIPC_FILES += rtlwifi/rtl8188eufw.bin | ||||||
|  | @ -22,6 +21,11 @@ LINUX_FIRMWARE_OPENIPC_FILES += mt7601u.bin | ||||||
| LINUX_FIRMWARE_OPENIPC_ALL_LICENSE_FILES += LICENCE.ralink_a_mediatek_company_firmware | LINUX_FIRMWARE_OPENIPC_ALL_LICENSE_FILES += LICENCE.ralink_a_mediatek_company_firmware | ||||||
| endif | endif | ||||||
| 
 | 
 | ||||||
|  | # WiFi ATH9K_HTC
 | ||||||
|  | ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_ATHEROS_9271),y) | ||||||
|  | LINUX_FIRMWARE_OPENIPC_FILES += ath9k_htc/htc_9271-1.4.0.fw | ||||||
|  | LINUX_FIRMWARE_OPENIPC_ALL_LICENSE_FILES += LICENCE.open-ath9k-htc-firmware | ||||||
|  | endif | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| ifneq ($(LINUX_FIRMWARE_OPENIPC_FILES),) | ifneq ($(LINUX_FIRMWARE_OPENIPC_FILES),) | ||||||
|  |  | ||||||
|  | @ -0,0 +1,22 @@ | ||||||
|  | --- a/Makefile	2022-01-23 16:37:12.818897741 +0300
 | ||||||
|  | +++ b/Makefile	2022-01-23 16:37:49.374948068 +0300
 | ||||||
|  | @@ -22,8 +22,8 @@
 | ||||||
|  |   | ||||||
|  |  ########################## WIFI IC ############################ | ||||||
|  |  CONFIG_RTL8812A = y | ||||||
|  | -CONFIG_RTL8821A = y
 | ||||||
|  | -CONFIG_RTL8814A = y
 | ||||||
|  | +CONFIG_RTL8821A = n
 | ||||||
|  | +CONFIG_RTL8814A = n
 | ||||||
|  |  ######################### Interface ########################### | ||||||
|  |  CONFIG_USB_HCI = y | ||||||
|  |  ########################### Android ########################### | ||||||
|  | @@ -178,7 +178,7 @@
 | ||||||
|  |  HCI_NAME = usb | ||||||
|  |  endif | ||||||
|  |   | ||||||
|  | -ifeq ($(CONFIG_RTL8812A)_$(CONFIG_RTL8821A)_$(CONFIG_RTL8814A), y_y_y)
 | ||||||
|  | +ifeq ($(CONFIG_RTL8812A)_$(CONFIG_RTL8821A)_$(CONFIG_RTL8814A), y_n_n)
 | ||||||
|  |   | ||||||
|  |  EXTRA_CFLAGS += -DDRV_NAME=\"rtl88XXau\" | ||||||
|  |  ifeq ($(CONFIG_USB_HCI), y) | ||||||
|  | @ -0,0 +1,16 @@ | ||||||
|  | config BR2_PACKAGE_RTL8812AU_OPENIPC | ||||||
|  | 	bool "rtl8812au-openipc" | ||||||
|  | 	depends on BR2_LINUX_KERNEL | ||||||
|  | 	help | ||||||
|  | 	  A standalone driver for the RTL8812AU / RTL8821AU Dual Band USB Wi-Fi adapter. | ||||||
|  | 
 | ||||||
|  | 	  Make sure your target kernel has the CONFIG_WIRELESS_EXT | ||||||
|  | 	  config option enabled. | ||||||
|  | 
 | ||||||
|  | 	  Note: this package needs a firmware loading mechanism to load | ||||||
|  | 	  the binary blob for the chip to work. | ||||||
|  | 
 | ||||||
|  | 	  https://github.com/aircrack-ng/rtl8812au/ | ||||||
|  | 
 | ||||||
|  | comment "rtl8812au needs a Linux kernel to be built" | ||||||
|  | 	depends on !BR2_LINUX_KERNEL | ||||||
|  | @ -0,0 +1,17 @@ | ||||||
|  | ################################################################################
 | ||||||
|  | #
 | ||||||
|  | # rtl8812au-openipc
 | ||||||
|  | #
 | ||||||
|  | ################################################################################
 | ||||||
|  | 
 | ||||||
|  | RTL8812AU_OPENIPC_VERSION = 3a6402e9e79802891f1531b435be54f4d8b71f0b | ||||||
|  | RTL8812AU_OPENIPC_SITE = $(call github,aircrack-ng,rtl8812au,$(RTL8812AU_OPENIPC_VERSION)) | ||||||
|  | RTL8812AU_OPENIPC_LICENSE = GPL-2.0 | ||||||
|  | RTL8812AU_OPENIPC_LICENSE_FILES = COPYING | ||||||
|  | 
 | ||||||
|  | RTL8812AU_OPENIPC_MODULE_MAKE_OPTS = CONFIG_88XXAU=m \
 | ||||||
|  | 	KVER=$(LINUX_VERSION_PROBED) \
 | ||||||
|  | 	KSRC=$(LINUX_DIR) | ||||||
|  | 
 | ||||||
|  | $(eval $(kernel-module)) | ||||||
|  | $(eval $(generic-package)) | ||||||
|  | @ -0,0 +1,70 @@ | ||||||
|  | --- a/Makefile	2022-01-14 15:05:39.292506627 +0300
 | ||||||
|  | +++ b/Makefile	2022-01-14 21:45:46.027792951 +0300
 | ||||||
|  | @@ -1,57 +1,25 @@
 | ||||||
|  |  ARCH ?= $(shell uname -i) | ||||||
|  | -PYTHON ?= /usr/bin/python3
 | ||||||
|  | -COMMIT ?= $(shell git rev-parse HEAD)
 | ||||||
|  | -VERSION ?= $(shell $(PYTHON) ./version.py $(shell git show -s --format="%ct" $(shell git rev-parse HEAD)) $(shell git rev-parse --abbrev-ref HEAD))
 | ||||||
|  | +VERSION ?= $(shell git rev-parse HEAD)
 | ||||||
|  |   | ||||||
|  | -export VERSION COMMIT
 | ||||||
|  | +LDFLAGS := -lrt -lpcap -lsodium
 | ||||||
|  | +CFLAGS := -Wall -O2 -DWFB_VERSION='"$(VERSION)"'
 | ||||||
|  |   | ||||||
|  | -_LDFLAGS := $(LDFLAGS) -lrt -lpcap -lsodium
 | ||||||
|  | -_CFLAGS := $(CFLAGS) -Wall -O2 -DWFB_VERSION='"$(VERSION)-$(shell /bin/bash -c '_tmp=$(COMMIT); echo $${_tmp::8}')"'
 | ||||||
|  | -
 | ||||||
|  | -all: all_bin gs.key test
 | ||||||
|  | -
 | ||||||
|  | -env:
 | ||||||
|  | -	virtualenv env --python=$(PYTHON)
 | ||||||
|  | -	./env/bin/pip install --upgrade pip==20.2.3 setuptools==44.1.1 stdeb
 | ||||||
|  | -
 | ||||||
|  | -all_bin: wfb_rx wfb_tx wfb_keygen
 | ||||||
|  | -
 | ||||||
|  | -gs.key: wfb_keygen
 | ||||||
|  | -	@if ! [ -f gs.key ]; then ./wfb_keygen; fi
 | ||||||
|  | +all: wfb_rx wfb_tx wfb_keygen
 | ||||||
|  |   | ||||||
|  |  src/%.o: src/%.c src/*.h | ||||||
|  | -	$(CC) $(_CFLAGS) -std=gnu99 -c -o $@ $<
 | ||||||
|  | +	$(CC) $(CFLAGS) -std=gnu99 -c -o $@ $<
 | ||||||
|  |   | ||||||
|  |  src/%.o: src/%.cpp src/*.hpp src/*.h | ||||||
|  | -	$(CXX) $(_CFLAGS) -std=gnu++11 -c -o $@ $<
 | ||||||
|  | +	$(CXX) $(CFLAGS) -std=gnu++11 -c -o $@ $<
 | ||||||
|  |   | ||||||
|  |  wfb_rx: src/rx.o src/radiotap.o src/fec.o src/wifibroadcast.o | ||||||
|  | -	$(CXX) -o $@ $^ $(_LDFLAGS)
 | ||||||
|  | +	$(CXX) -o $@ $^ $(LDFLAGS)
 | ||||||
|  |   | ||||||
|  |  wfb_tx: src/tx.o src/fec.o src/wifibroadcast.o | ||||||
|  | -	$(CXX) -o $@ $^ $(_LDFLAGS)
 | ||||||
|  | +	$(CXX) -o $@ $^ $(LDFLAGS)
 | ||||||
|  |   | ||||||
|  |  wfb_keygen: src/keygen.o | ||||||
|  | -	$(CC) -o $@ $^ $(_LDFLAGS)
 | ||||||
|  | -
 | ||||||
|  | -test:
 | ||||||
|  | -	PYTHONPATH=`pwd` trial telemetry.tests
 | ||||||
|  | -
 | ||||||
|  | -rpm:  all_bin env
 | ||||||
|  | -	rm -rf dist
 | ||||||
|  | -	./env/bin/python ./setup.py bdist_rpm --force-arch $(ARCH)
 | ||||||
|  | -	rm -rf wifibroadcast.egg-info/
 | ||||||
|  | -
 | ||||||
|  | -deb:  all_bin env
 | ||||||
|  | -	rm -rf deb_dist
 | ||||||
|  | -	./env/bin/python ./setup.py --command-packages=stdeb.command bdist_deb
 | ||||||
|  | -	rm -rf wifibroadcast.egg-info/ wifibroadcast-$(VERSION).tar.gz
 | ||||||
|  | -
 | ||||||
|  | -bdist: all_bin
 | ||||||
|  | -	rm -rf dist
 | ||||||
|  | -	$(PYTHON) ./setup.py bdist --plat-name linux-$(ARCH)
 | ||||||
|  | -	rm -rf wifibroadcast.egg-info/
 | ||||||
|  | +	$(CC) -o $@ $^ $(LDFLAGS)
 | ||||||
|  |   | ||||||
|  |  clean: | ||||||
|  | -	rm -rf env wfb_rx wfb_tx wfb_keygen dist deb_dist build wifibroadcast.egg-info _trial_temp *~ src/*.o
 | ||||||
|  | -
 | ||||||
|  | +	rm -rf wfb_rx wfb_tx wfb_keygen *~ src/*.o
 | ||||||
|  | @ -0,0 +1,7 @@ | ||||||
|  | config BR2_PACKAGE_WIFIBROADCAST | ||||||
|  |         bool "wifibroadcast" | ||||||
|  |         help | ||||||
|  |           Transmit hd video over wifi for the UAV | ||||||
|  | 
 | ||||||
|  |           https://github.com/svpcom/wifibroadcast | ||||||
|  | 
 | ||||||
|  | @ -0,0 +1,11 @@ | ||||||
|  | #!/bin/sh | ||||||
|  | 
 | ||||||
|  | wlan=$1 | ||||||
|  | chan="6" | ||||||
|  | 
 | ||||||
|  | ifconfig ${wlan} down | ||||||
|  | iwconfig ${wlan} mode monitor | ||||||
|  | ifconfig ${wlan} up | ||||||
|  | iwconfig ${wlan} channel ${chan} | ||||||
|  | 
 | ||||||
|  | wfb_rx -p 1 -u 5600 -K /tmp/gs.key ${wlan} | ||||||
|  | @ -0,0 +1,11 @@ | ||||||
|  | #!/bin/sh | ||||||
|  | 
 | ||||||
|  | wlan=$1 | ||||||
|  | chan="6" | ||||||
|  | 
 | ||||||
|  | ifconfig ${wlan} down | ||||||
|  | iwconfig ${wlan} mode monitor | ||||||
|  | ifconfig ${wlan} up | ||||||
|  | iwconfig ${wlan} channel ${chan} | ||||||
|  | 
 | ||||||
|  | wfb_tx -p 1 -u 5600 -K /tmp/drone.key ${wlan} | ||||||
|  | @ -0,0 +1,69 @@ | ||||||
|  | # ATHEROS | ||||||
|  | 
 | ||||||
|  | 1. Для сборки с драйверами Atheros включить опции ядра в соотвествующем плате конфиге: | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | br-ext-chip-goke/board/gk7205v200/kernel/gk7205v200.generic-fpv.config | ||||||
|  | br-ext-chip-goke/board/gk7205v200/kernel/gk7205v300.generic-fpv.config | ||||||
|  | 
 | ||||||
|  | CONFIG_WLAN_VENDOR_ATH=y | ||||||
|  | CONFIG_ATH9K_HTC=m | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | 2. Выбрать необходимые пакеты в конфиге соответствующем плате: | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | br-ext-chip-goke/configs/unknown_unknown_gk7205v200_fpv_defconfig | ||||||
|  | br-ext-chip-goke/configs/unknown_unknown_gk7205v300_fpv_defconfig | ||||||
|  | 
 | ||||||
|  | BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_ATHEROS_9271=y | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | # REALTEK | ||||||
|  | 
 | ||||||
|  | 1. Выбрать необходимые пакеты в конфиге соответствующем плате: | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | br-ext-chip-goke/configs/unknown_unknown_gk7205v200_fpv_defconfig | ||||||
|  | br-ext-chip-goke/configs/unknown_unknown_gk7205v300_fpv_defconfig | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | BR2_PACKAGE_RTL8812AU_OPENIPC=y | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ## Перед началом сборки закоментировать в скрипте строку с удалением libstdc++: | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | scripts/executing_commands_for_musl.sh | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | rm -f ${TARGET_DIR}/usr/lib/libstdc++* | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ### !!!ACTHUNG!!! Оба драйвера с большой вероятностью не поместятся в сборку, потому собирать по принципу 1 прошивка 1 драйвер. Majestic не включен в стандартную сборку, после прошивки его необходимо загрузить отдельно. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # Загрузка модулей | ||||||
|  | 
 | ||||||
|  | ## Realtek: | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | modprobe cfg80211 | ||||||
|  | modprobe 88XXau | ||||||
|  | ``` | ||||||
|  | ## Atheros: | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | modprobe cfg80211 | ||||||
|  | modprobe mac80211 | ||||||
|  | modprobe ath9k_htc | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | # Настройка интерфейса | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | iw set reg BO | ||||||
|  | ifconfig wlan0 up | ||||||
|  | iwconfig wlan0 mode monitor | ||||||
|  | iwconfig wlan0 channel 6 | ||||||
|  | ``` | ||||||
|  | @ -0,0 +1,27 @@ | ||||||
|  | ################################################################################
 | ||||||
|  | #
 | ||||||
|  | # wifibroadcast
 | ||||||
|  | #
 | ||||||
|  | ################################################################################
 | ||||||
|  | 
 | ||||||
|  | WIFIBROADCAST_VERSION = 51251b8c484b8c4f548aa3bbb1633e0edbb605dc | ||||||
|  | WIFIBROADCAST_SITE = $(call github,svpcom,wifibroadcast,$(WIFIBROADCAST_VERSION)) | ||||||
|  | WIFIBROADCAST_LICENSE = GPL-2.0 | ||||||
|  | 
 | ||||||
|  | WIFIBROADCAST_DEPENDENCIES += libpcap libsodium iw netcat | ||||||
|  | 
 | ||||||
|  | WIFIBROADCAST_MAKE_OPTS = \
 | ||||||
|  | 	CC="$(TARGET_CC)" \
 | ||||||
|  | 	CXX="$(TARGET_CXX)" | ||||||
|  | 
 | ||||||
|  | define WIFIBROADCAST_BUILD_CMDS | ||||||
|  | 	$(MAKE) $(WIFIBROADCAST_MAKE_OPTS) -C $(@D) all | ||||||
|  | endef | ||||||
|  | 
 | ||||||
|  | define WIFIBROADCAST_INSTALL_TARGET_CMDS | ||||||
|  | 	$(INSTALL) -m 0755 -D $(@D)/wfb_rx $(TARGET_DIR)/usr/bin | ||||||
|  | 	$(INSTALL) -m 0755 -D $(@D)/wfb_tx $(TARGET_DIR)/usr/bin | ||||||
|  | 	$(INSTALL) -m 0755 -D $(@D)/wfb_keygen $(TARGET_DIR)/usr/bin | ||||||
|  | endef | ||||||
|  | 
 | ||||||
|  | $(eval $(generic-package)) | ||||||
|  | @ -13,5 +13,5 @@ ln -sfv /lib/libc.so ${TARGET_DIR}/lib/ld-uClibc.so.0 | ||||||
| ln -sfv ../../lib/libc.so ${TARGET_DIR}/usr/bin/ldd | ln -sfv ../../lib/libc.so ${TARGET_DIR}/usr/bin/ldd | ||||||
| # | # | ||||||
| # Comment out this line if you want to save the libraries | # Comment out this line if you want to save the libraries | ||||||
| rm -f ${TARGET_DIR}/usr/lib/libstdc++* | # rm -f ${TARGET_DIR}/usr/lib/libstdc++* | ||||||
| # | # | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue