* [ath9k-devel] Fwd: Re: ath9k_htc firmware
[not found] ` <57526D1D.9000305@gmx.net>
@ 2016-06-04 5:58 ` Oleksij Rempel
2016-06-04 19:44 ` [ath9k-devel] " bruce m beach
1 sibling, 0 replies; 5+ messages in thread
From: Oleksij Rempel @ 2016-06-04 5:58 UTC (permalink / raw)
To: ath9k-devel
Am 03.06.2016 um 19:26 schrieb bruce m beach:
> Hello All
>
> I am still working on cleaning up ath9k_htc firmware build tree for about 6
> months now ( and looks like I'll be doing this for all eternity**2 ) and am
> not clear myself what I'm looking for right now.
>
> I'm looking for some kind of simple request in the ath9k_htc driver, through
> the usb ep0, like a memory read on the card, where a urb is sent with
> the resulting chain of events. The simpler the better. The simplest.
For EP0 on drivers site:
static int ath9k_hif_usb_download_fw(struct hif_device_usb *hif_dev)
{
int transfer, err;
const void *data = hif_dev->fw_data;
size_t len = hif_dev->fw_size;
u32 addr = AR9271_FIRMWARE;
u8 *buf = kzalloc(4096, GFP_KERNEL);
u32 firm_offset;
if (!buf)
return -ENOMEM;
while (len) {
transfer = min_t(size_t, len, 4096);
memcpy(buf, data, transfer);
err = usb_control_msg(hif_dev->udev,
usb_sndctrlpipe(hif_dev->udev, 0),
FIRMWARE_DOWNLOAD, 0x40 | USB_DIR_OUT,
addr >> 8, 0, buf, transfer, HZ);
=============================================================================
On side of pre installed firmware, the code looks like this:
open-ath9k-htc-firmware/sboot/magpie_1_1/sboot/hif/usb/src/usb_api.c
LOCAL void VendorCommand(void)
{
#define cUSB_REQ_DOWNLOAD 0x30
#define cUSB_REQ_DOWNLOAD_COMP 0x31
#define cUSB_REQ_BOOT 0x32
#define cUSB_REQ_RESERVED_1 0x33
#define cUSB_REQ_RESERVED_2 0x34
#define cUSB_REQ_FLASH_READ 0x35
#define cUSB_REQ_FLASH_READ_COMP 0x36
//#define ZM_FIRMWARE_ADDR 0x200000
void (*funcPtr)(void);
uint16_t *text_addr = 0;
uint32_t ep0_data = 0x0;
...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 213 bytes
Desc: OpenPGP digital signature
Url : http://lists.ath9k.org/pipermail/ath9k-devel/attachments/20160604/2a073a8d/attachment.pgp
^ permalink raw reply [flat|nested] 5+ messages in thread
* [ath9k-devel] ath9k_htc firmware
[not found] ` <57526D1D.9000305@gmx.net>
2016-06-04 5:58 ` [ath9k-devel] Fwd: Re: ath9k_htc firmware Oleksij Rempel
@ 2016-06-04 19:44 ` bruce m beach
2016-06-04 20:25 ` Oleksij Rempel
2016-06-04 20:27 ` Oleksij Rempel
1 sibling, 2 replies; 5+ messages in thread
From: bruce m beach @ 2016-06-04 19:44 UTC (permalink / raw)
To: ath9k-devel
>> I'm looking for some kind of simple request in the ath9k_htc driver, through
>> the usb ep0, like a memory read on the card, where a urb is sent with
>> the resulting chain of events. The simpler the better. The simplest.
> For EP0 on drivers site:
> static int ath9k_hif_usb_download_fw(struct hif_device_usb *hif_dev)
> {
> int transfer, err;
> const void *data = hif_dev->fw_data;
> size_t len = hif_dev->fw_size;
> u32 addr = AR9271_FIRMWARE;
> u8 *buf = kzalloc(4096, GFP_KERNEL);
> u32 firm_offset;
> ...
What about the code for setting and resetting leds ???
Bruce
^ permalink raw reply [flat|nested] 5+ messages in thread
* [ath9k-devel] ath9k_htc firmware
2016-06-04 19:44 ` [ath9k-devel] " bruce m beach
@ 2016-06-04 20:25 ` Oleksij Rempel
2016-06-04 20:27 ` Oleksij Rempel
1 sibling, 0 replies; 5+ messages in thread
From: Oleksij Rempel @ 2016-06-04 20:25 UTC (permalink / raw)
To: ath9k-devel
Am 04.06.2016 um 21:44 schrieb bruce m beach:
>>> I'm looking for some kind of simple request in the ath9k_htc driver, through
>>> the usb ep0, like a memory read on the card, where a urb is sent with
>>> the resulting chain of events. The simpler the better. The simplest.
>
>> For EP0 on drivers site:
>> static int ath9k_hif_usb_download_fw(struct hif_device_usb *hif_dev)
>> {
>> int transfer, err;
>> const void *data = hif_dev->fw_data;
>> size_t len = hif_dev->fw_size;
>> u32 addr = AR9271_FIRMWARE;
>> u8 *buf = kzalloc(4096, GFP_KERNEL);
>> u32 firm_offset;
>> ...
>
> What about the code for setting and resetting leds ???
>
> Bruce
>
It is EP3/EP4 and it is not working without firmware.
Here is one example how you can add new command to firmware:
https://github.com/olerem/open-ath9k-htc-firmware/commit/c73c159303e30a28e2d3dc05ba0d2d15504e5fad
And for kernel driver:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=8badb50cfab6d433622dbfd5a90b6adf27333107
^ permalink raw reply [flat|nested] 5+ messages in thread
* [ath9k-devel] ath9k_htc firmware
2016-06-04 19:44 ` [ath9k-devel] " bruce m beach
2016-06-04 20:25 ` Oleksij Rempel
@ 2016-06-04 20:27 ` Oleksij Rempel
1 sibling, 0 replies; 5+ messages in thread
From: Oleksij Rempel @ 2016-06-04 20:27 UTC (permalink / raw)
To: ath9k-devel
Am 04.06.2016 um 21:44 schrieb bruce m beach:
>>> I'm looking for some kind of simple request in the ath9k_htc driver, through
>>> the usb ep0, like a memory read on the card, where a urb is sent with
>>> the resulting chain of events. The simpler the better. The simplest.
>
>> For EP0 on drivers site:
>> static int ath9k_hif_usb_download_fw(struct hif_device_usb *hif_dev)
>> {
>> int transfer, err;
>> const void *data = hif_dev->fw_data;
>> size_t len = hif_dev->fw_size;
>> u32 addr = AR9271_FIRMWARE;
>> u8 *buf = kzalloc(4096, GFP_KERNEL);
>> u32 firm_offset;
>> ...
>
> What about the code for setting and resetting leds ???
>
> Bruce
It is EP3/EP4 and it is not working without firmware.
Here is one example how you can add new command to firmware:
https://github.com/olerem/open-ath9k-htc-firmware/commit/c73c159303e30a28e2d3dc05ba0d2d15504e5fad
And for kernel driver:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=8badb50cfab6d433622dbfd5a90b6adf27333107
PS: Grr... today i send message from wrong email. Sorry for the spam
--
Regards,
Oleksij
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 213 bytes
Desc: OpenPGP digital signature
Url : http://lists.ath9k.org/pipermail/ath9k-devel/attachments/20160604/7f9800c4/attachment.pgp
^ permalink raw reply [flat|nested] 5+ messages in thread
* [ath9k-devel] ath9k_htc firmware
@ 2016-06-03 17:59 bruce m beach
0 siblings, 0 replies; 5+ messages in thread
From: bruce m beach @ 2016-06-03 17:59 UTC (permalink / raw)
To: ath9k-devel
Hello All
I am still working on cleaning up ath9k_htc firmware build tree for about 6
months now ( and looks like I'll be doing this for all eternity**2 ) and am
not clear myself what I'm looking for right now.
I'm looking for some kind of simple request in the ath9k_htc driver, through
the usb ep0, like a memory read on the card, where a urb is sent with
the resulting chain of events. The simpler the better. The simplest.
Bruce
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-06-04 20:27 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <CAArymCnfQaa29D2EXGzwOrp0yvXES+Qq1X-HbSUxC6gig8pH_A@mail.gmail.com>
[not found] ` <57526D1D.9000305@gmx.net>
2016-06-04 5:58 ` [ath9k-devel] Fwd: Re: ath9k_htc firmware Oleksij Rempel
2016-06-04 19:44 ` [ath9k-devel] " bruce m beach
2016-06-04 20:25 ` Oleksij Rempel
2016-06-04 20:27 ` Oleksij Rempel
2016-06-03 17:59 bruce m beach
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).