[media] v4l: ti-vpe: enable basic scaler support
authorArchit Taneja <archit@ti.com>
Thu, 12 Dec 2013 08:36:00 +0000 (05:36 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Tue, 7 Jan 2014 08:55:35 +0000 (06:55 -0200)
commitbbee8b3933f5ddff85904aed9190eaca52c54d13
treeb641f89c02f719e2d8bb3c5c4b0c615cca0e36d0
parent773f06577b35f84f84de980e1be3eead8342b5e5
[media] v4l: ti-vpe: enable basic scaler support

Add the required SC register configurations which lets us perform linear scaling
for the supported range of horizontal and vertical scaling ratios.

The horizontal scaler performs polyphase scaling using it's 8 tap 32 phase
filter, decimation is performed when downscaling passes beyond 2x or 4x.

The vertical scaler performs polyphase scaling using it's 5 tap 32 phase filter,
it switches to a simpler form of scaling using the running average filter when
the downscale ratio is more than 4x.

Many of the SC features like peaking, trimming and non-linear scaling aren't
implemented for now. Only the minimal register fields required for basic scaling
operation are configured.

The function to configure SC registers takes the sc_data handle, the source and
destination widths and heights, and the scaler address data block offsets for
the current context so that they can be configured.

Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
drivers/media/platform/ti-vpe/sc.c
drivers/media/platform/ti-vpe/sc.h
drivers/media/platform/ti-vpe/vpe.c