Re: [PATCH net-next 2/6] net: hip04: use the big endian for tx and rx desc

Arnd Bergmann
2015-04-15T14:13:37Z

On Wednesday 15 April 2015 20:30:04 Ding Tianhong wrote:
> The hip04 ethernet use the big endian for tx and rx, so set desc to
> big endian and remove the unused next_addr.

I don't understand:

> diff --git a/drivers/net/ethernet/hisilicon/hip04_eth.c b/drivers/net/ethernet/hisilicon/hip04_eth.c
> index b0a7f03..6473462 100644
> --- a/drivers/net/ethernet/hisilicon/hip04_eth.c
> +++ b/drivers/net/ethernet/hisilicon/hip04_eth.c
> @@ -132,19 +132,18 @@
> #define HIP04_MIN_TX_COALESCE_FRAMES 1
>
> struct tx_desc {
> - u32 send_addr;
> - u32 send_size;
> - u32 next_addr;
> - u32 cfg;
> - u32 wb_addr;
> + __be32 send_addr;
> + __be32 send_size;
> + __be32 cfg;
> + __be32 wb_addr;
> } __aligned(64);

I would think this is a hardware structure, does this not break
access to the cfg and wb_addr fields if you remove next_addr?

Arnd