Lines Matching refs:res

27 	struct resource *res = pnp_get_resource(dev, type, bar);  in pnp_find_resource()  local
30 if (res) { in pnp_find_resource()
31 res->flags &= ~IORESOURCE_BITS; in pnp_find_resource()
32 res->flags |= rule & IORESOURCE_BITS; in pnp_find_resource()
35 return res; in pnp_find_resource()
40 struct resource *res, local_res; in pnp_assign_port() local
42 res = pnp_find_resource(dev, rule->flags, IORESOURCE_IO, idx); in pnp_assign_port()
43 if (res) { in pnp_assign_port()
45 "flags %#lx\n", idx, (unsigned long long) res->start, in pnp_assign_port()
46 (unsigned long long) res->end, res->flags); in pnp_assign_port()
50 res = &local_res; in pnp_assign_port()
51 res->flags = rule->flags | IORESOURCE_AUTO; in pnp_assign_port()
52 res->start = 0; in pnp_assign_port()
53 res->end = 0; in pnp_assign_port()
56 res->flags |= IORESOURCE_DISABLED; in pnp_assign_port()
61 res->start = rule->min; in pnp_assign_port()
62 res->end = res->start + rule->size - 1; in pnp_assign_port()
64 while (!pnp_check_port(dev, res)) { in pnp_assign_port()
65 res->start += rule->align; in pnp_assign_port()
66 res->end = res->start + rule->size - 1; in pnp_assign_port()
67 if (res->start > rule->max || !rule->align) { in pnp_assign_port()
77 pnp_add_io_resource(dev, res->start, res->end, res->flags); in pnp_assign_port()
83 struct resource *res, local_res; in pnp_assign_mem() local
85 res = pnp_find_resource(dev, rule->flags, IORESOURCE_MEM, idx); in pnp_assign_mem()
86 if (res) { in pnp_assign_mem()
88 "flags %#lx\n", idx, (unsigned long long) res->start, in pnp_assign_mem()
89 (unsigned long long) res->end, res->flags); in pnp_assign_mem()
93 res = &local_res; in pnp_assign_mem()
94 res->flags = rule->flags | IORESOURCE_AUTO; in pnp_assign_mem()
95 res->start = 0; in pnp_assign_mem()
96 res->end = 0; in pnp_assign_mem()
100 res->flags |= IORESOURCE_READONLY; in pnp_assign_mem()
102 res->flags |= IORESOURCE_RANGELENGTH; in pnp_assign_mem()
104 res->flags |= IORESOURCE_SHADOWABLE; in pnp_assign_mem()
107 res->flags |= IORESOURCE_DISABLED; in pnp_assign_mem()
112 res->start = rule->min; in pnp_assign_mem()
113 res->end = res->start + rule->size - 1; in pnp_assign_mem()
115 while (!pnp_check_mem(dev, res)) { in pnp_assign_mem()
116 res->start += rule->align; in pnp_assign_mem()
117 res->end = res->start + rule->size - 1; in pnp_assign_mem()
118 if (res->start > rule->max || !rule->align) { in pnp_assign_mem()
128 pnp_add_mem_resource(dev, res->start, res->end, res->flags); in pnp_assign_mem()
134 struct resource *res, local_res; in pnp_assign_irq() local
142 res = pnp_find_resource(dev, rule->flags, IORESOURCE_IRQ, idx); in pnp_assign_irq()
143 if (res) { in pnp_assign_irq()
145 idx, (int) res->start, res->flags); in pnp_assign_irq()
149 res = &local_res; in pnp_assign_irq()
150 res->flags = rule->flags | IORESOURCE_AUTO; in pnp_assign_irq()
151 res->start = -1; in pnp_assign_irq()
152 res->end = -1; in pnp_assign_irq()
155 res->flags |= IORESOURCE_DISABLED; in pnp_assign_irq()
161 res->start = find_next_bit(rule->map.bits, PNP_IRQ_NR, 16); in pnp_assign_irq()
162 if (res->start < PNP_IRQ_NR) { in pnp_assign_irq()
163 res->end = res->start; in pnp_assign_irq()
168 res->start = res->end = xtab[i]; in pnp_assign_irq()
169 if (pnp_check_irq(dev, res)) in pnp_assign_irq()
175 res->start = -1; in pnp_assign_irq()
176 res->end = -1; in pnp_assign_irq()
177 res->flags |= IORESOURCE_DISABLED; in pnp_assign_irq()
186 pnp_add_irq_resource(dev, res->start, res->flags); in pnp_assign_irq()
193 struct resource *res, local_res; in pnp_assign_dma() local
201 res = pnp_find_resource(dev, rule->flags, IORESOURCE_DMA, idx); in pnp_assign_dma()
202 if (res) { in pnp_assign_dma()
204 idx, (int) res->start, res->flags); in pnp_assign_dma()
208 res = &local_res; in pnp_assign_dma()
209 res->flags = rule->flags | IORESOURCE_AUTO; in pnp_assign_dma()
210 res->start = -1; in pnp_assign_dma()
211 res->end = -1; in pnp_assign_dma()
214 res->flags |= IORESOURCE_DISABLED; in pnp_assign_dma()
221 res->start = res->end = xtab[i]; in pnp_assign_dma()
222 if (pnp_check_dma(dev, res)) in pnp_assign_dma()
231 pnp_add_dma_resource(dev, res->start, res->flags); in pnp_assign_dma()
246 if (pnp_res->res.flags & IORESOURCE_AUTO) in pnp_clean_resource_table()