All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@infradead.org>
To: Patrick Gefre <pfg@sgi.com>
Cc: Christoph Hellwig <hch@infradead.org>,
	linux-ia64@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: Latest Altix I/O code reorganization code
Date: Tue, 07 Sep 2004 22:16:45 +0000	[thread overview]
Message-ID: <20040907231645.A20934@infradead.org> (raw)
In-Reply-To: <413E31D1.9090301@sgi.com>; from pfg@sgi.com on Tue, Sep 07, 2004 at 05:10:25PM -0500

On Tue, Sep 07, 2004 at 05:10:25PM -0500, Patrick Gefre wrote:
>  > of interface beteen upper pci dma code and pcibr code ignored)
>  >
> 
> Guess I'm confused about this then. Are you suggesting putting the pcibr_dma files
> into the pci_dma.c code and not having a pcibr_dma interface ?? The api is there because
> pcibr is an ASIC and is ASIC specific.

No, absolutely not.  I suggested you remove the remaining ASIC-specific
bits from pci_dma.c, namely the decision when to use direct translation
and where to use ates, and the flags and only have a single mapping
routine calling into pcibr code with a prototype ala:

dma_addr_t picbr_dma_map(struct pci_dev *dev, unsigned long phys, size_t size);

>  > > pci_extension.c:
>  > >
>  > >  - dito.  Why does this single function need a separate file?
>  >
>  > Not addressed.  In general your file organization is mess still.
>  >
> 
> How is this:
> arch/ia64/sn/pci/
>                   pci_dma.c
>                   pci_extension.c
>                   pcibr/
>                       pcibr_ate.c
>                       pcibr_dma.c
>                       pcibr_provider.c
>                       pcibr_reg.c
> 
> arch/ia64/sn/kernel/
>                   bte_error.c
>                   io_init.c
>                   iomv.c
> 
> Since pcibr is an ASIC it makes sense for it to have its own directory. There are
> other ASIC interfaces that will be put in in the not too distant future and they
> will go in separate directories also.

Isn't the pcibr_ prefix enough?  This isn't something that would hold up
merging, but I think the additional level is a little silly.

> I will inline free_ate_resource(), alloc_ate_resource() and ate_write(). I want to
> keep the ate code in a separate file - since it is a group of functions with a similar
> theme and is non-trivial.

Okay..

>  > >    of struct tiocp and pic_s (and kill the _s postifx) in syruct pcibus_info.
>  > >    the volatiles looks bogus, if you need it you're missing memorry barries.
>  >
>  > the type pointer isn't done.  Any specific reason?
>  >
> 
> I'm confused on this too. The struct defs are for different MMR sets - so we do need
> to use different types of pointers.

What about adding an union of both _typed_ pointers so you don't need
to cast everytime?


Anyway, it looks like we're making nice progress, thanks for the work.

WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@infradead.org>
To: Patrick Gefre <pfg@sgi.com>
Cc: Christoph Hellwig <hch@infradead.org>,
	linux-ia64@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: Latest Altix I/O code reorganization code
Date: Tue, 7 Sep 2004 23:16:45 +0100	[thread overview]
Message-ID: <20040907231645.A20934@infradead.org> (raw)
In-Reply-To: <413E31D1.9090301@sgi.com>; from pfg@sgi.com on Tue, Sep 07, 2004 at 05:10:25PM -0500

On Tue, Sep 07, 2004 at 05:10:25PM -0500, Patrick Gefre wrote:
>  > of interface beteen upper pci dma code and pcibr code ignored)
>  >
> 
> Guess I'm confused about this then. Are you suggesting putting the pcibr_dma files
> into the pci_dma.c code and not having a pcibr_dma interface ?? The api is there because
> pcibr is an ASIC and is ASIC specific.

No, absolutely not.  I suggested you remove the remaining ASIC-specific
bits from pci_dma.c, namely the decision when to use direct translation
and where to use ates, and the flags and only have a single mapping
routine calling into pcibr code with a prototype ala:

dma_addr_t picbr_dma_map(struct pci_dev *dev, unsigned long phys, size_t size);

>  > > pci_extension.c:
>  > >
>  > >  - dito.  Why does this single function need a separate file?
>  >
>  > Not addressed.  In general your file organization is mess still.
>  >
> 
> How is this:
> arch/ia64/sn/pci/
>                   pci_dma.c
>                   pci_extension.c
>                   pcibr/
>                       pcibr_ate.c
>                       pcibr_dma.c
>                       pcibr_provider.c
>                       pcibr_reg.c
> 
> arch/ia64/sn/kernel/
>                   bte_error.c
>                   io_init.c
>                   iomv.c
> 
> Since pcibr is an ASIC it makes sense for it to have its own directory. There are
> other ASIC interfaces that will be put in in the not too distant future and they
> will go in separate directories also.

Isn't the pcibr_ prefix enough?  This isn't something that would hold up
merging, but I think the additional level is a little silly.

> I will inline free_ate_resource(), alloc_ate_resource() and ate_write(). I want to
> keep the ate code in a separate file - since it is a group of functions with a similar
> theme and is non-trivial.

Okay..

>  > >    of struct tiocp and pic_s (and kill the _s postifx) in syruct pcibus_info.
>  > >    the volatiles looks bogus, if you need it you're missing memorry barries.
>  >
>  > the type pointer isn't done.  Any specific reason?
>  >
> 
> I'm confused on this too. The struct defs are for different MMR sets - so we do need
> to use different types of pointers.

What about adding an union of both _typed_ pointers so you don't need
to cast everytime?


Anyway, it looks like we're making nice progress, thanks for the work.

  reply	other threads:[~2004-09-07 22:16 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-08-04 20:14 Altix I/O code reorganization Pat Gefre
2004-08-04 20:14 ` Pat Gefre
2004-08-05  0:31 ` Grant Grundler
2004-08-05  0:31   ` Grant Grundler
2004-08-05 18:16 ` Greg KH
2004-08-05 18:16   ` Greg KH
2004-08-05 20:51 ` Pat Gefre
2004-08-05 20:51   ` Pat Gefre
2004-08-05 21:08   ` Greg KH
2004-08-05 21:08     ` Greg KH
2004-08-05 21:32     ` Jesse Barnes
2004-08-05 21:32       ` Jesse Barnes
2004-08-05 21:36       ` Greg KH
2004-08-05 21:36         ` Greg KH
2004-08-06 13:18 ` Christoph Hellwig
2004-08-06 13:18   ` Christoph Hellwig
2004-08-06 16:19   ` Jesse Barnes
2004-08-06 16:19     ` Jesse Barnes
2004-08-07 10:58     ` Christoph Hellwig
2004-08-07 10:58       ` Christoph Hellwig
2004-08-11 23:24   ` Patrick Gefre
2004-08-11 23:24     ` Patrick Gefre
2004-08-12  9:15     ` Christoph Hellwig
2004-08-12  9:15       ` Christoph Hellwig
2004-08-12 14:47       ` Jesse Barnes
2004-08-12 14:47         ` Jesse Barnes
2004-08-12 15:21         ` Christoph Hellwig
2004-08-12 15:21           ` Christoph Hellwig
2004-08-27 15:10     ` Latest Altix I/O code reorganization code Patrick Gefre
2004-08-27 15:10       ` Patrick Gefre
2004-08-27 15:14       ` Patrick Gefre
2004-08-27 15:14         ` Patrick Gefre
2004-08-27 15:21         ` Christoph Hellwig
2004-08-27 15:21           ` Christoph Hellwig
2004-08-27 15:35           ` Patrick Gefre
2004-08-27 15:35             ` Patrick Gefre
2004-08-27 15:44             ` Christoph Hellwig
2004-08-27 15:44               ` Christoph Hellwig
2004-09-03 23:12               ` Latest Altix I/O code rewrite Patrick Gefre
2004-08-27 15:23       ` Latest Altix I/O code reorganization code Pat Gefre
2004-08-27 15:23         ` Pat Gefre
2004-08-27 15:36       ` Christoph Hellwig
2004-08-27 15:36         ` Christoph Hellwig
2004-08-27 15:45       ` Christoph Hellwig
2004-08-27 15:45         ` Christoph Hellwig
2004-08-27 16:32         ` Patrick Gefre
2004-08-27 16:32           ` Patrick Gefre
2004-08-27 15:54       ` Christoph Hellwig
2004-08-27 15:54         ` Christoph Hellwig
2004-08-27 16:06         ` Patrick Gefre
2004-08-27 16:06           ` Patrick Gefre
2004-08-27 16:21         ` Christoph Hellwig
2004-08-27 16:21           ` Christoph Hellwig
2004-09-03 23:40           ` Christoph Hellwig
2004-09-03 23:40             ` Christoph Hellwig
2004-09-07 22:10             ` Patrick Gefre
2004-09-07 22:10               ` Patrick Gefre
2004-09-07 22:16               ` Christoph Hellwig [this message]
2004-09-07 22:16                 ` Christoph Hellwig
2004-08-27 17:15       ` Christoph Hellwig
2004-08-27 17:15         ` Christoph Hellwig
2004-08-29  6:39       ` Keith Owens
2004-08-29  6:39         ` Keith Owens
2004-08-29  7:16         ` Sam Ravnborg
2004-08-29  7:16           ` Sam Ravnborg
2004-08-29  7:22       ` Keith Owens
2004-08-29  7:22         ` Keith Owens
2004-08-06 13:51 ` Altix I/O code reorganization Keith Owens
2004-08-06 13:51   ` Keith Owens
2004-08-06 13:55   ` Christoph Hellwig
2004-08-06 13:55     ` Christoph Hellwig
2004-08-06 15:47 ` Russ Anderson
2004-08-06 15:47   ` Russ Anderson

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=20040907231645.A20934@infradead.org \
    --to=hch@infradead.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pfg@sgi.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.