Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751263AbcCLFXr (ORCPT ); Sat, 12 Mar 2016 00:23:47 -0500 Received: from smtprelay.synopsys.com ([198.182.47.9]:54709 "EHLO smtprelay.synopsys.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750895AbcCLFXo (ORCPT ); Sat, 12 Mar 2016 00:23:44 -0500 Subject: Re: [PATCH V3] net: ezchip: adapt driver to little endian architecture To: References: <1457014066-27651-1-git-send-email-ltrimas@synopsys.com> <20160303.172043.676796529681577242.davem@davemloft.net> CC: David Miller , , , , , , , arcml Newsgroups: gmane.linux.kernel From: Vineet Gupta Message-ID: <56E3A7CB.2020001@synopsys.com> Date: Sat, 12 Mar 2016 10:53:23 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <20160303.172043.676796529681577242.davem@davemloft.net> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.12.197.157] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1534 Lines: 37 On Friday 04 March 2016 03:50 AM, David Miller wrote: > From: Lada Trimasova > Date: Thu, 3 Mar 2016 17:07:46 +0300 > >> Since ezchip network driver is written with big endian EZChip platform it >> is necessary to add support for little endian architecture. >> >> The first issue is that the order of the bits in a bit field is >> implementation specific. So all the bit fields are removed. >> Named constants are used to access necessary fields. >> >> And the second one is that network byte order is big endian. >> For example, data on ethernet is transmitted with most-significant >> octet (byte) first. So in case of little endian architecture >> it is important to swap data byte order when we read it from >> register. In case of unaligned access we can use "get_unaligned_be32" >> and in other case we can use function "ioread32_rep" which reads all >> data from register and works either with little endian or big endian >> architecture. >> >> And then when we are going to write data to register we need to restore >> byte order using the function "put_unaligned_be32" in case of >> unaligned access and in other case "iowrite32_rep". >> >> The last little fix is a space between type and pointer to observe >> coding style. >> >> Signed-off-by: Lada Trimasova > > Applied to net-next, thanks. > @Lada, could you provide the corresponding arch/arc/{boot/dts,configs}/ updates so we can switch over to this device-model/driver for OSCI platform for 4.6. Thx, -Vineet