Lines Matching refs:cis
289 struct cis_cache_entry *cis; in read_cis_cache() local
307 list_for_each_entry(cis, &s->cis_cache, node) { in read_cis_cache()
308 if (cis->addr == addr && cis->len == len && cis->attr == attr) { in read_cis_cache()
309 memcpy(ptr, cis->cache, len); in read_cis_cache()
319 cis = kmalloc(sizeof(struct cis_cache_entry) + len, GFP_KERNEL); in read_cis_cache()
320 if (cis) { in read_cis_cache()
321 cis->addr = addr; in read_cis_cache()
322 cis->len = len; in read_cis_cache()
323 cis->attr = attr; in read_cis_cache()
324 memcpy(cis->cache, ptr, len); in read_cis_cache()
325 list_add(&cis->node, &s->cis_cache); in read_cis_cache()
336 struct cis_cache_entry *cis; in remove_cis_cache() local
339 list_for_each_entry(cis, &s->cis_cache, node) in remove_cis_cache()
340 if (cis->addr == addr && cis->len == len && cis->attr == attr) { in remove_cis_cache()
341 list_del(&cis->node); in remove_cis_cache()
342 kfree(cis); in remove_cis_cache()
358 struct cis_cache_entry *cis; in destroy_cis_cache() local
361 cis = list_entry(l, struct cis_cache_entry, node); in destroy_cis_cache()
362 list_del(&cis->node); in destroy_cis_cache()
363 kfree(cis); in destroy_cis_cache()
372 struct cis_cache_entry *cis; in verify_cis_cache() local
385 list_for_each_entry(cis, &s->cis_cache, node) { in verify_cis_cache()
386 int len = cis->len; in verify_cis_cache()
391 ret = pcmcia_read_cis_mem(s, cis->attr, cis->addr, len, buf); in verify_cis_cache()
392 if (ret || memcmp(buf, cis->cache, len) != 0) { in verify_cis_cache()