From patchwork Wed May 29 06:10:37 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rajeshwari Shinde X-Patchwork-Id: 17256 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-qa0-f72.google.com (mail-qa0-f72.google.com [209.85.216.72]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 876AF25E45 for ; Wed, 29 May 2013 06:07:54 +0000 (UTC) Received: by mail-qa0-f72.google.com with SMTP id bs12sf4913167qab.3 for ; Tue, 28 May 2013 23:07:54 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-beenthere:x-forwarded-to:x-forwarded-for :delivered-to:x-auditid:from:to:cc:subject:date:message-id:x-mailer :in-reply-to:references:x-brightmail-tracker:x-brightmail-tracker :dlp-filter:x-mtr:x-cfilter-loop:x-gm-message-state :x-original-sender:x-original-authentication-results:precedence :mailing-list:list-id:x-google-group-id:list-post:list-help :list-archive:list-unsubscribe; bh=S78GIPNqVysYtCKxBHyhXBmr/Wvgw2P7CAfyH1lf548=; b=IDqIB90lLEQy9vo9pvAel/+L+PBC2d0vM2jlw1BNVYjQ1pbwNN8RkyGzdp4qyql1Yq bJGrrU0NQ/CWfeLSTdKj1JB6PUb1OAtr0eDD2ei4gw8lq+/Yir1v3IkgNH5AAl1ksJti wcFoCHJ7REH1/2xdFlAiYLg3+ATzd23aKWtqEFHoozycyHAraGxComm+2Q0bmohfwK64 64icH1LLlC41Ss9RLUa8FjYYmZMJZ+LNxYArR3K9gI65IjiwmhIdebImpuHCFCPZvlEA y1UMyM78rn8ZIcW/5CTZdb3pFELR0SWYd4+Czqq866/YabpNWVcH6nf2A3c78f6vaTGc ZJdw== X-Received: by 10.224.36.66 with SMTP id s2mr1007994qad.6.1369807674234; Tue, 28 May 2013 23:07:54 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: patchwork-forward@linaro.org Received: by 10.49.29.3 with SMTP id f3ls3496452qeh.83.gmail; Tue, 28 May 2013 23:07:54 -0700 (PDT) X-Received: by 10.220.188.201 with SMTP id db9mr679481vcb.30.1369807674052; Tue, 28 May 2013 23:07:54 -0700 (PDT) Received: from mail-vb0-x235.google.com (mail-vb0-x235.google.com [2607:f8b0:400c:c02::235]) by mx.google.com with ESMTPS id bs2si20757053veb.14.2013.05.28.23.07.54 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 28 May 2013 23:07:54 -0700 (PDT) Received-SPF: neutral (google.com: 2607:f8b0:400c:c02::235 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) client-ip=2607:f8b0:400c:c02::235; Received: by mail-vb0-f53.google.com with SMTP id p13so4703509vbe.12 for ; Tue, 28 May 2013 23:07:54 -0700 (PDT) X-Received: by 10.58.90.5 with SMTP id bs5mr613303veb.60.1369807673943; Tue, 28 May 2013 23:07:53 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patches@linaro.org Received: by 10.220.229.199 with SMTP id jj7csp70792vcb; Tue, 28 May 2013 23:07:53 -0700 (PDT) X-Received: by 10.66.197.202 with SMTP id iw10mr1793522pac.178.1369807672869; Tue, 28 May 2013 23:07:52 -0700 (PDT) Received: from mailout2.samsung.com (mailout2.samsung.com. [203.254.224.25]) by mx.google.com with ESMTP id qo10si25342628pbc.328.2013.05.28.23.07.52 for ; Tue, 28 May 2013 23:07:52 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of rajeshwari.s@samsung.com designates 203.254.224.25 as permitted sender) client-ip=203.254.224.25; Received: from epcpsbgr5.samsung.com (u145.gpu120.samsung.co.kr [203.254.230.145]) by mailout2.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MNJ003U9QD3SEM0@mailout2.samsung.com> for patches@linaro.org; Wed, 29 May 2013 15:07:51 +0900 (KST) Received: from epcpsbgm2.samsung.com ( [172.20.52.125]) by epcpsbgr5.samsung.com (EPCPMTA) with SMTP id B8.9F.11618.73B95A15; Wed, 29 May 2013 15:07:51 +0900 (KST) X-AuditID: cbfee691-b7fef6d000002d62-51-51a59b37e67b Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id A4.91.21068.73B95A15; Wed, 29 May 2013 15:07:51 +0900 (KST) Received: from rajeshwari-linux.sisodomain.com ([107.108.215.115]) by mmp2.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0MNJ003MUQCWQD30@mmp2.samsung.com>; Wed, 29 May 2013 15:07:50 +0900 (KST) From: Rajeshwari Shinde To: u-boot@lists.denx.de Cc: patches@linaro.org, sjg@chromium.org, mk7.kang@samsung.com, u-boot-review@google.com, jagannadh.teki@gmail.com Subject: [PATCH 1/2 V5] spi: Add support for preamble bytes Date: Wed, 29 May 2013 11:40:37 +0530 Message-id: <1369807838-18683-2-git-send-email-rajeshwari.s@samsung.com> X-Mailer: git-send-email 1.7.4.4 In-reply-to: <1369807838-18683-1-git-send-email-rajeshwari.s@samsung.com> References: <1369807838-18683-1-git-send-email-rajeshwari.s@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrKLMWRmVeSWpSXmKPExsWyRsSkVtd89tJAg9s7BC12bW1hteg40sJo MeXwFxaLb1u2MVosf72R3eLt3k52BzaP2Q0XWTx2zrrL7rFgU6nHnWt72DzO3tnB6NG3ZRVj AFsUl01Kak5mWWqRvl0CV0bngs1sBU18Fc9msTcwTufuYuTkkBAwkThw9xcLhC0mceHeerYu Ri4OIYGljBJnD3exwRQ9mtIEZgsJTGeUmDWVEaJoIpPElxs7WEESbAJGEltPTmMEsUUEJCR+ 9V8Fs5kFSiRmnT4GZgsLWEvc3d7CDGKzCKhKzH94GCzOK+AhseLpA1aIZQoSx6Z+BbM5BTwl ln9ZzA6x2EPi1oo3TCCLJQSms0tc2g+RYBEQkPg2+RDQCxxACVmJTQeYIeZIShxccYNlAqPw AkaGVYyiqQXJBcVJ6UWmesWJucWleel6yfm5mxiBQX7637OJOxjvH7A+xJgMNG4is5Rocj4w SvJK4g2NzYwsTE1MjY3MLc1IE1YS51VvsQ4UEkhPLEnNTk0tSC2KLyrNSS0+xMjEwSnVwBjT FL3l+Zxtn6er/1hof3jWxts3suy8Lc3D7BIKFsmfXClQJe+941xecuykgLfhK5ibLHl/eb9f N/n9JPns2hseK5ZoCP9xZTx5YI+6qFfM7lc6bJcX52ecXxDB9K1uY+tq10bGNiH9XQyVdRJX bk2K0i24t1CYYfV9mdWis820DwfPZnkwNVqJpTgj0VCLuag4EQC9NVQviAIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrEIsWRmVeSWpSXmKPExsVy+t9jQV3z2UsDDRqec1js2trCatFxpIXR YsrhLywW37ZsY7RY/noju8XbvZ3sDmwesxsusnjsnHWX3WPBplKPO9f2sHmcvbOD0aNvyyrG ALaoBkabjNTElNQihdS85PyUzLx0WyXv4HjneFMzA0NdQ0sLcyWFvMTcVFslF58AXbfMHKA7 lBTKEnNKgUIBicXFSvp2mCaEhrjpWsA0Ruj6hgTB9RgZoIGENYwZnQs2sxU08VU8m8XewDid u4uRk0NCwETi0ZQmNghbTOLCvfVgtpDAdEaJWVMZuxi5gOyJTBJfbuxgBUmwCRhJbD05jRHE FhGQkPjVfxXMZhYokZh1+hiYLSxgLXF3ewsziM0ioCox/+FhsDivgIfEiqcPWCGWKUgcm/oV zOYU8JRY/mUxO8RiD4lbK94wTWDkXcDIsIpRNLUguaA4KT3XSK84Mbe4NC9dLzk/dxMjOIae Se9gXNVgcYhRgINRiYc34OuSQCHWxLLiytxDjBIczEoivKmCSwOFeFMSK6tSi/Lji0pzUosP MSYDXTWRWUo0OR8Y33kl8YbGJuamxqaWJhYmZpakCSuJ8x5stQ4UEkhPLEnNTk0tSC2C2cLE wSnVwDjti5XVbMOVmxj5103f8sS7vnNK/NFjivVT4vaeUpESX9lQHPB2xu2DLqXfgm40Hc5K fycT+e5NUrjwnk/a64vnlZ86nWdicdSpvl+IYfXk27v05s94ON8o73VS4n5b846of//rvqWG v1/I5fnsu/dJ+0vL3QKO3rnr2PfZfYf+SeYi6VczngcosRRnJBpqMRcVJwIARYBBfuUCAAA= DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected X-Gm-Message-State: ALoCoQnVhVudhxPvF+NZ6caBLtttlpjrCFnKG0Lzjyqpqrg1eg7rCGpkNB2+x9O+LFMKJjd7RZId X-Original-Sender: rajeshwari.s@samsung.com X-Original-Authentication-Results: mx.google.com; spf=neutral (google.com: 2607:f8b0:400c:c02::235 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Precedence: list Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org List-ID: X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , A SPI slave may take time to react to a request. For SPI flash devices this time is defined as one bit time, or a whole byte for 'fast read' mode. If the SPI slave is another CPU, then the time it takes to react may vary. It is convenient to allow the slave device to tag the start of the actual reply so that the host can determine when this 'preamble' finishes and the actual message starts. Add a preamble flag to the available SPI flags. If supported by the driver then it will ignore any received bytes before the preamble on each transaction. This ensures that reliable communication with the slave is possible. Signed-off-by: Simon Glass Signed-off-by: Rajeshwari Shinde Reviewed-by: Jagannadha Sutradharudu Teki --- Changes in V2: - None Changes in V3: - None. Changes in V4: - None. Changes in V5: - In commit message header changed SPI to spi. include/spi.h | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/include/spi.h b/include/spi.h index 3fe2e1e..1638b50 100644 --- a/include/spi.h +++ b/include/spi.h @@ -37,11 +37,16 @@ #define SPI_LSB_FIRST 0x08 /* per-word bits-on-wire */ #define SPI_3WIRE 0x10 /* SI/SO signals shared */ #define SPI_LOOP 0x20 /* loopback mode */ +#define SPI_SLAVE 0x40 /* slave mode */ +#define SPI_PREAMBLE 0x80 /* Skip preamble bytes */ /* SPI transfer flags */ #define SPI_XFER_BEGIN 0x01 /* Assert CS before transfer */ #define SPI_XFER_END 0x02 /* Deassert CS after transfer */ +/* Header byte that marks the start of the message */ +#define SPI_PREAMBLE_END_BYTE 0xec + /*----------------------------------------------------------------------- * Representation of a SPI slave, i.e. what we're communicating with. *