Linux MIPS Architecture development
 help / color / mirror / Atom feed
* Au1550 system bus masters issue
@ 2005-12-05  8:18 David Sanchez
  2005-12-05  8:18 ` David Sanchez
  2005-12-05 11:36 ` Sergei Shtylylov
  0 siblings, 2 replies; 6+ messages in thread
From: David Sanchez @ 2005-12-05  8:18 UTC (permalink / raw)
  To: linux-mips

Hi,

I notice the following issue in the specification update (v31420) of the
au1550:

"System bus masters (USB host, PCI, MAC0, MAC1, DDMA) may receive stale
data.

Description
-----------
System bus masters (USB host controller, PCI controller, MAC0, MAC1,
DDMA controller), when performing
coherent reads, may incorrectly receive stale data from memory instead
of valid modified data from the Au1
data cache. If the request for data arrives within a 3-clock window
prior to the cache line castout to memory,
the cache snoop response is incorrect and stale data is retrieved from
memory instead of the correct data from
the cache. The cache line castout then completes, and memory is updated.
Cache/memory data is not corrupted, but the specific bus read in not
valid.

Affected Step
-------------
AA

Workaround
----------
Do not enable cacheable master reads if the core modifies data in cache.

Status
------
Not Fixed"

Does somebody known if the linux kernel 2.6.10 integrates this
workaround ?

Thanks

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Au1550 system bus masters issue
  2005-12-05  8:18 Au1550 system bus masters issue David Sanchez
@ 2005-12-05  8:18 ` David Sanchez
  2005-12-05 11:36 ` Sergei Shtylylov
  1 sibling, 0 replies; 6+ messages in thread
From: David Sanchez @ 2005-12-05  8:18 UTC (permalink / raw)
  To: linux-mips

Hi,

I notice the following issue in the specification update (v31420) of the
au1550:

"System bus masters (USB host, PCI, MAC0, MAC1, DDMA) may receive stale
data.

Description
-----------
System bus masters (USB host controller, PCI controller, MAC0, MAC1,
DDMA controller), when performing
coherent reads, may incorrectly receive stale data from memory instead
of valid modified data from the Au1
data cache. If the request for data arrives within a 3-clock window
prior to the cache line castout to memory,
the cache snoop response is incorrect and stale data is retrieved from
memory instead of the correct data from
the cache. The cache line castout then completes, and memory is updated.
Cache/memory data is not corrupted, but the specific bus read in not
valid.

Affected Step
-------------
AA

Workaround
----------
Do not enable cacheable master reads if the core modifies data in cache.

Status
------
Not Fixed"

Does somebody known if the linux kernel 2.6.10 integrates this
workaround ?

Thanks

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Au1550 system bus masters issue
  2005-12-05  8:18 Au1550 system bus masters issue David Sanchez
  2005-12-05  8:18 ` David Sanchez
@ 2005-12-05 11:36 ` Sergei Shtylylov
  2005-12-05 11:51   ` Sergei Shtylylov
  1 sibling, 1 reply; 6+ messages in thread
From: Sergei Shtylylov @ 2005-12-05 11:36 UTC (permalink / raw)
  To: David Sanchez, Linux MIPS Development

Hello.

David Sanchez wrote:

> I notice the following issue in the specification update (v31420) of the
> au1550:
> 
> "System bus masters (USB host, PCI, MAC0, MAC1, DDMA) may receive stale
> data.
> 
> Description
> -----------
> System bus masters (USB host controller, PCI controller, MAC0, MAC1,
> DDMA controller), when performing
> coherent reads, may incorrectly receive stale data from memory instead
> of valid modified data from the Au1
> data cache. If the request for data arrives within a 3-clock window
> prior to the cache line castout to memory,
> the cache snoop response is incorrect and stale data is retrieved from
> memory instead of the correct data from
> the cache. The cache line castout then completes, and memory is updated.
> Cache/memory data is not corrupted, but the specific bus read in not
> valid.
> 
> Affected Step
> -------------
> AA
> 
> Workaround
> ----------
> Do not enable cacheable master reads if the core modifies data in cache.
> 
> Status
> ------
> Not Fixed"
> 
> Does somebody known if the linux kernel 2.6.10 integrates this
> workaround ?

    Mainly as CONFIG_DMA_NONCOHERENT defined. USB OHCI and PCI still have
coherency enabled but as the cache hits prone to errata shouldn't happen due 
to the CONFIG_DMA_NONCOHERENT, it's probably not a problem (enabling coherency 
in Ethernet driver however makes the kernel non-bootable. USB host controller 
(and probably not only it, I'm too lazy to re-check ;-) is still prone to 
other errata on stepping AB though, see this thread:

http://www.linux-mips.org/archives/linux-mips/2005-11/msg00137.html

I'm gonna rework the patch and resubmit.

> Thanks

WBR, Sergei

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Au1550 system bus masters issue
  2005-12-05 11:36 ` Sergei Shtylylov
@ 2005-12-05 11:51   ` Sergei Shtylylov
  0 siblings, 0 replies; 6+ messages in thread
From: Sergei Shtylylov @ 2005-12-05 11:51 UTC (permalink / raw)
  To: David Sanchez, Linux MIPS Development

Hello.

Sergei Shtylylov wrote:

> coherency in Ethernet driver however makes the kernel non-bootable. USB 
> host controller (and probably not only it, I'm too lazy to re-check ;-) 
> is still prone to other errata on stepping AB though, see this thread:
> 
> http://www.linux-mips.org/archives/linux-mips/2005-11/msg00137.html
> 
> I'm gonna rework the patch and resubmit.

    Oops, I was talking of Au1500 step AB, Au1550 doesn't have CONFIG.OD bit 
errata...

WBR, Sergei

^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: Au1550 system bus masters issue
@ 2005-12-05 15:11 David Sanchez
  2005-12-05 15:11 ` David Sanchez
  0 siblings, 1 reply; 6+ messages in thread
From: David Sanchez @ 2005-12-05 15:11 UTC (permalink / raw)
  To: Sergei Shtylylov, linux-mips

Hi,

This question is for all the users of the AMD alchemy db1550:
What is the frequency you use for the triplet (CPU core / System bus / SDRAM bus)?

Since the version 2.25 of YAMON the freq is based on the rotary switch S4:
HEX Rotary Switch S4 (# = CPU_CORE / SYS_BUS / SDRAM_BUS  in MHz):

 0 = 192/ 96/ 96 , 1 = 336/168/168 , 2 = 396/198/ 99 , 3 = 396/198/198
 4 = 492/123/123 , 5 = 492/164/164 , 6 = 492/246/123

Thanks,

David SANCHEZ

-----Message d'origine-----
De : Sergei Shtylylov [mailto:sshtylyov@ru.mvista.com] 
Envoyé : lundi 5 décembre 2005 13:00
À : David Sanchez; Linux MIPS Development
Objet : Re: Au1550 system bus masters issue

Hello.

Sergei Shtylylov wrote:

> coherency in Ethernet driver however makes the kernel non-bootable. USB 
> host controller (and probably not only it, I'm too lazy to re-check ;-) 
> is still prone to other errata on stepping AB though, see this thread:
> 
> http://www.linux-mips.org/archives/linux-mips/2005-11/msg00137.html
> 
> I'm gonna rework the patch and resubmit.

    Oops, I was talking of Au1500 step AB, Au1550 doesn't have CONFIG.OD bit 
errata...

WBR, Sergei

^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: Au1550 system bus masters issue
  2005-12-05 15:11 David Sanchez
@ 2005-12-05 15:11 ` David Sanchez
  0 siblings, 0 replies; 6+ messages in thread
From: David Sanchez @ 2005-12-05 15:11 UTC (permalink / raw)
  To: Sergei Shtylylov, linux-mips

Hi,

This question is for all the users of the AMD alchemy db1550:
What is the frequency you use for the triplet (CPU core / System bus / SDRAM bus)?

Since the version 2.25 of YAMON the freq is based on the rotary switch S4:
HEX Rotary Switch S4 (# = CPU_CORE / SYS_BUS / SDRAM_BUS  in MHz):

 0 = 192/ 96/ 96 , 1 = 336/168/168 , 2 = 396/198/ 99 , 3 = 396/198/198
 4 = 492/123/123 , 5 = 492/164/164 , 6 = 492/246/123

Thanks,

David SANCHEZ

-----Message d'origine-----
De : Sergei Shtylylov [mailto:sshtylyov@ru.mvista.com] 
Envoyé : lundi 5 décembre 2005 13:00
À : David Sanchez; Linux MIPS Development
Objet : Re: Au1550 system bus masters issue

Hello.

Sergei Shtylylov wrote:

> coherency in Ethernet driver however makes the kernel non-bootable. USB 
> host controller (and probably not only it, I'm too lazy to re-check ;-) 
> is still prone to other errata on stepping AB though, see this thread:
> 
> http://www.linux-mips.org/archives/linux-mips/2005-11/msg00137.html
> 
> I'm gonna rework the patch and resubmit.

    Oops, I was talking of Au1500 step AB, Au1550 doesn't have CONFIG.OD bit 
errata...

WBR, Sergei

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2005-12-05 15:15 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-12-05  8:18 Au1550 system bus masters issue David Sanchez
2005-12-05  8:18 ` David Sanchez
2005-12-05 11:36 ` Sergei Shtylylov
2005-12-05 11:51   ` Sergei Shtylylov
  -- strict thread matches above, loose matches on Subject: below --
2005-12-05 15:11 David Sanchez
2005-12-05 15:11 ` David Sanchez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox