* Any tips on where per-packet antenna selection could be pushed? @ 2016-06-06 17:12 Zach Sherin 2016-06-06 17:21 ` Ben Greear 0 siblings, 1 reply; 14+ messages in thread From: Zach Sherin @ 2016-06-06 17:12 UTC (permalink / raw) To: ath10k Hi all, I'm working on a device with antenna selection, similar to the ideas behind Ruckus or Google's Onhub router. I've been looking into a solution for per-packet antenna selection (based on destination/next hop). I was hoping this list might be able to suggest where I should investigate adding that switching code. My switches are currently USB RF switches, but I'm going to be using some serial protocol for the final version (we don't have much to switch, and it should be a single byte per packet). The last suggestion I received was to emulate Netsed [1] by routing all packets through a specific socket, running antenna selection, and then pushing them to their final destinations. I assumed that the best place to do antenna selection would be within ath10k itself (my devices all run on ath10k) so that I could introduce the minimum possible latency with antenna selection. Should I be looking at a different part of the networking stack? Does anyone have any suggestions, or perhaps an open-source project out there already trying to do antenna selection? Thanks, Zach [1] http://silicone.homelinux.org/projects/netsed/ _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-06 17:12 Any tips on where per-packet antenna selection could be pushed? Zach Sherin @ 2016-06-06 17:21 ` Ben Greear 2016-06-06 17:24 ` Zach Sherin 0 siblings, 1 reply; 14+ messages in thread From: Ben Greear @ 2016-06-06 17:21 UTC (permalink / raw) To: Zach Sherin, ath10k On 06/06/2016 10:12 AM, Zach Sherin wrote: > Hi all, > > I'm working on a device with antenna selection, similar to the ideas > behind Ruckus or Google's Onhub router. I've been looking into a > solution for per-packet antenna selection (based on destination/next > hop). I was hoping this list might be able to suggest where I should > investigate adding that switching code. My switches are currently USB > RF switches, but I'm going to be using some serial protocol for the > final version (we don't have much to switch, and it should be a single > byte per packet). > > The last suggestion I received was to emulate Netsed [1] by routing > all packets through a specific socket, running antenna selection, and > then pushing them to their final destinations. > > I assumed that the best place to do antenna selection would be within > ath10k itself (my devices all run on ath10k) so that I could introduce > the minimum possible latency with antenna selection. Should I be > looking at a different part of the networking stack? > > Does anyone have any suggestions, or perhaps an open-source project > out there already trying to do antenna selection? Would per-peer antenna selection work? That is probably more easily hacked into the firmware (I don't think stock firmware supports this feature, but I could be wrong.) Thanks, Ben > > Thanks, > Zach > > > [1] http://silicone.homelinux.org/projects/netsed/ > > _______________________________________________ > ath10k mailing list > ath10k@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/ath10k > -- Ben Greear <greearb@candelatech.com> Candela Technologies Inc http://www.candelatech.com _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-06 17:21 ` Ben Greear @ 2016-06-06 17:24 ` Zach Sherin 2016-06-06 17:28 ` Ben Greear 0 siblings, 1 reply; 14+ messages in thread From: Zach Sherin @ 2016-06-06 17:24 UTC (permalink / raw) To: Ben Greear; +Cc: ath10k I'm not sure I know exactly what you mean by per-peer. Do you mean that the antenna switches only when we're delivering to a new next-hop? I would absolutely be fine with that, by per-packet I do actually mean selection based on destination/next hop so aggregating deliveries for a single peer would be even better. Also, I forgot to mention that this is intended for static mesh networks, so I'm not worried about moment-to-moment changes in peer location. Thanks, Zach On Mon, Jun 6, 2016 at 1:21 PM, Ben Greear <greearb@candelatech.com> wrote: > On 06/06/2016 10:12 AM, Zach Sherin wrote: >> >> Hi all, >> >> I'm working on a device with antenna selection, similar to the ideas >> behind Ruckus or Google's Onhub router. I've been looking into a >> solution for per-packet antenna selection (based on destination/next >> hop). I was hoping this list might be able to suggest where I should >> investigate adding that switching code. My switches are currently USB >> RF switches, but I'm going to be using some serial protocol for the >> final version (we don't have much to switch, and it should be a single >> byte per packet). >> >> The last suggestion I received was to emulate Netsed [1] by routing >> all packets through a specific socket, running antenna selection, and >> then pushing them to their final destinations. >> >> I assumed that the best place to do antenna selection would be within >> ath10k itself (my devices all run on ath10k) so that I could introduce >> the minimum possible latency with antenna selection. Should I be >> looking at a different part of the networking stack? >> >> Does anyone have any suggestions, or perhaps an open-source project >> out there already trying to do antenna selection? > > > Would per-peer antenna selection work? That is probably more easily > hacked into the firmware (I don't think stock firmware supports this > feature, but I could be wrong.) > > Thanks, > Ben > >> >> Thanks, >> Zach >> >> >> [1] http://silicone.homelinux.org/projects/netsed/ >> >> _______________________________________________ >> ath10k mailing list >> ath10k@lists.infradead.org >> http://lists.infradead.org/mailman/listinfo/ath10k >> > > > -- > Ben Greear <greearb@candelatech.com> > Candela Technologies Inc http://www.candelatech.com > _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-06 17:24 ` Zach Sherin @ 2016-06-06 17:28 ` Ben Greear 2016-06-06 17:59 ` Zach Sherin 0 siblings, 1 reply; 14+ messages in thread From: Ben Greear @ 2016-06-06 17:28 UTC (permalink / raw) To: Zach Sherin; +Cc: ath10k On 06/06/2016 10:24 AM, Zach Sherin wrote: > I'm not sure I know exactly what you mean by per-peer. Do you mean > that the antenna switches only when we're delivering to a new > next-hop? I would absolutely be fine with that, by per-packet I do > actually mean selection based on destination/next hop so aggregating > deliveries for a single peer would be even better. > > Also, I forgot to mention that this is intended for static mesh > networks, so I'm not worried about moment-to-moment changes in peer > location. Maybe some of the official QCA devs will have some ideas on how to do this with stock firmware. I am guessing you would have to have some API in the firmware that could twiddle your antenna right before attempting to transmit a frame? Do you have physical output pins on your ath10k NIC to even do this? Thanks, Ben > > Thanks, > Zach > > On Mon, Jun 6, 2016 at 1:21 PM, Ben Greear <greearb@candelatech.com> wrote: >> On 06/06/2016 10:12 AM, Zach Sherin wrote: >>> >>> Hi all, >>> >>> I'm working on a device with antenna selection, similar to the ideas >>> behind Ruckus or Google's Onhub router. I've been looking into a >>> solution for per-packet antenna selection (based on destination/next >>> hop). I was hoping this list might be able to suggest where I should >>> investigate adding that switching code. My switches are currently USB >>> RF switches, but I'm going to be using some serial protocol for the >>> final version (we don't have much to switch, and it should be a single >>> byte per packet). >>> >>> The last suggestion I received was to emulate Netsed [1] by routing >>> all packets through a specific socket, running antenna selection, and >>> then pushing them to their final destinations. >>> >>> I assumed that the best place to do antenna selection would be within >>> ath10k itself (my devices all run on ath10k) so that I could introduce >>> the minimum possible latency with antenna selection. Should I be >>> looking at a different part of the networking stack? >>> >>> Does anyone have any suggestions, or perhaps an open-source project >>> out there already trying to do antenna selection? >> >> >> Would per-peer antenna selection work? That is probably more easily >> hacked into the firmware (I don't think stock firmware supports this >> feature, but I could be wrong.) >> >> Thanks, >> Ben >> >>> >>> Thanks, >>> Zach >>> >>> >>> [1] http://silicone.homelinux.org/projects/netsed/ >>> >>> _______________________________________________ >>> ath10k mailing list >>> ath10k@lists.infradead.org >>> http://lists.infradead.org/mailman/listinfo/ath10k >>> >> >> >> -- >> Ben Greear <greearb@candelatech.com> >> Candela Technologies Inc http://www.candelatech.com >> > -- Ben Greear <greearb@candelatech.com> Candela Technologies Inc http://www.candelatech.com _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-06 17:28 ` Ben Greear @ 2016-06-06 17:59 ` Zach Sherin 2016-06-06 18:02 ` Ben Greear 0 siblings, 1 reply; 14+ messages in thread From: Zach Sherin @ 2016-06-06 17:59 UTC (permalink / raw) To: Ben Greear; +Cc: ath10k I was aiming to run this off a serial interface on the general board, not on the ath10k NIC. I have a consumer QCA9880 PCI board in an Archer C7 router. It would be awesome if I could steal a GPIO or something from the atheros chip to output, but I was assuming I couldn't. The main reason I was looking at the ath10k driver was to get as close to when the packets are transmitted as possible, to leave as little room for error in the switching as possible. However, it's possible that I'm hoping for too much there. I'd be interested to hear your thoughts on it. If I can't pull it off, I'll move to an approach outside ath10k. Thanks, Zach On Mon, Jun 6, 2016 at 1:28 PM, Ben Greear <greearb@candelatech.com> wrote: > On 06/06/2016 10:24 AM, Zach Sherin wrote: >> >> I'm not sure I know exactly what you mean by per-peer. Do you mean >> that the antenna switches only when we're delivering to a new >> next-hop? I would absolutely be fine with that, by per-packet I do >> actually mean selection based on destination/next hop so aggregating >> deliveries for a single peer would be even better. >> >> Also, I forgot to mention that this is intended for static mesh >> networks, so I'm not worried about moment-to-moment changes in peer >> location. > > > Maybe some of the official QCA devs will have some ideas on how to do > this with stock firmware. > > I am guessing you would have to have some API in the firmware that > could twiddle your antenna right before attempting to transmit a > frame? > > Do you have physical output pins on your ath10k NIC to even do this? > > Thanks, > Ben > > > >> >> Thanks, >> Zach >> >> On Mon, Jun 6, 2016 at 1:21 PM, Ben Greear <greearb@candelatech.com> >> wrote: >>> >>> On 06/06/2016 10:12 AM, Zach Sherin wrote: >>>> >>>> >>>> Hi all, >>>> >>>> I'm working on a device with antenna selection, similar to the ideas >>>> behind Ruckus or Google's Onhub router. I've been looking into a >>>> solution for per-packet antenna selection (based on destination/next >>>> hop). I was hoping this list might be able to suggest where I should >>>> investigate adding that switching code. My switches are currently USB >>>> RF switches, but I'm going to be using some serial protocol for the >>>> final version (we don't have much to switch, and it should be a single >>>> byte per packet). >>>> >>>> The last suggestion I received was to emulate Netsed [1] by routing >>>> all packets through a specific socket, running antenna selection, and >>>> then pushing them to their final destinations. >>>> >>>> I assumed that the best place to do antenna selection would be within >>>> ath10k itself (my devices all run on ath10k) so that I could introduce >>>> the minimum possible latency with antenna selection. Should I be >>>> looking at a different part of the networking stack? >>>> >>>> Does anyone have any suggestions, or perhaps an open-source project >>>> out there already trying to do antenna selection? >>> >>> >>> >>> Would per-peer antenna selection work? That is probably more easily >>> hacked into the firmware (I don't think stock firmware supports this >>> feature, but I could be wrong.) >>> >>> Thanks, >>> Ben >>> >>>> >>>> Thanks, >>>> Zach >>>> >>>> >>>> [1] http://silicone.homelinux.org/projects/netsed/ >>>> >>>> _______________________________________________ >>>> ath10k mailing list >>>> ath10k@lists.infradead.org >>>> http://lists.infradead.org/mailman/listinfo/ath10k >>>> >>> >>> >>> -- >>> Ben Greear <greearb@candelatech.com> >>> Candela Technologies Inc http://www.candelatech.com >>> >> > > > -- > Ben Greear <greearb@candelatech.com> > Candela Technologies Inc http://www.candelatech.com > _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-06 17:59 ` Zach Sherin @ 2016-06-06 18:02 ` Ben Greear [not found] ` <CAJ-VmomKzRAkJNQr2Sg=j57uPfptPiRs1Q026dPeuQv0jMx-Og@mail.gmail.com> 0 siblings, 1 reply; 14+ messages in thread From: Ben Greear @ 2016-06-06 18:02 UTC (permalink / raw) To: Zach Sherin; +Cc: ath10k On 06/06/2016 10:59 AM, Zach Sherin wrote: > I was aiming to run this off a serial interface on the general board, > not on the ath10k NIC. I have a consumer QCA9880 PCI board in an > Archer C7 router. It would be awesome if I could steal a GPIO or > something from the atheros chip to output, but I was assuming I > couldn't. The main reason I was looking at the ath10k driver was to > get as close to when the packets are transmitted as possible, to leave > as little room for error in the switching as possible. > > However, it's possible that I'm hoping for too much there. I'd be > interested to hear your thoughts on it. If I can't pull it off, I'll > move to an approach outside ath10k. The driver just sends pkts to the firmware, it is the firmware that knows when a pkt is to be transmitted, so I think you would have to have some hooks low in the firmware tx logic to do what you want. And you would need some hardware output from the NIC. I am guessing it would require quite a bit of changes to the firmware, possibly very tricky/hacky ones, and hardware output on your NIC. Thanks, Ben -- Ben Greear <greearb@candelatech.com> Candela Technologies Inc http://www.candelatech.com _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
[parent not found: <CAJ-VmomKzRAkJNQr2Sg=j57uPfptPiRs1Q026dPeuQv0jMx-Og@mail.gmail.com>]
* Re: Any tips on where per-packet antenna selection could be pushed? [not found] ` <CAJ-VmomKzRAkJNQr2Sg=j57uPfptPiRs1Q026dPeuQv0jMx-Og@mail.gmail.com> @ 2016-06-06 18:48 ` Zach Sherin 2016-06-06 18:57 ` Ben Greear 0 siblings, 1 reply; 14+ messages in thread From: Zach Sherin @ 2016-06-06 18:48 UTC (permalink / raw) To: Adrian Chadd; +Cc: Ben Greear, ath10k Interesting. Could I ask if there's somewhere I should start digging? If it's not obvious I'm a driver/kernel newbie, but I'm happy to learn. Should I start by going through ath10k's documentation/code until I find the relevant bits? Thanks, Zach On Mon, Jun 6, 2016 at 2:42 PM, Adrian Chadd <adrian.chadd@gmail.com> wrote: > I bet the ruckus mode shift stuff is in the ath10k hardware and is > configurable per TX descriptor. > > a > > On Jun 6, 2016 11:03 AM, "Ben Greear" <greearb@candelatech.com> wrote: >> >> On 06/06/2016 10:59 AM, Zach Sherin wrote: >>> >>> I was aiming to run this off a serial interface on the general board, >>> not on the ath10k NIC. I have a consumer QCA9880 PCI board in an >>> Archer C7 router. It would be awesome if I could steal a GPIO or >>> something from the atheros chip to output, but I was assuming I >>> couldn't. The main reason I was looking at the ath10k driver was to >>> get as close to when the packets are transmitted as possible, to leave >>> as little room for error in the switching as possible. >>> >>> However, it's possible that I'm hoping for too much there. I'd be >>> interested to hear your thoughts on it. If I can't pull it off, I'll >>> move to an approach outside ath10k. >> >> >> The driver just sends pkts to the firmware, it is the firmware that >> knows when a pkt is to be transmitted, so I think you would have to have >> some >> hooks low in the firmware tx logic to do what you want. And you would >> need some >> hardware output from the NIC. >> >> I am guessing it would require quite a bit of changes to the firmware, >> possibly very tricky/hacky ones, and hardware output on your NIC. >> >> Thanks, >> Ben >> >> -- >> Ben Greear <greearb@candelatech.com> >> Candela Technologies Inc http://www.candelatech.com >> >> >> _______________________________________________ >> ath10k mailing list >> ath10k@lists.infradead.org >> http://lists.infradead.org/mailman/listinfo/ath10k _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-06 18:48 ` Zach Sherin @ 2016-06-06 18:57 ` Ben Greear 2016-06-06 19:22 ` Zach Sherin 0 siblings, 1 reply; 14+ messages in thread From: Ben Greear @ 2016-06-06 18:57 UTC (permalink / raw) To: Zach Sherin, Adrian Chadd; +Cc: ath10k On 06/06/2016 11:48 AM, Zach Sherin wrote: > Interesting. Could I ask if there's somewhere I should start digging? > If it's not obvious I'm a driver/kernel newbie, but I'm happy to > learn. Should I start by going through ath10k's documentation/code > until I find the relevant bits? Unfortunately, without firmware source, you have probably no chance to do this. And, you also probably have about no chance of getting firmware source. Thanks, Ben > > Thanks, > Zach > > > On Mon, Jun 6, 2016 at 2:42 PM, Adrian Chadd <adrian.chadd@gmail.com> wrote: >> I bet the ruckus mode shift stuff is in the ath10k hardware and is >> configurable per TX descriptor. >> >> a >> >> On Jun 6, 2016 11:03 AM, "Ben Greear" <greearb@candelatech.com> wrote: >>> >>> On 06/06/2016 10:59 AM, Zach Sherin wrote: >>>> >>>> I was aiming to run this off a serial interface on the general board, >>>> not on the ath10k NIC. I have a consumer QCA9880 PCI board in an >>>> Archer C7 router. It would be awesome if I could steal a GPIO or >>>> something from the atheros chip to output, but I was assuming I >>>> couldn't. The main reason I was looking at the ath10k driver was to >>>> get as close to when the packets are transmitted as possible, to leave >>>> as little room for error in the switching as possible. >>>> >>>> However, it's possible that I'm hoping for too much there. I'd be >>>> interested to hear your thoughts on it. If I can't pull it off, I'll >>>> move to an approach outside ath10k. >>> >>> >>> The driver just sends pkts to the firmware, it is the firmware that >>> knows when a pkt is to be transmitted, so I think you would have to have >>> some >>> hooks low in the firmware tx logic to do what you want. And you would >>> need some >>> hardware output from the NIC. >>> >>> I am guessing it would require quite a bit of changes to the firmware, >>> possibly very tricky/hacky ones, and hardware output on your NIC. >>> >>> Thanks, >>> Ben >>> >>> -- >>> Ben Greear <greearb@candelatech.com> >>> Candela Technologies Inc http://www.candelatech.com >>> >>> >>> _______________________________________________ >>> ath10k mailing list >>> ath10k@lists.infradead.org >>> http://lists.infradead.org/mailman/listinfo/ath10k > -- Ben Greear <greearb@candelatech.com> Candela Technologies Inc http://www.candelatech.com _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-06 18:57 ` Ben Greear @ 2016-06-06 19:22 ` Zach Sherin 2016-06-07 6:24 ` Janusz Dziedzic 0 siblings, 1 reply; 14+ messages in thread From: Zach Sherin @ 2016-06-06 19:22 UTC (permalink / raw) To: Ben Greear; +Cc: Adrian Chadd, ath10k That's what I thought. Thanks for confirming, and thanks again for your time and help! Have a good one, Zach On Mon, Jun 6, 2016 at 2:57 PM, Ben Greear <greearb@candelatech.com> wrote: > On 06/06/2016 11:48 AM, Zach Sherin wrote: >> >> Interesting. Could I ask if there's somewhere I should start digging? >> If it's not obvious I'm a driver/kernel newbie, but I'm happy to >> learn. Should I start by going through ath10k's documentation/code >> until I find the relevant bits? > > > Unfortunately, without firmware source, you have probably no chance > to do this. And, you also probably have about no chance of getting > firmware source. > > Thanks, > Ben > > >> >> Thanks, >> Zach >> >> >> On Mon, Jun 6, 2016 at 2:42 PM, Adrian Chadd <adrian.chadd@gmail.com> >> wrote: >>> >>> I bet the ruckus mode shift stuff is in the ath10k hardware and is >>> configurable per TX descriptor. >>> >>> a >>> >>> On Jun 6, 2016 11:03 AM, "Ben Greear" <greearb@candelatech.com> wrote: >>>> >>>> >>>> On 06/06/2016 10:59 AM, Zach Sherin wrote: >>>>> >>>>> >>>>> I was aiming to run this off a serial interface on the general board, >>>>> not on the ath10k NIC. I have a consumer QCA9880 PCI board in an >>>>> Archer C7 router. It would be awesome if I could steal a GPIO or >>>>> something from the atheros chip to output, but I was assuming I >>>>> couldn't. The main reason I was looking at the ath10k driver was to >>>>> get as close to when the packets are transmitted as possible, to leave >>>>> as little room for error in the switching as possible. >>>>> >>>>> However, it's possible that I'm hoping for too much there. I'd be >>>>> interested to hear your thoughts on it. If I can't pull it off, I'll >>>>> move to an approach outside ath10k. >>>> >>>> >>>> >>>> The driver just sends pkts to the firmware, it is the firmware that >>>> knows when a pkt is to be transmitted, so I think you would have to have >>>> some >>>> hooks low in the firmware tx logic to do what you want. And you would >>>> need some >>>> hardware output from the NIC. >>>> >>>> I am guessing it would require quite a bit of changes to the firmware, >>>> possibly very tricky/hacky ones, and hardware output on your NIC. >>>> >>>> Thanks, >>>> Ben >>>> >>>> -- >>>> Ben Greear <greearb@candelatech.com> >>>> Candela Technologies Inc http://www.candelatech.com >>>> >>>> >>>> _______________________________________________ >>>> ath10k mailing list >>>> ath10k@lists.infradead.org >>>> http://lists.infradead.org/mailman/listinfo/ath10k >> >> > > > -- > Ben Greear <greearb@candelatech.com> > Candela Technologies Inc http://www.candelatech.com > _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-06 19:22 ` Zach Sherin @ 2016-06-07 6:24 ` Janusz Dziedzic 2016-06-07 7:40 ` Adrian Chadd 0 siblings, 1 reply; 14+ messages in thread From: Janusz Dziedzic @ 2016-06-07 6:24 UTC (permalink / raw) To: Zach Sherin; +Cc: Adrian Chadd, Ben Greear, ath10k@lists.infradead.org On 6 June 2016 at 21:22, Zach Sherin <zach@netblazr.com> wrote: > That's what I thought. Thanks for confirming, and thanks again for > your time and help! > BTW, check google: ath10k smart antenna Seems 10.2 support this. BR Janusz > Have a good one, > Zach > > On Mon, Jun 6, 2016 at 2:57 PM, Ben Greear <greearb@candelatech.com> wrote: >> On 06/06/2016 11:48 AM, Zach Sherin wrote: >>> >>> Interesting. Could I ask if there's somewhere I should start digging? >>> If it's not obvious I'm a driver/kernel newbie, but I'm happy to >>> learn. Should I start by going through ath10k's documentation/code >>> until I find the relevant bits? >> >> >> Unfortunately, without firmware source, you have probably no chance >> to do this. And, you also probably have about no chance of getting >> firmware source. >> >> Thanks, >> Ben >> >> >>> >>> Thanks, >>> Zach >>> >>> >>> On Mon, Jun 6, 2016 at 2:42 PM, Adrian Chadd <adrian.chadd@gmail.com> >>> wrote: >>>> >>>> I bet the ruckus mode shift stuff is in the ath10k hardware and is >>>> configurable per TX descriptor. >>>> >>>> a >>>> >>>> On Jun 6, 2016 11:03 AM, "Ben Greear" <greearb@candelatech.com> wrote: >>>>> >>>>> >>>>> On 06/06/2016 10:59 AM, Zach Sherin wrote: >>>>>> >>>>>> >>>>>> I was aiming to run this off a serial interface on the general board, >>>>>> not on the ath10k NIC. I have a consumer QCA9880 PCI board in an >>>>>> Archer C7 router. It would be awesome if I could steal a GPIO or >>>>>> something from the atheros chip to output, but I was assuming I >>>>>> couldn't. The main reason I was looking at the ath10k driver was to >>>>>> get as close to when the packets are transmitted as possible, to leave >>>>>> as little room for error in the switching as possible. >>>>>> >>>>>> However, it's possible that I'm hoping for too much there. I'd be >>>>>> interested to hear your thoughts on it. If I can't pull it off, I'll >>>>>> move to an approach outside ath10k. >>>>> >>>>> >>>>> >>>>> The driver just sends pkts to the firmware, it is the firmware that >>>>> knows when a pkt is to be transmitted, so I think you would have to have >>>>> some >>>>> hooks low in the firmware tx logic to do what you want. And you would >>>>> need some >>>>> hardware output from the NIC. >>>>> >>>>> I am guessing it would require quite a bit of changes to the firmware, >>>>> possibly very tricky/hacky ones, and hardware output on your NIC. >>>>> >>>>> Thanks, >>>>> Ben >>>>> >>>>> -- >>>>> Ben Greear <greearb@candelatech.com> >>>>> Candela Technologies Inc http://www.candelatech.com >>>>> >>>>> >>>>> _______________________________________________ >>>>> ath10k mailing list >>>>> ath10k@lists.infradead.org >>>>> http://lists.infradead.org/mailman/listinfo/ath10k >>> >>> >> >> >> -- >> Ben Greear <greearb@candelatech.com> >> Candela Technologies Inc http://www.candelatech.com >> > > _______________________________________________ > ath10k mailing list > ath10k@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/ath10k _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-07 6:24 ` Janusz Dziedzic @ 2016-06-07 7:40 ` Adrian Chadd 2016-06-07 7:53 ` Michal Kazior 0 siblings, 1 reply; 14+ messages in thread From: Adrian Chadd @ 2016-06-07 7:40 UTC (permalink / raw) To: Janusz Dziedzic; +Cc: Zach Sherin, Ben Greear, ath10k@lists.infradead.org On 6 June 2016 at 23:24, Janusz Dziedzic <janusz.dziedzic@tieto.com> wrote: > On 6 June 2016 at 21:22, Zach Sherin <zach@netblazr.com> wrote: >> That's what I thought. Thanks for confirming, and thanks again for >> your time and help! >> > BTW, check google: ath10k smart antenna > Seems 10.2 support this. ooo cool. wonder how much of the useful bits it implements! -adrian > > BR > Janusz > >> Have a good one, >> Zach >> >> On Mon, Jun 6, 2016 at 2:57 PM, Ben Greear <greearb@candelatech.com> wrote: >>> On 06/06/2016 11:48 AM, Zach Sherin wrote: >>>> >>>> Interesting. Could I ask if there's somewhere I should start digging? >>>> If it's not obvious I'm a driver/kernel newbie, but I'm happy to >>>> learn. Should I start by going through ath10k's documentation/code >>>> until I find the relevant bits? >>> >>> >>> Unfortunately, without firmware source, you have probably no chance >>> to do this. And, you also probably have about no chance of getting >>> firmware source. >>> >>> Thanks, >>> Ben >>> >>> >>>> >>>> Thanks, >>>> Zach >>>> >>>> >>>> On Mon, Jun 6, 2016 at 2:42 PM, Adrian Chadd <adrian.chadd@gmail.com> >>>> wrote: >>>>> >>>>> I bet the ruckus mode shift stuff is in the ath10k hardware and is >>>>> configurable per TX descriptor. >>>>> >>>>> a >>>>> >>>>> On Jun 6, 2016 11:03 AM, "Ben Greear" <greearb@candelatech.com> wrote: >>>>>> >>>>>> >>>>>> On 06/06/2016 10:59 AM, Zach Sherin wrote: >>>>>>> >>>>>>> >>>>>>> I was aiming to run this off a serial interface on the general board, >>>>>>> not on the ath10k NIC. I have a consumer QCA9880 PCI board in an >>>>>>> Archer C7 router. It would be awesome if I could steal a GPIO or >>>>>>> something from the atheros chip to output, but I was assuming I >>>>>>> couldn't. The main reason I was looking at the ath10k driver was to >>>>>>> get as close to when the packets are transmitted as possible, to leave >>>>>>> as little room for error in the switching as possible. >>>>>>> >>>>>>> However, it's possible that I'm hoping for too much there. I'd be >>>>>>> interested to hear your thoughts on it. If I can't pull it off, I'll >>>>>>> move to an approach outside ath10k. >>>>>> >>>>>> >>>>>> >>>>>> The driver just sends pkts to the firmware, it is the firmware that >>>>>> knows when a pkt is to be transmitted, so I think you would have to have >>>>>> some >>>>>> hooks low in the firmware tx logic to do what you want. And you would >>>>>> need some >>>>>> hardware output from the NIC. >>>>>> >>>>>> I am guessing it would require quite a bit of changes to the firmware, >>>>>> possibly very tricky/hacky ones, and hardware output on your NIC. >>>>>> >>>>>> Thanks, >>>>>> Ben >>>>>> >>>>>> -- >>>>>> Ben Greear <greearb@candelatech.com> >>>>>> Candela Technologies Inc http://www.candelatech.com >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> ath10k mailing list >>>>>> ath10k@lists.infradead.org >>>>>> http://lists.infradead.org/mailman/listinfo/ath10k >>>> >>>> >>> >>> >>> -- >>> Ben Greear <greearb@candelatech.com> >>> Candela Technologies Inc http://www.candelatech.com >>> >> >> _______________________________________________ >> ath10k mailing list >> ath10k@lists.infradead.org >> http://lists.infradead.org/mailman/listinfo/ath10k _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-07 7:40 ` Adrian Chadd @ 2016-06-07 7:53 ` Michal Kazior 2016-06-07 16:30 ` Adrian Chadd 0 siblings, 1 reply; 14+ messages in thread From: Michal Kazior @ 2016-06-07 7:53 UTC (permalink / raw) To: Adrian Chadd Cc: Janusz Dziedzic, Zach Sherin, Ben Greear, ath10k@lists.infradead.org On 7 June 2016 at 09:40, Adrian Chadd <adrian.chadd@gmail.com> wrote: > On 6 June 2016 at 23:24, Janusz Dziedzic <janusz.dziedzic@tieto.com> wrote: >> On 6 June 2016 at 21:22, Zach Sherin <zach@netblazr.com> wrote: >>> That's what I thought. Thanks for confirming, and thanks again for >>> your time and help! >>> >> BTW, check google: ath10k smart antenna >> Seems 10.2 support this. > > > ooo cool. wonder how much of the useful bits it implements! Keep in mind smart antenna requires HW support (you can check this via wmi_services in debugfs on ath10k - there's SW and HW bits are advertised there). Not all qca988x chips support it - only some of the revisions. I don't know if ones found in Archer C7 support it (maybe some do?). There's some code on codeaurora you can use as a reference: https://us.codeaurora.org/cgit/quic/qsdk/oss/system/feeds/wlan-open/tree/mac80211/patches/a00-0015-ath10k-smart-antenna-API-support.patch?h=coconut https://us.codeaurora.org/cgit/quic/qsdk/oss/system/feeds/wlan-open/tree/mac80211/patches/a00-0016-ath10k-smart-antenna-debugfs.patch?h=coconut https://us.codeaurora.org/cgit/quic/qsdk/oss/system/feeds/wlan-open/tree/mac80211/patches/a00-0021-ath10k-Smart-antenna-Algorithm.patch?h=coconut Michał _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-07 7:53 ` Michal Kazior @ 2016-06-07 16:30 ` Adrian Chadd 2016-06-08 13:53 ` Michal Kazior 0 siblings, 1 reply; 14+ messages in thread From: Adrian Chadd @ 2016-06-07 16:30 UTC (permalink / raw) To: Michal Kazior Cc: Janusz Dziedzic, Zach Sherin, Ben Greear, ath10k@lists.infradead.org Do we know which hardware platforms use it? (Ie, which already have some antennas with the right switching hardware?) -adrian _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Any tips on where per-packet antenna selection could be pushed? 2016-06-07 16:30 ` Adrian Chadd @ 2016-06-08 13:53 ` Michal Kazior 0 siblings, 0 replies; 14+ messages in thread From: Michal Kazior @ 2016-06-08 13:53 UTC (permalink / raw) To: Adrian Chadd Cc: Janusz Dziedzic, Zach Sherin, Ben Greear, ath10k@lists.infradead.org On 7 June 2016 at 18:30, Adrian Chadd <adrian.chadd@gmail.com> wrote: > Do we know which hardware platforms use it? (Ie, which already have > some antennas with the right switching hardware?) Unfortunately I do not. Michał _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2016-06-08 13:54 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-06-06 17:12 Any tips on where per-packet antenna selection could be pushed? Zach Sherin
2016-06-06 17:21 ` Ben Greear
2016-06-06 17:24 ` Zach Sherin
2016-06-06 17:28 ` Ben Greear
2016-06-06 17:59 ` Zach Sherin
2016-06-06 18:02 ` Ben Greear
[not found] ` <CAJ-VmomKzRAkJNQr2Sg=j57uPfptPiRs1Q026dPeuQv0jMx-Og@mail.gmail.com>
2016-06-06 18:48 ` Zach Sherin
2016-06-06 18:57 ` Ben Greear
2016-06-06 19:22 ` Zach Sherin
2016-06-07 6:24 ` Janusz Dziedzic
2016-06-07 7:40 ` Adrian Chadd
2016-06-07 7:53 ` Michal Kazior
2016-06-07 16:30 ` Adrian Chadd
2016-06-08 13:53 ` Michal Kazior
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.