diff options
author | Andreas Sandberg <andreas.sandberg@arm.com> | 2015-07-07 10:03:13 +0100 |
---|---|---|
committer | Andreas Sandberg <andreas.sandberg@arm.com> | 2015-07-07 10:03:13 +0100 |
commit | c2740578404b4e46d198de70af1cfd554033d99f (patch) | |
tree | bb97478f7d31251d5b1bb0013b6b06b16ca0712c /ext/nomali/lib/mali_t6xx.hh | |
parent | a0cbf5541133e58968919991635797babaad2a18 (diff) | |
download | gem5-c2740578404b4e46d198de70af1cfd554033d99f.tar.xz |
ext: Add the NoMali GPU no-simulation library
Add revision 9adf9d6e2d889a483a92136c96eb8a434d360561 of NoMali-model
from https://github.com/ARM-software/nomali-model. This library
implements the register interface of the Mali T6xx/T7xx series GPUs,
but doesn't do any rendering. It can be used to hide the effects of
software rendering.
Diffstat (limited to 'ext/nomali/lib/mali_t6xx.hh')
-rw-r--r-- | ext/nomali/lib/mali_t6xx.hh | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/ext/nomali/lib/mali_t6xx.hh b/ext/nomali/lib/mali_t6xx.hh new file mode 100644 index 000000000..b8e997659 --- /dev/null +++ b/ext/nomali/lib/mali_t6xx.hh @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2014-2015 ARM Limited + * All rights reserved + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * Authors: Andreas Sandberg + */ + +#ifndef _LIBNOMALIMODEL_MALI_T7XX_HH +#define _LIBNOMALIMODEL_MALI_T7XX_HH + +#include "mali_midgard.hh" + +namespace NoMali { + +class MaliT6xxBase + : public MaliMidgard +{ + public: + MaliT6xxBase(unsigned gpuType, + unsigned major, unsigned minor, unsigned status); + + protected: + void setupControlIdRegisters(RegVector ®s) override; +}; + + +/** + * Simple NoMali implementation of the Mali T60x + */ +class MaliT60x + : public MaliT6xxBase +{ + public: + MaliT60x(unsigned major, unsigned minor, unsigned status); +}; + +/** + * Simple NoMali implementation of the Mali T62x + */ +class MaliT62x + : public MaliT6xxBase +{ + public: + MaliT62x(unsigned major, unsigned minor, unsigned status); +}; + +} + +#endif // _LIBNOMALIMODEL_MALI_T7XX_HH |