Lines Matching refs:cis
270 struct cis_cache_entry *cis;
281 list_for_each_entry(cis, &s->cis_cache, node) {
282 if (cis->addr == addr && cis->len == len && cis->attr == attr) {
283 memcpy(ptr, cis->cache, len);
297 cis = kmalloc(sizeof(struct cis_cache_entry) + len, GFP_KERNEL);
298 if (cis) {
299 cis->addr = addr;
300 cis->len = len;
301 cis->attr = attr;
302 memcpy(cis->cache, ptr, len);
303 list_add(&cis->node, &s->cis_cache);
311 struct cis_cache_entry *cis;
313 list_for_each_entry(cis, &s->cis_cache, node)
314 if (cis->addr == addr && cis->len == len && cis->attr == attr) {
315 list_del(&cis->node);
316 kfree(cis);
326 struct cis_cache_entry *cis = list_entry(l, struct cis_cache_entry, node);
328 list_del(&cis->node);
329 kfree(cis);
349 struct cis_cache_entry *cis;
355 list_for_each_entry(cis, &s->cis_cache, node) {
356 int len = cis->len;
362 read_cb_mem(s, cis->attr, cis->addr, len, buf);
365 pcmcia_read_cis_mem(s, cis->attr, cis->addr, len, buf);
367 if (memcmp(buf, cis->cache, len) != 0) {
383 int pcmcia_replace_cis(struct pcmcia_socket *s, cisdump_t *cis)
387 if (cis->Length > CISTPL_MAX_CIS_SIZE)
389 s->fake_cis = kmalloc(cis->Length, GFP_KERNEL);
392 s->fake_cis_len = cis->Length;
393 memcpy(s->fake_cis, cis->Data, cis->Length);