All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anton Blanchard <anton@samba.org>
To: mike_phillips@urscorp.com
Cc: paulus@samba.org, linux-kernel@vger.kernel.org
Subject: Re: isa_read/write not available on ppc - solution suggestions ??
Date: Thu, 3 May 2001 04:08:48 -0700	[thread overview]
Message-ID: <20010503040848.Q20471@va.samba.org> (raw)
In-Reply-To: <OFA57C1906.E60183EB-ON85256A40.00425F2E@urscorp.com>
In-Reply-To: <OFA57C1906.E60183EB-ON85256A40.00425F2E@urscorp.com>; from mike_phillips@urscorp.com on Wed, May 02, 2001 at 09:12:41AM -0400

 
> This is where the multiple support issue comes in. In ibmtr_cs.c we do 
> ioremap the addresses so pcmcia all works nicely. What we don't do at 
> present is an ioremap in ibmtr.c for the non-pcmcia adapters (isa & mca). 
> So, I suppose the real fix would be to implement the ioremap in ibmtr.c so 
> that regular read/writes can be used everywhere in the driver. (This is 
> half the battle with changes to the driver, it supports so many 
> combinations that one change for one type of adapter can kill support for 
> another adapter, and that's my bottom line with updates: No loss of 
> functionality we already had.)

Yes since we ioremap both regions in ibmtr_cs.c and pass the cookies into 
ibmtr.c we should be using read*/write*. With the simple fix to do this
and use the non byteswapping versions of read*/write* the token ring
pcmcia driver works fine on a titanium powerbook.

My suggestion is to throw this into ibmtr.h:

#ifdef PCMCIA
#define tr_readb(addr)		readb(addr)
#define tr_readw(addr)		__raw_readw(addr)
#define tr_readl(addr)		__raw_readl(addr)
#define tr_writeb(val, addr)	writeb(val, addr)
#define tr_writel(val, addr)	__raw_writel(val, addr)
#define tr_writew(val, addr)	__raw_writew(val, addr)
#else
#define tr_readb(addr)		isa_readb(addr)
#define tr_readw(addr)		isa_readw(addr)
#define tr_readl(addr)		isa_readl(addr)
#define tr_writeb(val, addr)	isa_writeb(val, addr)
#define tr_writel(val, addr)	isa_writel(val, addr)
#define tr_writew(val, addr)	isa_writew(val, addr)
#endif

Anton

  reply	other threads:[~2001-05-03 11:16 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-05-02 13:12 isa_read/write not available on ppc - solution suggestions ?? mike_phillips
2001-05-03 11:08 ` Anton Blanchard [this message]
  -- strict thread matches above, loose matches on Subject: below --
2001-05-01 17:41 mike_phillips
2001-05-01 15:27 mike_phillips
2001-05-01 17:22 ` Linus Torvalds
2001-05-01 19:45   ` Russell King
2001-05-01 21:19     ` Linus Torvalds
2001-05-01 21:31       ` Russell King
2001-05-01 22:46         ` Linus Torvalds
2001-05-02 15:10           ` Jonathan Lundell
2001-05-02  1:02   ` Paul Mackerras
2001-05-02 19:28     ` Benjamin Herrenschmidt
2001-05-02  7:26   ` Geert Uytterhoeven
2001-05-01 13:52 mike_phillips
2001-05-01  4:32 ` Arnaldo Carvalho de Melo
2001-05-01 14:35 ` Alan Cox
2001-05-01 14:50   ` Brian Gerst
2001-05-01 15:14     ` Alan Cox
2001-05-01 14:36 ` Brian Gerst
2001-05-01 17:33 ` Geert Uytterhoeven

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=20010503040848.Q20471@va.samba.org \
    --to=anton@samba.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mike_phillips@urscorp.com \
    --cc=paulus@samba.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.