Edit online

spinand_manufacturer

该结构为第一级索引,用来描述器件厂家的信息

SPI NAND 的接口和操作命令基本上很统一,少有需要特殊处理的命令,但驱动上为了更好的兼容性,还是预留了一些接口
const struct spinand_manufacturer winbond_spinand_manufacturer = {
        .id = SPINAND_MFR_FMSH,             //厂家的 ID,即 MID
        .name = "FudanMicro",               //厂家名字标识
        .chips = fmsh_spinand_table,        //本驱动支持的器件
        .nchips = ARRAY_SIZE(fmsh_spinand_table), // 支持的器件的个数
        .ops = &fmsh_spinand_manuf_ops,      // 本公司的器件 私有操作接口
};

struct spinand_manufacturer_ops {
        int (*init)(struct spinand_device *spinand);  //初始化接口,如果没有特殊操作,可以为空
        void (*cleanup)(struct spinand_device *spinand); //清理接口,如果没有特殊操作,可以为空
};

FudanMicroForesee 来讲,他们没有特殊的初始化接口, 因此预留该两个接口为空

  • Manufacture ID,厂商的唯一标识, 一般在数据手册文档中搜 Manufacture ID 或者 MID 即可获得

  • Device ID:器件的唯一标识, 一般在数据手册文档中搜 Device ID 或者 DID 即可获得

    #define SPINAND_MFR_FMSH                0xA1
    #define SPINAND_MFR_FORESEE             0xCD

../../images/mid-did.png