Commit e00cc83e authored by Boris Brezillon's avatar Boris Brezillon Committed by Mauro Carvalho Chehab
Browse files

media: hantro: h264: Rename POC_CMP() into HANTRO_CMP()



And use it for all native type comparisons, even if it's not strictly
required. By doing that we make the code more consistent and prevent
from potential incorrect results in case of overflow or when the the
values being compared are both negative.

Signed-off-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
Tested-by: default avatarFrancois Buergisser <fbuergisser@chromium.org>
Reviewed-by: default avatarTomasz Figa <tfiga@chromium.org>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
parent 3e5ba2ac
Loading
Loading
Loading
Loading
+11 −11
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@
#define POC_BUFFER_SIZE			34
#define SCALING_LIST_SIZE		(6 * 16 + 6 * 64)

#define POC_CMP(p0, p1) ((p0) < (p1) ? -1 : 1)
#define HANTRO_CMP(a, b) ((a) < (b) ? -1 : 1)

/* Data structure describing auxiliary buffer format. */
struct hantro_h264_dec_priv_tbl {
@@ -353,9 +353,9 @@ static int p_ref_list_cmp(const void *ptra, const void *ptrb, const void *data)
	 * ascending order.
	 */
	if (!(a->flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM))
		return b->frame_num - a->frame_num;
		return HANTRO_CMP(b->frame_num, a->frame_num);

	return a->pic_num - b->pic_num;
	return HANTRO_CMP(a->pic_num, b->pic_num);
}

static int b0_ref_list_cmp(const void *ptra, const void *ptrb, const void *data)
@@ -381,7 +381,7 @@ static int b0_ref_list_cmp(const void *ptra, const void *ptrb, const void *data)

	/* Long term pics in ascending pic num order. */
	if (a->flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM)
		return a->pic_num - b->pic_num;
		return HANTRO_CMP(a->pic_num, b->pic_num);

	poca = builder->pocs[idxa];
	pocb = builder->pocs[idxb];
@@ -392,11 +392,11 @@ static int b0_ref_list_cmp(const void *ptra, const void *ptrb, const void *data)
	 * order.
	 */
	if ((poca < builder->curpoc) != (pocb < builder->curpoc))
		return POC_CMP(poca, pocb);
		return HANTRO_CMP(poca, pocb);
	else if (poca < builder->curpoc)
		return POC_CMP(pocb, poca);
		return HANTRO_CMP(pocb, poca);

	return POC_CMP(poca, pocb);
	return HANTRO_CMP(poca, pocb);
}

static int b1_ref_list_cmp(const void *ptra, const void *ptrb, const void *data)
@@ -422,7 +422,7 @@ static int b1_ref_list_cmp(const void *ptra, const void *ptrb, const void *data)

	/* Long term pics in ascending pic num order. */
	if (a->flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM)
		return a->pic_num - b->pic_num;
		return HANTRO_CMP(a->pic_num, b->pic_num);

	poca = builder->pocs[idxa];
	pocb = builder->pocs[idxb];
@@ -433,11 +433,11 @@ static int b1_ref_list_cmp(const void *ptra, const void *ptrb, const void *data)
	 * order.
	 */
	if ((poca < builder->curpoc) != (pocb < builder->curpoc))
		return POC_CMP(pocb, poca);
		return HANTRO_CMP(pocb, poca);
	else if (poca < builder->curpoc)
		return POC_CMP(pocb, poca);
		return HANTRO_CMP(pocb, poca);

	return POC_CMP(poca, pocb);
	return HANTRO_CMP(poca, pocb);
}

static void