blob: f74ec65b87c55e9fc5cca0e03ad1d205406178e9 [file] [log] [blame]
/*
* Copyright (C) 2018 Synaptics Incorporated. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* INFORMATION CONTAINED IN THIS DOCUMENT IS PROVIDED "AS-IS," AND
* SYNAPTICS EXPRESSLY DISCLAIMS ALL EXPRESS AND IMPLIED WARRANTIES,
* INCLUDING ANY IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE, AND ANY WARRANTIES OF NON-INFRINGEMENT OF ANY
* INTELLECTUAL PROPERTY RIGHTS. IN NO EVENT SHALL SYNAPTICS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, PUNITIVE, OR
* CONSEQUENTIAL DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE
* OF THE INFORMATION CONTAINED IN THIS DOCUMENT, HOWEVER CAUSED AND
* BASED ON ANY THEORY OF LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* NEGLIGENCE OR OTHER TORTIOUS ACTION, AND EVEN IF SYNAPTICS WAS
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. IF A TRIBUNAL OF
* COMPETENT JURISDICTION DOES NOT PERMIT THE DISCLAIMER OF DIRECT
* DAMAGES OR ANY OTHER DAMAGES, SYNAPTICS' TOTAL CUMULATIVE LIABILITY
* TO ANY PARTY SHALL NOT EXCEED ONE HUNDRED U.S. DOLLARS.
*/
#ifndef _CHIPCTRL_CONST_H_
#define _CHIPCTRL_CONST_H_
#include "memmap.h"
#include "ra_gbl.h"
#include "mem_ctrl.h"
#define CHIP_CTRL_REG_BASE (0x00 + MEMMAP_CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_PIN_MUX_REG (RA_Gbl_pinMux + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_BOOT_STRAP_REG (RA_Gbl_bootStrap + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_SYS_PLL_CTL (RA_Gbl_sysPllCtl + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_RA_GBL_CLK_SELECT (RA_Gbl_clkSelect + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_RA_GBL_CLK_SWITCH (RA_Gbl_ClkSwitch + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_RESET_TRIGGER_REG (RA_Gbl_ResetTrigger + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_RESET_STATUS_REG (RA_Gbl_ResetStatus + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_SW_GENERIC0_REG (RA_Gbl_sw_generic0 + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_SW_GENERIC1_REG (RA_Gbl_sw_generic1 + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_SW_GENERIC2_REG (RA_Gbl_sw_generic2 + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_SW_GENERIC3_REG (RA_Gbl_sw_generic3 + CHIP_CTRL_REG_BASE)
#define CHIP_CTRL_BOOT_SRC_MASK MSK32Gbl_bootStrap_bootSrc
#define CHIP_CTRL_BOOT_SRC_SPI (0x03 << LSb32Gbl_bootStrap_bootSrc)
#define CHIP_CTRL_BOOT_SRC_NAND (0x01 << LSb32Gbl_bootStrap_bootSrc)
#define CHIP_CTRL_BOOT_SRC_ROM (0x00 << LSb32Gbl_bootStrap_bootSrc)
#define CHIP_CTRL_BOOT_ENG_EN (0x01 << LSb32Gbl_bootStrap_ENG_EN)
#define CHIP_CTRL_BOOT_SW_STRAP_MASK MSK32Gbl_bootStrap_softwareStrap
#define CHIP_CTRL_BOOT_SW_RESERVED (0x01 << LSb32Gbl_bootStrap_softwareStrap)
#define CHIP_CTRL_BOOT_SW_DDR3 (0x02 << LSb32Gbl_bootStrap_softwareStrap)
#define CHIP_CTRL_BOOT_SW_TEST_DDR (0x04 << LSb32Gbl_bootStrap_softwareStrap)
#define CHIP_CTRL_CHIP_RESET bGbl_ResetStatus_ChipResetStatus
#define CHIP_CTRL_CHIP_RESET_MASK MSK32Gbl_ResetStatus_ChipResetStatus
#define CHIP_CTRL_CHIP_RESET_WD0 MSK32Gbl_ResetStatus_wd0Status
#define CHIP_CTRL_CHIP_RESET_WD1 MSK32Gbl_ResetStatus_wd1Status
#define CHIP_CTRL_CHIP_RESET_WD2 MSK32Gbl_ResetStatus_wd2Status
#define CHIP_CTRL_CHIP_RESET_WD_MASK (CHIP_CTRL_CHIP_RESET_WD0 | CHIP_CTRL_CHIP_RESET_WD1 | CHIP_CTRL_CHIP_RESET_WD2)
#define CHIP_CTRL_CPU0_SYNC_RESET (bGbl_ResetTrigger_cpu0SyncReset << LSb32Gbl_ResetTrigger_cpu0SyncReset)
#define CHIP_CTRL_CPU0_SYNC_MASK MSK32Gbl_ResetTrigger_cpu0SyncReset
#define CHIP_CTRL_CPU1_SYNC_RESET (bGbl_ResetTrigger_cpu1SyncReset << LSb32Gbl_ResetTrigger_cpu1SyncReset)
#define CHIP_CTRL_CPU1_SYNC_MASK MSK32Gbl_ResetTrigger_cpu1SyncReset
#define CHIP_CTRL_SYS_PLL_LOCK (bGbl_sysPllCtl_sysPllPu << LSb32Gbl_sysPllCtl_sysPllPu)
#define CHIP_CTRL_CPU0CLKSEL (0x01 << LSb32Gbl_clkSelect_cpu0ClkSel)
#define CHIP_CTRL_CPU1CLKSEL (0x01 << LSb32Gbl_clkSelect_cpu1ClkSel)
#define CHIP_CTRL_SYSCLKSEL (0x02 << LSb32Gbl_clkSelect_sysClkSel)
#define CHIP_CTRL_CFGCLKSEL (0x05 << LSb32Gbl_clkSelect_cfgClkSel)
#define CHIP_CTRL_GFXCLKSEL (0x02 << LSb32Gbl_clkSelect_gfxClkSel)
#define CHIP_CTRL_PERIFCLKSEL (0x05 << LSb32Gbl_clkSelect_perifClkSel)
#define CHIP_CTRL_AUDIO0CLKSEL (0x01 << LSb32Gbl_clkSelect_audio0ClkSel)
#define CHIP_CTRL_AUDIO1CLKSEL (0x01 << LSb32Gbl_clkSelect_audio1ClkSel)
#define CHIP_CTRL_AUDIO2CLKSEL (0x01 << LSb32Gbl_clkSelect_audio2ClkSel)
#define CHIP_CTRL_AUDIO3CLKSEL (0x01 << LSb32Gbl_clkSelect_audio3ClkSel)
#define CHIP_CTRL_VIDEO0CLKSEL (0x01 << LSb32Gbl_clkSelect_video0ClkSel)
#define CHIP_CTRL_VIDEO1CLKSEL (0x01 << LSb32Gbl_clkSelect_video1ClkSel)
#define CHIP_CTRL_CLKSEL (CHIP_CTRL_CPU0CLKSEL | CHIP_CTRL_CPU1CLKSEL | CHIP_CTRL_SYSCLKSEL | CHIP_CTRL_CFGCLKSEL | \
CHIP_CTRL_GFXCLKSEL | CHIP_CTRL_PERIFCLKSEL | CHIP_CTRL_AUDIO0CLKSEL | \
CHIP_CTRL_AUDIO1CLKSEL | CHIP_CTRL_AUDIO2CLKSEL | CHIP_CTRL_AUDIO3CLKSEL | \
CHIP_CTRL_VIDEO0CLKSEL | CHIP_CTRL_VIDEO1CLKSEL)
#define CHIP_CTRL_SYSCLLPASS (0x00 << LSb32Gbl_ClkSwitch_sysPLLpass)
#define CHIP_CTRL_VPROPLLPASS (0x00 << LSb32Gbl_ClkSwitch_vproPLLpass)
#define CHIP_CTRL_CPU0CLKSWITCH (0x01 << LSb32Gbl_ClkSwitch_cpu0ClkSwitch)
#define CHIP_CTRL_CPU0CLKD3SWITCH (0x00 << LSb32Gbl_ClkSwitch_cpu0ClkD3Switch)
#define CHIP_CTRL_CPU1CLKSWITCH (0x01 << LSb32Gbl_ClkSwitch_cpu1ClkSwitch)
#define CHIP_CTRL_CPU1CLKD3SWITCH (0x00 << LSb32Gbl_ClkSwitch_cpu1ClkD3Switch)
#define CHIP_CTRL_SYSCLKSWITCH (0x01 << LSb32Gbl_ClkSwitch_sysClkSwitch)
#define CHIP_CTRL_SYSD3CLKSWITCH (0x00 << LSb32Gbl_ClkSwitch_sysClkD3Switch)
#define CHIP_CTRL_CFGCLKSWITCH (0x01 << LSb32Gbl_ClkSwitch_cfgClkSwitch)
#define CHIP_CTRL_CFGD3CLKSWITCH (0x00 << LSb32Gbl_ClkSwitch_cfgClkD3Switch)
#define CHIP_CTRL_GFXCLKSWITCH (0x01 << LSb32Gbl_ClkSwitch_gfxClkSwitch)
#define CHIP_CTRL_GFXD3CLKSWITCH (0x00 << LSb32Gbl_ClkSwitch_gfxClkD3Switch)
#define CHIP_CTRL_PRIFCLKSWITCH (0x01 << LSb32Gbl_ClkSwitch_perifClkSwitch)
#define CHIP_CTRL_PRIFD3CLKSWITCH (0x00 << LSb32Gbl_ClkSwitch_perifClkD3Switch)
#define CHIP_CTRL_PCUBECLKSWITCH (0x01 << LSb32Gbl_ClkSwitch_pCubeClkSwitch)
#define CHIP_CTRL_VSCOPCLKSWITCH (0x01 << LSb32Gbl_ClkSwitch_vScopeClkSwitch)
#define CHIP_CTRL_CLKSWITCH (CHIP_CTRL_SYSCLLPASS | CHIP_CTRL_VPROPLLPASS | CHIP_CTRL_CPU0CLKSWITCH | \
CHIP_CTRL_CPU1CLKSWITCH | CHIP_CTRL_SYSCLKSWITCH | CHIP_CTRL_CFGCLKSWITCH | \
CHIP_CTRL_GFXCLKSWITCH | CHIP_CTRL_PRIFCLKSWITCH | CHIP_CTRL_PCUBECLKSWITCH | \
CHIP_CTRL_VSCOPCLKSWITCH)
#endif