All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jens Gehrlein <sew_s@tqs.de>
To: netdev ML <netdev@vger.kernel.org>
Subject: SMC921x: problems with LAN9215i connected to i.MX31
Date: Fri, 30 May 2008 08:37:22 +0200	[thread overview]
Message-ID: <483FA0A2.1080707@tqs.de> (raw)

Hi,

on our board we connected a LAN9215i to the Freescale i.MX31 ARM 
processor. Bus width: 16 bits. No DMA. Kernel 2.6.22. Driver: smc911x.c 
plus patches since then. Both processor and ethernet controller in 
little endian mode.

Ethereal showed scrambled or shifted data in the Ethernet frame. I 
couldn't identify a certain scheme.

I think, this is caused by the macros SMC_PULL_DATA (-> __raw_writesl 
and SMC_PUSH_DATA (-> __raw_readsl) to read/write the FIFOs. Single word 
accesses, e.g. identifying the controller are okay.

I temporarily replaced the macros by simple copy routines in C, which 
access the chip using 32 bit pointers. The processor automatically 
converts the word in two 16 bit accesses. And voila, it works. 
Unfortunately, I had to insert udelay(1) between each word :-(

Has somebody experience/tested with this processor/ethernet controller 
combination?

Does somebody know, how the assembler routines 
__raw_readsl/__raw_writesl work, so that analysis becomes easier? I 
didn't find any documentation.

What's the state of the new smsc driver Steve Glendinning announced some 
days ago on this list? A first look showed that it uses these assembler 
routines, too.

Thanks and best regards,
Jens


P.S.: is line wrapping okay (Thunderbird)?

                 reply	other threads:[~2008-05-30  7:02 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=483FA0A2.1080707@tqs.de \
    --to=sew_s@tqs.de \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.