mirror of
https://github.com/apache/nuttx.git
synced 2026-06-04 23:03:27 +08:00
cxd56xx improvements (#48)
* arch: cxd56xx: Add size limitation for I2C SCU xfer This is a fw restriction, unroll loop because it can be transfer up to 16 bytes. * arch: cxd56xx: Fix lack of leave_critical_section add the missing leave_critical_section * arch: cxd56xx: Remove unnecessary file this header is duplicate and we can remove it * arch: cxd56xx: Cosmetic change remove space after function * arch: cxd56xx: update topreg registers the topreg registers are updated to match the cxd5602 HW * arch: cxd56xx: Add voltage setting for low battery notification Add voltage setting for low battery notification * arch: cxd56xx: Improve perfomance of SD card Improve a problem that the clock of SD Host Controller is lower than the expected value in SDR25 transfer mode. * arch: cxd56xx: Cosmetic changes cleanup to comply with coding standard * boards: cxd56xx: Cosmetic changes updates to comply with coding standard * boards: cxd56xx: Fix SD card cannot mount issue SD card cannot mount when connecting and disconnecting three times or more due to wrong state of parameter 'initialized'. This change enables to skip swtching initialized state when mount failed.
This commit is contained in:
committed by
Alan Carvalho de Assis
parent
c5090d38cc
commit
077ef70b0c
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_INCLUDE_CXD56XX_CXD56_ADC_H
|
||||
#define __ARCH_ARM_INCLUDE_CXD56XX_CXD56_ADC_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_CXD56XX_ADC_H
|
||||
#define __ARCH_ARM_INCLUDE_CXD56XX_ADC_H
|
||||
|
||||
/****************************************************************************
|
||||
* include files
|
||||
@@ -93,4 +93,4 @@
|
||||
|
||||
int cxd56_adcinitialize(void);
|
||||
|
||||
#endif /* __ARCH_ARM_INCLUDE_CXD56XX_CXD56_ADC_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_CXD56XX_ADC_H */
|
||||
|
||||
@@ -35,8 +35,8 @@
|
||||
|
||||
/* audioutils Audio Utility */
|
||||
|
||||
#ifndef __ARCH_ARM_INCLUDE_CXD56XX_CXD56_AUDIO_H
|
||||
#define __ARCH_ARM_INCLUDE_CXD56XX_CXD56_AUDIO_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_CXD56XX_AUDIO_H
|
||||
#define __ARCH_ARM_INCLUDE_CXD56XX_AUDIO_H
|
||||
|
||||
/* API Documents creater with Doxgen */
|
||||
|
||||
@@ -948,4 +948,4 @@ bool board_audio_tone_generator(bool en, int16_t vol, uint16_t freq);
|
||||
} /* end of extern "C" */
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#endif /* __ARCH_ARM_INCLUDE_CXD56XX_CXD56_AUDIO_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_CXD56XX_AUDIO_H */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* include/arch/chip/battery_ioctl.h
|
||||
* arch/arm/include/cxd56xx/battery_ioctl.h
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* arch/arm/include/cxd56xx/cxd56_ge2d.h
|
||||
* arch/arm/include/cxd56xx/ge2d.h
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -230,4 +230,4 @@ struct cxd56_geofence_status_s
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __ARCH_ARM_INCLUDE_ARCH_CXD56XX_GEOFENCE_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_CXD56XX_GEOFENCE_H */
|
||||
|
||||
@@ -866,4 +866,4 @@ struct cxd56_gnss_get_var_ephemeris_s
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ARCH_ARM_INCLUDE_CXD56XX_GNSS_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_CXD56XX_GNSS_H */
|
||||
|
||||
@@ -707,4 +707,4 @@ struct cxd56_gnss_status_s
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#endif /* ARCH_ARM_INCLUDE_CXD56XX_GNSS_TYPE_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_CXD56XX_GNSS_TYPE_H */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* arch/arm/include/cxd56xx/cxd56_uart0.h
|
||||
* arch/arm/include/cxd56xx/uart0.h
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARM_ARCH_INCLUDE_CXD56XX_CXD56_UART0_H
|
||||
#define __ARM_ARCH_INCLUDE_CXD56XX_CXD56_UART0_H
|
||||
#ifndef __ARM_ARCH_INCLUDE_CXD56XX_UART0_H
|
||||
#define __ARM_ARCH_INCLUDE_CXD56XX_UART0_H
|
||||
|
||||
/****************************************************************************
|
||||
* Public Types
|
||||
|
||||
@@ -359,7 +359,7 @@ static void cisif_ycc_nstorage_int(uint8_t code)
|
||||
uint32_t size;
|
||||
|
||||
size = cisif_reg_read(CISIF_YCC_DSTRG_CONT);
|
||||
g_ycc_notify_callback_func (0, size, g_storage_addr);
|
||||
g_ycc_notify_callback_func(0, size, g_storage_addr);
|
||||
cisif_reg_write(CISIF_YCC_DREAD_CONT, size);
|
||||
}
|
||||
|
||||
|
||||
@@ -182,6 +182,7 @@ int cxd56_cfpush(uint32_t data[2])
|
||||
if (!sq_empty(&g_pushqueue))
|
||||
{
|
||||
ret = cpufifo_reserve(data);
|
||||
leave_critical_section(flags);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "hardware/cxd56_dmac_common.h"
|
||||
#include "cxd56_dmac_common.h"
|
||||
|
||||
/****************************************************************************
|
||||
* Pre-processor Definitions
|
||||
|
||||
@@ -738,40 +738,35 @@ static int cxd56_i2c_scurecv(int port, int addr, uint8_t *buf, ssize_t buflen)
|
||||
{
|
||||
return OK;
|
||||
}
|
||||
if (buflen > 16)
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
rem = buflen;
|
||||
while (rem)
|
||||
len0 = rem > 8 ? 8 : rem;
|
||||
rem -= len0;
|
||||
len1 = rem > 8 ? 8 : rem;
|
||||
rem -= len1;
|
||||
|
||||
inst[0] = SCU_INST_RECV(len0);
|
||||
if (len1)
|
||||
{
|
||||
len0 = rem > 8 ? 8 : rem;
|
||||
rem -= len0;
|
||||
len1 = rem > 8 ? 8 : rem;
|
||||
rem -= len1;
|
||||
inst[1] = SCU_INST_RECV(len1);
|
||||
instn = 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
instn = 1;
|
||||
}
|
||||
|
||||
inst[0] = SCU_INST_RECV(len0);
|
||||
if (len1)
|
||||
{
|
||||
inst[1] = SCU_INST_RECV(len1);
|
||||
instn = 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
instn = 1;
|
||||
}
|
||||
inst[instn - 1] |= SCU_INST_LAST;
|
||||
|
||||
if (rem == 0)
|
||||
{
|
||||
inst[instn - 1] |= SCU_INST_LAST;
|
||||
}
|
||||
|
||||
ret = scu_i2ctransfer(port, addr, inst, instn, buf, len0 + len1);
|
||||
if (ret < 0)
|
||||
{
|
||||
syslog(LOG_ERR, "I2C receive failed. port %d addr %d\n",
|
||||
port, addr);
|
||||
break;
|
||||
}
|
||||
|
||||
buf += len0 + len1;
|
||||
ret = scu_i2ctransfer(port, addr, inst, instn, buf, buflen);
|
||||
if (ret < 0)
|
||||
{
|
||||
syslog(LOG_ERR, "I2C receive failed. port %d addr %d\n",
|
||||
port, addr);
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* arch/arm/src/cxd56/cxd56_idle.c
|
||||
* arch/arm/src/cxd56xx/cxd56_idle.c
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* arch/arm/src/cxd56/cxd56_irq.c
|
||||
* arch/arm/src/cxd56xx/cxd56_irq.c
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -748,9 +748,66 @@ int cxd56_pmic_get_gauge(FAR struct pmic_gauge_s *gauge)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int cxd56_pmic_getlowervol(FAR int *vol)
|
||||
int cxd56_pmic_getlowervol(FAR int *voltage)
|
||||
{
|
||||
return PM_PmicControl(PMIC_CMD_GETVSYS, vol);
|
||||
return PM_PmicControl(PMIC_CMD_GETVSYS, voltage);
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
* Name: cxd56_pmic_setlowervol
|
||||
*
|
||||
* Description:
|
||||
* Set lower limit of voltage for system to be running.
|
||||
*
|
||||
* Input Parameter:
|
||||
* voltage - Lower limit voltage (mV)
|
||||
*
|
||||
* Returned Value:
|
||||
* Return 0 on success. Otherwise, return a negated errno.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int cxd56_pmic_setlowervol(int voltage)
|
||||
{
|
||||
return PM_PmicControl(PMIC_CMD_SETVSYS, (void *)voltage);
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
* Name: cxd56_pmic_getnotifyvol
|
||||
*
|
||||
* Description:
|
||||
* Get voltage for the low battery notification
|
||||
*
|
||||
* Input Parameter:
|
||||
* voltage - Low battery voltage (mV)
|
||||
*
|
||||
* Returned Value:
|
||||
* Return 0 on success. Otherwise, return a negated errno.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int cxd56_pmic_getnotifyvol(FAR int *voltage)
|
||||
{
|
||||
return PM_PmicControl(PMIC_CMD_GETPREVSYS, voltage);
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
* Name: cxd56_pmic_setnotifyvol
|
||||
*
|
||||
* Description:
|
||||
* Set voltage for the low battery notification
|
||||
*
|
||||
* Input Parameter:
|
||||
* voltage - Low battery voltage (mV)
|
||||
*
|
||||
* Returned Value:
|
||||
* Return 0 on success. Otherwise, return a negated errno.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int cxd56_pmic_setnotifyvol(int voltage)
|
||||
{
|
||||
return PM_PmicControl(PMIC_CMD_SETPREVSYS, (void *)voltage);
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
|
||||
@@ -457,7 +457,55 @@ int cxd56_pmic_get_gauge(FAR struct pmic_gauge_s *gauge);
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int cxd56_pmic_getlowervol(FAR int *vol);
|
||||
int cxd56_pmic_getlowervol(FAR int *voltage);
|
||||
|
||||
/****************************************************************************
|
||||
* Name: cxd56_pmic_setlowervol
|
||||
*
|
||||
* Description:
|
||||
* Set lower limit of voltage for system to be running.
|
||||
*
|
||||
* Input Parameter:
|
||||
* voltage - Lower limit voltage (mV)
|
||||
*
|
||||
* Returned Value:
|
||||
* Return 0 on success. Otherwise, return a negated errno.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int cxd56_pmic_setlowervol(int voltage);
|
||||
|
||||
/****************************************************************************
|
||||
* Name: cxd56_pmic_getnotifyvol
|
||||
*
|
||||
* Description:
|
||||
* Get voltage for the low battery notification
|
||||
*
|
||||
* Input Parameter:
|
||||
* voltage - Low battery voltage (mV)
|
||||
*
|
||||
* Returned Value:
|
||||
* Return 0 on success. Otherwise, return a negated errno.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int cxd56_pmic_getnotifyvol(FAR int *voltage);
|
||||
|
||||
/****************************************************************************
|
||||
* Name: cxd56_pmic_setnotifyvol
|
||||
*
|
||||
* Description:
|
||||
* Set voltage for the low battery notification
|
||||
*
|
||||
* Input Parameter:
|
||||
* voltage - Low battery voltage (mV)
|
||||
*
|
||||
* Returned Value:
|
||||
* Return 0 on success. Otherwise, return a negated errno.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int cxd56_pmic_setnotifyvol(int voltage);
|
||||
|
||||
/****************************************************************************
|
||||
* Name: cxd56_pmic_getchargevol
|
||||
|
||||
@@ -119,13 +119,8 @@
|
||||
# define CONFIG_CXD56_SD1BIT_FREQ 20000000 /* 20MHz SD 1-bit, normal clocking */
|
||||
#endif
|
||||
#ifndef CONFIG_CXD56_SD4BIT_FREQ
|
||||
# define CONFIG_CXD56_SD4BIT_FREQ 25000000 /* 25MHz SD 4-bit, normal clocking */
|
||||
# define CONFIG_CXD56_SD4BIT_FREQ 50000000 /* SDR25 SD 4-bit, normal clocking */
|
||||
#endif
|
||||
#ifndef CONFIG_CXD56_HSSD4BIT_FREQ
|
||||
# define CONFIG_CXD56_HSSD4BIT_FREQ 50000000 /* 50MHz SD 4-bit, highspeed clocking */
|
||||
#endif
|
||||
|
||||
#define CXD56_SDIO_BASECLK_FREQ (cxd56_get_sdio_baseclock()*2)
|
||||
|
||||
/* Timing */
|
||||
|
||||
|
||||
@@ -36,8 +36,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CXD56_USB_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CXD56_USB_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CXD56_USBDEV_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CXD56_USBDEV_H
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
|
||||
@@ -36,8 +36,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD5602_BACKUPMEM_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD5602_BACKUPMEM_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD5602_BACKUPMEM_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD5602_BACKUPMEM_H
|
||||
|
||||
/********************************************************************************************
|
||||
* Included Files
|
||||
@@ -84,4 +84,4 @@ typedef struct {
|
||||
* Public Functions
|
||||
********************************************************************************************/
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD5602_BACKUPMEM_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD5602_BACKUPMEM_H */
|
||||
|
||||
@@ -36,8 +36,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD5602_PINCONFIG_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD5602_PINCONFIG_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD5602_PINCONFIG_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD5602_PINCONFIG_H
|
||||
|
||||
/********************************************************************************************
|
||||
* Included Files
|
||||
@@ -656,4 +656,4 @@
|
||||
|
||||
#endif /* CONFIG_CXD56_CUSTOM_PINCONFIG */
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD5602_PINCONFIG_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD5602_PINCONFIG_H */
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_ADC_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_ADC_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_ADC_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_ADC_H
|
||||
|
||||
#define SCUADCIF_LPADC_A0 (CXD56_SCU_ADCIF_BASE + 0x200)
|
||||
#define SCUADCIF_LPADC_A1 (CXD56_SCU_ADCIF_BASE + 0x204)
|
||||
@@ -72,4 +72,4 @@
|
||||
#define SCUADCIF_ADCIF_DCT (CXD56_SCU_ADCIF_BASE + 0x3d0)
|
||||
#define SCUADCIF_SCU_ADCIF_CKPOWER (CXD56_SCU_ADCIF_BASE + 0x3d4)
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_ADC_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_ADC_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP__CXD56_CISIF_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP__CXD56_CISIF_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_CISIF_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_CISIF_H
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
@@ -110,4 +110,4 @@
|
||||
#define MODE_JPG_TRS_EN (0x00000109)
|
||||
#define MODE_INTLEV_TRS_EN (0x0000010E)
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP__CXD56_CISIF_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_CISIF_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_CPUFIFO_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_CPUFIFO_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_CPUFIFO_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_CPUFIFO_H
|
||||
|
||||
/************************************************************************************
|
||||
* Included Files
|
||||
@@ -55,4 +55,4 @@
|
||||
#define CXD56_FIF_PULL_WRD1 (CXD56_CPUFIFO_BASE + 0x18)
|
||||
#define CXD56_FIF_PULL_CMP (CXD56_CPUFIFO_BASE + 0x1c)
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_CPUFIFO_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_CPUFIFO_H */
|
||||
|
||||
@@ -36,8 +36,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_CRG_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_CRG_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_CRG_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_CRG_H
|
||||
|
||||
/********************************************************************************************
|
||||
* Included Files
|
||||
|
||||
@@ -1,77 +0,0 @@
|
||||
/****************************************************************************
|
||||
* arch/arm/src/cxd56xx/cxd56_dmac_common.h
|
||||
*
|
||||
* Copyright (C) 2009, 2011-2013 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. 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.
|
||||
* 3. Neither the name NuttX 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 __ARCH_ARM_SRC_CXD56XX_CXD56_DMAC_COMMON_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CXD56_DMAC_COMMON_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/************************************************************************************
|
||||
* Public Types
|
||||
************************************************************************************/
|
||||
|
||||
/* DMA_HANDLE provides an opaque are reference that can be used to represent a DMA
|
||||
* channel.
|
||||
*/
|
||||
|
||||
typedef FAR void *DMA_HANDLE;
|
||||
|
||||
/* Description:
|
||||
* This is the type of the callback that is used to inform the user of the the
|
||||
* completion of the DMA.
|
||||
*
|
||||
* Input Parameters:
|
||||
* handle - Refers tot he DMA channel or stream
|
||||
* status - A bit encoded value that provides the completion status. See the
|
||||
* DMASTATUS_* definitions above.
|
||||
* arg - A user-provided value that was provided when cxd56_dmastart() was
|
||||
* called.
|
||||
*/
|
||||
|
||||
typedef void (*dma_callback_t)(DMA_HANDLE handle, uint8_t status, void *arg);
|
||||
|
||||
/* Type of 'config' argument passed to cxd56_rxdmasetup() and cxd56_txdmasetup.
|
||||
* See CXD56_DMA_* encodings above. If these encodings exceed 16-bits, then this
|
||||
* should be changed to a uint32_t.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
uint16_t channel_cfg;
|
||||
uint8_t dest_width;
|
||||
uint8_t src_width;
|
||||
} dma_config_t;
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CXD56_DMAC_COMMON_H */
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_EMMC_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_EMMC_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_EMMC_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_EMMC_H
|
||||
|
||||
#define EMMC_CTRL (CXD56_EMMC_BASE + 0x00u)
|
||||
#define EMMC_PWREN (CXD56_EMMC_BASE + 0x04u)
|
||||
@@ -343,4 +343,4 @@
|
||||
#define EXTCSD_PON_POWERED_ON (0x01u)
|
||||
#define EXTCSD_PON_POWERED_OFF_LONG (0x03u)
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_EMMC_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_EMMC_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __SRC_CHIP_CXD56_GE2D_H
|
||||
#define __SRC_CHIP_CXD56_GE2D_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CXD56_GE2D_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CXD56_GE2D_H
|
||||
|
||||
#include "hardware/cxd5602_memorymap.h"
|
||||
|
||||
@@ -79,4 +79,4 @@
|
||||
#define GE2D_EXEC 1
|
||||
#define GE2D_STOP 3
|
||||
|
||||
#endif /* __SRC_CHIP_CXD56_GE2D_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CXD56_GE2D_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_I2C_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_I2C_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_I2C_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_I2C_H
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
@@ -206,4 +206,4 @@
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_I2C_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_I2C_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_RTC_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_RTC_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_RTC_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_RTC_H
|
||||
|
||||
/****************************************************************************************
|
||||
* Included Files
|
||||
@@ -137,4 +137,4 @@
|
||||
#define RTCREG_ALM_ERRDBG_MASK (1u << 31)
|
||||
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_RTC_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_RTC_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SCU_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SCU_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SCU_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SCU_H
|
||||
|
||||
#define SCU_PWM0_PARAM (CXD56_SCU_BASE + 0x0000)
|
||||
#define SCU_PWM0_EN (CXD56_SCU_BASE + 0x0004)
|
||||
@@ -194,4 +194,4 @@
|
||||
#define SCU_INT_MASKED_STT_ERR_2 (CXD56_SCU_BASE + 0x0470)
|
||||
#define SCU_RAM_TEST (CXD56_SCU_BASE + 0x0500)
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SCU_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SCU_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SCUFIFO_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SCUFIFO_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SCUFIFO_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SCUFIFO_H
|
||||
|
||||
#define SCUFIFO_R_CTRL0(fn) (((fn) * 0x20) + SCUFIFO_D0_R1_C_CTRL0)
|
||||
#define SCUFIFO_R_CTRL1(fn) (((fn) * 0x20) + SCUFIFO_D0_R1_C_CTRL1)
|
||||
@@ -422,4 +422,4 @@
|
||||
|
||||
#define SCUFIFO_FIFO_DATA(x) (CXD56_SCU_FIFO_REG_BASE + 0x2100 + (0x4 * (x)))
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SCUFIFO_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SCUFIFO_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SCUSEQ_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SCUSEQ_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SCUSEQ_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SCUSEQ_H
|
||||
|
||||
#define SCUSEQ_SRC_SEL (CXD56_SCU_SEQ_DRAM_BASE + 0x00c)
|
||||
#define SCUSEQ_PROPERTY(s) (CXD56_SCU_SEQ_DRAM_BASE + 0x020 + ((s) * 0x20))
|
||||
@@ -52,4 +52,4 @@
|
||||
#define SCUSEQ_SYNCRO_ISOP2CPU (CXD56_SCU_SEQ_DRAM_BASE + 0x2C8)
|
||||
#define SCUSEQ_RAM_OUT_DATA0 (CXD56_SCU_SEQ_DRAM_BASE + 0x2CC)
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SCUSEQ_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SCUSEQ_H */
|
||||
|
||||
@@ -67,4 +67,4 @@
|
||||
#define LOCK_OWNER(sts) (((sts) >> 16) & 0x1f)
|
||||
#define RESV_OWNER(sts) (((sts) >> 24) & 0x1f)
|
||||
|
||||
#endif
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SPH_H */
|
||||
|
||||
@@ -34,8 +34,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SPI_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SPI_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SPI_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SPI_H
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
@@ -208,4 +208,4 @@
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_SPI_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_SPI_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_TIMER_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_TIMER_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_TIMER_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_TIMER_H
|
||||
|
||||
/****************************************************************************************
|
||||
* Included Files
|
||||
@@ -114,4 +114,4 @@
|
||||
* Public Functions
|
||||
****************************************************************************************/
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_TIMER_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_TIMER_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_UDMAC_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_UDMAC_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_UDMAC_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_UDMAC_H
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
@@ -163,4 +163,4 @@ struct dma_descriptor_s {
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_UDMAC_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_UDMAC_H */
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_WDT_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_WDT_H
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_WDT_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_WDT_H
|
||||
|
||||
/****************************************************************************************
|
||||
* Included Files
|
||||
@@ -105,4 +105,4 @@
|
||||
* Public Functions
|
||||
****************************************************************************************/
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CHIP_CXD56_WDT_H */
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_HARDWARE_CXD56_WDT_H */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* boards/arm/cxd56xx/common/src/cxd56_ak09912.c
|
||||
* boards/arm/cxd56xx/common/src/cxd56_ak09912_i2c.c
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* boards/arm/cxd56xx/common/src/cxd56_ak09912.c
|
||||
* boards/arm/cxd56xx/common/src/cxd56_ak09912_scu.c
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
############################################################################
|
||||
# drivers/Makefile
|
||||
# boards/arm/cxd56xx/drivers/Make.defs
|
||||
#
|
||||
# Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
############################################################################
|
||||
# drivers/platform/audio/Make.defs
|
||||
# boards/arm/cxd56xx/drivers/audio/Make.defs
|
||||
#
|
||||
# Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/***************************************************************************
|
||||
* arch/arm/src/cxd56xx/cxd56_audio.c
|
||||
* boards/arm/cxd56xx/drivers/audio/cxd56_audio.c
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* arch/arm/src/cxd56xx/cxd56_audio_ac_reg.c
|
||||
* boards/arm/cxd56xx/drivers/audio/cxd56_audio_ac_reg.c
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/***************************************************************************
|
||||
* arch/arm/src/cxd56xx/cxd56_audio_ac_reg.h
|
||||
* boards/arm/cxd56xx/drivers/audio/cxd56_audio_ac_reg.h
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CXD56_AUDIO_AC_REG_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CXD56_AUDIO_AC_REG_H
|
||||
#ifndef __BOARDS_ARM_CXD56XX_DRIVERS_AUDIO_CXD56_AUDIO_AC_REG_H
|
||||
#define __BOARDS_ARM_CXD56XX_DRIVERS_AUDIO_CXD56_AUDIO_AC_REG_H
|
||||
|
||||
/***************************************************************************
|
||||
* Included Files
|
||||
@@ -451,4 +451,5 @@ void cxd56_audio_ac_reg_disable_cstereo(void);
|
||||
void cxd56_audio_ac_reg_set_vol_sdin1(uint32_t vol);
|
||||
void cxd56_audio_ac_reg_set_vol_sdin2(uint32_t vol);
|
||||
void cxd56_audio_ac_reg_set_vol_dac(uint32_t vol);
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CXD56_AUDIO_AC_REG_H */
|
||||
|
||||
#endif /* __BOARDS_ARM_CXD56XX_DRIVERS_AUDIO_CXD56_AUDIO_AC_REG_H */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/***************************************************************************
|
||||
* arch/arm/src/cxd56xx/cxd56_audio_aca.c
|
||||
* boards/arm/cxd56xx/drivers/audio/cxd56_audio_aca.c
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/***************************************************************************
|
||||
* arch/arm/src/cxd56xx/cxd56_audio_aca.h
|
||||
* boards/arm/cxd56xx/drivers/audio/cxd56_audio_aca.h
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CXD56_AUDIO_ACA_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CXD56_AUDIO_ACA_H
|
||||
#ifndef __BOARDS_ARM_CXD56XX_DRIVERS_AUDIO_CXD56_AUDIO_ACA_H
|
||||
#define __BOARDS_ARM_CXD56XX_DRIVERS_AUDIO_CXD56_AUDIO_ACA_H
|
||||
|
||||
/***************************************************************************
|
||||
* Included Files
|
||||
@@ -80,4 +80,4 @@ CXD56_AUDIO_ECODE cxd56_audio_aca_disable_output(void);
|
||||
CXD56_AUDIO_ECODE cxd56_audio_aca_set_micgain(FAR cxd56_audio_mic_gain_t *gain);
|
||||
CXD56_AUDIO_ECODE cxd56_audio_aca_notify_micbootdone(void);
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CXD56_AUDIO_ACA_H */
|
||||
#endif /* __BOARDS_ARM_CXD56XX_DRIVERS_AUDIO_CXD56_AUDIO_ACA_H */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* arch/arm/src/cxd56xx/cxd56_audio_analog.c
|
||||
* boards/arm/cxd56xx/drivers/audio/cxd56_audio_analog.c
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/***************************************************************************
|
||||
* arch/arm/src/cxd56xx/cxd56_audio_analog.h
|
||||
* boards/arm/cxd56xx/drivers/audio/cxd56_audio_analog.h
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_CXD56XX_CXD56_AUDIO_ANALOG_H
|
||||
#define __ARCH_ARM_SRC_CXD56XX_CXD56_AUDIO_ANALOG_H
|
||||
#ifndef __BOARDS_ARM_CXD56XX_DRIVERS_AUDIO_CXD56_AUDIO_ANALOG_H
|
||||
#define __BOARDS_ARM_CXD56XX_DRIVERS_AUDIO_CXD56_AUDIO_ANALOG_H
|
||||
|
||||
/***************************************************************************
|
||||
* Included Files
|
||||
@@ -73,4 +73,4 @@ CXD56_AUDIO_ECODE cxd56_audio_analog_disable_output(void);
|
||||
CXD56_AUDIO_ECODE cxd56_audio_analog_set_micgain(FAR cxd56_audio_mic_gain_t *gain);
|
||||
CXD56_AUDIO_ECODE cxd56_audio_analog_wait_input_standby(void);
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_CXD56XX_CXD56_AUDIO_ANALOG_H */
|
||||
#endif /* __BOARDS_ARM_CXD56XX_DRIVERS_AUDIO_CXD56_AUDIO_ANALOG_H */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/***************************************************************************
|
||||
* arch/arm/src/cxd56xx/cxd56_audio_bca_reg.c
|
||||
* boards/arm/cxd56xx/drivers/audio/cxd56_audio_bca_reg.c
|
||||
*
|
||||
* Copyright 2018 Sony Semiconductor Solutions Corporation
|
||||
*
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user