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>
index | next in thread | previous in thread | raw e-mail
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"
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BA053B08-AD98-4FD2-AAB5-FBC8CEBDCEE0>
