Jump to content

Attansic L1 Driver Project


DaemonES
 Share

597 posts in this topic

Recommended Posts

OK, I started looking at the source code, and I'm getting confused right here:

#define ATL1_GET_DESC(R, i, type) (&(((type *)(®->desc))))

#define ATL1_RFD_DESC(R, i) ATL1_GET_DESC(R, i, struct rx_free_desc)

#define ATL1_TPD_DESC(R, i) ATL1_GET_DESC(R, i, struct tx_packet_desc)

#define ATL1_RRD_DESC(R, i) ATL1_GET_DESC(R, i, struct rx_return_desc)

 

Can someone explain me what (&(((type *)(®->desc)))) produces?

 

thnx

Link to comment
Share on other sites

the driver seems to work correctly except the last part.. the packet handling.

When i make the link go up there are constantly packages coming in, what is correct.

But all the packets passing through the RRD seem to be empty resulting in a bad packet.

 

This is the log i got with a little bit more debugging added:

 

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] AttansicL1Ethernet::atl1RxInterrupt

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (num_buf): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (packetsize): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (checksum): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (valid): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (buf_indx): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD problem, packet is not valid

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] AttansicL1Ethernet::atl1TxInterrupt

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] sw_tpd_next_to_clean 0, cmb_tpd_next_to_clean 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] Error: rx exception: status = 0x6d300021

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] AttansicL1Ethernet::atl1RxInterrupt

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (num_buf): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (packetsize): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (checksum): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (valid): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD Packeterror_debug (buf_indx): 0

Mar 4 09:49:51 jorgens-apple-development-platform kernel[0]: [AttansicL1Ethernet] RRD problem, packet is not valid

 

If DaemonES is still out here, could you enlighten me a bit on atl1RxInterrupt.

Thanks

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...

Yea I am also looking forward to getting this driver. Also hackrix its ubuntu not urbunto - sorry

Link to comment
Share on other sites

I think my Attansic onboard (P5K) was recognized when I installed the UPHUCK Iatkos v.1 DVD, couldn't use this release for some other reasons and never managed to get this working again.

 

Can anyone confirm, Attansic lan works on Iatkos??? :(

 

regards DrDeelay.

 

...added a Realtek-Card to make Lan working.

Link to comment
Share on other sites

I think my Attansic onboard (P5K) was recognized when I installed the UPHUCK Iatkos v.1 DVD, couldn't use this release for some other reasons and never managed to get this working again.

 

Can anyone confirm, Attansic lan works on Iatkos??? :rolleyes:

 

regards DrDeelay.

 

...added a Realtek-Card to make Lan working.

 

 

Thanks Kiwi89 for correction, I notice this as well but i can't find the file on the dvd of iaktos v1.0 infact it even showed my intel 3945 as a airport device.! After installing iaktos v1.0 and booting up after install it went so it must be a file somewhere to enable it i shell have a look for it and if i find i'll let you know!

Link to comment
Share on other sites

Yea DaemonES Ill test as well, Im buying a wireless card when I get time to go out, but it would be handy to have drivers for my wired card.

Link to comment
Share on other sites

I was looking at the source but then my laptop broke ;)

So waiting for my laptop to come back from store, As soon as that happens i'll let you all know.

 

But I got stuck with the source, When receiving a packet the rx_interupt somewhere gave an error.

Where the rrd_ring was created in this function it stayed 0 and can't find out why.

As result the rrd_ring->valid check fails and the packet is not correct.

If anybody knows, please help me out here.

 

I looked at linux source... they do it the same way, only different declarations on some variables.

 

I'll try looking at the Iatkos dvd.

Link to comment
Share on other sites

Well Attansic L1 DMA completely not understandable for me. This stupid hacks with RRD descriptors and so on. The right way is complete port from other OS. But sometimes it doesn't work, like in this case. DMA part of Linux atl1 is completely the same as in vendor driver written bu Attansic. Code is very poor. Maybe someday they will release specification, but until that...

 

I know, that one guy start merging atl1 and atl2 in atlx driver, that will have one codebase. Maybe in this case code will be more clear for me.

Link to comment
Share on other sites

 Share

×
×
  • Create New...