Re: PCI #LOCK assertion

From: Gérard Roudier (groudier@free.fr)
Date: Thu Jan 24 2002 - 18:43:20 EST


On Fri, 25 Jan 2002, chus Medina wrote:

> Hola,
>
> I need to create module to perform atomic transactions through the PCI bus
> between the processor and an IDE hard disk. The PCI bus specifications 2.2
> point to the #LOCK signal to perform such a transaction. Is possible to
> assert the #LOCK signal of the PCI bus using the Linux Kernel? How? I didnt
> see any pointers in include/pci.h or anywhere in the source code.
>
> I will truly appreciate any help/pointers,

This has nothing to do with the kernel.
This only depends on your CPU and on the PCI-HOST bridge of your system.

For example, some (all?) Intel PCI-HOST bridges will translate a LOCK
prefixed memory READ to PCI into a locked PCI transaction. It is also
possible to perform a locked READ/MODIFY transaction to PCI using the
corresponding LOCK prefixed memory instruction.

I suggest you to download PCI-HOST bridge documents from Intel site and
to look into them, if obviously you are interestested in such hardware.

Just, PCI-to-PCI bridges do not carry the PCI LOCK# protocol. As a result
a subsystem relying on PCI LOCK# will not work (as expected) if PCI agents
are talking through a PCI-to-PCI bridge.

  Gérard.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Jan 31 2002 - 21:00:36 EST