Lines Matching refs:chip

113 	struct sim_chip *chip;  in nandsim_attach()  local
126 chip = params->chips[i]; in nandsim_attach()
127 if (chip && chip->device_id != 0) { in nandsim_attach()
128 sc->chips[i] = nandsim_chip_init(sc, i, chip); in nandsim_attach()
129 if (chip->features & ONFI_FEAT_16BIT) in nandsim_attach()
188 struct nandsim_chip *chip; in nandsim_send_command() local
192 chip = sc->active_chip; in nandsim_send_command()
194 if (chip == NULL) in nandsim_send_command()
197 nandsim_log(chip, NANDSIM_LOG_EV, "Send command %x\n", command); in nandsim_send_command()
217 chip->flags |= NANDSIM_CHIP_GET_STATUS; in nandsim_send_command()
219 ev = create_event(chip, NANDSIM_EV_CMD, 1); in nandsim_send_command()
232 struct nandsim_chip *chip; in nandsim_send_address() local
235 chip = sc->active_chip; in nandsim_send_address()
237 if (chip == NULL) in nandsim_send_address()
241 nandsim_log(chip, NANDSIM_LOG_EV, "Send addr %x\n", addr); in nandsim_send_address()
243 ev = create_event(chip, NANDSIM_EV_ADDR, 1); in nandsim_send_address()
255 struct nandsim_chip *chip; in nandsim_read_byte() local
259 chip = sc->active_chip; in nandsim_read_byte()
261 if (chip && !(chip->flags & NANDSIM_CHIP_FROZEN)) { in nandsim_read_byte()
262 if (chip->flags & NANDSIM_CHIP_GET_STATUS) { in nandsim_read_byte()
263 nandsim_chip_timeout(chip); in nandsim_read_byte()
264 ret = nandchip_get_status(chip); in nandsim_read_byte()
265 chip->flags &= ~NANDSIM_CHIP_GET_STATUS; in nandsim_read_byte()
266 } else if (chip->data.index < chip->data.size) { in nandsim_read_byte()
267 ret = chip->data.data_ptr[chip->data.index++]; in nandsim_read_byte()
268 byte_corrupt(chip, &ret); in nandsim_read_byte()
270 nandsim_log(chip, NANDSIM_LOG_DATA, "read %02x\n", ret); in nandsim_read_byte()
280 struct nandsim_chip *chip; in nandsim_read_word() local
286 chip = sc->active_chip; in nandsim_read_word()
288 if (chip && !(chip->flags & NANDSIM_CHIP_FROZEN)) { in nandsim_read_word()
289 if (chip->data.index < chip->data.size - 1) { in nandsim_read_word()
291 (uint16_t *)&(chip->data.data_ptr[chip->data.index]); in nandsim_read_word()
293 chip->data.index += 2; in nandsim_read_word()
294 byte_corrupt(chip, byte_ret); in nandsim_read_word()
295 byte_corrupt(chip, byte_ret + 1); in nandsim_read_word()
297 nandsim_log(chip, NANDSIM_LOG_DATA, "read %04x\n", ret); in nandsim_read_word()
307 struct nandsim_chip *chip; in nandsim_write_byte() local
310 chip = sc->active_chip; in nandsim_write_byte()
312 if (chip && !(chip->flags & NANDSIM_CHIP_FROZEN) && in nandsim_write_byte()
313 (chip->data.index < chip->data.size)) { in nandsim_write_byte()
314 byte_corrupt(chip, &byte); in nandsim_write_byte()
315 chip->data.data_ptr[chip->data.index] &= byte; in nandsim_write_byte()
316 chip->data.index++; in nandsim_write_byte()
317 nandsim_log(chip, NANDSIM_LOG_DATA, "write %02x\n", byte); in nandsim_write_byte()
325 struct nandsim_chip *chip; in nandsim_write_word() local
330 chip = sc->active_chip; in nandsim_write_word()
332 if (chip && !(chip->flags & NANDSIM_CHIP_FROZEN)) { in nandsim_write_word()
333 if ((chip->data.index + 1) < chip->data.size) { in nandsim_write_word()
334 byte_corrupt(chip, byte_ptr); in nandsim_write_word()
335 byte_corrupt(chip, byte_ptr + 1); in nandsim_write_word()
337 (uint16_t *)&(chip->data.data_ptr[chip->data.index]); in nandsim_write_word()
339 chip->data.index += 2; in nandsim_write_word()
342 nandsim_log(chip, NANDSIM_LOG_DATA, "write %04x\n", word); in nandsim_write_word()
385 byte_corrupt(struct nandsim_chip *chip, uint8_t *byte) in byte_corrupt() argument
391 if ((rand % 1000000) < chip->error_ratio) { in byte_corrupt()