All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <greg@kroah.com>
To: Christoph Raisch <RAISCH@de.ibm.com>
Cc: akpm@linux-foundation.org, Jan-Bernd Themann <THEMANN@de.ibm.com>,
	linux-kernel@vger.kernel.org, Nathan Lynch <ntl@pobox.com>,
	ossthema@linux.vnet.ibm.com, sam@ravnborg.org,
	Sudhir Kumar <skumar@linux.vnet.ibm.com>,
	Joachim Fenkes <FENKES@de.ibm.com>
Subject: Re: [2.6.24-rc6-mm1]Build failure in drivers/net/ehea/ehea_main.c
Date: Thu, 7 Feb 2008 14:17:12 -0800	[thread overview]
Message-ID: <20080207221712.GC19310@kroah.com> (raw)
In-Reply-To: <OFB2A9433F.35E00CA4-ONC12573DF.0049FB58-C12573DF.005988BA@de.ibm.com>

On Tue, Jan 29, 2008 at 03:20:20PM +0100, Christoph Raisch wrote:
> Greg KH <greg@kroah.com> wrote on 29.01.2008 14:23:09:
> 
> > On Tue, Jan 29, 2008 at 11:12:40AM +0100, Jan-Bernd Themann wrote:
> ...
> > > The sym-link is not gereated automatically as the device for portX is
> added
> > > to the eHEA device (as subnode) where the eHEA device is not a bus.
> >
> > Then please fix that, no other driver has this kind of problem, right?
> > Are you just passing the wrong "device" to the networking subsystem?
> >
> > > If this sym-link is of interest (which I guess is the case as most
> devices
> > > have it) we have to create it somehow.
> >
> > Why would you have to do this by hand?  What makes this driver so unique
> > in the kernel that it would have to do this?  We have lots of other
> > multi-port ethernet drivers today without this issue, right?
> >
> > confused,
> >
> > greg k-h
> 
> well, the major difference is hea is not PCI.

What is it?  It has to live on some kind of bus, right?

> All PCI cards we checked have a 1:1 relationship between PCI function (PCI
> config space) and a single ethernet port.
> Even if the same Ethernet chip has two ports, it shows up as two separate
> adapters from the PCI perspective (two PCI entries in /sys/bus/pci/devices
> 
> host:/ # ls -l /sys/bus/pci/devices/0000\:c8\:01.0/
> total 0
> lrwxrwxrwx 1 root root      0 2008-01-28 14:59 bus -> ../../../../bus/pci
> -r--r--r-- 1 root root   4096 2008-01-28 14:59 class
> -rw-r--r-- 1 root root    256 2008-01-28 14:59 config
> -r--r--r-- 1 root root   4096 2008-01-28 14:59 device
> -r--r--r-- 1 root root   4096 2008-01-29 14:26 devspec
> lrwxrwxrwx 1 root root      0 2008-01-28 14:59 driver ->
> ../../../../bus/pci/drivers/e1000
> -r--r--r-- 1 root root   4096 2008-01-28 14:59 irq
> -r--r--r-- 1 root root   4096 2008-01-29 14:26 local_cpus
> -r--r--r-- 1 root root   4096 2008-01-28 14:59 modalias
> lrwxrwxrwx 1 root root      0 2008-01-29 14:26 net:eth1 ->
> ../../../../class/net/eth1
> -r--r--r-- 1 root root   4096 2008-01-28 14:59 resource
> ....
> host:/ # ls -l /sys/bus/pci/devices/0000\:c8\:01.1/
> total 0
> lrwxrwxrwx 1 root root      0 2008-01-28 14:59 bus -> ../../../../bus/pci
> -r--r--r-- 1 root root   4096 2008-01-28 14:59 class
> -rw-r--r-- 1 root root    256 2008-01-28 14:59 config
> -r--r--r-- 1 root root   4096 2008-01-28 14:59 device
> -r--r--r-- 1 root root   4096 2008-01-29 14:29 devspec
> lrwxrwxrwx 1 root root      0 2008-01-28 14:59 driver ->
> ../../../../bus/pci/drivers/e1000
> -r--r--r-- 1 root root   4096 2008-01-28 14:59 irq
> -r--r--r-- 1 root root   4096 2008-01-29 14:29 local_cpus
> -r--r--r-- 1 root root   4096 2008-01-28 14:59 modalias
> lrwxrwxrwx 1 root root      0 2008-01-29 14:29 net:eth2 ->
> ../../../../class/net/eth2
> ...
> 
> These pci functions corresponds to a
> /sys/bus/ibmebus/devices/789D.001.XXXXXX-P1/port0
> and
> /sys/bus/ibmebus/devices/789D.001.XXXXXX-P1/port1
> 
> The busdriver currently does not find out, how many ports are in a
> /sys/bus/ibmebus/devices/789D.001.XXXXXX-P1.
> This is up to the hardware specific driver responsible for ehea or ehca.
> Think of a PCI card where the PCI busdriver
> can not determine how many ports are implemented on the card.
> 
> How should this be mapped to /sys ?
> 
> Should we try to "flatten" the ports to something like
> /sys/bus/ibmebus/devices/789D.001.XXXXXX-P1
> /sys/bus/ibmebus/devices/789D.001.XXXXXX-P1_port0
> /sys/bus/ibmebus/devices/789D.001.XXXXXX-P1_port1
> ...which means physical hierarchy information would look a bit strange,
> but could be the simpler one.

No.  Why have a separate "port" device for every ethernet port?  What
keeps you from just creating the different network devices for your
device, and pointing the parent to the same 789D.001.XXXXXX-P1 device?

Lots of PCI devices hang "class devices" off of them all the time, why
would this be any different from that?

I think you all are trying to make this more complex than it really is
:)

thanks,

greg k-h

  parent reply	other threads:[~2008-02-07 22:34 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-08 16:33 [2.6.24-rc6-mm1]Build failure in drivers/net/ehea/ehea_main.c Sudhir Kumar
2008-01-10 17:34 ` Greg KH
2008-01-18  9:16   ` Jan-Bernd Themann
2008-01-25 19:10     ` Nathan Lynch
2008-01-28 18:21       ` Greg KH
2008-01-28 18:24       ` Greg KH
2008-01-28 19:22         ` Nathan Lynch
2008-01-28 19:54           ` Greg KH
2008-01-29 10:12           ` Jan-Bernd Themann
2008-01-29 13:23             ` Greg KH
2008-01-29 14:20               ` Christoph Raisch
2008-02-01 14:37                 ` Jan-Bernd Themann
2008-02-07 22:17                 ` Greg KH [this message]
2008-02-12 15:28                   ` Christoph Raisch
2008-01-28 18:25     ` Greg KH

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=20080207221712.GC19310@kroah.com \
    --to=greg@kroah.com \
    --cc=FENKES@de.ibm.com \
    --cc=RAISCH@de.ibm.com \
    --cc=THEMANN@de.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ntl@pobox.com \
    --cc=ossthema@linux.vnet.ibm.com \
    --cc=sam@ravnborg.org \
    --cc=skumar@linux.vnet.ibm.com \
    /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.