mirror of
https://github.com/openwrt/openwrt.git
synced 2025-02-22 10:01:03 +00:00
ath79/mikrotik: use standard caldata functions
With the implementation of a sysfs interface to access WLAN data, this target no longer needs a special wrapper to extract caldata. Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
This commit is contained in:
parent
301bc3290d
commit
1e24af5638
@ -1,6 +1,6 @@
|
|||||||
define Device/mikrotik
|
define Device/mikrotik
|
||||||
DEVICE_VENDOR := MikroTik
|
DEVICE_VENDOR := MikroTik
|
||||||
DEVICE_PACKAGES := rbextract rbcfg
|
DEVICE_PACKAGES := rbcfg
|
||||||
LOADER_TYPE := elf
|
LOADER_TYPE := elf
|
||||||
KERNEL := kernel-bin | append-dtb | lzma | loader-kernel
|
KERNEL := kernel-bin | append-dtb | lzma | loader-kernel
|
||||||
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | loader-kernel
|
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | loader-kernel
|
||||||
|
@ -3,7 +3,9 @@
|
|||||||
[ -e /lib/firmware/$FIRMWARE ] && exit 0
|
[ -e /lib/firmware/$FIRMWARE ] && exit 0
|
||||||
|
|
||||||
. /lib/functions/caldata.sh
|
. /lib/functions/caldata.sh
|
||||||
. /lib/functions/mikrotik-caldata.sh
|
|
||||||
|
wlan_data="/sys/firmware/mikrotik/hard_config/wlan_data"
|
||||||
|
mac_base="$(cat /sys/firmware/mikrotik/hard_config/mac_base)"
|
||||||
|
|
||||||
board=$(board_name)
|
board=$(board_name)
|
||||||
|
|
||||||
@ -11,8 +13,8 @@ case "$FIRMWARE" in
|
|||||||
"ath9k-eeprom-ahb-18100000.wmac.bin")
|
"ath9k-eeprom-ahb-18100000.wmac.bin")
|
||||||
case $board in
|
case $board in
|
||||||
mikrotik,routerboard-wap-g-5hact2hnd)
|
mikrotik,routerboard-wap-g-5hact2hnd)
|
||||||
mikrotik_caldata_extract "hard_config" 0x1000 0x440
|
caldata_from_file $wlan_data 0x1000 0x440
|
||||||
ath9k_patch_mac $(macaddr_add $(mtd_get_mac_binary hard_config 0x10) +2)
|
ath9k_patch_mac $(macaddr_add "$mac_base" +2)
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
caldata_die "board $board is not supported yet"
|
caldata_die "board $board is not supported yet"
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
[ -e /lib/firmware/$FIRMWARE ] && exit 0
|
[ -e /lib/firmware/$FIRMWARE ] && exit 0
|
||||||
|
|
||||||
. /lib/functions/caldata.sh
|
. /lib/functions/caldata.sh
|
||||||
. /lib/functions/mikrotik-caldata.sh
|
|
||||||
|
wlan_data="/sys/firmware/mikrotik/hard_config/wlan_data"
|
||||||
|
|
||||||
board=$(board_name)
|
board=$(board_name)
|
||||||
|
|
||||||
@ -11,14 +12,14 @@ case "$FIRMWARE" in
|
|||||||
"ath10k/cal-pci-0000:00:00.0.bin")
|
"ath10k/cal-pci-0000:00:00.0.bin")
|
||||||
case $board in
|
case $board in
|
||||||
mikrotik,routerboard-wap-g-5hact2hnd)
|
mikrotik,routerboard-wap-g-5hact2hnd)
|
||||||
mikrotik_caldata_extract "hard_config" 0x5000 0x844
|
caldata_from_file $wlan_data 0x5000 0x844
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
"ath10k/cal-pci-0000:01:00.0.bin")
|
"ath10k/cal-pci-0000:01:00.0.bin")
|
||||||
case $board in
|
case $board in
|
||||||
mikrotik,routerboard-922uags-5hpacd)
|
mikrotik,routerboard-922uags-5hpacd)
|
||||||
mikrotik_caldata_extract "hard_config" 0x5000 0x844
|
caldata_from_file $wlan_data 0x5000 0x844
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
|
@ -1,26 +0,0 @@
|
|||||||
# Copyright (C) 2019 Robert Marko <robimarko@gmail.com>
|
|
||||||
# Copyright (C) 2019 Roger Pueyo Centelles <roger.pueyo@guifi.net>
|
|
||||||
#
|
|
||||||
# Helper function to extract MAC addresses and calibration data for MikroTik
|
|
||||||
#
|
|
||||||
|
|
||||||
mikrotik_caldata_extract() {
|
|
||||||
local part=$1
|
|
||||||
local offset=$(($2))
|
|
||||||
local count=$(($3))
|
|
||||||
local mtd
|
|
||||||
local erdfile="/tmp/erd.bin"
|
|
||||||
local fwfile="/lib/firmware/${FIRMWARE}"
|
|
||||||
|
|
||||||
[ -e $fwfile ] && exit 0
|
|
||||||
|
|
||||||
mtd=$(find_mtd_chardev $part)
|
|
||||||
[ -n "$mtd" ] || caldata_die "no mtd device found for partition $part"
|
|
||||||
|
|
||||||
rbextract -e $mtd $erdfile
|
|
||||||
|
|
||||||
dd if=$erdfile of=$fwfile iflag=skip_bytes bs=$count skip=$offset count=1 2>/dev/null || \
|
|
||||||
caldata_die "failed to extract calibration data from $mtd"
|
|
||||||
|
|
||||||
rm -f $erdfile
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user