From mboxrd@z Thu Jan 1 00:00:00 1970 From: Damien Riegel Subject: [PATCH v2 0/3] can: sja1000: support for technologic version Date: Thu, 24 Dec 2015 12:42:50 -0500 Message-ID: <1450978973-30417-1-git-send-email-damien.riegel@savoirfairelinux.com> Return-path: Received: from mail.savoirfairelinux.com ([208.88.110.44]:44673 "EHLO mail.savoirfairelinux.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753748AbbLXRnF (ORCPT ); Thu, 24 Dec 2015 12:43:05 -0500 Sender: linux-can-owner@vger.kernel.org List-ID: To: linux-kernel@vger.kernel.org, netdev@vger.kernel.org, linux-can@vger.kernel.org Cc: Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Wolfgang Grandegger , Marc Kleine-Budde , kernel@savoirfairelinux.com, Damien Riegel This patchset introduces support for the technologic version of the SJA1000. Access to IP's registers are proxied through a window, requiring two bus accesses to read or write a register. These accesses must be protected by a spinlock to prevent race conditions. Currently, there is no easy way to allocate and initialize this spinlock. SJA1000 already provides a way to allocate private data, but sja1000_platform.c makes no use of it. Patch 1 adds the capability to allocate and initialize private data on a per-compatible basis in sja1000_platform.c. Patch 2 updates device tree documentation to add the technologic version. Patch 3 updates the driver to implement the technologic version Changes in v2: - added a patch to allocate and initialize private data - changed device tree documentation - added a spinlock to protect bus accesses - changed sp_{read,write}_reg16 to io{read,write}16 Damien Riegel (3): can: sja1000: of: add per-compatible init hook can: sja1000: add documentation for Technologic Systems version can: sja1000: of: add compatibility with Technologic Systems version .../devicetree/bindings/net/can/sja1000.txt | 3 +- drivers/net/can/sja1000/sja1000_platform.c | 86 +++++++++++++++++++++- 2 files changed, 86 insertions(+), 3 deletions(-) -- 2.5.0