Lines Matching refs:ioh
69 static int probe_cfi(bus_space_tag_t iot, bus_space_handle_t ioh);
149 probe_cfi(bus_space_tag_t iot, bus_space_handle_t ioh)
157 bus_space_write_2(iot, ioh, CFI_QUERY_OFFSET, CFI_READ_CFI_QUERY);
162 if (bus_space_read_2(iot, ioh, i) != *idstr) {
163 bus_space_write_2(iot, ioh, 0, FLASH_RESET);
170 cmdset0 = bus_space_read_2(iot, ioh, CFI_PRIM_COMM_REG0 << 1);
171 cmdset1 = bus_space_read_2(iot, ioh, CFI_PRIM_COMM_REG1 << 1);
174 bus_space_write_2(iot, ioh, 0, FLASH_RESET);
186 bus_space_handle_t ioh;
188 if (bus_space_map(va->va_iot, va->va_addr, va->va_size, 0, &ioh))
190 if (!probe_cfi(va->va_iot, ioh)) {
194 if (!i28f128_probe(va->va_iot, ioh)) {
198 if (!mbm29160_probe(va->va_iot, ioh)) {
205 bus_space_unmap(va->va_iot, ioh, va->va_size);
217 bus_space_handle_t ioh;
220 if (bus_space_map(iot, va->va_addr, va->va_size, 0, &ioh)) {
226 sc->sc_ioh = ioh;
233 bus_space_write_2(iot, ioh, CFI_QUERY_OFFSET, CFI_READ_CFI_QUERY);
235 sc->sc_cfi_raw[i] = bus_space_read_2(iot, ioh, i << 1);
237 bus_space_write_2(iot, ioh, 0, FLASH_RESET);
345 bus_space_handle_t ioh;
353 ioh = sc->sc_ioh;
360 bus_space_read_region_1(iot, ioh, off, sc->sc_buf, count);
411 i28f128_probe(bus_space_tag_t iot, bus_space_handle_t ioh)
428 bus_space_write_2(iot, ioh, 0, CFI_READ_CFI_QUERY);
431 if (bus_space_read_2(iot, ioh, (0x10 + i) << 1) != idstr[i])
436 if (bus_space_read_2(iot, ioh, 0x00) != vendor_code[0])
438 if (bus_space_read_2(iot, ioh, 0x02) != vendor_code[1])
441 bus_space_write_2(iot, ioh, 0, I28F128_RESET);
450 mbm29160_probe(bus_space_tag_t iot, bus_space_handle_t ioh)
467 bus_space_write_2(iot, ioh, 0xaa, CFI_READ_CFI_QUERY);
470 if (bus_space_read_2(iot, ioh, (0x10 + i) << 1) != idstr[i])
474 bus_space_write_2(iot, ioh, 0, 0xff);
477 bus_space_write_2(iot, ioh, 0x555 << 1, 0xaa);
478 bus_space_write_2(iot, ioh, 0x2aa << 1, 0x55);
479 bus_space_write_2(iot, ioh, 0x555 << 1, 0x90);
480 if (bus_space_read_2(iot, ioh, 0x00) != vendor_code[0])
482 if (bus_space_read_2(iot, ioh, 0x02) != vendor_code[1])
485 bus_space_write_2(iot, ioh, 0, 0xff);
493 bus_space_handle_t ioh = sc->sc_ioh;
498 if (bus_space_read_1(iot, ioh, offset++) != *p++)
508 bus_space_handle_t ioh = sc->sc_ioh;
512 bus_space_write_2(iot, ioh, offset, I28F128_BLK_ERASE_1ST);
513 bus_space_write_2(iot, ioh, offset, I28F128_BLK_ERASE_2ND);
519 if ((status = bus_space_read_2(iot, ioh, offset))
526 bus_space_write_2(iot, ioh, offset, I28F128_CLEAR_STATUS);
527 bus_space_write_2(iot, ioh, offset, I28F128_RESET);
540 bus_space_handle_t ioh = sc->sc_ioh;
556 bus_space_write_2(iot, ioh, offset,
558 status = bus_space_read_2(iot, ioh, offset);
568 bus_space_write_2(iot, ioh, offset, wbuf_size - 1);
571 bus_space_write_2(iot, ioh, offset, *p);
573 bus_space_write_2(iot, ioh, offset, I28F128_WBUF_CONFIRM);
576 bus_space_write_2(iot, ioh, offset,
578 status = bus_space_read_2(iot, ioh, offset);
583 bus_space_write_2(iot, ioh, offset, I28F128_CLEAR_STATUS);
584 bus_space_write_2(iot, ioh, offset, I28F128_RESET);
589 bus_space_write_2(iot, ioh, offset, I28F128_CLEAR_STATUS);
590 bus_space_write_2(iot, ioh, offset, I28F128_RESET);
605 bus_space_handle_t ioh = sc->sc_ioh;
610 bus_space_write_2(iot, ioh,
612 bus_space_write_2(iot, ioh,
614 bus_space_write_2(iot, ioh,
616 bus_space_write_2(iot, ioh,
618 bus_space_write_2(iot, ioh,
620 bus_space_write_2(iot, ioh, offset, MBM29LV160_ESECT_CMD5);
625 if (bus_space_read_2(iot, ioh, offset) == 0xffff)
654 bus_space_handle_t ioh = sc->sc_ioh;
661 bus_space_write_2(iot, ioh,
663 bus_space_write_2(iot, ioh,
665 bus_space_write_2(iot, ioh,
667 devcode = bus_space_read_2(iot, ioh, MBM29LV160_DEVCODE_REG);
698 bus_space_handle_t ioh = sc->sc_ioh;
706 bus_space_write_2(iot, ioh,
709 bus_space_write_2(iot, ioh,
712 bus_space_write_2(iot, ioh,
715 bus_space_write_2(iot, ioh, offset, *p);
718 if (bus_space_read_2(iot, ioh, offset) == *p)