Searched refs:erase (Results 1 - 25 of 34) sorted by relevance

12

/drivers/net/ethernet/sfc/
H A Dmtd.c24 static int efx_mtd_erase(struct mtd_info *mtd, struct erase_info *erase) argument
29 rc = efx->type->mtd_erase(mtd, erase->addr, erase->len);
31 erase->state = MTD_ERASE_DONE;
33 erase->state = MTD_ERASE_FAILED;
34 erase->fail_addr = MTD_FAIL_ADDR_UNKNOWN;
36 mtd_erase_callback(erase);
/drivers/mtd/
H A Dmtdconcat.c340 static int concat_dev_erase(struct mtd_info *mtd, struct erase_info *erase) argument
351 erase->mtd = mtd;
352 erase->callback = concat_erase_callback;
353 erase->priv = (unsigned long) &waitq;
359 err = mtd_erase(mtd, erase);
363 if (erase->state != MTD_ERASE_DONE
364 && erase->state != MTD_ERASE_FAILED)
369 err = (erase->state == MTD_ERASE_FAILED) ? -EIO : 0;
380 struct erase_info *erase; local
383 * Check for proper erase bloc
[all...]
H A Drfd_ftl.c27 MODULE_PARM_DESC(block_size, "Block size to use by RFD, defaults to erase unit size");
39 /* An erase unit should start with this value */
73 u_int block_size; /* size of erase unit */
74 u_int total_blocks; /* number of erase units */
75 u_int header_sectors_per_block; /* header sectors in erase unit */
76 u_int data_sectors_per_block; /* data sectors in erase unit */
163 /* each erase block has three bytes header, followed by the map */
225 printk(KERN_WARNING PREFIX "'%s': no empty erase unit found\n",
269 static void erase_callback(struct erase_info *erase) argument
276 part = (struct partition*)erase
328 struct erase_info *erase; local
[all...]
H A Dmtdblock.c69 struct erase_info erase; local
76 * First, let's erase the flash block.
80 erase.mtd = mtd;
81 erase.callback = erase_callback;
82 erase.addr = pos;
83 erase.len = len;
84 erase.priv = (u_long)&wait_q;
89 ret = mtd_erase(mtd, &erase);
93 printk (KERN_WARNING "mtdblock: erase of region [0x%lx, 0x%x] "
99 schedule(); /* Wait for erase t
[all...]
H A Dmtdoops.c99 struct erase_info erase; local
106 erase.mtd = mtd;
107 erase.callback = mtdoops_erase_callback;
108 erase.addr = offset;
109 erase.len = mtd->erasesize;
110 erase.priv = (u_long)&wait_q;
115 ret = mtd_erase(mtd, &erase);
119 printk(KERN_WARNING "mtdoops: erase of region [0x%llx, 0x%llx] on \"%s\" failed\n",
120 (unsigned long long)erase.addr,
121 (unsigned long long)erase
[all...]
H A Dmtdchar.c686 struct erase_info *erase; local
691 erase=kzalloc(sizeof(struct erase_info),GFP_KERNEL);
692 if (!erase)
705 kfree(erase);
708 erase->addr = einfo64.start;
709 erase->len = einfo64.length;
715 kfree(erase);
718 erase->addr = einfo32.start;
719 erase->len = einfo32.length;
721 erase
[all...]
H A Dftl.c102 /* Maximum number of outstanding erase requests per socket */
152 partition. build_maps() reads all the erase unit headers, builds
153 the erase unit map, and then builds the virtual page map.
207 /* Set up erase unit maps */
252 /* Pick anything reasonable for the erase count */
264 printk(KERN_NOTICE "ftl_cs: format error: erase units "
328 Erase_xfer() schedules an asynchronous erase operation for a
338 struct erase_info *erase; local
344 /* Is there a free erase slot? Always in MTD. */
347 erase
374 ftl_erase_callback(struct erase_info *erase) argument
[all...]
H A Dsm_ftl.c407 /* If write fails. try to erase the block */
453 * If erase succeeds, it updates free block fifo, otherwise marks block as bad
460 struct erase_info erase; local
462 erase.mtd = mtd;
463 erase.callback = sm_erase_callback;
464 erase.addr = sm_mkoffset(ftl, zone_num, block, 0);
465 erase.len = ftl->block_size;
466 erase.priv = (u_long)ftl;
474 sm_printk("attempted to erase the CIS!");
478 if (mtd_erase(mtd, &erase)) {
[all...]
H A Dmtdswap.c58 * Frequency value 6 means 1/6 of the GC passes will pick an erase block based
61 * The lower freq2 should be chosen so that it makes sure the maximum erase
63 * trying to make erase differences large.
156 #define MTDSWAP_ERASE_RETRIES 3 /* Before marking erase block bad */
169 * thread. The thread can consume a full erase block when moving a
189 MODULE_PARM_DESC(spare_eblocks, "Percentage of spare erase blocks for "
427 * Are there any erase blocks without MAGIC_CLEAN header, presumably
428 * because power was cut off after erase but before header write? We
429 * need to guestimate the erase count.
551 struct erase_info erase; local
[all...]
/drivers/mtd/devices/
H A Dbcm47xxsflash.c67 static int bcm47xxsflash_erase(struct mtd_info *mtd, struct erase_info *erase) argument
75 b47s->cc_write(b47s, BCMA_CC_FLASHADDR, erase->addr);
86 b47s->cc_write(b47s, BCMA_CC_FLASHADDR, erase->addr << 1);
93 erase->state = MTD_ERASE_FAILED;
95 erase->state = MTD_ERASE_DONE;
97 if (erase->callback)
98 erase->callback(erase);
H A Dm25p80.c134 /* Wait till previous write/erase is done. */
173 /* Send write enable, then erase commands. */
213 nor->erase = m25p80_erase;
/drivers/mtd/ubi/
H A Dattach.c40 * erased are put to the @erase list.
60 * the reason is a power cut, UBI puts this PEB to the @erase list, and all
61 * PEBs in the @erase list are scheduled for erasure later.
77 * to just erase this PEB - this is corruption type 1.
104 * @ec: erase counter of the physical eraseblock
109 * eraseblock @pnum and adds it to the "free", "erase", or "alien" lists.
114 * PEBs (corrupted due to power cuts) to the head of the erase list to make
115 * sure we erase them first and get rid of corruptions ASAP. This function
126 } else if (list == &ai->erase) {
127 dbg_bld("add to erase
[all...]
H A Dfastmap.c68 * add_aeb - create and add a attach erase block to a given list.
71 * @pnum: PEB number of the new attach erase block
249 list_add_tail(&victim->u.list, &ai->erase);
268 list_add_tail(&new_aeb->u.list, &ai->erase);
520 list_for_each_entry(aeb, &ai->erase, u.list)
566 INIT_LIST_HEAD(&ai->erase);
677 /* read EC values from erase list */
684 add_aeb(ai, &ai->erase, be32_to_cpu(fmec->pnum),
1325 * erase_block - Manually erase a PEB.
1465 ubi_err("could not get any free erase bloc
[all...]
H A Dubi.h78 * number of (global) erase cycles PEBs are protected from the wear-leveling
83 /* The volume ID/LEB number/erase counter is unknown */
157 * @ec: erase counter
357 * @emulate_io_failures: emulate write/erase failures for testing purposes
364 * @dfs_emulate_io_failures: debugfs knob to emulate write/erase failures
411 * @max_ec: current highest erase counter value
412 * @mean_ec: current mean erase counter value
591 * @ec: erase counter (%UBI_UNKNOWN if it is unknown)
659 * @erase: list of physical eraseblocks which have to be erased
672 * @min_ec: lowest erase counte
688 struct list_head erase; member in struct:ubi_attach_info
[all...]
H A Dvtbl.c353 list_add(&new_aeb->u.list, &ai->erase);
386 * a. erase LEB 0;
388 * c. erase LEB 1;
H A Deba.c341 dbg_eba("erase LEB %d:%d, PEB %d", vol_id, lnum, pnum);
690 * this physical eraseblock went bad, the erase code will handle that.
1363 ubi_move_aeb_to_list(av, aeb, &ai->erase);
/drivers/misc/eeprom/
H A Deeprom_93xx46.c139 dev_err(&edev->spi->dev, "erase/write %sable error %d\n",
216 /* erase/write enable */
240 /* erase/write disable */
277 dev_err(&edev->spi->dev, "erase error %d\n", ret);
278 /* have to wait erase cycle time Tec ms */
293 int erase = 0, ret; local
295 sscanf(buf, "%d", &erase);
296 if (erase) {
309 static DEVICE_ATTR(erase, S_IWUSR, NULL, eeprom_93xx46_store_erase);
362 dev_err(&spi->dev, "can't create erase interfac
[all...]
/drivers/scsi/
H A Dgdth_ioctl.h204 int erase; /* erase event ? */ member in struct:__anon5452::__anon5453::__anon5457
314 int erase; /* erase event? */ member in struct:__anon5474
/drivers/input/
H A Dff-core.c201 if (ff->erase) {
202 error = ff->erase(dev, effect_id);
216 * input_ff_erase - erase a force-feedback effect from device
217 * @dev: input device to erase effect from
223 * file handle that is requesting erase.
242 * flush_effects - erase all effects owned by a file handle
309 * Once ff device is created you need to setup its upload, erase,
/drivers/firmware/efi/
H A Defi-pstore.c364 .erase = efi_pstore_erase,
/drivers/input/joystick/iforce/
H A Diforce-main.c440 ff->erase = iforce_erase_effect;
/drivers/mtd/spi-nor/
H A Dspi-nor.c27 #define MAX_READY_WAIT_JIFFIES (40 * HZ) /* M25P16 specs 40s max chip erase */
240 /* Send write enable, then erase commands. */
272 * one or more erase sectors. Return an error is there is a problem erasing.
295 /* whole-chip erase? */
304 * to use "small sector erase", but that's not always optimal.
307 /* "sector"-at-a-time erase */
310 if (nor->erase(nor, addr)) {
446 #define SPI_NOR_NO_ERASE 0x02 /* No erase command needed */
570 /* SST -- large erase sizes are "overlays", "sectors" are 4K */
902 !nor->read_reg || !nor->write_reg || !nor->erase) {
[all...]
H A Dfsl-quadspi.c752 /* Send write enable, then erase commands. */
903 nor->erase = fsl_qspi_erase;
/drivers/acpi/apei/
H A Derst.c950 .erase = erst_clearer
/drivers/input/misc/
H A Duinput.c272 dev->ff->erase = uinput_dev_erase_effect;

Completed in 1555 milliseconds

12