hilink: map 0 to 100 power control to RTL range

This commit is contained in:
2026-09-30 11:30:33 +02:00
parent e7d1f1524d
commit cdce17874a
2 changed files with 4 additions and 3 deletions
@@ -18,8 +18,9 @@ fi
trap 'rmdir "$LOCK" 2>/dev/null || true' EXIT HUP INT TERM
if pidof wfb_tx wfb_rx wfb_tun wifilink >/dev/null; then
# RTL8812EU expects the OpenIPC scalar multiplied by 50 mBm.
iw wlan0 set txpower fixed $((POWER * 50))
# RTL8812EU accepts 0..3150 mBm driver units; map the user-facing 0..100
# scalar over that complete hardware-supported range.
iw wlan0 set txpower fixed $((POWER * 3150 / 100))
logger -t wfb-power "runtime txpower=$POWER"
exit 0
fi
@@ -86,7 +86,7 @@ load_interface() {
iw "$wfb_dev" set channel "$channel" "$wfb_width"
iw reg set 00
[ "$driver" = "88XXau" ] && wfb_power=$((txpower * -100)) || wfb_power=$((txpower * 50))
[ "$driver" = "88XXau" ] && wfb_power=$((txpower * -100)) || wfb_power=$((txpower * 3150 / 100))
iw "$wfb_dev" set txpower fixed "$wfb_power"
}