[Qemu-devel] [PATCH] PCI: PCIe access should always be little endian

Matt Redfearn posted 1 patch 6 years, 8 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/1502808257-17395-1-git-send-email-matt.redfearn@imgtec.com
Test FreeBSD passed
Test checkpatch passed
Test docker passed
Test s390x passed
hw/pci/pcie_host.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[Qemu-devel] [PATCH] PCI: PCIe access should always be little endian
Posted by Matt Redfearn 6 years, 8 months ago
PCIe busses are always little endian, so set the endianness of the
memory region to little endian rather than native such that operations
work as expected on big endian targets.

Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
---

 hw/pci/pcie_host.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/pci/pcie_host.c b/hw/pci/pcie_host.c
index dcebf57ed45e..553db56778b6 100644
--- a/hw/pci/pcie_host.c
+++ b/hw/pci/pcie_host.c
@@ -81,7 +81,7 @@ static uint64_t pcie_mmcfg_data_read(void *opaque,
 static const MemoryRegionOps pcie_mmcfg_ops = {
     .read = pcie_mmcfg_data_read,
     .write = pcie_mmcfg_data_write,
-    .endianness = DEVICE_NATIVE_ENDIAN,
+    .endianness = DEVICE_LITTLE_ENDIAN,
 };
 
 static void pcie_host_init(Object *obj)
-- 
2.7.4


Re: [Qemu-devel] [PATCH] PCI: PCIe access should always be little endian
Posted by Marcel Apfelbaum 6 years, 8 months ago
On 15/08/2017 17:44, Matt Redfearn wrote:
> PCIe busses are always little endian, so set the endianness of the
> memory region to little endian rather than native such that operations
> work as expected on big endian targets.
> 
> Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>


Hi Matt,
Thanks for the patch.

> ---
> 
>   hw/pci/pcie_host.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/hw/pci/pcie_host.c b/hw/pci/pcie_host.c
> index dcebf57ed45e..553db56778b6 100644
> --- a/hw/pci/pcie_host.c
> +++ b/hw/pci/pcie_host.c
> @@ -81,7 +81,7 @@ static uint64_t pcie_mmcfg_data_read(void *opaque,
>   static const MemoryRegionOps pcie_mmcfg_ops = {
>       .read = pcie_mmcfg_data_read,
>       .write = pcie_mmcfg_data_write,
> -    .endianness = DEVICE_NATIVE_ENDIAN,
> +    .endianness = DEVICE_LITTLE_ENDIAN,
>   };
>   
>   static void pcie_host_init(Object *obj)
> 


Reviewed-by: Marcel Apfelbaum <marcel@redhat.com>

Thanks,
Marcel

Re: [Qemu-devel] [PATCH] PCI: PCIe access should always be little endian
Posted by Matt Redfearn 6 years, 6 months ago
ping?


On 16/08/17 11:25, Marcel Apfelbaum wrote:
> On 15/08/2017 17:44, Matt Redfearn wrote:
>> PCIe busses are always little endian, so set the endianness of the
>> memory region to little endian rather than native such that operations
>> work as expected on big endian targets.
>>
>> Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
>
>
> Hi Matt,
> Thanks for the patch.
>
>> ---
>>
>>   hw/pci/pcie_host.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/hw/pci/pcie_host.c b/hw/pci/pcie_host.c
>> index dcebf57ed45e..553db56778b6 100644
>> --- a/hw/pci/pcie_host.c
>> +++ b/hw/pci/pcie_host.c
>> @@ -81,7 +81,7 @@ static uint64_t pcie_mmcfg_data_read(void *opaque,
>>   static const MemoryRegionOps pcie_mmcfg_ops = {
>>       .read = pcie_mmcfg_data_read,
>>       .write = pcie_mmcfg_data_write,
>> -    .endianness = DEVICE_NATIVE_ENDIAN,
>> +    .endianness = DEVICE_LITTLE_ENDIAN,
>>   };
>>     static void pcie_host_init(Object *obj)
>>
>
>
> Reviewed-by: Marcel Apfelbaum <marcel@redhat.com>
>
> Thanks,
> Marcel


Re: [Qemu-devel] [PATCH] PCI: PCIe access should always be little endian
Posted by Marcel Apfelbaum 6 years, 6 months ago
On 27/09/2017 11:27, Matt Redfearn wrote:
> ping?
> 

Hi Matt,

I think Michael is in PTO, he'll pick up
the patch as soon he is back.

Thanks,
Marcel

> 
> On 16/08/17 11:25, Marcel Apfelbaum wrote:
>> On 15/08/2017 17:44, Matt Redfearn wrote:
>>> PCIe busses are always little endian, so set the endianness of the
>>> memory region to little endian rather than native such that operations
>>> work as expected on big endian targets.
>>>
>>> Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
>>
>>
>> Hi Matt,
>> Thanks for the patch.
>>
>>> ---
>>>
>>>   hw/pci/pcie_host.c | 2 +-
>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/hw/pci/pcie_host.c b/hw/pci/pcie_host.c
>>> index dcebf57ed45e..553db56778b6 100644
>>> --- a/hw/pci/pcie_host.c
>>> +++ b/hw/pci/pcie_host.c
>>> @@ -81,7 +81,7 @@ static uint64_t pcie_mmcfg_data_read(void *opaque,
>>>   static const MemoryRegionOps pcie_mmcfg_ops = {
>>>       .read = pcie_mmcfg_data_read,
>>>       .write = pcie_mmcfg_data_write,
>>> -    .endianness = DEVICE_NATIVE_ENDIAN,
>>> +    .endianness = DEVICE_LITTLE_ENDIAN,
>>>   };
>>>     static void pcie_host_init(Object *obj)
>>>
>>
>>
>> Reviewed-by: Marcel Apfelbaum <marcel@redhat.com>
>>
>> Thanks,
>> Marcel
>