def create_firmware_update_payload(device_info: dict, compliance_data_list: list) -> list:
    """
    Creates the payload to send to OME to execute the firmware update

    Args:
        device_info: A dictionary of dictionaries containing the type information for each device
        compliance_data_list: A list of dictionaries containing the firmware changes which need to be made on each
                              device

    Returns: A list of dictionaries representing the payload for each device
    """
    target_list = []
    for data in compliance_data_list:
        target_list.append({'Id': data['Id'],
                            'TargetType': device_info[data['Id']],
                            'Data': data['Data']})
    return target_list