media: atomisp: unify sh_css_params_shading_id_table_generate()

Instead of packing parameters differently on ISP2400 and ISP2401,
use just one way of passing them for both.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
Mauro Carvalho Chehab 2020-04-23 09:37:27 +02:00
Родитель 5e0947450d
Коммит 19801a18a0
3 изменённых файлов: 6 добавлений и 40 удалений

Просмотреть файл

@ -199,30 +199,15 @@ crop_and_interpolate(unsigned int cropped_width,
void
sh_css_params_shading_id_table_generate(
struct ia_css_shading_table **target_table,
#ifndef ISP2401
const struct ia_css_binary *binary)
#else
unsigned int table_width,
unsigned int table_height)
#endif
{
/* initialize table with ones, shift becomes zero */
#ifndef ISP2401
unsigned int i, j, table_width, table_height;
#else
unsigned int i, j;
#endif
struct ia_css_shading_table *result;
assert(target_table);
#ifndef ISP2401
assert(binary);
#endif
#ifndef ISP2401
table_width = binary->sctbl_width_per_color;
table_height = binary->sctbl_height;
#endif
result = ia_css_shading_table_alloc(table_width, table_height);
if (!result) {
*target_table = NULL;
@ -262,12 +247,9 @@ prepare_shading_table(const struct ia_css_shading_table *in_table,
assert(binary);
if (!in_table) {
#ifndef ISP2401
sh_css_params_shading_id_table_generate(target_table, binary);
#else
sh_css_params_shading_id_table_generate(target_table,
binary->sctbl_legacy_width_per_color, binary->sctbl_legacy_height);
#endif
binary->sctbl_legacy_width_per_color,
binary->sctbl_legacy_height);
return;
}
@ -332,15 +314,10 @@ prepare_shading_table(const struct ia_css_shading_table *in_table,
input_width = min(input_width, in_table->sensor_width);
input_height = min(input_height, in_table->sensor_height);
#ifndef ISP2401
table_width = binary->sctbl_width_per_color;
table_height = binary->sctbl_height;
#else
/* This prepare_shading_table() function is called only in legacy API (not in new API).
Then, the legacy shading table width and height should be used. */
table_width = binary->sctbl_legacy_width_per_color;
table_height = binary->sctbl_legacy_height;
#endif
result = ia_css_shading_table_alloc(table_width, table_height);
if (!result) {

Просмотреть файл

@ -21,12 +21,8 @@
void
sh_css_params_shading_id_table_generate(
struct ia_css_shading_table **target_table,
#ifndef ISP2401
const struct ia_css_binary *binary);
#else
unsigned int table_width,
unsigned int table_height);
#endif
void
prepare_shading_table(const struct ia_css_shading_table *in_table,

Просмотреть файл

@ -4078,12 +4078,9 @@ sh_css_params_write_to_ddr_internal(
ia_css_shading_table_free(params->sc_config);
params->sc_config = NULL;
}
#ifndef ISP2401
sh_css_params_shading_id_table_generate(&params->sc_config, binary);
#else
sh_css_params_shading_id_table_generate(&params->sc_config,
binary->sctbl_width_per_color, binary->sctbl_height);
#endif
binary->sctbl_width_per_color,
binary->sctbl_height);
if (!params->sc_config) {
IA_CSS_LEAVE_ERR_PRIVATE(IA_CSS_ERR_CANNOT_ALLOCATE_MEMORY);
return IA_CSS_ERR_CANNOT_ALLOCATE_MEMORY;
@ -4450,13 +4447,9 @@ struct ia_css_shading_table *ia_css_get_shading_table(struct ia_css_stream
ia_css_shading_table_free(params->sc_config);
params->sc_config = NULL;
}
#ifndef ISP2401
sh_css_params_shading_id_table_generate(&params->sc_config, binary);
#else
sh_css_params_shading_id_table_generate(&params->sc_config,
binary->sctbl_width_per_color, binary->sctbl_height);
#endif
binary->sctbl_width_per_color,
binary->sctbl_height);
table = params->sc_config;
/* The sc_config will be freed in the
* ia_css_stream_isp_parameters_uninit function. */