Commit be2e9415 authored by Rasmus Villemoes's avatar Rasmus Villemoes Committed by Li Yang
Browse files

net/wan/fsl_ucc_hdlc: avoid use of IS_ERR_VALUE()



When building this on a 64-bit platform gcc rightly warns that the
error checking is broken (-ENOMEM stored in an u32 does not compare
greater than (unsigned long)-MAX_ERRNO). Instead, now that
qe_muram_alloc() returns s32, use that type to store the return value
and use standard kernel style "ret < 0".

Reviewed-by: default avatarTimur Tabi <timur@kernel.org>
Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
Acked-by: default avatarDavid S. Miller <davem@davemloft.net>
Signed-off-by: default avatarLi Yang <leoyang.li@nxp.com>
parent c93c159a
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -84,8 +84,8 @@ static int uhdlc_init(struct ucc_hdlc_private *priv)
	int ret, i;
	void *bd_buffer;
	dma_addr_t bd_dma_addr;
	u32 riptr;
	u32 tiptr;
	s32 riptr;
	s32 tiptr;
	u32 gumr;

	ut_info = priv->ut_info;
@@ -195,7 +195,7 @@ static int uhdlc_init(struct ucc_hdlc_private *priv)
	priv->ucc_pram_offset = qe_muram_alloc(sizeof(struct ucc_hdlc_param),
				ALIGNMENT_OF_UCC_HDLC_PRAM);

	if (IS_ERR_VALUE(priv->ucc_pram_offset)) {
	if (priv->ucc_pram_offset < 0) {
		dev_err(priv->dev, "Can not allocate MURAM for hdlc parameter.\n");
		ret = -ENOMEM;
		goto free_tx_bd;
@@ -233,14 +233,14 @@ static int uhdlc_init(struct ucc_hdlc_private *priv)

	/* Alloc riptr, tiptr */
	riptr = qe_muram_alloc(32, 32);
	if (IS_ERR_VALUE(riptr)) {
	if (riptr < 0) {
		dev_err(priv->dev, "Cannot allocate MURAM mem for Receive internal temp data pointer\n");
		ret = -ENOMEM;
		goto free_tx_skbuff;
	}

	tiptr = qe_muram_alloc(32, 32);
	if (IS_ERR_VALUE(tiptr)) {
	if (tiptr < 0) {
		dev_err(priv->dev, "Cannot allocate MURAM mem for Transmit internal temp data pointer\n");
		ret = -ENOMEM;
		goto free_riptr;
+1 −1
Original line number Diff line number Diff line
@@ -98,7 +98,7 @@ struct ucc_hdlc_private {

	unsigned short tx_ring_size;
	unsigned short rx_ring_size;
	u32 ucc_pram_offset;
	s32 ucc_pram_offset;

	unsigned short encoding;
	unsigned short parity;