public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Ben Warren <biggerbadderben@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] U-Boot on PXA320
Date: Thu, 24 Dec 2009 10:10:33 -0800	[thread overview]
Message-ID: <4B33AE99.9000800@gmail.com> (raw)
In-Reply-To: <4031261653961@webmail115.yandex.ru>

Hello Dennis,

Sending the e-mail once is enough.

Dennis Semakin wrote:
> Hello everybody.
> I have a question about u-boot net subsystem on Toradex Colibri PXA320.
> Let's see on lib_arm/board.c file
> Here is code where network subsystem initializes (At least I think so)
> ..
> #if defined(CONFIG_CMD_NET)
> #if defined(CONFIG_NET_MULTI)
>         puts ("Net:   ");
> #endif
>         eth_initialize(gd->bd); 
> #if defined(CONFIG_RESET_PHY_R)
>         debug ("Reset Ethernet PHY\n");
>         reset_phy();
> #endif
> #endif
>         /* main_loop() can return to retry autoboot, if so just run it again. */
>         for (;;) {
>                 main_loop ();
>         }
> ..
> I'm interested of eth_initialize(gd->bd) function.
> If I compile without CONFIG_NET_MULTI option the implementation of this function is
> (in net/eth.c file)
> ..
> #elif defined(CONFIG_CMD_NET) && !defined(CONFIG_NET_MULTI)
>
> #warning Ethernet driver is deprecated.  Please update to use CONFIG_NET_MULTI
>
> extern int at91rm9200_miiphy_initialize(bd_t *bis);
> extern int mcf52x2_miiphy_initialize(bd_t *bis);
> extern int ns7520_miiphy_initialize(bd_t *bis);
>
> int eth_initialize(bd_t *bis)
> {
> #if defined(CONFIG_MII) || defined(CONFIG_CMD_MII)
>         miiphy_init();
> #endif
>
> #if defined(CONFIG_AT91RM9200)
>         at91rm9200_miiphy_initialize(bis);
> #endif
> #if defined(CONFIG_MCF52x2)
>         mcf52x2_miiphy_initialize(bis);
> #endif
> #if defined(CONFIG_DRIVER_NS7520_ETHERNET)
>         ns7520_miiphy_initialize(bis);
> #endif
>         return 0;
> }
> #endif
> Then as result, my network subsystem is hang when I run someone net command(e.g. ping)
> And if I compile with CONFIG_NET_MULTI option the implementation of this function is
> ..
> int eth_initialize(bd_t *bis)
> {
>         unsigned char env_enetaddr[6];
>         int eth_number = 0;
>
>         eth_devices = NULL;
>         eth_current = NULL;
>         show_boot_progress (64);
> #if defined(CONFIG_MII) || defined(CONFIG_CMD_MII)
>         miiphy_init();
> #endif
>         /* Try board-specific initialization first.  If it fails or isn't
>          * present, try the cpu-specific initialization */
>         if (board_eth_init(bis) < 0)
>                 cpu_eth_init(bis);
>
> #if defined(CONFIG_DB64360) || defined(CONFIG_CPCI750)
>         mv6436x_eth_initialize(bis);
> #endif
> #if defined(CONFIG_DB64460) || defined(CONFIG_P3Mx)
>         mv6446x_eth_initialize(bis);
> #endif
>         if (!eth_devices) {
>                 puts ("No ethernet found.\n");
>                 show_boot_progress (-64);
>         } else {
> ..
> And then I get message "No ethernet found..."
>
> Questions: where is net subsystem initialization code for Colibri PXA320 board in u-boot?
>   
Maybe I'm not looking in the right place, but I can't find this board in 
the source tree.  The closest I can find is a machine type definition 
for MACH_TYPE_COLIBRI, but no boards have CONFIG_MACH_COLIBRI set.  
Without the source code, there's only so much help we can give you.
> Where and how the structure eth_device is fill for that board? Or it don't need?
>   
I have no idea what Ethernet controller is on this board, but judging 
from your debug trace, whatever it is, it uses the old API (non 
CONFIG_NET_MULTI), and either the driver or your board is broken or not 
configured properly.

A bit of background:  there are two network device drivers: the old one, 
which only supports one interface per board; and the new one 
(CONFIG_NET_MULTI), which supports one or more interfaces.  Over time, 
we're converting all drivers to use the new API, but this takes effort 
and obviously hardware that is out-of-tree won't be updated.  As the 
#warning tells you, the old API is going away soon.
> Thanks
> Best regard
> Dennis Semakin
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>   

regards,
Ben

  reply	other threads:[~2009-12-24 18:10 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-24  8:50 [U-Boot] [PATCH] omap3: fix compile warning Sanjeev Premi
2009-12-24 11:26 ` [U-Boot] U-Boot on PXA320 Dennis Semakin
2009-12-24 18:10   ` Ben Warren [this message]
2009-12-27 14:32 ` [U-Boot] [PATCH] omap3: fix compile warning Remy Bohmer
  -- strict thread matches above, loose matches on Subject: below --
2009-12-24 11:53 [U-Boot] U-Boot on PXA320 Dennis Semakin

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=4B33AE99.9000800@gmail.com \
    --to=biggerbadderben@gmail.com \
    --cc=u-boot@lists.denx.de \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox