Example #1
0
static ssize_t mtd_bread(FAR struct mtd_dev_s *dev, off_t sector,
                          size_t nsectors, FAR 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 mtd_reload if is
   * needs to read any data.
   */

  return rwb_read(&priv->rwb, sector, nsectors, buffer);
}
Example #2
0
static ssize_t ftl_read(FAR struct inode *inode, unsigned char *buffer,
                        size_t start_sector, unsigned int nsectors)
{
  struct ftl_struct_s *dev;

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

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