mem: Add a WriteClean command to the packet class

A WriteClean packet allows a cache to write a block to a memory below
without evicting its copy. A typical usecase for a WriteClean packet
is a cache clean operation.

Change-Id: If356cb067da5ddf3210c135f41ef0891fb811568
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Curtis Dunham <curtis.dunham@arm.com>
Reviewed-by: Anouk Van Laer <anouk.vanlaer@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/5044
Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
This commit is contained in:
Nikos Nikoleris
2016-05-26 09:49:52 +01:00
parent ad000b5606
commit d8afb86793
2 changed files with 6 additions and 2 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2011-2016 ARM Limited
* Copyright (c) 2011-2017 ARM Limited
* All rights reserved
*
* The license below extends only to copyright in the software and shall
@@ -95,6 +95,9 @@ MemCmd::commandInfo[] =
* dirty. */
{ SET5(IsWrite, IsRequest, IsEviction, HasData, FromCache),
InvalidCmd, "WritebackClean" },
/* WriteClean - This allows a cache to write a dirty block to a memory
below without evicting its copy. */
{ SET4(IsWrite, IsRequest, HasData, FromCache), InvalidCmd, "WriteClean" },
/* CleanEvict */
{ SET3(IsRequest, IsEviction, FromCache), InvalidCmd, "CleanEvict" },
/* SoftPFReq */

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2012-2016 ARM Limited
* Copyright (c) 2012-2017 ARM Limited
* All rights reserved
*
* The license below extends only to copyright in the software and shall
@@ -88,6 +88,7 @@ class MemCmd
WriteResp,
WritebackDirty,
WritebackClean,
WriteClean, // writes dirty data below without evicting
CleanEvict,
SoftPFReq,
HardPFReq,