Lines Matching refs:num
52 u_long base, num; member
111 static int add_interval(struct resource_map *map, u_long base, u_long num) in add_interval() argument
116 if ((p != map) && (p->base+p->num >= base)) { in add_interval()
117 p->num = max(num + base - p->base, p->num); in add_interval()
120 if ((p->next == map) || (p->next->base > base+num-1)) in add_interval()
128 q->base = base; q->num = num; in add_interval()
135 static int sub_interval(struct resource_map *map, u_long base, u_long num) in sub_interval() argument
143 if ((q->base+q->num > base) && (base+num > q->base)) { in sub_interval()
145 if (q->base+q->num <= base+num) { in sub_interval()
153 q->num = q->base + q->num - base - num; in sub_interval()
154 q->base = base + num; in sub_interval()
156 } else if (q->base+q->num <= base+num) { in sub_interval()
158 q->num = base - q->base; in sub_interval()
167 p->base = base+num; in sub_interval()
168 p->num = q->base+q->num - p->base; in sub_interval()
169 q->num = base - q->base; in sub_interval()
186 unsigned int num) in do_io_probe() argument
195 base, base+num-1); in do_io_probe()
205 for (i = base, most = 0; i < base+num; i += 8) { in do_io_probe()
222 for (i = base; i < base+num; i += 8) { in do_io_probe()
249 if ((num > 16) && (bad == base) && (i == base+num)) { in do_io_probe()
405 static int do_mem_probe(struct pcmcia_socket *s, u_long base, u_long num, in do_mem_probe() argument
417 base, base+num-1); in do_mem_probe()
419 step = (num < 0x20000) ? 0x2000 : ((num>>4) & ~0x1fff); in do_mem_probe()
426 for (i = j = base; i < base+num; i = j + step) { in do_mem_probe()
428 for (j = i; j < base+num; j += step) { in do_mem_probe()
432 fail = ((i == base) && (j == base+num)); in do_mem_probe()
435 for (j = i; j < base+num; j += step) in do_mem_probe()
448 return num - bad; in do_mem_probe()
468 sub_interval(&s_data->mem_db, m->base, m->num); in inv_probe()
473 return do_mem_probe(s, m->base, m->num, readable, checksum); in inv_probe()
508 if ((mm.base | mm.num) & 0xffff) { in validate_mem()
509 ok += do_mem_probe(s, mm.base, mm.num, readable, in validate_mem()
516 if ((b >= mm.base) && (b+0x10000 <= mm.base+mm.num)) { in validate_mem()
549 ok += do_mem_probe(s, mm.base, mm.num, readable, checksum); in validate_mem()
619 unsigned long map_end = m->base + m->num - 1; in pcmcia_align()
663 unsigned long end = m->base + m->num - 1; in __nonstatic_adjust_io_region()
688 unsigned long base, int num, in __nonstatic_find_io_region() argument
691 struct resource *res = pcmcia_make_resource(0, num, IORESOURCE_IO, in __nonstatic_find_io_region()
704 ret = pci_bus_alloc_resource(s->cb_dev->bus, res, num, 1, in __nonstatic_find_io_region()
708 ret = allocate_resource(&ioport_resource, res, num, min, ~0UL, in __nonstatic_find_io_region()
719 unsigned int *base, unsigned int num, in nonstatic_find_io() argument
752 *base, num, in nonstatic_find_io()
761 s->io[i].InUse = num; in nonstatic_find_io()
770 res->end + num); in nonstatic_find_io()
773 resource_size(res) + num); in nonstatic_find_io()
777 s->io[i].InUse += num; in nonstatic_find_io()
784 try = res->start - num; in nonstatic_find_io()
787 res->start - num, in nonstatic_find_io()
791 res->start - num, in nonstatic_find_io()
792 resource_size(res) + num); in nonstatic_find_io()
796 s->io[i].InUse += num; in nonstatic_find_io()
807 static struct resource *nonstatic_find_mem_region(u_long base, u_long num, in nonstatic_find_mem_region() argument
810 struct resource *res = pcmcia_make_resource(0, num, IORESOURCE_MEM, in nonstatic_find_mem_region()
836 res, num, 1, min, 0, in nonstatic_find_mem_region()
842 res, num, min, max, 1, in nonstatic_find_mem_region()
1087 ((unsigned long) p->base + p->num - 1));
1144 ((unsigned long) p->base + p->num - 1));
1153 ((unsigned long) p->base + p->num - 1));