コード例 #1
0
ファイル: mtd_rwbuffer.c プロジェクト: cloudyourcar/nuttx
static ssize_t mtd_bwrite(FAR struct mtd_dev_s *dev, off_t block, size_t nsectors,
                            FAR const uint8_t *buffer)
{
  FAR struct mtd_rwbuffer_s *priv = (FAR struct mtd_rwbuffer_s *)dev;

  /* Let the rwbuffer logic do it real work.  It will call out to wrb_reload it is
   * needs to read any data.
   */

  return rwb_write(&priv->rwb, block, nsectors, buffer);
}
コード例 #2
0
ファイル: ftl.c プロジェクト: a1ien/nuttx
static ssize_t ftl_write(FAR struct inode *inode, const unsigned char *buffer,
                        size_t start_sector, unsigned int nsectors)
{
  struct ftl_struct_s *dev;

  finfo("sector: %d nsectors: %d\n", start_sector, nsectors);

  DEBUGASSERT(inode && inode->i_private);
  dev = (struct ftl_struct_s *)inode->i_private;
#ifdef CONFIG_FTL_WRITEBUFFER
  return rwb_write(&dev->rwb, start_sector, nsectors, buffer);
#else
  return ftl_flush(dev, buffer, start_sector, nsectors);
#endif
}