All of lore.kernel.org
 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 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.