Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: How to change MAC bytes number more important
Happy news! I partially solved my problem: first 3 element (data[1],
data[2], data[6], corresponding to 3 MAC LSBytes) can be
set to 0 MASK, while other 3 can only be masked with an 0xF0 mask.
In my example:
ip[0] = 0xd7;
dvbcfg[0].filter.data[1] = (ip[3] << 8) | 0x0000 ;
dvbcfg[0].filter.data[2] = (ip[2] << 8) | 0x0000 ;
dvbcfg[0].filter.data[6] = (ip[1] << 8) | 0x0000 ;
dvbcfg[0].filter.data[7] = (ip[0] << 8) | 0x00ff ;
dvbcfg[0].filter.data[8] = (0x02 << 8) | 0x00f0 ;
dvbcfg[0].filter.data[9] = (0x00 << 8) | 0x00ff ;
Here first 3 are ok, while data[7] is set by my value, ip[0]. In
addition 8 can be masked by a 0xF0 value, so we could have such as:
00 0X D7 XX XX XX filter address.
For my application is ok.
Now I have another question I'll ask with a new subject.
Thank you to all helping me.
Arcomano Roberto
David Toth wrote:
Hi!
On Fri, 4 Jan 1980, Arcomano Roberto wrote:
> So I set all 6 words element (which ones used in dvbd.c source file
for MAC
> address) to zero, so I expect from it that ALL PACKETS have to reach
O.S.
> Under Windows environment I did the same (setting 0 in "Relevant MAC
bytes"
> in dvb utility) with the result that ALL PACKETS were sent to my OS,
so
> browser could take they it needs.
> Under Linux, modifing dvbd.c as described before, I cannot view
anything in
> my dvb0 interface: I cannot understand why.
I've also played around to get all packets received by the card with
a
given PID but that was a long time ago (as fas as I can remember the
driver version was at 0.6; and lately I had no time to follow
changes in the driver :((( so there could be an easier way than the
one
I describe here).
What I've learned is the "all 0s mask" filters won't work (at least
didn't work for me)... this is a driver issue (or may be a hardware
limit) so even if you successfully patch the dvbd it is possible that
it
won't work this way. I've managed to receive all packets (with a given
PID) by setting up two bit filters: one with data: $80, mask: $80 ,
the
other one with data: $00, mask: $80 (both filters mask by the first
bit of
the packet: one of them filters out packets with first bit 0, the
other
one is with first bit 1.. so you can receive all packets with two
filters
:))
I don't know how to implement it in dvbd.c , I've never saw that
stuff,
cause I only use my card to watch TV (and no network reasons).
Bye,
David
---
Info:
To unsubscribe send a mail to listar@linuxtv.org with unsubscribe as
subject.
--
Arcomano Roberto
--
Arcomano Roberto
---
Info:
To unsubscribe send a mail to listar@linuxtv.org with unsubscribe as subject.
Home |
Main Index |
Thread Index