diff options
author | Marcin KoĆcielnicki <koriakin@0x04.net> | 2017-01-02 03:57:48 +0100 |
---|---|---|
committer | Marcin KoĆcielnicki <koriakin@0x04.net> | 2017-01-02 03:57:48 +0100 |
commit | fed273e0708f22f4e7adce1b3e7815032c28290f (patch) | |
tree | bcc483f4e4609e92ce47856a4790f1723d17b915 | |
parent | 1bebcacc45b036901149f0545e2a6f5ff269e588 (diff) |
hwtest/pgraph: Nailed down PIPE icmd submission area.
-rw-r--r-- | hwtest/pgraph_state_tests.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/hwtest/pgraph_state_tests.cc b/hwtest/pgraph_state_tests.cc index 3f4c175d..154fa557 100644 --- a/hwtest/pgraph_state_tests.cc +++ b/hwtest/pgraph_state_tests.cc @@ -1223,6 +1223,24 @@ class PipeWriteLightSDTest : public StateTest { using StateTest::StateTest; }; +class PipeWriteICmdTest : public StateTest { + uint32_t reg, val; + bool supported() override { + return chipset.card_type == 0x10; + } + void mutate() override { + reg = rnd() & 0x1fc; + val = rnd(); + nva_wr32(cnum, 0x400f50, 0x0400 | reg); + nva_wr32(cnum, 0x400f54, val); + pgraph_celsius_icmd(&exp, extr(reg, 3, 6), val); + } + void print_fail() { + printf("After writing %08x <- %08x\n", reg, val); + } + using StateTest::StateTest; +}; + class FormatsTest : public StateTest { uint32_t val; protected: @@ -1322,6 +1340,7 @@ Test::Subtests PGraphStateTests::subtests() { {"pipe_write_light_sb", new PipeWriteLightSBTest(opt, rnd())}, {"pipe_write_light_sc", new PipeWriteLightSCTest(opt, rnd())}, {"pipe_write_light_sd", new PipeWriteLightSDTest(opt, rnd())}, + {"pipe_write_icmd", new PipeWriteICmdTest(opt, rnd())}, {"clip_status", new ClipStatusTest(opt, rnd())}, {"formats", new FormatsTest(opt, rnd())}, }; |