From 98010ab4898685ac32e8a27bb010c0872c401610 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Thu, 12 May 2016 18:38:51 +0200 Subject: kernel: remove ocf support, cryptodev-linux should be used instead Signed-off-by: Felix Fietkau --- .../ocf/kirkwood/mvHal/mv_hal/spi/mvCompVer.txt | 4 - .../crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.c | 576 --------------------- .../crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.h | 94 ---- .../ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.c | 249 --------- .../ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.h | 82 --- .../ocf/kirkwood/mvHal/mv_hal/spi/mvSpiSpec.h | 98 ---- 6 files changed, 1103 deletions(-) delete mode 100644 target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvCompVer.txt delete mode 100644 target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.c delete mode 100644 target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.h delete mode 100644 target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.c delete mode 100644 target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.h delete mode 100644 target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiSpec.h (limited to 'target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi') diff --git a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvCompVer.txt b/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvCompVer.txt deleted file mode 100644 index 3afa556b6e..0000000000 --- a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvCompVer.txt +++ /dev/null @@ -1,4 +0,0 @@ -Global HAL Version: FEROCEON_HAL_3_1_7 -Unit HAL Version: 3.1.3 -Description: This component includes an implementation of the unit HAL drivers - diff --git a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.c b/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.c deleted file mode 100644 index 39e0b720d1..0000000000 --- a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.c +++ /dev/null @@ -1,576 +0,0 @@ -/******************************************************************************* -Copyright (C) Marvell International Ltd. and its affiliates - -This software file (the "File") is owned and distributed by Marvell -International Ltd. and/or its affiliates ("Marvell") under the following -alternative licensing terms. Once you have made an election to distribute the -File under one of the following license alternatives, please (i) delete this -introductory statement regarding license alternatives, (ii) delete the two -license alternatives that you have not elected to use and (iii) preserve the -Marvell copyright notice above. - -******************************************************************************** -Marvell Commercial License Option - -If you received this File from Marvell and you have entered into a commercial -license agreement (a "Commercial License") with Marvell, the File is licensed -to you under the terms of the applicable Commercial License. - -******************************************************************************** -Marvell GPL License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File in accordance with the terms and conditions of the General -Public License Version 2, June 1991 (the "GPL License"), a copy of which is -available along with the File in the license.txt file or by writing to the Free -Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or -on the worldwide web at http://www.gnu.org/licenses/gpl.txt. - -THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED -WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY -DISCLAIMED. The GPL License provides additional details about this warranty -disclaimer. -******************************************************************************** -Marvell BSD License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File under the following licensing terms. -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of Marvell nor the names of its contributors may be - used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -*******************************************************************************/ - -#include "spi/mvSpi.h" -#include "spi/mvSpiSpec.h" - -#include "ctrlEnv/mvCtrlEnvLib.h" - -/* #define MV_DEBUG */ -#ifdef MV_DEBUG -#define DB(x) x -#define mvOsPrintf printf -#else -#define DB(x) -#endif - - -/******************************************************************************* -* mvSpi16bitDataTxRx - Transmt and receive data -* -* DESCRIPTION: -* Tx data and block waiting for data to be transmitted -* -********************************************************************************/ -static MV_STATUS mvSpi16bitDataTxRx (MV_U16 txData, MV_U16 * pRxData) -{ - MV_U32 i; - MV_BOOL ready = MV_FALSE; - - /* First clear the bit in the interrupt cause register */ - MV_REG_WRITE(MV_SPI_INT_CAUSE_REG, 0x0); - - /* Transmit data */ - MV_REG_WRITE(MV_SPI_DATA_OUT_REG, MV_16BIT_LE(txData)); - - /* wait with timeout for memory ready */ - for (i=0; i> 8) & 0xFF); - -#elif defined(MV_CPU_BE) - - /* perform the data write to the buffer in two stages with 8bit each */ - MV_U8 * bptr = (MV_U8 *)pRxData; - MV_U16 data = MV_16BIT_LE(MV_REG_READ(MV_SPI_DATA_IN_REG)); - *bptr = ((data >> 8) & 0xFF); - ++bptr; - *bptr = (data & 0xFF); - -#else - #error "CPU endianess isn't defined!\n" -#endif - - } - else - *pRxData = MV_16BIT_LE(MV_REG_READ(MV_SPI_DATA_IN_REG)); - } - - return MV_OK; -} - - -/******************************************************************************* -* mvSpi8bitDataTxRx - Transmt and receive data (8bits) -* -* DESCRIPTION: -* Tx data and block waiting for data to be transmitted -* -********************************************************************************/ -static MV_STATUS mvSpi8bitDataTxRx (MV_U8 txData, MV_U8 * pRxData) -{ - MV_U32 i; - MV_BOOL ready = MV_FALSE; - - /* First clear the bit in the interrupt cause register */ - MV_REG_WRITE(MV_SPI_INT_CAUSE_REG, 0x0); - - /* Transmit data */ - MV_REG_WRITE(MV_SPI_DATA_OUT_REG, txData); - - /* wait with timeout for memory ready */ - for (i=0; i serialBaudRate) - continue; - - /* check for exact fit */ - if ((cpuClk / preScale[i]) == serialBaudRate) - { - bestPrescaleIndx = i; - break; - } - - /* check if this is better than the previous one */ - if ((serialBaudRate - (cpuClk / preScale[i])) < minBaudOffset) - { - minBaudOffset = (serialBaudRate - (cpuClk / preScale[i])); - bestPrescaleIndx = i; - } - } - - if (bestPrescaleIndx > 14) - { - mvOsPrintf("%s ERROR: SPI baud rate prescale error!\n", __FUNCTION__); - return MV_OUT_OF_RANGE; - } - - /* configure the Prescale */ - tempReg = MV_REG_READ(MV_SPI_IF_CONFIG_REG); - tempReg = ((tempReg & ~MV_SPI_CLK_PRESCALE_MASK) | (bestPrescaleIndx + 0x12)); - MV_REG_WRITE(MV_SPI_IF_CONFIG_REG, tempReg); - - return MV_OK; -} - -/******************************************************************************* -* mvSpiCsAssert - Assert the Chip Select pin indicating a new transfer -* -* DESCRIPTION: -* Assert The chip select - used to select an external SPI device -* -* INPUT: -* None. -* -* OUTPUT: -* None. -* -* RETURN: -* Success or Error code. -* -********************************************************************************/ -MV_VOID mvSpiCsAssert(MV_VOID) -{ - /* For devices in which the SPI is muxed on the MPP with other interfaces*/ - mvMPPConfigToSPI(); - mvOsUDelay(1); - MV_REG_BIT_SET(MV_SPI_IF_CTRL_REG, MV_SPI_CS_ENABLE_MASK); -} - -/******************************************************************************* -* mvSpiCsDeassert - DeAssert the Chip Select pin indicating the end of a -* SPI transfer sequence -* -* DESCRIPTION: -* DeAssert the chip select pin -* -* INPUT: -* None. -* -* OUTPUT: -* None. -* -* RETURN: -* Success or Error code. -* -********************************************************************************/ -MV_VOID mvSpiCsDeassert(MV_VOID) -{ - MV_REG_BIT_RESET(MV_SPI_IF_CTRL_REG, MV_SPI_CS_ENABLE_MASK); - - /* For devices in which the SPI is muxed on the MPP with other interfaces*/ - mvMPPConfigToDefault(); -} - -/******************************************************************************* -* mvSpiRead - Read a buffer over the SPI interface -* -* DESCRIPTION: -* Receive (read) a buffer over the SPI interface in 16bit chunks. If the -* buffer size is odd, then the last chunk will be 8bits. Chip select is not -* handled at this level. -* -* INPUT: -* pRxBuff: Pointer to the buffer to hold the received data -* buffSize: length of the pRxBuff -* -* OUTPUT: -* pRxBuff: Pointer to the buffer with the received data -* -* RETURN: -* Success or Error code. -* -* -*******************************************************************************/ -MV_STATUS mvSpiRead (MV_U8* pRxBuff, MV_U32 buffSize) -{ - MV_STATUS ret; - MV_U32 bytesLeft = buffSize; - MV_U16* rxPtr = (MV_U16*)pRxBuff; - - /* check for null parameters */ - if (pRxBuff == NULL) - { - mvOsPrintf("%s ERROR: Null pointer parameter!\n", __FUNCTION__); - return MV_BAD_PARAM; - } - - /* Check that the buffer pointer and the buffer size are 16bit aligned */ - if ((((MV_U32)buffSize & 1) == 0) && (((MV_U32)pRxBuff & 1) == 0)) - { - /* Verify that the SPI mode is in 16bit mode */ - MV_REG_BIT_SET(MV_SPI_IF_CONFIG_REG, MV_SPI_BYTE_LENGTH_MASK); - - /* TX/RX as long we have complete 16bit chunks */ - while (bytesLeft >= MV_SPI_16_BIT_CHUNK_SIZE) - { - /* Transmitted and wait for the transfer to be completed */ - if ((ret = mvSpi16bitDataTxRx(MV_SPI_DUMMY_WRITE_16BITS, rxPtr)) != MV_OK) - return ret; - - /* increment the pointers */ - rxPtr++; - bytesLeft -= MV_SPI_16_BIT_CHUNK_SIZE; - } - - } - else - { - /* Verify that the SPI mode is in 8bit mode */ - MV_REG_BIT_RESET(MV_SPI_IF_CONFIG_REG, MV_SPI_BYTE_LENGTH_MASK); - - /* TX/RX in 8bit chanks */ - while (bytesLeft > 0) - { - /* Transmitted and wait for the transfer to be completed */ - if ((ret = mvSpi8bitDataTxRx(MV_SPI_DUMMY_WRITE_8BITS, pRxBuff)) != MV_OK) - return ret; - /* increment the pointers */ - pRxBuff++; - bytesLeft--; - } - } - - return MV_OK; -} - -/******************************************************************************* -* mvSpiWrite - Transmit a buffer over the SPI interface -* -* DESCRIPTION: -* Transmit a buffer over the SPI interface in 16bit chunks. If the -* buffer size is odd, then the last chunk will be 8bits. No chip select -* action is taken. -* -* INPUT: -* pTxBuff: Pointer to the buffer holding the TX data -* buffSize: length of the pTxBuff -* -* OUTPUT: -* None. -* -* RETURN: -* Success or Error code. -* -* -*******************************************************************************/ -MV_STATUS mvSpiWrite(MV_U8* pTxBuff, MV_U32 buffSize) -{ - MV_STATUS ret; - MV_U32 bytesLeft = buffSize; - MV_U16* txPtr = (MV_U16*)pTxBuff; - - /* check for null parameters */ - if (pTxBuff == NULL) - { - mvOsPrintf("%s ERROR: Null pointer parameter!\n", __FUNCTION__); - return MV_BAD_PARAM; - } - - /* Check that the buffer pointer and the buffer size are 16bit aligned */ - if ((((MV_U32)buffSize & 1) == 0) && (((MV_U32)pTxBuff & 1) == 0)) - { - /* Verify that the SPI mode is in 16bit mode */ - MV_REG_BIT_SET(MV_SPI_IF_CONFIG_REG, MV_SPI_BYTE_LENGTH_MASK); - - /* TX/RX as long we have complete 16bit chunks */ - while (bytesLeft >= MV_SPI_16_BIT_CHUNK_SIZE) - { - /* Transmitted and wait for the transfer to be completed */ - if ((ret = mvSpi16bitDataTxRx(*txPtr, NULL)) != MV_OK) - return ret; - - /* increment the pointers */ - txPtr++; - bytesLeft -= MV_SPI_16_BIT_CHUNK_SIZE; - } - } - else - { - - /* Verify that the SPI mode is in 8bit mode */ - MV_REG_BIT_RESET(MV_SPI_IF_CONFIG_REG, MV_SPI_BYTE_LENGTH_MASK); - - /* TX/RX in 8bit chanks */ - while (bytesLeft > 0) - { - /* Transmitted and wait for the transfer to be completed */ - if ((ret = mvSpi8bitDataTxRx(*pTxBuff, NULL)) != MV_OK) - return ret; - - /* increment the pointers */ - pTxBuff++; - bytesLeft--; - } - } - - return MV_OK; -} - - -/******************************************************************************* -* mvSpiReadWrite - Read and Write a buffer simultanuosely -* -* DESCRIPTION: -* Transmit and receive a buffer over the SPI in 16bit chunks. If the -* buffer size is odd, then the last chunk will be 8bits. The SPI chip -* select is not handled implicitely. -* -* INPUT: -* pRxBuff: Pointer to the buffer to write the RX info in -* pTxBuff: Pointer to the buffer holding the TX info -* buffSize: length of both the pTxBuff and pRxBuff -* -* OUTPUT: -* pRxBuff: Pointer of the buffer holding the RX data -* -* RETURN: -* Success or Error code. -* -* -*******************************************************************************/ -MV_STATUS mvSpiReadWrite(MV_U8* pRxBuff, MV_U8* pTxBuff, MV_U32 buffSize) -{ - MV_STATUS ret; - MV_U32 bytesLeft = buffSize; - MV_U16* txPtr = (MV_U16*)pTxBuff; - MV_U16* rxPtr = (MV_U16*)pRxBuff; - - /* check for null parameters */ - if ((pRxBuff == NULL) || (pTxBuff == NULL)) - { - mvOsPrintf("%s ERROR: Null pointer parameter!\n", __FUNCTION__); - return MV_BAD_PARAM; - } - - /* Check that the buffer pointer and the buffer size are 16bit aligned */ - if ((((MV_U32)buffSize & 1) == 0) && (((MV_U32)pTxBuff & 1) == 0) && (((MV_U32)pRxBuff & 1) == 0)) - { - /* Verify that the SPI mode is in 16bit mode */ - MV_REG_BIT_SET(MV_SPI_IF_CONFIG_REG, MV_SPI_BYTE_LENGTH_MASK); - - /* TX/RX as long we have complete 16bit chunks */ - while (bytesLeft >= MV_SPI_16_BIT_CHUNK_SIZE) - { - /* Transmitted and wait for the transfer to be completed */ - if ((ret = mvSpi16bitDataTxRx(*txPtr, rxPtr)) != MV_OK) - return ret; - - /* increment the pointers */ - txPtr++; - rxPtr++; - bytesLeft -= MV_SPI_16_BIT_CHUNK_SIZE; - } - } - else - { - /* Verify that the SPI mode is in 8bit mode */ - MV_REG_BIT_RESET(MV_SPI_IF_CONFIG_REG, MV_SPI_BYTE_LENGTH_MASK); - - /* TX/RX in 8bit chanks */ - while (bytesLeft > 0) - { - /* Transmitted and wait for the transfer to be completed */ - if ( (ret = mvSpi8bitDataTxRx(*pTxBuff, pRxBuff) ) != MV_OK) - return ret; - pRxBuff++; - pTxBuff++; - bytesLeft--; - } - } - - return MV_OK; -} - - diff --git a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.h b/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.h deleted file mode 100644 index 74859f03e7..0000000000 --- a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpi.h +++ /dev/null @@ -1,94 +0,0 @@ -/******************************************************************************* -Copyright (C) Marvell International Ltd. and its affiliates - -This software file (the "File") is owned and distributed by Marvell -International Ltd. and/or its affiliates ("Marvell") under the following -alternative licensing terms. Once you have made an election to distribute the -File under one of the following license alternatives, please (i) delete this -introductory statement regarding license alternatives, (ii) delete the two -license alternatives that you have not elected to use and (iii) preserve the -Marvell copyright notice above. - -******************************************************************************** -Marvell Commercial License Option - -If you received this File from Marvell and you have entered into a commercial -license agreement (a "Commercial License") with Marvell, the File is licensed -to you under the terms of the applicable Commercial License. - -******************************************************************************** -Marvell GPL License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File in accordance with the terms and conditions of the General -Public License Version 2, June 1991 (the "GPL License"), a copy of which is -available along with the File in the license.txt file or by writing to the Free -Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or -on the worldwide web at http://www.gnu.org/licenses/gpl.txt. - -THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED -WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY -DISCLAIMED. The GPL License provides additional details about this warranty -disclaimer. -******************************************************************************** -Marvell BSD License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File under the following licensing terms. -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of Marvell nor the names of its contributors may be - used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -*******************************************************************************/ - -#ifndef __INCmvSpihH -#define __INCmvSpihH - -#include "mvCommon.h" -#include "mvOs.h" -#include "ctrlEnv/mvCtrlEnvSpec.h" - -/* Function Prototypes */ -/* Init */ -MV_STATUS mvSpiInit (MV_U32 serialBaudRate); - -/* Set the Frequency of the Spi clock */ -MV_STATUS mvSpiBaudRateSet(MV_U32 serialBaudRate); - -/* Assert the SPI chip select */ -MV_VOID mvSpiCsAssert (MV_VOID); - -/* De-assert the SPI chip select */ -MV_VOID mvSpiCsDeassert (MV_VOID); - -/* Simultanuous Read and write */ -MV_STATUS mvSpiReadWrite (MV_U8* pRxBuff, MV_U8* pTxBuff, MV_U32 buffSize); - -/* serialize a buffer on the TX line - Rx is ignored */ -MV_STATUS mvSpiWrite (MV_U8* pTxBuff, MV_U32 buffSize); - -/* read from the RX line by writing dummy values to the TX line */ -MV_STATUS mvSpiRead (MV_U8* pRxBuff, MV_U32 buffSize); - -#endif /* __INCmvSpihH */ diff --git a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.c b/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.c deleted file mode 100644 index a5d5a6478b..0000000000 --- a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.c +++ /dev/null @@ -1,249 +0,0 @@ -/******************************************************************************* -Copyright (C) Marvell International Ltd. and its affiliates - -This software file (the "File") is owned and distributed by Marvell -International Ltd. and/or its affiliates ("Marvell") under the following -alternative licensing terms. Once you have made an election to distribute the -File under one of the following license alternatives, please (i) delete this -introductory statement regarding license alternatives, (ii) delete the two -license alternatives that you have not elected to use and (iii) preserve the -Marvell copyright notice above. - -******************************************************************************** -Marvell Commercial License Option - -If you received this File from Marvell and you have entered into a commercial -license agreement (a "Commercial License") with Marvell, the File is licensed -to you under the terms of the applicable Commercial License. - -******************************************************************************** -Marvell GPL License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File in accordance with the terms and conditions of the General -Public License Version 2, June 1991 (the "GPL License"), a copy of which is -available along with the File in the license.txt file or by writing to the Free -Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or -on the worldwide web at http://www.gnu.org/licenses/gpl.txt. - -THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED -WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY -DISCLAIMED. The GPL License provides additional details about this warranty -disclaimer. -******************************************************************************** -Marvell BSD License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File under the following licensing terms. -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of Marvell nor the names of its contributors may be - used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -*******************************************************************************/ - -#include "spi/mvSpi.h" -#include "spi/mvSpiSpec.h" - -/*#define MV_DEBUG*/ -#ifdef MV_DEBUG -#define DB(x) x -#else -#define DB(x) -#endif - - -/******************************************************************************* -* mvSpiReadAndWrite - Read and Write a buffer simultanuousely -* -* DESCRIPTION: -* Transmit and receive a buffer over the SPI in 16bit chunks. If the -* buffer size is odd, then the last chunk will be 8bits. -* -* INPUT: -* pRxBuff: Pointer to the buffer to write the RX info in -* pTxBuff: Pointer to the buffer holding the TX info -* buffSize: length of both the pTxBuff and pRxBuff -* -* OUTPUT: -* pRxBuff: Pointer of the buffer holding the RX data -* -* RETURN: -* Success or Error code. -* -* -*******************************************************************************/ -MV_STATUS mvSpiReadAndWrite(MV_U8* pRxBuff, MV_U8* pTxBuff, MV_U32 buffSize) -{ - MV_STATUS ret; - - /* check for null parameters */ - if ((pRxBuff == NULL) || (pTxBuff == NULL) || (buffSize == 0)) - { - mvOsPrintf("%s ERROR: Null pointer parameter!\n", __FUNCTION__); - return MV_BAD_PARAM; - } - - /* First assert the chip select */ - mvSpiCsAssert(); - - ret = mvSpiReadWrite(pRxBuff, pTxBuff, buffSize); - - /* Finally deassert the chip select */ - mvSpiCsDeassert(); - - return ret; -} - -/******************************************************************************* -* mvSpiWriteThenWrite - Serialize a command followed by the data over the TX line -* -* DESCRIPTION: -* Assert the chip select line. Transmit the command buffer followed by -* the data buffer. Then deassert the CS line. -* -* INPUT: -* pCmndBuff: Pointer to the command buffer to transmit -* cmndSize: length of the command size -* pTxDataBuff: Pointer to the data buffer to transmit -* txDataSize: length of the data buffer -* -* OUTPUT: -* None. -* -* RETURN: -* Success or Error code. -* -* -*******************************************************************************/ -MV_STATUS mvSpiWriteThenWrite (MV_U8* pCmndBuff, MV_U32 cmndSize, MV_U8* pTxDataBuff, - MV_U32 txDataSize) -{ - MV_STATUS ret = MV_OK, tempRet; - - /* check for null parameters */ -#ifndef CONFIG_MARVELL - if(NULL == pTxDataBuff) - { - mvOsPrintf("%s ERROR: Null pointer parameter!\n", __FUNCTION__); - return MV_BAD_PARAM; - } -#endif - - if (pCmndBuff == NULL) - { - mvOsPrintf("%s ERROR: Null pointer parameter!\n", __FUNCTION__); - return MV_BAD_PARAM; - } - - /* First assert the chip select */ - mvSpiCsAssert(); - - /* first write the command */ - if ((cmndSize) && (pCmndBuff != NULL)) - { - if ((tempRet = mvSpiWrite(pCmndBuff, cmndSize)) != MV_OK) - ret = tempRet; - } - - /* Then write the data buffer */ -#ifndef CONFIG_MARVELL - if (txDataSize) -#else - if ((txDataSize) && (pTxDataBuff != NULL)) -#endif - { - if ((tempRet = mvSpiWrite(pTxDataBuff, txDataSize)) != MV_OK) - ret = tempRet; - } - - /* Finally deassert the chip select */ - mvSpiCsDeassert(); - - return ret; -} - -/******************************************************************************* -* mvSpiWriteThenRead - Serialize a command then read a data buffer -* -* DESCRIPTION: -* Assert the chip select line. Transmit the command buffer then read -* the data buffer. Then deassert the CS line. -* -* INPUT: -* pCmndBuff: Pointer to the command buffer to transmit -* cmndSize: length of the command size -* pRxDataBuff: Pointer to the buffer to read the data in -* txDataSize: length of the data buffer -* -* OUTPUT: -* pRxDataBuff: Pointer to the buffer holding the data -* -* RETURN: -* Success or Error code. -* -* -*******************************************************************************/ -MV_STATUS mvSpiWriteThenRead (MV_U8* pCmndBuff, MV_U32 cmndSize, MV_U8* pRxDataBuff, - MV_U32 rxDataSize,MV_U32 dummyBytesToRead) -{ - MV_STATUS ret = MV_OK, tempRet; - MV_U8 dummyByte; - - /* check for null parameters */ - if ((pCmndBuff == NULL) && (pRxDataBuff == NULL)) - { - mvOsPrintf("%s ERROR: Null pointer parameter!\n", __FUNCTION__); - return MV_BAD_PARAM; - } - - /* First assert the chip select */ - mvSpiCsAssert(); - - /* first write the command */ - if ((cmndSize) && (pCmndBuff != NULL)) - { - if ((tempRet = mvSpiWrite(pCmndBuff, cmndSize)) != MV_OK) - ret = tempRet; - } - - /* Read dummy bytes before real data. */ - while(dummyBytesToRead) - { - mvSpiRead(&dummyByte,1); - dummyBytesToRead--; - } - - /* Then write the data buffer */ - if ((rxDataSize) && (pRxDataBuff != NULL)) - { - if ((tempRet = mvSpiRead(pRxDataBuff, rxDataSize)) != MV_OK) - ret = tempRet; - } - - /* Finally deassert the chip select */ - mvSpiCsDeassert(); - - return ret; -} - diff --git a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.h b/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.h deleted file mode 100644 index 329e26b7c0..0000000000 --- a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiCmnd.h +++ /dev/null @@ -1,82 +0,0 @@ -/******************************************************************************* -Copyright (C) Marvell International Ltd. and its affiliates - -This software file (the "File") is owned and distributed by Marvell -International Ltd. and/or its affiliates ("Marvell") under the following -alternative licensing terms. Once you have made an election to distribute the -File under one of the following license alternatives, please (i) delete this -introductory statement regarding license alternatives, (ii) delete the two -license alternatives that you have not elected to use and (iii) preserve the -Marvell copyright notice above. - -******************************************************************************** -Marvell Commercial License Option - -If you received this File from Marvell and you have entered into a commercial -license agreement (a "Commercial License") with Marvell, the File is licensed -to you under the terms of the applicable Commercial License. - -******************************************************************************** -Marvell GPL License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File in accordance with the terms and conditions of the General -Public License Version 2, June 1991 (the "GPL License"), a copy of which is -available along with the File in the license.txt file or by writing to the Free -Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or -on the worldwide web at http://www.gnu.org/licenses/gpl.txt. - -THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED -WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY -DISCLAIMED. The GPL License provides additional details about this warranty -disclaimer. -******************************************************************************** -Marvell BSD License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File under the following licensing terms. -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of Marvell nor the names of its contributors may be - used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -*******************************************************************************/ - -#ifndef __INCmvSpiCmndhH -#define __INCmvSpiCmndhH - -#include "mvTypes.h" - -/* Function Prototypes */ - -/* Simultanuous Read and write */ -MV_STATUS mvSpiReadAndWrite (MV_U8* pRxBuff, MV_U8* pTxBuff, MV_U32 buffSize); - -/* write command - write a command and then write data */ -MV_STATUS mvSpiWriteThenWrite (MV_U8* pCmndBuff, MV_U32 cmndSize, MV_U8* pTxDataBuff, MV_U32 txDataSize); - -/* read command - write a command and then read data by writing dummy data */ -MV_STATUS mvSpiWriteThenRead (MV_U8* pCmndBuff, MV_U32 cmndSize, MV_U8* pRxDataBuff, - MV_U32 rxDataSize,MV_U32 dummyBytesToRead); - -#endif /* __INCmvSpiCmndhH */ diff --git a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiSpec.h b/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiSpec.h deleted file mode 100644 index 658159abbb..0000000000 --- a/target/linux/generic/files/crypto/ocf/kirkwood/mvHal/mv_hal/spi/mvSpiSpec.h +++ /dev/null @@ -1,98 +0,0 @@ -/******************************************************************************* -Copyright (C) Marvell International Ltd. and its affiliates - -This software file (the "File") is owned and distributed by Marvell -International Ltd. and/or its affiliates ("Marvell") under the following -alternative licensing terms. Once you have made an election to distribute the -File under one of the following license alternatives, please (i) delete this -introductory statement regarding license alternatives, (ii) delete the two -license alternatives that you have not elected to use and (iii) preserve the -Marvell copyright notice above. - -******************************************************************************** -Marvell Commercial License Option - -If you received this File from Marvell and you have entered into a commercial -license agreement (a "Commercial License") with Marvell, the File is licensed -to you under the terms of the applicable Commercial License. - -******************************************************************************** -Marvell GPL License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File in accordance with the terms and conditions of the General -Public License Version 2, June 1991 (the "GPL License"), a copy of which is -available along with the File in the license.txt file or by writing to the Free -Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or -on the worldwide web at http://www.gnu.org/licenses/gpl.txt. - -THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED -WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY -DISCLAIMED. The GPL License provides additional details about this warranty -disclaimer. -******************************************************************************** -Marvell BSD License Option - -If you received this File from Marvell, you may opt to use, redistribute and/or -modify this File under the following licensing terms. -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of Marvell nor the names of its contributors may be - used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -*******************************************************************************/ - -#ifndef __INCmvSpiSpecH -#define __INCmvSpiSpecH - -/* Constants */ -#define MV_SPI_WAIT_RDY_MAX_LOOP 100000 -#define MV_SPI_16_BIT_CHUNK_SIZE 2 -#define MV_SPI_DUMMY_WRITE_16BITS 0xFFFF -#define MV_SPI_DUMMY_WRITE_8BITS 0xFF - -/* Marvell Flash Device Controller Registers */ -#define MV_SPI_CTRLR_OFST 0x10600 -#define MV_SPI_IF_CTRL_REG (MV_SPI_CTRLR_OFST + 0x00) -#define MV_SPI_IF_CONFIG_REG (MV_SPI_CTRLR_OFST + 0x04) -#define MV_SPI_DATA_OUT_REG (MV_SPI_CTRLR_OFST + 0x08) -#define MV_SPI_DATA_IN_REG (MV_SPI_CTRLR_OFST + 0x0c) -#define MV_SPI_INT_CAUSE_REG (MV_SPI_CTRLR_OFST + 0x10) -#define MV_SPI_INT_CAUSE_MASK_REG (MV_SPI_CTRLR_OFST + 0x14) - -/* Serial Memory Interface Control Register Masks */ -#define MV_SPI_CS_ENABLE_OFFSET 0 /* bit 0 */ -#define MV_SPI_MEMORY_READY_OFFSET 1 /* bit 1 */ -#define MV_SPI_CS_ENABLE_MASK (0x1 << MV_SPI_CS_ENABLE_OFFSET) -#define MV_SPI_MEMORY_READY_MASK (0x1 << MV_SPI_MEMORY_READY_OFFSET) - -/* Serial Memory Interface Configuration Register Masks */ -#define MV_SPI_CLK_PRESCALE_OFFSET 0 /* bit 0-4 */ -#define MV_SPI_BYTE_LENGTH_OFFSET 5 /* bit 5 */ -#define MV_SPI_ADDRESS_BURST_LENGTH_OFFSET 8 /* bit 8-9 */ -#define MV_SPI_CLK_PRESCALE_MASK (0x1F << MV_SPI_CLK_PRESCALE_OFFSET) -#define MV_SPI_BYTE_LENGTH_MASK (0x1 << MV_SPI_BYTE_LENGTH_OFFSET) -#define MV_SPI_ADDRESS_BURST_LENGTH_MASK (0x3 << MV_SPI_ADDRESS_BURST_LENGTH_OFFSET) - -#endif /* __INCmvSpiSpecH */ - -- cgit v1.2.3