From 2f6d69ee08bd92d9fcfb9b78f84b2d7c0ba113d0 Mon Sep 17 00:00:00 2001 From: Nikos Nikoleris Date: Tue, 31 May 2016 18:03:42 +0100 Subject: mem: Add support for WriteClean packets in the memory system This change adds support for creating and handling WriteClean packets. The WriteClean operation is almost identical to a WritebackDirty with the exception that the cache generating a WriteClean retains a copy of the block. Change-Id: I63c8de62919fad0f9547d412f8266aa4292ebecd Reviewed-by: Andreas Sandberg Reviewed-by: Curtis Dunham Reviewed-by: Anouk Van Laer Reviewed-on: https://gem5-review.googlesource.com/5045 Reviewed-by: Jason Lowe-Power Maintainer: Nikos Nikoleris --- src/mem/cache/cache.hh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/mem/cache/cache.hh') diff --git a/src/mem/cache/cache.hh b/src/mem/cache/cache.hh index 790c685f4..bbbda500b 100644 --- a/src/mem/cache/cache.hh +++ b/src/mem/cache/cache.hh @@ -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 @@ -452,6 +452,13 @@ class Cache : public BaseCache */ PacketPtr writebackBlk(CacheBlk *blk); + /** + * Create a writeclean request for the given block. + * @param blk The block to write clean + * @return The write clean packet for the block. + */ + PacketPtr writecleanBlk(CacheBlk *blk); + /** * Create a CleanEvict request for the given block. * @param blk The block to evict. -- cgit v1.2.3