Re: [PATCH net-next] net: mana: Enable MANA driver on ARM64 with 4K page size

2024-05-13 Thread patchwork-bot+netdevbpf
Hello:

This patch was applied to netdev/net-next.git (main)
by Jakub Kicinski :

On Mon, 13 May 2024 13:29:01 -0700 you wrote:
> Change the Kconfig dependency, so this driver can be built and run on ARM64
> with 4K page size.
> 16/64K page sizes are not supported yet.
> 
> Signed-off-by: Haiyang Zhang 
> ---
>  drivers/net/ethernet/microsoft/Kconfig | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Here is the summary with links:
  - [net-next] net: mana: Enable MANA driver on ARM64 with 4K page size
https://git.kernel.org/netdev/net-next/c/40a1d11fc670

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html





Re: [PATCH net-next] net: mana: Enable MANA driver on ARM64 with 4K page size

2024-05-13 Thread Jakub Kicinski
On Mon, 13 May 2024 20:50:37 + Haiyang Zhang wrote:
> From the document, it can be:
> "ARM cores support both modes, but are most commonly used in, and typically 
> default to little-endian mode. Most Linux distributions for ARM tend to be 
> little-endian only." 
> https://developer.arm.com/documentation/den0042/a/Coding-for-Cortex-R-Processors/Endianness
> 
> MANA driver doesn't support big endian.

Alright, but please prioritize at least adding the 64k page support.
Linux drivers are supposed to be as platform independent as possible.
If you use the right APIs you shouldn't have to worry about the endian
or the page size.



RE: [PATCH net-next] net: mana: Enable MANA driver on ARM64 with 4K page size

2024-05-13 Thread Haiyang Zhang



> -Original Message-
> From: Jakub Kicinski 
> Sent: Monday, May 13, 2024 4:42 PM
> To: Haiyang Zhang 
> Cc: linux-hyperv@vger.kernel.org; net...@vger.kernel.org; Dexuan Cui
> ; step...@networkplumber.org; KY Srinivasan
> ; Paul Rosswurm ;
> o...@aepfle.de; vkuznets ; da...@davemloft.net;
> wei@kernel.org; eduma...@google.com; pab...@redhat.com;
> l...@kernel.org; Long Li ;
> ssen...@linux.microsoft.com; linux-r...@vger.kernel.org;
> dan...@iogearbox.net; john.fastab...@gmail.com; b...@vger.kernel.org;
> a...@kernel.org; h...@kernel.org; t...@linutronix.de;
> shradhagu...@linux.microsoft.com; linux-ker...@vger.kernel.org
> Subject: Re: [PATCH net-next] net: mana: Enable MANA driver on ARM64 with
> 4K page size
> 
> On Mon, 13 May 2024 13:29:01 -0700 Haiyang Zhang wrote:
> > -   depends on PCI_MSI && X86_64
> > +   depends on PCI_MSI
> > +   depends on X86_64 || (ARM64 && !CPU_BIG_ENDIAN && ARM64_4K_PAGES)
> 
> Can ARM64 be big endian?

>From the document, it can be:
"ARM cores support both modes, but are most commonly used in, and typically 
default to little-endian mode. Most Linux distributions for ARM tend to be 
little-endian only." 
https://developer.arm.com/documentation/den0042/a/Coding-for-Cortex-R-Processors/Endianness

MANA driver doesn't support big endian.

Thanks,
- Haiyang




Re: [PATCH net-next] net: mana: Enable MANA driver on ARM64 with 4K page size

2024-05-13 Thread Jakub Kicinski
On Mon, 13 May 2024 13:29:01 -0700 Haiyang Zhang wrote:
> - depends on PCI_MSI && X86_64
> + depends on PCI_MSI
> + depends on X86_64 || (ARM64 && !CPU_BIG_ENDIAN && ARM64_4K_PAGES)

Can ARM64 be big endian?



[PATCH net-next] net: mana: Enable MANA driver on ARM64 with 4K page size

2024-05-13 Thread Haiyang Zhang
Change the Kconfig dependency, so this driver can be built and run on ARM64
with 4K page size.
16/64K page sizes are not supported yet.

Signed-off-by: Haiyang Zhang 
---
 drivers/net/ethernet/microsoft/Kconfig | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/microsoft/Kconfig 
b/drivers/net/ethernet/microsoft/Kconfig
index 01eb7445ead9..286f0d5697a1 100644
--- a/drivers/net/ethernet/microsoft/Kconfig
+++ b/drivers/net/ethernet/microsoft/Kconfig
@@ -17,7 +17,8 @@ if NET_VENDOR_MICROSOFT
 
 config MICROSOFT_MANA
tristate "Microsoft Azure Network Adapter (MANA) support"
-   depends on PCI_MSI && X86_64
+   depends on PCI_MSI
+   depends on X86_64 || (ARM64 && !CPU_BIG_ENDIAN && ARM64_4K_PAGES)
depends on PCI_HYPERV
select AUXILIARY_BUS
select PAGE_POOL
-- 
2.34.1