Lines Matching refs:desc
113 static void partition_handle_irq(struct irq_desc *desc) in partition_handle_irq() argument
115 struct partition_desc *part = irq_desc_get_handler_data(desc); in partition_handle_irq()
116 struct irq_chip *chip = irq_desc_get_chip(desc); in partition_handle_irq()
120 chained_irq_enter(chip, desc); in partition_handle_irq()
128 handle_bad_irq(desc); in partition_handle_irq()
132 chained_irq_exit(chip, desc); in partition_handle_irq()
174 int partition_translate_id(struct partition_desc *desc, void *partition_id) in partition_translate_id() argument
179 for (i = 0; i < desc->nr_parts; i++) { in partition_translate_id()
180 if (desc->parts[i].partition_id == partition_id) { in partition_translate_id()
181 part = &desc->parts[i]; in partition_translate_id()
200 struct partition_desc *desc; in partition_create_desc() local
205 desc = kzalloc(sizeof(*desc), GFP_KERNEL); in partition_create_desc()
206 if (!desc) in partition_create_desc()
209 desc->ops = *ops; in partition_create_desc()
210 desc->ops.free = partition_domain_free; in partition_create_desc()
211 desc->ops.alloc = partition_domain_alloc; in partition_create_desc()
213 d = irq_domain_create_linear(fwnode, nr_parts, &desc->ops, desc); in partition_create_desc()
216 desc->domain = d; in partition_create_desc()
218 desc->bitmap = bitmap_zalloc(nr_parts, GFP_KERNEL); in partition_create_desc()
219 if (WARN_ON(!desc->bitmap)) in partition_create_desc()
222 desc->chained_desc = irq_to_desc(chained_irq); in partition_create_desc()
223 desc->nr_parts = nr_parts; in partition_create_desc()
224 desc->parts = parts; in partition_create_desc()
226 return desc; in partition_create_desc()
230 kfree(desc); in partition_create_desc()