sysbus: Expose MMIO enumeration helper
Sysbus devices have a range of MMIO regions they expose. The exact number of regions is device specific and internal information to the device model. Expose whether a region exists via a public interface. That way our platform bus enumeration code can dynamically determine how many regions exist. Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
		
							parent
							
								
									b797318666
								
							
						
					
					
						commit
						471a9bc144
					
				| @ -110,6 +110,12 @@ void sysbus_connect_irq(SysBusDevice *dev, int n, qemu_irq irq) | ||||
|     qdev_connect_gpio_out_named(DEVICE(dev), SYSBUS_DEVICE_GPIO_IRQ, n, irq); | ||||
| } | ||||
| 
 | ||||
| /* Check whether an MMIO region exists */ | ||||
| bool sysbus_has_mmio(SysBusDevice *dev, unsigned int n) | ||||
| { | ||||
|     return (n < dev->num_mmio); | ||||
| } | ||||
| 
 | ||||
| static void sysbus_mmio_map_common(SysBusDevice *dev, int n, hwaddr addr, | ||||
|                                    bool may_overlap, int priority) | ||||
| { | ||||
|  | ||||
| @ -67,6 +67,7 @@ void sysbus_init_ioports(SysBusDevice *dev, pio_addr_t ioport, pio_addr_t size); | ||||
| 
 | ||||
| 
 | ||||
| bool sysbus_has_irq(SysBusDevice *dev, int n); | ||||
| bool sysbus_has_mmio(SysBusDevice *dev, unsigned int n); | ||||
| void sysbus_connect_irq(SysBusDevice *dev, int n, qemu_irq irq); | ||||
| bool sysbus_is_irq_connected(SysBusDevice *dev, int n); | ||||
| qemu_irq sysbus_get_connected_irq(SysBusDevice *dev, int n); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Alexander Graf
						Alexander Graf