Skip to contentSkip to conversation

refactor ath9k_platform to sound sane for use in both ath9k and ath5k

RFC Daniel Golle 2 participants 3 messages Jun 21, 2010 – Jul 23, 2010

lore
Share & tools
lore
#0 lore raw

I'm developing on OpenWrt to work with EEPROM-less ath5k mini-pci devices. This is needed to support the ar71xx-based Senao EAP7660D board which got two AR5413 modules soldered into its mini-pci slots. In the original Firmware, MAC addresses as well as calibration-data seems to be part of the firmware blob stored on the board flash. See https://lists.openwrt.org/pipermail/openwrt-devel/2010-June/007366.html for the corresponding discussion on OpenWrt-devel.
Similarly to the way this happens for ath9k, I managed to get ath5k to use the MAC address and eeprom-data supplied by ath9k_platform_data.
Including ath9k_platform.h in ath5k-sources looks confusing as the name ath9k_platform suggests that the supplied ath9k_platform_info struct is specific to ath9k devices.
Consequently, I believe ath9k_platform.h should be renamed into ath_platform.h, the macro ATH9K_PLAT_EEP_MAX_WORDS into ATH_PLAT_EEP_MAX_WORDS and struct ath9k_platform_data should be refactored to be struct ath_platform_data.
Please let me know if you agree with this in theory; if yes, I'll start posting the patches to OpenWrt.

Cheers

Daniel

#1 lore raw
Quoted 7 lines · Daniel Golle

I'm developing on OpenWrt to work with EEPROM-less ath5k mini-pci devices. This is needed to support the ar71xx-based Senao EAP7660D board which got two AR5413 modules soldered into its mini-pci slots. In the original Firmware, MAC addresses as well as calibration-data seems to be part of the firmware blob stored on the board flash.
See https://lists.openwrt.org/pipermail/openwrt-devel/2010-June/007366.html
for the corresponding discussion on OpenWrt-devel.

I don't see much "discussion" there.

Quoted 11 lines

Similarly to the way this happens for ath9k, I managed to get ath5k to use the MAC address and eeprom-data supplied by ath9k_platform_data. Including ath9k_platform.h in ath5k-sources looks confusing as the name ath9k_platform suggests that the supplied ath9k_platform_info struct is specific to ath9k devices.
Consequently, I believe ath9k_platform.h should be renamed into ath_platform.h, the macro ATH9K_PLAT_EEP_MAX_WORDS into ATH_PLAT_EEP_MAX_WORDS and struct ath9k_platform_data should be refactored to be struct ath_platform_data.
Please let me know if you agree with this in theory; if yes, I'll start posting the patches to OpenWrt.

You can stuff any general stuff into the ath module which is shared by both.

Luis

#2 lore raw

Hi!
In order to support the Senao EAP7660D board, I now added ath5k_platform.h and patched ath5k (and madwifi). In this way, the infrastructure for ath9k and ath5k remains separate, as discussed in
https://lists.openwrt.org/pipermail/openwrt-devel/2010-July/007506.html

Is there any chance to have the patches added in
https://dev.openwrt.org/changeset/22188
included to linux-wireless?

Thank you!

Daniel

Quoted 29 lines · Luis R. Rodriguez
Quoted 8 lines · Daniel Golle

I'm developing on OpenWrt to work with EEPROM-less ath5k mini-pci devices. This is needed to support the ar71xx-based Senao EAP7660D board which got two AR5413 modules soldered into its mini-pci slots. In the original Firmware, MAC addresses as well as calibration-data seems to be part of the firmware blob stored on the board flash.
See https://lists.openwrt.org/pipermail/openwrt-devel/2010-June/007366.html
for the corresponding discussion on OpenWrt-devel.

I don't see much "discussion" there.

Quoted 12 lines

Similarly to the way this happens for ath9k, I managed to get ath5k to use the MAC address and eeprom-data supplied by ath9k_platform_data. Including ath9k_platform.h in ath5k-sources looks confusing as the name ath9k_platform suggests that the supplied ath9k_platform_info struct is specific to ath9k devices.
Consequently, I believe ath9k_platform.h should be renamed into ath_platform.h, the macro ATH9K_PLAT_EEP_MAX_WORDS into ATH_PLAT_EEP_MAX_WORDS and struct ath9k_platform_data should be refactored to be struct ath_platform_data.
Please let me know if you agree with this in theory; if yes, I'll start posting the patches to OpenWrt.

You can stuff any general stuff into the ath module which is shared by both.

Luis