示例#1
0
int
spiflash_erase_device(struct spiflash_device *dev, struct spiflash_transaction *trans, spi_cb cb, void *cbdata)
{
        trans->spi_query[0] = DEVICE_ERASE;
        spiflash_setup_xfer(trans, 1, 0);
        trans->spi_cb = cb;
        trans->cbdata = cbdata;
        spiflash_queue_transaction(dev, trans, WRITE_ENABLE, true, spiflash_spi_done_cb);
        return 0;
}
示例#2
0
文件: spiflash.c 项目: biznixcn/mchck
int
spiflash_get_status(struct spiflash_device *dev, struct spiflash_transaction *trans,
                    spiflash_status_cb cb, void *cbdata)
{
        trans->spi_query[0] = READ_STATUS_REGISTER_1;
        spiflash_setup_xfer(trans, 1, 2);

        trans->status_cb = cb;
        trans->cbdata = cbdata;
        spiflash_queue_transaction(dev, trans, NO_OP, false, spiflash_status_done_cb);
        return 0;
}
示例#3
0
文件: spiflash.c 项目: biznixcn/mchck
int
spiflash_get_id(struct spiflash_device *dev, struct spiflash_transaction *trans,
                spiflash_info_cb cb, void *cbdata)
{
        trans->spi_query[0] = GET_IDENTIFICATION;
        trans->spi_query[1] = trans->spi_query[2] = trans->spi_query[3] = 0x00;
        spiflash_setup_xfer(trans, 4, 4);

        trans->info_cb = cb;
        trans->cbdata = cbdata;
        spiflash_queue_transaction(dev, trans, NO_OP, false, spiflash_get_id_done_cb);
        return 0;
}