lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210920112625.fnqayim5mg5iggag@ti.com>
Date:   Mon, 20 Sep 2021 16:56:27 +0530
From:   Pratyush Yadav <p.yadav@...com>
To:     Daniel Palmer <daniel@...f.com>
CC:     <linux-mtd@...ts.infradead.org>, <tudor.ambarus@...rochip.com>,
        <michael@...le.cc>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] mtd: spi-nor: Add support for ZB25VQ128

On 18/09/21 04:22PM, Daniel Palmer wrote:
> Add support for the ZBIT ZB25VQ128 128MBit SPI NOR
> flash.
> 
> Link: http://www.cipatelje.eu/pdf/ZB25VQ128.pdf
> Signed-off-by: Daniel Palmer <daniel@...f.com>
> ---
>  drivers/mtd/spi-nor/Makefile |  1 +
>  drivers/mtd/spi-nor/core.c   |  1 +
>  drivers/mtd/spi-nor/core.h   |  1 +
>  drivers/mtd/spi-nor/zbit.c   | 21 +++++++++++++++++++++
>  4 files changed, 24 insertions(+)
>  create mode 100644 drivers/mtd/spi-nor/zbit.c
> 
> diff --git a/drivers/mtd/spi-nor/Makefile b/drivers/mtd/spi-nor/Makefile
> index 6b904e439372..a6f3646824cb 100644
> --- a/drivers/mtd/spi-nor/Makefile
> +++ b/drivers/mtd/spi-nor/Makefile
> @@ -17,6 +17,7 @@ spi-nor-objs			+= sst.o
>  spi-nor-objs			+= winbond.o
>  spi-nor-objs			+= xilinx.o
>  spi-nor-objs			+= xmc.o
> +spi-nor-objs			+= zbit.o
>  obj-$(CONFIG_MTD_SPI_NOR)	+= spi-nor.o
>  
>  obj-$(CONFIG_MTD_SPI_NOR)	+= controllers/
> diff --git a/drivers/mtd/spi-nor/core.c b/drivers/mtd/spi-nor/core.c
> index cc08bd707378..75f6ac9485b9 100644
> --- a/drivers/mtd/spi-nor/core.c
> +++ b/drivers/mtd/spi-nor/core.c
> @@ -1846,6 +1846,7 @@ static const struct spi_nor_manufacturer *manufacturers[] = {
>  	&spi_nor_winbond,
>  	&spi_nor_xilinx,
>  	&spi_nor_xmc,
> +	&spi_nor_zbit,
>  };
>  
>  static const struct flash_info *
> diff --git a/drivers/mtd/spi-nor/core.h b/drivers/mtd/spi-nor/core.h
> index 3348e1dd1445..ad3b34a3b80f 100644
> --- a/drivers/mtd/spi-nor/core.h
> +++ b/drivers/mtd/spi-nor/core.h
> @@ -489,6 +489,7 @@ extern const struct spi_nor_manufacturer spi_nor_sst;
>  extern const struct spi_nor_manufacturer spi_nor_winbond;
>  extern const struct spi_nor_manufacturer spi_nor_xilinx;
>  extern const struct spi_nor_manufacturer spi_nor_xmc;
> +extern const struct spi_nor_manufacturer spi_nor_zbit;
>  
>  extern const struct attribute_group *spi_nor_sysfs_groups[];
>  
> diff --git a/drivers/mtd/spi-nor/zbit.c b/drivers/mtd/spi-nor/zbit.c
> new file mode 100644
> index 000000000000..d240dd65d249
> --- /dev/null
> +++ b/drivers/mtd/spi-nor/zbit.c
> @@ -0,0 +1,21 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2021, Daniel Palmer<daniel@...ngy.jp>
> + */
> +
> +#include <linux/mtd/spi-nor.h>
> +
> +#include "core.h"
> +
> +static const struct flash_info zbit_parts[] = {
> +	/* zbit */
> +	{ "zb25vq128", INFO(0x5e4018, 0, 64 * 1024, 256,

Zbit should be in bank 10, so it should be preceeded by 9 0x7f bytes, 
correct? I don't see any logic to handle that in SPI NOR currently so I 
assume this manufacturer does not implement the continuation codes.

In that case, it should go to the manufacturer collisions driver 
proposed here [0].

[0] https://patchwork.ozlabs.org/project/linux-mtd/patch/20210727045222.905056-6-tudor.ambarus@microchip.com/

> +			    SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
> +			    SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) },
> +};
> +
> +const struct spi_nor_manufacturer spi_nor_zbit = {
> +	.name = "zbit",
> +	.parts = zbit_parts,
> +	.nparts = ARRAY_SIZE(zbit_parts),
> +};
> -- 
> 2.33.0
> 

-- 
Regards,
Pratyush Yadav
Texas Instruments Inc.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ