Linux MIPS Architecture development
 help / color / mirror / Atom feed
From: Gerald Champagne <gerald.champagne@esstech.com>
To: linux-mips@oss.sgi.com
Subject: pci config cycles on VRC-5477
Date: Mon, 11 Mar 2002 15:51:04 -0600	[thread overview]
Message-ID: <3C8D26C8.2060903@esstech.com> (raw)


I'm studying the VRC-5477 code and I'm trying to understand how pci config
cycles can work reliably with the current code.  It looks like the pci
config code must execute with interrupts disabled, but I can't find code
that disables interrupts.  Can someone offer a few pointers?  Here's why
I ask...

All pci io, memory, and config accesses on the 5477 are performed through
two windows in the cpu address space.  Normally these two windows are configured
to perform pci memory and io accesses, and any driver can access pci io and
memory at any time.  In order to perform a pci config access, one of the two
windows must be remapped to perform pci config cycles.  The code in
read_config_dword() looks something like this:

- Call ddb_access_config_base() to reconfigure the window into pci memory space
   to access pci config space instead.

- Read from pci config space by reading from an offset into the window.

- Call ddb_close_config_base to restore the registers to the original values.

It looks like anything can interrupt this an try to perform a pci memory
access while the window is programmed to perfom config cycles.

Did I miss something, or is this a bug?

Thanks.

Gerald

             reply	other threads:[~2002-03-11 22:45 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-11 21:51 Gerald Champagne [this message]
2002-03-11 22:24 ` pci config cycles on VRC-5477 Jun Sun
2002-03-11 22:45   ` Gerald Champagne
2002-03-12  9:17   ` Geert Uytterhoeven
2002-03-12 17:26     ` Gerald Champagne

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=3C8D26C8.2060903@esstech.com \
    --to=gerald.champagne@esstech.com \
    --cc=linux-mips@oss.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox