diff options
author | Craig Stout <craig.stout@ti.com> | 2012-09-05 14:10:39 -0700 |
---|---|---|
committer | Craig Stout <craig.stout@ti.com> | 2012-09-05 15:09:59 -0700 |
commit | d3fc2152db7a523c5381ee41bfcdc04aa78bab0f (patch) | |
tree | 0468af6bb02aa42e79ea4b1b8cbf918dcf48a23a | |
parent | 8d6b04bda7e9d3f84bd7441e23dbf5fe87b111e3 (diff) | |
download | hardware_ti_omap4-d3fc2152db7a523c5381ee41bfcdc04aa78bab0f.zip hardware_ti_omap4-d3fc2152db7a523c5381ee41bfcdc04aa78bab0f.tar.gz hardware_ti_omap4-d3fc2152db7a523c5381ee41bfcdc04aa78bab0f.tar.bz2 |
gcbv-user: improve check for fill condition
When a usecase generates a fill with a 1x1 destination
we were hitting the blt rather than fill path. This change
improves the check for fill to validate whether there is
a virtual address which the fill code needs anyway as it
directly accessing the memory provided by the src1 buffer
descriptor.
Change-Id: I7010075d268f9dd57714119d088e7bc5c7bf17e2
Signed-off-by: Craig Stout <craig.stout@ti.com>
-rw-r--r-- | gcbv/mirror/gcbv.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/gcbv/mirror/gcbv.c b/gcbv/mirror/gcbv.c index f6c0cfe..7451198 100644 --- a/gcbv/mirror/gcbv.c +++ b/gcbv/mirror/gcbv.c @@ -4338,13 +4338,14 @@ enum bverror bv_blt(struct bvbltparams *bltparams) } } - if (EQ_SIZE(srcinfo[i].rect, dstrect)) - bverror = do_blit(bltparams, batch, - &srcinfo[i]); - else if ((srcinfo[i].rect->width == 1) && - (srcinfo[i].rect->height == 1)) + if ((srcinfo[i].rect->width == 1) && + (srcinfo[i].rect->height == 1) && + (bltparams->src1.desc->virtaddr)) bverror = do_fill(bltparams, batch, &srcinfo[i]); + else if (EQ_SIZE(srcinfo[i].rect, dstrect)) + bverror = do_blit(bltparams, batch, + &srcinfo[i]); else bverror = do_filter(bltparams, batch, &srcinfo[i]); |