From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33310) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bDRbg-00078d-I1 for qemu-devel@nongnu.org; Thu, 16 Jun 2016 03:20:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bDRbc-0000js-C1 for qemu-devel@nongnu.org; Thu, 16 Jun 2016 03:20:51 -0400 Received: from 9.mo3.mail-out.ovh.net ([87.98.184.141]:46628) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bDRbc-0000jl-2w for qemu-devel@nongnu.org; Thu, 16 Jun 2016 03:20:48 -0400 Received: from player772.ha.ovh.net (b7.ovh.net [213.186.33.57]) by mo3.mail-out.ovh.net (Postfix) with ESMTP id 0E02CFFC44C for ; Thu, 16 Jun 2016 09:20:47 +0200 (CEST) References: <1465998071-7355-1-git-send-email-marcin.krzeminski@nokia.com> <1465998071-7355-10-git-send-email-marcin.krzeminski@nokia.com> From: =?UTF-8?Q?C=c3=a9dric_Le_Goater?= Message-ID: <5762534A.4060507@kaod.org> Date: Thu, 16 Jun 2016 09:20:42 +0200 MIME-Version: 1.0 In-Reply-To: <1465998071-7355-10-git-send-email-marcin.krzeminski@nokia.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 9/9] m25p80: New flash devices. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: marcin.krzeminski@nokia.com, qemu-devel@nongnu.org Cc: crosthwaitepeter@gmail.com, pawel.lenkow@itlen.com, peter.maydell@linaro.org On 06/15/2016 03:41 PM, marcin.krzeminski@nokia.com wrote: > From: Marcin Krzeminski >=20 > Macronix: mx66u51235f and mx66u1g45g > Micron: mt25ql01g and mt25qu01g > Spansion: s25fs512s and s70fs01gs > > Signed-off-by: Marcin Krzeminski Reviewed-by: C=E9dric Le Goater > --- > hw/block/m25p80.c | 19 +++++++++++++------ > 1 file changed, 13 insertions(+), 6 deletions(-) >=20 > diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c > index 7bc0e03..e1a7698 100644 > --- a/hw/block/m25p80.c > +++ b/hw/block/m25p80.c > @@ -192,6 +192,8 @@ static const FlashPartInfo known_devices[] =3D { > { INFO("mx25l12855e", 0xc22618, 0, 64 << 10, 256, 0) }, > { INFO("mx25l25635e", 0xc22019, 0, 64 << 10, 512, 0) }, > { INFO("mx25l25655e", 0xc22619, 0, 64 << 10, 512, 0) }, > + { INFO("mx66u51235f", 0xc2253a, 0, 64 << 10, 1024, ER_4K | E= R_32K) }, > + { INFO("mx66u1g45g", 0xc2253b, 0, 64 << 10, 2048, ER_4K | E= R_32K) }, >=20 > /* Micron */ > { INFO("n25q032a11", 0x20bb16, 0, 64 << 10, 64, ER_4K) }, > @@ -202,6 +204,11 @@ static const FlashPartInfo known_devices[] =3D { > { INFO("n25q128a13", 0x20ba18, 0, 64 << 10, 256, ER_4K) }, > { INFO("n25q256a11", 0x20bb19, 0, 64 << 10, 512, ER_4K) }, > { INFO("n25q256a13", 0x20ba19, 0, 64 << 10, 512, ER_4K) }, > + { INFO("n25q128", 0x20ba18, 0, 64 << 10, 256, 0) }, > + { INFO("n25q256a", 0x20ba19, 0, 64 << 10, 512, ER_4K) }, > + { INFO("n25q512a", 0x20ba20, 0, 64 << 10, 1024, ER_4K) }, > + { INFO("mt25ql01g", 0x20ba21, 0, 64 << 10, 2048, ER_4K) }, > + { INFO("mt25qu01g", 0x20bb21, 0, 64 << 10, 2048, ER_4K) }, >=20 > /* Spansion -- single (large) sector size only, at least > * for the chips listed here (without boot sectors). > @@ -210,8 +217,8 @@ static const FlashPartInfo known_devices[] =3D { > { INFO("s25sl064p", 0x010216, 0x4d00, 64 << 10, 128, ER_4K) }, > { INFO("s25fl256s0", 0x010219, 0x4d00, 256 << 10, 128, 0) }, > { INFO("s25fl256s1", 0x010219, 0x4d01, 64 << 10, 512, 0) }, > - { INFO("s25fl512s", 0x010220, 0x4d00, 256 << 10, 256, 0) }, > - { INFO("s70fl01gs", 0x010221, 0x4d00, 256 << 10, 256, 0) }, > + { INFO6("s25fl512s", 0x010220, 0x4d0080, 256 << 10, 256, 0) }, > + { INFO6("s70fl01gs", 0x010221, 0x4d0080, 256 << 10, 512, 0) }, > { INFO("s25sl12800", 0x012018, 0x0300, 256 << 10, 64, 0) }, > { INFO("s25sl12801", 0x012018, 0x0301, 64 << 10, 256, 0) }, > { INFO("s25fl129p0", 0x012018, 0x4d00, 256 << 10, 64, 0) }, > @@ -224,6 +231,10 @@ static const FlashPartInfo known_devices[] =3D { > { INFO("s25fl016k", 0xef4015, 0, 64 << 10, 32, ER_4K | ER= _32K) }, > { INFO("s25fl064k", 0xef4017, 0, 64 << 10, 128, ER_4K | ER= _32K) }, >=20 > + /* Spansion -- boot sectors support */ > + { INFO6("s25fs512s", 0x010220, 0x4d0081, 256 << 10, 256, 0) }, > + { INFO6("s70fs01gs", 0x010221, 0x4d0081, 256 << 10, 512, 0) }, > + > /* SST -- large erase sizes are "overlays", "sectors" are 4<< 10 *= / > { INFO("sst25vf040b", 0xbf258d, 0, 64 << 10, 8, ER_4K) }, > { INFO("sst25vf080b", 0xbf258e, 0, 64 << 10, 16, ER_4K) }, > @@ -274,10 +285,6 @@ static const FlashPartInfo known_devices[] =3D { > { INFO("w25q80", 0xef5014, 0, 64 << 10, 16, ER_4K) }, > { INFO("w25q80bl", 0xef4014, 0, 64 << 10, 16, ER_4K) }, > { INFO("w25q256", 0xef4019, 0, 64 << 10, 512, ER_4K) }, > - > - { INFO("n25q128", 0x20ba18, 0, 64 << 10, 256, 0) }, > - { INFO("n25q256a", 0x20ba19, 0, 64 << 10, 512, ER_4K) }, > - { INFO("n25q512a", 0x20ba20, 0, 64 << 10, 1024, ER_4K) }= , > }; >=20 > typedef enum { >=20