Skip to content
  • Philippe Mathieu-Daudé's avatar
    faef3982
    hw/misc/allwinner-dramc: Do not use SysBus API to map local MMIO region · faef3982
    Philippe Mathieu-Daudé authored
    
    
    There is no point in exposing an internal MMIO region via
    SysBus and directly mapping it in the very same device.
    
    Just map it without using the SysBus API.
    
    Transformation done using the following coccinelle script:
    
      @@
      expression sbdev;
      expression index;
      expression addr;
      expression subregion;
      @@
      -    sysbus_init_mmio(sbdev, subregion);
           ... when != sbdev
      -    sysbus_mmio_map(sbdev, index, addr);
      +    memory_region_add_subregion(get_system_memory(),
      +                                addr, subregion);
    
      @@
      expression priority;
      @@
      -    sysbus_init_mmio(sbdev, subregion);
           ... when != sbdev
      -    sysbus_mmio_map_overlap(sbdev, index, addr, priority);
      +    memory_region_add_subregion_overlap(get_system_memory(),
      +                                        addr,
      +                                        subregion, priority);
    
    Signed-off-by: default avatarPhilippe Mathieu-Daudé <philmd@linaro.org>
    Reviewed-by: default avatarThomas Huth <thuth@redhat.com>
    Message-Id: <20231019071611.98885-5-philmd@linaro.org>
    faef3982
    hw/misc/allwinner-dramc: Do not use SysBus API to map local MMIO region
    Philippe Mathieu-Daudé authored
    
    
    There is no point in exposing an internal MMIO region via
    SysBus and directly mapping it in the very same device.
    
    Just map it without using the SysBus API.
    
    Transformation done using the following coccinelle script:
    
      @@
      expression sbdev;
      expression index;
      expression addr;
      expression subregion;
      @@
      -    sysbus_init_mmio(sbdev, subregion);
           ... when != sbdev
      -    sysbus_mmio_map(sbdev, index, addr);
      +    memory_region_add_subregion(get_system_memory(),
      +                                addr, subregion);
    
      @@
      expression priority;
      @@
      -    sysbus_init_mmio(sbdev, subregion);
           ... when != sbdev
      -    sysbus_mmio_map_overlap(sbdev, index, addr, priority);
      +    memory_region_add_subregion_overlap(get_system_memory(),
      +                                        addr,
      +                                        subregion, priority);
    
    Signed-off-by: default avatarPhilippe Mathieu-Daudé <philmd@linaro.org>
    Reviewed-by: default avatarThomas Huth <thuth@redhat.com>
    Message-Id: <20231019071611.98885-5-philmd@linaro.org>
Loading