Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 Nov 2013 13:56:46 -0800
From:      Warner Losh <imp@bsdimp.com>
To:        Kristof Provost <kristof@sigsegv.be>
Cc:        Grzegorz Bernacki <gber@FreeBSD.org>, freebsd-embedded@freebsd.org
Subject:   Re: Incorrect struct onfi_params definition
Message-ID:  <BA053B08-AD98-4FD2-AAB5-FBC8CEBDCEE0@bsdimp.com>
In-Reply-To: <20131106212855.GF58987@vega.codepro.be>
References:  <20131106212855.GF58987@vega.codepro.be>

next in thread | previous in thread | raw e-mail | index | archive | help

On Nov 6, 2013, at 1:28 PM, Kristof Provost wrote:

> Hi,
> 
> The definition of struct onfi_params in sys/dev/nand/nand.h is
> incorrect. The total structure size should be 256 bytes, but it's only
> 176 bytes.
> 
> That's because the vendor_spec array was declared as being 8 bytes,
> rather than the 88 bytes it should be. Clearly a typo.
> 
> This patch should fix it:
> 
> diff --git a/sys/dev/nand/nand.h b/sys/dev/nand/nand.h
> index 0d6d7b4..46b6993 100644
> --- a/sys/dev/nand/nand.h
> +++ b/sys/dev/nand/nand.h
> @@ -217,7 +217,7 @@ struct onfi_params {
>        uint8_t         driver_strength_support;
>        uint8_t         res4[12];
>        uint16_t        vendor_rev;
> -       uint8_t         vendor_spec[8];
> +       uint8_t         vendor_spec[88];
>        uint16_t        crc;
> }__attribute__((packed));
> 

I'd add a CT_ASSERT sizeof(onfi_params) == 256 too.

Warner

> Regards,
> Kristof
> _______________________________________________
> freebsd-embedded@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-embedded
> To unsubscribe, send any mail to "freebsd-embedded-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BA053B08-AD98-4FD2-AAB5-FBC8CEBDCEE0>