Commit 66906590 authored by Ian Abbott's avatar Ian Abbott Committed by Greg Kroah-Hartman

staging: comedi: plx9080.h: correct LRNG_IO_MASK and LMAP_IO_MASK

For the PLX local address space range registers, LAS0RR and LAS1RR, bit
0 indicates whether the local address space will be mapped to memory
space or I/O space.  If mapped to I/O space, bit 1 must be set to 0, and
bits 31 to 2 form the address decoding mask, which should be -2^N mod
2^32 for a range of length 2^N.

The `LRNG_IO_MASK` macro is supposed to specify the address decoding
bits for I/O space.  It currently has the value `0xfffffffa`, but should
be `0xfffffffc`, or possibly `0xfffffffe` (it doesn't really matter,
since bit 1 is required to be set to 0).  Change it to `0xfffffffc`.

Similarly, for the PLX local address space local base address (remap)
registers, LAS0BA and LAS1BA, bits 31 to 2, masked with the
corresponding "range" register form the local base address for the local
address space.  The `LMAP_IO_MASK` macro is supposed to mask the valid
bits for I/O space.  Change its value from `0xfffffffa` to `0xfffffffc`
to match `LRNG_IO_MASK`.
Signed-off-by: default avatarIan Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent cda23150
...@@ -60,7 +60,7 @@ struct plx_dma_desc { ...@@ -60,7 +60,7 @@ struct plx_dma_desc {
/* bits that specify range for memory io */ /* bits that specify range for memory io */
#define LRNG_MEM_MASK 0xfffffff0 #define LRNG_MEM_MASK 0xfffffff0
/* bits that specify range for normal io */ /* bits that specify range for normal io */
#define LRNG_IO_MASK 0xfffffffa #define LRNG_IO_MASK 0xfffffffc
/* L, Local Addr Space 0 Remap Register */ /* L, Local Addr Space 0 Remap Register */
#define PLX_LAS0MAP_REG 0x0004 #define PLX_LAS0MAP_REG 0x0004
/* L, Local Addr Space 1 Remap Register */ /* L, Local Addr Space 1 Remap Register */
...@@ -69,7 +69,7 @@ struct plx_dma_desc { ...@@ -69,7 +69,7 @@ struct plx_dma_desc {
/* bits that specify decode for memory io */ /* bits that specify decode for memory io */
#define LMAP_MEM_MASK 0xfffffff0 #define LMAP_MEM_MASK 0xfffffff0
/* bits that specify decode bits for normal io */ /* bits that specify decode bits for normal io */
#define LMAP_IO_MASK 0xfffffffa #define LMAP_IO_MASK 0xfffffffc
/* /*
* Mode/Arbitration Register. * Mode/Arbitration Register.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment