Am Mittwoch, den 30.09.2015, 09:53 +0200 schrieb Christian Gmeiner: > Hi Lucas, > > 2015-09-28 12:39 GMT+02:00 Lucas Stach <l.stach@xxxxxxxxxxxxxx>: > > Hi Christian, > > > > Am Montag, den 28.09.2015, 11:46 +0200 schrieb Christian Gmeiner: > >> Hi Lucas. > >> > >> I think I have run into a cache flush / cache coherency issue. I will > >> try to reproduce this issue with a small example and will > >> keep you updated. > > > > What are the symptoms of the issue you are hitting? Maybe I can > > reproduce or see if I have an idea right away. > > > > With the help of the etnaviv_2d_test in my libdrm repo on github I was able > to test different bo flags. > > ETNA_BO_UNCACHED and ETNA_BO_CACHED are working as expected. > The rendering result looks as expected. If I try ETNA_BO_WC the rendering > result looks different for every run. > I have an idea what's going wrong here. Will keep you updated. Regards, Lucas > debian@cubox:~/libdrm$ tests/etnaviv/etnaviv_2d_test /dev/dri/card1 > Version: 1.0.0 > Name: etnaviv > Date: 20150910 > Description: etnaviv DRM > bo cpu prep: 0 > debian@cubox:~/libdrm$ md5sum /tmp/etna.bmp > 052880d433e1bf495e268206addd4087 /tmp/etna.bmp > debian@cubox:~/libdrm$ tests/etnaviv/etnaviv_2d_test /dev/dri/card1 > Version: 1.0.0 > Name: etnaviv > Date: 20150910 > Description: etnaviv DRM > bo cpu prep: 0 > debian@cubox:~/libdrm$ md5sum /tmp/etna.bmp > f1a02a52d81c0b79b098877e6b7d9303 /tmp/etna.bmp > debian@cubox:~/libdrm$ tests/etnaviv/etnaviv_2d_test /dev/dri/card1 > Version: 1.0.0 > Name: etnaviv > Date: 20150910 > Description: etnaviv DRM > bo cpu prep: 0 > debian@cubox:~/libdrm$ md5sum /tmp/etna.bmp > de5a428eb1f6567849ef40a944a995b8 /tmp/etna.bmp > > etna_cmd_stream_finish() waits until the submitted command stream was > processed by the GPU. I tried to use etna_bo_cpu_prep(..) but I that did not > help. > > I am doing something wrong? Should this work in theory? > > diff --git a/tests/etnaviv/etnaviv_2d_test.c b/tests/etnaviv/etnaviv_2d_test.c > index e1ee8a8..037da5b 100644 > --- a/tests/etnaviv/etnaviv_2d_test.c > +++ b/tests/etnaviv/etnaviv_2d_test.c > @@ -200,7 +200,7 @@ int main(int argc, char *argv[]) > goto fail; > } > > - bmp = etna_bo_new(dev, bmp_size, ETNA_BO_UNCACHED); > + bmp = etna_bo_new(dev, bmp_size, ETNA_BO_WC); > if (!bmp) { > ret = 5; > goto fail; > @@ -218,8 +218,10 @@ int main(int argc, char *argv[]) > > etna_cmd_stream_finish(stream); > > + int state = etna_bo_cpu_prep(bmp, DRM_ETNA_PREP_READ); > + printf("bo cpu prep: %d\n", state); > bmp_dump32(etna_bo_map(bmp), width, height, false, "/tmp/etna.bmp"); > - > + etna_bo_cpu_fini(bmp); > fail: > if (stream) > etna_cmd_stream_del(stream); > > Greets > -- > Christian Gmeiner, MSc > > https://soundcloud.com/christian-gmeiner -- Pengutronix e.K. | Lucas Stach | Industrial Linux Solutions | http://www.pengutronix.de/ | _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel