From 017667c2dc9843eb5082e991f421c773636dcf36 Mon Sep 17 00:00:00 2001 From: Amaury Pouly Date: Thu, 13 Jun 2013 19:03:33 +0200 Subject: imx233: generate register headers for stmp3600, stmp3700 and imx233 Change-Id: Ia87086f4f4f4ecbb844ffd869407b14ea2509934 --- .../target/arm/imx233/regs/stmp3600/regs-anatop.h | 82 +++ .../target/arm/imx233/regs/stmp3600/regs-apbh.h | 288 ++++++++++ .../target/arm/imx233/regs/stmp3600/regs-apbx.h | 276 ++++++++++ .../target/arm/imx233/regs/stmp3600/regs-arc.h | 268 ++++++++++ .../target/arm/imx233/regs/stmp3600/regs-audioin.h | 281 ++++++++++ .../arm/imx233/regs/stmp3600/regs-audioout.h | 473 ++++++++++++++++ .../arm/imx233/regs/stmp3600/regs-brazoiocsr.h | 30 ++ .../target/arm/imx233/regs/stmp3600/regs-clkctrl.h | 344 ++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-dacdma.h | 62 +++ .../target/arm/imx233/regs/stmp3600/regs-digctl.h | 595 +++++++++++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-dri.h | 258 +++++++++ .../target/arm/imx233/regs/stmp3600/regs-emictrl.h | 30 ++ .../target/arm/imx233/regs/stmp3600/regs-gpmi.h | 372 +++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-hwecc.h | 223 ++++++++ .../target/arm/imx233/regs/stmp3600/regs-i2c.h | 521 ++++++++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-icoll.h | 348 ++++++++++++ firmware/target/arm/imx233/regs/stmp3600/regs-ir.h | 477 +++++++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-lcdif.h | 167 ++++++ .../target/arm/imx233/regs/stmp3600/regs-lradc.h | 572 ++++++++++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-memcpy.h | 105 ++++ .../target/arm/imx233/regs/stmp3600/regs-pinctrl.h | 213 ++++++++ .../target/arm/imx233/regs/stmp3600/regs-power.h | 484 +++++++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-pwm.h | 134 +++++ .../target/arm/imx233/regs/stmp3600/regs-rtc.h | 304 +++++++++++ .../target/arm/imx233/regs/stmp3600/regs-spdif.h | 165 ++++++ .../target/arm/imx233/regs/stmp3600/regs-ssp.h | 541 +++++++++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-timrot.h | 267 +++++++++ .../target/arm/imx233/regs/stmp3600/regs-uartapp.h | 371 +++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-uartdbg.h | 491 +++++++++++++++++ .../target/arm/imx233/regs/stmp3600/regs-usbphy.h | 405 ++++++++++++++ 30 files changed, 9147 insertions(+) create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-anatop.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-apbh.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-apbx.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-arc.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-audioin.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-audioout.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-brazoiocsr.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-clkctrl.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-dacdma.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-digctl.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-dri.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-emictrl.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-gpmi.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-hwecc.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-i2c.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-icoll.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-ir.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-lcdif.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-lradc.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-memcpy.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-pinctrl.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-power.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-pwm.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-rtc.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-spdif.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-timrot.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-uartapp.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-uartdbg.h create mode 100644 firmware/target/arm/imx233/regs/stmp3600/regs-usbphy.h (limited to 'firmware/target/arm/imx233/regs/stmp3600') diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-anatop.h b/firmware/target/arm/imx233/regs/stmp3600/regs-anatop.h new file mode 100644 index 0000000000..d18835f044 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-anatop.h @@ -0,0 +1,82 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__ANATOP__H__ +#define __HEADERGEN__STMP3600__ANATOP__H__ + +#define REGS_ANATOP_BASE (0x8003c200) + +#define REGS_ANATOP_VERSION "2.3.0" + +/** + * Register: HW_ANATOP_PROBE_OUTPUT_SELECT + * Address: 0 + * SCT: yes +*/ +#define HW_ANATOP_PROBE_OUTPUT_SELECT (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x0 + 0x0)) +#define HW_ANATOP_PROBE_OUTPUT_SELECT_SET (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x0 + 0x4)) +#define HW_ANATOP_PROBE_OUTPUT_SELECT_CLR (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x0 + 0x8)) +#define HW_ANATOP_PROBE_OUTPUT_SELECT_TOG (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x0 + 0xc)) +#define BP_ANATOP_PROBE_OUTPUT_SELECT_OUTPUT_SELECT 0 +#define BM_ANATOP_PROBE_OUTPUT_SELECT_OUTPUT_SELECT 0xffffffff +#define BF_ANATOP_PROBE_OUTPUT_SELECT_OUTPUT_SELECT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_ANATOP_PROBE_INPUT_SELECT + * Address: 0x10 + * SCT: yes +*/ +#define HW_ANATOP_PROBE_INPUT_SELECT (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x10 + 0x0)) +#define HW_ANATOP_PROBE_INPUT_SELECT_SET (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x10 + 0x4)) +#define HW_ANATOP_PROBE_INPUT_SELECT_CLR (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x10 + 0x8)) +#define HW_ANATOP_PROBE_INPUT_SELECT_TOG (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x10 + 0xc)) +#define BP_ANATOP_PROBE_INPUT_SELECT_INPUT_SELECT 0 +#define BM_ANATOP_PROBE_INPUT_SELECT_INPUT_SELECT 0xffffffff +#define BF_ANATOP_PROBE_INPUT_SELECT_INPUT_SELECT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_ANATOP_PROBE_DATA + * Address: 0x20 + * SCT: yes +*/ +#define HW_ANATOP_PROBE_DATA (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x20 + 0x0)) +#define HW_ANATOP_PROBE_DATA_SET (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x20 + 0x4)) +#define HW_ANATOP_PROBE_DATA_CLR (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x20 + 0x8)) +#define HW_ANATOP_PROBE_DATA_TOG (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x20 + 0xc)) +#define BP_ANATOP_PROBE_DATA_DATA 0 +#define BM_ANATOP_PROBE_DATA_DATA 0xffffffff +#define BF_ANATOP_PROBE_DATA_DATA(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_ANATOP_PROBE_DIGTOP_SELECT + * Address: 0x30 + * SCT: yes +*/ +#define HW_ANATOP_PROBE_DIGTOP_SELECT (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x30 + 0x0)) +#define HW_ANATOP_PROBE_DIGTOP_SELECT_SET (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x30 + 0x4)) +#define HW_ANATOP_PROBE_DIGTOP_SELECT_CLR (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x30 + 0x8)) +#define HW_ANATOP_PROBE_DIGTOP_SELECT_TOG (*(volatile unsigned long *)(REGS_ANATOP_BASE + 0x30 + 0xc)) +#define BP_ANATOP_PROBE_DIGTOP_SELECT_DIGTOP_SELECT 0 +#define BM_ANATOP_PROBE_DIGTOP_SELECT_DIGTOP_SELECT 0xffffffff +#define BF_ANATOP_PROBE_DIGTOP_SELECT_DIGTOP_SELECT(v) (((v) << 0) & 0xffffffff) + +#endif /* __HEADERGEN__STMP3600__ANATOP__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-apbh.h b/firmware/target/arm/imx233/regs/stmp3600/regs-apbh.h new file mode 100644 index 0000000000..ab8d9e6deb --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-apbh.h @@ -0,0 +1,288 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.4.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__APBH__H__ +#define __HEADERGEN__STMP3600__APBH__H__ + +#define REGS_APBH_BASE (0x80004000) + +#define REGS_APBH_VERSION "2.4.0" + +/** + * Register: HW_APBH_CTRL0 + * Address: 0 + * SCT: yes +*/ +#define HW_APBH_CTRL0 (*(volatile unsigned long *)(REGS_APBH_BASE + 0x0 + 0x0)) +#define HW_APBH_CTRL0_SET (*(volatile unsigned long *)(REGS_APBH_BASE + 0x0 + 0x4)) +#define HW_APBH_CTRL0_CLR (*(volatile unsigned long *)(REGS_APBH_BASE + 0x0 + 0x8)) +#define HW_APBH_CTRL0_TOG (*(volatile unsigned long *)(REGS_APBH_BASE + 0x0 + 0xc)) +#define BP_APBH_CTRL0_SFTRST 31 +#define BM_APBH_CTRL0_SFTRST 0x80000000 +#define BF_APBH_CTRL0_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_APBH_CTRL0_CLKGATE 30 +#define BM_APBH_CTRL0_CLKGATE 0x40000000 +#define BF_APBH_CTRL0_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_APBH_CTRL0_RESET_CHANNEL 16 +#define BM_APBH_CTRL0_RESET_CHANNEL 0xff0000 +#define BV_APBH_CTRL0_RESET_CHANNEL__HWECC 0x1 +#define BV_APBH_CTRL0_RESET_CHANNEL__SSP 0x2 +#define BV_APBH_CTRL0_RESET_CHANNEL__SRC 0x4 +#define BV_APBH_CTRL0_RESET_CHANNEL__DEST 0x8 +#define BV_APBH_CTRL0_RESET_CHANNEL__ATA 0x10 +#define BV_APBH_CTRL0_RESET_CHANNEL__NAND0 0x10 +#define BV_APBH_CTRL0_RESET_CHANNEL__NAND1 0x20 +#define BV_APBH_CTRL0_RESET_CHANNEL__NAND2 0x30 +#define BV_APBH_CTRL0_RESET_CHANNEL__NAND3 0x40 +#define BF_APBH_CTRL0_RESET_CHANNEL(v) (((v) << 16) & 0xff0000) +#define BF_APBH_CTRL0_RESET_CHANNEL_V(v) ((BV_APBH_CTRL0_RESET_CHANNEL__##v << 16) & 0xff0000) +#define BP_APBH_CTRL0_CLKGATE_CHANNEL 8 +#define BM_APBH_CTRL0_CLKGATE_CHANNEL 0xff00 +#define BV_APBH_CTRL0_CLKGATE_CHANNEL__HWECC 0x1 +#define BV_APBH_CTRL0_CLKGATE_CHANNEL__SSP 0x2 +#define BV_APBH_CTRL0_CLKGATE_CHANNEL__SRC 0x4 +#define BV_APBH_CTRL0_CLKGATE_CHANNEL__DEST 0x8 +#define BV_APBH_CTRL0_CLKGATE_CHANNEL__ATA 0x10 +#define BV_APBH_CTRL0_CLKGATE_CHANNEL__NAND0 0x10 +#define BV_APBH_CTRL0_CLKGATE_CHANNEL__NAND1 0x20 +#define BV_APBH_CTRL0_CLKGATE_CHANNEL__NAND2 0x30 +#define BV_APBH_CTRL0_CLKGATE_CHANNEL__NAND3 0x40 +#define BF_APBH_CTRL0_CLKGATE_CHANNEL(v) (((v) << 8) & 0xff00) +#define BF_APBH_CTRL0_CLKGATE_CHANNEL_V(v) ((BV_APBH_CTRL0_CLKGATE_CHANNEL__##v << 8) & 0xff00) +#define BP_APBH_CTRL0_FREEZE_CHANNEL 0 +#define BM_APBH_CTRL0_FREEZE_CHANNEL 0xff +#define BV_APBH_CTRL0_FREEZE_CHANNEL__HWECC 0x1 +#define BV_APBH_CTRL0_FREEZE_CHANNEL__SSP 0x2 +#define BV_APBH_CTRL0_FREEZE_CHANNEL__SRC 0x4 +#define BV_APBH_CTRL0_FREEZE_CHANNEL__DEST 0x8 +#define BV_APBH_CTRL0_FREEZE_CHANNEL__ATA 0x10 +#define BV_APBH_CTRL0_FREEZE_CHANNEL__NAND0 0x10 +#define BV_APBH_CTRL0_FREEZE_CHANNEL__NAND1 0x20 +#define BV_APBH_CTRL0_FREEZE_CHANNEL__NAND2 0x30 +#define BV_APBH_CTRL0_FREEZE_CHANNEL__NAND3 0x40 +#define BF_APBH_CTRL0_FREEZE_CHANNEL(v) (((v) << 0) & 0xff) +#define BF_APBH_CTRL0_FREEZE_CHANNEL_V(v) ((BV_APBH_CTRL0_FREEZE_CHANNEL__##v << 0) & 0xff) + +/** + * Register: HW_APBH_CTRL1 + * Address: 0x10 + * SCT: yes +*/ +#define HW_APBH_CTRL1 (*(volatile unsigned long *)(REGS_APBH_BASE + 0x10 + 0x0)) +#define HW_APBH_CTRL1_SET (*(volatile unsigned long *)(REGS_APBH_BASE + 0x10 + 0x4)) +#define HW_APBH_CTRL1_CLR (*(volatile unsigned long *)(REGS_APBH_BASE + 0x10 + 0x8)) +#define HW_APBH_CTRL1_TOG (*(volatile unsigned long *)(REGS_APBH_BASE + 0x10 + 0xc)) +#define BP_APBH_CTRL1_CH_CMDCMPLT_IRQ_EN 16 +#define BM_APBH_CTRL1_CH_CMDCMPLT_IRQ_EN 0xff0000 +#define BF_APBH_CTRL1_CH_CMDCMPLT_IRQ_EN(v) (((v) << 16) & 0xff0000) +#define BP_APBH_CTRL1_CH_CMDCMPLT_IRQ 0 +#define BM_APBH_CTRL1_CH_CMDCMPLT_IRQ 0xff +#define BF_APBH_CTRL1_CH_CMDCMPLT_IRQ(v) (((v) << 0) & 0xff) + +/** + * Register: HW_APBH_DEVSEL + * Address: 0x20 + * SCT: no +*/ +#define HW_APBH_DEVSEL (*(volatile unsigned long *)(REGS_APBH_BASE + 0x20)) +#define BP_APBH_DEVSEL_CH7 28 +#define BM_APBH_DEVSEL_CH7 0xf0000000 +#define BF_APBH_DEVSEL_CH7(v) (((v) << 28) & 0xf0000000) +#define BP_APBH_DEVSEL_CH6 24 +#define BM_APBH_DEVSEL_CH6 0xf000000 +#define BF_APBH_DEVSEL_CH6(v) (((v) << 24) & 0xf000000) +#define BP_APBH_DEVSEL_CH5 20 +#define BM_APBH_DEVSEL_CH5 0xf00000 +#define BF_APBH_DEVSEL_CH5(v) (((v) << 20) & 0xf00000) +#define BP_APBH_DEVSEL_CH4 16 +#define BM_APBH_DEVSEL_CH4 0xf0000 +#define BF_APBH_DEVSEL_CH4(v) (((v) << 16) & 0xf0000) +#define BP_APBH_DEVSEL_CH3 12 +#define BM_APBH_DEVSEL_CH3 0xf000 +#define BF_APBH_DEVSEL_CH3(v) (((v) << 12) & 0xf000) +#define BP_APBH_DEVSEL_CH2 8 +#define BM_APBH_DEVSEL_CH2 0xf00 +#define BF_APBH_DEVSEL_CH2(v) (((v) << 8) & 0xf00) +#define BP_APBH_DEVSEL_CH1 4 +#define BM_APBH_DEVSEL_CH1 0xf0 +#define BF_APBH_DEVSEL_CH1(v) (((v) << 4) & 0xf0) +#define BP_APBH_DEVSEL_CH0 0 +#define BM_APBH_DEVSEL_CH0 0xf +#define BF_APBH_DEVSEL_CH0(v) (((v) << 0) & 0xf) + +/** + * Register: HW_APBH_CHn_DEBUG2 + * Address: 0x90+n*0x70 + * SCT: no +*/ +#define HW_APBH_CHn_DEBUG2(n) (*(volatile unsigned long *)(REGS_APBH_BASE + 0x90+(n)*0x70)) +#define BP_APBH_CHn_DEBUG2_APB_BYTES 16 +#define BM_APBH_CHn_DEBUG2_APB_BYTES 0xffff0000 +#define BF_APBH_CHn_DEBUG2_APB_BYTES(v) (((v) << 16) & 0xffff0000) +#define BP_APBH_CHn_DEBUG2_AHB_BYTES 0 +#define BM_APBH_CHn_DEBUG2_AHB_BYTES 0xffff +#define BF_APBH_CHn_DEBUG2_AHB_BYTES(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_APBH_CHn_CURCMDAR + * Address: 0x30+n*0x70 + * SCT: no +*/ +#define HW_APBH_CHn_CURCMDAR(n) (*(volatile unsigned long *)(REGS_APBH_BASE + 0x30+(n)*0x70)) +#define BP_APBH_CHn_CURCMDAR_CMD_ADDR 0 +#define BM_APBH_CHn_CURCMDAR_CMD_ADDR 0xffffffff +#define BF_APBH_CHn_CURCMDAR_CMD_ADDR(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_APBH_CHn_BAR + * Address: 0x60+n*0x70 + * SCT: no +*/ +#define HW_APBH_CHn_BAR(n) (*(volatile unsigned long *)(REGS_APBH_BASE + 0x60+(n)*0x70)) +#define BP_APBH_CHn_BAR_ADDRESS 0 +#define BM_APBH_CHn_BAR_ADDRESS 0xffffffff +#define BF_APBH_CHn_BAR_ADDRESS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_APBH_CHn_CMD + * Address: 0x50+n*0x70 + * SCT: no +*/ +#define HW_APBH_CHn_CMD(n) (*(volatile unsigned long *)(REGS_APBH_BASE + 0x50+(n)*0x70)) +#define BP_APBH_CHn_CMD_XFER_COUNT 16 +#define BM_APBH_CHn_CMD_XFER_COUNT 0xffff0000 +#define BF_APBH_CHn_CMD_XFER_COUNT(v) (((v) << 16) & 0xffff0000) +#define BP_APBH_CHn_CMD_CMDWORDS 12 +#define BM_APBH_CHn_CMD_CMDWORDS 0xf000 +#define BF_APBH_CHn_CMD_CMDWORDS(v) (((v) << 12) & 0xf000) +#define BP_APBH_CHn_CMD_WAIT4ENDCMD 7 +#define BM_APBH_CHn_CMD_WAIT4ENDCMD 0x80 +#define BF_APBH_CHn_CMD_WAIT4ENDCMD(v) (((v) << 7) & 0x80) +#define BP_APBH_CHn_CMD_SEMAPHORE 6 +#define BM_APBH_CHn_CMD_SEMAPHORE 0x40 +#define BF_APBH_CHn_CMD_SEMAPHORE(v) (((v) << 6) & 0x40) +#define BP_APBH_CHn_CMD_NANDWAIT4READY 5 +#define BM_APBH_CHn_CMD_NANDWAIT4READY 0x20 +#define BF_APBH_CHn_CMD_NANDWAIT4READY(v) (((v) << 5) & 0x20) +#define BP_APBH_CHn_CMD_NANDLOCK 4 +#define BM_APBH_CHn_CMD_NANDLOCK 0x10 +#define BF_APBH_CHn_CMD_NANDLOCK(v) (((v) << 4) & 0x10) +#define BP_APBH_CHn_CMD_IRQONCMPLT 3 +#define BM_APBH_CHn_CMD_IRQONCMPLT 0x8 +#define BF_APBH_CHn_CMD_IRQONCMPLT(v) (((v) << 3) & 0x8) +#define BP_APBH_CHn_CMD_CHAIN 2 +#define BM_APBH_CHn_CMD_CHAIN 0x4 +#define BF_APBH_CHn_CMD_CHAIN(v) (((v) << 2) & 0x4) +#define BP_APBH_CHn_CMD_COMMAND 0 +#define BM_APBH_CHn_CMD_COMMAND 0x3 +#define BV_APBH_CHn_CMD_COMMAND__NO_DMA_XFER 0x0 +#define BV_APBH_CHn_CMD_COMMAND__DMA_WRITE 0x1 +#define BV_APBH_CHn_CMD_COMMAND__DMA_READ 0x2 +#define BV_APBH_CHn_CMD_COMMAND__DMA_SENSE 0x3 +#define BF_APBH_CHn_CMD_COMMAND(v) (((v) << 0) & 0x3) +#define BF_APBH_CHn_CMD_COMMAND_V(v) ((BV_APBH_CHn_CMD_COMMAND__##v << 0) & 0x3) + +/** + * Register: HW_APBH_CHn_NXTCMDAR + * Address: 0x40+n*0x70 + * SCT: no +*/ +#define HW_APBH_CHn_NXTCMDAR(n) (*(volatile unsigned long *)(REGS_APBH_BASE + 0x40+(n)*0x70)) +#define BP_APBH_CHn_NXTCMDAR_CMD_ADDR 0 +#define BM_APBH_CHn_NXTCMDAR_CMD_ADDR 0xffffffff +#define BF_APBH_CHn_NXTCMDAR_CMD_ADDR(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_APBH_CHn_SEMA + * Address: 0x70+n*0x70 + * SCT: no +*/ +#define HW_APBH_CHn_SEMA(n) (*(volatile unsigned long *)(REGS_APBH_BASE + 0x70+(n)*0x70)) +#define BP_APBH_CHn_SEMA_PHORE 16 +#define BM_APBH_CHn_SEMA_PHORE 0xff0000 +#define BF_APBH_CHn_SEMA_PHORE(v) (((v) << 16) & 0xff0000) +#define BP_APBH_CHn_SEMA_INCREMENT_SEMA 0 +#define BM_APBH_CHn_SEMA_INCREMENT_SEMA 0xff +#define BF_APBH_CHn_SEMA_INCREMENT_SEMA(v) (((v) << 0) & 0xff) + +/** + * Register: HW_APBH_CHn_DEBUG1 + * Address: 0x80+n*0x70 + * SCT: no +*/ +#define HW_APBH_CHn_DEBUG1(n) (*(volatile unsigned long *)(REGS_APBH_BASE + 0x80+(n)*0x70)) +#define BP_APBH_CHn_DEBUG1_REQ 31 +#define BM_APBH_CHn_DEBUG1_REQ 0x80000000 +#define BF_APBH_CHn_DEBUG1_REQ(v) (((v) << 31) & 0x80000000) +#define BP_APBH_CHn_DEBUG1_BURST 30 +#define BM_APBH_CHn_DEBUG1_BURST 0x40000000 +#define BF_APBH_CHn_DEBUG1_BURST(v) (((v) << 30) & 0x40000000) +#define BP_APBH_CHn_DEBUG1_KICK 29 +#define BM_APBH_CHn_DEBUG1_KICK 0x20000000 +#define BF_APBH_CHn_DEBUG1_KICK(v) (((v) << 29) & 0x20000000) +#define BP_APBH_CHn_DEBUG1_END 28 +#define BM_APBH_CHn_DEBUG1_END 0x10000000 +#define BF_APBH_CHn_DEBUG1_END(v) (((v) << 28) & 0x10000000) +#define BP_APBH_CHn_DEBUG1_RSVD2 25 +#define BM_APBH_CHn_DEBUG1_RSVD2 0xe000000 +#define BF_APBH_CHn_DEBUG1_RSVD2(v) (((v) << 25) & 0xe000000) +#define BP_APBH_CHn_DEBUG1_NEXTCMDADDRVALID 24 +#define BM_APBH_CHn_DEBUG1_NEXTCMDADDRVALID 0x1000000 +#define BF_APBH_CHn_DEBUG1_NEXTCMDADDRVALID(v) (((v) << 24) & 0x1000000) +#define BP_APBH_CHn_DEBUG1_RD_FIFO_EMPTY 23 +#define BM_APBH_CHn_DEBUG1_RD_FIFO_EMPTY 0x800000 +#define BF_APBH_CHn_DEBUG1_RD_FIFO_EMPTY(v) (((v) << 23) & 0x800000) +#define BP_APBH_CHn_DEBUG1_RD_FIFO_FULL 22 +#define BM_APBH_CHn_DEBUG1_RD_FIFO_FULL 0x400000 +#define BF_APBH_CHn_DEBUG1_RD_FIFO_FULL(v) (((v) << 22) & 0x400000) +#define BP_APBH_CHn_DEBUG1_WR_FIFO_EMPTY 21 +#define BM_APBH_CHn_DEBUG1_WR_FIFO_EMPTY 0x200000 +#define BF_APBH_CHn_DEBUG1_WR_FIFO_EMPTY(v) (((v) << 21) & 0x200000) +#define BP_APBH_CHn_DEBUG1_WR_FIFO_FULL 20 +#define BM_APBH_CHn_DEBUG1_WR_FIFO_FULL 0x100000 +#define BF_APBH_CHn_DEBUG1_WR_FIFO_FULL(v) (((v) << 20) & 0x100000) +#define BP_APBH_CHn_DEBUG1_RSVD1 5 +#define BM_APBH_CHn_DEBUG1_RSVD1 0xfffe0 +#define BF_APBH_CHn_DEBUG1_RSVD1(v) (((v) << 5) & 0xfffe0) +#define BP_APBH_CHn_DEBUG1_STATEMACHINE 0 +#define BM_APBH_CHn_DEBUG1_STATEMACHINE 0x1f +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__IDLE 0x0 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__REQ_CMD1 0x1 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__REQ_CMD3 0x2 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__REQ_CMD2 0x3 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__XFER_DECODE 0x4 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__REQ_WAIT 0x5 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__REQ_CMD4 0x6 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__PIO_REQ 0x7 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__READ_FLUSH 0x8 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__READ_WAIT 0x9 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__WRITE 0xc +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__READ_REQ 0xd +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__CHECK_CHAIN 0xe +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__XFER_COMPLETE 0xf +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__WAIT_END 0x15 +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__WRITE_WAIT 0x1c +#define BV_APBH_CHn_DEBUG1_STATEMACHINE__CHECK_WAIT 0x1e +#define BF_APBH_CHn_DEBUG1_STATEMACHINE(v) (((v) << 0) & 0x1f) +#define BF_APBH_CHn_DEBUG1_STATEMACHINE_V(v) ((BV_APBH_CHn_DEBUG1_STATEMACHINE__##v << 0) & 0x1f) + +#endif /* __HEADERGEN__STMP3600__APBH__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-apbx.h b/firmware/target/arm/imx233/regs/stmp3600/regs-apbx.h new file mode 100644 index 0000000000..fcb9949616 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-apbx.h @@ -0,0 +1,276 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.4.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__APBX__H__ +#define __HEADERGEN__STMP3600__APBX__H__ + +#define REGS_APBX_BASE (0x80024000) + +#define REGS_APBX_VERSION "2.4.0" + +/** + * Register: HW_APBX_CTRL0 + * Address: 0 + * SCT: yes +*/ +#define HW_APBX_CTRL0 (*(volatile unsigned long *)(REGS_APBX_BASE + 0x0 + 0x0)) +#define HW_APBX_CTRL0_SET (*(volatile unsigned long *)(REGS_APBX_BASE + 0x0 + 0x4)) +#define HW_APBX_CTRL0_CLR (*(volatile unsigned long *)(REGS_APBX_BASE + 0x0 + 0x8)) +#define HW_APBX_CTRL0_TOG (*(volatile unsigned long *)(REGS_APBX_BASE + 0x0 + 0xc)) +#define BP_APBX_CTRL0_SFTRST 31 +#define BM_APBX_CTRL0_SFTRST 0x80000000 +#define BF_APBX_CTRL0_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_APBX_CTRL0_CLKGATE 30 +#define BM_APBX_CTRL0_CLKGATE 0x40000000 +#define BF_APBX_CTRL0_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_APBX_CTRL0_RESET_CHANNEL 16 +#define BM_APBX_CTRL0_RESET_CHANNEL 0xff0000 +#define BV_APBX_CTRL0_RESET_CHANNEL__AUDIOIN 0x1 +#define BV_APBX_CTRL0_RESET_CHANNEL__AUDIOOUT 0x2 +#define BV_APBX_CTRL0_RESET_CHANNEL__SPDIF_TX 0x4 +#define BV_APBX_CTRL0_RESET_CHANNEL__I2C 0x8 +#define BV_APBX_CTRL0_RESET_CHANNEL__LCDIF 0x10 +#define BV_APBX_CTRL0_RESET_CHANNEL__DRI 0x20 +#define BV_APBX_CTRL0_RESET_CHANNEL__UART_RX 0x30 +#define BV_APBX_CTRL0_RESET_CHANNEL__IRDA_RX 0x30 +#define BV_APBX_CTRL0_RESET_CHANNEL__UART_TX 0x40 +#define BV_APBX_CTRL0_RESET_CHANNEL__IRDA_TX 0x40 +#define BF_APBX_CTRL0_RESET_CHANNEL(v) (((v) << 16) & 0xff0000) +#define BF_APBX_CTRL0_RESET_CHANNEL_V(v) ((BV_APBX_CTRL0_RESET_CHANNEL__##v << 16) & 0xff0000) +#define BP_APBX_CTRL0_FREEZE_CHANNEL 0 +#define BM_APBX_CTRL0_FREEZE_CHANNEL 0xff +#define BV_APBX_CTRL0_FREEZE_CHANNEL__AUDIOIN 0x1 +#define BV_APBX_CTRL0_FREEZE_CHANNEL__AUDIOOUT 0x2 +#define BV_APBX_CTRL0_FREEZE_CHANNEL__SPDIF_TX 0x4 +#define BV_APBX_CTRL0_FREEZE_CHANNEL__I2C 0x8 +#define BV_APBX_CTRL0_FREEZE_CHANNEL__LCDIF 0x10 +#define BV_APBX_CTRL0_FREEZE_CHANNEL__DRI 0x20 +#define BV_APBX_CTRL0_FREEZE_CHANNEL__UART_RX 0x30 +#define BV_APBX_CTRL0_FREEZE_CHANNEL__IRDA_RX 0x30 +#define BV_APBX_CTRL0_FREEZE_CHANNEL__UART_TX 0x40 +#define BV_APBX_CTRL0_FREEZE_CHANNEL__IRDA_TX 0x40 +#define BF_APBX_CTRL0_FREEZE_CHANNEL(v) (((v) << 0) & 0xff) +#define BF_APBX_CTRL0_FREEZE_CHANNEL_V(v) ((BV_APBX_CTRL0_FREEZE_CHANNEL__##v << 0) & 0xff) + +/** + * Register: HW_APBX_CTRL1 + * Address: 0x10 + * SCT: yes +*/ +#define HW_APBX_CTRL1 (*(volatile unsigned long *)(REGS_APBX_BASE + 0x10 + 0x0)) +#define HW_APBX_CTRL1_SET (*(volatile unsigned long *)(REGS_APBX_BASE + 0x10 + 0x4)) +#define HW_APBX_CTRL1_CLR (*(volatile unsigned long *)(REGS_APBX_BASE + 0x10 + 0x8)) +#define HW_APBX_CTRL1_TOG (*(volatile unsigned long *)(REGS_APBX_BASE + 0x10 + 0xc)) +#define BP_APBX_CTRL1_CH_CMDCMPLT_IRQ_EN 16 +#define BM_APBX_CTRL1_CH_CMDCMPLT_IRQ_EN 0xff0000 +#define BF_APBX_CTRL1_CH_CMDCMPLT_IRQ_EN(v) (((v) << 16) & 0xff0000) +#define BP_APBX_CTRL1_CH_CMDCMPLT_IRQ 0 +#define BM_APBX_CTRL1_CH_CMDCMPLT_IRQ 0xff +#define BF_APBX_CTRL1_CH_CMDCMPLT_IRQ(v) (((v) << 0) & 0xff) + +/** + * Register: HW_APBX_DEVSEL + * Address: 0x20 + * SCT: no +*/ +#define HW_APBX_DEVSEL (*(volatile unsigned long *)(REGS_APBX_BASE + 0x20)) +#define BP_APBX_DEVSEL_CH7 28 +#define BM_APBX_DEVSEL_CH7 0xf0000000 +#define BV_APBX_DEVSEL_CH7__USE_UART 0x0 +#define BV_APBX_DEVSEL_CH7__USE_IRDA 0x1 +#define BF_APBX_DEVSEL_CH7(v) (((v) << 28) & 0xf0000000) +#define BF_APBX_DEVSEL_CH7_V(v) ((BV_APBX_DEVSEL_CH7__##v << 28) & 0xf0000000) +#define BP_APBX_DEVSEL_CH6 24 +#define BM_APBX_DEVSEL_CH6 0xf000000 +#define BV_APBX_DEVSEL_CH6__USE_UART 0x0 +#define BV_APBX_DEVSEL_CH6__USE_IRDA 0x1 +#define BF_APBX_DEVSEL_CH6(v) (((v) << 24) & 0xf000000) +#define BF_APBX_DEVSEL_CH6_V(v) ((BV_APBX_DEVSEL_CH6__##v << 24) & 0xf000000) +#define BP_APBX_DEVSEL_CH5 20 +#define BM_APBX_DEVSEL_CH5 0xf00000 +#define BF_APBX_DEVSEL_CH5(v) (((v) << 20) & 0xf00000) +#define BP_APBX_DEVSEL_CH4 16 +#define BM_APBX_DEVSEL_CH4 0xf0000 +#define BF_APBX_DEVSEL_CH4(v) (((v) << 16) & 0xf0000) +#define BP_APBX_DEVSEL_CH3 12 +#define BM_APBX_DEVSEL_CH3 0xf000 +#define BF_APBX_DEVSEL_CH3(v) (((v) << 12) & 0xf000) +#define BP_APBX_DEVSEL_CH2 8 +#define BM_APBX_DEVSEL_CH2 0xf00 +#define BF_APBX_DEVSEL_CH2(v) (((v) << 8) & 0xf00) +#define BP_APBX_DEVSEL_CH1 4 +#define BM_APBX_DEVSEL_CH1 0xf0 +#define BF_APBX_DEVSEL_CH1(v) (((v) << 4) & 0xf0) +#define BP_APBX_DEVSEL_CH0 0 +#define BM_APBX_DEVSEL_CH0 0xf +#define BF_APBX_DEVSEL_CH0(v) (((v) << 0) & 0xf) + +/** + * Register: HW_APBX_CHn_NXTCMDAR + * Address: 0x40+n*0x70 + * SCT: no +*/ +#define HW_APBX_CHn_NXTCMDAR(n) (*(volatile unsigned long *)(REGS_APBX_BASE + 0x40+(n)*0x70)) +#define BP_APBX_CHn_NXTCMDAR_CMD_ADDR 0 +#define BM_APBX_CHn_NXTCMDAR_CMD_ADDR 0xffffffff +#define BF_APBX_CHn_NXTCMDAR_CMD_ADDR(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_APBX_CHn_DEBUG2 + * Address: 0x90+n*0x70 + * SCT: no +*/ +#define HW_APBX_CHn_DEBUG2(n) (*(volatile unsigned long *)(REGS_APBX_BASE + 0x90+(n)*0x70)) +#define BP_APBX_CHn_DEBUG2_APB_BYTES 16 +#define BM_APBX_CHn_DEBUG2_APB_BYTES 0xffff0000 +#define BF_APBX_CHn_DEBUG2_APB_BYTES(v) (((v) << 16) & 0xffff0000) +#define BP_APBX_CHn_DEBUG2_AHB_BYTES 0 +#define BM_APBX_CHn_DEBUG2_AHB_BYTES 0xffff +#define BF_APBX_CHn_DEBUG2_AHB_BYTES(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_APBX_CHn_BAR + * Address: 0x60+n*0x70 + * SCT: no +*/ +#define HW_APBX_CHn_BAR(n) (*(volatile unsigned long *)(REGS_APBX_BASE + 0x60+(n)*0x70)) +#define BP_APBX_CHn_BAR_ADDRESS 0 +#define BM_APBX_CHn_BAR_ADDRESS 0xffffffff +#define BF_APBX_CHn_BAR_ADDRESS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_APBX_CHn_CMD + * Address: 0x50+n*0x70 + * SCT: no +*/ +#define HW_APBX_CHn_CMD(n) (*(volatile unsigned long *)(REGS_APBX_BASE + 0x50+(n)*0x70)) +#define BP_APBX_CHn_CMD_XFER_COUNT 16 +#define BM_APBX_CHn_CMD_XFER_COUNT 0xffff0000 +#define BF_APBX_CHn_CMD_XFER_COUNT(v) (((v) << 16) & 0xffff0000) +#define BP_APBX_CHn_CMD_CMDWORDS 12 +#define BM_APBX_CHn_CMD_CMDWORDS 0xf000 +#define BF_APBX_CHn_CMD_CMDWORDS(v) (((v) << 12) & 0xf000) +#define BP_APBX_CHn_CMD_WAIT4ENDCMD 7 +#define BM_APBX_CHn_CMD_WAIT4ENDCMD 0x80 +#define BF_APBX_CHn_CMD_WAIT4ENDCMD(v) (((v) << 7) & 0x80) +#define BP_APBX_CHn_CMD_SEMAPHORE 6 +#define BM_APBX_CHn_CMD_SEMAPHORE 0x40 +#define BF_APBX_CHn_CMD_SEMAPHORE(v) (((v) << 6) & 0x40) +#define BP_APBX_CHn_CMD_IRQONCMPLT 3 +#define BM_APBX_CHn_CMD_IRQONCMPLT 0x8 +#define BF_APBX_CHn_CMD_IRQONCMPLT(v) (((v) << 3) & 0x8) +#define BP_APBX_CHn_CMD_CHAIN 2 +#define BM_APBX_CHn_CMD_CHAIN 0x4 +#define BF_APBX_CHn_CMD_CHAIN(v) (((v) << 2) & 0x4) +#define BP_APBX_CHn_CMD_COMMAND 0 +#define BM_APBX_CHn_CMD_COMMAND 0x3 +#define BV_APBX_CHn_CMD_COMMAND__NO_DMA_XFER 0x0 +#define BV_APBX_CHn_CMD_COMMAND__DMA_WRITE 0x1 +#define BV_APBX_CHn_CMD_COMMAND__DMA_READ 0x2 +#define BF_APBX_CHn_CMD_COMMAND(v) (((v) << 0) & 0x3) +#define BF_APBX_CHn_CMD_COMMAND_V(v) ((BV_APBX_CHn_CMD_COMMAND__##v << 0) & 0x3) + +/** + * Register: HW_APBX_CHn_DEBUG1 + * Address: 0x80+n*0x70 + * SCT: no +*/ +#define HW_APBX_CHn_DEBUG1(n) (*(volatile unsigned long *)(REGS_APBX_BASE + 0x80+(n)*0x70)) +#define BP_APBX_CHn_DEBUG1_REQ 31 +#define BM_APBX_CHn_DEBUG1_REQ 0x80000000 +#define BF_APBX_CHn_DEBUG1_REQ(v) (((v) << 31) & 0x80000000) +#define BP_APBX_CHn_DEBUG1_BURST 30 +#define BM_APBX_CHn_DEBUG1_BURST 0x40000000 +#define BF_APBX_CHn_DEBUG1_BURST(v) (((v) << 30) & 0x40000000) +#define BP_APBX_CHn_DEBUG1_KICK 29 +#define BM_APBX_CHn_DEBUG1_KICK 0x20000000 +#define BF_APBX_CHn_DEBUG1_KICK(v) (((v) << 29) & 0x20000000) +#define BP_APBX_CHn_DEBUG1_END 28 +#define BM_APBX_CHn_DEBUG1_END 0x10000000 +#define BF_APBX_CHn_DEBUG1_END(v) (((v) << 28) & 0x10000000) +#define BP_APBX_CHn_DEBUG1_RSVD2 25 +#define BM_APBX_CHn_DEBUG1_RSVD2 0xe000000 +#define BF_APBX_CHn_DEBUG1_RSVD2(v) (((v) << 25) & 0xe000000) +#define BP_APBX_CHn_DEBUG1_NEXTCMDADDRVALID 24 +#define BM_APBX_CHn_DEBUG1_NEXTCMDADDRVALID 0x1000000 +#define BF_APBX_CHn_DEBUG1_NEXTCMDADDRVALID(v) (((v) << 24) & 0x1000000) +#define BP_APBX_CHn_DEBUG1_RD_FIFO_EMPTY 23 +#define BM_APBX_CHn_DEBUG1_RD_FIFO_EMPTY 0x800000 +#define BF_APBX_CHn_DEBUG1_RD_FIFO_EMPTY(v) (((v) << 23) & 0x800000) +#define BP_APBX_CHn_DEBUG1_RD_FIFO_FULL 22 +#define BM_APBX_CHn_DEBUG1_RD_FIFO_FULL 0x400000 +#define BF_APBX_CHn_DEBUG1_RD_FIFO_FULL(v) (((v) << 22) & 0x400000) +#define BP_APBX_CHn_DEBUG1_WR_FIFO_EMPTY 21 +#define BM_APBX_CHn_DEBUG1_WR_FIFO_EMPTY 0x200000 +#define BF_APBX_CHn_DEBUG1_WR_FIFO_EMPTY(v) (((v) << 21) & 0x200000) +#define BP_APBX_CHn_DEBUG1_WR_FIFO_FULL 20 +#define BM_APBX_CHn_DEBUG1_WR_FIFO_FULL 0x100000 +#define BF_APBX_CHn_DEBUG1_WR_FIFO_FULL(v) (((v) << 20) & 0x100000) +#define BP_APBX_CHn_DEBUG1_RSVD1 5 +#define BM_APBX_CHn_DEBUG1_RSVD1 0xfffe0 +#define BF_APBX_CHn_DEBUG1_RSVD1(v) (((v) << 5) & 0xfffe0) +#define BP_APBX_CHn_DEBUG1_STATEMACHINE 0 +#define BM_APBX_CHn_DEBUG1_STATEMACHINE 0x1f +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__IDLE 0x0 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__REQ_CMD1 0x1 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__REQ_CMD3 0x2 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__REQ_CMD2 0x3 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__XFER_DECODE 0x4 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__REQ_WAIT 0x5 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__REQ_CMD4 0x6 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__PIO_REQ 0x7 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__READ_FLUSH 0x8 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__READ_WAIT 0x9 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__WRITE 0xc +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__READ_REQ 0xd +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__CHECK_CHAIN 0xe +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__XFER_COMPLETE 0xf +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__WAIT_END 0x15 +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__WRITE_WAIT 0x1c +#define BV_APBX_CHn_DEBUG1_STATEMACHINE__CHECK_WAIT 0x1e +#define BF_APBX_CHn_DEBUG1_STATEMACHINE(v) (((v) << 0) & 0x1f) +#define BF_APBX_CHn_DEBUG1_STATEMACHINE_V(v) ((BV_APBX_CHn_DEBUG1_STATEMACHINE__##v << 0) & 0x1f) + +/** + * Register: HW_APBX_CHn_SEMA + * Address: 0x70+n*0x70 + * SCT: no +*/ +#define HW_APBX_CHn_SEMA(n) (*(volatile unsigned long *)(REGS_APBX_BASE + 0x70+(n)*0x70)) +#define BP_APBX_CHn_SEMA_PHORE 16 +#define BM_APBX_CHn_SEMA_PHORE 0xff0000 +#define BF_APBX_CHn_SEMA_PHORE(v) (((v) << 16) & 0xff0000) +#define BP_APBX_CHn_SEMA_INCREMENT_SEMA 0 +#define BM_APBX_CHn_SEMA_INCREMENT_SEMA 0xff +#define BF_APBX_CHn_SEMA_INCREMENT_SEMA(v) (((v) << 0) & 0xff) + +/** + * Register: HW_APBX_CHn_CURCMDAR + * Address: 0x30+n*0x70 + * SCT: no +*/ +#define HW_APBX_CHn_CURCMDAR(n) (*(volatile unsigned long *)(REGS_APBX_BASE + 0x30+(n)*0x70)) +#define BP_APBX_CHn_CURCMDAR_CMD_ADDR 0 +#define BM_APBX_CHn_CURCMDAR_CMD_ADDR 0xffffffff +#define BF_APBX_CHn_CURCMDAR_CMD_ADDR(v) (((v) << 0) & 0xffffffff) + +#endif /* __HEADERGEN__STMP3600__APBX__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-arc.h b/firmware/target/arm/imx233/regs/stmp3600/regs-arc.h new file mode 100644 index 0000000000..af64d3a4ef --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-arc.h @@ -0,0 +1,268 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__ARC__H__ +#define __HEADERGEN__STMP3600__ARC__H__ + +#define REGS_ARC_BASE (0x80080000) + +#define REGS_ARC_VERSION "2.3.0" + +/** + * Register: HW_ARC_BASE + * Address: 0 + * SCT: no +*/ +#define HW_ARC_BASE (*(volatile unsigned long *)(REGS_ARC_BASE + 0x0)) + +/** + * Register: HW_ARC_ID + * Address: 0 + * SCT: no +*/ +#define HW_ARC_ID (*(volatile unsigned long *)(REGS_ARC_BASE + 0x0)) + +/** + * Register: HW_ARC_HCSPARAMS + * Address: 0x104 + * SCT: no +*/ +#define HW_ARC_HCSPARAMS (*(volatile unsigned long *)(REGS_ARC_BASE + 0x104)) + +/** + * Register: HW_ARC_USBCMD + * Address: 0x140 + * SCT: no +*/ +#define HW_ARC_USBCMD (*(volatile unsigned long *)(REGS_ARC_BASE + 0x140)) + +/** + * Register: HW_ARC_USBSTS + * Address: 0x144 + * SCT: no +*/ +#define HW_ARC_USBSTS (*(volatile unsigned long *)(REGS_ARC_BASE + 0x144)) + +/** + * Register: HW_ARC_USBINTR + * Address: 0x148 + * SCT: no +*/ +#define HW_ARC_USBINTR (*(volatile unsigned long *)(REGS_ARC_BASE + 0x148)) + +/** + * Register: HW_ARC_FRINDEX + * Address: 0x14c + * SCT: no +*/ +#define HW_ARC_FRINDEX (*(volatile unsigned long *)(REGS_ARC_BASE + 0x14c)) + +/** + * Register: HW_ARC_DEVADDR + * Address: 0x154 + * SCT: no +*/ +#define HW_ARC_DEVADDR (*(volatile unsigned long *)(REGS_ARC_BASE + 0x154)) + +/** + * Register: HW_ARC_ENDPTLISTADDR + * Address: 0x158 + * SCT: no +*/ +#define HW_ARC_ENDPTLISTADDR (*(volatile unsigned long *)(REGS_ARC_BASE + 0x158)) + +/** + * Register: HW_ARC_PORTSC1 + * Address: 0x184 + * SCT: no +*/ +#define HW_ARC_PORTSC1 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x184)) + +/** + * Register: HW_ARC_OTGSC + * Address: 0x1a4 + * SCT: no +*/ +#define HW_ARC_OTGSC (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1a4)) + +/** + * Register: HW_ARC_USBMODE + * Address: 0x1a8 + * SCT: no +*/ +#define HW_ARC_USBMODE (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1a8)) + +/** + * Register: HW_ARC_ENDPTSETUPSTAT + * Address: 0x1ac + * SCT: no +*/ +#define HW_ARC_ENDPTSETUPSTAT (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1ac)) + +/** + * Register: HW_ARC_ENDPTPRIME + * Address: 0x1b0 + * SCT: no +*/ +#define HW_ARC_ENDPTPRIME (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1b0)) + +/** + * Register: HW_ARC_ENDPTFLUSH + * Address: 0x1b4 + * SCT: no +*/ +#define HW_ARC_ENDPTFLUSH (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1b4)) + +/** + * Register: HW_ARC_ENDPTSTATUS + * Address: 0x1b8 + * SCT: no +*/ +#define HW_ARC_ENDPTSTATUS (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1b8)) + +/** + * Register: HW_ARC_ENDPTCOMPLETE + * Address: 0x1bc + * SCT: no +*/ +#define HW_ARC_ENDPTCOMPLETE (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1bc)) + +/** + * Register: HW_ARC_ENDPTCTRL0 + * Address: 0x1c0 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL0 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1c0)) + +/** + * Register: HW_ARC_ENDPTCTRL1 + * Address: 0x1c4 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL1 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1c4)) + +/** + * Register: HW_ARC_ENDPTCTRL2 + * Address: 0x1c8 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL2 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1c8)) + +/** + * Register: HW_ARC_ENDPTCTRL3 + * Address: 0x1cc + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL3 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1cc)) + +/** + * Register: HW_ARC_ENDPTCTRL4 + * Address: 0x1d0 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL4 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1d0)) + +/** + * Register: HW_ARC_ENDPTCTRL5 + * Address: 0x1d4 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL5 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1d4)) + +/** + * Register: HW_ARC_ENDPTCTRL6 + * Address: 0x1d8 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL6 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1d8)) + +/** + * Register: HW_ARC_ENDPTCTRL7 + * Address: 0x1dc + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL7 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1dc)) + +/** + * Register: HW_ARC_ENDPTCTRL8 + * Address: 0x1e0 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL8 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1e0)) + +/** + * Register: HW_ARC_ENDPTCTRL9 + * Address: 0x1e4 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL9 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1e4)) + +/** + * Register: HW_ARC_ENDPTCTRL10 + * Address: 0x1e8 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL10 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1e8)) + +/** + * Register: HW_ARC_ENDPTCTRL11 + * Address: 0x1ec + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL11 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1ec)) + +/** + * Register: HW_ARC_ENDPTCTRL12 + * Address: 0x1f0 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL12 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1f0)) + +/** + * Register: HW_ARC_ENDPTCTRL13 + * Address: 0x1f4 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL13 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1f4)) + +/** + * Register: HW_ARC_ENDPTCTRL14 + * Address: 0x1f8 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL14 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1f8)) + +/** + * Register: HW_ARC_ENDPTCTRL15 + * Address: 0x1fc + * SCT: no +*/ +#define HW_ARC_ENDPTCTRL15 (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1fc)) + +/** + * Register: HW_ARC_ENDPTCTRLn + * Address: 0x1c0+n*0x4 + * SCT: no +*/ +#define HW_ARC_ENDPTCTRLn(n) (*(volatile unsigned long *)(REGS_ARC_BASE + 0x1c0+(n)*0x4)) + +#endif /* __HEADERGEN__STMP3600__ARC__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-audioin.h b/firmware/target/arm/imx233/regs/stmp3600/regs-audioin.h new file mode 100644 index 0000000000..8b5fbac6ea --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-audioin.h @@ -0,0 +1,281 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.5.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__AUDIOIN__H__ +#define __HEADERGEN__STMP3600__AUDIOIN__H__ + +#define REGS_AUDIOIN_BASE (0x8004c000) + +#define REGS_AUDIOIN_VERSION "2.5.0" + +/** + * Register: HW_AUDIOIN_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_AUDIOIN_CTRL (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x0 + 0x0)) +#define HW_AUDIOIN_CTRL_SET (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x0 + 0x4)) +#define HW_AUDIOIN_CTRL_CLR (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x0 + 0x8)) +#define HW_AUDIOIN_CTRL_TOG (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x0 + 0xc)) +#define BP_AUDIOIN_CTRL_SFTRST 31 +#define BM_AUDIOIN_CTRL_SFTRST 0x80000000 +#define BF_AUDIOIN_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_AUDIOIN_CTRL_CLKGATE 30 +#define BM_AUDIOIN_CTRL_CLKGATE 0x40000000 +#define BF_AUDIOIN_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_AUDIOIN_CTRL_DMAWAIT_COUNT 16 +#define BM_AUDIOIN_CTRL_DMAWAIT_COUNT 0x1f0000 +#define BF_AUDIOIN_CTRL_DMAWAIT_COUNT(v) (((v) << 16) & 0x1f0000) +#define BP_AUDIOIN_CTRL_LR_SWAP 10 +#define BM_AUDIOIN_CTRL_LR_SWAP 0x400 +#define BF_AUDIOIN_CTRL_LR_SWAP(v) (((v) << 10) & 0x400) +#define BP_AUDIOIN_CTRL_EDGE_SYNC 9 +#define BM_AUDIOIN_CTRL_EDGE_SYNC 0x200 +#define BF_AUDIOIN_CTRL_EDGE_SYNC(v) (((v) << 9) & 0x200) +#define BP_AUDIOIN_CTRL_INVERT_1BIT 8 +#define BM_AUDIOIN_CTRL_INVERT_1BIT 0x100 +#define BF_AUDIOIN_CTRL_INVERT_1BIT(v) (((v) << 8) & 0x100) +#define BP_AUDIOIN_CTRL_OFFSET_ENABLE 7 +#define BM_AUDIOIN_CTRL_OFFSET_ENABLE 0x80 +#define BF_AUDIOIN_CTRL_OFFSET_ENABLE(v) (((v) << 7) & 0x80) +#define BP_AUDIOIN_CTRL_HPF_ENABLE 6 +#define BM_AUDIOIN_CTRL_HPF_ENABLE 0x40 +#define BF_AUDIOIN_CTRL_HPF_ENABLE(v) (((v) << 6) & 0x40) +#define BP_AUDIOIN_CTRL_WORD_LENGTH 5 +#define BM_AUDIOIN_CTRL_WORD_LENGTH 0x20 +#define BF_AUDIOIN_CTRL_WORD_LENGTH(v) (((v) << 5) & 0x20) +#define BP_AUDIOIN_CTRL_LOOPBACK 4 +#define BM_AUDIOIN_CTRL_LOOPBACK 0x10 +#define BF_AUDIOIN_CTRL_LOOPBACK(v) (((v) << 4) & 0x10) +#define BP_AUDIOIN_CTRL_FIFO_UNDERFLOW_IRQ 3 +#define BM_AUDIOIN_CTRL_FIFO_UNDERFLOW_IRQ 0x8 +#define BF_AUDIOIN_CTRL_FIFO_UNDERFLOW_IRQ(v) (((v) << 3) & 0x8) +#define BP_AUDIOIN_CTRL_FIFO_OVERFLOW_IRQ 2 +#define BM_AUDIOIN_CTRL_FIFO_OVERFLOW_IRQ 0x4 +#define BF_AUDIOIN_CTRL_FIFO_OVERFLOW_IRQ(v) (((v) << 2) & 0x4) +#define BP_AUDIOIN_CTRL_FIFO_ERROR_IRQ_EN 1 +#define BM_AUDIOIN_CTRL_FIFO_ERROR_IRQ_EN 0x2 +#define BF_AUDIOIN_CTRL_FIFO_ERROR_IRQ_EN(v) (((v) << 1) & 0x2) +#define BP_AUDIOIN_CTRL_RUN 0 +#define BM_AUDIOIN_CTRL_RUN 0x1 +#define BF_AUDIOIN_CTRL_RUN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_AUDIOIN_STAT + * Address: 0x10 + * SCT: no +*/ +#define HW_AUDIOIN_STAT (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x10)) +#define BP_AUDIOIN_STAT_ADC_PRESENT 31 +#define BM_AUDIOIN_STAT_ADC_PRESENT 0x80000000 +#define BF_AUDIOIN_STAT_ADC_PRESENT(v) (((v) << 31) & 0x80000000) + +/** + * Register: HW_AUDIOIN_ADCSRR + * Address: 0x20 + * SCT: yes +*/ +#define HW_AUDIOIN_ADCSRR (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x20 + 0x0)) +#define HW_AUDIOIN_ADCSRR_SET (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x20 + 0x4)) +#define HW_AUDIOIN_ADCSRR_CLR (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x20 + 0x8)) +#define HW_AUDIOIN_ADCSRR_TOG (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x20 + 0xc)) +#define BP_AUDIOIN_ADCSRR_OSR 31 +#define BM_AUDIOIN_ADCSRR_OSR 0x80000000 +#define BV_AUDIOIN_ADCSRR_OSR__OSR6 0x0 +#define BV_AUDIOIN_ADCSRR_OSR__OSR12 0x1 +#define BF_AUDIOIN_ADCSRR_OSR(v) (((v) << 31) & 0x80000000) +#define BF_AUDIOIN_ADCSRR_OSR_V(v) ((BV_AUDIOIN_ADCSRR_OSR__##v << 31) & 0x80000000) +#define BP_AUDIOIN_ADCSRR_BASEMULT 28 +#define BM_AUDIOIN_ADCSRR_BASEMULT 0x70000000 +#define BV_AUDIOIN_ADCSRR_BASEMULT__SINGLE_RATE 0x1 +#define BV_AUDIOIN_ADCSRR_BASEMULT__DOUBLE_RATE 0x2 +#define BV_AUDIOIN_ADCSRR_BASEMULT__QUAD_RATE 0x4 +#define BF_AUDIOIN_ADCSRR_BASEMULT(v) (((v) << 28) & 0x70000000) +#define BF_AUDIOIN_ADCSRR_BASEMULT_V(v) ((BV_AUDIOIN_ADCSRR_BASEMULT__##v << 28) & 0x70000000) +#define BP_AUDIOIN_ADCSRR_SRC_HOLD 24 +#define BM_AUDIOIN_ADCSRR_SRC_HOLD 0x7000000 +#define BF_AUDIOIN_ADCSRR_SRC_HOLD(v) (((v) << 24) & 0x7000000) +#define BP_AUDIOIN_ADCSRR_SRC_INT 16 +#define BM_AUDIOIN_ADCSRR_SRC_INT 0x1f0000 +#define BF_AUDIOIN_ADCSRR_SRC_INT(v) (((v) << 16) & 0x1f0000) +#define BP_AUDIOIN_ADCSRR_SRC_FRAC 0 +#define BM_AUDIOIN_ADCSRR_SRC_FRAC 0x1fff +#define BF_AUDIOIN_ADCSRR_SRC_FRAC(v) (((v) << 0) & 0x1fff) + +/** + * Register: HW_AUDIOIN_ADCVOLUME + * Address: 0x30 + * SCT: yes +*/ +#define HW_AUDIOIN_ADCVOLUME (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x30 + 0x0)) +#define HW_AUDIOIN_ADCVOLUME_SET (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x30 + 0x4)) +#define HW_AUDIOIN_ADCVOLUME_CLR (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x30 + 0x8)) +#define HW_AUDIOIN_ADCVOLUME_TOG (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x30 + 0xc)) +#define BP_AUDIOIN_ADCVOLUME_VOLUME_UPDATE_LEFT 28 +#define BM_AUDIOIN_ADCVOLUME_VOLUME_UPDATE_LEFT 0x10000000 +#define BF_AUDIOIN_ADCVOLUME_VOLUME_UPDATE_LEFT(v) (((v) << 28) & 0x10000000) +#define BP_AUDIOIN_ADCVOLUME_EN_ZCD 25 +#define BM_AUDIOIN_ADCVOLUME_EN_ZCD 0x2000000 +#define BF_AUDIOIN_ADCVOLUME_EN_ZCD(v) (((v) << 25) & 0x2000000) +#define BP_AUDIOIN_ADCVOLUME_VOLUME_LEFT 16 +#define BM_AUDIOIN_ADCVOLUME_VOLUME_LEFT 0xff0000 +#define BF_AUDIOIN_ADCVOLUME_VOLUME_LEFT(v) (((v) << 16) & 0xff0000) +#define BP_AUDIOIN_ADCVOLUME_VOLUME_UPDATE_RIGHT 12 +#define BM_AUDIOIN_ADCVOLUME_VOLUME_UPDATE_RIGHT 0x1000 +#define BF_AUDIOIN_ADCVOLUME_VOLUME_UPDATE_RIGHT(v) (((v) << 12) & 0x1000) +#define BP_AUDIOIN_ADCVOLUME_VOLUME_RIGHT 0 +#define BM_AUDIOIN_ADCVOLUME_VOLUME_RIGHT 0xff +#define BF_AUDIOIN_ADCVOLUME_VOLUME_RIGHT(v) (((v) << 0) & 0xff) + +/** + * Register: HW_AUDIOIN_ADCDEBUG + * Address: 0x40 + * SCT: yes +*/ +#define HW_AUDIOIN_ADCDEBUG (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x40 + 0x0)) +#define HW_AUDIOIN_ADCDEBUG_SET (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x40 + 0x4)) +#define HW_AUDIOIN_ADCDEBUG_CLR (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x40 + 0x8)) +#define HW_AUDIOIN_ADCDEBUG_TOG (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x40 + 0xc)) +#define BP_AUDIOIN_ADCDEBUG_ENABLE_ADCDMA 31 +#define BM_AUDIOIN_ADCDEBUG_ENABLE_ADCDMA 0x80000000 +#define BF_AUDIOIN_ADCDEBUG_ENABLE_ADCDMA(v) (((v) << 31) & 0x80000000) +#define BP_AUDIOIN_ADCDEBUG_ADC_DMA_REQ_HAND_SHAKE_CLK_CROSS 3 +#define BM_AUDIOIN_ADCDEBUG_ADC_DMA_REQ_HAND_SHAKE_CLK_CROSS 0x8 +#define BF_AUDIOIN_ADCDEBUG_ADC_DMA_REQ_HAND_SHAKE_CLK_CROSS(v) (((v) << 3) & 0x8) +#define BP_AUDIOIN_ADCDEBUG_SET_INTERRUPT3_HAND_SHAKE 2 +#define BM_AUDIOIN_ADCDEBUG_SET_INTERRUPT3_HAND_SHAKE 0x4 +#define BF_AUDIOIN_ADCDEBUG_SET_INTERRUPT3_HAND_SHAKE(v) (((v) << 2) & 0x4) +#define BP_AUDIOIN_ADCDEBUG_DMA_PREQ 1 +#define BM_AUDIOIN_ADCDEBUG_DMA_PREQ 0x2 +#define BF_AUDIOIN_ADCDEBUG_DMA_PREQ(v) (((v) << 1) & 0x2) +#define BP_AUDIOIN_ADCDEBUG_FIFO_STATUS 0 +#define BM_AUDIOIN_ADCDEBUG_FIFO_STATUS 0x1 +#define BF_AUDIOIN_ADCDEBUG_FIFO_STATUS(v) (((v) << 0) & 0x1) + +/** + * Register: HW_AUDIOIN_ADCVOL + * Address: 0x50 + * SCT: yes +*/ +#define HW_AUDIOIN_ADCVOL (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x50 + 0x0)) +#define HW_AUDIOIN_ADCVOL_SET (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x50 + 0x4)) +#define HW_AUDIOIN_ADCVOL_CLR (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x50 + 0x8)) +#define HW_AUDIOIN_ADCVOL_TOG (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x50 + 0xc)) +#define BP_AUDIOIN_ADCVOL_SELECT_LEFT 28 +#define BM_AUDIOIN_ADCVOL_SELECT_LEFT 0x30000000 +#define BF_AUDIOIN_ADCVOL_SELECT_LEFT(v) (((v) << 28) & 0x30000000) +#define BP_AUDIOIN_ADCVOL_SELECT_RIGHT 24 +#define BM_AUDIOIN_ADCVOL_SELECT_RIGHT 0x3000000 +#define BF_AUDIOIN_ADCVOL_SELECT_RIGHT(v) (((v) << 24) & 0x3000000) +#define BP_AUDIOIN_ADCVOL_MUTE 8 +#define BM_AUDIOIN_ADCVOL_MUTE 0x100 +#define BF_AUDIOIN_ADCVOL_MUTE(v) (((v) << 8) & 0x100) +#define BP_AUDIOIN_ADCVOL_GAIN_LEFT 4 +#define BM_AUDIOIN_ADCVOL_GAIN_LEFT 0xf0 +#define BF_AUDIOIN_ADCVOL_GAIN_LEFT(v) (((v) << 4) & 0xf0) +#define BP_AUDIOIN_ADCVOL_GAIN_RIGHT 0 +#define BM_AUDIOIN_ADCVOL_GAIN_RIGHT 0xf +#define BF_AUDIOIN_ADCVOL_GAIN_RIGHT(v) (((v) << 0) & 0xf) + +/** + * Register: HW_AUDIOIN_MICLINE + * Address: 0x60 + * SCT: yes +*/ +#define HW_AUDIOIN_MICLINE (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x60 + 0x0)) +#define HW_AUDIOIN_MICLINE_SET (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x60 + 0x4)) +#define HW_AUDIOIN_MICLINE_CLR (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x60 + 0x8)) +#define HW_AUDIOIN_MICLINE_TOG (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x60 + 0xc)) +#define BP_AUDIOIN_MICLINE_ATTEN_LINE 30 +#define BM_AUDIOIN_MICLINE_ATTEN_LINE 0x40000000 +#define BF_AUDIOIN_MICLINE_ATTEN_LINE(v) (((v) << 30) & 0x40000000) +#define BP_AUDIOIN_MICLINE_DIVIDE_LINE1 29 +#define BM_AUDIOIN_MICLINE_DIVIDE_LINE1 0x20000000 +#define BF_AUDIOIN_MICLINE_DIVIDE_LINE1(v) (((v) << 29) & 0x20000000) +#define BP_AUDIOIN_MICLINE_DIVIDE_LINE2 28 +#define BM_AUDIOIN_MICLINE_DIVIDE_LINE2 0x10000000 +#define BF_AUDIOIN_MICLINE_DIVIDE_LINE2(v) (((v) << 28) & 0x10000000) +#define BP_AUDIOIN_MICLINE_MIC_SELECT 24 +#define BM_AUDIOIN_MICLINE_MIC_SELECT 0x1000000 +#define BF_AUDIOIN_MICLINE_MIC_SELECT(v) (((v) << 24) & 0x1000000) +#define BP_AUDIOIN_MICLINE_MIC_RESISTOR 20 +#define BM_AUDIOIN_MICLINE_MIC_RESISTOR 0x300000 +#define BV_AUDIOIN_MICLINE_MIC_RESISTOR__Off 0x0 +#define BV_AUDIOIN_MICLINE_MIC_RESISTOR__2KOhm 0x1 +#define BV_AUDIOIN_MICLINE_MIC_RESISTOR__4KOhm 0x2 +#define BV_AUDIOIN_MICLINE_MIC_RESISTOR__8KOhm 0x3 +#define BF_AUDIOIN_MICLINE_MIC_RESISTOR(v) (((v) << 20) & 0x300000) +#define BF_AUDIOIN_MICLINE_MIC_RESISTOR_V(v) ((BV_AUDIOIN_MICLINE_MIC_RESISTOR__##v << 20) & 0x300000) +#define BP_AUDIOIN_MICLINE_MIC_BIAS 16 +#define BM_AUDIOIN_MICLINE_MIC_BIAS 0x70000 +#define BF_AUDIOIN_MICLINE_MIC_BIAS(v) (((v) << 16) & 0x70000) +#define BP_AUDIOIN_MICLINE_FORCE_MICAMP_PWRUP 8 +#define BM_AUDIOIN_MICLINE_FORCE_MICAMP_PWRUP 0x100 +#define BF_AUDIOIN_MICLINE_FORCE_MICAMP_PWRUP(v) (((v) << 8) & 0x100) +#define BP_AUDIOIN_MICLINE_MIC_GAIN 0 +#define BM_AUDIOIN_MICLINE_MIC_GAIN 0x3 +#define BV_AUDIOIN_MICLINE_MIC_GAIN__0dB 0x0 +#define BV_AUDIOIN_MICLINE_MIC_GAIN__20dB 0x1 +#define BV_AUDIOIN_MICLINE_MIC_GAIN__30dB 0x2 +#define BV_AUDIOIN_MICLINE_MIC_GAIN__40dB 0x3 +#define BF_AUDIOIN_MICLINE_MIC_GAIN(v) (((v) << 0) & 0x3) +#define BF_AUDIOIN_MICLINE_MIC_GAIN_V(v) ((BV_AUDIOIN_MICLINE_MIC_GAIN__##v << 0) & 0x3) + +/** + * Register: HW_AUDIOIN_ANACLKCTRL + * Address: 0x70 + * SCT: yes +*/ +#define HW_AUDIOIN_ANACLKCTRL (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x70 + 0x0)) +#define HW_AUDIOIN_ANACLKCTRL_SET (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x70 + 0x4)) +#define HW_AUDIOIN_ANACLKCTRL_CLR (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x70 + 0x8)) +#define HW_AUDIOIN_ANACLKCTRL_TOG (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x70 + 0xc)) +#define BP_AUDIOIN_ANACLKCTRL_CLKGATE 31 +#define BM_AUDIOIN_ANACLKCTRL_CLKGATE 0x80000000 +#define BF_AUDIOIN_ANACLKCTRL_CLKGATE(v) (((v) << 31) & 0x80000000) +#define BP_AUDIOIN_ANACLKCTRL_DITHER_ENABLE 6 +#define BM_AUDIOIN_ANACLKCTRL_DITHER_ENABLE 0x40 +#define BF_AUDIOIN_ANACLKCTRL_DITHER_ENABLE(v) (((v) << 6) & 0x40) +#define BP_AUDIOIN_ANACLKCTRL_SLOW_DITHER 5 +#define BM_AUDIOIN_ANACLKCTRL_SLOW_DITHER 0x20 +#define BF_AUDIOIN_ANACLKCTRL_SLOW_DITHER(v) (((v) << 5) & 0x20) +#define BP_AUDIOIN_ANACLKCTRL_INVERT_ADCCLK 4 +#define BM_AUDIOIN_ANACLKCTRL_INVERT_ADCCLK 0x10 +#define BF_AUDIOIN_ANACLKCTRL_INVERT_ADCCLK(v) (((v) << 4) & 0x10) +#define BP_AUDIOIN_ANACLKCTRL_ADCDIV 0 +#define BM_AUDIOIN_ANACLKCTRL_ADCDIV 0x7 +#define BF_AUDIOIN_ANACLKCTRL_ADCDIV(v) (((v) << 0) & 0x7) + +/** + * Register: HW_AUDIOIN_DATA + * Address: 0x80 + * SCT: no +*/ +#define HW_AUDIOIN_DATA (*(volatile unsigned long *)(REGS_AUDIOIN_BASE + 0x80)) +#define BP_AUDIOIN_DATA_HIGH 16 +#define BM_AUDIOIN_DATA_HIGH 0xffff0000 +#define BF_AUDIOIN_DATA_HIGH(v) (((v) << 16) & 0xffff0000) +#define BP_AUDIOIN_DATA_LOW 0 +#define BM_AUDIOIN_DATA_LOW 0xffff +#define BF_AUDIOIN_DATA_LOW(v) (((v) << 0) & 0xffff) + +#endif /* __HEADERGEN__STMP3600__AUDIOIN__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-audioout.h b/firmware/target/arm/imx233/regs/stmp3600/regs-audioout.h new file mode 100644 index 0000000000..20e639c6dd --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-audioout.h @@ -0,0 +1,473 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__AUDIOOUT__H__ +#define __HEADERGEN__STMP3600__AUDIOOUT__H__ + +#define REGS_AUDIOOUT_BASE (0x80048000) + +#define REGS_AUDIOOUT_VERSION "2.3.0" + +/** + * Register: HW_AUDIOOUT_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_AUDIOOUT_CTRL (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x0 + 0x0)) +#define HW_AUDIOOUT_CTRL_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x0 + 0x4)) +#define HW_AUDIOOUT_CTRL_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x0 + 0x8)) +#define HW_AUDIOOUT_CTRL_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x0 + 0xc)) +#define BP_AUDIOOUT_CTRL_SFTRST 31 +#define BM_AUDIOOUT_CTRL_SFTRST 0x80000000 +#define BF_AUDIOOUT_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_AUDIOOUT_CTRL_CLKGATE 30 +#define BM_AUDIOOUT_CTRL_CLKGATE 0x40000000 +#define BF_AUDIOOUT_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_AUDIOOUT_CTRL_DMAWAIT_COUNT 16 +#define BM_AUDIOOUT_CTRL_DMAWAIT_COUNT 0x1f0000 +#define BF_AUDIOOUT_CTRL_DMAWAIT_COUNT(v) (((v) << 16) & 0x1f0000) +#define BP_AUDIOOUT_CTRL_LR_SWAP 14 +#define BM_AUDIOOUT_CTRL_LR_SWAP 0x4000 +#define BF_AUDIOOUT_CTRL_LR_SWAP(v) (((v) << 14) & 0x4000) +#define BP_AUDIOOUT_CTRL_EDGE_SYNC 13 +#define BM_AUDIOOUT_CTRL_EDGE_SYNC 0x2000 +#define BF_AUDIOOUT_CTRL_EDGE_SYNC(v) (((v) << 13) & 0x2000) +#define BP_AUDIOOUT_CTRL_INVERT_1BIT 12 +#define BM_AUDIOOUT_CTRL_INVERT_1BIT 0x1000 +#define BF_AUDIOOUT_CTRL_INVERT_1BIT(v) (((v) << 12) & 0x1000) +#define BP_AUDIOOUT_CTRL_SS3D_EFFECT 8 +#define BM_AUDIOOUT_CTRL_SS3D_EFFECT 0x300 +#define BF_AUDIOOUT_CTRL_SS3D_EFFECT(v) (((v) << 8) & 0x300) +#define BP_AUDIOOUT_CTRL_WORD_LENGTH 6 +#define BM_AUDIOOUT_CTRL_WORD_LENGTH 0x40 +#define BF_AUDIOOUT_CTRL_WORD_LENGTH(v) (((v) << 6) & 0x40) +#define BP_AUDIOOUT_CTRL_DAC_ZERO_ENABLE 5 +#define BM_AUDIOOUT_CTRL_DAC_ZERO_ENABLE 0x20 +#define BF_AUDIOOUT_CTRL_DAC_ZERO_ENABLE(v) (((v) << 5) & 0x20) +#define BP_AUDIOOUT_CTRL_LOOPBACK 4 +#define BM_AUDIOOUT_CTRL_LOOPBACK 0x10 +#define BF_AUDIOOUT_CTRL_LOOPBACK(v) (((v) << 4) & 0x10) +#define BP_AUDIOOUT_CTRL_FIFO_UNDERFLOW_IRQ 3 +#define BM_AUDIOOUT_CTRL_FIFO_UNDERFLOW_IRQ 0x8 +#define BF_AUDIOOUT_CTRL_FIFO_UNDERFLOW_IRQ(v) (((v) << 3) & 0x8) +#define BP_AUDIOOUT_CTRL_FIFO_OVERFLOW_IRQ 2 +#define BM_AUDIOOUT_CTRL_FIFO_OVERFLOW_IRQ 0x4 +#define BF_AUDIOOUT_CTRL_FIFO_OVERFLOW_IRQ(v) (((v) << 2) & 0x4) +#define BP_AUDIOOUT_CTRL_FIFO_ERROR_IRQ_EN 1 +#define BM_AUDIOOUT_CTRL_FIFO_ERROR_IRQ_EN 0x2 +#define BF_AUDIOOUT_CTRL_FIFO_ERROR_IRQ_EN(v) (((v) << 1) & 0x2) +#define BP_AUDIOOUT_CTRL_RUN 0 +#define BM_AUDIOOUT_CTRL_RUN 0x1 +#define BF_AUDIOOUT_CTRL_RUN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_AUDIOOUT_STAT + * Address: 0x10 + * SCT: no +*/ +#define HW_AUDIOOUT_STAT (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x10)) +#define BP_AUDIOOUT_STAT_DAC_PRESENT 31 +#define BM_AUDIOOUT_STAT_DAC_PRESENT 0x80000000 +#define BF_AUDIOOUT_STAT_DAC_PRESENT(v) (((v) << 31) & 0x80000000) + +/** + * Register: HW_AUDIOOUT_DACSRR + * Address: 0x20 + * SCT: yes +*/ +#define HW_AUDIOOUT_DACSRR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x20 + 0x0)) +#define HW_AUDIOOUT_DACSRR_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x20 + 0x4)) +#define HW_AUDIOOUT_DACSRR_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x20 + 0x8)) +#define HW_AUDIOOUT_DACSRR_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x20 + 0xc)) +#define BP_AUDIOOUT_DACSRR_OSR 31 +#define BM_AUDIOOUT_DACSRR_OSR 0x80000000 +#define BV_AUDIOOUT_DACSRR_OSR__OSR6 0x0 +#define BV_AUDIOOUT_DACSRR_OSR__OSR12 0x1 +#define BF_AUDIOOUT_DACSRR_OSR(v) (((v) << 31) & 0x80000000) +#define BF_AUDIOOUT_DACSRR_OSR_V(v) ((BV_AUDIOOUT_DACSRR_OSR__##v << 31) & 0x80000000) +#define BP_AUDIOOUT_DACSRR_BASEMULT 28 +#define BM_AUDIOOUT_DACSRR_BASEMULT 0x70000000 +#define BV_AUDIOOUT_DACSRR_BASEMULT__SINGLE_RATE 0x1 +#define BV_AUDIOOUT_DACSRR_BASEMULT__DOUBLE_RATE 0x2 +#define BV_AUDIOOUT_DACSRR_BASEMULT__QUAD_RATE 0x4 +#define BF_AUDIOOUT_DACSRR_BASEMULT(v) (((v) << 28) & 0x70000000) +#define BF_AUDIOOUT_DACSRR_BASEMULT_V(v) ((BV_AUDIOOUT_DACSRR_BASEMULT__##v << 28) & 0x70000000) +#define BP_AUDIOOUT_DACSRR_SRC_HOLD 24 +#define BM_AUDIOOUT_DACSRR_SRC_HOLD 0x7000000 +#define BF_AUDIOOUT_DACSRR_SRC_HOLD(v) (((v) << 24) & 0x7000000) +#define BP_AUDIOOUT_DACSRR_SRC_INT 16 +#define BM_AUDIOOUT_DACSRR_SRC_INT 0x1f0000 +#define BF_AUDIOOUT_DACSRR_SRC_INT(v) (((v) << 16) & 0x1f0000) +#define BP_AUDIOOUT_DACSRR_SRC_FRAC 0 +#define BM_AUDIOOUT_DACSRR_SRC_FRAC 0x1fff +#define BF_AUDIOOUT_DACSRR_SRC_FRAC(v) (((v) << 0) & 0x1fff) + +/** + * Register: HW_AUDIOOUT_DACVOLUME + * Address: 0x30 + * SCT: yes +*/ +#define HW_AUDIOOUT_DACVOLUME (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x30 + 0x0)) +#define HW_AUDIOOUT_DACVOLUME_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x30 + 0x4)) +#define HW_AUDIOOUT_DACVOLUME_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x30 + 0x8)) +#define HW_AUDIOOUT_DACVOLUME_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x30 + 0xc)) +#define BP_AUDIOOUT_DACVOLUME_VOLUME_UPDATE_LEFT 28 +#define BM_AUDIOOUT_DACVOLUME_VOLUME_UPDATE_LEFT 0x10000000 +#define BF_AUDIOOUT_DACVOLUME_VOLUME_UPDATE_LEFT(v) (((v) << 28) & 0x10000000) +#define BP_AUDIOOUT_DACVOLUME_EN_ZCD 25 +#define BM_AUDIOOUT_DACVOLUME_EN_ZCD 0x2000000 +#define BF_AUDIOOUT_DACVOLUME_EN_ZCD(v) (((v) << 25) & 0x2000000) +#define BP_AUDIOOUT_DACVOLUME_MUTE_LEFT 24 +#define BM_AUDIOOUT_DACVOLUME_MUTE_LEFT 0x1000000 +#define BF_AUDIOOUT_DACVOLUME_MUTE_LEFT(v) (((v) << 24) & 0x1000000) +#define BP_AUDIOOUT_DACVOLUME_VOLUME_LEFT 16 +#define BM_AUDIOOUT_DACVOLUME_VOLUME_LEFT 0xff0000 +#define BF_AUDIOOUT_DACVOLUME_VOLUME_LEFT(v) (((v) << 16) & 0xff0000) +#define BP_AUDIOOUT_DACVOLUME_VOLUME_UPDATE_RIGHT 12 +#define BM_AUDIOOUT_DACVOLUME_VOLUME_UPDATE_RIGHT 0x1000 +#define BF_AUDIOOUT_DACVOLUME_VOLUME_UPDATE_RIGHT(v) (((v) << 12) & 0x1000) +#define BP_AUDIOOUT_DACVOLUME_MUTE_RIGHT 8 +#define BM_AUDIOOUT_DACVOLUME_MUTE_RIGHT 0x100 +#define BF_AUDIOOUT_DACVOLUME_MUTE_RIGHT(v) (((v) << 8) & 0x100) +#define BP_AUDIOOUT_DACVOLUME_VOLUME_RIGHT 0 +#define BM_AUDIOOUT_DACVOLUME_VOLUME_RIGHT 0xff +#define BF_AUDIOOUT_DACVOLUME_VOLUME_RIGHT(v) (((v) << 0) & 0xff) + +/** + * Register: HW_AUDIOOUT_DACDEBUG + * Address: 0x40 + * SCT: yes +*/ +#define HW_AUDIOOUT_DACDEBUG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x40 + 0x0)) +#define HW_AUDIOOUT_DACDEBUG_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x40 + 0x4)) +#define HW_AUDIOOUT_DACDEBUG_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x40 + 0x8)) +#define HW_AUDIOOUT_DACDEBUG_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x40 + 0xc)) +#define BP_AUDIOOUT_DACDEBUG_ENABLE_DACDMA 31 +#define BM_AUDIOOUT_DACDEBUG_ENABLE_DACDMA 0x80000000 +#define BF_AUDIOOUT_DACDEBUG_ENABLE_DACDMA(v) (((v) << 31) & 0x80000000) +#define BP_AUDIOOUT_DACDEBUG_SET_INTERRUPT1_CLK_CROSS 5 +#define BM_AUDIOOUT_DACDEBUG_SET_INTERRUPT1_CLK_CROSS 0x20 +#define BF_AUDIOOUT_DACDEBUG_SET_INTERRUPT1_CLK_CROSS(v) (((v) << 5) & 0x20) +#define BP_AUDIOOUT_DACDEBUG_SET_INTERRUPT0_CLK_CROSS 4 +#define BM_AUDIOOUT_DACDEBUG_SET_INTERRUPT0_CLK_CROSS 0x10 +#define BF_AUDIOOUT_DACDEBUG_SET_INTERRUPT0_CLK_CROSS(v) (((v) << 4) & 0x10) +#define BP_AUDIOOUT_DACDEBUG_SET_INTERRUPT1_HAND_SHAKE 3 +#define BM_AUDIOOUT_DACDEBUG_SET_INTERRUPT1_HAND_SHAKE 0x8 +#define BF_AUDIOOUT_DACDEBUG_SET_INTERRUPT1_HAND_SHAKE(v) (((v) << 3) & 0x8) +#define BP_AUDIOOUT_DACDEBUG_SET_INTERRUPT0_HAND_SHAKE 2 +#define BM_AUDIOOUT_DACDEBUG_SET_INTERRUPT0_HAND_SHAKE 0x4 +#define BF_AUDIOOUT_DACDEBUG_SET_INTERRUPT0_HAND_SHAKE(v) (((v) << 2) & 0x4) +#define BP_AUDIOOUT_DACDEBUG_DMA_PREQ 1 +#define BM_AUDIOOUT_DACDEBUG_DMA_PREQ 0x2 +#define BF_AUDIOOUT_DACDEBUG_DMA_PREQ(v) (((v) << 1) & 0x2) +#define BP_AUDIOOUT_DACDEBUG_FIFO_STATUS 0 +#define BM_AUDIOOUT_DACDEBUG_FIFO_STATUS 0x1 +#define BF_AUDIOOUT_DACDEBUG_FIFO_STATUS(v) (((v) << 0) & 0x1) + +/** + * Register: HW_AUDIOOUT_HPVOL + * Address: 0x50 + * SCT: yes +*/ +#define HW_AUDIOOUT_HPVOL (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x50 + 0x0)) +#define HW_AUDIOOUT_HPVOL_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x50 + 0x4)) +#define HW_AUDIOOUT_HPVOL_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x50 + 0x8)) +#define HW_AUDIOOUT_HPVOL_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x50 + 0xc)) +#define BP_AUDIOOUT_HPVOL_SELECT 24 +#define BM_AUDIOOUT_HPVOL_SELECT 0x3000000 +#define BF_AUDIOOUT_HPVOL_SELECT(v) (((v) << 24) & 0x3000000) +#define BP_AUDIOOUT_HPVOL_MUTE 16 +#define BM_AUDIOOUT_HPVOL_MUTE 0x10000 +#define BF_AUDIOOUT_HPVOL_MUTE(v) (((v) << 16) & 0x10000) +#define BP_AUDIOOUT_HPVOL_VOL_LEFT 8 +#define BM_AUDIOOUT_HPVOL_VOL_LEFT 0x1f00 +#define BF_AUDIOOUT_HPVOL_VOL_LEFT(v) (((v) << 8) & 0x1f00) +#define BP_AUDIOOUT_HPVOL_VOL_RIGHT 0 +#define BM_AUDIOOUT_HPVOL_VOL_RIGHT 0x1f +#define BF_AUDIOOUT_HPVOL_VOL_RIGHT(v) (((v) << 0) & 0x1f) + +/** + * Register: HW_AUDIOOUT_SPKRVOL + * Address: 0x60 + * SCT: yes +*/ +#define HW_AUDIOOUT_SPKRVOL (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x60 + 0x0)) +#define HW_AUDIOOUT_SPKRVOL_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x60 + 0x4)) +#define HW_AUDIOOUT_SPKRVOL_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x60 + 0x8)) +#define HW_AUDIOOUT_SPKRVOL_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x60 + 0xc)) +#define BP_AUDIOOUT_SPKRVOL_MUTE 16 +#define BM_AUDIOOUT_SPKRVOL_MUTE 0x10000 +#define BF_AUDIOOUT_SPKRVOL_MUTE(v) (((v) << 16) & 0x10000) +#define BP_AUDIOOUT_SPKRVOL_VOL 0 +#define BM_AUDIOOUT_SPKRVOL_VOL 0xf +#define BF_AUDIOOUT_SPKRVOL_VOL(v) (((v) << 0) & 0xf) + +/** + * Register: HW_AUDIOOUT_PWRDN + * Address: 0x70 + * SCT: yes +*/ +#define HW_AUDIOOUT_PWRDN (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x70 + 0x0)) +#define HW_AUDIOOUT_PWRDN_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x70 + 0x4)) +#define HW_AUDIOOUT_PWRDN_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x70 + 0x8)) +#define HW_AUDIOOUT_PWRDN_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x70 + 0xc)) +#define BP_AUDIOOUT_PWRDN_SPEAKER 24 +#define BM_AUDIOOUT_PWRDN_SPEAKER 0x1000000 +#define BF_AUDIOOUT_PWRDN_SPEAKER(v) (((v) << 24) & 0x1000000) +#define BP_AUDIOOUT_PWRDN_SELFBIAS 20 +#define BM_AUDIOOUT_PWRDN_SELFBIAS 0x100000 +#define BF_AUDIOOUT_PWRDN_SELFBIAS(v) (((v) << 20) & 0x100000) +#define BP_AUDIOOUT_PWRDN_RIGHT_ADC 16 +#define BM_AUDIOOUT_PWRDN_RIGHT_ADC 0x10000 +#define BF_AUDIOOUT_PWRDN_RIGHT_ADC(v) (((v) << 16) & 0x10000) +#define BP_AUDIOOUT_PWRDN_DAC 12 +#define BM_AUDIOOUT_PWRDN_DAC 0x1000 +#define BF_AUDIOOUT_PWRDN_DAC(v) (((v) << 12) & 0x1000) +#define BP_AUDIOOUT_PWRDN_ADC 8 +#define BM_AUDIOOUT_PWRDN_ADC 0x100 +#define BF_AUDIOOUT_PWRDN_ADC(v) (((v) << 8) & 0x100) +#define BP_AUDIOOUT_PWRDN_CAPLESS 4 +#define BM_AUDIOOUT_PWRDN_CAPLESS 0x10 +#define BF_AUDIOOUT_PWRDN_CAPLESS(v) (((v) << 4) & 0x10) +#define BP_AUDIOOUT_PWRDN_HEADPHONE 0 +#define BM_AUDIOOUT_PWRDN_HEADPHONE 0x1 +#define BF_AUDIOOUT_PWRDN_HEADPHONE(v) (((v) << 0) & 0x1) + +/** + * Register: HW_AUDIOOUT_REFCTRL + * Address: 0x80 + * SCT: yes +*/ +#define HW_AUDIOOUT_REFCTRL (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x80 + 0x0)) +#define HW_AUDIOOUT_REFCTRL_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x80 + 0x4)) +#define HW_AUDIOOUT_REFCTRL_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x80 + 0x8)) +#define HW_AUDIOOUT_REFCTRL_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x80 + 0xc)) +#define BP_AUDIOOUT_REFCTRL_XTAL_BGR_BIAS 24 +#define BM_AUDIOOUT_REFCTRL_XTAL_BGR_BIAS 0x1000000 +#define BF_AUDIOOUT_REFCTRL_XTAL_BGR_BIAS(v) (((v) << 24) & 0x1000000) +#define BP_AUDIOOUT_REFCTRL_VBG_ADJ 20 +#define BM_AUDIOOUT_REFCTRL_VBG_ADJ 0x700000 +#define BF_AUDIOOUT_REFCTRL_VBG_ADJ(v) (((v) << 20) & 0x700000) +#define BP_AUDIOOUT_REFCTRL_LOW_PWR 19 +#define BM_AUDIOOUT_REFCTRL_LOW_PWR 0x80000 +#define BF_AUDIOOUT_REFCTRL_LOW_PWR(v) (((v) << 19) & 0x80000) +#define BP_AUDIOOUT_REFCTRL_LW_REF 18 +#define BM_AUDIOOUT_REFCTRL_LW_REF 0x40000 +#define BF_AUDIOOUT_REFCTRL_LW_REF(v) (((v) << 18) & 0x40000) +#define BP_AUDIOOUT_REFCTRL_BIAS_CTRL 16 +#define BM_AUDIOOUT_REFCTRL_BIAS_CTRL 0x30000 +#define BF_AUDIOOUT_REFCTRL_BIAS_CTRL(v) (((v) << 16) & 0x30000) +#define BP_AUDIOOUT_REFCTRL_ADJ_ADC 13 +#define BM_AUDIOOUT_REFCTRL_ADJ_ADC 0x2000 +#define BF_AUDIOOUT_REFCTRL_ADJ_ADC(v) (((v) << 13) & 0x2000) +#define BP_AUDIOOUT_REFCTRL_ADJ_VAG 12 +#define BM_AUDIOOUT_REFCTRL_ADJ_VAG 0x1000 +#define BF_AUDIOOUT_REFCTRL_ADJ_VAG(v) (((v) << 12) & 0x1000) +#define BP_AUDIOOUT_REFCTRL_ADC_REFVAL 8 +#define BM_AUDIOOUT_REFCTRL_ADC_REFVAL 0xf00 +#define BF_AUDIOOUT_REFCTRL_ADC_REFVAL(v) (((v) << 8) & 0xf00) +#define BP_AUDIOOUT_REFCTRL_VAG_VAL 4 +#define BM_AUDIOOUT_REFCTRL_VAG_VAL 0xf0 +#define BF_AUDIOOUT_REFCTRL_VAG_VAL(v) (((v) << 4) & 0xf0) +#define BP_AUDIOOUT_REFCTRL_DAC_ADJ 0 +#define BM_AUDIOOUT_REFCTRL_DAC_ADJ 0x7 +#define BF_AUDIOOUT_REFCTRL_DAC_ADJ(v) (((v) << 0) & 0x7) + +/** + * Register: HW_AUDIOOUT_ANACTRL + * Address: 0x90 + * SCT: yes +*/ +#define HW_AUDIOOUT_ANACTRL (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x90 + 0x0)) +#define HW_AUDIOOUT_ANACTRL_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x90 + 0x4)) +#define HW_AUDIOOUT_ANACTRL_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x90 + 0x8)) +#define HW_AUDIOOUT_ANACTRL_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0x90 + 0xc)) +#define BP_AUDIOOUT_ANACTRL_SHORT_CM_STS 28 +#define BM_AUDIOOUT_ANACTRL_SHORT_CM_STS 0x10000000 +#define BF_AUDIOOUT_ANACTRL_SHORT_CM_STS(v) (((v) << 28) & 0x10000000) +#define BP_AUDIOOUT_ANACTRL_SHORT_LR_STS 24 +#define BM_AUDIOOUT_ANACTRL_SHORT_LR_STS 0x1000000 +#define BF_AUDIOOUT_ANACTRL_SHORT_LR_STS(v) (((v) << 24) & 0x1000000) +#define BP_AUDIOOUT_ANACTRL_SHORTMODE_CM 20 +#define BM_AUDIOOUT_ANACTRL_SHORTMODE_CM 0x300000 +#define BF_AUDIOOUT_ANACTRL_SHORTMODE_CM(v) (((v) << 20) & 0x300000) +#define BP_AUDIOOUT_ANACTRL_SHORTMODE_LR 17 +#define BM_AUDIOOUT_ANACTRL_SHORTMODE_LR 0x60000 +#define BF_AUDIOOUT_ANACTRL_SHORTMODE_LR(v) (((v) << 17) & 0x60000) +#define BP_AUDIOOUT_ANACTRL_SHORT_LVLADJL 12 +#define BM_AUDIOOUT_ANACTRL_SHORT_LVLADJL 0x7000 +#define BF_AUDIOOUT_ANACTRL_SHORT_LVLADJL(v) (((v) << 12) & 0x7000) +#define BP_AUDIOOUT_ANACTRL_SHORT_LVLADJR 8 +#define BM_AUDIOOUT_ANACTRL_SHORT_LVLADJR 0x700 +#define BF_AUDIOOUT_ANACTRL_SHORT_LVLADJR(v) (((v) << 8) & 0x700) +#define BP_AUDIOOUT_ANACTRL_HP_HOLD_GND 5 +#define BM_AUDIOOUT_ANACTRL_HP_HOLD_GND 0x20 +#define BF_AUDIOOUT_ANACTRL_HP_HOLD_GND(v) (((v) << 5) & 0x20) +#define BP_AUDIOOUT_ANACTRL_HP_CLASSAB 4 +#define BM_AUDIOOUT_ANACTRL_HP_CLASSAB 0x10 +#define BF_AUDIOOUT_ANACTRL_HP_CLASSAB(v) (((v) << 4) & 0x10) +#define BP_AUDIOOUT_ANACTRL_EN_SPKR_ZCD 2 +#define BM_AUDIOOUT_ANACTRL_EN_SPKR_ZCD 0x4 +#define BF_AUDIOOUT_ANACTRL_EN_SPKR_ZCD(v) (((v) << 2) & 0x4) +#define BP_AUDIOOUT_ANACTRL_ZCD_SELECTADC 1 +#define BM_AUDIOOUT_ANACTRL_ZCD_SELECTADC 0x2 +#define BF_AUDIOOUT_ANACTRL_ZCD_SELECTADC(v) (((v) << 1) & 0x2) +#define BP_AUDIOOUT_ANACTRL_EN_ZCD 0 +#define BM_AUDIOOUT_ANACTRL_EN_ZCD 0x1 +#define BF_AUDIOOUT_ANACTRL_EN_ZCD(v) (((v) << 0) & 0x1) + +/** + * Register: HW_AUDIOOUT_TEST + * Address: 0xa0 + * SCT: yes +*/ +#define HW_AUDIOOUT_TEST (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xa0 + 0x0)) +#define HW_AUDIOOUT_TEST_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xa0 + 0x4)) +#define HW_AUDIOOUT_TEST_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xa0 + 0x8)) +#define HW_AUDIOOUT_TEST_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xa0 + 0xc)) +#define BP_AUDIOOUT_TEST_HP_ANTIPOP 28 +#define BM_AUDIOOUT_TEST_HP_ANTIPOP 0x70000000 +#define BF_AUDIOOUT_TEST_HP_ANTIPOP(v) (((v) << 28) & 0x70000000) +#define BP_AUDIOOUT_TEST_TM_ADCIN_TOHP 26 +#define BM_AUDIOOUT_TEST_TM_ADCIN_TOHP 0x4000000 +#define BF_AUDIOOUT_TEST_TM_ADCIN_TOHP(v) (((v) << 26) & 0x4000000) +#define BP_AUDIOOUT_TEST_TM_SPEAKER 25 +#define BM_AUDIOOUT_TEST_TM_SPEAKER 0x2000000 +#define BF_AUDIOOUT_TEST_TM_SPEAKER(v) (((v) << 25) & 0x2000000) +#define BP_AUDIOOUT_TEST_TM_HPCOMMON 24 +#define BM_AUDIOOUT_TEST_TM_HPCOMMON 0x1000000 +#define BF_AUDIOOUT_TEST_TM_HPCOMMON(v) (((v) << 24) & 0x1000000) +#define BP_AUDIOOUT_TEST_HP_I1_ADJ 22 +#define BM_AUDIOOUT_TEST_HP_I1_ADJ 0xc00000 +#define BF_AUDIOOUT_TEST_HP_I1_ADJ(v) (((v) << 22) & 0xc00000) +#define BP_AUDIOOUT_TEST_HP_IALL_ADJ 20 +#define BM_AUDIOOUT_TEST_HP_IALL_ADJ 0x300000 +#define BF_AUDIOOUT_TEST_HP_IALL_ADJ(v) (((v) << 20) & 0x300000) +#define BP_AUDIOOUT_TEST_SPKR_I1_ADJ 18 +#define BM_AUDIOOUT_TEST_SPKR_I1_ADJ 0xc0000 +#define BF_AUDIOOUT_TEST_SPKR_I1_ADJ(v) (((v) << 18) & 0xc0000) +#define BP_AUDIOOUT_TEST_SPKR_IALL_ADJ 16 +#define BM_AUDIOOUT_TEST_SPKR_IALL_ADJ 0x30000 +#define BF_AUDIOOUT_TEST_SPKR_IALL_ADJ(v) (((v) << 16) & 0x30000) +#define BP_AUDIOOUT_TEST_VAG_CLASSA 13 +#define BM_AUDIOOUT_TEST_VAG_CLASSA 0x2000 +#define BF_AUDIOOUT_TEST_VAG_CLASSA(v) (((v) << 13) & 0x2000) +#define BP_AUDIOOUT_TEST_VAG_DOUBLE_I 12 +#define BM_AUDIOOUT_TEST_VAG_DOUBLE_I 0x1000 +#define BF_AUDIOOUT_TEST_VAG_DOUBLE_I(v) (((v) << 12) & 0x1000) +#define BP_AUDIOOUT_TEST_HP_CHOPCLK 8 +#define BM_AUDIOOUT_TEST_HP_CHOPCLK 0x300 +#define BF_AUDIOOUT_TEST_HP_CHOPCLK(v) (((v) << 8) & 0x300) +#define BP_AUDIOOUT_TEST_DAC_CHOPCLK 4 +#define BM_AUDIOOUT_TEST_DAC_CHOPCLK 0x30 +#define BF_AUDIOOUT_TEST_DAC_CHOPCLK(v) (((v) << 4) & 0x30) +#define BP_AUDIOOUT_TEST_DAC_CLASSA 2 +#define BM_AUDIOOUT_TEST_DAC_CLASSA 0x4 +#define BF_AUDIOOUT_TEST_DAC_CLASSA(v) (((v) << 2) & 0x4) +#define BP_AUDIOOUT_TEST_DAC_DOUBLE_I 1 +#define BM_AUDIOOUT_TEST_DAC_DOUBLE_I 0x2 +#define BF_AUDIOOUT_TEST_DAC_DOUBLE_I(v) (((v) << 1) & 0x2) +#define BP_AUDIOOUT_TEST_DAC_DIS_RTZ 0 +#define BM_AUDIOOUT_TEST_DAC_DIS_RTZ 0x1 +#define BF_AUDIOOUT_TEST_DAC_DIS_RTZ(v) (((v) << 0) & 0x1) + +/** + * Register: HW_AUDIOOUT_BISTCTRL + * Address: 0xb0 + * SCT: yes +*/ +#define HW_AUDIOOUT_BISTCTRL (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xb0 + 0x0)) +#define HW_AUDIOOUT_BISTCTRL_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xb0 + 0x4)) +#define HW_AUDIOOUT_BISTCTRL_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xb0 + 0x8)) +#define HW_AUDIOOUT_BISTCTRL_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xb0 + 0xc)) +#define BP_AUDIOOUT_BISTCTRL_FAIL 3 +#define BM_AUDIOOUT_BISTCTRL_FAIL 0x8 +#define BF_AUDIOOUT_BISTCTRL_FAIL(v) (((v) << 3) & 0x8) +#define BP_AUDIOOUT_BISTCTRL_PASS 2 +#define BM_AUDIOOUT_BISTCTRL_PASS 0x4 +#define BF_AUDIOOUT_BISTCTRL_PASS(v) (((v) << 2) & 0x4) +#define BP_AUDIOOUT_BISTCTRL_DONE 1 +#define BM_AUDIOOUT_BISTCTRL_DONE 0x2 +#define BF_AUDIOOUT_BISTCTRL_DONE(v) (((v) << 1) & 0x2) +#define BP_AUDIOOUT_BISTCTRL_START 0 +#define BM_AUDIOOUT_BISTCTRL_START 0x1 +#define BF_AUDIOOUT_BISTCTRL_START(v) (((v) << 0) & 0x1) + +/** + * Register: HW_AUDIOOUT_BISTSTAT0 + * Address: 0xc0 + * SCT: no +*/ +#define HW_AUDIOOUT_BISTSTAT0 (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xc0)) +#define BP_AUDIOOUT_BISTSTAT0_DATA 0 +#define BM_AUDIOOUT_BISTSTAT0_DATA 0xffffff +#define BF_AUDIOOUT_BISTSTAT0_DATA(v) (((v) << 0) & 0xffffff) + +/** + * Register: HW_AUDIOOUT_BISTSTAT1 + * Address: 0xd0 + * SCT: no +*/ +#define HW_AUDIOOUT_BISTSTAT1 (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xd0)) +#define BP_AUDIOOUT_BISTSTAT1_STATE 24 +#define BM_AUDIOOUT_BISTSTAT1_STATE 0x1f000000 +#define BF_AUDIOOUT_BISTSTAT1_STATE(v) (((v) << 24) & 0x1f000000) +#define BP_AUDIOOUT_BISTSTAT1_ADDR 0 +#define BM_AUDIOOUT_BISTSTAT1_ADDR 0xff +#define BF_AUDIOOUT_BISTSTAT1_ADDR(v) (((v) << 0) & 0xff) + +/** + * Register: HW_AUDIOOUT_ANACLKCTRL + * Address: 0xe0 + * SCT: yes +*/ +#define HW_AUDIOOUT_ANACLKCTRL (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xe0 + 0x0)) +#define HW_AUDIOOUT_ANACLKCTRL_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xe0 + 0x4)) +#define HW_AUDIOOUT_ANACLKCTRL_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xe0 + 0x8)) +#define HW_AUDIOOUT_ANACLKCTRL_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xe0 + 0xc)) +#define BP_AUDIOOUT_ANACLKCTRL_CLKGATE 31 +#define BM_AUDIOOUT_ANACLKCTRL_CLKGATE 0x80000000 +#define BF_AUDIOOUT_ANACLKCTRL_CLKGATE(v) (((v) << 31) & 0x80000000) +#define BP_AUDIOOUT_ANACLKCTRL_INVERT_DACCLK 4 +#define BM_AUDIOOUT_ANACLKCTRL_INVERT_DACCLK 0x10 +#define BF_AUDIOOUT_ANACLKCTRL_INVERT_DACCLK(v) (((v) << 4) & 0x10) +#define BP_AUDIOOUT_ANACLKCTRL_DACDIV 0 +#define BM_AUDIOOUT_ANACLKCTRL_DACDIV 0x7 +#define BF_AUDIOOUT_ANACLKCTRL_DACDIV(v) (((v) << 0) & 0x7) + +/** + * Register: HW_AUDIOOUT_DATA + * Address: 0xf0 + * SCT: yes +*/ +#define HW_AUDIOOUT_DATA (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xf0 + 0x0)) +#define HW_AUDIOOUT_DATA_SET (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xf0 + 0x4)) +#define HW_AUDIOOUT_DATA_CLR (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xf0 + 0x8)) +#define HW_AUDIOOUT_DATA_TOG (*(volatile unsigned long *)(REGS_AUDIOOUT_BASE + 0xf0 + 0xc)) +#define BP_AUDIOOUT_DATA_HIGH 16 +#define BM_AUDIOOUT_DATA_HIGH 0xffff0000 +#define BF_AUDIOOUT_DATA_HIGH(v) (((v) << 16) & 0xffff0000) +#define BP_AUDIOOUT_DATA_LOW 0 +#define BM_AUDIOOUT_DATA_LOW 0xffff +#define BF_AUDIOOUT_DATA_LOW(v) (((v) << 0) & 0xffff) + +#endif /* __HEADERGEN__STMP3600__AUDIOOUT__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-brazoiocsr.h b/firmware/target/arm/imx233/regs/stmp3600/regs-brazoiocsr.h new file mode 100644 index 0000000000..903cf09878 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-brazoiocsr.h @@ -0,0 +1,30 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__BRAZOIOCSR__H__ +#define __HEADERGEN__STMP3600__BRAZOIOCSR__H__ + +#define REGS_BRAZOIOCSR_BASE (0x80038000) + +#define REGS_BRAZOIOCSR_VERSION "2.3.0" + +#endif /* __HEADERGEN__STMP3600__BRAZOIOCSR__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-clkctrl.h b/firmware/target/arm/imx233/regs/stmp3600/regs-clkctrl.h new file mode 100644 index 0000000000..218298b69d --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-clkctrl.h @@ -0,0 +1,344 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.4.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__CLKCTRL__H__ +#define __HEADERGEN__STMP3600__CLKCTRL__H__ + +#define REGS_CLKCTRL_BASE (0x80040000) + +#define REGS_CLKCTRL_VERSION "2.4.0" + +/** + * Register: HW_CLKCTRL_PLLCTRL0 + * Address: 0 + * SCT: yes +*/ +#define HW_CLKCTRL_PLLCTRL0 (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x0 + 0x0)) +#define HW_CLKCTRL_PLLCTRL0_SET (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x0 + 0x4)) +#define HW_CLKCTRL_PLLCTRL0_CLR (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x0 + 0x8)) +#define HW_CLKCTRL_PLLCTRL0_TOG (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x0 + 0xc)) +#define BP_CLKCTRL_PLLCTRL0_PLLVCOKSTART 30 +#define BM_CLKCTRL_PLLCTRL0_PLLVCOKSTART 0x40000000 +#define BF_CLKCTRL_PLLCTRL0_PLLVCOKSTART(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_PLLCTRL0_PLLCPSHORTLFR 29 +#define BM_CLKCTRL_PLLCTRL0_PLLCPSHORTLFR 0x20000000 +#define BF_CLKCTRL_PLLCTRL0_PLLCPSHORTLFR(v) (((v) << 29) & 0x20000000) +#define BP_CLKCTRL_PLLCTRL0_PLLCPDBLIP 28 +#define BM_CLKCTRL_PLLCTRL0_PLLCPDBLIP 0x10000000 +#define BF_CLKCTRL_PLLCTRL0_PLLCPDBLIP(v) (((v) << 28) & 0x10000000) +#define BP_CLKCTRL_PLLCTRL0_PLLCPNSEL 24 +#define BM_CLKCTRL_PLLCTRL0_PLLCPNSEL 0x7000000 +#define BV_CLKCTRL_PLLCTRL0_PLLCPNSEL__DEFAULT 0x0 +#define BV_CLKCTRL_PLLCTRL0_PLLCPNSEL__TIMES_15 0x2 +#define BV_CLKCTRL_PLLCTRL0_PLLCPNSEL__TIMES_075 0x3 +#define BV_CLKCTRL_PLLCTRL0_PLLCPNSEL__TIMES_05 0x4 +#define BV_CLKCTRL_PLLCTRL0_PLLCPNSEL__TIMES_04 0x7 +#define BF_CLKCTRL_PLLCTRL0_PLLCPNSEL(v) (((v) << 24) & 0x7000000) +#define BF_CLKCTRL_PLLCTRL0_PLLCPNSEL_V(v) ((BV_CLKCTRL_PLLCTRL0_PLLCPNSEL__##v << 24) & 0x7000000) +#define BP_CLKCTRL_PLLCTRL0_PLLV2ISEL 20 +#define BM_CLKCTRL_PLLCTRL0_PLLV2ISEL 0x300000 +#define BV_CLKCTRL_PLLCTRL0_PLLV2ISEL__NORMAL 0x0 +#define BV_CLKCTRL_PLLCTRL0_PLLV2ISEL__LOWER 0x1 +#define BV_CLKCTRL_PLLCTRL0_PLLV2ISEL__LOWEST 0x2 +#define BV_CLKCTRL_PLLCTRL0_PLLV2ISEL__HIGHEST 0x3 +#define BF_CLKCTRL_PLLCTRL0_PLLV2ISEL(v) (((v) << 20) & 0x300000) +#define BF_CLKCTRL_PLLCTRL0_PLLV2ISEL_V(v) ((BV_CLKCTRL_PLLCTRL0_PLLV2ISEL__##v << 20) & 0x300000) +#define BP_CLKCTRL_PLLCTRL0_FORCE_FREQ 19 +#define BM_CLKCTRL_PLLCTRL0_FORCE_FREQ 0x80000 +#define BV_CLKCTRL_PLLCTRL0_FORCE_FREQ__FORCE_SAME_FREQ 0x1 +#define BV_CLKCTRL_PLLCTRL0_FORCE_FREQ__HONOR_SAME_FREQ_RULE 0x0 +#define BF_CLKCTRL_PLLCTRL0_FORCE_FREQ(v) (((v) << 19) & 0x80000) +#define BF_CLKCTRL_PLLCTRL0_FORCE_FREQ_V(v) ((BV_CLKCTRL_PLLCTRL0_FORCE_FREQ__##v << 19) & 0x80000) +#define BP_CLKCTRL_PLLCTRL0_EN_USB_CLKS 18 +#define BM_CLKCTRL_PLLCTRL0_EN_USB_CLKS 0x40000 +#define BF_CLKCTRL_PLLCTRL0_EN_USB_CLKS(v) (((v) << 18) & 0x40000) +#define BP_CLKCTRL_PLLCTRL0_BYPASS 17 +#define BM_CLKCTRL_PLLCTRL0_BYPASS 0x20000 +#define BF_CLKCTRL_PLLCTRL0_BYPASS(v) (((v) << 17) & 0x20000) +#define BP_CLKCTRL_PLLCTRL0_POWER 16 +#define BM_CLKCTRL_PLLCTRL0_POWER 0x10000 +#define BF_CLKCTRL_PLLCTRL0_POWER(v) (((v) << 16) & 0x10000) +#define BP_CLKCTRL_PLLCTRL0_FREQ 0 +#define BM_CLKCTRL_PLLCTRL0_FREQ 0x1ff +#define BF_CLKCTRL_PLLCTRL0_FREQ(v) (((v) << 0) & 0x1ff) + +/** + * Register: HW_CLKCTRL_PLLCTRL1 + * Address: 0x10 + * SCT: yes +*/ +#define HW_CLKCTRL_PLLCTRL1 (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x10 + 0x0)) +#define HW_CLKCTRL_PLLCTRL1_SET (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x10 + 0x4)) +#define HW_CLKCTRL_PLLCTRL1_CLR (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x10 + 0x8)) +#define HW_CLKCTRL_PLLCTRL1_TOG (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x10 + 0xc)) +#define BP_CLKCTRL_PLLCTRL1_LOCK 31 +#define BM_CLKCTRL_PLLCTRL1_LOCK 0x80000000 +#define BF_CLKCTRL_PLLCTRL1_LOCK(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_PLLCTRL1_FORCE_LOCK 30 +#define BM_CLKCTRL_PLLCTRL1_FORCE_LOCK 0x40000000 +#define BF_CLKCTRL_PLLCTRL1_FORCE_LOCK(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_PLLCTRL1_LOCK_COUNT 0 +#define BM_CLKCTRL_PLLCTRL1_LOCK_COUNT 0xffff +#define BF_CLKCTRL_PLLCTRL1_LOCK_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_CLKCTRL_CPU + * Address: 0x20 + * SCT: no +*/ +#define HW_CLKCTRL_CPU (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x20)) +#define BP_CLKCTRL_CPU_WAIT_PLL_LOCK 30 +#define BM_CLKCTRL_CPU_WAIT_PLL_LOCK 0x40000000 +#define BF_CLKCTRL_CPU_WAIT_PLL_LOCK(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_CPU_BUSY 29 +#define BM_CLKCTRL_CPU_BUSY 0x20000000 +#define BF_CLKCTRL_CPU_BUSY(v) (((v) << 29) & 0x20000000) +#define BP_CLKCTRL_CPU_INTERRUPT_WAIT 12 +#define BM_CLKCTRL_CPU_INTERRUPT_WAIT 0x1000 +#define BF_CLKCTRL_CPU_INTERRUPT_WAIT(v) (((v) << 12) & 0x1000) +#define BP_CLKCTRL_CPU_DIV 0 +#define BM_CLKCTRL_CPU_DIV 0x3ff +#define BF_CLKCTRL_CPU_DIV(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_CLKCTRL_HBUS + * Address: 0x30 + * SCT: no +*/ +#define HW_CLKCTRL_HBUS (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x30)) +#define BP_CLKCTRL_HBUS_WAIT_PLL_LOCK 30 +#define BM_CLKCTRL_HBUS_WAIT_PLL_LOCK 0x40000000 +#define BF_CLKCTRL_HBUS_WAIT_PLL_LOCK(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_HBUS_BUSY 29 +#define BM_CLKCTRL_HBUS_BUSY 0x20000000 +#define BF_CLKCTRL_HBUS_BUSY(v) (((v) << 29) & 0x20000000) +#define BP_CLKCTRL_HBUS_EMI_BUSY_FAST 27 +#define BM_CLKCTRL_HBUS_EMI_BUSY_FAST 0x8000000 +#define BF_CLKCTRL_HBUS_EMI_BUSY_FAST(v) (((v) << 27) & 0x8000000) +#define BP_CLKCTRL_HBUS_APBHDMA_BUSY_FAST 26 +#define BM_CLKCTRL_HBUS_APBHDMA_BUSY_FAST 0x4000000 +#define BF_CLKCTRL_HBUS_APBHDMA_BUSY_FAST(v) (((v) << 26) & 0x4000000) +#define BP_CLKCTRL_HBUS_APBXDMA_BUSY_FAST 25 +#define BM_CLKCTRL_HBUS_APBXDMA_BUSY_FAST 0x2000000 +#define BF_CLKCTRL_HBUS_APBXDMA_BUSY_FAST(v) (((v) << 25) & 0x2000000) +#define BP_CLKCTRL_HBUS_TRAFFIC_JAM_FAST 24 +#define BM_CLKCTRL_HBUS_TRAFFIC_JAM_FAST 0x1000000 +#define BF_CLKCTRL_HBUS_TRAFFIC_JAM_FAST(v) (((v) << 24) & 0x1000000) +#define BP_CLKCTRL_HBUS_TRAFFIC_FAST 23 +#define BM_CLKCTRL_HBUS_TRAFFIC_FAST 0x800000 +#define BF_CLKCTRL_HBUS_TRAFFIC_FAST(v) (((v) << 23) & 0x800000) +#define BP_CLKCTRL_HBUS_CPU_DATA_FAST 22 +#define BM_CLKCTRL_HBUS_CPU_DATA_FAST 0x400000 +#define BF_CLKCTRL_HBUS_CPU_DATA_FAST(v) (((v) << 22) & 0x400000) +#define BP_CLKCTRL_HBUS_CPU_INSTR_FAST 21 +#define BM_CLKCTRL_HBUS_CPU_INSTR_FAST 0x200000 +#define BF_CLKCTRL_HBUS_CPU_INSTR_FAST(v) (((v) << 21) & 0x200000) +#define BP_CLKCTRL_HBUS_AUTO_SLOW_MODE 20 +#define BM_CLKCTRL_HBUS_AUTO_SLOW_MODE 0x100000 +#define BF_CLKCTRL_HBUS_AUTO_SLOW_MODE(v) (((v) << 20) & 0x100000) +#define BP_CLKCTRL_HBUS_SLOW_DIV 16 +#define BM_CLKCTRL_HBUS_SLOW_DIV 0x30000 +#define BV_CLKCTRL_HBUS_SLOW_DIV__BY1 0x0 +#define BV_CLKCTRL_HBUS_SLOW_DIV__BY2 0x1 +#define BV_CLKCTRL_HBUS_SLOW_DIV__BY4 0x2 +#define BV_CLKCTRL_HBUS_SLOW_DIV__BY8 0x3 +#define BF_CLKCTRL_HBUS_SLOW_DIV(v) (((v) << 16) & 0x30000) +#define BF_CLKCTRL_HBUS_SLOW_DIV_V(v) ((BV_CLKCTRL_HBUS_SLOW_DIV__##v << 16) & 0x30000) +#define BP_CLKCTRL_HBUS_DIV 0 +#define BM_CLKCTRL_HBUS_DIV 0x1f +#define BF_CLKCTRL_HBUS_DIV(v) (((v) << 0) & 0x1f) + +/** + * Register: HW_CLKCTRL_XBUS + * Address: 0x40 + * SCT: no +*/ +#define HW_CLKCTRL_XBUS (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x40)) +#define BP_CLKCTRL_XBUS_BUSY 31 +#define BM_CLKCTRL_XBUS_BUSY 0x80000000 +#define BF_CLKCTRL_XBUS_BUSY(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_XBUS_DIV 0 +#define BM_CLKCTRL_XBUS_DIV 0x3ff +#define BF_CLKCTRL_XBUS_DIV(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_CLKCTRL_XTAL + * Address: 0x50 + * SCT: no +*/ +#define HW_CLKCTRL_XTAL (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x50)) +#define BP_CLKCTRL_XTAL_UART_CLK_GATE 31 +#define BM_CLKCTRL_XTAL_UART_CLK_GATE 0x80000000 +#define BF_CLKCTRL_XTAL_UART_CLK_GATE(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_XTAL_FILT_CLK24M_GATE 30 +#define BM_CLKCTRL_XTAL_FILT_CLK24M_GATE 0x40000000 +#define BF_CLKCTRL_XTAL_FILT_CLK24M_GATE(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_XTAL_PWM_CLK24M_GATE 29 +#define BM_CLKCTRL_XTAL_PWM_CLK24M_GATE 0x20000000 +#define BF_CLKCTRL_XTAL_PWM_CLK24M_GATE(v) (((v) << 29) & 0x20000000) +#define BP_CLKCTRL_XTAL_DRI_CLK24M_GATE 28 +#define BM_CLKCTRL_XTAL_DRI_CLK24M_GATE 0x10000000 +#define BF_CLKCTRL_XTAL_DRI_CLK24M_GATE(v) (((v) << 28) & 0x10000000) +#define BP_CLKCTRL_XTAL_DIGCTRL_CLK1M_GATE 27 +#define BM_CLKCTRL_XTAL_DIGCTRL_CLK1M_GATE 0x8000000 +#define BF_CLKCTRL_XTAL_DIGCTRL_CLK1M_GATE(v) (((v) << 27) & 0x8000000) +#define BP_CLKCTRL_XTAL_TIMROT_CLK32K_GATE 26 +#define BM_CLKCTRL_XTAL_TIMROT_CLK32K_GATE 0x4000000 +#define BF_CLKCTRL_XTAL_TIMROT_CLK32K_GATE(v) (((v) << 26) & 0x4000000) +#define BP_CLKCTRL_XTAL_EXRAM_CLK16K_GATE 25 +#define BM_CLKCTRL_XTAL_EXRAM_CLK16K_GATE 0x2000000 +#define BF_CLKCTRL_XTAL_EXRAM_CLK16K_GATE(v) (((v) << 25) & 0x2000000) +#define BP_CLKCTRL_XTAL_LRADC_CLK2K_GATE 24 +#define BM_CLKCTRL_XTAL_LRADC_CLK2K_GATE 0x1000000 +#define BF_CLKCTRL_XTAL_LRADC_CLK2K_GATE(v) (((v) << 24) & 0x1000000) + +/** + * Register: HW_CLKCTRL_OCRAM + * Address: 0x60 + * SCT: no +*/ +#define HW_CLKCTRL_OCRAM (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x60)) +#define BP_CLKCTRL_OCRAM_CLKGATE 31 +#define BM_CLKCTRL_OCRAM_CLKGATE 0x80000000 +#define BF_CLKCTRL_OCRAM_CLKGATE(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_OCRAM_BUSY 30 +#define BM_CLKCTRL_OCRAM_BUSY 0x40000000 +#define BF_CLKCTRL_OCRAM_BUSY(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_OCRAM_DIV 0 +#define BM_CLKCTRL_OCRAM_DIV 0x3ff +#define BF_CLKCTRL_OCRAM_DIV(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_CLKCTRL_UTMI + * Address: 0x70 + * SCT: no +*/ +#define HW_CLKCTRL_UTMI (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x70)) +#define BP_CLKCTRL_UTMI_UTMI_CLK120M_GATE 31 +#define BM_CLKCTRL_UTMI_UTMI_CLK120M_GATE 0x80000000 +#define BF_CLKCTRL_UTMI_UTMI_CLK120M_GATE(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_UTMI_UTMI_CLK30M_GATE 30 +#define BM_CLKCTRL_UTMI_UTMI_CLK30M_GATE 0x40000000 +#define BF_CLKCTRL_UTMI_UTMI_CLK30M_GATE(v) (((v) << 30) & 0x40000000) + +/** + * Register: HW_CLKCTRL_SSP + * Address: 0x80 + * SCT: no +*/ +#define HW_CLKCTRL_SSP (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x80)) +#define BP_CLKCTRL_SSP_CLKGATE 31 +#define BM_CLKCTRL_SSP_CLKGATE 0x80000000 +#define BF_CLKCTRL_SSP_CLKGATE(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_SSP_WAIT_PLL_LOCK 30 +#define BM_CLKCTRL_SSP_WAIT_PLL_LOCK 0x40000000 +#define BF_CLKCTRL_SSP_WAIT_PLL_LOCK(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_SSP_BUSY 29 +#define BM_CLKCTRL_SSP_BUSY 0x20000000 +#define BF_CLKCTRL_SSP_BUSY(v) (((v) << 29) & 0x20000000) +#define BP_CLKCTRL_SSP_DIV 0 +#define BM_CLKCTRL_SSP_DIV 0x1ff +#define BF_CLKCTRL_SSP_DIV(v) (((v) << 0) & 0x1ff) + +/** + * Register: HW_CLKCTRL_GPMI + * Address: 0x90 + * SCT: no +*/ +#define HW_CLKCTRL_GPMI (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0x90)) +#define BP_CLKCTRL_GPMI_CLKGATE 31 +#define BM_CLKCTRL_GPMI_CLKGATE 0x80000000 +#define BF_CLKCTRL_GPMI_CLKGATE(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_GPMI_WAIT_PLL_LOCK 30 +#define BM_CLKCTRL_GPMI_WAIT_PLL_LOCK 0x40000000 +#define BF_CLKCTRL_GPMI_WAIT_PLL_LOCK(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_GPMI_BUSY 29 +#define BM_CLKCTRL_GPMI_BUSY 0x20000000 +#define BF_CLKCTRL_GPMI_BUSY(v) (((v) << 29) & 0x20000000) +#define BP_CLKCTRL_GPMI_DIV 0 +#define BM_CLKCTRL_GPMI_DIV 0x3ff +#define BF_CLKCTRL_GPMI_DIV(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_CLKCTRL_SPDIF + * Address: 0xa0 + * SCT: no +*/ +#define HW_CLKCTRL_SPDIF (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0xa0)) +#define BP_CLKCTRL_SPDIF_CLKGATE 31 +#define BM_CLKCTRL_SPDIF_CLKGATE 0x80000000 +#define BF_CLKCTRL_SPDIF_CLKGATE(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_SPDIF_BUSY 30 +#define BM_CLKCTRL_SPDIF_BUSY 0x40000000 +#define BF_CLKCTRL_SPDIF_BUSY(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_SPDIF_DIV 0 +#define BM_CLKCTRL_SPDIF_DIV 0x7 +#define BF_CLKCTRL_SPDIF_DIV(v) (((v) << 0) & 0x7) + +/** + * Register: HW_CLKCTRL_EMI + * Address: 0xb0 + * SCT: no +*/ +#define HW_CLKCTRL_EMI (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0xb0)) +#define BP_CLKCTRL_EMI_CLKGATE 31 +#define BM_CLKCTRL_EMI_CLKGATE 0x80000000 +#define BF_CLKCTRL_EMI_CLKGATE(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_EMI_WAIT_PLL_LOCK 30 +#define BM_CLKCTRL_EMI_WAIT_PLL_LOCK 0x40000000 +#define BF_CLKCTRL_EMI_WAIT_PLL_LOCK(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_EMI_BUSY 29 +#define BM_CLKCTRL_EMI_BUSY 0x20000000 +#define BF_CLKCTRL_EMI_BUSY(v) (((v) << 29) & 0x20000000) +#define BP_CLKCTRL_EMI_DIV 0 +#define BM_CLKCTRL_EMI_DIV 0x7 +#define BF_CLKCTRL_EMI_DIV(v) (((v) << 0) & 0x7) + +/** + * Register: HW_CLKCTRL_IR + * Address: 0xc0 + * SCT: no +*/ +#define HW_CLKCTRL_IR (*(volatile unsigned long *)(REGS_CLKCTRL_BASE + 0xc0)) +#define BP_CLKCTRL_IR_CLKGATE 31 +#define BM_CLKCTRL_IR_CLKGATE 0x80000000 +#define BF_CLKCTRL_IR_CLKGATE(v) (((v) << 31) & 0x80000000) +#define BP_CLKCTRL_IR_WAIT_PLL_LOCK 30 +#define BM_CLKCTRL_IR_WAIT_PLL_LOCK 0x40000000 +#define BF_CLKCTRL_IR_WAIT_PLL_LOCK(v) (((v) << 30) & 0x40000000) +#define BP_CLKCTRL_IR_AUTO_DIV 29 +#define BM_CLKCTRL_IR_AUTO_DIV 0x20000000 +#define BF_CLKCTRL_IR_AUTO_DIV(v) (((v) << 29) & 0x20000000) +#define BP_CLKCTRL_IR_IR_BUSY 28 +#define BM_CLKCTRL_IR_IR_BUSY 0x10000000 +#define BF_CLKCTRL_IR_IR_BUSY(v) (((v) << 28) & 0x10000000) +#define BP_CLKCTRL_IR_IROV_BUSY 27 +#define BM_CLKCTRL_IR_IROV_BUSY 0x8000000 +#define BF_CLKCTRL_IR_IROV_BUSY(v) (((v) << 27) & 0x8000000) +#define BP_CLKCTRL_IR_IROV_DIV 16 +#define BM_CLKCTRL_IR_IROV_DIV 0x1ff0000 +#define BF_CLKCTRL_IR_IROV_DIV(v) (((v) << 16) & 0x1ff0000) +#define BP_CLKCTRL_IR_IR_DIV 0 +#define BM_CLKCTRL_IR_IR_DIV 0x3ff +#define BF_CLKCTRL_IR_IR_DIV(v) (((v) << 0) & 0x3ff) + +#endif /* __HEADERGEN__STMP3600__CLKCTRL__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-dacdma.h b/firmware/target/arm/imx233/regs/stmp3600/regs-dacdma.h new file mode 100644 index 0000000000..5d2fe44fb1 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-dacdma.h @@ -0,0 +1,62 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__DACDMA__H__ +#define __HEADERGEN__STMP3600__DACDMA__H__ + +#define REGS_DACDMA_BASE (0x8004c000) + +#define REGS_DACDMA_VERSION "2.3.0" + +/** + * Register: HW_DACDMA_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_DACDMA_CTRL (*(volatile unsigned long *)(REGS_DACDMA_BASE + 0x0 + 0x0)) +#define HW_DACDMA_CTRL_SET (*(volatile unsigned long *)(REGS_DACDMA_BASE + 0x0 + 0x4)) +#define HW_DACDMA_CTRL_CLR (*(volatile unsigned long *)(REGS_DACDMA_BASE + 0x0 + 0x8)) +#define HW_DACDMA_CTRL_TOG (*(volatile unsigned long *)(REGS_DACDMA_BASE + 0x0 + 0xc)) +#define BP_DACDMA_CTRL_SFTRST 31 +#define BM_DACDMA_CTRL_SFTRST 0x80000000 +#define BF_DACDMA_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_DACDMA_CTRL_CLKGATE 30 +#define BM_DACDMA_CTRL_CLKGATE 0x40000000 +#define BF_DACDMA_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_DACDMA_CTRL_RUN 0 +#define BM_DACDMA_CTRL_RUN 0x1 +#define BF_DACDMA_CTRL_RUN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_DACDMA_DATA + * Address: 0x80 + * SCT: no +*/ +#define HW_DACDMA_DATA (*(volatile unsigned long *)(REGS_DACDMA_BASE + 0x80)) +#define BP_DACDMA_DATA_HIGH 16 +#define BM_DACDMA_DATA_HIGH 0xffff0000 +#define BF_DACDMA_DATA_HIGH(v) (((v) << 16) & 0xffff0000) +#define BP_DACDMA_DATA_LOW 0 +#define BM_DACDMA_DATA_LOW 0xffff +#define BF_DACDMA_DATA_LOW(v) (((v) << 0) & 0xffff) + +#endif /* __HEADERGEN__STMP3600__DACDMA__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-digctl.h b/firmware/target/arm/imx233/regs/stmp3600/regs-digctl.h new file mode 100644 index 0000000000..a7b45a7ca9 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-digctl.h @@ -0,0 +1,595 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__DIGCTL__H__ +#define __HEADERGEN__STMP3600__DIGCTL__H__ + +#define REGS_DIGCTL_BASE (0x8001c000) + +#define REGS_DIGCTL_VERSION "2.3.0" + +/** + * Register: HW_DIGCTL_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_DIGCTL_CTRL (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x0 + 0x0)) +#define HW_DIGCTL_CTRL_SET (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x0 + 0x4)) +#define HW_DIGCTL_CTRL_CLR (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x0 + 0x8)) +#define HW_DIGCTL_CTRL_TOG (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x0 + 0xc)) +#define BP_DIGCTL_CTRL_MASTER_SELECT 24 +#define BM_DIGCTL_CTRL_MASTER_SELECT 0x1f000000 +#define BV_DIGCTL_CTRL_MASTER_SELECT__ARM_I 0x1 +#define BV_DIGCTL_CTRL_MASTER_SELECT__ARM_D 0x2 +#define BV_DIGCTL_CTRL_MASTER_SELECT__USB 0x4 +#define BV_DIGCTL_CTRL_MASTER_SELECT__APBH 0x8 +#define BV_DIGCTL_CTRL_MASTER_SELECT__APBX 0x10 +#define BF_DIGCTL_CTRL_MASTER_SELECT(v) (((v) << 24) & 0x1f000000) +#define BF_DIGCTL_CTRL_MASTER_SELECT_V(v) ((BV_DIGCTL_CTRL_MASTER_SELECT__##v << 24) & 0x1f000000) +#define BP_DIGCTL_CTRL_USB_TESTMODE 20 +#define BM_DIGCTL_CTRL_USB_TESTMODE 0x100000 +#define BF_DIGCTL_CTRL_USB_TESTMODE(v) (((v) << 20) & 0x100000) +#define BP_DIGCTL_CTRL_ANALOG_TESTMODE 19 +#define BM_DIGCTL_CTRL_ANALOG_TESTMODE 0x80000 +#define BF_DIGCTL_CTRL_ANALOG_TESTMODE(v) (((v) << 19) & 0x80000) +#define BP_DIGCTL_CTRL_DIGITAL_TESTMODE 18 +#define BM_DIGCTL_CTRL_DIGITAL_TESTMODE 0x40000 +#define BF_DIGCTL_CTRL_DIGITAL_TESTMODE(v) (((v) << 18) & 0x40000) +#define BP_DIGCTL_CTRL_UTMI_TESTMODE 17 +#define BM_DIGCTL_CTRL_UTMI_TESTMODE 0x20000 +#define BF_DIGCTL_CTRL_UTMI_TESTMODE(v) (((v) << 17) & 0x20000) +#define BP_DIGCTL_CTRL_UART_LOOPBACK 16 +#define BM_DIGCTL_CTRL_UART_LOOPBACK 0x10000 +#define BV_DIGCTL_CTRL_UART_LOOPBACK__NORMAL 0x0 +#define BV_DIGCTL_CTRL_UART_LOOPBACK__LOOPIT 0x1 +#define BF_DIGCTL_CTRL_UART_LOOPBACK(v) (((v) << 16) & 0x10000) +#define BF_DIGCTL_CTRL_UART_LOOPBACK_V(v) ((BV_DIGCTL_CTRL_UART_LOOPBACK__##v << 16) & 0x10000) +#define BP_DIGCTL_CTRL_DEBUG_DISABLE 3 +#define BM_DIGCTL_CTRL_DEBUG_DISABLE 0x8 +#define BF_DIGCTL_CTRL_DEBUG_DISABLE(v) (((v) << 3) & 0x8) +#define BP_DIGCTL_CTRL_USB_CLKGATE 2 +#define BM_DIGCTL_CTRL_USB_CLKGATE 0x4 +#define BV_DIGCTL_CTRL_USB_CLKGATE__RUN 0x0 +#define BV_DIGCTL_CTRL_USB_CLKGATE__NO_CLKS 0x1 +#define BF_DIGCTL_CTRL_USB_CLKGATE(v) (((v) << 2) & 0x4) +#define BF_DIGCTL_CTRL_USB_CLKGATE_V(v) ((BV_DIGCTL_CTRL_USB_CLKGATE__##v << 2) & 0x4) +#define BP_DIGCTL_CTRL_JTAG_SHIELD 1 +#define BM_DIGCTL_CTRL_JTAG_SHIELD 0x2 +#define BV_DIGCTL_CTRL_JTAG_SHIELD__NORMAL 0x0 +#define BV_DIGCTL_CTRL_JTAG_SHIELD__SHIELDS_UP 0x1 +#define BF_DIGCTL_CTRL_JTAG_SHIELD(v) (((v) << 1) & 0x2) +#define BF_DIGCTL_CTRL_JTAG_SHIELD_V(v) ((BV_DIGCTL_CTRL_JTAG_SHIELD__##v << 1) & 0x2) +#define BP_DIGCTL_CTRL_PACKAGE_SENSE_ENABLE 0 +#define BM_DIGCTL_CTRL_PACKAGE_SENSE_ENABLE 0x1 +#define BV_DIGCTL_CTRL_PACKAGE_SENSE_ENABLE__DISABLE 0x0 +#define BV_DIGCTL_CTRL_PACKAGE_SENSE_ENABLE__ENABLE 0x1 +#define BF_DIGCTL_CTRL_PACKAGE_SENSE_ENABLE(v) (((v) << 0) & 0x1) +#define BF_DIGCTL_CTRL_PACKAGE_SENSE_ENABLE_V(v) ((BV_DIGCTL_CTRL_PACKAGE_SENSE_ENABLE__##v << 0) & 0x1) + +/** + * Register: HW_DIGCTL_STATUS + * Address: 0x10 + * SCT: no +*/ +#define HW_DIGCTL_STATUS (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x10)) +#define BP_DIGCTL_STATUS_ROM_KEYS_PRESENT 31 +#define BM_DIGCTL_STATUS_ROM_KEYS_PRESENT 0x80000000 +#define BF_DIGCTL_STATUS_ROM_KEYS_PRESENT(v) (((v) << 31) & 0x80000000) +#define BP_DIGCTL_STATUS_JTAG_SHIELD_DEFAULT 6 +#define BM_DIGCTL_STATUS_JTAG_SHIELD_DEFAULT 0x40 +#define BF_DIGCTL_STATUS_JTAG_SHIELD_DEFAULT(v) (((v) << 6) & 0x40) +#define BP_DIGCTL_STATUS_ROM_SHIELDED 5 +#define BM_DIGCTL_STATUS_ROM_SHIELDED 0x20 +#define BF_DIGCTL_STATUS_ROM_SHIELDED(v) (((v) << 5) & 0x20) +#define BP_DIGCTL_STATUS_JTAG_IN_USE 4 +#define BM_DIGCTL_STATUS_JTAG_IN_USE 0x10 +#define BF_DIGCTL_STATUS_JTAG_IN_USE(v) (((v) << 4) & 0x10) +#define BP_DIGCTL_STATUS_PSWITCH 2 +#define BM_DIGCTL_STATUS_PSWITCH 0xc +#define BF_DIGCTL_STATUS_PSWITCH(v) (((v) << 2) & 0xc) +#define BP_DIGCTL_STATUS_PACKAGE_TYPE 1 +#define BM_DIGCTL_STATUS_PACKAGE_TYPE 0x2 +#define BF_DIGCTL_STATUS_PACKAGE_TYPE(v) (((v) << 1) & 0x2) +#define BP_DIGCTL_STATUS_WRITTEN 0 +#define BM_DIGCTL_STATUS_WRITTEN 0x1 +#define BF_DIGCTL_STATUS_WRITTEN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_DIGCTL_HCLKCOUNT + * Address: 0x20 + * SCT: no +*/ +#define HW_DIGCTL_HCLKCOUNT (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x20)) +#define BP_DIGCTL_HCLKCOUNT_COUNT 0 +#define BM_DIGCTL_HCLKCOUNT_COUNT 0xffffffff +#define BF_DIGCTL_HCLKCOUNT_COUNT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_RAMCTRL + * Address: 0x30 + * SCT: yes +*/ +#define HW_DIGCTL_RAMCTRL (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x30 + 0x0)) +#define HW_DIGCTL_RAMCTRL_SET (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x30 + 0x4)) +#define HW_DIGCTL_RAMCTRL_CLR (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x30 + 0x8)) +#define HW_DIGCTL_RAMCTRL_TOG (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x30 + 0xc)) +#define BP_DIGCTL_RAMCTRL_TEST_MARGIN 28 +#define BM_DIGCTL_RAMCTRL_TEST_MARGIN 0x70000000 +#define BV_DIGCTL_RAMCTRL_TEST_MARGIN__NORMAL 0x0 +#define BV_DIGCTL_RAMCTRL_TEST_MARGIN__LEVEL1 0x1 +#define BV_DIGCTL_RAMCTRL_TEST_MARGIN__LEVEL2 0x2 +#define BV_DIGCTL_RAMCTRL_TEST_MARGIN__LEVEL3 0x3 +#define BV_DIGCTL_RAMCTRL_TEST_MARGIN__LEVEL4 0x4 +#define BV_DIGCTL_RAMCTRL_TEST_MARGIN__LEVEL5 0x5 +#define BV_DIGCTL_RAMCTRL_TEST_MARGIN__LEVEL6 0x6 +#define BV_DIGCTL_RAMCTRL_TEST_MARGIN__LEVEL7 0x7 +#define BF_DIGCTL_RAMCTRL_TEST_MARGIN(v) (((v) << 28) & 0x70000000) +#define BF_DIGCTL_RAMCTRL_TEST_MARGIN_V(v) ((BV_DIGCTL_RAMCTRL_TEST_MARGIN__##v << 28) & 0x70000000) +#define BP_DIGCTL_RAMCTRL_PWDN_BANKS 24 +#define BM_DIGCTL_RAMCTRL_PWDN_BANKS 0xf000000 +#define BV_DIGCTL_RAMCTRL_PWDN_BANKS__PWDN_BANK3 0x8 +#define BV_DIGCTL_RAMCTRL_PWDN_BANKS__PWDN_BANK2 0x4 +#define BV_DIGCTL_RAMCTRL_PWDN_BANKS__PWDN_BANK1 0x2 +#define BV_DIGCTL_RAMCTRL_PWDN_BANKS__PWDN_BANK0 0x1 +#define BF_DIGCTL_RAMCTRL_PWDN_BANKS(v) (((v) << 24) & 0xf000000) +#define BF_DIGCTL_RAMCTRL_PWDN_BANKS_V(v) ((BV_DIGCTL_RAMCTRL_PWDN_BANKS__##v << 24) & 0xf000000) +#define BP_DIGCTL_RAMCTRL_TEMP_SENSOR 20 +#define BM_DIGCTL_RAMCTRL_TEMP_SENSOR 0x700000 +#define BF_DIGCTL_RAMCTRL_TEMP_SENSOR(v) (((v) << 20) & 0x700000) +#define BP_DIGCTL_RAMCTRL_TEST_TEMP_COMP 16 +#define BM_DIGCTL_RAMCTRL_TEST_TEMP_COMP 0x70000 +#define BV_DIGCTL_RAMCTRL_TEST_TEMP_COMP__LOW_TEMP 0x1 +#define BV_DIGCTL_RAMCTRL_TEST_TEMP_COMP__RANGE_A 0x2 +#define BV_DIGCTL_RAMCTRL_TEST_TEMP_COMP__RANGE_B 0x3 +#define BV_DIGCTL_RAMCTRL_TEST_TEMP_COMP__RANGE_C 0x4 +#define BV_DIGCTL_RAMCTRL_TEST_TEMP_COMP__RANGE_D 0x5 +#define BV_DIGCTL_RAMCTRL_TEST_TEMP_COMP__RANGE_E 0x6 +#define BV_DIGCTL_RAMCTRL_TEST_TEMP_COMP__RANGE_F 0x7 +#define BF_DIGCTL_RAMCTRL_TEST_TEMP_COMP(v) (((v) << 16) & 0x70000) +#define BF_DIGCTL_RAMCTRL_TEST_TEMP_COMP_V(v) ((BV_DIGCTL_RAMCTRL_TEST_TEMP_COMP__##v << 16) & 0x70000) +#define BP_DIGCTL_RAMCTRL_SHIFT_COUNT 8 +#define BM_DIGCTL_RAMCTRL_SHIFT_COUNT 0x7f00 +#define BF_DIGCTL_RAMCTRL_SHIFT_COUNT(v) (((v) << 8) & 0x7f00) +#define BP_DIGCTL_RAMCTRL_FLIP_CLK 7 +#define BM_DIGCTL_RAMCTRL_FLIP_CLK 0x80 +#define BV_DIGCTL_RAMCTRL_FLIP_CLK__NORMAL 0x0 +#define BV_DIGCTL_RAMCTRL_FLIP_CLK__INVERT 0x1 +#define BF_DIGCTL_RAMCTRL_FLIP_CLK(v) (((v) << 7) & 0x80) +#define BF_DIGCTL_RAMCTRL_FLIP_CLK_V(v) ((BV_DIGCTL_RAMCTRL_FLIP_CLK__##v << 7) & 0x80) +#define BP_DIGCTL_RAMCTRL_OVER_RIDE_TEMP 3 +#define BM_DIGCTL_RAMCTRL_OVER_RIDE_TEMP 0x8 +#define BV_DIGCTL_RAMCTRL_OVER_RIDE_TEMP__NORMAL 0x0 +#define BV_DIGCTL_RAMCTRL_OVER_RIDE_TEMP__OVER_RIDE 0x1 +#define BF_DIGCTL_RAMCTRL_OVER_RIDE_TEMP(v) (((v) << 3) & 0x8) +#define BF_DIGCTL_RAMCTRL_OVER_RIDE_TEMP_V(v) ((BV_DIGCTL_RAMCTRL_OVER_RIDE_TEMP__##v << 3) & 0x8) +#define BP_DIGCTL_RAMCTRL_REF_CLK_GATE 2 +#define BM_DIGCTL_RAMCTRL_REF_CLK_GATE 0x4 +#define BV_DIGCTL_RAMCTRL_REF_CLK_GATE__NORMAL 0x0 +#define BV_DIGCTL_RAMCTRL_REF_CLK_GATE__OFF 0x1 +#define BF_DIGCTL_RAMCTRL_REF_CLK_GATE(v) (((v) << 2) & 0x4) +#define BF_DIGCTL_RAMCTRL_REF_CLK_GATE_V(v) ((BV_DIGCTL_RAMCTRL_REF_CLK_GATE__##v << 2) & 0x4) +#define BP_DIGCTL_RAMCTRL_REPAIR_STATUS 1 +#define BM_DIGCTL_RAMCTRL_REPAIR_STATUS 0x2 +#define BV_DIGCTL_RAMCTRL_REPAIR_STATUS__IDLE 0x0 +#define BV_DIGCTL_RAMCTRL_REPAIR_STATUS__BUSY 0x1 +#define BF_DIGCTL_RAMCTRL_REPAIR_STATUS(v) (((v) << 1) & 0x2) +#define BF_DIGCTL_RAMCTRL_REPAIR_STATUS_V(v) ((BV_DIGCTL_RAMCTRL_REPAIR_STATUS__##v << 1) & 0x2) +#define BP_DIGCTL_RAMCTRL_REPAIR_TRANSMIT 0 +#define BM_DIGCTL_RAMCTRL_REPAIR_TRANSMIT 0x1 +#define BV_DIGCTL_RAMCTRL_REPAIR_TRANSMIT__IDLE 0x0 +#define BV_DIGCTL_RAMCTRL_REPAIR_TRANSMIT__SEND 0x1 +#define BF_DIGCTL_RAMCTRL_REPAIR_TRANSMIT(v) (((v) << 0) & 0x1) +#define BF_DIGCTL_RAMCTRL_REPAIR_TRANSMIT_V(v) ((BV_DIGCTL_RAMCTRL_REPAIR_TRANSMIT__##v << 0) & 0x1) + +/** + * Register: HW_DIGCTL_RAMREPAIR0 + * Address: 0x40 + * SCT: yes +*/ +#define HW_DIGCTL_RAMREPAIR0 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x40 + 0x0)) +#define HW_DIGCTL_RAMREPAIR0_SET (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x40 + 0x4)) +#define HW_DIGCTL_RAMREPAIR0_CLR (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x40 + 0x8)) +#define HW_DIGCTL_RAMREPAIR0_TOG (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x40 + 0xc)) +#define BP_DIGCTL_RAMREPAIR0_EFUSE3 24 +#define BM_DIGCTL_RAMREPAIR0_EFUSE3 0x7f000000 +#define BF_DIGCTL_RAMREPAIR0_EFUSE3(v) (((v) << 24) & 0x7f000000) +#define BP_DIGCTL_RAMREPAIR0_EFUSE2 16 +#define BM_DIGCTL_RAMREPAIR0_EFUSE2 0x7f0000 +#define BF_DIGCTL_RAMREPAIR0_EFUSE2(v) (((v) << 16) & 0x7f0000) +#define BP_DIGCTL_RAMREPAIR0_EFUSE1 8 +#define BM_DIGCTL_RAMREPAIR0_EFUSE1 0x7f00 +#define BF_DIGCTL_RAMREPAIR0_EFUSE1(v) (((v) << 8) & 0x7f00) +#define BP_DIGCTL_RAMREPAIR0_EFUSE0 0 +#define BM_DIGCTL_RAMREPAIR0_EFUSE0 0x7f +#define BF_DIGCTL_RAMREPAIR0_EFUSE0(v) (((v) << 0) & 0x7f) + +/** + * Register: HW_DIGCTL_RAMREPAIR1 + * Address: 0x50 + * SCT: yes +*/ +#define HW_DIGCTL_RAMREPAIR1 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x50 + 0x0)) +#define HW_DIGCTL_RAMREPAIR1_SET (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x50 + 0x4)) +#define HW_DIGCTL_RAMREPAIR1_CLR (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x50 + 0x8)) +#define HW_DIGCTL_RAMREPAIR1_TOG (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x50 + 0xc)) +#define BP_DIGCTL_RAMREPAIR1_EFUSE3 24 +#define BM_DIGCTL_RAMREPAIR1_EFUSE3 0x7f000000 +#define BF_DIGCTL_RAMREPAIR1_EFUSE3(v) (((v) << 24) & 0x7f000000) +#define BP_DIGCTL_RAMREPAIR1_EFUSE2 16 +#define BM_DIGCTL_RAMREPAIR1_EFUSE2 0x7f0000 +#define BF_DIGCTL_RAMREPAIR1_EFUSE2(v) (((v) << 16) & 0x7f0000) +#define BP_DIGCTL_RAMREPAIR1_EFUSE1 8 +#define BM_DIGCTL_RAMREPAIR1_EFUSE1 0x7f00 +#define BF_DIGCTL_RAMREPAIR1_EFUSE1(v) (((v) << 8) & 0x7f00) +#define BP_DIGCTL_RAMREPAIR1_EFUSE0 0 +#define BM_DIGCTL_RAMREPAIR1_EFUSE0 0x7f +#define BF_DIGCTL_RAMREPAIR1_EFUSE0(v) (((v) << 0) & 0x7f) + +/** + * Register: HW_DIGCTL_WRITEONCE + * Address: 0x60 + * SCT: no +*/ +#define HW_DIGCTL_WRITEONCE (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x60)) +#define BP_DIGCTL_WRITEONCE_BITS 0 +#define BM_DIGCTL_WRITEONCE_BITS 0xffffffff +#define BF_DIGCTL_WRITEONCE_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_AHBCYCLES + * Address: 0x70 + * SCT: no +*/ +#define HW_DIGCTL_AHBCYCLES (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x70)) +#define BP_DIGCTL_AHBCYCLES_COUNT 0 +#define BM_DIGCTL_AHBCYCLES_COUNT 0xffffffff +#define BF_DIGCTL_AHBCYCLES_COUNT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_AHBSTALLED + * Address: 0x80 + * SCT: no +*/ +#define HW_DIGCTL_AHBSTALLED (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x80)) +#define BP_DIGCTL_AHBSTALLED_COUNT 0 +#define BM_DIGCTL_AHBSTALLED_COUNT 0xffffffff +#define BF_DIGCTL_AHBSTALLED_COUNT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_ENTROPY + * Address: 0x90 + * SCT: no +*/ +#define HW_DIGCTL_ENTROPY (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x90)) +#define BP_DIGCTL_ENTROPY_VALUE 0 +#define BM_DIGCTL_ENTROPY_VALUE 0xffffffff +#define BF_DIGCTL_ENTROPY_VALUE(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_ROMSHIELD + * Address: 0xa0 + * SCT: no +*/ +#define HW_DIGCTL_ROMSHIELD (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xa0)) +#define BP_DIGCTL_ROMSHIELD_WRITE_ONCE 0 +#define BM_DIGCTL_ROMSHIELD_WRITE_ONCE 0x1 +#define BF_DIGCTL_ROMSHIELD_WRITE_ONCE(v) (((v) << 0) & 0x1) + +/** + * Register: HW_DIGCTL_MICROSECONDS + * Address: 0xb0 + * SCT: yes +*/ +#define HW_DIGCTL_MICROSECONDS (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xb0 + 0x0)) +#define HW_DIGCTL_MICROSECONDS_SET (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xb0 + 0x4)) +#define HW_DIGCTL_MICROSECONDS_CLR (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xb0 + 0x8)) +#define HW_DIGCTL_MICROSECONDS_TOG (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xb0 + 0xc)) +#define BP_DIGCTL_MICROSECONDS_VALUE 0 +#define BM_DIGCTL_MICROSECONDS_VALUE 0xffffffff +#define BF_DIGCTL_MICROSECONDS_VALUE(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_DBGRD + * Address: 0xc0 + * SCT: no +*/ +#define HW_DIGCTL_DBGRD (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xc0)) +#define BP_DIGCTL_DBGRD_COMPLEMENT 0 +#define BM_DIGCTL_DBGRD_COMPLEMENT 0xffffffff +#define BF_DIGCTL_DBGRD_COMPLEMENT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_DBG + * Address: 0xd0 + * SCT: no +*/ +#define HW_DIGCTL_DBG (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xd0)) +#define BP_DIGCTL_DBG_VALUE 0 +#define BM_DIGCTL_DBG_VALUE 0xffffffff +#define BF_DIGCTL_DBG_VALUE(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_1TRAM_BIST_CSR + * Address: 0xe0 + * SCT: yes +*/ +#define HW_DIGCTL_1TRAM_BIST_CSR (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xe0 + 0x0)) +#define HW_DIGCTL_1TRAM_BIST_CSR_SET (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xe0 + 0x4)) +#define HW_DIGCTL_1TRAM_BIST_CSR_CLR (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xe0 + 0x8)) +#define HW_DIGCTL_1TRAM_BIST_CSR_TOG (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xe0 + 0xc)) +#define BP_DIGCTL_1TRAM_BIST_CSR_FAIL 3 +#define BM_DIGCTL_1TRAM_BIST_CSR_FAIL 0x8 +#define BF_DIGCTL_1TRAM_BIST_CSR_FAIL(v) (((v) << 3) & 0x8) +#define BP_DIGCTL_1TRAM_BIST_CSR_PASS 2 +#define BM_DIGCTL_1TRAM_BIST_CSR_PASS 0x4 +#define BF_DIGCTL_1TRAM_BIST_CSR_PASS(v) (((v) << 2) & 0x4) +#define BP_DIGCTL_1TRAM_BIST_CSR_DONE 1 +#define BM_DIGCTL_1TRAM_BIST_CSR_DONE 0x2 +#define BF_DIGCTL_1TRAM_BIST_CSR_DONE(v) (((v) << 1) & 0x2) +#define BP_DIGCTL_1TRAM_BIST_CSR_START 0 +#define BM_DIGCTL_1TRAM_BIST_CSR_START 0x1 +#define BF_DIGCTL_1TRAM_BIST_CSR_START(v) (((v) << 0) & 0x1) + +/** + * Register: HW_DIGCTL_1TRAM_BIST_REPAIR0 + * Address: 0xf0 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_BIST_REPAIR0 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0xf0)) + +/** + * Register: HW_DIGCTL_1TRAM_BIST_REPAIR1 + * Address: 0x100 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_BIST_REPAIR1 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x100)) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS0 + * Address: 0x110 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS0 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x110)) +#define BP_DIGCTL_1TRAM_STATUS0_FAILDATA00 0 +#define BM_DIGCTL_1TRAM_STATUS0_FAILDATA00 0xffffffff +#define BF_DIGCTL_1TRAM_STATUS0_FAILDATA00(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS1 + * Address: 0x120 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS1 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x120)) +#define BP_DIGCTL_1TRAM_STATUS1_FAILDATA01 0 +#define BM_DIGCTL_1TRAM_STATUS1_FAILDATA01 0xffffffff +#define BF_DIGCTL_1TRAM_STATUS1_FAILDATA01(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS2 + * Address: 0x130 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS2 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x130)) +#define BP_DIGCTL_1TRAM_STATUS2_FAILDATA10 0 +#define BM_DIGCTL_1TRAM_STATUS2_FAILDATA10 0xffffffff +#define BF_DIGCTL_1TRAM_STATUS2_FAILDATA10(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS3 + * Address: 0x140 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS3 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x140)) +#define BP_DIGCTL_1TRAM_STATUS3_FAILDATA11 0 +#define BM_DIGCTL_1TRAM_STATUS3_FAILDATA11 0xffffffff +#define BF_DIGCTL_1TRAM_STATUS3_FAILDATA11(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS4 + * Address: 0x150 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS4 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x150)) +#define BP_DIGCTL_1TRAM_STATUS4_FAILDATA20 0 +#define BM_DIGCTL_1TRAM_STATUS4_FAILDATA20 0xffffffff +#define BF_DIGCTL_1TRAM_STATUS4_FAILDATA20(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS5 + * Address: 0x160 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS5 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x160)) +#define BP_DIGCTL_1TRAM_STATUS5_FAILDATA21 0 +#define BM_DIGCTL_1TRAM_STATUS5_FAILDATA21 0xffffffff +#define BF_DIGCTL_1TRAM_STATUS5_FAILDATA21(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS6 + * Address: 0x170 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS6 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x170)) +#define BP_DIGCTL_1TRAM_STATUS6_FAILDATA30 0 +#define BM_DIGCTL_1TRAM_STATUS6_FAILDATA30 0xffffffff +#define BF_DIGCTL_1TRAM_STATUS6_FAILDATA30(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS7 + * Address: 0x180 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS7 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x180)) +#define BP_DIGCTL_1TRAM_STATUS7_FAILDATA31 0 +#define BM_DIGCTL_1TRAM_STATUS7_FAILDATA31 0xffffffff +#define BF_DIGCTL_1TRAM_STATUS7_FAILDATA31(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS8 + * Address: 0x190 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS8 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x190)) +#define BP_DIGCTL_1TRAM_STATUS8_FAILADDR01 16 +#define BM_DIGCTL_1TRAM_STATUS8_FAILADDR01 0xffff0000 +#define BF_DIGCTL_1TRAM_STATUS8_FAILADDR01(v) (((v) << 16) & 0xffff0000) +#define BP_DIGCTL_1TRAM_STATUS8_FAILADDR00 0 +#define BM_DIGCTL_1TRAM_STATUS8_FAILADDR00 0xffff +#define BF_DIGCTL_1TRAM_STATUS8_FAILADDR00(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS9 + * Address: 0x1a0 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS9 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x1a0)) +#define BP_DIGCTL_1TRAM_STATUS9_FAILADDR11 16 +#define BM_DIGCTL_1TRAM_STATUS9_FAILADDR11 0xffff0000 +#define BF_DIGCTL_1TRAM_STATUS9_FAILADDR11(v) (((v) << 16) & 0xffff0000) +#define BP_DIGCTL_1TRAM_STATUS9_FAILADDR10 0 +#define BM_DIGCTL_1TRAM_STATUS9_FAILADDR10 0xffff +#define BF_DIGCTL_1TRAM_STATUS9_FAILADDR10(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS10 + * Address: 0x1b0 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS10 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x1b0)) +#define BP_DIGCTL_1TRAM_STATUS10_FAILADDR21 16 +#define BM_DIGCTL_1TRAM_STATUS10_FAILADDR21 0xffff0000 +#define BF_DIGCTL_1TRAM_STATUS10_FAILADDR21(v) (((v) << 16) & 0xffff0000) +#define BP_DIGCTL_1TRAM_STATUS10_FAILADDR20 0 +#define BM_DIGCTL_1TRAM_STATUS10_FAILADDR20 0xffff +#define BF_DIGCTL_1TRAM_STATUS10_FAILADDR20(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS11 + * Address: 0x1c0 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS11 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x1c0)) +#define BP_DIGCTL_1TRAM_STATUS11_FAILADDR31 16 +#define BM_DIGCTL_1TRAM_STATUS11_FAILADDR31 0xffff0000 +#define BF_DIGCTL_1TRAM_STATUS11_FAILADDR31(v) (((v) << 16) & 0xffff0000) +#define BP_DIGCTL_1TRAM_STATUS11_FAILADDR30 0 +#define BM_DIGCTL_1TRAM_STATUS11_FAILADDR30 0xffff +#define BF_DIGCTL_1TRAM_STATUS11_FAILADDR30(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS12 + * Address: 0x1d0 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS12 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x1d0)) +#define BP_DIGCTL_1TRAM_STATUS12_FAILSTATE11 24 +#define BM_DIGCTL_1TRAM_STATUS12_FAILSTATE11 0x1f000000 +#define BF_DIGCTL_1TRAM_STATUS12_FAILSTATE11(v) (((v) << 24) & 0x1f000000) +#define BP_DIGCTL_1TRAM_STATUS12_FAILSTATE10 16 +#define BM_DIGCTL_1TRAM_STATUS12_FAILSTATE10 0x1f0000 +#define BF_DIGCTL_1TRAM_STATUS12_FAILSTATE10(v) (((v) << 16) & 0x1f0000) +#define BP_DIGCTL_1TRAM_STATUS12_FAILSTATE01 8 +#define BM_DIGCTL_1TRAM_STATUS12_FAILSTATE01 0x1f00 +#define BF_DIGCTL_1TRAM_STATUS12_FAILSTATE01(v) (((v) << 8) & 0x1f00) +#define BP_DIGCTL_1TRAM_STATUS12_FAILSTATE00 0 +#define BM_DIGCTL_1TRAM_STATUS12_FAILSTATE00 0x1f +#define BF_DIGCTL_1TRAM_STATUS12_FAILSTATE00(v) (((v) << 0) & 0x1f) + +/** + * Register: HW_DIGCTL_1TRAM_STATUS13 + * Address: 0x1e0 + * SCT: no +*/ +#define HW_DIGCTL_1TRAM_STATUS13 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x1e0)) +#define BP_DIGCTL_1TRAM_STATUS13_FAILSTATE31 24 +#define BM_DIGCTL_1TRAM_STATUS13_FAILSTATE31 0x1f000000 +#define BF_DIGCTL_1TRAM_STATUS13_FAILSTATE31(v) (((v) << 24) & 0x1f000000) +#define BP_DIGCTL_1TRAM_STATUS13_FAILSTATE30 16 +#define BM_DIGCTL_1TRAM_STATUS13_FAILSTATE30 0x1f0000 +#define BF_DIGCTL_1TRAM_STATUS13_FAILSTATE30(v) (((v) << 16) & 0x1f0000) +#define BP_DIGCTL_1TRAM_STATUS13_FAILSTATE21 8 +#define BM_DIGCTL_1TRAM_STATUS13_FAILSTATE21 0x1f00 +#define BF_DIGCTL_1TRAM_STATUS13_FAILSTATE21(v) (((v) << 8) & 0x1f00) +#define BP_DIGCTL_1TRAM_STATUS13_FAILSTATE20 0 +#define BM_DIGCTL_1TRAM_STATUS13_FAILSTATE20 0x1f +#define BF_DIGCTL_1TRAM_STATUS13_FAILSTATE20(v) (((v) << 0) & 0x1f) + +/** + * Register: HW_DIGCTL_SCRATCH0 + * Address: 0x290 + * SCT: no +*/ +#define HW_DIGCTL_SCRATCH0 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x290)) +#define BP_DIGCTL_SCRATCH0_PTR 0 +#define BM_DIGCTL_SCRATCH0_PTR 0xffffffff +#define BF_DIGCTL_SCRATCH0_PTR(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_SCRATCH1 + * Address: 0x2a0 + * SCT: no +*/ +#define HW_DIGCTL_SCRATCH1 (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x2a0)) +#define BP_DIGCTL_SCRATCH1_PTR 0 +#define BM_DIGCTL_SCRATCH1_PTR 0xffffffff +#define BF_DIGCTL_SCRATCH1_PTR(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_ARMCACHE + * Address: 0x2b0 + * SCT: no +*/ +#define HW_DIGCTL_ARMCACHE (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x2b0)) +#define BP_DIGCTL_ARMCACHE_CACHE_SS 8 +#define BM_DIGCTL_ARMCACHE_CACHE_SS 0x300 +#define BF_DIGCTL_ARMCACHE_CACHE_SS(v) (((v) << 8) & 0x300) +#define BP_DIGCTL_ARMCACHE_DTAG_SS 4 +#define BM_DIGCTL_ARMCACHE_DTAG_SS 0x30 +#define BF_DIGCTL_ARMCACHE_DTAG_SS(v) (((v) << 4) & 0x30) +#define BP_DIGCTL_ARMCACHE_ITAG_SS 0 +#define BM_DIGCTL_ARMCACHE_ITAG_SS 0x3 +#define BF_DIGCTL_ARMCACHE_ITAG_SS(v) (((v) << 0) & 0x3) + +/** + * Register: HW_DIGCTL_SGTL + * Address: 0x300 + * SCT: no +*/ +#define HW_DIGCTL_SGTL (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x300)) +#define BP_DIGCTL_SGTL_COPYRIGHT 0 +#define BM_DIGCTL_SGTL_COPYRIGHT 0xffffffff +#define BF_DIGCTL_SGTL_COPYRIGHT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DIGCTL_CHIPID + * Address: 0x310 + * SCT: no +*/ +#define HW_DIGCTL_CHIPID (*(volatile unsigned long *)(REGS_DIGCTL_BASE + 0x310)) +#define BP_DIGCTL_CHIPID_PRODUCT_CODE 16 +#define BM_DIGCTL_CHIPID_PRODUCT_CODE 0xffff0000 +#define BF_DIGCTL_CHIPID_PRODUCT_CODE(v) (((v) << 16) & 0xffff0000) +#define BP_DIGCTL_CHIPID_REVISION 0 +#define BM_DIGCTL_CHIPID_REVISION 0xff +#define BF_DIGCTL_CHIPID_REVISION(v) (((v) << 0) & 0xff) + +#endif /* __HEADERGEN__STMP3600__DIGCTL__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-dri.h b/firmware/target/arm/imx233/regs/stmp3600/regs-dri.h new file mode 100644 index 0000000000..2d2624a953 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-dri.h @@ -0,0 +1,258 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__DRI__H__ +#define __HEADERGEN__STMP3600__DRI__H__ + +#define REGS_DRI_BASE (0x80074000) + +#define REGS_DRI_VERSION "2.3.0" + +/** + * Register: HW_DRI_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_DRI_CTRL (*(volatile unsigned long *)(REGS_DRI_BASE + 0x0 + 0x0)) +#define HW_DRI_CTRL_SET (*(volatile unsigned long *)(REGS_DRI_BASE + 0x0 + 0x4)) +#define HW_DRI_CTRL_CLR (*(volatile unsigned long *)(REGS_DRI_BASE + 0x0 + 0x8)) +#define HW_DRI_CTRL_TOG (*(volatile unsigned long *)(REGS_DRI_BASE + 0x0 + 0xc)) +#define BP_DRI_CTRL_SFTRST 31 +#define BM_DRI_CTRL_SFTRST 0x80000000 +#define BV_DRI_CTRL_SFTRST__RUN 0x0 +#define BV_DRI_CTRL_SFTRST__RESET 0x1 +#define BF_DRI_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BF_DRI_CTRL_SFTRST_V(v) ((BV_DRI_CTRL_SFTRST__##v << 31) & 0x80000000) +#define BP_DRI_CTRL_CLKGATE 30 +#define BM_DRI_CTRL_CLKGATE 0x40000000 +#define BV_DRI_CTRL_CLKGATE__RUN 0x0 +#define BV_DRI_CTRL_CLKGATE__NO_CLKS 0x1 +#define BF_DRI_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BF_DRI_CTRL_CLKGATE_V(v) ((BV_DRI_CTRL_CLKGATE__##v << 30) & 0x40000000) +#define BP_DRI_CTRL_ENABLE_INPUTS 29 +#define BM_DRI_CTRL_ENABLE_INPUTS 0x20000000 +#define BV_DRI_CTRL_ENABLE_INPUTS__ANALOG_LINE_IN 0x0 +#define BV_DRI_CTRL_ENABLE_INPUTS__DRI_DIGITAL_IN 0x1 +#define BF_DRI_CTRL_ENABLE_INPUTS(v) (((v) << 29) & 0x20000000) +#define BF_DRI_CTRL_ENABLE_INPUTS_V(v) ((BV_DRI_CTRL_ENABLE_INPUTS__##v << 29) & 0x20000000) +#define BP_DRI_CTRL_STOP_ON_OFLOW_ERROR 26 +#define BM_DRI_CTRL_STOP_ON_OFLOW_ERROR 0x4000000 +#define BV_DRI_CTRL_STOP_ON_OFLOW_ERROR__IGNORE 0x0 +#define BV_DRI_CTRL_STOP_ON_OFLOW_ERROR__STOP 0x1 +#define BF_DRI_CTRL_STOP_ON_OFLOW_ERROR(v) (((v) << 26) & 0x4000000) +#define BF_DRI_CTRL_STOP_ON_OFLOW_ERROR_V(v) ((BV_DRI_CTRL_STOP_ON_OFLOW_ERROR__##v << 26) & 0x4000000) +#define BP_DRI_CTRL_STOP_ON_PILOT_ERROR 25 +#define BM_DRI_CTRL_STOP_ON_PILOT_ERROR 0x2000000 +#define BV_DRI_CTRL_STOP_ON_PILOT_ERROR__IGNORE 0x0 +#define BV_DRI_CTRL_STOP_ON_PILOT_ERROR__STOP 0x1 +#define BF_DRI_CTRL_STOP_ON_PILOT_ERROR(v) (((v) << 25) & 0x2000000) +#define BF_DRI_CTRL_STOP_ON_PILOT_ERROR_V(v) ((BV_DRI_CTRL_STOP_ON_PILOT_ERROR__##v << 25) & 0x2000000) +#define BP_DRI_CTRL_DMA_DELAY_COUNT 16 +#define BM_DRI_CTRL_DMA_DELAY_COUNT 0x1f0000 +#define BF_DRI_CTRL_DMA_DELAY_COUNT(v) (((v) << 16) & 0x1f0000) +#define BP_DRI_CTRL_REACQUIRE_PHASE 15 +#define BM_DRI_CTRL_REACQUIRE_PHASE 0x8000 +#define BV_DRI_CTRL_REACQUIRE_PHASE__NORMAL 0x0 +#define BV_DRI_CTRL_REACQUIRE_PHASE__NEW_PHASE 0x1 +#define BF_DRI_CTRL_REACQUIRE_PHASE(v) (((v) << 15) & 0x8000) +#define BF_DRI_CTRL_REACQUIRE_PHASE_V(v) ((BV_DRI_CTRL_REACQUIRE_PHASE__##v << 15) & 0x8000) +#define BP_DRI_CTRL_OVERFLOW_IRQ_EN 11 +#define BM_DRI_CTRL_OVERFLOW_IRQ_EN 0x800 +#define BV_DRI_CTRL_OVERFLOW_IRQ_EN__DISABLED 0x0 +#define BV_DRI_CTRL_OVERFLOW_IRQ_EN__ENABLED 0x1 +#define BF_DRI_CTRL_OVERFLOW_IRQ_EN(v) (((v) << 11) & 0x800) +#define BF_DRI_CTRL_OVERFLOW_IRQ_EN_V(v) ((BV_DRI_CTRL_OVERFLOW_IRQ_EN__##v << 11) & 0x800) +#define BP_DRI_CTRL_PILOT_SYNC_LOSS_IRQ_EN 10 +#define BM_DRI_CTRL_PILOT_SYNC_LOSS_IRQ_EN 0x400 +#define BV_DRI_CTRL_PILOT_SYNC_LOSS_IRQ_EN__DISABLED 0x0 +#define BV_DRI_CTRL_PILOT_SYNC_LOSS_IRQ_EN__ENABLED 0x1 +#define BF_DRI_CTRL_PILOT_SYNC_LOSS_IRQ_EN(v) (((v) << 10) & 0x400) +#define BF_DRI_CTRL_PILOT_SYNC_LOSS_IRQ_EN_V(v) ((BV_DRI_CTRL_PILOT_SYNC_LOSS_IRQ_EN__##v << 10) & 0x400) +#define BP_DRI_CTRL_ATTENTION_IRQ_EN 9 +#define BM_DRI_CTRL_ATTENTION_IRQ_EN 0x200 +#define BV_DRI_CTRL_ATTENTION_IRQ_EN__DISABLED 0x0 +#define BV_DRI_CTRL_ATTENTION_IRQ_EN__ENABLED 0x1 +#define BF_DRI_CTRL_ATTENTION_IRQ_EN(v) (((v) << 9) & 0x200) +#define BF_DRI_CTRL_ATTENTION_IRQ_EN_V(v) ((BV_DRI_CTRL_ATTENTION_IRQ_EN__##v << 9) & 0x200) +#define BP_DRI_CTRL_OVERFLOW_IRQ 3 +#define BM_DRI_CTRL_OVERFLOW_IRQ 0x8 +#define BV_DRI_CTRL_OVERFLOW_IRQ__NO_REQUEST 0x0 +#define BV_DRI_CTRL_OVERFLOW_IRQ__REQUEST 0x1 +#define BF_DRI_CTRL_OVERFLOW_IRQ(v) (((v) << 3) & 0x8) +#define BF_DRI_CTRL_OVERFLOW_IRQ_V(v) ((BV_DRI_CTRL_OVERFLOW_IRQ__##v << 3) & 0x8) +#define BP_DRI_CTRL_PILOT_SYNC_LOSS_IRQ 2 +#define BM_DRI_CTRL_PILOT_SYNC_LOSS_IRQ 0x4 +#define BV_DRI_CTRL_PILOT_SYNC_LOSS_IRQ__NO_REQUEST 0x0 +#define BV_DRI_CTRL_PILOT_SYNC_LOSS_IRQ__REQUEST 0x1 +#define BF_DRI_CTRL_PILOT_SYNC_LOSS_IRQ(v) (((v) << 2) & 0x4) +#define BF_DRI_CTRL_PILOT_SYNC_LOSS_IRQ_V(v) ((BV_DRI_CTRL_PILOT_SYNC_LOSS_IRQ__##v << 2) & 0x4) +#define BP_DRI_CTRL_ATTENTION_IRQ 1 +#define BM_DRI_CTRL_ATTENTION_IRQ 0x2 +#define BV_DRI_CTRL_ATTENTION_IRQ__NO_REQUEST 0x0 +#define BV_DRI_CTRL_ATTENTION_IRQ__REQUEST 0x1 +#define BF_DRI_CTRL_ATTENTION_IRQ(v) (((v) << 1) & 0x2) +#define BF_DRI_CTRL_ATTENTION_IRQ_V(v) ((BV_DRI_CTRL_ATTENTION_IRQ__##v << 1) & 0x2) +#define BP_DRI_CTRL_RUN 0 +#define BM_DRI_CTRL_RUN 0x1 +#define BV_DRI_CTRL_RUN__HALT 0x0 +#define BV_DRI_CTRL_RUN__RUN 0x1 +#define BF_DRI_CTRL_RUN(v) (((v) << 0) & 0x1) +#define BF_DRI_CTRL_RUN_V(v) ((BV_DRI_CTRL_RUN__##v << 0) & 0x1) + +/** + * Register: HW_DRI_TIMING + * Address: 0x10 + * SCT: no +*/ +#define HW_DRI_TIMING (*(volatile unsigned long *)(REGS_DRI_BASE + 0x10)) +#define BP_DRI_TIMING_PILOT_REP_RATE 16 +#define BM_DRI_TIMING_PILOT_REP_RATE 0xf0000 +#define BF_DRI_TIMING_PILOT_REP_RATE(v) (((v) << 16) & 0xf0000) +#define BP_DRI_TIMING_GAP_DETECTION_INTERVAL 0 +#define BM_DRI_TIMING_GAP_DETECTION_INTERVAL 0xff +#define BF_DRI_TIMING_GAP_DETECTION_INTERVAL(v) (((v) << 0) & 0xff) + +/** + * Register: HW_DRI_STAT + * Address: 0x20 + * SCT: no +*/ +#define HW_DRI_STAT (*(volatile unsigned long *)(REGS_DRI_BASE + 0x20)) +#define BP_DRI_STAT_DRI_PRESENT 31 +#define BM_DRI_STAT_DRI_PRESENT 0x80000000 +#define BV_DRI_STAT_DRI_PRESENT__UNAVAILABLE 0x0 +#define BV_DRI_STAT_DRI_PRESENT__AVAILABLE 0x1 +#define BF_DRI_STAT_DRI_PRESENT(v) (((v) << 31) & 0x80000000) +#define BF_DRI_STAT_DRI_PRESENT_V(v) ((BV_DRI_STAT_DRI_PRESENT__##v << 31) & 0x80000000) +#define BP_DRI_STAT_PILOT_PHASE 16 +#define BM_DRI_STAT_PILOT_PHASE 0xf0000 +#define BF_DRI_STAT_PILOT_PHASE(v) (((v) << 16) & 0xf0000) +#define BP_DRI_STAT_OVERFLOW_IRQ_SUMMARY 3 +#define BM_DRI_STAT_OVERFLOW_IRQ_SUMMARY 0x8 +#define BV_DRI_STAT_OVERFLOW_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_DRI_STAT_OVERFLOW_IRQ_SUMMARY__REQUEST 0x1 +#define BF_DRI_STAT_OVERFLOW_IRQ_SUMMARY(v) (((v) << 3) & 0x8) +#define BF_DRI_STAT_OVERFLOW_IRQ_SUMMARY_V(v) ((BV_DRI_STAT_OVERFLOW_IRQ_SUMMARY__##v << 3) & 0x8) +#define BP_DRI_STAT_PILOT_SYNC_LOSS_IRQ_SUMMARY 2 +#define BM_DRI_STAT_PILOT_SYNC_LOSS_IRQ_SUMMARY 0x4 +#define BV_DRI_STAT_PILOT_SYNC_LOSS_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_DRI_STAT_PILOT_SYNC_LOSS_IRQ_SUMMARY__REQUEST 0x1 +#define BF_DRI_STAT_PILOT_SYNC_LOSS_IRQ_SUMMARY(v) (((v) << 2) & 0x4) +#define BF_DRI_STAT_PILOT_SYNC_LOSS_IRQ_SUMMARY_V(v) ((BV_DRI_STAT_PILOT_SYNC_LOSS_IRQ_SUMMARY__##v << 2) & 0x4) +#define BP_DRI_STAT_ATTENTION_IRQ_SUMMARY 1 +#define BM_DRI_STAT_ATTENTION_IRQ_SUMMARY 0x2 +#define BV_DRI_STAT_ATTENTION_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_DRI_STAT_ATTENTION_IRQ_SUMMARY__REQUEST 0x1 +#define BF_DRI_STAT_ATTENTION_IRQ_SUMMARY(v) (((v) << 1) & 0x2) +#define BF_DRI_STAT_ATTENTION_IRQ_SUMMARY_V(v) ((BV_DRI_STAT_ATTENTION_IRQ_SUMMARY__##v << 1) & 0x2) + +/** + * Register: HW_DRI_DATA + * Address: 0x30 + * SCT: no +*/ +#define HW_DRI_DATA (*(volatile unsigned long *)(REGS_DRI_BASE + 0x30)) +#define BP_DRI_DATA_DATA 0 +#define BM_DRI_DATA_DATA 0xffffffff +#define BF_DRI_DATA_DATA(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_DRI_DEBUG0 + * Address: 0x40 + * SCT: yes +*/ +#define HW_DRI_DEBUG0 (*(volatile unsigned long *)(REGS_DRI_BASE + 0x40 + 0x0)) +#define HW_DRI_DEBUG0_SET (*(volatile unsigned long *)(REGS_DRI_BASE + 0x40 + 0x4)) +#define HW_DRI_DEBUG0_CLR (*(volatile unsigned long *)(REGS_DRI_BASE + 0x40 + 0x8)) +#define HW_DRI_DEBUG0_TOG (*(volatile unsigned long *)(REGS_DRI_BASE + 0x40 + 0xc)) +#define BP_DRI_DEBUG0_DMAREQ 31 +#define BM_DRI_DEBUG0_DMAREQ 0x80000000 +#define BF_DRI_DEBUG0_DMAREQ(v) (((v) << 31) & 0x80000000) +#define BP_DRI_DEBUG0_DMACMDKICK 30 +#define BM_DRI_DEBUG0_DMACMDKICK 0x40000000 +#define BF_DRI_DEBUG0_DMACMDKICK(v) (((v) << 30) & 0x40000000) +#define BP_DRI_DEBUG0_DRI_CLK_INPUT 29 +#define BM_DRI_DEBUG0_DRI_CLK_INPUT 0x20000000 +#define BF_DRI_DEBUG0_DRI_CLK_INPUT(v) (((v) << 29) & 0x20000000) +#define BP_DRI_DEBUG0_DRI_DATA_INPUT 28 +#define BM_DRI_DEBUG0_DRI_DATA_INPUT 0x10000000 +#define BF_DRI_DEBUG0_DRI_DATA_INPUT(v) (((v) << 28) & 0x10000000) +#define BP_DRI_DEBUG0_TEST_MODE 27 +#define BM_DRI_DEBUG0_TEST_MODE 0x8000000 +#define BF_DRI_DEBUG0_TEST_MODE(v) (((v) << 27) & 0x8000000) +#define BP_DRI_DEBUG0_PILOT_REP_RATE 26 +#define BM_DRI_DEBUG0_PILOT_REP_RATE 0x4000000 +#define BV_DRI_DEBUG0_PILOT_REP_RATE__8_AT_4MHZ 0x0 +#define BV_DRI_DEBUG0_PILOT_REP_RATE__12_AT_6MHZ 0x1 +#define BF_DRI_DEBUG0_PILOT_REP_RATE(v) (((v) << 26) & 0x4000000) +#define BF_DRI_DEBUG0_PILOT_REP_RATE_V(v) ((BV_DRI_DEBUG0_PILOT_REP_RATE__##v << 26) & 0x4000000) +#define BP_DRI_DEBUG0_SPARE 18 +#define BM_DRI_DEBUG0_SPARE 0x3fc0000 +#define BF_DRI_DEBUG0_SPARE(v) (((v) << 18) & 0x3fc0000) +#define BP_DRI_DEBUG0_FRAME 0 +#define BM_DRI_DEBUG0_FRAME 0x3ffff +#define BF_DRI_DEBUG0_FRAME(v) (((v) << 0) & 0x3ffff) + +/** + * Register: HW_DRI_DEBUG1 + * Address: 0x50 + * SCT: yes +*/ +#define HW_DRI_DEBUG1 (*(volatile unsigned long *)(REGS_DRI_BASE + 0x50 + 0x0)) +#define HW_DRI_DEBUG1_SET (*(volatile unsigned long *)(REGS_DRI_BASE + 0x50 + 0x4)) +#define HW_DRI_DEBUG1_CLR (*(volatile unsigned long *)(REGS_DRI_BASE + 0x50 + 0x8)) +#define HW_DRI_DEBUG1_TOG (*(volatile unsigned long *)(REGS_DRI_BASE + 0x50 + 0xc)) +#define BP_DRI_DEBUG1_INVERT_PILOT 31 +#define BM_DRI_DEBUG1_INVERT_PILOT 0x80000000 +#define BV_DRI_DEBUG1_INVERT_PILOT__NORMAL 0x0 +#define BV_DRI_DEBUG1_INVERT_PILOT__INVERTED 0x1 +#define BF_DRI_DEBUG1_INVERT_PILOT(v) (((v) << 31) & 0x80000000) +#define BF_DRI_DEBUG1_INVERT_PILOT_V(v) ((BV_DRI_DEBUG1_INVERT_PILOT__##v << 31) & 0x80000000) +#define BP_DRI_DEBUG1_INVERT_ATTENTION 30 +#define BM_DRI_DEBUG1_INVERT_ATTENTION 0x40000000 +#define BV_DRI_DEBUG1_INVERT_ATTENTION__NORMAL 0x0 +#define BV_DRI_DEBUG1_INVERT_ATTENTION__INVERTED 0x1 +#define BF_DRI_DEBUG1_INVERT_ATTENTION(v) (((v) << 30) & 0x40000000) +#define BF_DRI_DEBUG1_INVERT_ATTENTION_V(v) ((BV_DRI_DEBUG1_INVERT_ATTENTION__##v << 30) & 0x40000000) +#define BP_DRI_DEBUG1_INVERT_DRI_DATA 29 +#define BM_DRI_DEBUG1_INVERT_DRI_DATA 0x20000000 +#define BV_DRI_DEBUG1_INVERT_DRI_DATA__NORMAL 0x0 +#define BV_DRI_DEBUG1_INVERT_DRI_DATA__INVERTED 0x1 +#define BF_DRI_DEBUG1_INVERT_DRI_DATA(v) (((v) << 29) & 0x20000000) +#define BF_DRI_DEBUG1_INVERT_DRI_DATA_V(v) ((BV_DRI_DEBUG1_INVERT_DRI_DATA__##v << 29) & 0x20000000) +#define BP_DRI_DEBUG1_INVERT_DRI_CLOCK 28 +#define BM_DRI_DEBUG1_INVERT_DRI_CLOCK 0x10000000 +#define BV_DRI_DEBUG1_INVERT_DRI_CLOCK__NORMAL 0x0 +#define BV_DRI_DEBUG1_INVERT_DRI_CLOCK__INVERTED 0x1 +#define BF_DRI_DEBUG1_INVERT_DRI_CLOCK(v) (((v) << 28) & 0x10000000) +#define BF_DRI_DEBUG1_INVERT_DRI_CLOCK_V(v) ((BV_DRI_DEBUG1_INVERT_DRI_CLOCK__##v << 28) & 0x10000000) +#define BP_DRI_DEBUG1_REVERSE_FRAME 27 +#define BM_DRI_DEBUG1_REVERSE_FRAME 0x8000000 +#define BV_DRI_DEBUG1_REVERSE_FRAME__NORMAL 0x0 +#define BV_DRI_DEBUG1_REVERSE_FRAME__REVERSED 0x1 +#define BF_DRI_DEBUG1_REVERSE_FRAME(v) (((v) << 27) & 0x8000000) +#define BF_DRI_DEBUG1_REVERSE_FRAME_V(v) ((BV_DRI_DEBUG1_REVERSE_FRAME__##v << 27) & 0x8000000) +#define BP_DRI_DEBUG1_SWIZZLED_FRAME 0 +#define BM_DRI_DEBUG1_SWIZZLED_FRAME 0x3ffff +#define BF_DRI_DEBUG1_SWIZZLED_FRAME(v) (((v) << 0) & 0x3ffff) + +#endif /* __HEADERGEN__STMP3600__DRI__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-emictrl.h b/firmware/target/arm/imx233/regs/stmp3600/regs-emictrl.h new file mode 100644 index 0000000000..88a94f977b --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-emictrl.h @@ -0,0 +1,30 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__EMICTRL__H__ +#define __HEADERGEN__STMP3600__EMICTRL__H__ + +#define REGS_EMICTRL_BASE (0x80020000) + +#define REGS_EMICTRL_VERSION "2.3.0" + +#endif /* __HEADERGEN__STMP3600__EMICTRL__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-gpmi.h b/firmware/target/arm/imx233/regs/stmp3600/regs-gpmi.h new file mode 100644 index 0000000000..bdf52c9308 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-gpmi.h @@ -0,0 +1,372 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__GPMI__H__ +#define __HEADERGEN__STMP3600__GPMI__H__ + +#define REGS_GPMI_BASE (0x8000c000) + +#define REGS_GPMI_VERSION "2.3.0" + +/** + * Register: HW_GPMI_CTRL0 + * Address: 0 + * SCT: yes +*/ +#define HW_GPMI_CTRL0 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x0 + 0x0)) +#define HW_GPMI_CTRL0_SET (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x0 + 0x4)) +#define HW_GPMI_CTRL0_CLR (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x0 + 0x8)) +#define HW_GPMI_CTRL0_TOG (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x0 + 0xc)) +#define BP_GPMI_CTRL0_SFTRST 31 +#define BM_GPMI_CTRL0_SFTRST 0x80000000 +#define BV_GPMI_CTRL0_SFTRST__RUN 0x0 +#define BV_GPMI_CTRL0_SFTRST__RESET 0x1 +#define BF_GPMI_CTRL0_SFTRST(v) (((v) << 31) & 0x80000000) +#define BF_GPMI_CTRL0_SFTRST_V(v) ((BV_GPMI_CTRL0_SFTRST__##v << 31) & 0x80000000) +#define BP_GPMI_CTRL0_CLKGATE 30 +#define BM_GPMI_CTRL0_CLKGATE 0x40000000 +#define BV_GPMI_CTRL0_CLKGATE__RUN 0x0 +#define BV_GPMI_CTRL0_CLKGATE__NO_CLKS 0x1 +#define BF_GPMI_CTRL0_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BF_GPMI_CTRL0_CLKGATE_V(v) ((BV_GPMI_CTRL0_CLKGATE__##v << 30) & 0x40000000) +#define BP_GPMI_CTRL0_RUN 29 +#define BM_GPMI_CTRL0_RUN 0x20000000 +#define BV_GPMI_CTRL0_RUN__IDLE 0x0 +#define BV_GPMI_CTRL0_RUN__BUSY 0x1 +#define BF_GPMI_CTRL0_RUN(v) (((v) << 29) & 0x20000000) +#define BF_GPMI_CTRL0_RUN_V(v) ((BV_GPMI_CTRL0_RUN__##v << 29) & 0x20000000) +#define BP_GPMI_CTRL0_DEV_IRQ_EN 28 +#define BM_GPMI_CTRL0_DEV_IRQ_EN 0x10000000 +#define BF_GPMI_CTRL0_DEV_IRQ_EN(v) (((v) << 28) & 0x10000000) +#define BP_GPMI_CTRL0_TIMEOUT_IRQ_EN 27 +#define BM_GPMI_CTRL0_TIMEOUT_IRQ_EN 0x8000000 +#define BF_GPMI_CTRL0_TIMEOUT_IRQ_EN(v) (((v) << 27) & 0x8000000) +#define BP_GPMI_CTRL0_UDMA 26 +#define BM_GPMI_CTRL0_UDMA 0x4000000 +#define BV_GPMI_CTRL0_UDMA__DISABLED 0x0 +#define BV_GPMI_CTRL0_UDMA__ENABLED 0x1 +#define BF_GPMI_CTRL0_UDMA(v) (((v) << 26) & 0x4000000) +#define BF_GPMI_CTRL0_UDMA_V(v) ((BV_GPMI_CTRL0_UDMA__##v << 26) & 0x4000000) +#define BP_GPMI_CTRL0_COMMAND_MODE 24 +#define BM_GPMI_CTRL0_COMMAND_MODE 0x3000000 +#define BV_GPMI_CTRL0_COMMAND_MODE__WRITE 0x0 +#define BV_GPMI_CTRL0_COMMAND_MODE__READ 0x1 +#define BV_GPMI_CTRL0_COMMAND_MODE__READ_AND_COMPARE 0x2 +#define BV_GPMI_CTRL0_COMMAND_MODE__WAIT_FOR_READY 0x3 +#define BF_GPMI_CTRL0_COMMAND_MODE(v) (((v) << 24) & 0x3000000) +#define BF_GPMI_CTRL0_COMMAND_MODE_V(v) ((BV_GPMI_CTRL0_COMMAND_MODE__##v << 24) & 0x3000000) +#define BP_GPMI_CTRL0_WORD_LENGTH 23 +#define BM_GPMI_CTRL0_WORD_LENGTH 0x800000 +#define BV_GPMI_CTRL0_WORD_LENGTH__16_BIT 0x0 +#define BV_GPMI_CTRL0_WORD_LENGTH__8_BIT 0x1 +#define BF_GPMI_CTRL0_WORD_LENGTH(v) (((v) << 23) & 0x800000) +#define BF_GPMI_CTRL0_WORD_LENGTH_V(v) ((BV_GPMI_CTRL0_WORD_LENGTH__##v << 23) & 0x800000) +#define BP_GPMI_CTRL0_LOCK_CS 22 +#define BM_GPMI_CTRL0_LOCK_CS 0x400000 +#define BV_GPMI_CTRL0_LOCK_CS__DISABLED 0x0 +#define BV_GPMI_CTRL0_LOCK_CS__ENABLED 0x1 +#define BF_GPMI_CTRL0_LOCK_CS(v) (((v) << 22) & 0x400000) +#define BF_GPMI_CTRL0_LOCK_CS_V(v) ((BV_GPMI_CTRL0_LOCK_CS__##v << 22) & 0x400000) +#define BP_GPMI_CTRL0_CS 20 +#define BM_GPMI_CTRL0_CS 0x300000 +#define BF_GPMI_CTRL0_CS(v) (((v) << 20) & 0x300000) +#define BP_GPMI_CTRL0_ADDRESS 17 +#define BM_GPMI_CTRL0_ADDRESS 0xe0000 +#define BV_GPMI_CTRL0_ADDRESS__NAND_DATA 0x0 +#define BV_GPMI_CTRL0_ADDRESS__NAND_CLE 0x1 +#define BV_GPMI_CTRL0_ADDRESS__NAND_ALE 0x2 +#define BF_GPMI_CTRL0_ADDRESS(v) (((v) << 17) & 0xe0000) +#define BF_GPMI_CTRL0_ADDRESS_V(v) ((BV_GPMI_CTRL0_ADDRESS__##v << 17) & 0xe0000) +#define BP_GPMI_CTRL0_ADDRESS_INCREMENT 16 +#define BM_GPMI_CTRL0_ADDRESS_INCREMENT 0x10000 +#define BV_GPMI_CTRL0_ADDRESS_INCREMENT__DISABLED 0x0 +#define BV_GPMI_CTRL0_ADDRESS_INCREMENT__ENABLED 0x1 +#define BF_GPMI_CTRL0_ADDRESS_INCREMENT(v) (((v) << 16) & 0x10000) +#define BF_GPMI_CTRL0_ADDRESS_INCREMENT_V(v) ((BV_GPMI_CTRL0_ADDRESS_INCREMENT__##v << 16) & 0x10000) +#define BP_GPMI_CTRL0_XFER_COUNT 0 +#define BM_GPMI_CTRL0_XFER_COUNT 0xffff +#define BF_GPMI_CTRL0_XFER_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_GPMI_COMPARE + * Address: 0x10 + * SCT: no +*/ +#define HW_GPMI_COMPARE (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x10)) +#define BP_GPMI_COMPARE_MASK 16 +#define BM_GPMI_COMPARE_MASK 0xffff0000 +#define BF_GPMI_COMPARE_MASK(v) (((v) << 16) & 0xffff0000) +#define BP_GPMI_COMPARE_REFERENCE 0 +#define BM_GPMI_COMPARE_REFERENCE 0xffff +#define BF_GPMI_COMPARE_REFERENCE(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_GPMI_CTRL1 + * Address: 0x20 + * SCT: yes +*/ +#define HW_GPMI_CTRL1 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x20 + 0x0)) +#define HW_GPMI_CTRL1_SET (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x20 + 0x4)) +#define HW_GPMI_CTRL1_CLR (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x20 + 0x8)) +#define HW_GPMI_CTRL1_TOG (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x20 + 0xc)) +#define BP_GPMI_CTRL1_DSAMPLE_TIME 12 +#define BM_GPMI_CTRL1_DSAMPLE_TIME 0x3000 +#define BF_GPMI_CTRL1_DSAMPLE_TIME(v) (((v) << 12) & 0x3000) +#define BP_GPMI_CTRL1_DEV_IRQ 10 +#define BM_GPMI_CTRL1_DEV_IRQ 0x400 +#define BF_GPMI_CTRL1_DEV_IRQ(v) (((v) << 10) & 0x400) +#define BP_GPMI_CTRL1_TIMEOUT_IRQ 9 +#define BM_GPMI_CTRL1_TIMEOUT_IRQ 0x200 +#define BF_GPMI_CTRL1_TIMEOUT_IRQ(v) (((v) << 9) & 0x200) +#define BP_GPMI_CTRL1_BURST_EN 8 +#define BM_GPMI_CTRL1_BURST_EN 0x100 +#define BF_GPMI_CTRL1_BURST_EN(v) (((v) << 8) & 0x100) +#define BP_GPMI_CTRL1_ABORT_WAIT_FOR_READY3 7 +#define BM_GPMI_CTRL1_ABORT_WAIT_FOR_READY3 0x80 +#define BF_GPMI_CTRL1_ABORT_WAIT_FOR_READY3(v) (((v) << 7) & 0x80) +#define BP_GPMI_CTRL1_ABORT_WAIT_FOR_READY2 6 +#define BM_GPMI_CTRL1_ABORT_WAIT_FOR_READY2 0x40 +#define BF_GPMI_CTRL1_ABORT_WAIT_FOR_READY2(v) (((v) << 6) & 0x40) +#define BP_GPMI_CTRL1_ABORT_WAIT_FOR_READY1 5 +#define BM_GPMI_CTRL1_ABORT_WAIT_FOR_READY1 0x20 +#define BF_GPMI_CTRL1_ABORT_WAIT_FOR_READY1(v) (((v) << 5) & 0x20) +#define BP_GPMI_CTRL1_ABORT_WAIT_FOR_READY0 4 +#define BM_GPMI_CTRL1_ABORT_WAIT_FOR_READY0 0x10 +#define BF_GPMI_CTRL1_ABORT_WAIT_FOR_READY0(v) (((v) << 4) & 0x10) +#define BP_GPMI_CTRL1_DEV_RESET 3 +#define BM_GPMI_CTRL1_DEV_RESET 0x8 +#define BV_GPMI_CTRL1_DEV_RESET__ENABLED 0x0 +#define BV_GPMI_CTRL1_DEV_RESET__DISABLED 0x1 +#define BF_GPMI_CTRL1_DEV_RESET(v) (((v) << 3) & 0x8) +#define BF_GPMI_CTRL1_DEV_RESET_V(v) ((BV_GPMI_CTRL1_DEV_RESET__##v << 3) & 0x8) +#define BP_GPMI_CTRL1_ATA_IRQRDY_POLARITY 2 +#define BM_GPMI_CTRL1_ATA_IRQRDY_POLARITY 0x4 +#define BV_GPMI_CTRL1_ATA_IRQRDY_POLARITY__ACTIVELOW 0x0 +#define BV_GPMI_CTRL1_ATA_IRQRDY_POLARITY__ACTIVEHIGH 0x1 +#define BF_GPMI_CTRL1_ATA_IRQRDY_POLARITY(v) (((v) << 2) & 0x4) +#define BF_GPMI_CTRL1_ATA_IRQRDY_POLARITY_V(v) ((BV_GPMI_CTRL1_ATA_IRQRDY_POLARITY__##v << 2) & 0x4) +#define BP_GPMI_CTRL1_CAMERA_MODE 1 +#define BM_GPMI_CTRL1_CAMERA_MODE 0x2 +#define BF_GPMI_CTRL1_CAMERA_MODE(v) (((v) << 1) & 0x2) +#define BP_GPMI_CTRL1_GPMI_MODE 0 +#define BM_GPMI_CTRL1_GPMI_MODE 0x1 +#define BV_GPMI_CTRL1_GPMI_MODE__NAND 0x0 +#define BV_GPMI_CTRL1_GPMI_MODE__ATA 0x1 +#define BF_GPMI_CTRL1_GPMI_MODE(v) (((v) << 0) & 0x1) +#define BF_GPMI_CTRL1_GPMI_MODE_V(v) ((BV_GPMI_CTRL1_GPMI_MODE__##v << 0) & 0x1) + +/** + * Register: HW_GPMI_TIMING0 + * Address: 0x30 + * SCT: no +*/ +#define HW_GPMI_TIMING0 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x30)) +#define BP_GPMI_TIMING0_ADDRESS_SETUP 16 +#define BM_GPMI_TIMING0_ADDRESS_SETUP 0xff0000 +#define BF_GPMI_TIMING0_ADDRESS_SETUP(v) (((v) << 16) & 0xff0000) +#define BP_GPMI_TIMING0_DATA_HOLD 8 +#define BM_GPMI_TIMING0_DATA_HOLD 0xff00 +#define BF_GPMI_TIMING0_DATA_HOLD(v) (((v) << 8) & 0xff00) +#define BP_GPMI_TIMING0_DATA_SETUP 0 +#define BM_GPMI_TIMING0_DATA_SETUP 0xff +#define BF_GPMI_TIMING0_DATA_SETUP(v) (((v) << 0) & 0xff) + +/** + * Register: HW_GPMI_TIMING1 + * Address: 0x40 + * SCT: no +*/ +#define HW_GPMI_TIMING1 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x40)) +#define BP_GPMI_TIMING1_DEVICE_BUSY_TIMEOUT 16 +#define BM_GPMI_TIMING1_DEVICE_BUSY_TIMEOUT 0xffff0000 +#define BF_GPMI_TIMING1_DEVICE_BUSY_TIMEOUT(v) (((v) << 16) & 0xffff0000) +#define BP_GPMI_TIMING1_ATA_READY_TIMEOUT 0 +#define BM_GPMI_TIMING1_ATA_READY_TIMEOUT 0xffff +#define BF_GPMI_TIMING1_ATA_READY_TIMEOUT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_GPMI_TIMING2 + * Address: 0x50 + * SCT: no +*/ +#define HW_GPMI_TIMING2 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x50)) +#define BP_GPMI_TIMING2_UDMA_TRP 24 +#define BM_GPMI_TIMING2_UDMA_TRP 0xff000000 +#define BF_GPMI_TIMING2_UDMA_TRP(v) (((v) << 24) & 0xff000000) +#define BP_GPMI_TIMING2_UDMA_ENV 16 +#define BM_GPMI_TIMING2_UDMA_ENV 0xff0000 +#define BF_GPMI_TIMING2_UDMA_ENV(v) (((v) << 16) & 0xff0000) +#define BP_GPMI_TIMING2_UDMA_HOLD 8 +#define BM_GPMI_TIMING2_UDMA_HOLD 0xff00 +#define BF_GPMI_TIMING2_UDMA_HOLD(v) (((v) << 8) & 0xff00) +#define BP_GPMI_TIMING2_UDMA_SETUP 0 +#define BM_GPMI_TIMING2_UDMA_SETUP 0xff +#define BF_GPMI_TIMING2_UDMA_SETUP(v) (((v) << 0) & 0xff) + +/** + * Register: HW_GPMI_DATA + * Address: 0x60 + * SCT: no +*/ +#define HW_GPMI_DATA (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x60)) +#define BP_GPMI_DATA_DATA 0 +#define BM_GPMI_DATA_DATA 0xffffffff +#define BF_GPMI_DATA_DATA(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_GPMI_STAT + * Address: 0x70 + * SCT: no +*/ +#define HW_GPMI_STAT (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x70)) +#define BP_GPMI_STAT_PRESENT 31 +#define BM_GPMI_STAT_PRESENT 0x80000000 +#define BV_GPMI_STAT_PRESENT__UNAVAILABLE 0x0 +#define BV_GPMI_STAT_PRESENT__AVAILABLE 0x1 +#define BF_GPMI_STAT_PRESENT(v) (((v) << 31) & 0x80000000) +#define BF_GPMI_STAT_PRESENT_V(v) ((BV_GPMI_STAT_PRESENT__##v << 31) & 0x80000000) +#define BP_GPMI_STAT_RDY_TIMEOUT 8 +#define BM_GPMI_STAT_RDY_TIMEOUT 0xf00 +#define BF_GPMI_STAT_RDY_TIMEOUT(v) (((v) << 8) & 0xf00) +#define BP_GPMI_STAT_ATA_IRQ 7 +#define BM_GPMI_STAT_ATA_IRQ 0x80 +#define BF_GPMI_STAT_ATA_IRQ(v) (((v) << 7) & 0x80) +#define BP_GPMI_STAT_FIFO_EMPTY 5 +#define BM_GPMI_STAT_FIFO_EMPTY 0x20 +#define BV_GPMI_STAT_FIFO_EMPTY__NOT_EMPTY 0x0 +#define BV_GPMI_STAT_FIFO_EMPTY__EMPTY 0x1 +#define BF_GPMI_STAT_FIFO_EMPTY(v) (((v) << 5) & 0x20) +#define BF_GPMI_STAT_FIFO_EMPTY_V(v) ((BV_GPMI_STAT_FIFO_EMPTY__##v << 5) & 0x20) +#define BP_GPMI_STAT_FIFO_FULL 4 +#define BM_GPMI_STAT_FIFO_FULL 0x10 +#define BV_GPMI_STAT_FIFO_FULL__NOT_FULL 0x0 +#define BV_GPMI_STAT_FIFO_FULL__FULL 0x1 +#define BF_GPMI_STAT_FIFO_FULL(v) (((v) << 4) & 0x10) +#define BF_GPMI_STAT_FIFO_FULL_V(v) ((BV_GPMI_STAT_FIFO_FULL__##v << 4) & 0x10) +#define BP_GPMI_STAT_DEV3_ERROR 3 +#define BM_GPMI_STAT_DEV3_ERROR 0x8 +#define BF_GPMI_STAT_DEV3_ERROR(v) (((v) << 3) & 0x8) +#define BP_GPMI_STAT_DEV2_ERROR 2 +#define BM_GPMI_STAT_DEV2_ERROR 0x4 +#define BF_GPMI_STAT_DEV2_ERROR(v) (((v) << 2) & 0x4) +#define BP_GPMI_STAT_DEV1_ERROR 1 +#define BM_GPMI_STAT_DEV1_ERROR 0x2 +#define BF_GPMI_STAT_DEV1_ERROR(v) (((v) << 1) & 0x2) +#define BP_GPMI_STAT_DEV0_ERROR 0 +#define BM_GPMI_STAT_DEV0_ERROR 0x1 +#define BF_GPMI_STAT_DEV0_ERROR(v) (((v) << 0) & 0x1) + +/** + * Register: HW_GPMI_DEBUG + * Address: 0x80 + * SCT: no +*/ +#define HW_GPMI_DEBUG (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x80)) +#define BP_GPMI_DEBUG_READY3 31 +#define BM_GPMI_DEBUG_READY3 0x80000000 +#define BF_GPMI_DEBUG_READY3(v) (((v) << 31) & 0x80000000) +#define BP_GPMI_DEBUG_READY2 30 +#define BM_GPMI_DEBUG_READY2 0x40000000 +#define BF_GPMI_DEBUG_READY2(v) (((v) << 30) & 0x40000000) +#define BP_GPMI_DEBUG_READY1 29 +#define BM_GPMI_DEBUG_READY1 0x20000000 +#define BF_GPMI_DEBUG_READY1(v) (((v) << 29) & 0x20000000) +#define BP_GPMI_DEBUG_READY0 28 +#define BM_GPMI_DEBUG_READY0 0x10000000 +#define BF_GPMI_DEBUG_READY0(v) (((v) << 28) & 0x10000000) +#define BP_GPMI_DEBUG_WAIT_FOR_READY_END3 27 +#define BM_GPMI_DEBUG_WAIT_FOR_READY_END3 0x8000000 +#define BF_GPMI_DEBUG_WAIT_FOR_READY_END3(v) (((v) << 27) & 0x8000000) +#define BP_GPMI_DEBUG_WAIT_FOR_READY_END2 26 +#define BM_GPMI_DEBUG_WAIT_FOR_READY_END2 0x4000000 +#define BF_GPMI_DEBUG_WAIT_FOR_READY_END2(v) (((v) << 26) & 0x4000000) +#define BP_GPMI_DEBUG_WAIT_FOR_READY_END1 25 +#define BM_GPMI_DEBUG_WAIT_FOR_READY_END1 0x2000000 +#define BF_GPMI_DEBUG_WAIT_FOR_READY_END1(v) (((v) << 25) & 0x2000000) +#define BP_GPMI_DEBUG_WAIT_FOR_READY_END0 24 +#define BM_GPMI_DEBUG_WAIT_FOR_READY_END0 0x1000000 +#define BF_GPMI_DEBUG_WAIT_FOR_READY_END0(v) (((v) << 24) & 0x1000000) +#define BP_GPMI_DEBUG_SENSE3 23 +#define BM_GPMI_DEBUG_SENSE3 0x800000 +#define BF_GPMI_DEBUG_SENSE3(v) (((v) << 23) & 0x800000) +#define BP_GPMI_DEBUG_SENSE2 22 +#define BM_GPMI_DEBUG_SENSE2 0x400000 +#define BF_GPMI_DEBUG_SENSE2(v) (((v) << 22) & 0x400000) +#define BP_GPMI_DEBUG_SENSE1 21 +#define BM_GPMI_DEBUG_SENSE1 0x200000 +#define BF_GPMI_DEBUG_SENSE1(v) (((v) << 21) & 0x200000) +#define BP_GPMI_DEBUG_SENSE0 20 +#define BM_GPMI_DEBUG_SENSE0 0x100000 +#define BF_GPMI_DEBUG_SENSE0(v) (((v) << 20) & 0x100000) +#define BP_GPMI_DEBUG_DMAREQ3 19 +#define BM_GPMI_DEBUG_DMAREQ3 0x80000 +#define BF_GPMI_DEBUG_DMAREQ3(v) (((v) << 19) & 0x80000) +#define BP_GPMI_DEBUG_DMAREQ2 18 +#define BM_GPMI_DEBUG_DMAREQ2 0x40000 +#define BF_GPMI_DEBUG_DMAREQ2(v) (((v) << 18) & 0x40000) +#define BP_GPMI_DEBUG_DMAREQ1 17 +#define BM_GPMI_DEBUG_DMAREQ1 0x20000 +#define BF_GPMI_DEBUG_DMAREQ1(v) (((v) << 17) & 0x20000) +#define BP_GPMI_DEBUG_DMAREQ0 16 +#define BM_GPMI_DEBUG_DMAREQ0 0x10000 +#define BF_GPMI_DEBUG_DMAREQ0(v) (((v) << 16) & 0x10000) +#define BP_GPMI_DEBUG_CMD_END 12 +#define BM_GPMI_DEBUG_CMD_END 0xf000 +#define BF_GPMI_DEBUG_CMD_END(v) (((v) << 12) & 0xf000) +#define BP_GPMI_DEBUG_UDMA_STATE 8 +#define BM_GPMI_DEBUG_UDMA_STATE 0xf00 +#define BF_GPMI_DEBUG_UDMA_STATE(v) (((v) << 8) & 0xf00) +#define BP_GPMI_DEBUG_BUSY 7 +#define BM_GPMI_DEBUG_BUSY 0x80 +#define BV_GPMI_DEBUG_BUSY__DISABLED 0x0 +#define BV_GPMI_DEBUG_BUSY__ENABLED 0x1 +#define BF_GPMI_DEBUG_BUSY(v) (((v) << 7) & 0x80) +#define BF_GPMI_DEBUG_BUSY_V(v) ((BV_GPMI_DEBUG_BUSY__##v << 7) & 0x80) +#define BP_GPMI_DEBUG_PIN_STATE 4 +#define BM_GPMI_DEBUG_PIN_STATE 0x70 +#define BV_GPMI_DEBUG_PIN_STATE__PSM_IDLE 0x0 +#define BV_GPMI_DEBUG_PIN_STATE__PSM_BYTCNT 0x1 +#define BV_GPMI_DEBUG_PIN_STATE__PSM_ADDR 0x2 +#define BV_GPMI_DEBUG_PIN_STATE__PSM_STALL 0x3 +#define BV_GPMI_DEBUG_PIN_STATE__PSM_STROBE 0x4 +#define BV_GPMI_DEBUG_PIN_STATE__PSM_ATARDY 0x5 +#define BV_GPMI_DEBUG_PIN_STATE__PSM_DHOLD 0x6 +#define BV_GPMI_DEBUG_PIN_STATE__PSM_DONE 0x7 +#define BF_GPMI_DEBUG_PIN_STATE(v) (((v) << 4) & 0x70) +#define BF_GPMI_DEBUG_PIN_STATE_V(v) ((BV_GPMI_DEBUG_PIN_STATE__##v << 4) & 0x70) +#define BP_GPMI_DEBUG_MAIN_STATE 0 +#define BM_GPMI_DEBUG_MAIN_STATE 0xf +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_IDLE 0x0 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_BYTCNT 0x1 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_WAITFE 0x2 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_WAITFR 0x3 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_DMAREQ 0x4 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_DMAACK 0x5 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_WAITFF 0x6 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_LDFIFO 0x7 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_LDDMAR 0x8 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_RDCMP 0x9 +#define BV_GPMI_DEBUG_MAIN_STATE__MSM_DONE 0xa +#define BF_GPMI_DEBUG_MAIN_STATE(v) (((v) << 0) & 0xf) +#define BF_GPMI_DEBUG_MAIN_STATE_V(v) ((BV_GPMI_DEBUG_MAIN_STATE__##v << 0) & 0xf) + +#endif /* __HEADERGEN__STMP3600__GPMI__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-hwecc.h b/firmware/target/arm/imx233/regs/stmp3600/regs-hwecc.h new file mode 100644 index 0000000000..b6e5ead2ba --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-hwecc.h @@ -0,0 +1,223 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__HWECC__H__ +#define __HEADERGEN__STMP3600__HWECC__H__ + +#define REGS_HWECC_BASE (0x80008000) + +#define REGS_HWECC_VERSION "2.3.0" + +/** + * Register: HW_HWECC_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_HWECC_CTRL (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x0 + 0x0)) +#define HW_HWECC_CTRL_SET (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x0 + 0x4)) +#define HW_HWECC_CTRL_CLR (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x0 + 0x8)) +#define HW_HWECC_CTRL_TOG (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x0 + 0xc)) +#define BP_HWECC_CTRL_SFTRST 31 +#define BM_HWECC_CTRL_SFTRST 0x80000000 +#define BF_HWECC_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_HWECC_CTRL_CLKGATE 30 +#define BM_HWECC_CTRL_CLKGATE 0x40000000 +#define BF_HWECC_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_HWECC_CTRL_NUM_SYMBOLS 16 +#define BM_HWECC_CTRL_NUM_SYMBOLS 0x1ff0000 +#define BF_HWECC_CTRL_NUM_SYMBOLS(v) (((v) << 16) & 0x1ff0000) +#define BP_HWECC_CTRL_DMAWAIT_COUNT 8 +#define BM_HWECC_CTRL_DMAWAIT_COUNT 0x1f00 +#define BF_HWECC_CTRL_DMAWAIT_COUNT(v) (((v) << 8) & 0x1f00) +#define BP_HWECC_CTRL_BYTE_ENABLE 6 +#define BM_HWECC_CTRL_BYTE_ENABLE 0x40 +#define BF_HWECC_CTRL_BYTE_ENABLE(v) (((v) << 6) & 0x40) +#define BP_HWECC_CTRL_ECC_SEL 5 +#define BM_HWECC_CTRL_ECC_SEL 0x20 +#define BF_HWECC_CTRL_ECC_SEL(v) (((v) << 5) & 0x20) +#define BP_HWECC_CTRL_ENC_SEL 4 +#define BM_HWECC_CTRL_ENC_SEL 0x10 +#define BF_HWECC_CTRL_ENC_SEL(v) (((v) << 4) & 0x10) +#define BP_HWECC_CTRL_UNCORR_IRQ 2 +#define BM_HWECC_CTRL_UNCORR_IRQ 0x4 +#define BF_HWECC_CTRL_UNCORR_IRQ(v) (((v) << 2) & 0x4) +#define BP_HWECC_CTRL_UNCORR_IRQ_EN 1 +#define BM_HWECC_CTRL_UNCORR_IRQ_EN 0x2 +#define BF_HWECC_CTRL_UNCORR_IRQ_EN(v) (((v) << 1) & 0x2) +#define BP_HWECC_CTRL_RUN 0 +#define BM_HWECC_CTRL_RUN 0x1 +#define BF_HWECC_CTRL_RUN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_HWECC_STAT + * Address: 0x10 + * SCT: no +*/ +#define HW_HWECC_STAT (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x10)) +#define BP_HWECC_STAT_RSDEC_PRESENT 31 +#define BM_HWECC_STAT_RSDEC_PRESENT 0x80000000 +#define BF_HWECC_STAT_RSDEC_PRESENT(v) (((v) << 31) & 0x80000000) +#define BP_HWECC_STAT_RSENC_PRESENT 30 +#define BM_HWECC_STAT_RSENC_PRESENT 0x40000000 +#define BF_HWECC_STAT_RSENC_PRESENT(v) (((v) << 30) & 0x40000000) +#define BP_HWECC_STAT_SSDEC_PRESENT 29 +#define BM_HWECC_STAT_SSDEC_PRESENT 0x20000000 +#define BF_HWECC_STAT_SSDEC_PRESENT(v) (((v) << 29) & 0x20000000) +#define BP_HWECC_STAT_SSENC_PRESENT 28 +#define BM_HWECC_STAT_SSENC_PRESENT 0x10000000 +#define BF_HWECC_STAT_SSENC_PRESENT(v) (((v) << 28) & 0x10000000) + +/** + * Register: HW_HWECC_DEBUG0 + * Address: 0x20 + * SCT: no +*/ +#define HW_HWECC_DEBUG0 (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x20)) +#define BP_HWECC_DEBUG0_DMA_PENDCMD 29 +#define BM_HWECC_DEBUG0_DMA_PENDCMD 0x20000000 +#define BF_HWECC_DEBUG0_DMA_PENDCMD(v) (((v) << 29) & 0x20000000) +#define BP_HWECC_DEBUG0_DMA_PREQ 28 +#define BM_HWECC_DEBUG0_DMA_PREQ 0x10000000 +#define BF_HWECC_DEBUG0_DMA_PREQ(v) (((v) << 28) & 0x10000000) +#define BP_HWECC_DEBUG0_SYMBOL_STATE 24 +#define BM_HWECC_DEBUG0_SYMBOL_STATE 0xf000000 +#define BF_HWECC_DEBUG0_SYMBOL_STATE(v) (((v) << 24) & 0xf000000) +#define BP_HWECC_DEBUG0_CTRL_STATE 16 +#define BM_HWECC_DEBUG0_CTRL_STATE 0x3f0000 +#define BF_HWECC_DEBUG0_CTRL_STATE(v) (((v) << 16) & 0x3f0000) +#define BP_HWECC_DEBUG0_ECC_EXCEPTION 12 +#define BM_HWECC_DEBUG0_ECC_EXCEPTION 0xf000 +#define BF_HWECC_DEBUG0_ECC_EXCEPTION(v) (((v) << 12) & 0xf000) +#define BP_HWECC_DEBUG0_NUM_BIT_ERRORS 4 +#define BM_HWECC_DEBUG0_NUM_BIT_ERRORS 0x3f0 +#define BF_HWECC_DEBUG0_NUM_BIT_ERRORS(v) (((v) << 4) & 0x3f0) +#define BP_HWECC_DEBUG0_NUM_SYMBOL_ERRORS 0 +#define BM_HWECC_DEBUG0_NUM_SYMBOL_ERRORS 0x7 +#define BF_HWECC_DEBUG0_NUM_SYMBOL_ERRORS(v) (((v) << 0) & 0x7) + +/** + * Register: HW_HWECC_DEBUG1 + * Address: 0x30 + * SCT: no +*/ +#define HW_HWECC_DEBUG1 (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x30)) +#define BP_HWECC_DEBUG1_SYNDROME2 18 +#define BM_HWECC_DEBUG1_SYNDROME2 0x7fc0000 +#define BF_HWECC_DEBUG1_SYNDROME2(v) (((v) << 18) & 0x7fc0000) +#define BP_HWECC_DEBUG1_SYNDROME1 9 +#define BM_HWECC_DEBUG1_SYNDROME1 0x3fe00 +#define BF_HWECC_DEBUG1_SYNDROME1(v) (((v) << 9) & 0x3fe00) +#define BP_HWECC_DEBUG1_SYNDROME0 0 +#define BM_HWECC_DEBUG1_SYNDROME0 0x1ff +#define BF_HWECC_DEBUG1_SYNDROME0(v) (((v) << 0) & 0x1ff) + +/** + * Register: HW_HWECC_DEBUG2 + * Address: 0x40 + * SCT: no +*/ +#define HW_HWECC_DEBUG2 (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x40)) +#define BP_HWECC_DEBUG2_SYNDROME5 18 +#define BM_HWECC_DEBUG2_SYNDROME5 0x7fc0000 +#define BF_HWECC_DEBUG2_SYNDROME5(v) (((v) << 18) & 0x7fc0000) +#define BP_HWECC_DEBUG2_SYNDROME4 9 +#define BM_HWECC_DEBUG2_SYNDROME4 0x3fe00 +#define BF_HWECC_DEBUG2_SYNDROME4(v) (((v) << 9) & 0x3fe00) +#define BP_HWECC_DEBUG2_SYNDROME3 0 +#define BM_HWECC_DEBUG2_SYNDROME3 0x1ff +#define BF_HWECC_DEBUG2_SYNDROME3(v) (((v) << 0) & 0x1ff) + +/** + * Register: HW_HWECC_DEBUG3 + * Address: 0x50 + * SCT: no +*/ +#define HW_HWECC_DEBUG3 (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x50)) +#define BP_HWECC_DEBUG3_OMEGA0 18 +#define BM_HWECC_DEBUG3_OMEGA0 0x7fc0000 +#define BF_HWECC_DEBUG3_OMEGA0(v) (((v) << 18) & 0x7fc0000) +#define BP_HWECC_DEBUG3_SYNDROME7 9 +#define BM_HWECC_DEBUG3_SYNDROME7 0x3fe00 +#define BF_HWECC_DEBUG3_SYNDROME7(v) (((v) << 9) & 0x3fe00) +#define BP_HWECC_DEBUG3_SYNDROME6 0 +#define BM_HWECC_DEBUG3_SYNDROME6 0x1ff +#define BF_HWECC_DEBUG3_SYNDROME6(v) (((v) << 0) & 0x1ff) + +/** + * Register: HW_HWECC_DEBUG4 + * Address: 0x60 + * SCT: no +*/ +#define HW_HWECC_DEBUG4 (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x60)) +#define BP_HWECC_DEBUG4_OMEGA3 18 +#define BM_HWECC_DEBUG4_OMEGA3 0x7fc0000 +#define BF_HWECC_DEBUG4_OMEGA3(v) (((v) << 18) & 0x7fc0000) +#define BP_HWECC_DEBUG4_OMEGA2 9 +#define BM_HWECC_DEBUG4_OMEGA2 0x3fe00 +#define BF_HWECC_DEBUG4_OMEGA2(v) (((v) << 9) & 0x3fe00) +#define BP_HWECC_DEBUG4_OMEGA1 0 +#define BM_HWECC_DEBUG4_OMEGA1 0x1ff +#define BF_HWECC_DEBUG4_OMEGA1(v) (((v) << 0) & 0x1ff) + +/** + * Register: HW_HWECC_DEBUG5 + * Address: 0x70 + * SCT: no +*/ +#define HW_HWECC_DEBUG5 (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x70)) +#define BP_HWECC_DEBUG5_LAMBDA2 18 +#define BM_HWECC_DEBUG5_LAMBDA2 0x7fc0000 +#define BF_HWECC_DEBUG5_LAMBDA2(v) (((v) << 18) & 0x7fc0000) +#define BP_HWECC_DEBUG5_LAMBDA1 9 +#define BM_HWECC_DEBUG5_LAMBDA1 0x3fe00 +#define BF_HWECC_DEBUG5_LAMBDA1(v) (((v) << 9) & 0x3fe00) +#define BP_HWECC_DEBUG5_LAMBDA0 0 +#define BM_HWECC_DEBUG5_LAMBDA0 0x1ff +#define BF_HWECC_DEBUG5_LAMBDA0(v) (((v) << 0) & 0x1ff) + +/** + * Register: HW_HWECC_DEBUG6 + * Address: 0x80 + * SCT: no +*/ +#define HW_HWECC_DEBUG6 (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x80)) +#define BP_HWECC_DEBUG6_LAMBDA4 9 +#define BM_HWECC_DEBUG6_LAMBDA4 0x3fe00 +#define BF_HWECC_DEBUG6_LAMBDA4(v) (((v) << 9) & 0x3fe00) +#define BP_HWECC_DEBUG6_LAMBDA3 0 +#define BM_HWECC_DEBUG6_LAMBDA3 0x1ff +#define BF_HWECC_DEBUG6_LAMBDA3(v) (((v) << 0) & 0x1ff) + +/** + * Register: HW_HWECC_DATA + * Address: 0x90 + * SCT: yes +*/ +#define HW_HWECC_DATA (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x90 + 0x0)) +#define HW_HWECC_DATA_SET (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x90 + 0x4)) +#define HW_HWECC_DATA_CLR (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x90 + 0x8)) +#define HW_HWECC_DATA_TOG (*(volatile unsigned long *)(REGS_HWECC_BASE + 0x90 + 0xc)) +#define BP_HWECC_DATA_DATA 0 +#define BM_HWECC_DATA_DATA 0xffffffff +#define BF_HWECC_DATA_DATA(v) (((v) << 0) & 0xffffffff) + +#endif /* __HEADERGEN__STMP3600__HWECC__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-i2c.h b/firmware/target/arm/imx233/regs/stmp3600/regs-i2c.h new file mode 100644 index 0000000000..0b3317c231 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-i2c.h @@ -0,0 +1,521 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__I2C__H__ +#define __HEADERGEN__STMP3600__I2C__H__ + +#define REGS_I2C_BASE (0x80058000) + +#define REGS_I2C_VERSION "2.3.0" + +/** + * Register: HW_I2C_CTRL0 + * Address: 0 + * SCT: yes +*/ +#define HW_I2C_CTRL0 (*(volatile unsigned long *)(REGS_I2C_BASE + 0x0 + 0x0)) +#define HW_I2C_CTRL0_SET (*(volatile unsigned long *)(REGS_I2C_BASE + 0x0 + 0x4)) +#define HW_I2C_CTRL0_CLR (*(volatile unsigned long *)(REGS_I2C_BASE + 0x0 + 0x8)) +#define HW_I2C_CTRL0_TOG (*(volatile unsigned long *)(REGS_I2C_BASE + 0x0 + 0xc)) +#define BP_I2C_CTRL0_SFTRST 31 +#define BM_I2C_CTRL0_SFTRST 0x80000000 +#define BV_I2C_CTRL0_SFTRST__RUN 0x0 +#define BV_I2C_CTRL0_SFTRST__RESET 0x1 +#define BF_I2C_CTRL0_SFTRST(v) (((v) << 31) & 0x80000000) +#define BF_I2C_CTRL0_SFTRST_V(v) ((BV_I2C_CTRL0_SFTRST__##v << 31) & 0x80000000) +#define BP_I2C_CTRL0_CLKGATE 30 +#define BM_I2C_CTRL0_CLKGATE 0x40000000 +#define BV_I2C_CTRL0_CLKGATE__RUN 0x0 +#define BV_I2C_CTRL0_CLKGATE__NO_CLKS 0x1 +#define BF_I2C_CTRL0_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BF_I2C_CTRL0_CLKGATE_V(v) ((BV_I2C_CTRL0_CLKGATE__##v << 30) & 0x40000000) +#define BP_I2C_CTRL0_RUN 29 +#define BM_I2C_CTRL0_RUN 0x20000000 +#define BV_I2C_CTRL0_RUN__HALT 0x0 +#define BV_I2C_CTRL0_RUN__RUN 0x1 +#define BF_I2C_CTRL0_RUN(v) (((v) << 29) & 0x20000000) +#define BF_I2C_CTRL0_RUN_V(v) ((BV_I2C_CTRL0_RUN__##v << 29) & 0x20000000) +#define BP_I2C_CTRL0_PRE_ACK 27 +#define BM_I2C_CTRL0_PRE_ACK 0x8000000 +#define BF_I2C_CTRL0_PRE_ACK(v) (((v) << 27) & 0x8000000) +#define BP_I2C_CTRL0_ACKNOWLEDGE 26 +#define BM_I2C_CTRL0_ACKNOWLEDGE 0x4000000 +#define BV_I2C_CTRL0_ACKNOWLEDGE__SNAK 0x0 +#define BV_I2C_CTRL0_ACKNOWLEDGE__ACK 0x1 +#define BF_I2C_CTRL0_ACKNOWLEDGE(v) (((v) << 26) & 0x4000000) +#define BF_I2C_CTRL0_ACKNOWLEDGE_V(v) ((BV_I2C_CTRL0_ACKNOWLEDGE__##v << 26) & 0x4000000) +#define BP_I2C_CTRL0_SEND_NAK_ON_LAST 25 +#define BM_I2C_CTRL0_SEND_NAK_ON_LAST 0x2000000 +#define BV_I2C_CTRL0_SEND_NAK_ON_LAST__ACK_IT 0x0 +#define BV_I2C_CTRL0_SEND_NAK_ON_LAST__NAK_IT 0x1 +#define BF_I2C_CTRL0_SEND_NAK_ON_LAST(v) (((v) << 25) & 0x2000000) +#define BF_I2C_CTRL0_SEND_NAK_ON_LAST_V(v) ((BV_I2C_CTRL0_SEND_NAK_ON_LAST__##v << 25) & 0x2000000) +#define BP_I2C_CTRL0_PIO_MODE 24 +#define BM_I2C_CTRL0_PIO_MODE 0x1000000 +#define BF_I2C_CTRL0_PIO_MODE(v) (((v) << 24) & 0x1000000) +#define BP_I2C_CTRL0_MULTI_MASTER 23 +#define BM_I2C_CTRL0_MULTI_MASTER 0x800000 +#define BV_I2C_CTRL0_MULTI_MASTER__SINGLE 0x0 +#define BV_I2C_CTRL0_MULTI_MASTER__MULTIPLE 0x1 +#define BF_I2C_CTRL0_MULTI_MASTER(v) (((v) << 23) & 0x800000) +#define BF_I2C_CTRL0_MULTI_MASTER_V(v) ((BV_I2C_CTRL0_MULTI_MASTER__##v << 23) & 0x800000) +#define BP_I2C_CTRL0_CLOCK_HELD 22 +#define BM_I2C_CTRL0_CLOCK_HELD 0x400000 +#define BV_I2C_CTRL0_CLOCK_HELD__RELEASE 0x0 +#define BV_I2C_CTRL0_CLOCK_HELD__HELD_LOW 0x1 +#define BF_I2C_CTRL0_CLOCK_HELD(v) (((v) << 22) & 0x400000) +#define BF_I2C_CTRL0_CLOCK_HELD_V(v) ((BV_I2C_CTRL0_CLOCK_HELD__##v << 22) & 0x400000) +#define BP_I2C_CTRL0_RETAIN_CLOCK 21 +#define BM_I2C_CTRL0_RETAIN_CLOCK 0x200000 +#define BV_I2C_CTRL0_RETAIN_CLOCK__RELEASE 0x0 +#define BV_I2C_CTRL0_RETAIN_CLOCK__HOLD_LOW 0x1 +#define BF_I2C_CTRL0_RETAIN_CLOCK(v) (((v) << 21) & 0x200000) +#define BF_I2C_CTRL0_RETAIN_CLOCK_V(v) ((BV_I2C_CTRL0_RETAIN_CLOCK__##v << 21) & 0x200000) +#define BP_I2C_CTRL0_POST_SEND_STOP 20 +#define BM_I2C_CTRL0_POST_SEND_STOP 0x100000 +#define BV_I2C_CTRL0_POST_SEND_STOP__NO_STOP 0x0 +#define BV_I2C_CTRL0_POST_SEND_STOP__SEND_STOP 0x1 +#define BF_I2C_CTRL0_POST_SEND_STOP(v) (((v) << 20) & 0x100000) +#define BF_I2C_CTRL0_POST_SEND_STOP_V(v) ((BV_I2C_CTRL0_POST_SEND_STOP__##v << 20) & 0x100000) +#define BP_I2C_CTRL0_PRE_SEND_START 19 +#define BM_I2C_CTRL0_PRE_SEND_START 0x80000 +#define BV_I2C_CTRL0_PRE_SEND_START__NO_START 0x0 +#define BV_I2C_CTRL0_PRE_SEND_START__SEND_START 0x1 +#define BF_I2C_CTRL0_PRE_SEND_START(v) (((v) << 19) & 0x80000) +#define BF_I2C_CTRL0_PRE_SEND_START_V(v) ((BV_I2C_CTRL0_PRE_SEND_START__##v << 19) & 0x80000) +#define BP_I2C_CTRL0_SLAVE_ADDRESS_ENABLE 18 +#define BM_I2C_CTRL0_SLAVE_ADDRESS_ENABLE 0x40000 +#define BV_I2C_CTRL0_SLAVE_ADDRESS_ENABLE__DISABLED 0x0 +#define BV_I2C_CTRL0_SLAVE_ADDRESS_ENABLE__ENABLED 0x1 +#define BF_I2C_CTRL0_SLAVE_ADDRESS_ENABLE(v) (((v) << 18) & 0x40000) +#define BF_I2C_CTRL0_SLAVE_ADDRESS_ENABLE_V(v) ((BV_I2C_CTRL0_SLAVE_ADDRESS_ENABLE__##v << 18) & 0x40000) +#define BP_I2C_CTRL0_MASTER_MODE 17 +#define BM_I2C_CTRL0_MASTER_MODE 0x20000 +#define BV_I2C_CTRL0_MASTER_MODE__SLAVE 0x0 +#define BV_I2C_CTRL0_MASTER_MODE__MASTER 0x1 +#define BF_I2C_CTRL0_MASTER_MODE(v) (((v) << 17) & 0x20000) +#define BF_I2C_CTRL0_MASTER_MODE_V(v) ((BV_I2C_CTRL0_MASTER_MODE__##v << 17) & 0x20000) +#define BP_I2C_CTRL0_DIRECTION 16 +#define BM_I2C_CTRL0_DIRECTION 0x10000 +#define BV_I2C_CTRL0_DIRECTION__RECEIVE 0x0 +#define BV_I2C_CTRL0_DIRECTION__TRANSMIT 0x1 +#define BF_I2C_CTRL0_DIRECTION(v) (((v) << 16) & 0x10000) +#define BF_I2C_CTRL0_DIRECTION_V(v) ((BV_I2C_CTRL0_DIRECTION__##v << 16) & 0x10000) +#define BP_I2C_CTRL0_XFER_COUNT 0 +#define BM_I2C_CTRL0_XFER_COUNT 0xffff +#define BF_I2C_CTRL0_XFER_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_I2C_TIMING0 + * Address: 0x10 + * SCT: yes +*/ +#define HW_I2C_TIMING0 (*(volatile unsigned long *)(REGS_I2C_BASE + 0x10 + 0x0)) +#define HW_I2C_TIMING0_SET (*(volatile unsigned long *)(REGS_I2C_BASE + 0x10 + 0x4)) +#define HW_I2C_TIMING0_CLR (*(volatile unsigned long *)(REGS_I2C_BASE + 0x10 + 0x8)) +#define HW_I2C_TIMING0_TOG (*(volatile unsigned long *)(REGS_I2C_BASE + 0x10 + 0xc)) +#define BP_I2C_TIMING0_HIGH_COUNT 16 +#define BM_I2C_TIMING0_HIGH_COUNT 0x3ff0000 +#define BF_I2C_TIMING0_HIGH_COUNT(v) (((v) << 16) & 0x3ff0000) +#define BP_I2C_TIMING0_RCV_COUNT 0 +#define BM_I2C_TIMING0_RCV_COUNT 0x3ff +#define BF_I2C_TIMING0_RCV_COUNT(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_I2C_TIMING1 + * Address: 0x20 + * SCT: yes +*/ +#define HW_I2C_TIMING1 (*(volatile unsigned long *)(REGS_I2C_BASE + 0x20 + 0x0)) +#define HW_I2C_TIMING1_SET (*(volatile unsigned long *)(REGS_I2C_BASE + 0x20 + 0x4)) +#define HW_I2C_TIMING1_CLR (*(volatile unsigned long *)(REGS_I2C_BASE + 0x20 + 0x8)) +#define HW_I2C_TIMING1_TOG (*(volatile unsigned long *)(REGS_I2C_BASE + 0x20 + 0xc)) +#define BP_I2C_TIMING1_LOW_COUNT 16 +#define BM_I2C_TIMING1_LOW_COUNT 0x3ff0000 +#define BF_I2C_TIMING1_LOW_COUNT(v) (((v) << 16) & 0x3ff0000) +#define BP_I2C_TIMING1_XMIT_COUNT 0 +#define BM_I2C_TIMING1_XMIT_COUNT 0x3ff +#define BF_I2C_TIMING1_XMIT_COUNT(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_I2C_TIMING2 + * Address: 0x30 + * SCT: yes +*/ +#define HW_I2C_TIMING2 (*(volatile unsigned long *)(REGS_I2C_BASE + 0x30 + 0x0)) +#define HW_I2C_TIMING2_SET (*(volatile unsigned long *)(REGS_I2C_BASE + 0x30 + 0x4)) +#define HW_I2C_TIMING2_CLR (*(volatile unsigned long *)(REGS_I2C_BASE + 0x30 + 0x8)) +#define HW_I2C_TIMING2_TOG (*(volatile unsigned long *)(REGS_I2C_BASE + 0x30 + 0xc)) +#define BP_I2C_TIMING2_BUS_FREE 16 +#define BM_I2C_TIMING2_BUS_FREE 0x3ff0000 +#define BF_I2C_TIMING2_BUS_FREE(v) (((v) << 16) & 0x3ff0000) +#define BP_I2C_TIMING2_LEADIN_COUNT 0 +#define BM_I2C_TIMING2_LEADIN_COUNT 0x3ff +#define BF_I2C_TIMING2_LEADIN_COUNT(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_I2C_CTRL1 + * Address: 0x40 + * SCT: yes +*/ +#define HW_I2C_CTRL1 (*(volatile unsigned long *)(REGS_I2C_BASE + 0x40 + 0x0)) +#define HW_I2C_CTRL1_SET (*(volatile unsigned long *)(REGS_I2C_BASE + 0x40 + 0x4)) +#define HW_I2C_CTRL1_CLR (*(volatile unsigned long *)(REGS_I2C_BASE + 0x40 + 0x8)) +#define HW_I2C_CTRL1_TOG (*(volatile unsigned long *)(REGS_I2C_BASE + 0x40 + 0xc)) +#define BP_I2C_CTRL1_BCAST_SLAVE_EN 24 +#define BM_I2C_CTRL1_BCAST_SLAVE_EN 0x1000000 +#define BV_I2C_CTRL1_BCAST_SLAVE_EN__NO_BCAST 0x0 +#define BV_I2C_CTRL1_BCAST_SLAVE_EN__WATCH_BCAST 0x1 +#define BF_I2C_CTRL1_BCAST_SLAVE_EN(v) (((v) << 24) & 0x1000000) +#define BF_I2C_CTRL1_BCAST_SLAVE_EN_V(v) ((BV_I2C_CTRL1_BCAST_SLAVE_EN__##v << 24) & 0x1000000) +#define BP_I2C_CTRL1_SLAVE_ADDRESS_BYTE 16 +#define BM_I2C_CTRL1_SLAVE_ADDRESS_BYTE 0xff0000 +#define BF_I2C_CTRL1_SLAVE_ADDRESS_BYTE(v) (((v) << 16) & 0xff0000) +#define BP_I2C_CTRL1_BUS_FREE_IRQ_EN 15 +#define BM_I2C_CTRL1_BUS_FREE_IRQ_EN 0x8000 +#define BV_I2C_CTRL1_BUS_FREE_IRQ_EN__DISABLED 0x0 +#define BV_I2C_CTRL1_BUS_FREE_IRQ_EN__ENABLED 0x1 +#define BF_I2C_CTRL1_BUS_FREE_IRQ_EN(v) (((v) << 15) & 0x8000) +#define BF_I2C_CTRL1_BUS_FREE_IRQ_EN_V(v) ((BV_I2C_CTRL1_BUS_FREE_IRQ_EN__##v << 15) & 0x8000) +#define BP_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ_EN 14 +#define BM_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ_EN 0x4000 +#define BV_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ_EN__DISABLED 0x0 +#define BV_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ_EN__ENABLED 0x1 +#define BF_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ_EN(v) (((v) << 14) & 0x4000) +#define BF_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ_EN_V(v) ((BV_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ_EN__##v << 14) & 0x4000) +#define BP_I2C_CTRL1_NO_SLAVE_ACK_IRQ_EN 13 +#define BM_I2C_CTRL1_NO_SLAVE_ACK_IRQ_EN 0x2000 +#define BV_I2C_CTRL1_NO_SLAVE_ACK_IRQ_EN__DISABLED 0x0 +#define BV_I2C_CTRL1_NO_SLAVE_ACK_IRQ_EN__ENABLED 0x1 +#define BF_I2C_CTRL1_NO_SLAVE_ACK_IRQ_EN(v) (((v) << 13) & 0x2000) +#define BF_I2C_CTRL1_NO_SLAVE_ACK_IRQ_EN_V(v) ((BV_I2C_CTRL1_NO_SLAVE_ACK_IRQ_EN__##v << 13) & 0x2000) +#define BP_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ_EN 12 +#define BM_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ_EN 0x1000 +#define BV_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ_EN__DISABLED 0x0 +#define BV_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ_EN__ENABLED 0x1 +#define BF_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ_EN(v) (((v) << 12) & 0x1000) +#define BF_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ_EN_V(v) ((BV_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ_EN__##v << 12) & 0x1000) +#define BP_I2C_CTRL1_EARLY_TERM_IRQ_EN 11 +#define BM_I2C_CTRL1_EARLY_TERM_IRQ_EN 0x800 +#define BV_I2C_CTRL1_EARLY_TERM_IRQ_EN__DISABLED 0x0 +#define BV_I2C_CTRL1_EARLY_TERM_IRQ_EN__ENABLED 0x1 +#define BF_I2C_CTRL1_EARLY_TERM_IRQ_EN(v) (((v) << 11) & 0x800) +#define BF_I2C_CTRL1_EARLY_TERM_IRQ_EN_V(v) ((BV_I2C_CTRL1_EARLY_TERM_IRQ_EN__##v << 11) & 0x800) +#define BP_I2C_CTRL1_MASTER_LOSS_IRQ_EN 10 +#define BM_I2C_CTRL1_MASTER_LOSS_IRQ_EN 0x400 +#define BV_I2C_CTRL1_MASTER_LOSS_IRQ_EN__DISABLED 0x0 +#define BV_I2C_CTRL1_MASTER_LOSS_IRQ_EN__ENABLED 0x1 +#define BF_I2C_CTRL1_MASTER_LOSS_IRQ_EN(v) (((v) << 10) & 0x400) +#define BF_I2C_CTRL1_MASTER_LOSS_IRQ_EN_V(v) ((BV_I2C_CTRL1_MASTER_LOSS_IRQ_EN__##v << 10) & 0x400) +#define BP_I2C_CTRL1_SLAVE_STOP_IRQ_EN 9 +#define BM_I2C_CTRL1_SLAVE_STOP_IRQ_EN 0x200 +#define BV_I2C_CTRL1_SLAVE_STOP_IRQ_EN__DISABLED 0x0 +#define BV_I2C_CTRL1_SLAVE_STOP_IRQ_EN__ENABLED 0x1 +#define BF_I2C_CTRL1_SLAVE_STOP_IRQ_EN(v) (((v) << 9) & 0x200) +#define BF_I2C_CTRL1_SLAVE_STOP_IRQ_EN_V(v) ((BV_I2C_CTRL1_SLAVE_STOP_IRQ_EN__##v << 9) & 0x200) +#define BP_I2C_CTRL1_SLAVE_IRQ_EN 8 +#define BM_I2C_CTRL1_SLAVE_IRQ_EN 0x100 +#define BV_I2C_CTRL1_SLAVE_IRQ_EN__DISABLED 0x0 +#define BV_I2C_CTRL1_SLAVE_IRQ_EN__ENABLED 0x1 +#define BF_I2C_CTRL1_SLAVE_IRQ_EN(v) (((v) << 8) & 0x100) +#define BF_I2C_CTRL1_SLAVE_IRQ_EN_V(v) ((BV_I2C_CTRL1_SLAVE_IRQ_EN__##v << 8) & 0x100) +#define BP_I2C_CTRL1_BUS_FREE_IRQ 7 +#define BM_I2C_CTRL1_BUS_FREE_IRQ 0x80 +#define BV_I2C_CTRL1_BUS_FREE_IRQ__NO_REQUEST 0x0 +#define BV_I2C_CTRL1_BUS_FREE_IRQ__REQUEST 0x1 +#define BF_I2C_CTRL1_BUS_FREE_IRQ(v) (((v) << 7) & 0x80) +#define BF_I2C_CTRL1_BUS_FREE_IRQ_V(v) ((BV_I2C_CTRL1_BUS_FREE_IRQ__##v << 7) & 0x80) +#define BP_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ 6 +#define BM_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ 0x40 +#define BV_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ__NO_REQUEST 0x0 +#define BV_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ__REQUEST 0x1 +#define BF_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ(v) (((v) << 6) & 0x40) +#define BF_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ_V(v) ((BV_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ__##v << 6) & 0x40) +#define BP_I2C_CTRL1_NO_SLAVE_ACK_IRQ 5 +#define BM_I2C_CTRL1_NO_SLAVE_ACK_IRQ 0x20 +#define BV_I2C_CTRL1_NO_SLAVE_ACK_IRQ__NO_REQUEST 0x0 +#define BV_I2C_CTRL1_NO_SLAVE_ACK_IRQ__REQUEST 0x1 +#define BF_I2C_CTRL1_NO_SLAVE_ACK_IRQ(v) (((v) << 5) & 0x20) +#define BF_I2C_CTRL1_NO_SLAVE_ACK_IRQ_V(v) ((BV_I2C_CTRL1_NO_SLAVE_ACK_IRQ__##v << 5) & 0x20) +#define BP_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ 4 +#define BM_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ 0x10 +#define BV_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ__NO_REQUEST 0x0 +#define BV_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ__REQUEST 0x1 +#define BF_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ(v) (((v) << 4) & 0x10) +#define BF_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ_V(v) ((BV_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ__##v << 4) & 0x10) +#define BP_I2C_CTRL1_EARLY_TERM_IRQ 3 +#define BM_I2C_CTRL1_EARLY_TERM_IRQ 0x8 +#define BV_I2C_CTRL1_EARLY_TERM_IRQ__NO_REQUEST 0x0 +#define BV_I2C_CTRL1_EARLY_TERM_IRQ__REQUEST 0x1 +#define BF_I2C_CTRL1_EARLY_TERM_IRQ(v) (((v) << 3) & 0x8) +#define BF_I2C_CTRL1_EARLY_TERM_IRQ_V(v) ((BV_I2C_CTRL1_EARLY_TERM_IRQ__##v << 3) & 0x8) +#define BP_I2C_CTRL1_MASTER_LOSS_IRQ 2 +#define BM_I2C_CTRL1_MASTER_LOSS_IRQ 0x4 +#define BV_I2C_CTRL1_MASTER_LOSS_IRQ__NO_REQUEST 0x0 +#define BV_I2C_CTRL1_MASTER_LOSS_IRQ__REQUEST 0x1 +#define BF_I2C_CTRL1_MASTER_LOSS_IRQ(v) (((v) << 2) & 0x4) +#define BF_I2C_CTRL1_MASTER_LOSS_IRQ_V(v) ((BV_I2C_CTRL1_MASTER_LOSS_IRQ__##v << 2) & 0x4) +#define BP_I2C_CTRL1_SLAVE_STOP_IRQ 1 +#define BM_I2C_CTRL1_SLAVE_STOP_IRQ 0x2 +#define BV_I2C_CTRL1_SLAVE_STOP_IRQ__NO_REQUEST 0x0 +#define BV_I2C_CTRL1_SLAVE_STOP_IRQ__REQUEST 0x1 +#define BF_I2C_CTRL1_SLAVE_STOP_IRQ(v) (((v) << 1) & 0x2) +#define BF_I2C_CTRL1_SLAVE_STOP_IRQ_V(v) ((BV_I2C_CTRL1_SLAVE_STOP_IRQ__##v << 1) & 0x2) +#define BP_I2C_CTRL1_SLAVE_IRQ 0 +#define BM_I2C_CTRL1_SLAVE_IRQ 0x1 +#define BV_I2C_CTRL1_SLAVE_IRQ__NO_REQUEST 0x0 +#define BV_I2C_CTRL1_SLAVE_IRQ__REQUEST 0x1 +#define BF_I2C_CTRL1_SLAVE_IRQ(v) (((v) << 0) & 0x1) +#define BF_I2C_CTRL1_SLAVE_IRQ_V(v) ((BV_I2C_CTRL1_SLAVE_IRQ__##v << 0) & 0x1) + +/** + * Register: HW_I2C_STAT + * Address: 0x50 + * SCT: no +*/ +#define HW_I2C_STAT (*(volatile unsigned long *)(REGS_I2C_BASE + 0x50)) +#define BP_I2C_STAT_MASTER_PRESENT 31 +#define BM_I2C_STAT_MASTER_PRESENT 0x80000000 +#define BV_I2C_STAT_MASTER_PRESENT__UNAVAILABLE 0x0 +#define BV_I2C_STAT_MASTER_PRESENT__AVAILABLE 0x1 +#define BF_I2C_STAT_MASTER_PRESENT(v) (((v) << 31) & 0x80000000) +#define BF_I2C_STAT_MASTER_PRESENT_V(v) ((BV_I2C_STAT_MASTER_PRESENT__##v << 31) & 0x80000000) +#define BP_I2C_STAT_SLAVE_PRESENT 30 +#define BM_I2C_STAT_SLAVE_PRESENT 0x40000000 +#define BV_I2C_STAT_SLAVE_PRESENT__UNAVAILABLE 0x0 +#define BV_I2C_STAT_SLAVE_PRESENT__AVAILABLE 0x1 +#define BF_I2C_STAT_SLAVE_PRESENT(v) (((v) << 30) & 0x40000000) +#define BF_I2C_STAT_SLAVE_PRESENT_V(v) ((BV_I2C_STAT_SLAVE_PRESENT__##v << 30) & 0x40000000) +#define BP_I2C_STAT_ANY_ENABLED_IRQ 29 +#define BM_I2C_STAT_ANY_ENABLED_IRQ 0x20000000 +#define BV_I2C_STAT_ANY_ENABLED_IRQ__NO_REQUESTS 0x0 +#define BV_I2C_STAT_ANY_ENABLED_IRQ__AT_LEAST_ONE_REQUEST 0x1 +#define BF_I2C_STAT_ANY_ENABLED_IRQ(v) (((v) << 29) & 0x20000000) +#define BF_I2C_STAT_ANY_ENABLED_IRQ_V(v) ((BV_I2C_STAT_ANY_ENABLED_IRQ__##v << 29) & 0x20000000) +#define BP_I2C_STAT_RCVD_SLAVE_ADDR 16 +#define BM_I2C_STAT_RCVD_SLAVE_ADDR 0xff0000 +#define BF_I2C_STAT_RCVD_SLAVE_ADDR(v) (((v) << 16) & 0xff0000) +#define BP_I2C_STAT_SLAVE_ADDR_EQ_ZERO 15 +#define BM_I2C_STAT_SLAVE_ADDR_EQ_ZERO 0x8000 +#define BV_I2C_STAT_SLAVE_ADDR_EQ_ZERO__ZERO_NOT_MATCHED 0x0 +#define BV_I2C_STAT_SLAVE_ADDR_EQ_ZERO__WAS_ZERO 0x1 +#define BF_I2C_STAT_SLAVE_ADDR_EQ_ZERO(v) (((v) << 15) & 0x8000) +#define BF_I2C_STAT_SLAVE_ADDR_EQ_ZERO_V(v) ((BV_I2C_STAT_SLAVE_ADDR_EQ_ZERO__##v << 15) & 0x8000) +#define BP_I2C_STAT_SLAVE_FOUND 14 +#define BM_I2C_STAT_SLAVE_FOUND 0x4000 +#define BV_I2C_STAT_SLAVE_FOUND__IDLE 0x0 +#define BV_I2C_STAT_SLAVE_FOUND__WAITING 0x1 +#define BF_I2C_STAT_SLAVE_FOUND(v) (((v) << 14) & 0x4000) +#define BF_I2C_STAT_SLAVE_FOUND_V(v) ((BV_I2C_STAT_SLAVE_FOUND__##v << 14) & 0x4000) +#define BP_I2C_STAT_SLAVE_SEARCHING 13 +#define BM_I2C_STAT_SLAVE_SEARCHING 0x2000 +#define BV_I2C_STAT_SLAVE_SEARCHING__IDLE 0x0 +#define BV_I2C_STAT_SLAVE_SEARCHING__ACTIVE 0x1 +#define BF_I2C_STAT_SLAVE_SEARCHING(v) (((v) << 13) & 0x2000) +#define BF_I2C_STAT_SLAVE_SEARCHING_V(v) ((BV_I2C_STAT_SLAVE_SEARCHING__##v << 13) & 0x2000) +#define BP_I2C_STAT_DATA_ENGINE_DMA_WAIT 12 +#define BM_I2C_STAT_DATA_ENGINE_DMA_WAIT 0x1000 +#define BV_I2C_STAT_DATA_ENGINE_DMA_WAIT__CONTINUE 0x0 +#define BV_I2C_STAT_DATA_ENGINE_DMA_WAIT__WAITING 0x1 +#define BF_I2C_STAT_DATA_ENGINE_DMA_WAIT(v) (((v) << 12) & 0x1000) +#define BF_I2C_STAT_DATA_ENGINE_DMA_WAIT_V(v) ((BV_I2C_STAT_DATA_ENGINE_DMA_WAIT__##v << 12) & 0x1000) +#define BP_I2C_STAT_BUS_BUSY 11 +#define BM_I2C_STAT_BUS_BUSY 0x800 +#define BV_I2C_STAT_BUS_BUSY__IDLE 0x0 +#define BV_I2C_STAT_BUS_BUSY__BUSY 0x1 +#define BF_I2C_STAT_BUS_BUSY(v) (((v) << 11) & 0x800) +#define BF_I2C_STAT_BUS_BUSY_V(v) ((BV_I2C_STAT_BUS_BUSY__##v << 11) & 0x800) +#define BP_I2C_STAT_CLK_GEN_BUSY 10 +#define BM_I2C_STAT_CLK_GEN_BUSY 0x400 +#define BV_I2C_STAT_CLK_GEN_BUSY__IDLE 0x0 +#define BV_I2C_STAT_CLK_GEN_BUSY__BUSY 0x1 +#define BF_I2C_STAT_CLK_GEN_BUSY(v) (((v) << 10) & 0x400) +#define BF_I2C_STAT_CLK_GEN_BUSY_V(v) ((BV_I2C_STAT_CLK_GEN_BUSY__##v << 10) & 0x400) +#define BP_I2C_STAT_DATA_ENGINE_BUSY 9 +#define BM_I2C_STAT_DATA_ENGINE_BUSY 0x200 +#define BV_I2C_STAT_DATA_ENGINE_BUSY__IDLE 0x0 +#define BV_I2C_STAT_DATA_ENGINE_BUSY__BUSY 0x1 +#define BF_I2C_STAT_DATA_ENGINE_BUSY(v) (((v) << 9) & 0x200) +#define BF_I2C_STAT_DATA_ENGINE_BUSY_V(v) ((BV_I2C_STAT_DATA_ENGINE_BUSY__##v << 9) & 0x200) +#define BP_I2C_STAT_SLAVE_BUSY 8 +#define BM_I2C_STAT_SLAVE_BUSY 0x100 +#define BV_I2C_STAT_SLAVE_BUSY__IDLE 0x0 +#define BV_I2C_STAT_SLAVE_BUSY__BUSY 0x1 +#define BF_I2C_STAT_SLAVE_BUSY(v) (((v) << 8) & 0x100) +#define BF_I2C_STAT_SLAVE_BUSY_V(v) ((BV_I2C_STAT_SLAVE_BUSY__##v << 8) & 0x100) +#define BP_I2C_STAT_BUS_FREE_IRQ_SUMMARY 7 +#define BM_I2C_STAT_BUS_FREE_IRQ_SUMMARY 0x80 +#define BV_I2C_STAT_BUS_FREE_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_I2C_STAT_BUS_FREE_IRQ_SUMMARY__REQUEST 0x1 +#define BF_I2C_STAT_BUS_FREE_IRQ_SUMMARY(v) (((v) << 7) & 0x80) +#define BF_I2C_STAT_BUS_FREE_IRQ_SUMMARY_V(v) ((BV_I2C_STAT_BUS_FREE_IRQ_SUMMARY__##v << 7) & 0x80) +#define BP_I2C_STAT_DATA_ENGINE_CMPLT_IRQ_SUMMARY 6 +#define BM_I2C_STAT_DATA_ENGINE_CMPLT_IRQ_SUMMARY 0x40 +#define BV_I2C_STAT_DATA_ENGINE_CMPLT_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_I2C_STAT_DATA_ENGINE_CMPLT_IRQ_SUMMARY__REQUEST 0x1 +#define BF_I2C_STAT_DATA_ENGINE_CMPLT_IRQ_SUMMARY(v) (((v) << 6) & 0x40) +#define BF_I2C_STAT_DATA_ENGINE_CMPLT_IRQ_SUMMARY_V(v) ((BV_I2C_STAT_DATA_ENGINE_CMPLT_IRQ_SUMMARY__##v << 6) & 0x40) +#define BP_I2C_STAT_NO_SLAVE_ACK_IRQ_SUMMARY 5 +#define BM_I2C_STAT_NO_SLAVE_ACK_IRQ_SUMMARY 0x20 +#define BV_I2C_STAT_NO_SLAVE_ACK_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_I2C_STAT_NO_SLAVE_ACK_IRQ_SUMMARY__REQUEST 0x1 +#define BF_I2C_STAT_NO_SLAVE_ACK_IRQ_SUMMARY(v) (((v) << 5) & 0x20) +#define BF_I2C_STAT_NO_SLAVE_ACK_IRQ_SUMMARY_V(v) ((BV_I2C_STAT_NO_SLAVE_ACK_IRQ_SUMMARY__##v << 5) & 0x20) +#define BP_I2C_STAT_OVERSIZE_XFER_TERM_IRQ_SUMMARY 4 +#define BM_I2C_STAT_OVERSIZE_XFER_TERM_IRQ_SUMMARY 0x10 +#define BV_I2C_STAT_OVERSIZE_XFER_TERM_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_I2C_STAT_OVERSIZE_XFER_TERM_IRQ_SUMMARY__REQUEST 0x1 +#define BF_I2C_STAT_OVERSIZE_XFER_TERM_IRQ_SUMMARY(v) (((v) << 4) & 0x10) +#define BF_I2C_STAT_OVERSIZE_XFER_TERM_IRQ_SUMMARY_V(v) ((BV_I2C_STAT_OVERSIZE_XFER_TERM_IRQ_SUMMARY__##v << 4) & 0x10) +#define BP_I2C_STAT_EARLY_TERM_IRQ_SUMMARY 3 +#define BM_I2C_STAT_EARLY_TERM_IRQ_SUMMARY 0x8 +#define BV_I2C_STAT_EARLY_TERM_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_I2C_STAT_EARLY_TERM_IRQ_SUMMARY__REQUEST 0x1 +#define BF_I2C_STAT_EARLY_TERM_IRQ_SUMMARY(v) (((v) << 3) & 0x8) +#define BF_I2C_STAT_EARLY_TERM_IRQ_SUMMARY_V(v) ((BV_I2C_STAT_EARLY_TERM_IRQ_SUMMARY__##v << 3) & 0x8) +#define BP_I2C_STAT_MASTER_LOSS_IRQ_SUMMARY 2 +#define BM_I2C_STAT_MASTER_LOSS_IRQ_SUMMARY 0x4 +#define BV_I2C_STAT_MASTER_LOSS_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_I2C_STAT_MASTER_LOSS_IRQ_SUMMARY__REQUEST 0x1 +#define BF_I2C_STAT_MASTER_LOSS_IRQ_SUMMARY(v) (((v) << 2) & 0x4) +#define BF_I2C_STAT_MASTER_LOSS_IRQ_SUMMARY_V(v) ((BV_I2C_STAT_MASTER_LOSS_IRQ_SUMMARY__##v << 2) & 0x4) +#define BP_I2C_STAT_SLAVE_STOP_IRQ_SUMMARY 1 +#define BM_I2C_STAT_SLAVE_STOP_IRQ_SUMMARY 0x2 +#define BV_I2C_STAT_SLAVE_STOP_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_I2C_STAT_SLAVE_STOP_IRQ_SUMMARY__REQUEST 0x1 +#define BF_I2C_STAT_SLAVE_STOP_IRQ_SUMMARY(v) (((v) << 1) & 0x2) +#define BF_I2C_STAT_SLAVE_STOP_IRQ_SUMMARY_V(v) ((BV_I2C_STAT_SLAVE_STOP_IRQ_SUMMARY__##v << 1) & 0x2) +#define BP_I2C_STAT_SLAVE_IRQ_SUMMARY 0 +#define BM_I2C_STAT_SLAVE_IRQ_SUMMARY 0x1 +#define BV_I2C_STAT_SLAVE_IRQ_SUMMARY__NO_REQUEST 0x0 +#define BV_I2C_STAT_SLAVE_IRQ_SUMMARY__REQUEST 0x1 +#define BF_I2C_STAT_SLAVE_IRQ_SUMMARY(v) (((v) << 0) & 0x1) +#define BF_I2C_STAT_SLAVE_IRQ_SUMMARY_V(v) ((BV_I2C_STAT_SLAVE_IRQ_SUMMARY__##v << 0) & 0x1) + +/** + * Register: HW_I2C_DATA + * Address: 0x60 + * SCT: no +*/ +#define HW_I2C_DATA (*(volatile unsigned long *)(REGS_I2C_BASE + 0x60)) +#define BP_I2C_DATA_DATA 0 +#define BM_I2C_DATA_DATA 0xffffffff +#define BF_I2C_DATA_DATA(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_I2C_DEBUG0 + * Address: 0x70 + * SCT: yes +*/ +#define HW_I2C_DEBUG0 (*(volatile unsigned long *)(REGS_I2C_BASE + 0x70 + 0x0)) +#define HW_I2C_DEBUG0_SET (*(volatile unsigned long *)(REGS_I2C_BASE + 0x70 + 0x4)) +#define HW_I2C_DEBUG0_CLR (*(volatile unsigned long *)(REGS_I2C_BASE + 0x70 + 0x8)) +#define HW_I2C_DEBUG0_TOG (*(volatile unsigned long *)(REGS_I2C_BASE + 0x70 + 0xc)) +#define BP_I2C_DEBUG0_DMAREQ 31 +#define BM_I2C_DEBUG0_DMAREQ 0x80000000 +#define BF_I2C_DEBUG0_DMAREQ(v) (((v) << 31) & 0x80000000) +#define BP_I2C_DEBUG0_DMAENDCMD 30 +#define BM_I2C_DEBUG0_DMAENDCMD 0x40000000 +#define BF_I2C_DEBUG0_DMAENDCMD(v) (((v) << 30) & 0x40000000) +#define BP_I2C_DEBUG0_DMAKICK 29 +#define BM_I2C_DEBUG0_DMAKICK 0x20000000 +#define BF_I2C_DEBUG0_DMAKICK(v) (((v) << 29) & 0x20000000) +#define BP_I2C_DEBUG0_TBD 26 +#define BM_I2C_DEBUG0_TBD 0x1c000000 +#define BF_I2C_DEBUG0_TBD(v) (((v) << 26) & 0x1c000000) +#define BP_I2C_DEBUG0_DMA_STATE 16 +#define BM_I2C_DEBUG0_DMA_STATE 0x3ff0000 +#define BF_I2C_DEBUG0_DMA_STATE(v) (((v) << 16) & 0x3ff0000) +#define BP_I2C_DEBUG0_START_TOGGLE 15 +#define BM_I2C_DEBUG0_START_TOGGLE 0x8000 +#define BF_I2C_DEBUG0_START_TOGGLE(v) (((v) << 15) & 0x8000) +#define BP_I2C_DEBUG0_STOP_TOGGLE 14 +#define BM_I2C_DEBUG0_STOP_TOGGLE 0x4000 +#define BF_I2C_DEBUG0_STOP_TOGGLE(v) (((v) << 14) & 0x4000) +#define BP_I2C_DEBUG0_GRAB_TOGGLE 13 +#define BM_I2C_DEBUG0_GRAB_TOGGLE 0x2000 +#define BF_I2C_DEBUG0_GRAB_TOGGLE(v) (((v) << 13) & 0x2000) +#define BP_I2C_DEBUG0_CHANGE_TOGGLE 12 +#define BM_I2C_DEBUG0_CHANGE_TOGGLE 0x1000 +#define BF_I2C_DEBUG0_CHANGE_TOGGLE(v) (((v) << 12) & 0x1000) +#define BP_I2C_DEBUG0_TESTMODE 11 +#define BM_I2C_DEBUG0_TESTMODE 0x800 +#define BF_I2C_DEBUG0_TESTMODE(v) (((v) << 11) & 0x800) +#define BP_I2C_DEBUG0_SLAVE_HOLD_CLK 10 +#define BM_I2C_DEBUG0_SLAVE_HOLD_CLK 0x400 +#define BF_I2C_DEBUG0_SLAVE_HOLD_CLK(v) (((v) << 10) & 0x400) +#define BP_I2C_DEBUG0_SLAVE_STATE 0 +#define BM_I2C_DEBUG0_SLAVE_STATE 0x3ff +#define BF_I2C_DEBUG0_SLAVE_STATE(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_I2C_DEBUG1 + * Address: 0x80 + * SCT: yes +*/ +#define HW_I2C_DEBUG1 (*(volatile unsigned long *)(REGS_I2C_BASE + 0x80 + 0x0)) +#define HW_I2C_DEBUG1_SET (*(volatile unsigned long *)(REGS_I2C_BASE + 0x80 + 0x4)) +#define HW_I2C_DEBUG1_CLR (*(volatile unsigned long *)(REGS_I2C_BASE + 0x80 + 0x8)) +#define HW_I2C_DEBUG1_TOG (*(volatile unsigned long *)(REGS_I2C_BASE + 0x80 + 0xc)) +#define BP_I2C_DEBUG1_I2C_CLK_IN 31 +#define BM_I2C_DEBUG1_I2C_CLK_IN 0x80000000 +#define BF_I2C_DEBUG1_I2C_CLK_IN(v) (((v) << 31) & 0x80000000) +#define BP_I2C_DEBUG1_I2C_DATA_IN 30 +#define BM_I2C_DEBUG1_I2C_DATA_IN 0x40000000 +#define BF_I2C_DEBUG1_I2C_DATA_IN(v) (((v) << 30) & 0x40000000) +#define BP_I2C_DEBUG1_DMA_BYTE_ENABLES 24 +#define BM_I2C_DEBUG1_DMA_BYTE_ENABLES 0xf000000 +#define BF_I2C_DEBUG1_DMA_BYTE_ENABLES(v) (((v) << 24) & 0xf000000) +#define BP_I2C_DEBUG1_CLK_GEN_STATE 16 +#define BM_I2C_DEBUG1_CLK_GEN_STATE 0x7f0000 +#define BF_I2C_DEBUG1_CLK_GEN_STATE(v) (((v) << 16) & 0x7f0000) +#define BP_I2C_DEBUG1_LST_MODE 9 +#define BM_I2C_DEBUG1_LST_MODE 0x600 +#define BV_I2C_DEBUG1_LST_MODE__BCAST 0x0 +#define BV_I2C_DEBUG1_LST_MODE__MY_WRITE 0x1 +#define BV_I2C_DEBUG1_LST_MODE__MY_READ 0x2 +#define BV_I2C_DEBUG1_LST_MODE__NOT_ME 0x3 +#define BF_I2C_DEBUG1_LST_MODE(v) (((v) << 9) & 0x600) +#define BF_I2C_DEBUG1_LST_MODE_V(v) ((BV_I2C_DEBUG1_LST_MODE__##v << 9) & 0x600) +#define BP_I2C_DEBUG1_LOCAL_SLAVE_TEST 8 +#define BM_I2C_DEBUG1_LOCAL_SLAVE_TEST 0x100 +#define BF_I2C_DEBUG1_LOCAL_SLAVE_TEST(v) (((v) << 8) & 0x100) +#define BP_I2C_DEBUG1_FORCE_CLK_ON 5 +#define BM_I2C_DEBUG1_FORCE_CLK_ON 0x20 +#define BF_I2C_DEBUG1_FORCE_CLK_ON(v) (((v) << 5) & 0x20) +#define BP_I2C_DEBUG1_FORCE_CLK_IDLE 4 +#define BM_I2C_DEBUG1_FORCE_CLK_IDLE 0x10 +#define BF_I2C_DEBUG1_FORCE_CLK_IDLE(v) (((v) << 4) & 0x10) +#define BP_I2C_DEBUG1_FORCE_ARB_LOSS 3 +#define BM_I2C_DEBUG1_FORCE_ARB_LOSS 0x8 +#define BF_I2C_DEBUG1_FORCE_ARB_LOSS(v) (((v) << 3) & 0x8) +#define BP_I2C_DEBUG1_FORCE_RCV_ACK 2 +#define BM_I2C_DEBUG1_FORCE_RCV_ACK 0x4 +#define BF_I2C_DEBUG1_FORCE_RCV_ACK(v) (((v) << 2) & 0x4) +#define BP_I2C_DEBUG1_FORCE_I2C_DATA_OE 1 +#define BM_I2C_DEBUG1_FORCE_I2C_DATA_OE 0x2 +#define BF_I2C_DEBUG1_FORCE_I2C_DATA_OE(v) (((v) << 1) & 0x2) +#define BP_I2C_DEBUG1_FORCE_I2C_CLK_OE 0 +#define BM_I2C_DEBUG1_FORCE_I2C_CLK_OE 0x1 +#define BF_I2C_DEBUG1_FORCE_I2C_CLK_OE(v) (((v) << 0) & 0x1) + +#endif /* __HEADERGEN__STMP3600__I2C__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-icoll.h b/firmware/target/arm/imx233/regs/stmp3600/regs-icoll.h new file mode 100644 index 0000000000..130ab2ca17 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-icoll.h @@ -0,0 +1,348 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__ICOLL__H__ +#define __HEADERGEN__STMP3600__ICOLL__H__ + +#define REGS_ICOLL_BASE (0x80000000) + +#define REGS_ICOLL_VERSION "2.3.0" + +/** + * Register: HW_ICOLL_VECTOR + * Address: 0 + * SCT: yes +*/ +#define HW_ICOLL_VECTOR (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x0 + 0x0)) +#define HW_ICOLL_VECTOR_SET (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x0 + 0x4)) +#define HW_ICOLL_VECTOR_CLR (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x0 + 0x8)) +#define HW_ICOLL_VECTOR_TOG (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x0 + 0xc)) +#define BP_ICOLL_VECTOR_IRQVECTOR 2 +#define BM_ICOLL_VECTOR_IRQVECTOR 0xfffffffc +#define BF_ICOLL_VECTOR_IRQVECTOR(v) (((v) << 2) & 0xfffffffc) + +/** + * Register: HW_ICOLL_LEVELACK + * Address: 0x10 + * SCT: no +*/ +#define HW_ICOLL_LEVELACK (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x10)) +#define BP_ICOLL_LEVELACK_IRQLEVELACK 0 +#define BM_ICOLL_LEVELACK_IRQLEVELACK 0xf +#define BV_ICOLL_LEVELACK_IRQLEVELACK__LEVEL0 0x1 +#define BV_ICOLL_LEVELACK_IRQLEVELACK__LEVEL1 0x2 +#define BV_ICOLL_LEVELACK_IRQLEVELACK__LEVEL2 0x4 +#define BV_ICOLL_LEVELACK_IRQLEVELACK__LEVEL3 0x8 +#define BF_ICOLL_LEVELACK_IRQLEVELACK(v) (((v) << 0) & 0xf) +#define BF_ICOLL_LEVELACK_IRQLEVELACK_V(v) ((BV_ICOLL_LEVELACK_IRQLEVELACK__##v << 0) & 0xf) + +/** + * Register: HW_ICOLL_CTRL + * Address: 0x20 + * SCT: yes +*/ +#define HW_ICOLL_CTRL (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x20 + 0x0)) +#define HW_ICOLL_CTRL_SET (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x20 + 0x4)) +#define HW_ICOLL_CTRL_CLR (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x20 + 0x8)) +#define HW_ICOLL_CTRL_TOG (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x20 + 0xc)) +#define BP_ICOLL_CTRL_SFTRST 31 +#define BM_ICOLL_CTRL_SFTRST 0x80000000 +#define BV_ICOLL_CTRL_SFTRST__RUN 0x0 +#define BV_ICOLL_CTRL_SFTRST__IN_RESET 0x1 +#define BF_ICOLL_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BF_ICOLL_CTRL_SFTRST_V(v) ((BV_ICOLL_CTRL_SFTRST__##v << 31) & 0x80000000) +#define BP_ICOLL_CTRL_CLKGATE 30 +#define BM_ICOLL_CTRL_CLKGATE 0x40000000 +#define BV_ICOLL_CTRL_CLKGATE__RUN 0x0 +#define BV_ICOLL_CTRL_CLKGATE__NO_CLOCKS 0x1 +#define BF_ICOLL_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BF_ICOLL_CTRL_CLKGATE_V(v) ((BV_ICOLL_CTRL_CLKGATE__##v << 30) & 0x40000000) +#define BP_ICOLL_CTRL_ENABLE2FIQ35 27 +#define BM_ICOLL_CTRL_ENABLE2FIQ35 0x8000000 +#define BV_ICOLL_CTRL_ENABLE2FIQ35__DISABLE 0x0 +#define BV_ICOLL_CTRL_ENABLE2FIQ35__ENABLE 0x1 +#define BF_ICOLL_CTRL_ENABLE2FIQ35(v) (((v) << 27) & 0x8000000) +#define BF_ICOLL_CTRL_ENABLE2FIQ35_V(v) ((BV_ICOLL_CTRL_ENABLE2FIQ35__##v << 27) & 0x8000000) +#define BP_ICOLL_CTRL_ENABLE2FIQ34 26 +#define BM_ICOLL_CTRL_ENABLE2FIQ34 0x4000000 +#define BV_ICOLL_CTRL_ENABLE2FIQ34__DISABLE 0x0 +#define BV_ICOLL_CTRL_ENABLE2FIQ34__ENABLE 0x1 +#define BF_ICOLL_CTRL_ENABLE2FIQ34(v) (((v) << 26) & 0x4000000) +#define BF_ICOLL_CTRL_ENABLE2FIQ34_V(v) ((BV_ICOLL_CTRL_ENABLE2FIQ34__##v << 26) & 0x4000000) +#define BP_ICOLL_CTRL_ENABLE2FIQ33 25 +#define BM_ICOLL_CTRL_ENABLE2FIQ33 0x2000000 +#define BV_ICOLL_CTRL_ENABLE2FIQ33__DISABLE 0x0 +#define BV_ICOLL_CTRL_ENABLE2FIQ33__ENABLE 0x1 +#define BF_ICOLL_CTRL_ENABLE2FIQ33(v) (((v) << 25) & 0x2000000) +#define BF_ICOLL_CTRL_ENABLE2FIQ33_V(v) ((BV_ICOLL_CTRL_ENABLE2FIQ33__##v << 25) & 0x2000000) +#define BP_ICOLL_CTRL_ENABLE2FIQ32 24 +#define BM_ICOLL_CTRL_ENABLE2FIQ32 0x1000000 +#define BV_ICOLL_CTRL_ENABLE2FIQ32__DISABLE 0x0 +#define BV_ICOLL_CTRL_ENABLE2FIQ32__ENABLE 0x1 +#define BF_ICOLL_CTRL_ENABLE2FIQ32(v) (((v) << 24) & 0x1000000) +#define BF_ICOLL_CTRL_ENABLE2FIQ32_V(v) ((BV_ICOLL_CTRL_ENABLE2FIQ32__##v << 24) & 0x1000000) +#define BP_ICOLL_CTRL_BYPASS_FSM 20 +#define BM_ICOLL_CTRL_BYPASS_FSM 0x100000 +#define BV_ICOLL_CTRL_BYPASS_FSM__NORMAL 0x0 +#define BV_ICOLL_CTRL_BYPASS_FSM__BYPASS 0x1 +#define BF_ICOLL_CTRL_BYPASS_FSM(v) (((v) << 20) & 0x100000) +#define BF_ICOLL_CTRL_BYPASS_FSM_V(v) ((BV_ICOLL_CTRL_BYPASS_FSM__##v << 20) & 0x100000) +#define BP_ICOLL_CTRL_NO_NESTING 19 +#define BM_ICOLL_CTRL_NO_NESTING 0x80000 +#define BV_ICOLL_CTRL_NO_NESTING__NORMAL 0x0 +#define BV_ICOLL_CTRL_NO_NESTING__NO_NEST 0x1 +#define BF_ICOLL_CTRL_NO_NESTING(v) (((v) << 19) & 0x80000) +#define BF_ICOLL_CTRL_NO_NESTING_V(v) ((BV_ICOLL_CTRL_NO_NESTING__##v << 19) & 0x80000) +#define BP_ICOLL_CTRL_ARM_RSE_MODE 18 +#define BM_ICOLL_CTRL_ARM_RSE_MODE 0x40000 +#define BV_ICOLL_CTRL_ARM_RSE_MODE__MUST_WRITE 0x0 +#define BV_ICOLL_CTRL_ARM_RSE_MODE__READ_SIDE_EFFECT 0x1 +#define BF_ICOLL_CTRL_ARM_RSE_MODE(v) (((v) << 18) & 0x40000) +#define BF_ICOLL_CTRL_ARM_RSE_MODE_V(v) ((BV_ICOLL_CTRL_ARM_RSE_MODE__##v << 18) & 0x40000) +#define BP_ICOLL_CTRL_FIQ_FINAL_ENABLE 17 +#define BM_ICOLL_CTRL_FIQ_FINAL_ENABLE 0x20000 +#define BV_ICOLL_CTRL_FIQ_FINAL_ENABLE__DISABLE 0x0 +#define BV_ICOLL_CTRL_FIQ_FINAL_ENABLE__ENABLE 0x1 +#define BF_ICOLL_CTRL_FIQ_FINAL_ENABLE(v) (((v) << 17) & 0x20000) +#define BF_ICOLL_CTRL_FIQ_FINAL_ENABLE_V(v) ((BV_ICOLL_CTRL_FIQ_FINAL_ENABLE__##v << 17) & 0x20000) +#define BP_ICOLL_CTRL_IRQ_FINAL_ENABLE 16 +#define BM_ICOLL_CTRL_IRQ_FINAL_ENABLE 0x10000 +#define BV_ICOLL_CTRL_IRQ_FINAL_ENABLE__DISABLE 0x0 +#define BV_ICOLL_CTRL_IRQ_FINAL_ENABLE__ENABLE 0x1 +#define BF_ICOLL_CTRL_IRQ_FINAL_ENABLE(v) (((v) << 16) & 0x10000) +#define BF_ICOLL_CTRL_IRQ_FINAL_ENABLE_V(v) ((BV_ICOLL_CTRL_IRQ_FINAL_ENABLE__##v << 16) & 0x10000) + +/** + * Register: HW_ICOLL_STAT + * Address: 0x30 + * SCT: no +*/ +#define HW_ICOLL_STAT (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x30)) +#define BP_ICOLL_STAT_VECTOR_NUMBER 0 +#define BM_ICOLL_STAT_VECTOR_NUMBER 0x3f +#define BF_ICOLL_STAT_VECTOR_NUMBER(v) (((v) << 0) & 0x3f) + +/** + * Register: HW_ICOLL_VBASE + * Address: 0x160 + * SCT: yes +*/ +#define HW_ICOLL_VBASE (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x160 + 0x0)) +#define HW_ICOLL_VBASE_SET (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x160 + 0x4)) +#define HW_ICOLL_VBASE_CLR (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x160 + 0x8)) +#define HW_ICOLL_VBASE_TOG (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x160 + 0xc)) +#define BP_ICOLL_VBASE_TABLE_ADDRESS 2 +#define BM_ICOLL_VBASE_TABLE_ADDRESS 0xfffffffc +#define BF_ICOLL_VBASE_TABLE_ADDRESS(v) (((v) << 2) & 0xfffffffc) + +/** + * Register: HW_ICOLL_DEBUG + * Address: 0x170 + * SCT: no +*/ +#define HW_ICOLL_DEBUG (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x170)) +#define BP_ICOLL_DEBUG_INSERVICE 28 +#define BM_ICOLL_DEBUG_INSERVICE 0xf0000000 +#define BV_ICOLL_DEBUG_INSERVICE__LEVEL0 0x1 +#define BV_ICOLL_DEBUG_INSERVICE__LEVEL1 0x2 +#define BV_ICOLL_DEBUG_INSERVICE__LEVEL2 0x4 +#define BV_ICOLL_DEBUG_INSERVICE__LEVEL3 0x8 +#define BF_ICOLL_DEBUG_INSERVICE(v) (((v) << 28) & 0xf0000000) +#define BF_ICOLL_DEBUG_INSERVICE_V(v) ((BV_ICOLL_DEBUG_INSERVICE__##v << 28) & 0xf0000000) +#define BP_ICOLL_DEBUG_LEVEL_REQUESTS 24 +#define BM_ICOLL_DEBUG_LEVEL_REQUESTS 0xf000000 +#define BV_ICOLL_DEBUG_LEVEL_REQUESTS__LEVEL0 0x1 +#define BV_ICOLL_DEBUG_LEVEL_REQUESTS__LEVEL1 0x2 +#define BV_ICOLL_DEBUG_LEVEL_REQUESTS__LEVEL2 0x4 +#define BV_ICOLL_DEBUG_LEVEL_REQUESTS__LEVEL3 0x8 +#define BF_ICOLL_DEBUG_LEVEL_REQUESTS(v) (((v) << 24) & 0xf000000) +#define BF_ICOLL_DEBUG_LEVEL_REQUESTS_V(v) ((BV_ICOLL_DEBUG_LEVEL_REQUESTS__##v << 24) & 0xf000000) +#define BP_ICOLL_DEBUG_REQUESTS_BY_LEVEL 20 +#define BM_ICOLL_DEBUG_REQUESTS_BY_LEVEL 0xf00000 +#define BV_ICOLL_DEBUG_REQUESTS_BY_LEVEL__LEVEL0 0x1 +#define BV_ICOLL_DEBUG_REQUESTS_BY_LEVEL__LEVEL1 0x2 +#define BV_ICOLL_DEBUG_REQUESTS_BY_LEVEL__LEVEL2 0x4 +#define BV_ICOLL_DEBUG_REQUESTS_BY_LEVEL__LEVEL3 0x8 +#define BF_ICOLL_DEBUG_REQUESTS_BY_LEVEL(v) (((v) << 20) & 0xf00000) +#define BF_ICOLL_DEBUG_REQUESTS_BY_LEVEL_V(v) ((BV_ICOLL_DEBUG_REQUESTS_BY_LEVEL__##v << 20) & 0xf00000) +#define BP_ICOLL_DEBUG_FIQ 17 +#define BM_ICOLL_DEBUG_FIQ 0x20000 +#define BV_ICOLL_DEBUG_FIQ__NO_FIQ_REQUESTED 0x0 +#define BV_ICOLL_DEBUG_FIQ__FIQ_REQUESTED 0x1 +#define BF_ICOLL_DEBUG_FIQ(v) (((v) << 17) & 0x20000) +#define BF_ICOLL_DEBUG_FIQ_V(v) ((BV_ICOLL_DEBUG_FIQ__##v << 17) & 0x20000) +#define BP_ICOLL_DEBUG_IRQ 16 +#define BM_ICOLL_DEBUG_IRQ 0x10000 +#define BV_ICOLL_DEBUG_IRQ__NO_IRQ_REQUESTED 0x0 +#define BV_ICOLL_DEBUG_IRQ__IRQ_REQUESTED 0x1 +#define BF_ICOLL_DEBUG_IRQ(v) (((v) << 16) & 0x10000) +#define BF_ICOLL_DEBUG_IRQ_V(v) ((BV_ICOLL_DEBUG_IRQ__##v << 16) & 0x10000) +#define BP_ICOLL_DEBUG_VECTOR_FSM 0 +#define BM_ICOLL_DEBUG_VECTOR_FSM 0x3ff +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_IDLE 0x0 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_MULTICYCLE1 0x1 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_MULTICYCLE2 0x2 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_PENDING 0x4 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_MULTICYCLE3 0x8 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_MULTICYCLE4 0x10 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_ISR_RUNNING1 0x20 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_ISR_RUNNING2 0x40 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_ISR_RUNNING3 0x80 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_MULTICYCLE5 0x100 +#define BV_ICOLL_DEBUG_VECTOR_FSM__FSM_MULTICYCLE6 0x200 +#define BF_ICOLL_DEBUG_VECTOR_FSM(v) (((v) << 0) & 0x3ff) +#define BF_ICOLL_DEBUG_VECTOR_FSM_V(v) ((BV_ICOLL_DEBUG_VECTOR_FSM__##v << 0) & 0x3ff) + +/** + * Register: HW_ICOLL_DBGFLAG + * Address: 0x1a0 + * SCT: yes +*/ +#define HW_ICOLL_DBGFLAG (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x1a0 + 0x0)) +#define HW_ICOLL_DBGFLAG_SET (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x1a0 + 0x4)) +#define HW_ICOLL_DBGFLAG_CLR (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x1a0 + 0x8)) +#define HW_ICOLL_DBGFLAG_TOG (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x1a0 + 0xc)) +#define BP_ICOLL_DBGFLAG_FLAG 0 +#define BM_ICOLL_DBGFLAG_FLAG 0xffff +#define BF_ICOLL_DBGFLAG_FLAG(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_ICOLL_DBGREQUESTn + * Address: 0x1b0+n*0x10 + * SCT: no +*/ +#define HW_ICOLL_DBGREQUESTn(n) (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x1b0+(n)*0x10)) +#define BP_ICOLL_DBGREQUESTn_BITS 0 +#define BM_ICOLL_DBGREQUESTn_BITS 0xffffffff +#define BF_ICOLL_DBGREQUESTn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_ICOLL_RAWn + * Address: 0x40+n*0x10 + * SCT: no +*/ +#define HW_ICOLL_RAWn(n) (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x40+(n)*0x10)) +#define BP_ICOLL_RAWn_RAW_IRQS 0 +#define BM_ICOLL_RAWn_RAW_IRQS 0xffffffff +#define BF_ICOLL_RAWn_RAW_IRQS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_ICOLL_DBGREADn + * Address: 0x180+n*0x10 + * SCT: no +*/ +#define HW_ICOLL_DBGREADn(n) (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x180+(n)*0x10)) +#define BP_ICOLL_DBGREADn_VALUE 0 +#define BM_ICOLL_DBGREADn_VALUE 0xffffffff +#define BF_ICOLL_DBGREADn_VALUE(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_ICOLL_PRIORITYn + * Address: 0x60+n*0x10 + * SCT: yes +*/ +#define HW_ICOLL_PRIORITYn(n) (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x60+(n)*0x10 + 0x0)) +#define HW_ICOLL_PRIORITYn_SET(n) (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x60+(n)*0x10 + 0x4)) +#define HW_ICOLL_PRIORITYn_CLR(n) (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x60+(n)*0x10 + 0x8)) +#define HW_ICOLL_PRIORITYn_TOG(n) (*(volatile unsigned long *)(REGS_ICOLL_BASE + 0x60+(n)*0x10 + 0xc)) +#define BP_ICOLL_PRIORITYn_SOFTIRQ3 27 +#define BM_ICOLL_PRIORITYn_SOFTIRQ3 0x8000000 +#define BV_ICOLL_PRIORITYn_SOFTIRQ3__NO_INTERRUPT 0x0 +#define BV_ICOLL_PRIORITYn_SOFTIRQ3__FORCE_INTERRUPT 0x1 +#define BF_ICOLL_PRIORITYn_SOFTIRQ3(v) (((v) << 27) & 0x8000000) +#define BF_ICOLL_PRIORITYn_SOFTIRQ3_V(v) ((BV_ICOLL_PRIORITYn_SOFTIRQ3__##v << 27) & 0x8000000) +#define BP_ICOLL_PRIORITYn_ENABLE3 26 +#define BM_ICOLL_PRIORITYn_ENABLE3 0x4000000 +#define BV_ICOLL_PRIORITYn_ENABLE3__DISABLE 0x0 +#define BV_ICOLL_PRIORITYn_ENABLE3__ENABLE 0x1 +#define BF_ICOLL_PRIORITYn_ENABLE3(v) (((v) << 26) & 0x4000000) +#define BF_ICOLL_PRIORITYn_ENABLE3_V(v) ((BV_ICOLL_PRIORITYn_ENABLE3__##v << 26) & 0x4000000) +#define BP_ICOLL_PRIORITYn_PRIORITY3 24 +#define BM_ICOLL_PRIORITYn_PRIORITY3 0x3000000 +#define BV_ICOLL_PRIORITYn_PRIORITY3__LEVEL0 0x0 +#define BV_ICOLL_PRIORITYn_PRIORITY3__LEVEL1 0x1 +#define BV_ICOLL_PRIORITYn_PRIORITY3__LEVEL2 0x2 +#define BV_ICOLL_PRIORITYn_PRIORITY3__LEVEL3 0x3 +#define BF_ICOLL_PRIORITYn_PRIORITY3(v) (((v) << 24) & 0x3000000) +#define BF_ICOLL_PRIORITYn_PRIORITY3_V(v) ((BV_ICOLL_PRIORITYn_PRIORITY3__##v << 24) & 0x3000000) +#define BP_ICOLL_PRIORITYn_SOFTIRQ2 19 +#define BM_ICOLL_PRIORITYn_SOFTIRQ2 0x80000 +#define BV_ICOLL_PRIORITYn_SOFTIRQ2__NO_INTERRUPT 0x0 +#define BV_ICOLL_PRIORITYn_SOFTIRQ2__FORCE_INTERRUPT 0x1 +#define BF_ICOLL_PRIORITYn_SOFTIRQ2(v) (((v) << 19) & 0x80000) +#define BF_ICOLL_PRIORITYn_SOFTIRQ2_V(v) ((BV_ICOLL_PRIORITYn_SOFTIRQ2__##v << 19) & 0x80000) +#define BP_ICOLL_PRIORITYn_ENABLE2 18 +#define BM_ICOLL_PRIORITYn_ENABLE2 0x40000 +#define BV_ICOLL_PRIORITYn_ENABLE2__DISABLE 0x0 +#define BV_ICOLL_PRIORITYn_ENABLE2__ENABLE 0x1 +#define BF_ICOLL_PRIORITYn_ENABLE2(v) (((v) << 18) & 0x40000) +#define BF_ICOLL_PRIORITYn_ENABLE2_V(v) ((BV_ICOLL_PRIORITYn_ENABLE2__##v << 18) & 0x40000) +#define BP_ICOLL_PRIORITYn_PRIORITY2 16 +#define BM_ICOLL_PRIORITYn_PRIORITY2 0x30000 +#define BV_ICOLL_PRIORITYn_PRIORITY2__LEVEL0 0x0 +#define BV_ICOLL_PRIORITYn_PRIORITY2__LEVEL1 0x1 +#define BV_ICOLL_PRIORITYn_PRIORITY2__LEVEL2 0x2 +#define BV_ICOLL_PRIORITYn_PRIORITY2__LEVEL3 0x3 +#define BF_ICOLL_PRIORITYn_PRIORITY2(v) (((v) << 16) & 0x30000) +#define BF_ICOLL_PRIORITYn_PRIORITY2_V(v) ((BV_ICOLL_PRIORITYn_PRIORITY2__##v << 16) & 0x30000) +#define BP_ICOLL_PRIORITYn_SOFTIRQ1 11 +#define BM_ICOLL_PRIORITYn_SOFTIRQ1 0x800 +#define BV_ICOLL_PRIORITYn_SOFTIRQ1__NO_INTERRUPT 0x0 +#define BV_ICOLL_PRIORITYn_SOFTIRQ1__FORCE_INTERRUPT 0x1 +#define BF_ICOLL_PRIORITYn_SOFTIRQ1(v) (((v) << 11) & 0x800) +#define BF_ICOLL_PRIORITYn_SOFTIRQ1_V(v) ((BV_ICOLL_PRIORITYn_SOFTIRQ1__##v << 11) & 0x800) +#define BP_ICOLL_PRIORITYn_ENABLE1 10 +#define BM_ICOLL_PRIORITYn_ENABLE1 0x400 +#define BV_ICOLL_PRIORITYn_ENABLE1__DISABLE 0x0 +#define BV_ICOLL_PRIORITYn_ENABLE1__ENABLE 0x1 +#define BF_ICOLL_PRIORITYn_ENABLE1(v) (((v) << 10) & 0x400) +#define BF_ICOLL_PRIORITYn_ENABLE1_V(v) ((BV_ICOLL_PRIORITYn_ENABLE1__##v << 10) & 0x400) +#define BP_ICOLL_PRIORITYn_PRIORITY1 8 +#define BM_ICOLL_PRIORITYn_PRIORITY1 0x300 +#define BV_ICOLL_PRIORITYn_PRIORITY1__LEVEL0 0x0 +#define BV_ICOLL_PRIORITYn_PRIORITY1__LEVEL1 0x1 +#define BV_ICOLL_PRIORITYn_PRIORITY1__LEVEL2 0x2 +#define BV_ICOLL_PRIORITYn_PRIORITY1__LEVEL3 0x3 +#define BF_ICOLL_PRIORITYn_PRIORITY1(v) (((v) << 8) & 0x300) +#define BF_ICOLL_PRIORITYn_PRIORITY1_V(v) ((BV_ICOLL_PRIORITYn_PRIORITY1__##v << 8) & 0x300) +#define BP_ICOLL_PRIORITYn_SOFTIRQ0 3 +#define BM_ICOLL_PRIORITYn_SOFTIRQ0 0x8 +#define BV_ICOLL_PRIORITYn_SOFTIRQ0__NO_INTERRUPT 0x0 +#define BV_ICOLL_PRIORITYn_SOFTIRQ0__FORCE_INTERRUPT 0x1 +#define BF_ICOLL_PRIORITYn_SOFTIRQ0(v) (((v) << 3) & 0x8) +#define BF_ICOLL_PRIORITYn_SOFTIRQ0_V(v) ((BV_ICOLL_PRIORITYn_SOFTIRQ0__##v << 3) & 0x8) +#define BP_ICOLL_PRIORITYn_ENABLE0 2 +#define BM_ICOLL_PRIORITYn_ENABLE0 0x4 +#define BV_ICOLL_PRIORITYn_ENABLE0__DISABLE 0x0 +#define BV_ICOLL_PRIORITYn_ENABLE0__ENABLE 0x1 +#define BF_ICOLL_PRIORITYn_ENABLE0(v) (((v) << 2) & 0x4) +#define BF_ICOLL_PRIORITYn_ENABLE0_V(v) ((BV_ICOLL_PRIORITYn_ENABLE0__##v << 2) & 0x4) +#define BP_ICOLL_PRIORITYn_PRIORITY0 0 +#define BM_ICOLL_PRIORITYn_PRIORITY0 0x3 +#define BV_ICOLL_PRIORITYn_PRIORITY0__LEVEL0 0x0 +#define BV_ICOLL_PRIORITYn_PRIORITY0__LEVEL1 0x1 +#define BV_ICOLL_PRIORITYn_PRIORITY0__LEVEL2 0x2 +#define BV_ICOLL_PRIORITYn_PRIORITY0__LEVEL3 0x3 +#define BF_ICOLL_PRIORITYn_PRIORITY0(v) (((v) << 0) & 0x3) +#define BF_ICOLL_PRIORITYn_PRIORITY0_V(v) ((BV_ICOLL_PRIORITYn_PRIORITY0__##v << 0) & 0x3) + +#endif /* __HEADERGEN__STMP3600__ICOLL__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-ir.h b/firmware/target/arm/imx233/regs/stmp3600/regs-ir.h new file mode 100644 index 0000000000..56eeabaaa3 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-ir.h @@ -0,0 +1,477 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__IR__H__ +#define __HEADERGEN__STMP3600__IR__H__ + +#define REGS_IR_BASE (0x80078000) + +#define REGS_IR_VERSION "2.3.0" + +/** + * Register: HW_IR_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_IR_CTRL (*(volatile unsigned long *)(REGS_IR_BASE + 0x0 + 0x0)) +#define HW_IR_CTRL_SET (*(volatile unsigned long *)(REGS_IR_BASE + 0x0 + 0x4)) +#define HW_IR_CTRL_CLR (*(volatile unsigned long *)(REGS_IR_BASE + 0x0 + 0x8)) +#define HW_IR_CTRL_TOG (*(volatile unsigned long *)(REGS_IR_BASE + 0x0 + 0xc)) +#define BP_IR_CTRL_SFTRST 31 +#define BM_IR_CTRL_SFTRST 0x80000000 +#define BV_IR_CTRL_SFTRST__RUN 0x0 +#define BV_IR_CTRL_SFTRST__RESET 0x1 +#define BF_IR_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BF_IR_CTRL_SFTRST_V(v) ((BV_IR_CTRL_SFTRST__##v << 31) & 0x80000000) +#define BP_IR_CTRL_CLKGATE 30 +#define BM_IR_CTRL_CLKGATE 0x40000000 +#define BF_IR_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_IR_CTRL_MTA 24 +#define BM_IR_CTRL_MTA 0x7000000 +#define BV_IR_CTRL_MTA__MTA_10MS 0x0 +#define BV_IR_CTRL_MTA__MTA_5MS 0x1 +#define BV_IR_CTRL_MTA__MTA_1MS 0x2 +#define BV_IR_CTRL_MTA__MTA_500US 0x3 +#define BV_IR_CTRL_MTA__MTA_100US 0x4 +#define BV_IR_CTRL_MTA__MTA_50US 0x5 +#define BV_IR_CTRL_MTA__MTA_10US 0x6 +#define BV_IR_CTRL_MTA__MTA_0 0x7 +#define BF_IR_CTRL_MTA(v) (((v) << 24) & 0x7000000) +#define BF_IR_CTRL_MTA_V(v) ((BV_IR_CTRL_MTA__##v << 24) & 0x7000000) +#define BP_IR_CTRL_MODE 22 +#define BM_IR_CTRL_MODE 0xc00000 +#define BV_IR_CTRL_MODE__SIR 0x0 +#define BV_IR_CTRL_MODE__MIR 0x1 +#define BV_IR_CTRL_MODE__FIR 0x2 +#define BV_IR_CTRL_MODE__VFIR 0x3 +#define BF_IR_CTRL_MODE(v) (((v) << 22) & 0xc00000) +#define BF_IR_CTRL_MODE_V(v) ((BV_IR_CTRL_MODE__##v << 22) & 0xc00000) +#define BP_IR_CTRL_SPEED 19 +#define BM_IR_CTRL_SPEED 0x380000 +#define BV_IR_CTRL_SPEED__SPD000 0x0 +#define BV_IR_CTRL_SPEED__SPD001 0x1 +#define BV_IR_CTRL_SPEED__SPD010 0x2 +#define BV_IR_CTRL_SPEED__SPD011 0x3 +#define BV_IR_CTRL_SPEED__SPD100 0x4 +#define BV_IR_CTRL_SPEED__SPD101 0x5 +#define BF_IR_CTRL_SPEED(v) (((v) << 19) & 0x380000) +#define BF_IR_CTRL_SPEED_V(v) ((BV_IR_CTRL_SPEED__##v << 19) & 0x380000) +#define BP_IR_CTRL_TC_TIME_DIV 8 +#define BM_IR_CTRL_TC_TIME_DIV 0x3f00 +#define BF_IR_CTRL_TC_TIME_DIV(v) (((v) << 8) & 0x3f00) +#define BP_IR_CTRL_TC_TYPE 7 +#define BM_IR_CTRL_TC_TYPE 0x80 +#define BF_IR_CTRL_TC_TYPE(v) (((v) << 7) & 0x80) +#define BP_IR_CTRL_SIR_GAP 4 +#define BM_IR_CTRL_SIR_GAP 0x70 +#define BV_IR_CTRL_SIR_GAP__GAP_10K 0x0 +#define BV_IR_CTRL_SIR_GAP__GAP_5K 0x1 +#define BV_IR_CTRL_SIR_GAP__GAP_1K 0x2 +#define BV_IR_CTRL_SIR_GAP__GAP_500 0x3 +#define BV_IR_CTRL_SIR_GAP__GAP_100 0x4 +#define BV_IR_CTRL_SIR_GAP__GAP_50 0x5 +#define BV_IR_CTRL_SIR_GAP__GAP_10 0x6 +#define BV_IR_CTRL_SIR_GAP__GAP_0 0x7 +#define BF_IR_CTRL_SIR_GAP(v) (((v) << 4) & 0x70) +#define BF_IR_CTRL_SIR_GAP_V(v) ((BV_IR_CTRL_SIR_GAP__##v << 4) & 0x70) +#define BP_IR_CTRL_SIPEN 3 +#define BM_IR_CTRL_SIPEN 0x8 +#define BF_IR_CTRL_SIPEN(v) (((v) << 3) & 0x8) +#define BP_IR_CTRL_TCEN 2 +#define BM_IR_CTRL_TCEN 0x4 +#define BF_IR_CTRL_TCEN(v) (((v) << 2) & 0x4) +#define BP_IR_CTRL_TXEN 1 +#define BM_IR_CTRL_TXEN 0x2 +#define BF_IR_CTRL_TXEN(v) (((v) << 1) & 0x2) +#define BP_IR_CTRL_RXEN 0 +#define BM_IR_CTRL_RXEN 0x1 +#define BF_IR_CTRL_RXEN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_IR_TXDMA + * Address: 0x10 + * SCT: yes +*/ +#define HW_IR_TXDMA (*(volatile unsigned long *)(REGS_IR_BASE + 0x10 + 0x0)) +#define HW_IR_TXDMA_SET (*(volatile unsigned long *)(REGS_IR_BASE + 0x10 + 0x4)) +#define HW_IR_TXDMA_CLR (*(volatile unsigned long *)(REGS_IR_BASE + 0x10 + 0x8)) +#define HW_IR_TXDMA_TOG (*(volatile unsigned long *)(REGS_IR_BASE + 0x10 + 0xc)) +#define BP_IR_TXDMA_RUN 31 +#define BM_IR_TXDMA_RUN 0x80000000 +#define BF_IR_TXDMA_RUN(v) (((v) << 31) & 0x80000000) +#define BP_IR_TXDMA_EMPTY 29 +#define BM_IR_TXDMA_EMPTY 0x20000000 +#define BF_IR_TXDMA_EMPTY(v) (((v) << 29) & 0x20000000) +#define BP_IR_TXDMA_INT 28 +#define BM_IR_TXDMA_INT 0x10000000 +#define BF_IR_TXDMA_INT(v) (((v) << 28) & 0x10000000) +#define BP_IR_TXDMA_CHANGE 27 +#define BM_IR_TXDMA_CHANGE 0x8000000 +#define BF_IR_TXDMA_CHANGE(v) (((v) << 27) & 0x8000000) +#define BP_IR_TXDMA_NEW_MTA 24 +#define BM_IR_TXDMA_NEW_MTA 0x7000000 +#define BF_IR_TXDMA_NEW_MTA(v) (((v) << 24) & 0x7000000) +#define BP_IR_TXDMA_NEW_MODE 22 +#define BM_IR_TXDMA_NEW_MODE 0xc00000 +#define BF_IR_TXDMA_NEW_MODE(v) (((v) << 22) & 0xc00000) +#define BP_IR_TXDMA_NEW_SPEED 19 +#define BM_IR_TXDMA_NEW_SPEED 0x380000 +#define BF_IR_TXDMA_NEW_SPEED(v) (((v) << 19) & 0x380000) +#define BP_IR_TXDMA_BOF_TYPE 18 +#define BM_IR_TXDMA_BOF_TYPE 0x40000 +#define BF_IR_TXDMA_BOF_TYPE(v) (((v) << 18) & 0x40000) +#define BP_IR_TXDMA_XBOFS 12 +#define BM_IR_TXDMA_XBOFS 0x3f000 +#define BF_IR_TXDMA_XBOFS(v) (((v) << 12) & 0x3f000) +#define BP_IR_TXDMA_XFER_COUNT 0 +#define BM_IR_TXDMA_XFER_COUNT 0xfff +#define BF_IR_TXDMA_XFER_COUNT(v) (((v) << 0) & 0xfff) + +/** + * Register: HW_IR_RXDMA + * Address: 0x20 + * SCT: yes +*/ +#define HW_IR_RXDMA (*(volatile unsigned long *)(REGS_IR_BASE + 0x20 + 0x0)) +#define HW_IR_RXDMA_SET (*(volatile unsigned long *)(REGS_IR_BASE + 0x20 + 0x4)) +#define HW_IR_RXDMA_CLR (*(volatile unsigned long *)(REGS_IR_BASE + 0x20 + 0x8)) +#define HW_IR_RXDMA_TOG (*(volatile unsigned long *)(REGS_IR_BASE + 0x20 + 0xc)) +#define BP_IR_RXDMA_RUN 31 +#define BM_IR_RXDMA_RUN 0x80000000 +#define BF_IR_RXDMA_RUN(v) (((v) << 31) & 0x80000000) +#define BP_IR_RXDMA_XFER_COUNT 0 +#define BM_IR_RXDMA_XFER_COUNT 0x3ff +#define BF_IR_RXDMA_XFER_COUNT(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_IR_DBGCTRL + * Address: 0x30 + * SCT: yes +*/ +#define HW_IR_DBGCTRL (*(volatile unsigned long *)(REGS_IR_BASE + 0x30 + 0x0)) +#define HW_IR_DBGCTRL_SET (*(volatile unsigned long *)(REGS_IR_BASE + 0x30 + 0x4)) +#define HW_IR_DBGCTRL_CLR (*(volatile unsigned long *)(REGS_IR_BASE + 0x30 + 0x8)) +#define HW_IR_DBGCTRL_TOG (*(volatile unsigned long *)(REGS_IR_BASE + 0x30 + 0xc)) +#define BP_IR_DBGCTRL_VFIRSWZ 12 +#define BM_IR_DBGCTRL_VFIRSWZ 0x1000 +#define BV_IR_DBGCTRL_VFIRSWZ__NORMAL 0x0 +#define BV_IR_DBGCTRL_VFIRSWZ__SWAP 0x1 +#define BF_IR_DBGCTRL_VFIRSWZ(v) (((v) << 12) & 0x1000) +#define BF_IR_DBGCTRL_VFIRSWZ_V(v) ((BV_IR_DBGCTRL_VFIRSWZ__##v << 12) & 0x1000) +#define BP_IR_DBGCTRL_RXFRMOFF 11 +#define BM_IR_DBGCTRL_RXFRMOFF 0x800 +#define BF_IR_DBGCTRL_RXFRMOFF(v) (((v) << 11) & 0x800) +#define BP_IR_DBGCTRL_RXCRCOFF 10 +#define BM_IR_DBGCTRL_RXCRCOFF 0x400 +#define BF_IR_DBGCTRL_RXCRCOFF(v) (((v) << 10) & 0x400) +#define BP_IR_DBGCTRL_RXINVERT 9 +#define BM_IR_DBGCTRL_RXINVERT 0x200 +#define BF_IR_DBGCTRL_RXINVERT(v) (((v) << 9) & 0x200) +#define BP_IR_DBGCTRL_TXFRMOFF 8 +#define BM_IR_DBGCTRL_TXFRMOFF 0x100 +#define BF_IR_DBGCTRL_TXFRMOFF(v) (((v) << 8) & 0x100) +#define BP_IR_DBGCTRL_TXCRCOFF 7 +#define BM_IR_DBGCTRL_TXCRCOFF 0x80 +#define BF_IR_DBGCTRL_TXCRCOFF(v) (((v) << 7) & 0x80) +#define BP_IR_DBGCTRL_TXINVERT 6 +#define BM_IR_DBGCTRL_TXINVERT 0x40 +#define BF_IR_DBGCTRL_TXINVERT(v) (((v) << 6) & 0x40) +#define BP_IR_DBGCTRL_INTLOOPBACK 5 +#define BM_IR_DBGCTRL_INTLOOPBACK 0x20 +#define BF_IR_DBGCTRL_INTLOOPBACK(v) (((v) << 5) & 0x20) +#define BP_IR_DBGCTRL_DUPLEX 4 +#define BM_IR_DBGCTRL_DUPLEX 0x10 +#define BF_IR_DBGCTRL_DUPLEX(v) (((v) << 4) & 0x10) +#define BP_IR_DBGCTRL_MIO_RX 3 +#define BM_IR_DBGCTRL_MIO_RX 0x8 +#define BF_IR_DBGCTRL_MIO_RX(v) (((v) << 3) & 0x8) +#define BP_IR_DBGCTRL_MIO_TX 2 +#define BM_IR_DBGCTRL_MIO_TX 0x4 +#define BF_IR_DBGCTRL_MIO_TX(v) (((v) << 2) & 0x4) +#define BP_IR_DBGCTRL_MIO_SCLK 1 +#define BM_IR_DBGCTRL_MIO_SCLK 0x2 +#define BF_IR_DBGCTRL_MIO_SCLK(v) (((v) << 1) & 0x2) +#define BP_IR_DBGCTRL_MIO_EN 0 +#define BM_IR_DBGCTRL_MIO_EN 0x1 +#define BF_IR_DBGCTRL_MIO_EN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_IR_INTR + * Address: 0x40 + * SCT: yes +*/ +#define HW_IR_INTR (*(volatile unsigned long *)(REGS_IR_BASE + 0x40 + 0x0)) +#define HW_IR_INTR_SET (*(volatile unsigned long *)(REGS_IR_BASE + 0x40 + 0x4)) +#define HW_IR_INTR_CLR (*(volatile unsigned long *)(REGS_IR_BASE + 0x40 + 0x8)) +#define HW_IR_INTR_TOG (*(volatile unsigned long *)(REGS_IR_BASE + 0x40 + 0xc)) +#define BP_IR_INTR_RXABORT_IRQ_EN 22 +#define BM_IR_INTR_RXABORT_IRQ_EN 0x400000 +#define BV_IR_INTR_RXABORT_IRQ_EN__DISABLED 0x0 +#define BV_IR_INTR_RXABORT_IRQ_EN__ENABLED 0x1 +#define BF_IR_INTR_RXABORT_IRQ_EN(v) (((v) << 22) & 0x400000) +#define BF_IR_INTR_RXABORT_IRQ_EN_V(v) ((BV_IR_INTR_RXABORT_IRQ_EN__##v << 22) & 0x400000) +#define BP_IR_INTR_SPEED_IRQ_EN 21 +#define BM_IR_INTR_SPEED_IRQ_EN 0x200000 +#define BV_IR_INTR_SPEED_IRQ_EN__DISABLED 0x0 +#define BV_IR_INTR_SPEED_IRQ_EN__ENABLED 0x1 +#define BF_IR_INTR_SPEED_IRQ_EN(v) (((v) << 21) & 0x200000) +#define BF_IR_INTR_SPEED_IRQ_EN_V(v) ((BV_IR_INTR_SPEED_IRQ_EN__##v << 21) & 0x200000) +#define BP_IR_INTR_RXOF_IRQ_EN 20 +#define BM_IR_INTR_RXOF_IRQ_EN 0x100000 +#define BV_IR_INTR_RXOF_IRQ_EN__DISABLED 0x0 +#define BV_IR_INTR_RXOF_IRQ_EN__ENABLED 0x1 +#define BF_IR_INTR_RXOF_IRQ_EN(v) (((v) << 20) & 0x100000) +#define BF_IR_INTR_RXOF_IRQ_EN_V(v) ((BV_IR_INTR_RXOF_IRQ_EN__##v << 20) & 0x100000) +#define BP_IR_INTR_TXUF_IRQ_EN 19 +#define BM_IR_INTR_TXUF_IRQ_EN 0x80000 +#define BV_IR_INTR_TXUF_IRQ_EN__DISABLED 0x0 +#define BV_IR_INTR_TXUF_IRQ_EN__ENABLED 0x1 +#define BF_IR_INTR_TXUF_IRQ_EN(v) (((v) << 19) & 0x80000) +#define BF_IR_INTR_TXUF_IRQ_EN_V(v) ((BV_IR_INTR_TXUF_IRQ_EN__##v << 19) & 0x80000) +#define BP_IR_INTR_TC_IRQ_EN 18 +#define BM_IR_INTR_TC_IRQ_EN 0x40000 +#define BV_IR_INTR_TC_IRQ_EN__DISABLED 0x0 +#define BV_IR_INTR_TC_IRQ_EN__ENABLED 0x1 +#define BF_IR_INTR_TC_IRQ_EN(v) (((v) << 18) & 0x40000) +#define BF_IR_INTR_TC_IRQ_EN_V(v) ((BV_IR_INTR_TC_IRQ_EN__##v << 18) & 0x40000) +#define BP_IR_INTR_RX_IRQ_EN 17 +#define BM_IR_INTR_RX_IRQ_EN 0x20000 +#define BV_IR_INTR_RX_IRQ_EN__DISABLED 0x0 +#define BV_IR_INTR_RX_IRQ_EN__ENABLED 0x1 +#define BF_IR_INTR_RX_IRQ_EN(v) (((v) << 17) & 0x20000) +#define BF_IR_INTR_RX_IRQ_EN_V(v) ((BV_IR_INTR_RX_IRQ_EN__##v << 17) & 0x20000) +#define BP_IR_INTR_TX_IRQ_EN 16 +#define BM_IR_INTR_TX_IRQ_EN 0x10000 +#define BV_IR_INTR_TX_IRQ_EN__DISABLED 0x0 +#define BV_IR_INTR_TX_IRQ_EN__ENABLED 0x1 +#define BF_IR_INTR_TX_IRQ_EN(v) (((v) << 16) & 0x10000) +#define BF_IR_INTR_TX_IRQ_EN_V(v) ((BV_IR_INTR_TX_IRQ_EN__##v << 16) & 0x10000) +#define BP_IR_INTR_RXABORT_IRQ 6 +#define BM_IR_INTR_RXABORT_IRQ 0x40 +#define BV_IR_INTR_RXABORT_IRQ__NO_REQUEST 0x0 +#define BV_IR_INTR_RXABORT_IRQ__REQUEST 0x1 +#define BF_IR_INTR_RXABORT_IRQ(v) (((v) << 6) & 0x40) +#define BF_IR_INTR_RXABORT_IRQ_V(v) ((BV_IR_INTR_RXABORT_IRQ__##v << 6) & 0x40) +#define BP_IR_INTR_SPEED_IRQ 5 +#define BM_IR_INTR_SPEED_IRQ 0x20 +#define BV_IR_INTR_SPEED_IRQ__NO_REQUEST 0x0 +#define BV_IR_INTR_SPEED_IRQ__REQUEST 0x1 +#define BF_IR_INTR_SPEED_IRQ(v) (((v) << 5) & 0x20) +#define BF_IR_INTR_SPEED_IRQ_V(v) ((BV_IR_INTR_SPEED_IRQ__##v << 5) & 0x20) +#define BP_IR_INTR_RXOF_IRQ 4 +#define BM_IR_INTR_RXOF_IRQ 0x10 +#define BV_IR_INTR_RXOF_IRQ__NO_REQUEST 0x0 +#define BV_IR_INTR_RXOF_IRQ__REQUEST 0x1 +#define BF_IR_INTR_RXOF_IRQ(v) (((v) << 4) & 0x10) +#define BF_IR_INTR_RXOF_IRQ_V(v) ((BV_IR_INTR_RXOF_IRQ__##v << 4) & 0x10) +#define BP_IR_INTR_TXUF_IRQ 3 +#define BM_IR_INTR_TXUF_IRQ 0x8 +#define BV_IR_INTR_TXUF_IRQ__NO_REQUEST 0x0 +#define BV_IR_INTR_TXUF_IRQ__REQUEST 0x1 +#define BF_IR_INTR_TXUF_IRQ(v) (((v) << 3) & 0x8) +#define BF_IR_INTR_TXUF_IRQ_V(v) ((BV_IR_INTR_TXUF_IRQ__##v << 3) & 0x8) +#define BP_IR_INTR_TC_IRQ 2 +#define BM_IR_INTR_TC_IRQ 0x4 +#define BV_IR_INTR_TC_IRQ__NO_REQUEST 0x0 +#define BV_IR_INTR_TC_IRQ__REQUEST 0x1 +#define BF_IR_INTR_TC_IRQ(v) (((v) << 2) & 0x4) +#define BF_IR_INTR_TC_IRQ_V(v) ((BV_IR_INTR_TC_IRQ__##v << 2) & 0x4) +#define BP_IR_INTR_RX_IRQ 1 +#define BM_IR_INTR_RX_IRQ 0x2 +#define BV_IR_INTR_RX_IRQ__NO_REQUEST 0x0 +#define BV_IR_INTR_RX_IRQ__REQUEST 0x1 +#define BF_IR_INTR_RX_IRQ(v) (((v) << 1) & 0x2) +#define BF_IR_INTR_RX_IRQ_V(v) ((BV_IR_INTR_RX_IRQ__##v << 1) & 0x2) +#define BP_IR_INTR_TX_IRQ 0 +#define BM_IR_INTR_TX_IRQ 0x1 +#define BV_IR_INTR_TX_IRQ__NO_REQUEST 0x0 +#define BV_IR_INTR_TX_IRQ__REQUEST 0x1 +#define BF_IR_INTR_TX_IRQ(v) (((v) << 0) & 0x1) +#define BF_IR_INTR_TX_IRQ_V(v) ((BV_IR_INTR_TX_IRQ__##v << 0) & 0x1) + +/** + * Register: HW_IR_DATA + * Address: 0x50 + * SCT: no +*/ +#define HW_IR_DATA (*(volatile unsigned long *)(REGS_IR_BASE + 0x50)) +#define BP_IR_DATA_DATA 0 +#define BM_IR_DATA_DATA 0xffffffff +#define BF_IR_DATA_DATA(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_IR_STAT + * Address: 0x60 + * SCT: no +*/ +#define HW_IR_STAT (*(volatile unsigned long *)(REGS_IR_BASE + 0x60)) +#define BP_IR_STAT_PRESENT 31 +#define BM_IR_STAT_PRESENT 0x80000000 +#define BV_IR_STAT_PRESENT__UNAVAILABLE 0x0 +#define BV_IR_STAT_PRESENT__AVAILABLE 0x1 +#define BF_IR_STAT_PRESENT(v) (((v) << 31) & 0x80000000) +#define BF_IR_STAT_PRESENT_V(v) ((BV_IR_STAT_PRESENT__##v << 31) & 0x80000000) +#define BP_IR_STAT_MODE_ALLOWED 29 +#define BM_IR_STAT_MODE_ALLOWED 0x60000000 +#define BV_IR_STAT_MODE_ALLOWED__VFIR 0x0 +#define BV_IR_STAT_MODE_ALLOWED__FIR 0x1 +#define BV_IR_STAT_MODE_ALLOWED__MIR 0x2 +#define BV_IR_STAT_MODE_ALLOWED__SIR 0x3 +#define BF_IR_STAT_MODE_ALLOWED(v) (((v) << 29) & 0x60000000) +#define BF_IR_STAT_MODE_ALLOWED_V(v) ((BV_IR_STAT_MODE_ALLOWED__##v << 29) & 0x60000000) +#define BP_IR_STAT_ANY_IRQ 28 +#define BM_IR_STAT_ANY_IRQ 0x10000000 +#define BV_IR_STAT_ANY_IRQ__NO_REQUEST 0x0 +#define BV_IR_STAT_ANY_IRQ__REQUEST 0x1 +#define BF_IR_STAT_ANY_IRQ(v) (((v) << 28) & 0x10000000) +#define BF_IR_STAT_ANY_IRQ_V(v) ((BV_IR_STAT_ANY_IRQ__##v << 28) & 0x10000000) +#define BP_IR_STAT_RXABORT_SUMMARY 22 +#define BM_IR_STAT_RXABORT_SUMMARY 0x400000 +#define BV_IR_STAT_RXABORT_SUMMARY__NO_REQUEST 0x0 +#define BV_IR_STAT_RXABORT_SUMMARY__REQUEST 0x1 +#define BF_IR_STAT_RXABORT_SUMMARY(v) (((v) << 22) & 0x400000) +#define BF_IR_STAT_RXABORT_SUMMARY_V(v) ((BV_IR_STAT_RXABORT_SUMMARY__##v << 22) & 0x400000) +#define BP_IR_STAT_SPEED_SUMMARY 21 +#define BM_IR_STAT_SPEED_SUMMARY 0x200000 +#define BV_IR_STAT_SPEED_SUMMARY__NO_REQUEST 0x0 +#define BV_IR_STAT_SPEED_SUMMARY__REQUEST 0x1 +#define BF_IR_STAT_SPEED_SUMMARY(v) (((v) << 21) & 0x200000) +#define BF_IR_STAT_SPEED_SUMMARY_V(v) ((BV_IR_STAT_SPEED_SUMMARY__##v << 21) & 0x200000) +#define BP_IR_STAT_RXOF_SUMMARY 20 +#define BM_IR_STAT_RXOF_SUMMARY 0x100000 +#define BV_IR_STAT_RXOF_SUMMARY__NO_REQUEST 0x0 +#define BV_IR_STAT_RXOF_SUMMARY__REQUEST 0x1 +#define BF_IR_STAT_RXOF_SUMMARY(v) (((v) << 20) & 0x100000) +#define BF_IR_STAT_RXOF_SUMMARY_V(v) ((BV_IR_STAT_RXOF_SUMMARY__##v << 20) & 0x100000) +#define BP_IR_STAT_TXUF_SUMMARY 19 +#define BM_IR_STAT_TXUF_SUMMARY 0x80000 +#define BV_IR_STAT_TXUF_SUMMARY__NO_REQUEST 0x0 +#define BV_IR_STAT_TXUF_SUMMARY__REQUEST 0x1 +#define BF_IR_STAT_TXUF_SUMMARY(v) (((v) << 19) & 0x80000) +#define BF_IR_STAT_TXUF_SUMMARY_V(v) ((BV_IR_STAT_TXUF_SUMMARY__##v << 19) & 0x80000) +#define BP_IR_STAT_TC_SUMMARY 18 +#define BM_IR_STAT_TC_SUMMARY 0x40000 +#define BV_IR_STAT_TC_SUMMARY__NO_REQUEST 0x0 +#define BV_IR_STAT_TC_SUMMARY__REQUEST 0x1 +#define BF_IR_STAT_TC_SUMMARY(v) (((v) << 18) & 0x40000) +#define BF_IR_STAT_TC_SUMMARY_V(v) ((BV_IR_STAT_TC_SUMMARY__##v << 18) & 0x40000) +#define BP_IR_STAT_RX_SUMMARY 17 +#define BM_IR_STAT_RX_SUMMARY 0x20000 +#define BV_IR_STAT_RX_SUMMARY__NO_REQUEST 0x0 +#define BV_IR_STAT_RX_SUMMARY__REQUEST 0x1 +#define BF_IR_STAT_RX_SUMMARY(v) (((v) << 17) & 0x20000) +#define BF_IR_STAT_RX_SUMMARY_V(v) ((BV_IR_STAT_RX_SUMMARY__##v << 17) & 0x20000) +#define BP_IR_STAT_TX_SUMMARY 16 +#define BM_IR_STAT_TX_SUMMARY 0x10000 +#define BV_IR_STAT_TX_SUMMARY__NO_REQUEST 0x0 +#define BV_IR_STAT_TX_SUMMARY__REQUEST 0x1 +#define BF_IR_STAT_TX_SUMMARY(v) (((v) << 16) & 0x10000) +#define BF_IR_STAT_TX_SUMMARY_V(v) ((BV_IR_STAT_TX_SUMMARY__##v << 16) & 0x10000) +#define BP_IR_STAT_MEDIA_BUSY 2 +#define BM_IR_STAT_MEDIA_BUSY 0x4 +#define BF_IR_STAT_MEDIA_BUSY(v) (((v) << 2) & 0x4) +#define BP_IR_STAT_RX_ACTIVE 1 +#define BM_IR_STAT_RX_ACTIVE 0x2 +#define BF_IR_STAT_RX_ACTIVE(v) (((v) << 1) & 0x2) +#define BP_IR_STAT_TX_ACTIVE 0 +#define BM_IR_STAT_TX_ACTIVE 0x1 +#define BF_IR_STAT_TX_ACTIVE(v) (((v) << 0) & 0x1) + +/** + * Register: HW_IR_TCCTRL + * Address: 0x70 + * SCT: yes +*/ +#define HW_IR_TCCTRL (*(volatile unsigned long *)(REGS_IR_BASE + 0x70 + 0x0)) +#define HW_IR_TCCTRL_SET (*(volatile unsigned long *)(REGS_IR_BASE + 0x70 + 0x4)) +#define HW_IR_TCCTRL_CLR (*(volatile unsigned long *)(REGS_IR_BASE + 0x70 + 0x8)) +#define HW_IR_TCCTRL_TOG (*(volatile unsigned long *)(REGS_IR_BASE + 0x70 + 0xc)) +#define BP_IR_TCCTRL_INIT 31 +#define BM_IR_TCCTRL_INIT 0x80000000 +#define BF_IR_TCCTRL_INIT(v) (((v) << 31) & 0x80000000) +#define BP_IR_TCCTRL_GO 30 +#define BM_IR_TCCTRL_GO 0x40000000 +#define BF_IR_TCCTRL_GO(v) (((v) << 30) & 0x40000000) +#define BP_IR_TCCTRL_BUSY 29 +#define BM_IR_TCCTRL_BUSY 0x20000000 +#define BF_IR_TCCTRL_BUSY(v) (((v) << 29) & 0x20000000) +#define BP_IR_TCCTRL_TEMIC 24 +#define BM_IR_TCCTRL_TEMIC 0x1000000 +#define BV_IR_TCCTRL_TEMIC__LOW 0x0 +#define BV_IR_TCCTRL_TEMIC__HIGH 0x1 +#define BF_IR_TCCTRL_TEMIC(v) (((v) << 24) & 0x1000000) +#define BF_IR_TCCTRL_TEMIC_V(v) ((BV_IR_TCCTRL_TEMIC__##v << 24) & 0x1000000) +#define BP_IR_TCCTRL_EXT_DATA 16 +#define BM_IR_TCCTRL_EXT_DATA 0xff0000 +#define BF_IR_TCCTRL_EXT_DATA(v) (((v) << 16) & 0xff0000) +#define BP_IR_TCCTRL_DATA 8 +#define BM_IR_TCCTRL_DATA 0xff00 +#define BF_IR_TCCTRL_DATA(v) (((v) << 8) & 0xff00) +#define BP_IR_TCCTRL_ADDR 5 +#define BM_IR_TCCTRL_ADDR 0xe0 +#define BF_IR_TCCTRL_ADDR(v) (((v) << 5) & 0xe0) +#define BP_IR_TCCTRL_INDX 1 +#define BM_IR_TCCTRL_INDX 0x1e +#define BF_IR_TCCTRL_INDX(v) (((v) << 1) & 0x1e) +#define BP_IR_TCCTRL_C 0 +#define BM_IR_TCCTRL_C 0x1 +#define BF_IR_TCCTRL_C(v) (((v) << 0) & 0x1) + +/** + * Register: HW_IR_SI_READ + * Address: 0x80 + * SCT: no +*/ +#define HW_IR_SI_READ (*(volatile unsigned long *)(REGS_IR_BASE + 0x80)) +#define BP_IR_SI_READ_ABORT 8 +#define BM_IR_SI_READ_ABORT 0x100 +#define BF_IR_SI_READ_ABORT(v) (((v) << 8) & 0x100) +#define BP_IR_SI_READ_DATA 0 +#define BM_IR_SI_READ_DATA 0xff +#define BF_IR_SI_READ_DATA(v) (((v) << 0) & 0xff) + +/** + * Register: HW_IR_DEBUG + * Address: 0x90 + * SCT: no +*/ +#define HW_IR_DEBUG (*(volatile unsigned long *)(REGS_IR_BASE + 0x90)) +#define BP_IR_DEBUG_TXDMAKICK 5 +#define BM_IR_DEBUG_TXDMAKICK 0x20 +#define BF_IR_DEBUG_TXDMAKICK(v) (((v) << 5) & 0x20) +#define BP_IR_DEBUG_RXDMAKICK 4 +#define BM_IR_DEBUG_RXDMAKICK 0x10 +#define BF_IR_DEBUG_RXDMAKICK(v) (((v) << 4) & 0x10) +#define BP_IR_DEBUG_TXDMAEND 3 +#define BM_IR_DEBUG_TXDMAEND 0x8 +#define BF_IR_DEBUG_TXDMAEND(v) (((v) << 3) & 0x8) +#define BP_IR_DEBUG_RXDMAEND 2 +#define BM_IR_DEBUG_RXDMAEND 0x4 +#define BF_IR_DEBUG_RXDMAEND(v) (((v) << 2) & 0x4) +#define BP_IR_DEBUG_TXDMAREQ 1 +#define BM_IR_DEBUG_TXDMAREQ 0x2 +#define BF_IR_DEBUG_TXDMAREQ(v) (((v) << 1) & 0x2) +#define BP_IR_DEBUG_RXDMAREQ 0 +#define BM_IR_DEBUG_RXDMAREQ 0x1 +#define BF_IR_DEBUG_RXDMAREQ(v) (((v) << 0) & 0x1) + +#endif /* __HEADERGEN__STMP3600__IR__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-lcdif.h b/firmware/target/arm/imx233/regs/stmp3600/regs-lcdif.h new file mode 100644 index 0000000000..24b17d5905 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-lcdif.h @@ -0,0 +1,167 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__LCDIF__H__ +#define __HEADERGEN__STMP3600__LCDIF__H__ + +#define REGS_LCDIF_BASE (0x80060000) + +#define REGS_LCDIF_VERSION "2.3.0" + +/** + * Register: HW_LCDIF_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_LCDIF_CTRL (*(volatile unsigned long *)(REGS_LCDIF_BASE + 0x0 + 0x0)) +#define HW_LCDIF_CTRL_SET (*(volatile unsigned long *)(REGS_LCDIF_BASE + 0x0 + 0x4)) +#define HW_LCDIF_CTRL_CLR (*(volatile unsigned long *)(REGS_LCDIF_BASE + 0x0 + 0x8)) +#define HW_LCDIF_CTRL_TOG (*(volatile unsigned long *)(REGS_LCDIF_BASE + 0x0 + 0xc)) +#define BP_LCDIF_CTRL_SFTRST 31 +#define BM_LCDIF_CTRL_SFTRST 0x80000000 +#define BF_LCDIF_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_LCDIF_CTRL_CLKGATE 30 +#define BM_LCDIF_CTRL_CLKGATE 0x40000000 +#define BF_LCDIF_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_LCDIF_CTRL_PRESENT 29 +#define BM_LCDIF_CTRL_PRESENT 0x20000000 +#define BF_LCDIF_CTRL_PRESENT(v) (((v) << 29) & 0x20000000) +#define BP_LCDIF_CTRL_BUSY_ENABLE 25 +#define BM_LCDIF_CTRL_BUSY_ENABLE 0x2000000 +#define BV_LCDIF_CTRL_BUSY_ENABLE__BUSY_DISABLED 0x0 +#define BV_LCDIF_CTRL_BUSY_ENABLE__BUSY_ENABLED 0x1 +#define BF_LCDIF_CTRL_BUSY_ENABLE(v) (((v) << 25) & 0x2000000) +#define BF_LCDIF_CTRL_BUSY_ENABLE_V(v) ((BV_LCDIF_CTRL_BUSY_ENABLE__##v << 25) & 0x2000000) +#define BP_LCDIF_CTRL_FIFO_STATUS 24 +#define BM_LCDIF_CTRL_FIFO_STATUS 0x1000000 +#define BV_LCDIF_CTRL_FIFO_STATUS__FIFO_FULL 0x0 +#define BV_LCDIF_CTRL_FIFO_STATUS__FIFO_OK 0x1 +#define BF_LCDIF_CTRL_FIFO_STATUS(v) (((v) << 24) & 0x1000000) +#define BF_LCDIF_CTRL_FIFO_STATUS_V(v) ((BV_LCDIF_CTRL_FIFO_STATUS__##v << 24) & 0x1000000) +#define BP_LCDIF_CTRL_DMA_REQ 23 +#define BM_LCDIF_CTRL_DMA_REQ 0x800000 +#define BF_LCDIF_CTRL_DMA_REQ(v) (((v) << 23) & 0x800000) +#define BP_LCDIF_CTRL_DATA_SWIZZLE 21 +#define BM_LCDIF_CTRL_DATA_SWIZZLE 0x600000 +#define BV_LCDIF_CTRL_DATA_SWIZZLE__NO_SWAP 0x0 +#define BV_LCDIF_CTRL_DATA_SWIZZLE__LITTLE_ENDIAN 0x0 +#define BV_LCDIF_CTRL_DATA_SWIZZLE__BIG_ENDIAN_SWAP 0x1 +#define BV_LCDIF_CTRL_DATA_SWIZZLE__SWAP_ALL_BYTES 0x1 +#define BV_LCDIF_CTRL_DATA_SWIZZLE__HWD_SWAP 0x2 +#define BV_LCDIF_CTRL_DATA_SWIZZLE__HWD_BYTE_SWAP 0x3 +#define BF_LCDIF_CTRL_DATA_SWIZZLE(v) (((v) << 21) & 0x600000) +#define BF_LCDIF_CTRL_DATA_SWIZZLE_V(v) ((BV_LCDIF_CTRL_DATA_SWIZZLE__##v << 21) & 0x600000) +#define BP_LCDIF_CTRL_RESET 20 +#define BM_LCDIF_CTRL_RESET 0x100000 +#define BV_LCDIF_CTRL_RESET__LCDRESET_LOW 0x0 +#define BV_LCDIF_CTRL_RESET__LCDRESET_HIGH 0x1 +#define BF_LCDIF_CTRL_RESET(v) (((v) << 20) & 0x100000) +#define BF_LCDIF_CTRL_RESET_V(v) ((BV_LCDIF_CTRL_RESET__##v << 20) & 0x100000) +#define BP_LCDIF_CTRL_MODE86 19 +#define BM_LCDIF_CTRL_MODE86 0x80000 +#define BV_LCDIF_CTRL_MODE86__8080_MODE 0x0 +#define BV_LCDIF_CTRL_MODE86__6800_MODE 0x1 +#define BF_LCDIF_CTRL_MODE86(v) (((v) << 19) & 0x80000) +#define BF_LCDIF_CTRL_MODE86_V(v) ((BV_LCDIF_CTRL_MODE86__##v << 19) & 0x80000) +#define BP_LCDIF_CTRL_DATA_SELECT 18 +#define BM_LCDIF_CTRL_DATA_SELECT 0x40000 +#define BV_LCDIF_CTRL_DATA_SELECT__CMD_MODE 0x0 +#define BV_LCDIF_CTRL_DATA_SELECT__DATA_MODE 0x1 +#define BF_LCDIF_CTRL_DATA_SELECT(v) (((v) << 18) & 0x40000) +#define BF_LCDIF_CTRL_DATA_SELECT_V(v) ((BV_LCDIF_CTRL_DATA_SELECT__##v << 18) & 0x40000) +#define BP_LCDIF_CTRL_WORD_LENGTH 17 +#define BM_LCDIF_CTRL_WORD_LENGTH 0x20000 +#define BV_LCDIF_CTRL_WORD_LENGTH__16_BIT 0x0 +#define BV_LCDIF_CTRL_WORD_LENGTH__8_BIT 0x1 +#define BF_LCDIF_CTRL_WORD_LENGTH(v) (((v) << 17) & 0x20000) +#define BF_LCDIF_CTRL_WORD_LENGTH_V(v) ((BV_LCDIF_CTRL_WORD_LENGTH__##v << 17) & 0x20000) +#define BP_LCDIF_CTRL_RUN 16 +#define BM_LCDIF_CTRL_RUN 0x10000 +#define BF_LCDIF_CTRL_RUN(v) (((v) << 16) & 0x10000) +#define BP_LCDIF_CTRL_COUNT 0 +#define BM_LCDIF_CTRL_COUNT 0xffff +#define BF_LCDIF_CTRL_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_LCDIF_TIMING + * Address: 0x10 + * SCT: no +*/ +#define HW_LCDIF_TIMING (*(volatile unsigned long *)(REGS_LCDIF_BASE + 0x10)) +#define BP_LCDIF_TIMING_CMD_HOLD 24 +#define BM_LCDIF_TIMING_CMD_HOLD 0xff000000 +#define BF_LCDIF_TIMING_CMD_HOLD(v) (((v) << 24) & 0xff000000) +#define BP_LCDIF_TIMING_CMD_SETUP 16 +#define BM_LCDIF_TIMING_CMD_SETUP 0xff0000 +#define BF_LCDIF_TIMING_CMD_SETUP(v) (((v) << 16) & 0xff0000) +#define BP_LCDIF_TIMING_DATA_HOLD 8 +#define BM_LCDIF_TIMING_DATA_HOLD 0xff00 +#define BF_LCDIF_TIMING_DATA_HOLD(v) (((v) << 8) & 0xff00) +#define BP_LCDIF_TIMING_DATA_SETUP 0 +#define BM_LCDIF_TIMING_DATA_SETUP 0xff +#define BF_LCDIF_TIMING_DATA_SETUP(v) (((v) << 0) & 0xff) + +/** + * Register: HW_LCDIF_DATA + * Address: 0x20 + * SCT: no +*/ +#define HW_LCDIF_DATA (*(volatile unsigned long *)(REGS_LCDIF_BASE + 0x20)) +#define BP_LCDIF_DATA_DATA_THREE 24 +#define BM_LCDIF_DATA_DATA_THREE 0xff000000 +#define BF_LCDIF_DATA_DATA_THREE(v) (((v) << 24) & 0xff000000) +#define BP_LCDIF_DATA_DATA_TWO 16 +#define BM_LCDIF_DATA_DATA_TWO 0xff0000 +#define BF_LCDIF_DATA_DATA_TWO(v) (((v) << 16) & 0xff0000) +#define BP_LCDIF_DATA_DATA_ONE 8 +#define BM_LCDIF_DATA_DATA_ONE 0xff00 +#define BF_LCDIF_DATA_DATA_ONE(v) (((v) << 8) & 0xff00) +#define BP_LCDIF_DATA_DATA_ZERO 0 +#define BM_LCDIF_DATA_DATA_ZERO 0xff +#define BF_LCDIF_DATA_DATA_ZERO(v) (((v) << 0) & 0xff) + +/** + * Register: HW_LCDIF_DEBUG + * Address: 0x30 + * SCT: no +*/ +#define HW_LCDIF_DEBUG (*(volatile unsigned long *)(REGS_LCDIF_BASE + 0x30)) +#define BP_LCDIF_DEBUG_BUSY 27 +#define BM_LCDIF_DEBUG_BUSY 0x8000000 +#define BF_LCDIF_DEBUG_BUSY(v) (((v) << 27) & 0x8000000) +#define BP_LCDIF_DEBUG_LAST_SUBWORD 26 +#define BM_LCDIF_DEBUG_LAST_SUBWORD 0x4000000 +#define BF_LCDIF_DEBUG_LAST_SUBWORD(v) (((v) << 26) & 0x4000000) +#define BP_LCDIF_DEBUG_SUBWORD_POSITION 24 +#define BM_LCDIF_DEBUG_SUBWORD_POSITION 0x3000000 +#define BF_LCDIF_DEBUG_SUBWORD_POSITION(v) (((v) << 24) & 0x3000000) +#define BP_LCDIF_DEBUG_EMPTY_WORD 23 +#define BM_LCDIF_DEBUG_EMPTY_WORD 0x800000 +#define BF_LCDIF_DEBUG_EMPTY_WORD(v) (((v) << 23) & 0x800000) +#define BP_LCDIF_DEBUG_STATE 16 +#define BM_LCDIF_DEBUG_STATE 0x7f0000 +#define BF_LCDIF_DEBUG_STATE(v) (((v) << 16) & 0x7f0000) +#define BP_LCDIF_DEBUG_DATA_COUNT 0 +#define BM_LCDIF_DEBUG_DATA_COUNT 0xffff +#define BF_LCDIF_DEBUG_DATA_COUNT(v) (((v) << 0) & 0xffff) + +#endif /* __HEADERGEN__STMP3600__LCDIF__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-lradc.h b/firmware/target/arm/imx233/regs/stmp3600/regs-lradc.h new file mode 100644 index 0000000000..c799635306 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-lradc.h @@ -0,0 +1,572 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__LRADC__H__ +#define __HEADERGEN__STMP3600__LRADC__H__ + +#define REGS_LRADC_BASE (0x80050000) + +#define REGS_LRADC_VERSION "2.3.0" + +/** + * Register: HW_LRADC_CTRL0 + * Address: 0 + * SCT: yes +*/ +#define HW_LRADC_CTRL0 (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x0 + 0x0)) +#define HW_LRADC_CTRL0_SET (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x0 + 0x4)) +#define HW_LRADC_CTRL0_CLR (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x0 + 0x8)) +#define HW_LRADC_CTRL0_TOG (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x0 + 0xc)) +#define BP_LRADC_CTRL0_SFTRST 31 +#define BM_LRADC_CTRL0_SFTRST 0x80000000 +#define BF_LRADC_CTRL0_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_LRADC_CTRL0_CLKGATE 30 +#define BM_LRADC_CTRL0_CLKGATE 0x40000000 +#define BF_LRADC_CTRL0_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_LRADC_CTRL0_ONCHIP_GROUNDREF 21 +#define BM_LRADC_CTRL0_ONCHIP_GROUNDREF 0x200000 +#define BV_LRADC_CTRL0_ONCHIP_GROUNDREF__OFF 0x0 +#define BV_LRADC_CTRL0_ONCHIP_GROUNDREF__ON 0x1 +#define BF_LRADC_CTRL0_ONCHIP_GROUNDREF(v) (((v) << 21) & 0x200000) +#define BF_LRADC_CTRL0_ONCHIP_GROUNDREF_V(v) ((BV_LRADC_CTRL0_ONCHIP_GROUNDREF__##v << 21) & 0x200000) +#define BP_LRADC_CTRL0_TOUCH_DETECT_ENABLE 20 +#define BM_LRADC_CTRL0_TOUCH_DETECT_ENABLE 0x100000 +#define BV_LRADC_CTRL0_TOUCH_DETECT_ENABLE__OFF 0x0 +#define BV_LRADC_CTRL0_TOUCH_DETECT_ENABLE__ON 0x1 +#define BF_LRADC_CTRL0_TOUCH_DETECT_ENABLE(v) (((v) << 20) & 0x100000) +#define BF_LRADC_CTRL0_TOUCH_DETECT_ENABLE_V(v) ((BV_LRADC_CTRL0_TOUCH_DETECT_ENABLE__##v << 20) & 0x100000) +#define BP_LRADC_CTRL0_YMINUS_ENABLE 19 +#define BM_LRADC_CTRL0_YMINUS_ENABLE 0x80000 +#define BV_LRADC_CTRL0_YMINUS_ENABLE__OFF 0x0 +#define BV_LRADC_CTRL0_YMINUS_ENABLE__ON 0x1 +#define BF_LRADC_CTRL0_YMINUS_ENABLE(v) (((v) << 19) & 0x80000) +#define BF_LRADC_CTRL0_YMINUS_ENABLE_V(v) ((BV_LRADC_CTRL0_YMINUS_ENABLE__##v << 19) & 0x80000) +#define BP_LRADC_CTRL0_XMINUS_ENABLE 18 +#define BM_LRADC_CTRL0_XMINUS_ENABLE 0x40000 +#define BV_LRADC_CTRL0_XMINUS_ENABLE__OFF 0x0 +#define BV_LRADC_CTRL0_XMINUS_ENABLE__ON 0x1 +#define BF_LRADC_CTRL0_XMINUS_ENABLE(v) (((v) << 18) & 0x40000) +#define BF_LRADC_CTRL0_XMINUS_ENABLE_V(v) ((BV_LRADC_CTRL0_XMINUS_ENABLE__##v << 18) & 0x40000) +#define BP_LRADC_CTRL0_YPLUS_ENABLE 17 +#define BM_LRADC_CTRL0_YPLUS_ENABLE 0x20000 +#define BV_LRADC_CTRL0_YPLUS_ENABLE__OFF 0x0 +#define BV_LRADC_CTRL0_YPLUS_ENABLE__ON 0x1 +#define BF_LRADC_CTRL0_YPLUS_ENABLE(v) (((v) << 17) & 0x20000) +#define BF_LRADC_CTRL0_YPLUS_ENABLE_V(v) ((BV_LRADC_CTRL0_YPLUS_ENABLE__##v << 17) & 0x20000) +#define BP_LRADC_CTRL0_XPLUS_ENABLE 16 +#define BM_LRADC_CTRL0_XPLUS_ENABLE 0x10000 +#define BV_LRADC_CTRL0_XPLUS_ENABLE__OFF 0x0 +#define BV_LRADC_CTRL0_XPLUS_ENABLE__ON 0x1 +#define BF_LRADC_CTRL0_XPLUS_ENABLE(v) (((v) << 16) & 0x10000) +#define BF_LRADC_CTRL0_XPLUS_ENABLE_V(v) ((BV_LRADC_CTRL0_XPLUS_ENABLE__##v << 16) & 0x10000) +#define BP_LRADC_CTRL0_SCHEDULE 0 +#define BM_LRADC_CTRL0_SCHEDULE 0xff +#define BF_LRADC_CTRL0_SCHEDULE(v) (((v) << 0) & 0xff) + +/** + * Register: HW_LRADC_CTRL1 + * Address: 0x10 + * SCT: yes +*/ +#define HW_LRADC_CTRL1 (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x10 + 0x0)) +#define HW_LRADC_CTRL1_SET (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x10 + 0x4)) +#define HW_LRADC_CTRL1_CLR (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x10 + 0x8)) +#define HW_LRADC_CTRL1_TOG (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x10 + 0xc)) +#define BP_LRADC_CTRL1_TOUCH_DETECT_IRQ_EN 24 +#define BM_LRADC_CTRL1_TOUCH_DETECT_IRQ_EN 0x1000000 +#define BV_LRADC_CTRL1_TOUCH_DETECT_IRQ_EN__DISABLE 0x0 +#define BV_LRADC_CTRL1_TOUCH_DETECT_IRQ_EN__ENABLE 0x1 +#define BF_LRADC_CTRL1_TOUCH_DETECT_IRQ_EN(v) (((v) << 24) & 0x1000000) +#define BF_LRADC_CTRL1_TOUCH_DETECT_IRQ_EN_V(v) ((BV_LRADC_CTRL1_TOUCH_DETECT_IRQ_EN__##v << 24) & 0x1000000) +#define BP_LRADC_CTRL1_LRADC7_IRQ_EN 23 +#define BM_LRADC_CTRL1_LRADC7_IRQ_EN 0x800000 +#define BV_LRADC_CTRL1_LRADC7_IRQ_EN__DISABLE 0x0 +#define BV_LRADC_CTRL1_LRADC7_IRQ_EN__ENABLE 0x1 +#define BF_LRADC_CTRL1_LRADC7_IRQ_EN(v) (((v) << 23) & 0x800000) +#define BF_LRADC_CTRL1_LRADC7_IRQ_EN_V(v) ((BV_LRADC_CTRL1_LRADC7_IRQ_EN__##v << 23) & 0x800000) +#define BP_LRADC_CTRL1_LRADC6_IRQ_EN 22 +#define BM_LRADC_CTRL1_LRADC6_IRQ_EN 0x400000 +#define BV_LRADC_CTRL1_LRADC6_IRQ_EN__DISABLE 0x0 +#define BV_LRADC_CTRL1_LRADC6_IRQ_EN__ENABLE 0x1 +#define BF_LRADC_CTRL1_LRADC6_IRQ_EN(v) (((v) << 22) & 0x400000) +#define BF_LRADC_CTRL1_LRADC6_IRQ_EN_V(v) ((BV_LRADC_CTRL1_LRADC6_IRQ_EN__##v << 22) & 0x400000) +#define BP_LRADC_CTRL1_LRADC5_IRQ_EN 21 +#define BM_LRADC_CTRL1_LRADC5_IRQ_EN 0x200000 +#define BV_LRADC_CTRL1_LRADC5_IRQ_EN__DISABLE 0x0 +#define BV_LRADC_CTRL1_LRADC5_IRQ_EN__ENABLE 0x1 +#define BF_LRADC_CTRL1_LRADC5_IRQ_EN(v) (((v) << 21) & 0x200000) +#define BF_LRADC_CTRL1_LRADC5_IRQ_EN_V(v) ((BV_LRADC_CTRL1_LRADC5_IRQ_EN__##v << 21) & 0x200000) +#define BP_LRADC_CTRL1_LRADC4_IRQ_EN 20 +#define BM_LRADC_CTRL1_LRADC4_IRQ_EN 0x100000 +#define BV_LRADC_CTRL1_LRADC4_IRQ_EN__DISABLE 0x0 +#define BV_LRADC_CTRL1_LRADC4_IRQ_EN__ENABLE 0x1 +#define BF_LRADC_CTRL1_LRADC4_IRQ_EN(v) (((v) << 20) & 0x100000) +#define BF_LRADC_CTRL1_LRADC4_IRQ_EN_V(v) ((BV_LRADC_CTRL1_LRADC4_IRQ_EN__##v << 20) & 0x100000) +#define BP_LRADC_CTRL1_LRADC3_IRQ_EN 19 +#define BM_LRADC_CTRL1_LRADC3_IRQ_EN 0x80000 +#define BV_LRADC_CTRL1_LRADC3_IRQ_EN__DISABLE 0x0 +#define BV_LRADC_CTRL1_LRADC3_IRQ_EN__ENABLE 0x1 +#define BF_LRADC_CTRL1_LRADC3_IRQ_EN(v) (((v) << 19) & 0x80000) +#define BF_LRADC_CTRL1_LRADC3_IRQ_EN_V(v) ((BV_LRADC_CTRL1_LRADC3_IRQ_EN__##v << 19) & 0x80000) +#define BP_LRADC_CTRL1_LRADC2_IRQ_EN 18 +#define BM_LRADC_CTRL1_LRADC2_IRQ_EN 0x40000 +#define BV_LRADC_CTRL1_LRADC2_IRQ_EN__DISABLE 0x0 +#define BV_LRADC_CTRL1_LRADC2_IRQ_EN__ENABLE 0x1 +#define BF_LRADC_CTRL1_LRADC2_IRQ_EN(v) (((v) << 18) & 0x40000) +#define BF_LRADC_CTRL1_LRADC2_IRQ_EN_V(v) ((BV_LRADC_CTRL1_LRADC2_IRQ_EN__##v << 18) & 0x40000) +#define BP_LRADC_CTRL1_LRADC1_IRQ_EN 17 +#define BM_LRADC_CTRL1_LRADC1_IRQ_EN 0x20000 +#define BV_LRADC_CTRL1_LRADC1_IRQ_EN__DISABLE 0x0 +#define BV_LRADC_CTRL1_LRADC1_IRQ_EN__ENABLE 0x1 +#define BF_LRADC_CTRL1_LRADC1_IRQ_EN(v) (((v) << 17) & 0x20000) +#define BF_LRADC_CTRL1_LRADC1_IRQ_EN_V(v) ((BV_LRADC_CTRL1_LRADC1_IRQ_EN__##v << 17) & 0x20000) +#define BP_LRADC_CTRL1_LRADC0_IRQ_EN 16 +#define BM_LRADC_CTRL1_LRADC0_IRQ_EN 0x10000 +#define BV_LRADC_CTRL1_LRADC0_IRQ_EN__DISABLE 0x0 +#define BV_LRADC_CTRL1_LRADC0_IRQ_EN__ENABLE 0x1 +#define BF_LRADC_CTRL1_LRADC0_IRQ_EN(v) (((v) << 16) & 0x10000) +#define BF_LRADC_CTRL1_LRADC0_IRQ_EN_V(v) ((BV_LRADC_CTRL1_LRADC0_IRQ_EN__##v << 16) & 0x10000) +#define BP_LRADC_CTRL1_TOUCH_DETECT_IRQ 8 +#define BM_LRADC_CTRL1_TOUCH_DETECT_IRQ 0x100 +#define BV_LRADC_CTRL1_TOUCH_DETECT_IRQ__CLEAR 0x0 +#define BV_LRADC_CTRL1_TOUCH_DETECT_IRQ__PENDING 0x1 +#define BF_LRADC_CTRL1_TOUCH_DETECT_IRQ(v) (((v) << 8) & 0x100) +#define BF_LRADC_CTRL1_TOUCH_DETECT_IRQ_V(v) ((BV_LRADC_CTRL1_TOUCH_DETECT_IRQ__##v << 8) & 0x100) +#define BP_LRADC_CTRL1_LRADC7_IRQ 7 +#define BM_LRADC_CTRL1_LRADC7_IRQ 0x80 +#define BV_LRADC_CTRL1_LRADC7_IRQ__CLEAR 0x0 +#define BV_LRADC_CTRL1_LRADC7_IRQ__PENDING 0x1 +#define BF_LRADC_CTRL1_LRADC7_IRQ(v) (((v) << 7) & 0x80) +#define BF_LRADC_CTRL1_LRADC7_IRQ_V(v) ((BV_LRADC_CTRL1_LRADC7_IRQ__##v << 7) & 0x80) +#define BP_LRADC_CTRL1_LRADC6_IRQ 6 +#define BM_LRADC_CTRL1_LRADC6_IRQ 0x40 +#define BV_LRADC_CTRL1_LRADC6_IRQ__CLEAR 0x0 +#define BV_LRADC_CTRL1_LRADC6_IRQ__PENDING 0x1 +#define BF_LRADC_CTRL1_LRADC6_IRQ(v) (((v) << 6) & 0x40) +#define BF_LRADC_CTRL1_LRADC6_IRQ_V(v) ((BV_LRADC_CTRL1_LRADC6_IRQ__##v << 6) & 0x40) +#define BP_LRADC_CTRL1_LRADC5_IRQ 5 +#define BM_LRADC_CTRL1_LRADC5_IRQ 0x20 +#define BV_LRADC_CTRL1_LRADC5_IRQ__CLEAR 0x0 +#define BV_LRADC_CTRL1_LRADC5_IRQ__PENDING 0x1 +#define BF_LRADC_CTRL1_LRADC5_IRQ(v) (((v) << 5) & 0x20) +#define BF_LRADC_CTRL1_LRADC5_IRQ_V(v) ((BV_LRADC_CTRL1_LRADC5_IRQ__##v << 5) & 0x20) +#define BP_LRADC_CTRL1_LRADC4_IRQ 4 +#define BM_LRADC_CTRL1_LRADC4_IRQ 0x10 +#define BV_LRADC_CTRL1_LRADC4_IRQ__CLEAR 0x0 +#define BV_LRADC_CTRL1_LRADC4_IRQ__PENDING 0x1 +#define BF_LRADC_CTRL1_LRADC4_IRQ(v) (((v) << 4) & 0x10) +#define BF_LRADC_CTRL1_LRADC4_IRQ_V(v) ((BV_LRADC_CTRL1_LRADC4_IRQ__##v << 4) & 0x10) +#define BP_LRADC_CTRL1_LRADC3_IRQ 3 +#define BM_LRADC_CTRL1_LRADC3_IRQ 0x8 +#define BV_LRADC_CTRL1_LRADC3_IRQ__CLEAR 0x0 +#define BV_LRADC_CTRL1_LRADC3_IRQ__PENDING 0x1 +#define BF_LRADC_CTRL1_LRADC3_IRQ(v) (((v) << 3) & 0x8) +#define BF_LRADC_CTRL1_LRADC3_IRQ_V(v) ((BV_LRADC_CTRL1_LRADC3_IRQ__##v << 3) & 0x8) +#define BP_LRADC_CTRL1_LRADC2_IRQ 2 +#define BM_LRADC_CTRL1_LRADC2_IRQ 0x4 +#define BV_LRADC_CTRL1_LRADC2_IRQ__CLEAR 0x0 +#define BV_LRADC_CTRL1_LRADC2_IRQ__PENDING 0x1 +#define BF_LRADC_CTRL1_LRADC2_IRQ(v) (((v) << 2) & 0x4) +#define BF_LRADC_CTRL1_LRADC2_IRQ_V(v) ((BV_LRADC_CTRL1_LRADC2_IRQ__##v << 2) & 0x4) +#define BP_LRADC_CTRL1_LRADC1_IRQ 1 +#define BM_LRADC_CTRL1_LRADC1_IRQ 0x2 +#define BV_LRADC_CTRL1_LRADC1_IRQ__CLEAR 0x0 +#define BV_LRADC_CTRL1_LRADC1_IRQ__PENDING 0x1 +#define BF_LRADC_CTRL1_LRADC1_IRQ(v) (((v) << 1) & 0x2) +#define BF_LRADC_CTRL1_LRADC1_IRQ_V(v) ((BV_LRADC_CTRL1_LRADC1_IRQ__##v << 1) & 0x2) +#define BP_LRADC_CTRL1_LRADC0_IRQ 0 +#define BM_LRADC_CTRL1_LRADC0_IRQ 0x1 +#define BV_LRADC_CTRL1_LRADC0_IRQ__CLEAR 0x0 +#define BV_LRADC_CTRL1_LRADC0_IRQ__PENDING 0x1 +#define BF_LRADC_CTRL1_LRADC0_IRQ(v) (((v) << 0) & 0x1) +#define BF_LRADC_CTRL1_LRADC0_IRQ_V(v) ((BV_LRADC_CTRL1_LRADC0_IRQ__##v << 0) & 0x1) + +/** + * Register: HW_LRADC_CTRL2 + * Address: 0x20 + * SCT: yes +*/ +#define HW_LRADC_CTRL2 (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x20 + 0x0)) +#define HW_LRADC_CTRL2_SET (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x20 + 0x4)) +#define HW_LRADC_CTRL2_CLR (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x20 + 0x8)) +#define HW_LRADC_CTRL2_TOG (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x20 + 0xc)) +#define BP_LRADC_CTRL2_DIVIDE_BY_TWO 24 +#define BM_LRADC_CTRL2_DIVIDE_BY_TWO 0xff000000 +#define BF_LRADC_CTRL2_DIVIDE_BY_TWO(v) (((v) << 24) & 0xff000000) +#define BP_LRADC_CTRL2_LRADC6SELECT 20 +#define BM_LRADC_CTRL2_LRADC6SELECT 0xf00000 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL0 0x0 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL1 0x1 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL2 0x2 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL3 0x3 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL4 0x4 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL5 0x5 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL6 0x6 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL7 0x7 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL8 0x8 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL9 0x9 +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL10 0xa +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL11 0xb +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL12 0xc +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL13 0xd +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL14 0xe +#define BV_LRADC_CTRL2_LRADC6SELECT__CHANNEL15 0xf +#define BF_LRADC_CTRL2_LRADC6SELECT(v) (((v) << 20) & 0xf00000) +#define BF_LRADC_CTRL2_LRADC6SELECT_V(v) ((BV_LRADC_CTRL2_LRADC6SELECT__##v << 20) & 0xf00000) +#define BP_LRADC_CTRL2_LRADC7SELECT 16 +#define BM_LRADC_CTRL2_LRADC7SELECT 0xf0000 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL0 0x0 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL1 0x1 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL2 0x2 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL3 0x3 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL4 0x4 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL5 0x5 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL6 0x6 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL7 0x7 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL8 0x8 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL9 0x9 +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL10 0xa +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL11 0xb +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL12 0xc +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL13 0xd +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL14 0xe +#define BV_LRADC_CTRL2_LRADC7SELECT__CHANNEL15 0xf +#define BF_LRADC_CTRL2_LRADC7SELECT(v) (((v) << 16) & 0xf0000) +#define BF_LRADC_CTRL2_LRADC7SELECT_V(v) ((BV_LRADC_CTRL2_LRADC7SELECT__##v << 16) & 0xf0000) +#define BP_LRADC_CTRL2_TEMP_SENSOR_IENABLE1 9 +#define BM_LRADC_CTRL2_TEMP_SENSOR_IENABLE1 0x200 +#define BV_LRADC_CTRL2_TEMP_SENSOR_IENABLE1__DISABLE 0x0 +#define BV_LRADC_CTRL2_TEMP_SENSOR_IENABLE1__ENABLE 0x1 +#define BF_LRADC_CTRL2_TEMP_SENSOR_IENABLE1(v) (((v) << 9) & 0x200) +#define BF_LRADC_CTRL2_TEMP_SENSOR_IENABLE1_V(v) ((BV_LRADC_CTRL2_TEMP_SENSOR_IENABLE1__##v << 9) & 0x200) +#define BP_LRADC_CTRL2_TEMP_SENSOR_IENABLE0 8 +#define BM_LRADC_CTRL2_TEMP_SENSOR_IENABLE0 0x100 +#define BV_LRADC_CTRL2_TEMP_SENSOR_IENABLE0__DISABLE 0x0 +#define BV_LRADC_CTRL2_TEMP_SENSOR_IENABLE0__ENABLE 0x1 +#define BF_LRADC_CTRL2_TEMP_SENSOR_IENABLE0(v) (((v) << 8) & 0x100) +#define BF_LRADC_CTRL2_TEMP_SENSOR_IENABLE0_V(v) ((BV_LRADC_CTRL2_TEMP_SENSOR_IENABLE0__##v << 8) & 0x100) +#define BP_LRADC_CTRL2_TEMP_ISRC1 4 +#define BM_LRADC_CTRL2_TEMP_ISRC1 0xf0 +#define BV_LRADC_CTRL2_TEMP_ISRC1__300 0xf +#define BV_LRADC_CTRL2_TEMP_ISRC1__280 0xe +#define BV_LRADC_CTRL2_TEMP_ISRC1__260 0xd +#define BV_LRADC_CTRL2_TEMP_ISRC1__240 0xc +#define BV_LRADC_CTRL2_TEMP_ISRC1__220 0xb +#define BV_LRADC_CTRL2_TEMP_ISRC1__200 0xa +#define BV_LRADC_CTRL2_TEMP_ISRC1__180 0x9 +#define BV_LRADC_CTRL2_TEMP_ISRC1__160 0x8 +#define BV_LRADC_CTRL2_TEMP_ISRC1__140 0x7 +#define BV_LRADC_CTRL2_TEMP_ISRC1__120 0x6 +#define BV_LRADC_CTRL2_TEMP_ISRC1__100 0x5 +#define BV_LRADC_CTRL2_TEMP_ISRC1__80 0x4 +#define BV_LRADC_CTRL2_TEMP_ISRC1__60 0x3 +#define BV_LRADC_CTRL2_TEMP_ISRC1__40 0x2 +#define BV_LRADC_CTRL2_TEMP_ISRC1__20 0x1 +#define BV_LRADC_CTRL2_TEMP_ISRC1__ZERO 0x0 +#define BF_LRADC_CTRL2_TEMP_ISRC1(v) (((v) << 4) & 0xf0) +#define BF_LRADC_CTRL2_TEMP_ISRC1_V(v) ((BV_LRADC_CTRL2_TEMP_ISRC1__##v << 4) & 0xf0) +#define BP_LRADC_CTRL2_TEMP_ISRC0 0 +#define BM_LRADC_CTRL2_TEMP_ISRC0 0xf +#define BV_LRADC_CTRL2_TEMP_ISRC0__300 0xf +#define BV_LRADC_CTRL2_TEMP_ISRC0__280 0xe +#define BV_LRADC_CTRL2_TEMP_ISRC0__260 0xd +#define BV_LRADC_CTRL2_TEMP_ISRC0__240 0xc +#define BV_LRADC_CTRL2_TEMP_ISRC0__220 0xb +#define BV_LRADC_CTRL2_TEMP_ISRC0__200 0xa +#define BV_LRADC_CTRL2_TEMP_ISRC0__180 0x9 +#define BV_LRADC_CTRL2_TEMP_ISRC0__160 0x8 +#define BV_LRADC_CTRL2_TEMP_ISRC0__140 0x7 +#define BV_LRADC_CTRL2_TEMP_ISRC0__120 0x6 +#define BV_LRADC_CTRL2_TEMP_ISRC0__100 0x5 +#define BV_LRADC_CTRL2_TEMP_ISRC0__80 0x4 +#define BV_LRADC_CTRL2_TEMP_ISRC0__60 0x3 +#define BV_LRADC_CTRL2_TEMP_ISRC0__40 0x2 +#define BV_LRADC_CTRL2_TEMP_ISRC0__20 0x1 +#define BV_LRADC_CTRL2_TEMP_ISRC0__ZERO 0x0 +#define BF_LRADC_CTRL2_TEMP_ISRC0(v) (((v) << 0) & 0xf) +#define BF_LRADC_CTRL2_TEMP_ISRC0_V(v) ((BV_LRADC_CTRL2_TEMP_ISRC0__##v << 0) & 0xf) + +/** + * Register: HW_LRADC_CTRL3 + * Address: 0x30 + * SCT: yes +*/ +#define HW_LRADC_CTRL3 (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x30 + 0x0)) +#define HW_LRADC_CTRL3_SET (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x30 + 0x4)) +#define HW_LRADC_CTRL3_CLR (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x30 + 0x8)) +#define HW_LRADC_CTRL3_TOG (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x30 + 0xc)) +#define BP_LRADC_CTRL3_DISCARD 24 +#define BM_LRADC_CTRL3_DISCARD 0x3000000 +#define BV_LRADC_CTRL3_DISCARD__1_SAMPLE 0x1 +#define BV_LRADC_CTRL3_DISCARD__2_SAMPLES 0x2 +#define BV_LRADC_CTRL3_DISCARD__3_SAMPLES 0x3 +#define BF_LRADC_CTRL3_DISCARD(v) (((v) << 24) & 0x3000000) +#define BF_LRADC_CTRL3_DISCARD_V(v) ((BV_LRADC_CTRL3_DISCARD__##v << 24) & 0x3000000) +#define BP_LRADC_CTRL3_FORCE_ANALOG_PWUP 23 +#define BM_LRADC_CTRL3_FORCE_ANALOG_PWUP 0x800000 +#define BV_LRADC_CTRL3_FORCE_ANALOG_PWUP__OFF 0x0 +#define BV_LRADC_CTRL3_FORCE_ANALOG_PWUP__ON 0x1 +#define BF_LRADC_CTRL3_FORCE_ANALOG_PWUP(v) (((v) << 23) & 0x800000) +#define BF_LRADC_CTRL3_FORCE_ANALOG_PWUP_V(v) ((BV_LRADC_CTRL3_FORCE_ANALOG_PWUP__##v << 23) & 0x800000) +#define BP_LRADC_CTRL3_FORCE_ANALOG_PWDN 22 +#define BM_LRADC_CTRL3_FORCE_ANALOG_PWDN 0x400000 +#define BV_LRADC_CTRL3_FORCE_ANALOG_PWDN__ON 0x0 +#define BV_LRADC_CTRL3_FORCE_ANALOG_PWDN__OFF 0x1 +#define BF_LRADC_CTRL3_FORCE_ANALOG_PWDN(v) (((v) << 22) & 0x400000) +#define BF_LRADC_CTRL3_FORCE_ANALOG_PWDN_V(v) ((BV_LRADC_CTRL3_FORCE_ANALOG_PWDN__##v << 22) & 0x400000) +#define BP_LRADC_CTRL3_FORCE_PWD40UA_PWUP 21 +#define BM_LRADC_CTRL3_FORCE_PWD40UA_PWUP 0x200000 +#define BV_LRADC_CTRL3_FORCE_PWD40UA_PWUP__OFF 0x0 +#define BV_LRADC_CTRL3_FORCE_PWD40UA_PWUP__ON 0x1 +#define BF_LRADC_CTRL3_FORCE_PWD40UA_PWUP(v) (((v) << 21) & 0x200000) +#define BF_LRADC_CTRL3_FORCE_PWD40UA_PWUP_V(v) ((BV_LRADC_CTRL3_FORCE_PWD40UA_PWUP__##v << 21) & 0x200000) +#define BP_LRADC_CTRL3_FORCE_PWD40UA_PWDN 20 +#define BM_LRADC_CTRL3_FORCE_PWD40UA_PWDN 0x100000 +#define BV_LRADC_CTRL3_FORCE_PWD40UA_PWDN__ON 0x0 +#define BV_LRADC_CTRL3_FORCE_PWD40UA_PWDN__OFF 0x1 +#define BF_LRADC_CTRL3_FORCE_PWD40UA_PWDN(v) (((v) << 20) & 0x100000) +#define BF_LRADC_CTRL3_FORCE_PWD40UA_PWDN_V(v) ((BV_LRADC_CTRL3_FORCE_PWD40UA_PWDN__##v << 20) & 0x100000) +#define BP_LRADC_CTRL3_VDD_FILTER 16 +#define BM_LRADC_CTRL3_VDD_FILTER 0x30000 +#define BV_LRADC_CTRL3_VDD_FILTER__0OHMS 0x0 +#define BV_LRADC_CTRL3_VDD_FILTER__100OHMS 0x1 +#define BV_LRADC_CTRL3_VDD_FILTER__250OHMS 0x2 +#define BV_LRADC_CTRL3_VDD_FILTER__5000OHMS 0x3 +#define BF_LRADC_CTRL3_VDD_FILTER(v) (((v) << 16) & 0x30000) +#define BF_LRADC_CTRL3_VDD_FILTER_V(v) ((BV_LRADC_CTRL3_VDD_FILTER__##v << 16) & 0x30000) +#define BP_LRADC_CTRL3_ADD_CAP2INPUTS 12 +#define BM_LRADC_CTRL3_ADD_CAP2INPUTS 0x3000 +#define BV_LRADC_CTRL3_ADD_CAP2INPUTS__0PF 0x0 +#define BV_LRADC_CTRL3_ADD_CAP2INPUTS__0_5PF 0x1 +#define BV_LRADC_CTRL3_ADD_CAP2INPUTS__1_0PF 0x2 +#define BV_LRADC_CTRL3_ADD_CAP2INPUTS__2_5PF 0x3 +#define BF_LRADC_CTRL3_ADD_CAP2INPUTS(v) (((v) << 12) & 0x3000) +#define BF_LRADC_CTRL3_ADD_CAP2INPUTS_V(v) ((BV_LRADC_CTRL3_ADD_CAP2INPUTS__##v << 12) & 0x3000) +#define BP_LRADC_CTRL3_CYCLE_TIME 8 +#define BM_LRADC_CTRL3_CYCLE_TIME 0x300 +#define BV_LRADC_CTRL3_CYCLE_TIME__6MHZ 0x0 +#define BV_LRADC_CTRL3_CYCLE_TIME__4MHZ 0x1 +#define BV_LRADC_CTRL3_CYCLE_TIME__3MHZ 0x2 +#define BV_LRADC_CTRL3_CYCLE_TIME__2MHZ 0x3 +#define BF_LRADC_CTRL3_CYCLE_TIME(v) (((v) << 8) & 0x300) +#define BF_LRADC_CTRL3_CYCLE_TIME_V(v) ((BV_LRADC_CTRL3_CYCLE_TIME__##v << 8) & 0x300) +#define BP_LRADC_CTRL3_HIGH_TIME 4 +#define BM_LRADC_CTRL3_HIGH_TIME 0x30 +#define BV_LRADC_CTRL3_HIGH_TIME__42NS 0x0 +#define BV_LRADC_CTRL3_HIGH_TIME__83NS 0x1 +#define BV_LRADC_CTRL3_HIGH_TIME__125NS 0x2 +#define BV_LRADC_CTRL3_HIGH_TIME__250NS 0x3 +#define BF_LRADC_CTRL3_HIGH_TIME(v) (((v) << 4) & 0x30) +#define BF_LRADC_CTRL3_HIGH_TIME_V(v) ((BV_LRADC_CTRL3_HIGH_TIME__##v << 4) & 0x30) +#define BP_LRADC_CTRL3_REMOVE_CFILT 3 +#define BM_LRADC_CTRL3_REMOVE_CFILT 0x8 +#define BV_LRADC_CTRL3_REMOVE_CFILT__OFF 0x0 +#define BV_LRADC_CTRL3_REMOVE_CFILT__ON 0x1 +#define BF_LRADC_CTRL3_REMOVE_CFILT(v) (((v) << 3) & 0x8) +#define BF_LRADC_CTRL3_REMOVE_CFILT_V(v) ((BV_LRADC_CTRL3_REMOVE_CFILT__##v << 3) & 0x8) +#define BP_LRADC_CTRL3_SHORT_RFILT 2 +#define BM_LRADC_CTRL3_SHORT_RFILT 0x4 +#define BV_LRADC_CTRL3_SHORT_RFILT__OFF 0x0 +#define BV_LRADC_CTRL3_SHORT_RFILT__ON 0x1 +#define BF_LRADC_CTRL3_SHORT_RFILT(v) (((v) << 2) & 0x4) +#define BF_LRADC_CTRL3_SHORT_RFILT_V(v) ((BV_LRADC_CTRL3_SHORT_RFILT__##v << 2) & 0x4) +#define BP_LRADC_CTRL3_DELAY_CLOCK 1 +#define BM_LRADC_CTRL3_DELAY_CLOCK 0x2 +#define BV_LRADC_CTRL3_DELAY_CLOCK__NORMAL 0x0 +#define BV_LRADC_CTRL3_DELAY_CLOCK__DELAYED 0x1 +#define BF_LRADC_CTRL3_DELAY_CLOCK(v) (((v) << 1) & 0x2) +#define BF_LRADC_CTRL3_DELAY_CLOCK_V(v) ((BV_LRADC_CTRL3_DELAY_CLOCK__##v << 1) & 0x2) +#define BP_LRADC_CTRL3_INVERT_CLOCK 0 +#define BM_LRADC_CTRL3_INVERT_CLOCK 0x1 +#define BV_LRADC_CTRL3_INVERT_CLOCK__NORMAL 0x0 +#define BV_LRADC_CTRL3_INVERT_CLOCK__INVERT 0x1 +#define BF_LRADC_CTRL3_INVERT_CLOCK(v) (((v) << 0) & 0x1) +#define BF_LRADC_CTRL3_INVERT_CLOCK_V(v) ((BV_LRADC_CTRL3_INVERT_CLOCK__##v << 0) & 0x1) + +/** + * Register: HW_LRADC_STATUS + * Address: 0x40 + * SCT: no +*/ +#define HW_LRADC_STATUS (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x40)) +#define BP_LRADC_STATUS_TEMP1_PRESENT 26 +#define BM_LRADC_STATUS_TEMP1_PRESENT 0x4000000 +#define BF_LRADC_STATUS_TEMP1_PRESENT(v) (((v) << 26) & 0x4000000) +#define BP_LRADC_STATUS_TEMP0_PRESENT 25 +#define BM_LRADC_STATUS_TEMP0_PRESENT 0x2000000 +#define BF_LRADC_STATUS_TEMP0_PRESENT(v) (((v) << 25) & 0x2000000) +#define BP_LRADC_STATUS_TOUCH_PANEL_PRESENT 24 +#define BM_LRADC_STATUS_TOUCH_PANEL_PRESENT 0x1000000 +#define BF_LRADC_STATUS_TOUCH_PANEL_PRESENT(v) (((v) << 24) & 0x1000000) +#define BP_LRADC_STATUS_CHANNEL7_PRESENT 23 +#define BM_LRADC_STATUS_CHANNEL7_PRESENT 0x800000 +#define BF_LRADC_STATUS_CHANNEL7_PRESENT(v) (((v) << 23) & 0x800000) +#define BP_LRADC_STATUS_CHANNEL6_PRESENT 22 +#define BM_LRADC_STATUS_CHANNEL6_PRESENT 0x400000 +#define BF_LRADC_STATUS_CHANNEL6_PRESENT(v) (((v) << 22) & 0x400000) +#define BP_LRADC_STATUS_CHANNEL5_PRESENT 21 +#define BM_LRADC_STATUS_CHANNEL5_PRESENT 0x200000 +#define BF_LRADC_STATUS_CHANNEL5_PRESENT(v) (((v) << 21) & 0x200000) +#define BP_LRADC_STATUS_CHANNEL4_PRESENT 20 +#define BM_LRADC_STATUS_CHANNEL4_PRESENT 0x100000 +#define BF_LRADC_STATUS_CHANNEL4_PRESENT(v) (((v) << 20) & 0x100000) +#define BP_LRADC_STATUS_CHANNEL3_PRESENT 19 +#define BM_LRADC_STATUS_CHANNEL3_PRESENT 0x80000 +#define BF_LRADC_STATUS_CHANNEL3_PRESENT(v) (((v) << 19) & 0x80000) +#define BP_LRADC_STATUS_CHANNEL2_PRESENT 18 +#define BM_LRADC_STATUS_CHANNEL2_PRESENT 0x40000 +#define BF_LRADC_STATUS_CHANNEL2_PRESENT(v) (((v) << 18) & 0x40000) +#define BP_LRADC_STATUS_CHANNEL1_PRESENT 17 +#define BM_LRADC_STATUS_CHANNEL1_PRESENT 0x20000 +#define BF_LRADC_STATUS_CHANNEL1_PRESENT(v) (((v) << 17) & 0x20000) +#define BP_LRADC_STATUS_CHANNEL0_PRESENT 16 +#define BM_LRADC_STATUS_CHANNEL0_PRESENT 0x10000 +#define BF_LRADC_STATUS_CHANNEL0_PRESENT(v) (((v) << 16) & 0x10000) +#define BP_LRADC_STATUS_TOUCH_DETECT_RAW 0 +#define BM_LRADC_STATUS_TOUCH_DETECT_RAW 0x1 +#define BV_LRADC_STATUS_TOUCH_DETECT_RAW__OPEN 0x0 +#define BV_LRADC_STATUS_TOUCH_DETECT_RAW__HIT 0x1 +#define BF_LRADC_STATUS_TOUCH_DETECT_RAW(v) (((v) << 0) & 0x1) +#define BF_LRADC_STATUS_TOUCH_DETECT_RAW_V(v) ((BV_LRADC_STATUS_TOUCH_DETECT_RAW__##v << 0) & 0x1) + +/** + * Register: HW_LRADC_DEBUG0 + * Address: 0x110 + * SCT: no +*/ +#define HW_LRADC_DEBUG0 (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x110)) +#define BP_LRADC_DEBUG0_READONLY 16 +#define BM_LRADC_DEBUG0_READONLY 0xffff0000 +#define BF_LRADC_DEBUG0_READONLY(v) (((v) << 16) & 0xffff0000) +#define BP_LRADC_DEBUG0_STATE 0 +#define BM_LRADC_DEBUG0_STATE 0xfff +#define BF_LRADC_DEBUG0_STATE(v) (((v) << 0) & 0xfff) + +/** + * Register: HW_LRADC_DEBUG1 + * Address: 0x120 + * SCT: yes +*/ +#define HW_LRADC_DEBUG1 (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x120 + 0x0)) +#define HW_LRADC_DEBUG1_SET (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x120 + 0x4)) +#define HW_LRADC_DEBUG1_CLR (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x120 + 0x8)) +#define HW_LRADC_DEBUG1_TOG (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x120 + 0xc)) +#define BP_LRADC_DEBUG1_REQUEST 16 +#define BM_LRADC_DEBUG1_REQUEST 0xff0000 +#define BF_LRADC_DEBUG1_REQUEST(v) (((v) << 16) & 0xff0000) +#define BP_LRADC_DEBUG1_TESTMODE_COUNT 8 +#define BM_LRADC_DEBUG1_TESTMODE_COUNT 0x1f00 +#define BF_LRADC_DEBUG1_TESTMODE_COUNT(v) (((v) << 8) & 0x1f00) +#define BP_LRADC_DEBUG1_TESTMODE6 2 +#define BM_LRADC_DEBUG1_TESTMODE6 0x4 +#define BV_LRADC_DEBUG1_TESTMODE6__NORMAL 0x0 +#define BV_LRADC_DEBUG1_TESTMODE6__TEST 0x1 +#define BF_LRADC_DEBUG1_TESTMODE6(v) (((v) << 2) & 0x4) +#define BF_LRADC_DEBUG1_TESTMODE6_V(v) ((BV_LRADC_DEBUG1_TESTMODE6__##v << 2) & 0x4) +#define BP_LRADC_DEBUG1_TESTMODE5 1 +#define BM_LRADC_DEBUG1_TESTMODE5 0x2 +#define BV_LRADC_DEBUG1_TESTMODE5__NORMAL 0x0 +#define BV_LRADC_DEBUG1_TESTMODE5__TEST 0x1 +#define BF_LRADC_DEBUG1_TESTMODE5(v) (((v) << 1) & 0x2) +#define BF_LRADC_DEBUG1_TESTMODE5_V(v) ((BV_LRADC_DEBUG1_TESTMODE5__##v << 1) & 0x2) +#define BP_LRADC_DEBUG1_TESTMODE 0 +#define BM_LRADC_DEBUG1_TESTMODE 0x1 +#define BV_LRADC_DEBUG1_TESTMODE__NORMAL 0x0 +#define BV_LRADC_DEBUG1_TESTMODE__TEST 0x1 +#define BF_LRADC_DEBUG1_TESTMODE(v) (((v) << 0) & 0x1) +#define BF_LRADC_DEBUG1_TESTMODE_V(v) ((BV_LRADC_DEBUG1_TESTMODE__##v << 0) & 0x1) + +/** + * Register: HW_LRADC_CONVERSION + * Address: 0x130 + * SCT: yes +*/ +#define HW_LRADC_CONVERSION (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x130 + 0x0)) +#define HW_LRADC_CONVERSION_SET (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x130 + 0x4)) +#define HW_LRADC_CONVERSION_CLR (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x130 + 0x8)) +#define HW_LRADC_CONVERSION_TOG (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x130 + 0xc)) +#define BP_LRADC_CONVERSION_AUTOMATIC 20 +#define BM_LRADC_CONVERSION_AUTOMATIC 0x100000 +#define BV_LRADC_CONVERSION_AUTOMATIC__DISABLE 0x0 +#define BV_LRADC_CONVERSION_AUTOMATIC__ENABLE 0x1 +#define BF_LRADC_CONVERSION_AUTOMATIC(v) (((v) << 20) & 0x100000) +#define BF_LRADC_CONVERSION_AUTOMATIC_V(v) ((BV_LRADC_CONVERSION_AUTOMATIC__##v << 20) & 0x100000) +#define BP_LRADC_CONVERSION_SCALE_FACTOR 16 +#define BM_LRADC_CONVERSION_SCALE_FACTOR 0x30000 +#define BV_LRADC_CONVERSION_SCALE_FACTOR__NIMH 0x0 +#define BV_LRADC_CONVERSION_SCALE_FACTOR__DUAL_NIMH 0x1 +#define BV_LRADC_CONVERSION_SCALE_FACTOR__LI_ION 0x2 +#define BV_LRADC_CONVERSION_SCALE_FACTOR__ALT_LI_ION 0x3 +#define BF_LRADC_CONVERSION_SCALE_FACTOR(v) (((v) << 16) & 0x30000) +#define BF_LRADC_CONVERSION_SCALE_FACTOR_V(v) ((BV_LRADC_CONVERSION_SCALE_FACTOR__##v << 16) & 0x30000) +#define BP_LRADC_CONVERSION_SCALED_BATT_VOLTAGE 0 +#define BM_LRADC_CONVERSION_SCALED_BATT_VOLTAGE 0x3ff +#define BF_LRADC_CONVERSION_SCALED_BATT_VOLTAGE(v) (((v) << 0) & 0x3ff) + +/** + * Register: HW_LRADC_DELAYn + * Address: 0xd0+n*0x10 + * SCT: yes +*/ +#define HW_LRADC_DELAYn(n) (*(volatile unsigned long *)(REGS_LRADC_BASE + 0xd0+(n)*0x10 + 0x0)) +#define HW_LRADC_DELAYn_SET(n) (*(volatile unsigned long *)(REGS_LRADC_BASE + 0xd0+(n)*0x10 + 0x4)) +#define HW_LRADC_DELAYn_CLR(n) (*(volatile unsigned long *)(REGS_LRADC_BASE + 0xd0+(n)*0x10 + 0x8)) +#define HW_LRADC_DELAYn_TOG(n) (*(volatile unsigned long *)(REGS_LRADC_BASE + 0xd0+(n)*0x10 + 0xc)) +#define BP_LRADC_DELAYn_TRIGGER_LRADCS 24 +#define BM_LRADC_DELAYn_TRIGGER_LRADCS 0xff000000 +#define BF_LRADC_DELAYn_TRIGGER_LRADCS(v) (((v) << 24) & 0xff000000) +#define BP_LRADC_DELAYn_KICK 20 +#define BM_LRADC_DELAYn_KICK 0x100000 +#define BF_LRADC_DELAYn_KICK(v) (((v) << 20) & 0x100000) +#define BP_LRADC_DELAYn_TRIGGER_DELAYS 16 +#define BM_LRADC_DELAYn_TRIGGER_DELAYS 0xf0000 +#define BF_LRADC_DELAYn_TRIGGER_DELAYS(v) (((v) << 16) & 0xf0000) +#define BP_LRADC_DELAYn_LOOP_COUNT 11 +#define BM_LRADC_DELAYn_LOOP_COUNT 0xf800 +#define BF_LRADC_DELAYn_LOOP_COUNT(v) (((v) << 11) & 0xf800) +#define BP_LRADC_DELAYn_DELAY 0 +#define BM_LRADC_DELAYn_DELAY 0x7ff +#define BF_LRADC_DELAYn_DELAY(v) (((v) << 0) & 0x7ff) + +/** + * Register: HW_LRADC_CHn + * Address: 0x50+n*0x10 + * SCT: yes +*/ +#define HW_LRADC_CHn(n) (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x50+(n)*0x10 + 0x0)) +#define HW_LRADC_CHn_SET(n) (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x50+(n)*0x10 + 0x4)) +#define HW_LRADC_CHn_CLR(n) (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x50+(n)*0x10 + 0x8)) +#define HW_LRADC_CHn_TOG(n) (*(volatile unsigned long *)(REGS_LRADC_BASE + 0x50+(n)*0x10 + 0xc)) +#define BP_LRADC_CHn_TOGGLE 31 +#define BM_LRADC_CHn_TOGGLE 0x80000000 +#define BF_LRADC_CHn_TOGGLE(v) (((v) << 31) & 0x80000000) +#define BP_LRADC_CHn_ACCUMULATE 29 +#define BM_LRADC_CHn_ACCUMULATE 0x20000000 +#define BF_LRADC_CHn_ACCUMULATE(v) (((v) << 29) & 0x20000000) +#define BP_LRADC_CHn_NUM_SAMPLES 24 +#define BM_LRADC_CHn_NUM_SAMPLES 0x1f000000 +#define BF_LRADC_CHn_NUM_SAMPLES(v) (((v) << 24) & 0x1f000000) +#define BP_LRADC_CHn_VALUE 0 +#define BM_LRADC_CHn_VALUE 0x3ffff +#define BF_LRADC_CHn_VALUE(v) (((v) << 0) & 0x3ffff) + +#endif /* __HEADERGEN__STMP3600__LRADC__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-memcpy.h b/firmware/target/arm/imx233/regs/stmp3600/regs-memcpy.h new file mode 100644 index 0000000000..3ba723eab3 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-memcpy.h @@ -0,0 +1,105 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__MEMCPY__H__ +#define __HEADERGEN__STMP3600__MEMCPY__H__ + +#define REGS_MEMCPY_BASE (0x80014000) + +#define REGS_MEMCPY_VERSION "2.3.0" + +/** + * Register: HW_MEMCPY_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_MEMCPY_CTRL (*(volatile unsigned long *)(REGS_MEMCPY_BASE + 0x0 + 0x0)) +#define HW_MEMCPY_CTRL_SET (*(volatile unsigned long *)(REGS_MEMCPY_BASE + 0x0 + 0x4)) +#define HW_MEMCPY_CTRL_CLR (*(volatile unsigned long *)(REGS_MEMCPY_BASE + 0x0 + 0x8)) +#define HW_MEMCPY_CTRL_TOG (*(volatile unsigned long *)(REGS_MEMCPY_BASE + 0x0 + 0xc)) +#define BP_MEMCPY_CTRL_SFTRST 31 +#define BM_MEMCPY_CTRL_SFTRST 0x80000000 +#define BV_MEMCPY_CTRL_SFTRST__RUN 0x0 +#define BV_MEMCPY_CTRL_SFTRST__RESET 0x1 +#define BF_MEMCPY_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BF_MEMCPY_CTRL_SFTRST_V(v) ((BV_MEMCPY_CTRL_SFTRST__##v << 31) & 0x80000000) +#define BP_MEMCPY_CTRL_CLKGATE 30 +#define BM_MEMCPY_CTRL_CLKGATE 0x40000000 +#define BV_MEMCPY_CTRL_CLKGATE__RUN 0x0 +#define BV_MEMCPY_CTRL_CLKGATE__NO_CLKS 0x1 +#define BF_MEMCPY_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BF_MEMCPY_CTRL_CLKGATE_V(v) ((BV_MEMCPY_CTRL_CLKGATE__##v << 30) & 0x40000000) +#define BP_MEMCPY_CTRL_PRESENT 29 +#define BM_MEMCPY_CTRL_PRESENT 0x20000000 +#define BV_MEMCPY_CTRL_PRESENT__UNAVAILABLE 0x0 +#define BV_MEMCPY_CTRL_PRESENT__AVAILABLE 0x1 +#define BF_MEMCPY_CTRL_PRESENT(v) (((v) << 29) & 0x20000000) +#define BF_MEMCPY_CTRL_PRESENT_V(v) ((BV_MEMCPY_CTRL_PRESENT__##v << 29) & 0x20000000) +#define BP_MEMCPY_CTRL_BURST 16 +#define BM_MEMCPY_CTRL_BURST 0x10000 +#define BF_MEMCPY_CTRL_BURST(v) (((v) << 16) & 0x10000) +#define BP_MEMCPY_CTRL_XFER_SIZE 0 +#define BM_MEMCPY_CTRL_XFER_SIZE 0xffff +#define BF_MEMCPY_CTRL_XFER_SIZE(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_MEMCPY_DATA + * Address: 0x10 + * SCT: yes +*/ +#define HW_MEMCPY_DATA (*(volatile unsigned long *)(REGS_MEMCPY_BASE + 0x10 + 0x0)) +#define HW_MEMCPY_DATA_SET (*(volatile unsigned long *)(REGS_MEMCPY_BASE + 0x10 + 0x4)) +#define HW_MEMCPY_DATA_CLR (*(volatile unsigned long *)(REGS_MEMCPY_BASE + 0x10 + 0x8)) +#define HW_MEMCPY_DATA_TOG (*(volatile unsigned long *)(REGS_MEMCPY_BASE + 0x10 + 0xc)) +#define BP_MEMCPY_DATA_DATA 0 +#define BM_MEMCPY_DATA_DATA 0xffffffff +#define BF_MEMCPY_DATA_DATA(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_MEMCPY_DEBUG + * Address: 0x20 + * SCT: no +*/ +#define HW_MEMCPY_DEBUG (*(volatile unsigned long *)(REGS_MEMCPY_BASE + 0x20)) +#define BP_MEMCPY_DEBUG_DST_END_CMD 30 +#define BM_MEMCPY_DEBUG_DST_END_CMD 0x40000000 +#define BF_MEMCPY_DEBUG_DST_END_CMD(v) (((v) << 30) & 0x40000000) +#define BP_MEMCPY_DEBUG_DST_KICK 29 +#define BM_MEMCPY_DEBUG_DST_KICK 0x20000000 +#define BF_MEMCPY_DEBUG_DST_KICK(v) (((v) << 29) & 0x20000000) +#define BP_MEMCPY_DEBUG_DST_DMA_REQ 28 +#define BM_MEMCPY_DEBUG_DST_DMA_REQ 0x10000000 +#define BF_MEMCPY_DEBUG_DST_DMA_REQ(v) (((v) << 28) & 0x10000000) +#define BP_MEMCPY_DEBUG_SRC_KICK 25 +#define BM_MEMCPY_DEBUG_SRC_KICK 0x2000000 +#define BF_MEMCPY_DEBUG_SRC_KICK(v) (((v) << 25) & 0x2000000) +#define BP_MEMCPY_DEBUG_SRC_DMA_REQ 24 +#define BM_MEMCPY_DEBUG_SRC_DMA_REQ 0x1000000 +#define BF_MEMCPY_DEBUG_SRC_DMA_REQ(v) (((v) << 24) & 0x1000000) +#define BP_MEMCPY_DEBUG_WRITE_STATE 2 +#define BM_MEMCPY_DEBUG_WRITE_STATE 0xc +#define BF_MEMCPY_DEBUG_WRITE_STATE(v) (((v) << 2) & 0xc) +#define BP_MEMCPY_DEBUG_READ_STATE 0 +#define BM_MEMCPY_DEBUG_READ_STATE 0x3 +#define BF_MEMCPY_DEBUG_READ_STATE(v) (((v) << 0) & 0x3) + +#endif /* __HEADERGEN__STMP3600__MEMCPY__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-pinctrl.h b/firmware/target/arm/imx233/regs/stmp3600/regs-pinctrl.h new file mode 100644 index 0000000000..14b6069060 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-pinctrl.h @@ -0,0 +1,213 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__PINCTRL__H__ +#define __HEADERGEN__STMP3600__PINCTRL__H__ + +#define REGS_PINCTRL_BASE (0x80018000) + +#define REGS_PINCTRL_VERSION "2.3.0" + +/** + * Register: HW_PINCTRL_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_PINCTRL_CTRL (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x0 + 0x0)) +#define HW_PINCTRL_CTRL_SET (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x0 + 0x4)) +#define HW_PINCTRL_CTRL_CLR (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x0 + 0x8)) +#define HW_PINCTRL_CTRL_TOG (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x0 + 0xc)) +#define BP_PINCTRL_CTRL_SFTRST 31 +#define BM_PINCTRL_CTRL_SFTRST 0x80000000 +#define BF_PINCTRL_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_PINCTRL_CTRL_CLKGATE 30 +#define BM_PINCTRL_CTRL_CLKGATE 0x40000000 +#define BF_PINCTRL_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_PINCTRL_CTRL_PRESENT3 29 +#define BM_PINCTRL_CTRL_PRESENT3 0x20000000 +#define BF_PINCTRL_CTRL_PRESENT3(v) (((v) << 29) & 0x20000000) +#define BP_PINCTRL_CTRL_PRESENT2 28 +#define BM_PINCTRL_CTRL_PRESENT2 0x10000000 +#define BF_PINCTRL_CTRL_PRESENT2(v) (((v) << 28) & 0x10000000) +#define BP_PINCTRL_CTRL_PRESENT1 27 +#define BM_PINCTRL_CTRL_PRESENT1 0x8000000 +#define BF_PINCTRL_CTRL_PRESENT1(v) (((v) << 27) & 0x8000000) +#define BP_PINCTRL_CTRL_PRESENT0 26 +#define BM_PINCTRL_CTRL_PRESENT0 0x4000000 +#define BF_PINCTRL_CTRL_PRESENT0(v) (((v) << 26) & 0x4000000) +#define BP_PINCTRL_CTRL_IRQOUT3 3 +#define BM_PINCTRL_CTRL_IRQOUT3 0x8 +#define BF_PINCTRL_CTRL_IRQOUT3(v) (((v) << 3) & 0x8) +#define BP_PINCTRL_CTRL_IRQOUT2 2 +#define BM_PINCTRL_CTRL_IRQOUT2 0x4 +#define BF_PINCTRL_CTRL_IRQOUT2(v) (((v) << 2) & 0x4) +#define BP_PINCTRL_CTRL_IRQOUT1 1 +#define BM_PINCTRL_CTRL_IRQOUT1 0x2 +#define BF_PINCTRL_CTRL_IRQOUT1(v) (((v) << 1) & 0x2) +#define BP_PINCTRL_CTRL_IRQOUT0 0 +#define BM_PINCTRL_CTRL_IRQOUT0 0x1 +#define BF_PINCTRL_CTRL_IRQOUT0(v) (((v) << 0) & 0x1) + +/** + * Register: HW_PINCTRL_MUXSELLn + * Address: 0x10+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_MUXSELLn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x10+(n)*0x100 + 0x0)) +#define HW_PINCTRL_MUXSELLn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x10+(n)*0x100 + 0x4)) +#define HW_PINCTRL_MUXSELLn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x10+(n)*0x100 + 0x8)) +#define HW_PINCTRL_MUXSELLn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x10+(n)*0x100 + 0xc)) +#define BP_PINCTRL_MUXSELLn_BITS 0 +#define BM_PINCTRL_MUXSELLn_BITS 0xffffffff +#define BF_PINCTRL_MUXSELLn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_MUXSELHn + * Address: 0x20+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_MUXSELHn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x20+(n)*0x100 + 0x0)) +#define HW_PINCTRL_MUXSELHn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x20+(n)*0x100 + 0x4)) +#define HW_PINCTRL_MUXSELHn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x20+(n)*0x100 + 0x8)) +#define HW_PINCTRL_MUXSELHn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x20+(n)*0x100 + 0xc)) +#define BP_PINCTRL_MUXSELHn_BITS 0 +#define BM_PINCTRL_MUXSELHn_BITS 0xffffffff +#define BF_PINCTRL_MUXSELHn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_DRIVEn + * Address: 0x30+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_DRIVEn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x30+(n)*0x100 + 0x0)) +#define HW_PINCTRL_DRIVEn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x30+(n)*0x100 + 0x4)) +#define HW_PINCTRL_DRIVEn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x30+(n)*0x100 + 0x8)) +#define HW_PINCTRL_DRIVEn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x30+(n)*0x100 + 0xc)) +#define BP_PINCTRL_DRIVEn_BITS 0 +#define BM_PINCTRL_DRIVEn_BITS 0xffffffff +#define BF_PINCTRL_DRIVEn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_DOUTn + * Address: 0x50+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_DOUTn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x50+(n)*0x100 + 0x0)) +#define HW_PINCTRL_DOUTn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x50+(n)*0x100 + 0x4)) +#define HW_PINCTRL_DOUTn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x50+(n)*0x100 + 0x8)) +#define HW_PINCTRL_DOUTn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x50+(n)*0x100 + 0xc)) +#define BP_PINCTRL_DOUTn_BITS 0 +#define BM_PINCTRL_DOUTn_BITS 0xffffffff +#define BF_PINCTRL_DOUTn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_DINn + * Address: 0x60+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_DINn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x60+(n)*0x100 + 0x0)) +#define HW_PINCTRL_DINn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x60+(n)*0x100 + 0x4)) +#define HW_PINCTRL_DINn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x60+(n)*0x100 + 0x8)) +#define HW_PINCTRL_DINn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x60+(n)*0x100 + 0xc)) +#define BP_PINCTRL_DINn_BITS 0 +#define BM_PINCTRL_DINn_BITS 0xffffffff +#define BF_PINCTRL_DINn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_DOEn + * Address: 0x70+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_DOEn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x70+(n)*0x100 + 0x0)) +#define HW_PINCTRL_DOEn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x70+(n)*0x100 + 0x4)) +#define HW_PINCTRL_DOEn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x70+(n)*0x100 + 0x8)) +#define HW_PINCTRL_DOEn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x70+(n)*0x100 + 0xc)) +#define BP_PINCTRL_DOEn_BITS 0 +#define BM_PINCTRL_DOEn_BITS 0xffffffff +#define BF_PINCTRL_DOEn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_PIN2IRQn + * Address: 0x80+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_PIN2IRQn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x80+(n)*0x100 + 0x0)) +#define HW_PINCTRL_PIN2IRQn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x80+(n)*0x100 + 0x4)) +#define HW_PINCTRL_PIN2IRQn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x80+(n)*0x100 + 0x8)) +#define HW_PINCTRL_PIN2IRQn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x80+(n)*0x100 + 0xc)) +#define BP_PINCTRL_PIN2IRQn_BITS 0 +#define BM_PINCTRL_PIN2IRQn_BITS 0xffffffff +#define BF_PINCTRL_PIN2IRQn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_IRQENn + * Address: 0x90+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_IRQENn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x90+(n)*0x100 + 0x0)) +#define HW_PINCTRL_IRQENn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x90+(n)*0x100 + 0x4)) +#define HW_PINCTRL_IRQENn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x90+(n)*0x100 + 0x8)) +#define HW_PINCTRL_IRQENn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0x90+(n)*0x100 + 0xc)) +#define BP_PINCTRL_IRQENn_BITS 0 +#define BM_PINCTRL_IRQENn_BITS 0xffffffff +#define BF_PINCTRL_IRQENn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_IRQLEVELn + * Address: 0xa0+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_IRQLEVELn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xa0+(n)*0x100 + 0x0)) +#define HW_PINCTRL_IRQLEVELn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xa0+(n)*0x100 + 0x4)) +#define HW_PINCTRL_IRQLEVELn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xa0+(n)*0x100 + 0x8)) +#define HW_PINCTRL_IRQLEVELn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xa0+(n)*0x100 + 0xc)) +#define BP_PINCTRL_IRQLEVELn_BITS 0 +#define BM_PINCTRL_IRQLEVELn_BITS 0xffffffff +#define BF_PINCTRL_IRQLEVELn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_IRQPOLn + * Address: 0xb0+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_IRQPOLn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xb0+(n)*0x100 + 0x0)) +#define HW_PINCTRL_IRQPOLn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xb0+(n)*0x100 + 0x4)) +#define HW_PINCTRL_IRQPOLn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xb0+(n)*0x100 + 0x8)) +#define HW_PINCTRL_IRQPOLn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xb0+(n)*0x100 + 0xc)) +#define BP_PINCTRL_IRQPOLn_BITS 0 +#define BM_PINCTRL_IRQPOLn_BITS 0xffffffff +#define BF_PINCTRL_IRQPOLn_BITS(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_PINCTRL_IRQSTATn + * Address: 0xc0+n*0x100 + * SCT: yes +*/ +#define HW_PINCTRL_IRQSTATn(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xc0+(n)*0x100 + 0x0)) +#define HW_PINCTRL_IRQSTATn_SET(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xc0+(n)*0x100 + 0x4)) +#define HW_PINCTRL_IRQSTATn_CLR(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xc0+(n)*0x100 + 0x8)) +#define HW_PINCTRL_IRQSTATn_TOG(n) (*(volatile unsigned long *)(REGS_PINCTRL_BASE + 0xc0+(n)*0x100 + 0xc)) +#define BP_PINCTRL_IRQSTATn_BITS 0 +#define BM_PINCTRL_IRQSTATn_BITS 0xffffffff +#define BF_PINCTRL_IRQSTATn_BITS(v) (((v) << 0) & 0xffffffff) + +#endif /* __HEADERGEN__STMP3600__PINCTRL__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-power.h b/firmware/target/arm/imx233/regs/stmp3600/regs-power.h new file mode 100644 index 0000000000..577a1c6415 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-power.h @@ -0,0 +1,484 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__POWER__H__ +#define __HEADERGEN__STMP3600__POWER__H__ + +#define REGS_POWER_BASE (0x80044000) + +#define REGS_POWER_VERSION "2.3.0" + +/** + * Register: HW_POWER_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_POWER_CTRL (*(volatile unsigned long *)(REGS_POWER_BASE + 0x0 + 0x0)) +#define HW_POWER_CTRL_SET (*(volatile unsigned long *)(REGS_POWER_BASE + 0x0 + 0x4)) +#define HW_POWER_CTRL_CLR (*(volatile unsigned long *)(REGS_POWER_BASE + 0x0 + 0x8)) +#define HW_POWER_CTRL_TOG (*(volatile unsigned long *)(REGS_POWER_BASE + 0x0 + 0xc)) +#define BP_POWER_CTRL_CLKGATE 30 +#define BM_POWER_CTRL_CLKGATE 0x40000000 +#define BF_POWER_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_POWER_CTRL_BATT_BO_IRQ 8 +#define BM_POWER_CTRL_BATT_BO_IRQ 0x100 +#define BF_POWER_CTRL_BATT_BO_IRQ(v) (((v) << 8) & 0x100) +#define BP_POWER_CTRL_ENIRQBATT_BO 7 +#define BM_POWER_CTRL_ENIRQBATT_BO 0x80 +#define BF_POWER_CTRL_ENIRQBATT_BO(v) (((v) << 7) & 0x80) +#define BP_POWER_CTRL_VDDIO_BO_IRQ 6 +#define BM_POWER_CTRL_VDDIO_BO_IRQ 0x40 +#define BF_POWER_CTRL_VDDIO_BO_IRQ(v) (((v) << 6) & 0x40) +#define BP_POWER_CTRL_ENIRQVDDIO_BO 5 +#define BM_POWER_CTRL_ENIRQVDDIO_BO 0x20 +#define BF_POWER_CTRL_ENIRQVDDIO_BO(v) (((v) << 5) & 0x20) +#define BP_POWER_CTRL_VDDD_BO_IRQ 4 +#define BM_POWER_CTRL_VDDD_BO_IRQ 0x10 +#define BF_POWER_CTRL_VDDD_BO_IRQ(v) (((v) << 4) & 0x10) +#define BP_POWER_CTRL_ENIRQVDDD_BO 3 +#define BM_POWER_CTRL_ENIRQVDDD_BO 0x8 +#define BF_POWER_CTRL_ENIRQVDDD_BO(v) (((v) << 3) & 0x8) +#define BP_POWER_CTRL_POLARITY_VDD5V_GT_VDDIO 2 +#define BM_POWER_CTRL_POLARITY_VDD5V_GT_VDDIO 0x4 +#define BF_POWER_CTRL_POLARITY_VDD5V_GT_VDDIO(v) (((v) << 2) & 0x4) +#define BP_POWER_CTRL_VDD5V_GT_VDDIO_IRQ 1 +#define BM_POWER_CTRL_VDD5V_GT_VDDIO_IRQ 0x2 +#define BF_POWER_CTRL_VDD5V_GT_VDDIO_IRQ(v) (((v) << 1) & 0x2) +#define BP_POWER_CTRL_ENIRQ_VDD5V_GT_VDDIO 0 +#define BM_POWER_CTRL_ENIRQ_VDD5V_GT_VDDIO 0x1 +#define BF_POWER_CTRL_ENIRQ_VDD5V_GT_VDDIO(v) (((v) << 0) & 0x1) + +/** + * Register: HW_POWER_5VCTRL + * Address: 0x10 + * SCT: yes +*/ +#define HW_POWER_5VCTRL (*(volatile unsigned long *)(REGS_POWER_BASE + 0x10 + 0x0)) +#define HW_POWER_5VCTRL_SET (*(volatile unsigned long *)(REGS_POWER_BASE + 0x10 + 0x4)) +#define HW_POWER_5VCTRL_CLR (*(volatile unsigned long *)(REGS_POWER_BASE + 0x10 + 0x8)) +#define HW_POWER_5VCTRL_TOG (*(volatile unsigned long *)(REGS_POWER_BASE + 0x10 + 0xc)) +#define BP_POWER_5VCTRL_PWDN_5VBRNOUT 21 +#define BM_POWER_5VCTRL_PWDN_5VBRNOUT 0x200000 +#define BF_POWER_5VCTRL_PWDN_5VBRNOUT(v) (((v) << 21) & 0x200000) +#define BP_POWER_5VCTRL_PWDN_IOBRNOUT 20 +#define BM_POWER_5VCTRL_PWDN_IOBRNOUT 0x100000 +#define BF_POWER_5VCTRL_PWDN_IOBRNOUT(v) (((v) << 20) & 0x100000) +#define BP_POWER_5VCTRL_DISABLE_ILIMIT 19 +#define BM_POWER_5VCTRL_DISABLE_ILIMIT 0x80000 +#define BF_POWER_5VCTRL_DISABLE_ILIMIT(v) (((v) << 19) & 0x80000) +#define BP_POWER_5VCTRL_DCDC_XFER 18 +#define BM_POWER_5VCTRL_DCDC_XFER 0x40000 +#define BF_POWER_5VCTRL_DCDC_XFER(v) (((v) << 18) & 0x40000) +#define BP_POWER_5VCTRL_EN_BATT_PULLDN 17 +#define BM_POWER_5VCTRL_EN_BATT_PULLDN 0x20000 +#define BF_POWER_5VCTRL_EN_BATT_PULLDN(v) (((v) << 17) & 0x20000) +#define BP_POWER_5VCTRL_VBUSVALID_5VDETECT 16 +#define BM_POWER_5VCTRL_VBUSVALID_5VDETECT 0x10000 +#define BF_POWER_5VCTRL_VBUSVALID_5VDETECT(v) (((v) << 16) & 0x10000) +#define BP_POWER_5VCTRL_VBUSVALID_TRSH 8 +#define BM_POWER_5VCTRL_VBUSVALID_TRSH 0x300 +#define BF_POWER_5VCTRL_VBUSVALID_TRSH(v) (((v) << 8) & 0x300) +#define BP_POWER_5VCTRL_USB_SUSPEND_I 7 +#define BM_POWER_5VCTRL_USB_SUSPEND_I 0x80 +#define BF_POWER_5VCTRL_USB_SUSPEND_I(v) (((v) << 7) & 0x80) +#define BP_POWER_5VCTRL_VBUSVALID_TO_B 6 +#define BM_POWER_5VCTRL_VBUSVALID_TO_B 0x40 +#define BF_POWER_5VCTRL_VBUSVALID_TO_B(v) (((v) << 6) & 0x40) +#define BP_POWER_5VCTRL_ILIMIT_EQ_ZERO 5 +#define BM_POWER_5VCTRL_ILIMIT_EQ_ZERO 0x20 +#define BF_POWER_5VCTRL_ILIMIT_EQ_ZERO(v) (((v) << 5) & 0x20) +#define BP_POWER_5VCTRL_OTG_PWRUP_CMPS 4 +#define BM_POWER_5VCTRL_OTG_PWRUP_CMPS 0x10 +#define BF_POWER_5VCTRL_OTG_PWRUP_CMPS(v) (((v) << 4) & 0x10) +#define BP_POWER_5VCTRL_EN_DCDC2 3 +#define BM_POWER_5VCTRL_EN_DCDC2 0x8 +#define BF_POWER_5VCTRL_EN_DCDC2(v) (((v) << 3) & 0x8) +#define BP_POWER_5VCTRL_PWD_VDDD_LINREG 2 +#define BM_POWER_5VCTRL_PWD_VDDD_LINREG 0x4 +#define BF_POWER_5VCTRL_PWD_VDDD_LINREG(v) (((v) << 2) & 0x4) +#define BP_POWER_5VCTRL_EN_DCDC1 1 +#define BM_POWER_5VCTRL_EN_DCDC1 0x2 +#define BF_POWER_5VCTRL_EN_DCDC1(v) (((v) << 1) & 0x2) +#define BP_POWER_5VCTRL_LINREG_OFFSET 0 +#define BM_POWER_5VCTRL_LINREG_OFFSET 0x1 +#define BF_POWER_5VCTRL_LINREG_OFFSET(v) (((v) << 0) & 0x1) + +/** + * Register: HW_POWER_MINPWR + * Address: 0x20 + * SCT: yes +*/ +#define HW_POWER_MINPWR (*(volatile unsigned long *)(REGS_POWER_BASE + 0x20 + 0x0)) +#define HW_POWER_MINPWR_SET (*(volatile unsigned long *)(REGS_POWER_BASE + 0x20 + 0x4)) +#define HW_POWER_MINPWR_CLR (*(volatile unsigned long *)(REGS_POWER_BASE + 0x20 + 0x8)) +#define HW_POWER_MINPWR_TOG (*(volatile unsigned long *)(REGS_POWER_BASE + 0x20 + 0xc)) +#define BP_POWER_MINPWR_TEST_DISCHRG_VBUS 23 +#define BM_POWER_MINPWR_TEST_DISCHRG_VBUS 0x800000 +#define BF_POWER_MINPWR_TEST_DISCHRG_VBUS(v) (((v) << 23) & 0x800000) +#define BP_POWER_MINPWR_TEST_CHRG_VBUS 22 +#define BM_POWER_MINPWR_TEST_CHRG_VBUS 0x400000 +#define BF_POWER_MINPWR_TEST_CHRG_VBUS(v) (((v) << 22) & 0x400000) +#define BP_POWER_MINPWR_DC2_TST 21 +#define BM_POWER_MINPWR_DC2_TST 0x200000 +#define BF_POWER_MINPWR_DC2_TST(v) (((v) << 21) & 0x200000) +#define BP_POWER_MINPWR_DC1_TST 20 +#define BM_POWER_MINPWR_DC1_TST 0x100000 +#define BF_POWER_MINPWR_DC1_TST(v) (((v) << 20) & 0x100000) +#define BP_POWER_MINPWR_PERIPHERALSWOFF 19 +#define BM_POWER_MINPWR_PERIPHERALSWOFF 0x80000 +#define BF_POWER_MINPWR_PERIPHERALSWOFF(v) (((v) << 19) & 0x80000) +#define BP_POWER_MINPWR_TOGGLE_DIF 18 +#define BM_POWER_MINPWR_TOGGLE_DIF 0x40000 +#define BF_POWER_MINPWR_TOGGLE_DIF(v) (((v) << 18) & 0x40000) +#define BP_POWER_MINPWR_DISABLE_VDDIOSTEP 17 +#define BM_POWER_MINPWR_DISABLE_VDDIOSTEP 0x20000 +#define BF_POWER_MINPWR_DISABLE_VDDIOSTEP(v) (((v) << 17) & 0x20000) +#define BP_POWER_MINPWR_DISABLE_VDDSTEP 16 +#define BM_POWER_MINPWR_DISABLE_VDDSTEP 0x10000 +#define BF_POWER_MINPWR_DISABLE_VDDSTEP(v) (((v) << 16) & 0x10000) +#define BP_POWER_MINPWR_SEL_PLLDIV16CLK 9 +#define BM_POWER_MINPWR_SEL_PLLDIV16CLK 0x200 +#define BF_POWER_MINPWR_SEL_PLLDIV16CLK(v) (((v) << 9) & 0x200) +#define BP_POWER_MINPWR_PWD_VDDIOBO 8 +#define BM_POWER_MINPWR_PWD_VDDIOBO 0x100 +#define BF_POWER_MINPWR_PWD_VDDIOBO(v) (((v) << 8) & 0x100) +#define BP_POWER_MINPWR_LESSANA_I 7 +#define BM_POWER_MINPWR_LESSANA_I 0x80 +#define BF_POWER_MINPWR_LESSANA_I(v) (((v) << 7) & 0x80) +#define BP_POWER_MINPWR_DC1_HALFFETS 6 +#define BM_POWER_MINPWR_DC1_HALFFETS 0x40 +#define BF_POWER_MINPWR_DC1_HALFFETS(v) (((v) << 6) & 0x40) +#define BP_POWER_MINPWR_DC2_STOPCLK 5 +#define BM_POWER_MINPWR_DC2_STOPCLK 0x20 +#define BF_POWER_MINPWR_DC2_STOPCLK(v) (((v) << 5) & 0x20) +#define BP_POWER_MINPWR_DC1_STOPCLK 4 +#define BM_POWER_MINPWR_DC1_STOPCLK 0x10 +#define BF_POWER_MINPWR_DC1_STOPCLK(v) (((v) << 4) & 0x10) +#define BP_POWER_MINPWR_EN_DC2_PFM 3 +#define BM_POWER_MINPWR_EN_DC2_PFM 0x8 +#define BF_POWER_MINPWR_EN_DC2_PFM(v) (((v) << 3) & 0x8) +#define BP_POWER_MINPWR_EN_DC1_PFM 2 +#define BM_POWER_MINPWR_EN_DC1_PFM 0x4 +#define BF_POWER_MINPWR_EN_DC1_PFM(v) (((v) << 2) & 0x4) +#define BP_POWER_MINPWR_DC2_HALFCLK 1 +#define BM_POWER_MINPWR_DC2_HALFCLK 0x2 +#define BF_POWER_MINPWR_DC2_HALFCLK(v) (((v) << 1) & 0x2) +#define BP_POWER_MINPWR_DC1_HALFCLK 0 +#define BM_POWER_MINPWR_DC1_HALFCLK 0x1 +#define BF_POWER_MINPWR_DC1_HALFCLK(v) (((v) << 0) & 0x1) + +/** + * Register: HW_POWER_BATTCHRG + * Address: 0x30 + * SCT: yes +*/ +#define HW_POWER_BATTCHRG (*(volatile unsigned long *)(REGS_POWER_BASE + 0x30 + 0x0)) +#define HW_POWER_BATTCHRG_SET (*(volatile unsigned long *)(REGS_POWER_BASE + 0x30 + 0x4)) +#define HW_POWER_BATTCHRG_CLR (*(volatile unsigned long *)(REGS_POWER_BASE + 0x30 + 0x8)) +#define HW_POWER_BATTCHRG_TOG (*(volatile unsigned long *)(REGS_POWER_BASE + 0x30 + 0xc)) +#define BP_POWER_BATTCHRG_CHRG_STS_OFF 19 +#define BM_POWER_BATTCHRG_CHRG_STS_OFF 0x80000 +#define BF_POWER_BATTCHRG_CHRG_STS_OFF(v) (((v) << 19) & 0x80000) +#define BP_POWER_BATTCHRG_LIION_4P1 18 +#define BM_POWER_BATTCHRG_LIION_4P1 0x40000 +#define BF_POWER_BATTCHRG_LIION_4P1(v) (((v) << 18) & 0x40000) +#define BP_POWER_BATTCHRG_USE_EXTERN_R 17 +#define BM_POWER_BATTCHRG_USE_EXTERN_R 0x20000 +#define BF_POWER_BATTCHRG_USE_EXTERN_R(v) (((v) << 17) & 0x20000) +#define BP_POWER_BATTCHRG_PWD_BATTCHRG 16 +#define BM_POWER_BATTCHRG_PWD_BATTCHRG 0x10000 +#define BF_POWER_BATTCHRG_PWD_BATTCHRG(v) (((v) << 16) & 0x10000) +#define BP_POWER_BATTCHRG_STOP_ILIMIT 8 +#define BM_POWER_BATTCHRG_STOP_ILIMIT 0xf00 +#define BF_POWER_BATTCHRG_STOP_ILIMIT(v) (((v) << 8) & 0xf00) +#define BP_POWER_BATTCHRG_BATTCHRG_I 0 +#define BM_POWER_BATTCHRG_BATTCHRG_I 0x3f +#define BF_POWER_BATTCHRG_BATTCHRG_I(v) (((v) << 0) & 0x3f) + +/** + * Register: HW_POWER_VDDCTRL + * Address: 0x40 + * SCT: no +*/ +#define HW_POWER_VDDCTRL (*(volatile unsigned long *)(REGS_POWER_BASE + 0x40)) +#define BP_POWER_VDDCTRL_VDDIO_BO 24 +#define BM_POWER_VDDCTRL_VDDIO_BO 0x1f000000 +#define BF_POWER_VDDCTRL_VDDIO_BO(v) (((v) << 24) & 0x1f000000) +#define BP_POWER_VDDCTRL_VDDIO_TRG 16 +#define BM_POWER_VDDCTRL_VDDIO_TRG 0x1f0000 +#define BF_POWER_VDDCTRL_VDDIO_TRG(v) (((v) << 16) & 0x1f0000) +#define BP_POWER_VDDCTRL_VDDD_BO 8 +#define BM_POWER_VDDCTRL_VDDD_BO 0x1f00 +#define BF_POWER_VDDCTRL_VDDD_BO(v) (((v) << 8) & 0x1f00) +#define BP_POWER_VDDCTRL_VDDD_TRG 0 +#define BM_POWER_VDDCTRL_VDDD_TRG 0x1f +#define BF_POWER_VDDCTRL_VDDD_TRG(v) (((v) << 0) & 0x1f) + +/** + * Register: HW_POWER_DC1MULTOUT + * Address: 0x50 + * SCT: no +*/ +#define HW_POWER_DC1MULTOUT (*(volatile unsigned long *)(REGS_POWER_BASE + 0x50)) +#define BP_POWER_DC1MULTOUT_FUNCV 16 +#define BM_POWER_DC1MULTOUT_FUNCV 0x1ff0000 +#define BF_POWER_DC1MULTOUT_FUNCV(v) (((v) << 16) & 0x1ff0000) +#define BP_POWER_DC1MULTOUT_EN_BATADJ 8 +#define BM_POWER_DC1MULTOUT_EN_BATADJ 0x100 +#define BF_POWER_DC1MULTOUT_EN_BATADJ(v) (((v) << 8) & 0x100) +#define BP_POWER_DC1MULTOUT_ADJTN 0 +#define BM_POWER_DC1MULTOUT_ADJTN 0xf +#define BF_POWER_DC1MULTOUT_ADJTN(v) (((v) << 0) & 0xf) + +/** + * Register: HW_POWER_DC1LIMITS + * Address: 0x60 + * SCT: no +*/ +#define HW_POWER_DC1LIMITS (*(volatile unsigned long *)(REGS_POWER_BASE + 0x60)) +#define BP_POWER_DC1LIMITS_EN_PFETOFF 24 +#define BM_POWER_DC1LIMITS_EN_PFETOFF 0x1000000 +#define BF_POWER_DC1LIMITS_EN_PFETOFF(v) (((v) << 24) & 0x1000000) +#define BP_POWER_DC1LIMITS_POSLIMIT_BOOST 16 +#define BM_POWER_DC1LIMITS_POSLIMIT_BOOST 0x7f0000 +#define BF_POWER_DC1LIMITS_POSLIMIT_BOOST(v) (((v) << 16) & 0x7f0000) +#define BP_POWER_DC1LIMITS_POSLIMIT_BUCK 8 +#define BM_POWER_DC1LIMITS_POSLIMIT_BUCK 0x7f00 +#define BF_POWER_DC1LIMITS_POSLIMIT_BUCK(v) (((v) << 8) & 0x7f00) +#define BP_POWER_DC1LIMITS_NEGLIMIT 0 +#define BM_POWER_DC1LIMITS_NEGLIMIT 0x7f +#define BF_POWER_DC1LIMITS_NEGLIMIT(v) (((v) << 0) & 0x7f) + +/** + * Register: HW_POWER_DC2LIMITS + * Address: 0x70 + * SCT: no +*/ +#define HW_POWER_DC2LIMITS (*(volatile unsigned long *)(REGS_POWER_BASE + 0x70)) +#define BP_POWER_DC2LIMITS_EN_BOOST 24 +#define BM_POWER_DC2LIMITS_EN_BOOST 0x1000000 +#define BF_POWER_DC2LIMITS_EN_BOOST(v) (((v) << 24) & 0x1000000) +#define BP_POWER_DC2LIMITS_POSLIMIT_BOOST 16 +#define BM_POWER_DC2LIMITS_POSLIMIT_BOOST 0x7f0000 +#define BF_POWER_DC2LIMITS_POSLIMIT_BOOST(v) (((v) << 16) & 0x7f0000) +#define BP_POWER_DC2LIMITS_POSLIMIT_BUCK 8 +#define BM_POWER_DC2LIMITS_POSLIMIT_BUCK 0x7f00 +#define BF_POWER_DC2LIMITS_POSLIMIT_BUCK(v) (((v) << 8) & 0x7f00) +#define BP_POWER_DC2LIMITS_NEGLIMIT 0 +#define BM_POWER_DC2LIMITS_NEGLIMIT 0x7f +#define BF_POWER_DC2LIMITS_NEGLIMIT(v) (((v) << 0) & 0x7f) + +/** + * Register: HW_POWER_LOOPCTRL + * Address: 0x80 + * SCT: yes +*/ +#define HW_POWER_LOOPCTRL (*(volatile unsigned long *)(REGS_POWER_BASE + 0x80 + 0x0)) +#define HW_POWER_LOOPCTRL_SET (*(volatile unsigned long *)(REGS_POWER_BASE + 0x80 + 0x4)) +#define HW_POWER_LOOPCTRL_CLR (*(volatile unsigned long *)(REGS_POWER_BASE + 0x80 + 0x8)) +#define HW_POWER_LOOPCTRL_TOG (*(volatile unsigned long *)(REGS_POWER_BASE + 0x80 + 0xc)) +#define BP_POWER_LOOPCTRL_TRAN_NOHYST 30 +#define BM_POWER_LOOPCTRL_TRAN_NOHYST 0x40000000 +#define BF_POWER_LOOPCTRL_TRAN_NOHYST(v) (((v) << 30) & 0x40000000) +#define BP_POWER_LOOPCTRL_HYST_SIGN 29 +#define BM_POWER_LOOPCTRL_HYST_SIGN 0x20000000 +#define BF_POWER_LOOPCTRL_HYST_SIGN(v) (((v) << 29) & 0x20000000) +#define BP_POWER_LOOPCTRL_EN_CMP_HYST 28 +#define BM_POWER_LOOPCTRL_EN_CMP_HYST 0x10000000 +#define BF_POWER_LOOPCTRL_EN_CMP_HYST(v) (((v) << 28) & 0x10000000) +#define BP_POWER_LOOPCTRL_EN_DC2_RCSCALE 27 +#define BM_POWER_LOOPCTRL_EN_DC2_RCSCALE 0x8000000 +#define BF_POWER_LOOPCTRL_EN_DC2_RCSCALE(v) (((v) << 27) & 0x8000000) +#define BP_POWER_LOOPCTRL_EN_DC1_RCSCALE 26 +#define BM_POWER_LOOPCTRL_EN_DC1_RCSCALE 0x4000000 +#define BF_POWER_LOOPCTRL_EN_DC1_RCSCALE(v) (((v) << 26) & 0x4000000) +#define BP_POWER_LOOPCTRL_RC_SIGN 25 +#define BM_POWER_LOOPCTRL_RC_SIGN 0x2000000 +#define BF_POWER_LOOPCTRL_RC_SIGN(v) (((v) << 25) & 0x2000000) +#define BP_POWER_LOOPCTRL_EN_RCSCALE 24 +#define BM_POWER_LOOPCTRL_EN_RCSCALE 0x1000000 +#define BF_POWER_LOOPCTRL_EN_RCSCALE(v) (((v) << 24) & 0x1000000) +#define BP_POWER_LOOPCTRL_DC2_FF 20 +#define BM_POWER_LOOPCTRL_DC2_FF 0x700000 +#define BF_POWER_LOOPCTRL_DC2_FF(v) (((v) << 20) & 0x700000) +#define BP_POWER_LOOPCTRL_DC2_R 16 +#define BM_POWER_LOOPCTRL_DC2_R 0xf0000 +#define BF_POWER_LOOPCTRL_DC2_R(v) (((v) << 16) & 0xf0000) +#define BP_POWER_LOOPCTRL_DC2_C 12 +#define BM_POWER_LOOPCTRL_DC2_C 0x3000 +#define BF_POWER_LOOPCTRL_DC2_C(v) (((v) << 12) & 0x3000) +#define BP_POWER_LOOPCTRL_DC1_FF 8 +#define BM_POWER_LOOPCTRL_DC1_FF 0x700 +#define BF_POWER_LOOPCTRL_DC1_FF(v) (((v) << 8) & 0x700) +#define BP_POWER_LOOPCTRL_DC1_R 4 +#define BM_POWER_LOOPCTRL_DC1_R 0xf0 +#define BF_POWER_LOOPCTRL_DC1_R(v) (((v) << 4) & 0xf0) +#define BP_POWER_LOOPCTRL_DC1_C 0 +#define BM_POWER_LOOPCTRL_DC1_C 0x3 +#define BF_POWER_LOOPCTRL_DC1_C(v) (((v) << 0) & 0x3) + +/** + * Register: HW_POWER_STS + * Address: 0x90 + * SCT: no +*/ +#define HW_POWER_STS (*(volatile unsigned long *)(REGS_POWER_BASE + 0x90)) +#define BP_POWER_STS_BATT_CHRG_PRESENT 31 +#define BM_POWER_STS_BATT_CHRG_PRESENT 0x80000000 +#define BF_POWER_STS_BATT_CHRG_PRESENT(v) (((v) << 31) & 0x80000000) +#define BP_POWER_STS_MODE 20 +#define BM_POWER_STS_MODE 0x300000 +#define BF_POWER_STS_MODE(v) (((v) << 20) & 0x300000) +#define BP_POWER_STS_BATT_BO 16 +#define BM_POWER_STS_BATT_BO 0x10000 +#define BF_POWER_STS_BATT_BO(v) (((v) << 16) & 0x10000) +#define BP_POWER_STS_CHRGSTS 14 +#define BM_POWER_STS_CHRGSTS 0x4000 +#define BF_POWER_STS_CHRGSTS(v) (((v) << 14) & 0x4000) +#define BP_POWER_STS_DC2_OK 13 +#define BM_POWER_STS_DC2_OK 0x2000 +#define BF_POWER_STS_DC2_OK(v) (((v) << 13) & 0x2000) +#define BP_POWER_STS_DC1_OK 12 +#define BM_POWER_STS_DC1_OK 0x1000 +#define BF_POWER_STS_DC1_OK(v) (((v) << 12) & 0x1000) +#define BP_POWER_STS_VDDIO_BO 9 +#define BM_POWER_STS_VDDIO_BO 0x200 +#define BF_POWER_STS_VDDIO_BO(v) (((v) << 9) & 0x200) +#define BP_POWER_STS_VDDD_BO 8 +#define BM_POWER_STS_VDDD_BO 0x100 +#define BF_POWER_STS_VDDD_BO(v) (((v) << 8) & 0x100) +#define BP_POWER_STS_VDD5V_GT_VDDIO 4 +#define BM_POWER_STS_VDD5V_GT_VDDIO 0x10 +#define BF_POWER_STS_VDD5V_GT_VDDIO(v) (((v) << 4) & 0x10) +#define BP_POWER_STS_AVALID 3 +#define BM_POWER_STS_AVALID 0x8 +#define BF_POWER_STS_AVALID(v) (((v) << 3) & 0x8) +#define BP_POWER_STS_BVALID 2 +#define BM_POWER_STS_BVALID 0x4 +#define BF_POWER_STS_BVALID(v) (((v) << 2) & 0x4) +#define BP_POWER_STS_VBUSVALID 1 +#define BM_POWER_STS_VBUSVALID 0x2 +#define BF_POWER_STS_VBUSVALID(v) (((v) << 1) & 0x2) +#define BP_POWER_STS_SESSEND 0 +#define BM_POWER_STS_SESSEND 0x1 +#define BF_POWER_STS_SESSEND(v) (((v) << 0) & 0x1) + +/** + * Register: HW_POWER_SPEEDTEMP + * Address: 0xa0 + * SCT: yes +*/ +#define HW_POWER_SPEEDTEMP (*(volatile unsigned long *)(REGS_POWER_BASE + 0xa0 + 0x0)) +#define HW_POWER_SPEEDTEMP_SET (*(volatile unsigned long *)(REGS_POWER_BASE + 0xa0 + 0x4)) +#define HW_POWER_SPEEDTEMP_CLR (*(volatile unsigned long *)(REGS_POWER_BASE + 0xa0 + 0x8)) +#define HW_POWER_SPEEDTEMP_TOG (*(volatile unsigned long *)(REGS_POWER_BASE + 0xa0 + 0xc)) +#define BP_POWER_SPEEDTEMP_SPEED_STS1 24 +#define BM_POWER_SPEEDTEMP_SPEED_STS1 0xff000000 +#define BF_POWER_SPEEDTEMP_SPEED_STS1(v) (((v) << 24) & 0xff000000) +#define BP_POWER_SPEEDTEMP_SPEED_STS2 16 +#define BM_POWER_SPEEDTEMP_SPEED_STS2 0xff0000 +#define BF_POWER_SPEEDTEMP_SPEED_STS2(v) (((v) << 16) & 0xff0000) +#define BP_POWER_SPEEDTEMP_TEMP_STS 8 +#define BM_POWER_SPEEDTEMP_TEMP_STS 0xf00 +#define BF_POWER_SPEEDTEMP_TEMP_STS(v) (((v) << 8) & 0xf00) +#define BP_POWER_SPEEDTEMP_SPEED_CTRL 4 +#define BM_POWER_SPEEDTEMP_SPEED_CTRL 0x30 +#define BF_POWER_SPEEDTEMP_SPEED_CTRL(v) (((v) << 4) & 0x30) +#define BP_POWER_SPEEDTEMP_TEMP_CTRL 0 +#define BM_POWER_SPEEDTEMP_TEMP_CTRL 0xf +#define BF_POWER_SPEEDTEMP_TEMP_CTRL(v) (((v) << 0) & 0xf) + +/** + * Register: HW_POWER_BATTMONITOR + * Address: 0xb0 + * SCT: no +*/ +#define HW_POWER_BATTMONITOR (*(volatile unsigned long *)(REGS_POWER_BASE + 0xb0)) +#define BP_POWER_BATTMONITOR_BATT_VAL 16 +#define BM_POWER_BATTMONITOR_BATT_VAL 0x3ff0000 +#define BF_POWER_BATTMONITOR_BATT_VAL(v) (((v) << 16) & 0x3ff0000) +#define BP_POWER_BATTMONITOR_PWDN_BATTBRNOUT 9 +#define BM_POWER_BATTMONITOR_PWDN_BATTBRNOUT 0x200 +#define BF_POWER_BATTMONITOR_PWDN_BATTBRNOUT(v) (((v) << 9) & 0x200) +#define BP_POWER_BATTMONITOR_BRWNOUT_PWD 8 +#define BM_POWER_BATTMONITOR_BRWNOUT_PWD 0x100 +#define BF_POWER_BATTMONITOR_BRWNOUT_PWD(v) (((v) << 8) & 0x100) +#define BP_POWER_BATTMONITOR_BRWNOUT_LVL 0 +#define BM_POWER_BATTMONITOR_BRWNOUT_LVL 0xf +#define BF_POWER_BATTMONITOR_BRWNOUT_LVL(v) (((v) << 0) & 0xf) + +/** + * Register: HW_POWER_RESET + * Address: 0xc0 + * SCT: yes +*/ +#define HW_POWER_RESET (*(volatile unsigned long *)(REGS_POWER_BASE + 0xc0 + 0x0)) +#define HW_POWER_RESET_SET (*(volatile unsigned long *)(REGS_POWER_BASE + 0xc0 + 0x4)) +#define HW_POWER_RESET_CLR (*(volatile unsigned long *)(REGS_POWER_BASE + 0xc0 + 0x8)) +#define HW_POWER_RESET_TOG (*(volatile unsigned long *)(REGS_POWER_BASE + 0xc0 + 0xc)) +#define BP_POWER_RESET_UNLOCK 16 +#define BM_POWER_RESET_UNLOCK 0xffff0000 +#define BV_POWER_RESET_UNLOCK__KEY 0x3e77 +#define BF_POWER_RESET_UNLOCK(v) (((v) << 16) & 0xffff0000) +#define BF_POWER_RESET_UNLOCK_V(v) ((BV_POWER_RESET_UNLOCK__##v << 16) & 0xffff0000) +#define BP_POWER_RESET_PWD_OFF 4 +#define BM_POWER_RESET_PWD_OFF 0x10 +#define BF_POWER_RESET_PWD_OFF(v) (((v) << 4) & 0x10) +#define BP_POWER_RESET_POR 3 +#define BM_POWER_RESET_POR 0x8 +#define BF_POWER_RESET_POR(v) (((v) << 3) & 0x8) +#define BP_POWER_RESET_PWD 2 +#define BM_POWER_RESET_PWD 0x4 +#define BF_POWER_RESET_PWD(v) (((v) << 2) & 0x4) +#define BP_POWER_RESET_RST_DIG 1 +#define BM_POWER_RESET_RST_DIG 0x2 +#define BF_POWER_RESET_RST_DIG(v) (((v) << 1) & 0x2) +#define BP_POWER_RESET_RST_ALL 0 +#define BM_POWER_RESET_RST_ALL 0x1 +#define BF_POWER_RESET_RST_ALL(v) (((v) << 0) & 0x1) + +/** + * Register: HW_POWER_DEBUG + * Address: 0xd0 + * SCT: yes +*/ +#define HW_POWER_DEBUG (*(volatile unsigned long *)(REGS_POWER_BASE + 0xd0 + 0x0)) +#define HW_POWER_DEBUG_SET (*(volatile unsigned long *)(REGS_POWER_BASE + 0xd0 + 0x4)) +#define HW_POWER_DEBUG_CLR (*(volatile unsigned long *)(REGS_POWER_BASE + 0xd0 + 0x8)) +#define HW_POWER_DEBUG_TOG (*(volatile unsigned long *)(REGS_POWER_BASE + 0xd0 + 0xc)) +#define BP_POWER_DEBUG_ENCTRLVBUS 4 +#define BM_POWER_DEBUG_ENCTRLVBUS 0x10 +#define BF_POWER_DEBUG_ENCTRLVBUS(v) (((v) << 4) & 0x10) +#define BP_POWER_DEBUG_VBUSVALIDPIOLOCK 3 +#define BM_POWER_DEBUG_VBUSVALIDPIOLOCK 0x8 +#define BF_POWER_DEBUG_VBUSVALIDPIOLOCK(v) (((v) << 3) & 0x8) +#define BP_POWER_DEBUG_AVALIDPIOLOCK 2 +#define BM_POWER_DEBUG_AVALIDPIOLOCK 0x4 +#define BF_POWER_DEBUG_AVALIDPIOLOCK(v) (((v) << 2) & 0x4) +#define BP_POWER_DEBUG_BVALIDPIOLOCK 1 +#define BM_POWER_DEBUG_BVALIDPIOLOCK 0x2 +#define BF_POWER_DEBUG_BVALIDPIOLOCK(v) (((v) << 1) & 0x2) +#define BP_POWER_DEBUG_SESSENDPIOLOCK 0 +#define BM_POWER_DEBUG_SESSENDPIOLOCK 0x1 +#define BF_POWER_DEBUG_SESSENDPIOLOCK(v) (((v) << 0) & 0x1) + +#endif /* __HEADERGEN__STMP3600__POWER__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-pwm.h b/firmware/target/arm/imx233/regs/stmp3600/regs-pwm.h new file mode 100644 index 0000000000..72d456fd10 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-pwm.h @@ -0,0 +1,134 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__PWM__H__ +#define __HEADERGEN__STMP3600__PWM__H__ + +#define REGS_PWM_BASE (0x80064000) + +#define REGS_PWM_VERSION "2.3.0" + +/** + * Register: HW_PWM_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_PWM_CTRL (*(volatile unsigned long *)(REGS_PWM_BASE + 0x0 + 0x0)) +#define HW_PWM_CTRL_SET (*(volatile unsigned long *)(REGS_PWM_BASE + 0x0 + 0x4)) +#define HW_PWM_CTRL_CLR (*(volatile unsigned long *)(REGS_PWM_BASE + 0x0 + 0x8)) +#define HW_PWM_CTRL_TOG (*(volatile unsigned long *)(REGS_PWM_BASE + 0x0 + 0xc)) +#define BP_PWM_CTRL_SFTRST 31 +#define BM_PWM_CTRL_SFTRST 0x80000000 +#define BF_PWM_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_PWM_CTRL_CLKGATE 30 +#define BM_PWM_CTRL_CLKGATE 0x40000000 +#define BF_PWM_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_PWM_CTRL_PWM4_PRESENT 29 +#define BM_PWM_CTRL_PWM4_PRESENT 0x20000000 +#define BF_PWM_CTRL_PWM4_PRESENT(v) (((v) << 29) & 0x20000000) +#define BP_PWM_CTRL_PWM3_PRESENT 28 +#define BM_PWM_CTRL_PWM3_PRESENT 0x10000000 +#define BF_PWM_CTRL_PWM3_PRESENT(v) (((v) << 28) & 0x10000000) +#define BP_PWM_CTRL_PWM2_PRESENT 27 +#define BM_PWM_CTRL_PWM2_PRESENT 0x8000000 +#define BF_PWM_CTRL_PWM2_PRESENT(v) (((v) << 27) & 0x8000000) +#define BP_PWM_CTRL_PWM1_PRESENT 26 +#define BM_PWM_CTRL_PWM1_PRESENT 0x4000000 +#define BF_PWM_CTRL_PWM1_PRESENT(v) (((v) << 26) & 0x4000000) +#define BP_PWM_CTRL_PWM0_PRESENT 25 +#define BM_PWM_CTRL_PWM0_PRESENT 0x2000000 +#define BF_PWM_CTRL_PWM0_PRESENT(v) (((v) << 25) & 0x2000000) +#define BP_PWM_CTRL_PWM4_ENABLE 4 +#define BM_PWM_CTRL_PWM4_ENABLE 0x10 +#define BF_PWM_CTRL_PWM4_ENABLE(v) (((v) << 4) & 0x10) +#define BP_PWM_CTRL_PWM3_ENABLE 3 +#define BM_PWM_CTRL_PWM3_ENABLE 0x8 +#define BF_PWM_CTRL_PWM3_ENABLE(v) (((v) << 3) & 0x8) +#define BP_PWM_CTRL_PWM2_ENABLE 2 +#define BM_PWM_CTRL_PWM2_ENABLE 0x4 +#define BF_PWM_CTRL_PWM2_ENABLE(v) (((v) << 2) & 0x4) +#define BP_PWM_CTRL_PWM1_ENABLE 1 +#define BM_PWM_CTRL_PWM1_ENABLE 0x2 +#define BF_PWM_CTRL_PWM1_ENABLE(v) (((v) << 1) & 0x2) +#define BP_PWM_CTRL_PWM0_ENABLE 0 +#define BM_PWM_CTRL_PWM0_ENABLE 0x1 +#define BF_PWM_CTRL_PWM0_ENABLE(v) (((v) << 0) & 0x1) + +/** + * Register: HW_PWM_ACTIVEn + * Address: 0x10+n*0x20 + * SCT: yes +*/ +#define HW_PWM_ACTIVEn(n) (*(volatile unsigned long *)(REGS_PWM_BASE + 0x10+(n)*0x20 + 0x0)) +#define HW_PWM_ACTIVEn_SET(n) (*(volatile unsigned long *)(REGS_PWM_BASE + 0x10+(n)*0x20 + 0x4)) +#define HW_PWM_ACTIVEn_CLR(n) (*(volatile unsigned long *)(REGS_PWM_BASE + 0x10+(n)*0x20 + 0x8)) +#define HW_PWM_ACTIVEn_TOG(n) (*(volatile unsigned long *)(REGS_PWM_BASE + 0x10+(n)*0x20 + 0xc)) +#define BP_PWM_ACTIVEn_INACTIVE 16 +#define BM_PWM_ACTIVEn_INACTIVE 0xffff0000 +#define BF_PWM_ACTIVEn_INACTIVE(v) (((v) << 16) & 0xffff0000) +#define BP_PWM_ACTIVEn_ACTIVE 0 +#define BM_PWM_ACTIVEn_ACTIVE 0xffff +#define BF_PWM_ACTIVEn_ACTIVE(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_PWM_PERIODn + * Address: 0x20+n*0x20 + * SCT: yes +*/ +#define HW_PWM_PERIODn(n) (*(volatile unsigned long *)(REGS_PWM_BASE + 0x20+(n)*0x20 + 0x0)) +#define HW_PWM_PERIODn_SET(n) (*(volatile unsigned long *)(REGS_PWM_BASE + 0x20+(n)*0x20 + 0x4)) +#define HW_PWM_PERIODn_CLR(n) (*(volatile unsigned long *)(REGS_PWM_BASE + 0x20+(n)*0x20 + 0x8)) +#define HW_PWM_PERIODn_TOG(n) (*(volatile unsigned long *)(REGS_PWM_BASE + 0x20+(n)*0x20 + 0xc)) +#define BP_PWM_PERIODn_MATT 23 +#define BM_PWM_PERIODn_MATT 0x800000 +#define BF_PWM_PERIODn_MATT(v) (((v) << 23) & 0x800000) +#define BP_PWM_PERIODn_CDIV 20 +#define BM_PWM_PERIODn_CDIV 0x700000 +#define BV_PWM_PERIODn_CDIV__DIV_1 0x0 +#define BV_PWM_PERIODn_CDIV__DIV_2 0x1 +#define BV_PWM_PERIODn_CDIV__DIV_4 0x2 +#define BV_PWM_PERIODn_CDIV__DIV_8 0x3 +#define BV_PWM_PERIODn_CDIV__DIV_16 0x4 +#define BV_PWM_PERIODn_CDIV__DIV_64 0x5 +#define BV_PWM_PERIODn_CDIV__DIV_256 0x6 +#define BV_PWM_PERIODn_CDIV__DIV_1024 0x7 +#define BF_PWM_PERIODn_CDIV(v) (((v) << 20) & 0x700000) +#define BF_PWM_PERIODn_CDIV_V(v) ((BV_PWM_PERIODn_CDIV__##v << 20) & 0x700000) +#define BP_PWM_PERIODn_INACTIVE_STATE 18 +#define BM_PWM_PERIODn_INACTIVE_STATE 0xc0000 +#define BV_PWM_PERIODn_INACTIVE_STATE__HI_Z 0x0 +#define BV_PWM_PERIODn_INACTIVE_STATE__0 0x2 +#define BV_PWM_PERIODn_INACTIVE_STATE__1 0x3 +#define BF_PWM_PERIODn_INACTIVE_STATE(v) (((v) << 18) & 0xc0000) +#define BF_PWM_PERIODn_INACTIVE_STATE_V(v) ((BV_PWM_PERIODn_INACTIVE_STATE__##v << 18) & 0xc0000) +#define BP_PWM_PERIODn_ACTIVE_STATE 16 +#define BM_PWM_PERIODn_ACTIVE_STATE 0x30000 +#define BV_PWM_PERIODn_ACTIVE_STATE__HI_Z 0x0 +#define BV_PWM_PERIODn_ACTIVE_STATE__0 0x2 +#define BV_PWM_PERIODn_ACTIVE_STATE__1 0x3 +#define BF_PWM_PERIODn_ACTIVE_STATE(v) (((v) << 16) & 0x30000) +#define BF_PWM_PERIODn_ACTIVE_STATE_V(v) ((BV_PWM_PERIODn_ACTIVE_STATE__##v << 16) & 0x30000) +#define BP_PWM_PERIODn_PERIOD 0 +#define BM_PWM_PERIODn_PERIOD 0xffff +#define BF_PWM_PERIODn_PERIOD(v) (((v) << 0) & 0xffff) + +#endif /* __HEADERGEN__STMP3600__PWM__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-rtc.h b/firmware/target/arm/imx233/regs/stmp3600/regs-rtc.h new file mode 100644 index 0000000000..8661e75706 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-rtc.h @@ -0,0 +1,304 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__RTC__H__ +#define __HEADERGEN__STMP3600__RTC__H__ + +#define REGS_RTC_BASE (0x8005c000) + +#define REGS_RTC_VERSION "2.3.0" + +/** + * Register: HW_RTC_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_RTC_CTRL (*(volatile unsigned long *)(REGS_RTC_BASE + 0x0 + 0x0)) +#define HW_RTC_CTRL_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x0 + 0x4)) +#define HW_RTC_CTRL_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x0 + 0x8)) +#define HW_RTC_CTRL_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x0 + 0xc)) +#define BP_RTC_CTRL_SFTRST 31 +#define BM_RTC_CTRL_SFTRST 0x80000000 +#define BF_RTC_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_RTC_CTRL_CLKGATE 30 +#define BM_RTC_CTRL_CLKGATE 0x40000000 +#define BF_RTC_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_RTC_CTRL_CLKDIV 24 +#define BM_RTC_CTRL_CLKDIV 0xf000000 +#define BF_RTC_CTRL_CLKDIV(v) (((v) << 24) & 0xf000000) +#define BP_RTC_CTRL_SUPPRESS_COPY2ANALOG 6 +#define BM_RTC_CTRL_SUPPRESS_COPY2ANALOG 0x40 +#define BV_RTC_CTRL_SUPPRESS_COPY2ANALOG__NORMAL 0x0 +#define BV_RTC_CTRL_SUPPRESS_COPY2ANALOG__NO_COPY 0x1 +#define BF_RTC_CTRL_SUPPRESS_COPY2ANALOG(v) (((v) << 6) & 0x40) +#define BF_RTC_CTRL_SUPPRESS_COPY2ANALOG_V(v) ((BV_RTC_CTRL_SUPPRESS_COPY2ANALOG__##v << 6) & 0x40) +#define BP_RTC_CTRL_FORCE_UPDATE 5 +#define BM_RTC_CTRL_FORCE_UPDATE 0x20 +#define BV_RTC_CTRL_FORCE_UPDATE__NORMAL 0x0 +#define BV_RTC_CTRL_FORCE_UPDATE__FORCE_COPY 0x1 +#define BF_RTC_CTRL_FORCE_UPDATE(v) (((v) << 5) & 0x20) +#define BF_RTC_CTRL_FORCE_UPDATE_V(v) ((BV_RTC_CTRL_FORCE_UPDATE__##v << 5) & 0x20) +#define BP_RTC_CTRL_WATCHDOGEN 4 +#define BM_RTC_CTRL_WATCHDOGEN 0x10 +#define BF_RTC_CTRL_WATCHDOGEN(v) (((v) << 4) & 0x10) +#define BP_RTC_CTRL_ONEMSEC_IRQ 3 +#define BM_RTC_CTRL_ONEMSEC_IRQ 0x8 +#define BF_RTC_CTRL_ONEMSEC_IRQ(v) (((v) << 3) & 0x8) +#define BP_RTC_CTRL_ALARM_IRQ 2 +#define BM_RTC_CTRL_ALARM_IRQ 0x4 +#define BF_RTC_CTRL_ALARM_IRQ(v) (((v) << 2) & 0x4) +#define BP_RTC_CTRL_ONEMSEC_IRQ_EN 1 +#define BM_RTC_CTRL_ONEMSEC_IRQ_EN 0x2 +#define BF_RTC_CTRL_ONEMSEC_IRQ_EN(v) (((v) << 1) & 0x2) +#define BP_RTC_CTRL_ALARM_IRQ_EN 0 +#define BM_RTC_CTRL_ALARM_IRQ_EN 0x1 +#define BF_RTC_CTRL_ALARM_IRQ_EN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_RTC_STAT + * Address: 0x10 + * SCT: no +*/ +#define HW_RTC_STAT (*(volatile unsigned long *)(REGS_RTC_BASE + 0x10)) +#define BP_RTC_STAT_RTC_PRESENT 31 +#define BM_RTC_STAT_RTC_PRESENT 0x80000000 +#define BF_RTC_STAT_RTC_PRESENT(v) (((v) << 31) & 0x80000000) +#define BP_RTC_STAT_ALARM_PRESENT 30 +#define BM_RTC_STAT_ALARM_PRESENT 0x40000000 +#define BF_RTC_STAT_ALARM_PRESENT(v) (((v) << 30) & 0x40000000) +#define BP_RTC_STAT_WATCHDOG_PRESENT 29 +#define BM_RTC_STAT_WATCHDOG_PRESENT 0x20000000 +#define BF_RTC_STAT_WATCHDOG_PRESENT(v) (((v) << 29) & 0x20000000) +#define BP_RTC_STAT_XTAL32768_PRESENT 28 +#define BM_RTC_STAT_XTAL32768_PRESENT 0x10000000 +#define BF_RTC_STAT_XTAL32768_PRESENT(v) (((v) << 28) & 0x10000000) +#define BP_RTC_STAT_STALE_REGS 16 +#define BM_RTC_STAT_STALE_REGS 0x3f0000 +#define BF_RTC_STAT_STALE_REGS(v) (((v) << 16) & 0x3f0000) +#define BP_RTC_STAT_NEW_REGS 8 +#define BM_RTC_STAT_NEW_REGS 0x3f00 +#define BF_RTC_STAT_NEW_REGS(v) (((v) << 8) & 0x3f00) +#define BP_RTC_STAT_FUSE_UNLOCK 1 +#define BM_RTC_STAT_FUSE_UNLOCK 0x2 +#define BF_RTC_STAT_FUSE_UNLOCK(v) (((v) << 1) & 0x2) +#define BP_RTC_STAT_FUSE_DONE 0 +#define BM_RTC_STAT_FUSE_DONE 0x1 +#define BF_RTC_STAT_FUSE_DONE(v) (((v) << 0) & 0x1) + +/** + * Register: HW_RTC_MILLISECONDS + * Address: 0x20 + * SCT: yes +*/ +#define HW_RTC_MILLISECONDS (*(volatile unsigned long *)(REGS_RTC_BASE + 0x20 + 0x0)) +#define HW_RTC_MILLISECONDS_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x20 + 0x4)) +#define HW_RTC_MILLISECONDS_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x20 + 0x8)) +#define HW_RTC_MILLISECONDS_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x20 + 0xc)) +#define BP_RTC_MILLISECONDS_COUNT 0 +#define BM_RTC_MILLISECONDS_COUNT 0xffffffff +#define BF_RTC_MILLISECONDS_COUNT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_RTC_SECONDS + * Address: 0x30 + * SCT: yes +*/ +#define HW_RTC_SECONDS (*(volatile unsigned long *)(REGS_RTC_BASE + 0x30 + 0x0)) +#define HW_RTC_SECONDS_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x30 + 0x4)) +#define HW_RTC_SECONDS_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x30 + 0x8)) +#define HW_RTC_SECONDS_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x30 + 0xc)) +#define BP_RTC_SECONDS_COUNT 0 +#define BM_RTC_SECONDS_COUNT 0xffffffff +#define BF_RTC_SECONDS_COUNT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_RTC_ALARM + * Address: 0x40 + * SCT: yes +*/ +#define HW_RTC_ALARM (*(volatile unsigned long *)(REGS_RTC_BASE + 0x40 + 0x0)) +#define HW_RTC_ALARM_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x40 + 0x4)) +#define HW_RTC_ALARM_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x40 + 0x8)) +#define HW_RTC_ALARM_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x40 + 0xc)) +#define BP_RTC_ALARM_VALUE 0 +#define BM_RTC_ALARM_VALUE 0xffffffff +#define BF_RTC_ALARM_VALUE(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_RTC_WATCHDOG + * Address: 0x50 + * SCT: yes +*/ +#define HW_RTC_WATCHDOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x50 + 0x0)) +#define HW_RTC_WATCHDOG_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x50 + 0x4)) +#define HW_RTC_WATCHDOG_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x50 + 0x8)) +#define HW_RTC_WATCHDOG_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x50 + 0xc)) +#define BP_RTC_WATCHDOG_COUNT 0 +#define BM_RTC_WATCHDOG_COUNT 0xffffffff +#define BF_RTC_WATCHDOG_COUNT(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_RTC_PERSISTENT0 + * Address: 0x60 + * SCT: yes +*/ +#define HW_RTC_PERSISTENT0 (*(volatile unsigned long *)(REGS_RTC_BASE + 0x60 + 0x0)) +#define HW_RTC_PERSISTENT0_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x60 + 0x4)) +#define HW_RTC_PERSISTENT0_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x60 + 0x8)) +#define HW_RTC_PERSISTENT0_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x60 + 0xc)) +#define BP_RTC_PERSISTENT0_GENERAL 16 +#define BM_RTC_PERSISTENT0_GENERAL 0xffff0000 +#define BV_RTC_PERSISTENT0_GENERAL__SDRAM_BOOT 0x8000 +#define BV_RTC_PERSISTENT0_GENERAL__ENUMERATE_500MA_TWICE 0x4000 +#define BV_RTC_PERSISTENT0_GENERAL__USB_BOOT_PLAYER_MODE 0x2000 +#define BV_RTC_PERSISTENT0_GENERAL__SKIP_CHECKDISK 0x1000 +#define BV_RTC_PERSISTENT0_GENERAL__USB_LOW_POWER_MODE 0x800 +#define BV_RTC_PERSISTENT0_GENERAL__OTG_HNP_BIT 0x400 +#define BV_RTC_PERSISTENT0_GENERAL__OTG_ATL_ROLE_BIT 0x200 +#define BV_RTC_PERSISTENT0_GENERAL__SDRAM_CS_HI 0x100 +#define BV_RTC_PERSISTENT0_GENERAL__SDRAM_CS_LO 0x80 +#define BV_RTC_PERSISTENT0_GENERAL__SDRAM_NDX_3 0x40 +#define BV_RTC_PERSISTENT0_GENERAL__SDRAM_NDX_2 0x20 +#define BV_RTC_PERSISTENT0_GENERAL__SDRAM_NDX_1 0x10 +#define BV_RTC_PERSISTENT0_GENERAL__SDRAM_NDX_0 0x8 +#define BV_RTC_PERSISTENT0_GENERAL__ETM_ENABLE 0x4 +#define BF_RTC_PERSISTENT0_GENERAL(v) (((v) << 16) & 0xffff0000) +#define BF_RTC_PERSISTENT0_GENERAL_V(v) ((BV_RTC_PERSISTENT0_GENERAL__##v << 16) & 0xffff0000) +#define BP_RTC_PERSISTENT0_DCDC_CTRL 6 +#define BM_RTC_PERSISTENT0_DCDC_CTRL 0xffc0 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__SD_PRESENT 0x200 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__LOWBAT_3P0 0x100 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__SELFBIAS_PWRUP 0x80 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__AUTO_RESTART 0x40 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__DETECT_LOWBAT 0x20 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__DROP_BIAS1 0x10 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__DROP_BIAS2 0x8 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__SPARE 0x4 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__DISABLE_XTALSTOP 0x2 +#define BV_RTC_PERSISTENT0_DCDC_CTRL__SPARE2 0x1 +#define BF_RTC_PERSISTENT0_DCDC_CTRL(v) (((v) << 6) & 0xffc0) +#define BF_RTC_PERSISTENT0_DCDC_CTRL_V(v) ((BV_RTC_PERSISTENT0_DCDC_CTRL__##v << 6) & 0xffc0) +#define BP_RTC_PERSISTENT0_XTAL32_PDOWN 5 +#define BM_RTC_PERSISTENT0_XTAL32_PDOWN 0x20 +#define BF_RTC_PERSISTENT0_XTAL32_PDOWN(v) (((v) << 5) & 0x20) +#define BP_RTC_PERSISTENT0_XTAL24_PDOWN 4 +#define BM_RTC_PERSISTENT0_XTAL24_PDOWN 0x10 +#define BF_RTC_PERSISTENT0_XTAL24_PDOWN(v) (((v) << 4) & 0x10) +#define BP_RTC_PERSISTENT0_ALARM_WAKE_EN 3 +#define BM_RTC_PERSISTENT0_ALARM_WAKE_EN 0x8 +#define BF_RTC_PERSISTENT0_ALARM_WAKE_EN(v) (((v) << 3) & 0x8) +#define BP_RTC_PERSISTENT0_ALARM_EN 2 +#define BM_RTC_PERSISTENT0_ALARM_EN 0x4 +#define BF_RTC_PERSISTENT0_ALARM_EN(v) (((v) << 2) & 0x4) +#define BP_RTC_PERSISTENT0_ALARM_WAKE 1 +#define BM_RTC_PERSISTENT0_ALARM_WAKE 0x2 +#define BF_RTC_PERSISTENT0_ALARM_WAKE(v) (((v) << 1) & 0x2) +#define BP_RTC_PERSISTENT0_CLOCKSOURCE 0 +#define BM_RTC_PERSISTENT0_CLOCKSOURCE 0x1 +#define BF_RTC_PERSISTENT0_CLOCKSOURCE(v) (((v) << 0) & 0x1) + +/** + * Register: HW_RTC_PERSISTENT1 + * Address: 0x70 + * SCT: yes +*/ +#define HW_RTC_PERSISTENT1 (*(volatile unsigned long *)(REGS_RTC_BASE + 0x70 + 0x0)) +#define HW_RTC_PERSISTENT1_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x70 + 0x4)) +#define HW_RTC_PERSISTENT1_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x70 + 0x8)) +#define HW_RTC_PERSISTENT1_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x70 + 0xc)) +#define BP_RTC_PERSISTENT1_GENERAL 0 +#define BM_RTC_PERSISTENT1_GENERAL 0xffffffff +#define BF_RTC_PERSISTENT1_GENERAL(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_RTC_PERSISTENT2 + * Address: 0x80 + * SCT: yes +*/ +#define HW_RTC_PERSISTENT2 (*(volatile unsigned long *)(REGS_RTC_BASE + 0x80 + 0x0)) +#define HW_RTC_PERSISTENT2_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x80 + 0x4)) +#define HW_RTC_PERSISTENT2_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x80 + 0x8)) +#define HW_RTC_PERSISTENT2_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x80 + 0xc)) +#define BP_RTC_PERSISTENT2_SRAM_LO 0 +#define BM_RTC_PERSISTENT2_SRAM_LO 0xffffffff +#define BV_RTC_PERSISTENT2_SRAM_LO__WARM_BOOT 0x80000000 +#define BF_RTC_PERSISTENT2_SRAM_LO(v) (((v) << 0) & 0xffffffff) +#define BF_RTC_PERSISTENT2_SRAM_LO_V(v) ((BV_RTC_PERSISTENT2_SRAM_LO__##v << 0) & 0xffffffff) + +/** + * Register: HW_RTC_PERSISTENT3 + * Address: 0x90 + * SCT: yes +*/ +#define HW_RTC_PERSISTENT3 (*(volatile unsigned long *)(REGS_RTC_BASE + 0x90 + 0x0)) +#define HW_RTC_PERSISTENT3_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x90 + 0x4)) +#define HW_RTC_PERSISTENT3_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x90 + 0x8)) +#define HW_RTC_PERSISTENT3_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x90 + 0xc)) +#define BP_RTC_PERSISTENT3_SRAM_HI 0 +#define BM_RTC_PERSISTENT3_SRAM_HI 0xffffffff +#define BF_RTC_PERSISTENT3_SRAM_HI(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_RTC_DEBUG + * Address: 0xa0 + * SCT: yes +*/ +#define HW_RTC_DEBUG (*(volatile unsigned long *)(REGS_RTC_BASE + 0xa0 + 0x0)) +#define HW_RTC_DEBUG_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0xa0 + 0x4)) +#define HW_RTC_DEBUG_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0xa0 + 0x8)) +#define HW_RTC_DEBUG_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0xa0 + 0xc)) +#define BP_RTC_DEBUG_WATCHDOG_RESET_MASK 1 +#define BM_RTC_DEBUG_WATCHDOG_RESET_MASK 0x2 +#define BF_RTC_DEBUG_WATCHDOG_RESET_MASK(v) (((v) << 1) & 0x2) +#define BP_RTC_DEBUG_WATCHDOG_RESET 0 +#define BM_RTC_DEBUG_WATCHDOG_RESET 0x1 +#define BF_RTC_DEBUG_WATCHDOG_RESET(v) (((v) << 0) & 0x1) + +/** + * Register: HW_RTC_UNLOCK + * Address: 0x200 + * SCT: yes +*/ +#define HW_RTC_UNLOCK (*(volatile unsigned long *)(REGS_RTC_BASE + 0x200 + 0x0)) +#define HW_RTC_UNLOCK_SET (*(volatile unsigned long *)(REGS_RTC_BASE + 0x200 + 0x4)) +#define HW_RTC_UNLOCK_CLR (*(volatile unsigned long *)(REGS_RTC_BASE + 0x200 + 0x8)) +#define HW_RTC_UNLOCK_TOG (*(volatile unsigned long *)(REGS_RTC_BASE + 0x200 + 0xc)) +#define BP_RTC_UNLOCK_KEY 0 +#define BM_RTC_UNLOCK_KEY 0xffffffff +#define BV_RTC_UNLOCK_KEY__VAL 0xc6a83957 +#define BF_RTC_UNLOCK_KEY(v) (((v) << 0) & 0xffffffff) +#define BF_RTC_UNLOCK_KEY_V(v) ((BV_RTC_UNLOCK_KEY__##v << 0) & 0xffffffff) + +/** + * Register: HW_RTC_LASERFUSEn + * Address: 0x300+n*0x10 + * SCT: yes +*/ +#define HW_RTC_LASERFUSEn(n) (*(volatile unsigned long *)(REGS_RTC_BASE + 0x300+(n)*0x10 + 0x0)) +#define HW_RTC_LASERFUSEn_SET(n) (*(volatile unsigned long *)(REGS_RTC_BASE + 0x300+(n)*0x10 + 0x4)) +#define HW_RTC_LASERFUSEn_CLR(n) (*(volatile unsigned long *)(REGS_RTC_BASE + 0x300+(n)*0x10 + 0x8)) +#define HW_RTC_LASERFUSEn_TOG(n) (*(volatile unsigned long *)(REGS_RTC_BASE + 0x300+(n)*0x10 + 0xc)) +#define BP_RTC_LASERFUSEn_BITS 0 +#define BM_RTC_LASERFUSEn_BITS 0xffffffff +#define BF_RTC_LASERFUSEn_BITS(v) (((v) << 0) & 0xffffffff) + +#endif /* __HEADERGEN__STMP3600__RTC__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-spdif.h b/firmware/target/arm/imx233/regs/stmp3600/regs-spdif.h new file mode 100644 index 0000000000..32e88b37cd --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-spdif.h @@ -0,0 +1,165 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__SPDIF__H__ +#define __HEADERGEN__STMP3600__SPDIF__H__ + +#define REGS_SPDIF_BASE (0x80054000) + +#define REGS_SPDIF_VERSION "2.3.0" + +/** + * Register: HW_SPDIF_CTRL + * Address: 0 + * SCT: yes +*/ +#define HW_SPDIF_CTRL (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x0 + 0x0)) +#define HW_SPDIF_CTRL_SET (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x0 + 0x4)) +#define HW_SPDIF_CTRL_CLR (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x0 + 0x8)) +#define HW_SPDIF_CTRL_TOG (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x0 + 0xc)) +#define BP_SPDIF_CTRL_SFTRST 31 +#define BM_SPDIF_CTRL_SFTRST 0x80000000 +#define BF_SPDIF_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_SPDIF_CTRL_CLKGATE 30 +#define BM_SPDIF_CTRL_CLKGATE 0x40000000 +#define BF_SPDIF_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_SPDIF_CTRL_DMAWAIT_COUNT 16 +#define BM_SPDIF_CTRL_DMAWAIT_COUNT 0x1f0000 +#define BF_SPDIF_CTRL_DMAWAIT_COUNT(v) (((v) << 16) & 0x1f0000) +#define BP_SPDIF_CTRL_WAIT_END_XFER 5 +#define BM_SPDIF_CTRL_WAIT_END_XFER 0x20 +#define BF_SPDIF_CTRL_WAIT_END_XFER(v) (((v) << 5) & 0x20) +#define BP_SPDIF_CTRL_WORD_LENGTH 4 +#define BM_SPDIF_CTRL_WORD_LENGTH 0x10 +#define BF_SPDIF_CTRL_WORD_LENGTH(v) (((v) << 4) & 0x10) +#define BP_SPDIF_CTRL_FIFO_UNDERFLOW_IRQ 3 +#define BM_SPDIF_CTRL_FIFO_UNDERFLOW_IRQ 0x8 +#define BF_SPDIF_CTRL_FIFO_UNDERFLOW_IRQ(v) (((v) << 3) & 0x8) +#define BP_SPDIF_CTRL_FIFO_OVERFLOW_IRQ 2 +#define BM_SPDIF_CTRL_FIFO_OVERFLOW_IRQ 0x4 +#define BF_SPDIF_CTRL_FIFO_OVERFLOW_IRQ(v) (((v) << 2) & 0x4) +#define BP_SPDIF_CTRL_FIFO_ERROR_IRQ_EN 1 +#define BM_SPDIF_CTRL_FIFO_ERROR_IRQ_EN 0x2 +#define BF_SPDIF_CTRL_FIFO_ERROR_IRQ_EN(v) (((v) << 1) & 0x2) +#define BP_SPDIF_CTRL_RUN 0 +#define BM_SPDIF_CTRL_RUN 0x1 +#define BF_SPDIF_CTRL_RUN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_SPDIF_STAT + * Address: 0x10 + * SCT: no +*/ +#define HW_SPDIF_STAT (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x10)) +#define BP_SPDIF_STAT_PRESENT 31 +#define BM_SPDIF_STAT_PRESENT 0x80000000 +#define BF_SPDIF_STAT_PRESENT(v) (((v) << 31) & 0x80000000) +#define BP_SPDIF_STAT_END_XFER 0 +#define BM_SPDIF_STAT_END_XFER 0x1 +#define BF_SPDIF_STAT_END_XFER(v) (((v) << 0) & 0x1) + +/** + * Register: HW_SPDIF_FRAMECTRL + * Address: 0x20 + * SCT: yes +*/ +#define HW_SPDIF_FRAMECTRL (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x20 + 0x0)) +#define HW_SPDIF_FRAMECTRL_SET (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x20 + 0x4)) +#define HW_SPDIF_FRAMECTRL_CLR (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x20 + 0x8)) +#define HW_SPDIF_FRAMECTRL_TOG (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x20 + 0xc)) +#define BP_SPDIF_FRAMECTRL_V_CONFIG 17 +#define BM_SPDIF_FRAMECTRL_V_CONFIG 0x20000 +#define BF_SPDIF_FRAMECTRL_V_CONFIG(v) (((v) << 17) & 0x20000) +#define BP_SPDIF_FRAMECTRL_AUTO_MUTE 16 +#define BM_SPDIF_FRAMECTRL_AUTO_MUTE 0x10000 +#define BF_SPDIF_FRAMECTRL_AUTO_MUTE(v) (((v) << 16) & 0x10000) +#define BP_SPDIF_FRAMECTRL_USER_DATA 14 +#define BM_SPDIF_FRAMECTRL_USER_DATA 0x4000 +#define BF_SPDIF_FRAMECTRL_USER_DATA(v) (((v) << 14) & 0x4000) +#define BP_SPDIF_FRAMECTRL_V 13 +#define BM_SPDIF_FRAMECTRL_V 0x2000 +#define BF_SPDIF_FRAMECTRL_V(v) (((v) << 13) & 0x2000) +#define BP_SPDIF_FRAMECTRL_L 12 +#define BM_SPDIF_FRAMECTRL_L 0x1000 +#define BF_SPDIF_FRAMECTRL_L(v) (((v) << 12) & 0x1000) +#define BP_SPDIF_FRAMECTRL_CC 4 +#define BM_SPDIF_FRAMECTRL_CC 0x7f0 +#define BF_SPDIF_FRAMECTRL_CC(v) (((v) << 4) & 0x7f0) +#define BP_SPDIF_FRAMECTRL_PRE 3 +#define BM_SPDIF_FRAMECTRL_PRE 0x8 +#define BF_SPDIF_FRAMECTRL_PRE(v) (((v) << 3) & 0x8) +#define BP_SPDIF_FRAMECTRL_COPY 2 +#define BM_SPDIF_FRAMECTRL_COPY 0x4 +#define BF_SPDIF_FRAMECTRL_COPY(v) (((v) << 2) & 0x4) +#define BP_SPDIF_FRAMECTRL_AUDIO 1 +#define BM_SPDIF_FRAMECTRL_AUDIO 0x2 +#define BF_SPDIF_FRAMECTRL_AUDIO(v) (((v) << 1) & 0x2) +#define BP_SPDIF_FRAMECTRL_PRO 0 +#define BM_SPDIF_FRAMECTRL_PRO 0x1 +#define BF_SPDIF_FRAMECTRL_PRO(v) (((v) << 0) & 0x1) + +/** + * Register: HW_SPDIF_SRR + * Address: 0x30 + * SCT: yes +*/ +#define HW_SPDIF_SRR (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x30 + 0x0)) +#define HW_SPDIF_SRR_SET (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x30 + 0x4)) +#define HW_SPDIF_SRR_CLR (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x30 + 0x8)) +#define HW_SPDIF_SRR_TOG (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x30 + 0xc)) +#define BP_SPDIF_SRR_BASEMULT 28 +#define BM_SPDIF_SRR_BASEMULT 0x70000000 +#define BF_SPDIF_SRR_BASEMULT(v) (((v) << 28) & 0x70000000) +#define BP_SPDIF_SRR_RATE 0 +#define BM_SPDIF_SRR_RATE 0xfffff +#define BF_SPDIF_SRR_RATE(v) (((v) << 0) & 0xfffff) + +/** + * Register: HW_SPDIF_DEBUG + * Address: 0x40 + * SCT: no +*/ +#define HW_SPDIF_DEBUG (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x40)) +#define BP_SPDIF_DEBUG_DMA_PREQ 1 +#define BM_SPDIF_DEBUG_DMA_PREQ 0x2 +#define BF_SPDIF_DEBUG_DMA_PREQ(v) (((v) << 1) & 0x2) +#define BP_SPDIF_DEBUG_FIFO_STATUS 0 +#define BM_SPDIF_DEBUG_FIFO_STATUS 0x1 +#define BF_SPDIF_DEBUG_FIFO_STATUS(v) (((v) << 0) & 0x1) + +/** + * Register: HW_SPDIF_DATA + * Address: 0x50 + * SCT: yes +*/ +#define HW_SPDIF_DATA (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x50 + 0x0)) +#define HW_SPDIF_DATA_SET (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x50 + 0x4)) +#define HW_SPDIF_DATA_CLR (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x50 + 0x8)) +#define HW_SPDIF_DATA_TOG (*(volatile unsigned long *)(REGS_SPDIF_BASE + 0x50 + 0xc)) +#define BP_SPDIF_DATA_HIGH 16 +#define BM_SPDIF_DATA_HIGH 0xffff0000 +#define BF_SPDIF_DATA_HIGH(v) (((v) << 16) & 0xffff0000) +#define BP_SPDIF_DATA_LOW 0 +#define BM_SPDIF_DATA_LOW 0xffff +#define BF_SPDIF_DATA_LOW(v) (((v) << 0) & 0xffff) + +#endif /* __HEADERGEN__STMP3600__SPDIF__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h b/firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h new file mode 100644 index 0000000000..2c589f5256 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h @@ -0,0 +1,541 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__SSP__H__ +#define __HEADERGEN__STMP3600__SSP__H__ + +#define REGS_SSP_BASE (0x80010000) + +#define REGS_SSP_VERSION "2.3.0" + +/** + * Register: HW_SSP_CTRL0 + * Address: 0 + * SCT: yes +*/ +#define HW_SSP_CTRL0 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x0 + 0x0)) +#define HW_SSP_CTRL0_SET (*(volatile unsigned long *)(REGS_SSP_BASE + 0x0 + 0x4)) +#define HW_SSP_CTRL0_CLR (*(volatile unsigned long *)(REGS_SSP_BASE + 0x0 + 0x8)) +#define HW_SSP_CTRL0_TOG (*(volatile unsigned long *)(REGS_SSP_BASE + 0x0 + 0xc)) +#define BP_SSP_CTRL0_SFTRST 31 +#define BM_SSP_CTRL0_SFTRST 0x80000000 +#define BF_SSP_CTRL0_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_SSP_CTRL0_CLKGATE 30 +#define BM_SSP_CTRL0_CLKGATE 0x40000000 +#define BF_SSP_CTRL0_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_SSP_CTRL0_RUN 29 +#define BM_SSP_CTRL0_RUN 0x20000000 +#define BF_SSP_CTRL0_RUN(v) (((v) << 29) & 0x20000000) +#define BP_SSP_CTRL0_HALF_DUPLEX 28 +#define BM_SSP_CTRL0_HALF_DUPLEX 0x10000000 +#define BF_SSP_CTRL0_HALF_DUPLEX(v) (((v) << 28) & 0x10000000) +#define BP_SSP_CTRL0_LOCK_CS 27 +#define BM_SSP_CTRL0_LOCK_CS 0x8000000 +#define BF_SSP_CTRL0_LOCK_CS(v) (((v) << 27) & 0x8000000) +#define BP_SSP_CTRL0_IGNORE_CRC 26 +#define BM_SSP_CTRL0_IGNORE_CRC 0x4000000 +#define BF_SSP_CTRL0_IGNORE_CRC(v) (((v) << 26) & 0x4000000) +#define BP_SSP_CTRL0_READ 25 +#define BM_SSP_CTRL0_READ 0x2000000 +#define BF_SSP_CTRL0_READ(v) (((v) << 25) & 0x2000000) +#define BP_SSP_CTRL0_DATA_XFER 24 +#define BM_SSP_CTRL0_DATA_XFER 0x1000000 +#define BF_SSP_CTRL0_DATA_XFER(v) (((v) << 24) & 0x1000000) +#define BP_SSP_CTRL0_SDIO_IRQ 23 +#define BM_SSP_CTRL0_SDIO_IRQ 0x800000 +#define BF_SSP_CTRL0_SDIO_IRQ(v) (((v) << 23) & 0x800000) +#define BP_SSP_CTRL0_BUS_WIDTH 22 +#define BM_SSP_CTRL0_BUS_WIDTH 0x400000 +#define BV_SSP_CTRL0_BUS_WIDTH__ONE_BIT 0x0 +#define BV_SSP_CTRL0_BUS_WIDTH__FOUR_BIT 0x1 +#define BF_SSP_CTRL0_BUS_WIDTH(v) (((v) << 22) & 0x400000) +#define BF_SSP_CTRL0_BUS_WIDTH_V(v) ((BV_SSP_CTRL0_BUS_WIDTH__##v << 22) & 0x400000) +#define BP_SSP_CTRL0_WAIT_FOR_IRQ 21 +#define BM_SSP_CTRL0_WAIT_FOR_IRQ 0x200000 +#define BF_SSP_CTRL0_WAIT_FOR_IRQ(v) (((v) << 21) & 0x200000) +#define BP_SSP_CTRL0_WAIT_FOR_CMD 20 +#define BM_SSP_CTRL0_WAIT_FOR_CMD 0x100000 +#define BF_SSP_CTRL0_WAIT_FOR_CMD(v) (((v) << 20) & 0x100000) +#define BP_SSP_CTRL0_LONG_RESP 19 +#define BM_SSP_CTRL0_LONG_RESP 0x80000 +#define BF_SSP_CTRL0_LONG_RESP(v) (((v) << 19) & 0x80000) +#define BP_SSP_CTRL0_CHECK_RESP 18 +#define BM_SSP_CTRL0_CHECK_RESP 0x40000 +#define BF_SSP_CTRL0_CHECK_RESP(v) (((v) << 18) & 0x40000) +#define BP_SSP_CTRL0_GET_RESP 17 +#define BM_SSP_CTRL0_GET_RESP 0x20000 +#define BF_SSP_CTRL0_GET_RESP(v) (((v) << 17) & 0x20000) +#define BP_SSP_CTRL0_ENABLE 16 +#define BM_SSP_CTRL0_ENABLE 0x10000 +#define BF_SSP_CTRL0_ENABLE(v) (((v) << 16) & 0x10000) +#define BP_SSP_CTRL0_XFER_COUNT 0 +#define BM_SSP_CTRL0_XFER_COUNT 0xffff +#define BF_SSP_CTRL0_XFER_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_SSP_CMD0 + * Address: 0x10 + * SCT: yes +*/ +#define HW_SSP_CMD0 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x10 + 0x0)) +#define HW_SSP_CMD0_SET (*(volatile unsigned long *)(REGS_SSP_BASE + 0x10 + 0x4)) +#define HW_SSP_CMD0_CLR (*(volatile unsigned long *)(REGS_SSP_BASE + 0x10 + 0x8)) +#define HW_SSP_CMD0_TOG (*(volatile unsigned long *)(REGS_SSP_BASE + 0x10 + 0xc)) +#define BP_SSP_CMD0_CMD 0 +#define BM_SSP_CMD0_CMD 0xff +#define BV_SSP_CMD0_CMD__MMC_GO_IDLE_STATE 0x0 +#define BV_SSP_CMD0_CMD__MMC_SEND_OP_COND 0x1 +#define BV_SSP_CMD0_CMD__MMC_ALL_SEND_CID 0x2 +#define BV_SSP_CMD0_CMD__MMC_SET_RELATIVE_ADDR 0x3 +#define BV_SSP_CMD0_CMD__MMC_SET_DSR 0x4 +#define BV_SSP_CMD0_CMD__MMC_RESERVED_5 0x5 +#define BV_SSP_CMD0_CMD__MMC_SWITCH 0x6 +#define BV_SSP_CMD0_CMD__MMC_SELECT_DESELECT_CARD 0x7 +#define BV_SSP_CMD0_CMD__MMC_SEND_EXT_CSD 0x8 +#define BV_SSP_CMD0_CMD__MMC_SEND_CSD 0x9 +#define BV_SSP_CMD0_CMD__MMC_SEND_CID 0xa +#define BV_SSP_CMD0_CMD__MMC_READ_DAT_UNTIL_STOP 0xb +#define BV_SSP_CMD0_CMD__MMC_STOP_TRANSMISSION 0xc +#define BV_SSP_CMD0_CMD__MMC_SEND_STATUS 0xd +#define BV_SSP_CMD0_CMD__MMC_BUSTEST_R 0xe +#define BV_SSP_CMD0_CMD__MMC_GO_INACTIVE_STATE 0xf +#define BV_SSP_CMD0_CMD__MMC_SET_BLOCKLEN 0x10 +#define BV_SSP_CMD0_CMD__MMC_READ_SINGLE_BLOCK 0x11 +#define BV_SSP_CMD0_CMD__MMC_READ_MULTIPLE_BLOCK 0x12 +#define BV_SSP_CMD0_CMD__MMC_BUSTEST_W 0x13 +#define BV_SSP_CMD0_CMD__MMC_WRITE_DAT_UNTIL_STOP 0x14 +#define BV_SSP_CMD0_CMD__MMC_SET_BLOCK_COUNT 0x17 +#define BV_SSP_CMD0_CMD__MMC_WRITE_BLOCK 0x18 +#define BV_SSP_CMD0_CMD__MMC_WRITE_MULTIPLE_BLOCK 0x19 +#define BV_SSP_CMD0_CMD__MMC_PROGRAM_CID 0x1a +#define BV_SSP_CMD0_CMD__MMC_PROGRAM_CSD 0x1b +#define BV_SSP_CMD0_CMD__MMC_SET_WRITE_PROT 0x1c +#define BV_SSP_CMD0_CMD__MMC_CLR_WRITE_PROT 0x1d +#define BV_SSP_CMD0_CMD__MMC_SEND_WRITE_PROT 0x1e +#define BV_SSP_CMD0_CMD__MMC_ERASE_GROUP_START 0x23 +#define BV_SSP_CMD0_CMD__MMC_ERASE_GROUP_END 0x24 +#define BV_SSP_CMD0_CMD__MMC_ERASE 0x26 +#define BV_SSP_CMD0_CMD__MMC_FAST_IO 0x27 +#define BV_SSP_CMD0_CMD__MMC_GO_IRQ_STATE 0x28 +#define BV_SSP_CMD0_CMD__MMC_LOCK_UNLOCK 0x2a +#define BV_SSP_CMD0_CMD__MMC_APP_CMD 0x37 +#define BV_SSP_CMD0_CMD__MMC_GEN_CMD 0x38 +#define BV_SSP_CMD0_CMD__SD_GO_IDLE_STATE 0x0 +#define BV_SSP_CMD0_CMD__SD_ALL_SEND_CID 0x2 +#define BV_SSP_CMD0_CMD__SD_SEND_RELATIVE_ADDR 0x3 +#define BV_SSP_CMD0_CMD__SD_SET_DSR 0x4 +#define BV_SSP_CMD0_CMD__SD_IO_SEND_OP_COND 0x5 +#define BV_SSP_CMD0_CMD__SD_SELECT_DESELECT_CARD 0x7 +#define BV_SSP_CMD0_CMD__SD_SEND_CSD 0x9 +#define BV_SSP_CMD0_CMD__SD_SEND_CID 0xa +#define BV_SSP_CMD0_CMD__SD_STOP_TRANSMISSION 0xc +#define BV_SSP_CMD0_CMD__SD_SEND_STATUS 0xd +#define BV_SSP_CMD0_CMD__SD_GO_INACTIVE_STATE 0xf +#define BV_SSP_CMD0_CMD__SD_SET_BLOCKLEN 0x10 +#define BV_SSP_CMD0_CMD__SD_READ_SINGLE_BLOCK 0x11 +#define BV_SSP_CMD0_CMD__SD_READ_MULTIPLE_BLOCK 0x12 +#define BV_SSP_CMD0_CMD__SD_WRITE_BLOCK 0x18 +#define BV_SSP_CMD0_CMD__SD_WRITE_MULTIPLE_BLOCK 0x19 +#define BV_SSP_CMD0_CMD__SD_PROGRAM_CSD 0x1b +#define BV_SSP_CMD0_CMD__SD_SET_WRITE_PROT 0x1c +#define BV_SSP_CMD0_CMD__SD_CLR_WRITE_PROT 0x1d +#define BV_SSP_CMD0_CMD__SD_SEND_WRITE_PROT 0x1e +#define BV_SSP_CMD0_CMD__SD_ERASE_WR_BLK_START 0x20 +#define BV_SSP_CMD0_CMD__SD_ERASE_WR_BLK_END 0x21 +#define BV_SSP_CMD0_CMD__SD_ERASE_GROUP_START 0x23 +#define BV_SSP_CMD0_CMD__SD_ERASE_GROUP_END 0x24 +#define BV_SSP_CMD0_CMD__SD_ERASE 0x26 +#define BV_SSP_CMD0_CMD__SD_LOCK_UNLOCK 0x2a +#define BV_SSP_CMD0_CMD__SD_IO_RW_DIRECT 0x34 +#define BV_SSP_CMD0_CMD__SD_IO_RW_EXTENDED 0x35 +#define BV_SSP_CMD0_CMD__SD_APP_CMD 0x37 +#define BV_SSP_CMD0_CMD__SD_GEN_CMD 0x38 +#define BF_SSP_CMD0_CMD(v) (((v) << 0) & 0xff) +#define BF_SSP_CMD0_CMD_V(v) ((BV_SSP_CMD0_CMD__##v << 0) & 0xff) + +/** + * Register: HW_SSP_CMD1 + * Address: 0x20 + * SCT: no +*/ +#define HW_SSP_CMD1 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x20)) +#define BP_SSP_CMD1_CMD_ARG 0 +#define BM_SSP_CMD1_CMD_ARG 0xffffffff +#define BF_SSP_CMD1_CMD_ARG(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_SSP_COMPREF + * Address: 0x30 + * SCT: no +*/ +#define HW_SSP_COMPREF (*(volatile unsigned long *)(REGS_SSP_BASE + 0x30)) +#define BP_SSP_COMPREF_REFERENCE 0 +#define BM_SSP_COMPREF_REFERENCE 0xffffffff +#define BF_SSP_COMPREF_REFERENCE(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_SSP_COMPMASK + * Address: 0x40 + * SCT: no +*/ +#define HW_SSP_COMPMASK (*(volatile unsigned long *)(REGS_SSP_BASE + 0x40)) +#define BP_SSP_COMPMASK_MASK 0 +#define BM_SSP_COMPMASK_MASK 0xffffffff +#define BF_SSP_COMPMASK_MASK(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_SSP_TIMING + * Address: 0x50 + * SCT: no +*/ +#define HW_SSP_TIMING (*(volatile unsigned long *)(REGS_SSP_BASE + 0x50)) +#define BP_SSP_TIMING_TIMEOUT 16 +#define BM_SSP_TIMING_TIMEOUT 0xffff0000 +#define BF_SSP_TIMING_TIMEOUT(v) (((v) << 16) & 0xffff0000) +#define BP_SSP_TIMING_CLOCK_DIVIDE 8 +#define BM_SSP_TIMING_CLOCK_DIVIDE 0xff00 +#define BF_SSP_TIMING_CLOCK_DIVIDE(v) (((v) << 8) & 0xff00) +#define BP_SSP_TIMING_CLOCK_RATE 0 +#define BM_SSP_TIMING_CLOCK_RATE 0xff +#define BF_SSP_TIMING_CLOCK_RATE(v) (((v) << 0) & 0xff) + +/** + * Register: HW_SSP_CTRL1 + * Address: 0x60 + * SCT: yes +*/ +#define HW_SSP_CTRL1 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x60 + 0x0)) +#define HW_SSP_CTRL1_SET (*(volatile unsigned long *)(REGS_SSP_BASE + 0x60 + 0x4)) +#define HW_SSP_CTRL1_CLR (*(volatile unsigned long *)(REGS_SSP_BASE + 0x60 + 0x8)) +#define HW_SSP_CTRL1_TOG (*(volatile unsigned long *)(REGS_SSP_BASE + 0x60 + 0xc)) +#define BP_SSP_CTRL1_SDIO_IRQ 31 +#define BM_SSP_CTRL1_SDIO_IRQ 0x80000000 +#define BF_SSP_CTRL1_SDIO_IRQ(v) (((v) << 31) & 0x80000000) +#define BP_SSP_CTRL1_SDIO_IRQ_EN 30 +#define BM_SSP_CTRL1_SDIO_IRQ_EN 0x40000000 +#define BF_SSP_CTRL1_SDIO_IRQ_EN(v) (((v) << 30) & 0x40000000) +#define BP_SSP_CTRL1_RESP_ERR_IRQ 29 +#define BM_SSP_CTRL1_RESP_ERR_IRQ 0x20000000 +#define BF_SSP_CTRL1_RESP_ERR_IRQ(v) (((v) << 29) & 0x20000000) +#define BP_SSP_CTRL1_RESP_ERR_IRQ_EN 28 +#define BM_SSP_CTRL1_RESP_ERR_IRQ_EN 0x10000000 +#define BF_SSP_CTRL1_RESP_ERR_IRQ_EN(v) (((v) << 28) & 0x10000000) +#define BP_SSP_CTRL1_RESP_TIMEOUT_IRQ 27 +#define BM_SSP_CTRL1_RESP_TIMEOUT_IRQ 0x8000000 +#define BF_SSP_CTRL1_RESP_TIMEOUT_IRQ(v) (((v) << 27) & 0x8000000) +#define BP_SSP_CTRL1_RESP_TIMEOUT_IRQ_EN 26 +#define BM_SSP_CTRL1_RESP_TIMEOUT_IRQ_EN 0x4000000 +#define BF_SSP_CTRL1_RESP_TIMEOUT_IRQ_EN(v) (((v) << 26) & 0x4000000) +#define BP_SSP_CTRL1_DATA_TIMEOUT_IRQ 25 +#define BM_SSP_CTRL1_DATA_TIMEOUT_IRQ 0x2000000 +#define BF_SSP_CTRL1_DATA_TIMEOUT_IRQ(v) (((v) << 25) & 0x2000000) +#define BP_SSP_CTRL1_DATA_TIMEOUT_IRQ_EN 24 +#define BM_SSP_CTRL1_DATA_TIMEOUT_IRQ_EN 0x1000000 +#define BF_SSP_CTRL1_DATA_TIMEOUT_IRQ_EN(v) (((v) << 24) & 0x1000000) +#define BP_SSP_CTRL1_DATA_CRC_IRQ 23 +#define BM_SSP_CTRL1_DATA_CRC_IRQ 0x800000 +#define BF_SSP_CTRL1_DATA_CRC_IRQ(v) (((v) << 23) & 0x800000) +#define BP_SSP_CTRL1_DATA_CRC_IRQ_EN 22 +#define BM_SSP_CTRL1_DATA_CRC_IRQ_EN 0x400000 +#define BF_SSP_CTRL1_DATA_CRC_IRQ_EN(v) (((v) << 22) & 0x400000) +#define BP_SSP_CTRL1_XMIT_IRQ 21 +#define BM_SSP_CTRL1_XMIT_IRQ 0x200000 +#define BF_SSP_CTRL1_XMIT_IRQ(v) (((v) << 21) & 0x200000) +#define BP_SSP_CTRL1_XMIT_IRQ_EN 20 +#define BM_SSP_CTRL1_XMIT_IRQ_EN 0x100000 +#define BF_SSP_CTRL1_XMIT_IRQ_EN(v) (((v) << 20) & 0x100000) +#define BP_SSP_CTRL1_RECV_IRQ 19 +#define BM_SSP_CTRL1_RECV_IRQ 0x80000 +#define BF_SSP_CTRL1_RECV_IRQ(v) (((v) << 19) & 0x80000) +#define BP_SSP_CTRL1_RECV_IRQ_EN 18 +#define BM_SSP_CTRL1_RECV_IRQ_EN 0x40000 +#define BF_SSP_CTRL1_RECV_IRQ_EN(v) (((v) << 18) & 0x40000) +#define BP_SSP_CTRL1_RECV_TIMEOUT_IRQ 17 +#define BM_SSP_CTRL1_RECV_TIMEOUT_IRQ 0x20000 +#define BF_SSP_CTRL1_RECV_TIMEOUT_IRQ(v) (((v) << 17) & 0x20000) +#define BP_SSP_CTRL1_RECV_TIMEOUT_IRQ_EN 16 +#define BM_SSP_CTRL1_RECV_TIMEOUT_IRQ_EN 0x10000 +#define BF_SSP_CTRL1_RECV_TIMEOUT_IRQ_EN(v) (((v) << 16) & 0x10000) +#define BP_SSP_CTRL1_RECV_OVRFLW_IRQ 15 +#define BM_SSP_CTRL1_RECV_OVRFLW_IRQ 0x8000 +#define BF_SSP_CTRL1_RECV_OVRFLW_IRQ(v) (((v) << 15) & 0x8000) +#define BP_SSP_CTRL1_RECV_OVRFLW_IRQ_EN 14 +#define BM_SSP_CTRL1_RECV_OVRFLW_IRQ_EN 0x4000 +#define BF_SSP_CTRL1_RECV_OVRFLW_IRQ_EN(v) (((v) << 14) & 0x4000) +#define BP_SSP_CTRL1_DMA_ENABLE 13 +#define BM_SSP_CTRL1_DMA_ENABLE 0x2000 +#define BF_SSP_CTRL1_DMA_ENABLE(v) (((v) << 13) & 0x2000) +#define BP_SSP_CTRL1_LOOPBACK 12 +#define BM_SSP_CTRL1_LOOPBACK 0x1000 +#define BF_SSP_CTRL1_LOOPBACK(v) (((v) << 12) & 0x1000) +#define BP_SSP_CTRL1_SLAVE_OUT_DISABLE 11 +#define BM_SSP_CTRL1_SLAVE_OUT_DISABLE 0x800 +#define BF_SSP_CTRL1_SLAVE_OUT_DISABLE(v) (((v) << 11) & 0x800) +#define BP_SSP_CTRL1_PHASE 10 +#define BM_SSP_CTRL1_PHASE 0x400 +#define BF_SSP_CTRL1_PHASE(v) (((v) << 10) & 0x400) +#define BP_SSP_CTRL1_POLARITY 9 +#define BM_SSP_CTRL1_POLARITY 0x200 +#define BF_SSP_CTRL1_POLARITY(v) (((v) << 9) & 0x200) +#define BP_SSP_CTRL1_SLAVE_MODE 8 +#define BM_SSP_CTRL1_SLAVE_MODE 0x100 +#define BF_SSP_CTRL1_SLAVE_MODE(v) (((v) << 8) & 0x100) +#define BP_SSP_CTRL1_WORD_LENGTH 4 +#define BM_SSP_CTRL1_WORD_LENGTH 0xf0 +#define BV_SSP_CTRL1_WORD_LENGTH__RESERVED0 0x0 +#define BV_SSP_CTRL1_WORD_LENGTH__RESERVED1 0x1 +#define BV_SSP_CTRL1_WORD_LENGTH__RESERVED2 0x2 +#define BV_SSP_CTRL1_WORD_LENGTH__FOUR_BITS 0x3 +#define BV_SSP_CTRL1_WORD_LENGTH__EIGHT_BITS 0x7 +#define BV_SSP_CTRL1_WORD_LENGTH__SIXTEEN_BITS 0xf +#define BF_SSP_CTRL1_WORD_LENGTH(v) (((v) << 4) & 0xf0) +#define BF_SSP_CTRL1_WORD_LENGTH_V(v) ((BV_SSP_CTRL1_WORD_LENGTH__##v << 4) & 0xf0) +#define BP_SSP_CTRL1_SSP_MODE 0 +#define BM_SSP_CTRL1_SSP_MODE 0xf +#define BV_SSP_CTRL1_SSP_MODE__SPI 0x0 +#define BV_SSP_CTRL1_SSP_MODE__SSI 0x1 +#define BV_SSP_CTRL1_SSP_MODE__MICROWIRE 0x2 +#define BV_SSP_CTRL1_SSP_MODE__SD_MMC 0x3 +#define BV_SSP_CTRL1_SSP_MODE__MS 0x4 +#define BF_SSP_CTRL1_SSP_MODE(v) (((v) << 0) & 0xf) +#define BF_SSP_CTRL1_SSP_MODE_V(v) ((BV_SSP_CTRL1_SSP_MODE__##v << 0) & 0xf) + +/** + * Register: HW_SSP_DATA + * Address: 0x70 + * SCT: no +*/ +#define HW_SSP_DATA (*(volatile unsigned long *)(REGS_SSP_BASE + 0x70)) +#define BP_SSP_DATA_DATA 0 +#define BM_SSP_DATA_DATA 0xffffffff +#define BF_SSP_DATA_DATA(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_SSP_SDRESP0 + * Address: 0x80 + * SCT: no +*/ +#define HW_SSP_SDRESP0 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x80)) +#define BP_SSP_SDRESP0_RESP0 0 +#define BM_SSP_SDRESP0_RESP0 0xffffffff +#define BF_SSP_SDRESP0_RESP0(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_SSP_SDRESP1 + * Address: 0x90 + * SCT: no +*/ +#define HW_SSP_SDRESP1 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x90)) +#define BP_SSP_SDRESP1_RESP1 0 +#define BM_SSP_SDRESP1_RESP1 0xffffffff +#define BF_SSP_SDRESP1_RESP1(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_SSP_SDRESP2 + * Address: 0xa0 + * SCT: no +*/ +#define HW_SSP_SDRESP2 (*(volatile unsigned long *)(REGS_SSP_BASE + 0xa0)) +#define BP_SSP_SDRESP2_RESP2 0 +#define BM_SSP_SDRESP2_RESP2 0xffffffff +#define BF_SSP_SDRESP2_RESP2(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_SSP_SDRESP3 + * Address: 0xb0 + * SCT: no +*/ +#define HW_SSP_SDRESP3 (*(volatile unsigned long *)(REGS_SSP_BASE + 0xb0)) +#define BP_SSP_SDRESP3_RESP3 0 +#define BM_SSP_SDRESP3_RESP3 0xffffffff +#define BF_SSP_SDRESP3_RESP3(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_SSP_STATUS + * Address: 0xc0 + * SCT: no +*/ +#define HW_SSP_STATUS (*(volatile unsigned long *)(REGS_SSP_BASE + 0xc0)) +#define BP_SSP_STATUS_PRESENT 31 +#define BM_SSP_STATUS_PRESENT 0x80000000 +#define BF_SSP_STATUS_PRESENT(v) (((v) << 31) & 0x80000000) +#define BP_SSP_STATUS_MS_PRESENT 30 +#define BM_SSP_STATUS_MS_PRESENT 0x40000000 +#define BF_SSP_STATUS_MS_PRESENT(v) (((v) << 30) & 0x40000000) +#define BP_SSP_STATUS_SD_PRESENT 29 +#define BM_SSP_STATUS_SD_PRESENT 0x20000000 +#define BF_SSP_STATUS_SD_PRESENT(v) (((v) << 29) & 0x20000000) +#define BP_SSP_STATUS_CARD_DETECT 28 +#define BM_SSP_STATUS_CARD_DETECT 0x10000000 +#define BF_SSP_STATUS_CARD_DETECT(v) (((v) << 28) & 0x10000000) +#define BP_SSP_STATUS_RECV_COUNT 24 +#define BM_SSP_STATUS_RECV_COUNT 0xf000000 +#define BF_SSP_STATUS_RECV_COUNT(v) (((v) << 24) & 0xf000000) +#define BP_SSP_STATUS_XMIT_COUNT 20 +#define BM_SSP_STATUS_XMIT_COUNT 0xf00000 +#define BF_SSP_STATUS_XMIT_COUNT(v) (((v) << 20) & 0xf00000) +#define BP_SSP_STATUS_DMAREQ 19 +#define BM_SSP_STATUS_DMAREQ 0x80000 +#define BF_SSP_STATUS_DMAREQ(v) (((v) << 19) & 0x80000) +#define BP_SSP_STATUS_DMAEND 18 +#define BM_SSP_STATUS_DMAEND 0x40000 +#define BF_SSP_STATUS_DMAEND(v) (((v) << 18) & 0x40000) +#define BP_SSP_STATUS_SDIO_IRQ 17 +#define BM_SSP_STATUS_SDIO_IRQ 0x20000 +#define BF_SSP_STATUS_SDIO_IRQ(v) (((v) << 17) & 0x20000) +#define BP_SSP_STATUS_RESP_CRC_ERR 16 +#define BM_SSP_STATUS_RESP_CRC_ERR 0x10000 +#define BF_SSP_STATUS_RESP_CRC_ERR(v) (((v) << 16) & 0x10000) +#define BP_SSP_STATUS_RESP_ERR 15 +#define BM_SSP_STATUS_RESP_ERR 0x8000 +#define BF_SSP_STATUS_RESP_ERR(v) (((v) << 15) & 0x8000) +#define BP_SSP_STATUS_RESP_TIMEOUT 14 +#define BM_SSP_STATUS_RESP_TIMEOUT 0x4000 +#define BF_SSP_STATUS_RESP_TIMEOUT(v) (((v) << 14) & 0x4000) +#define BP_SSP_STATUS_DATA_CRC_ERR 13 +#define BM_SSP_STATUS_DATA_CRC_ERR 0x2000 +#define BF_SSP_STATUS_DATA_CRC_ERR(v) (((v) << 13) & 0x2000) +#define BP_SSP_STATUS_TIMEOUT 12 +#define BM_SSP_STATUS_TIMEOUT 0x1000 +#define BF_SSP_STATUS_TIMEOUT(v) (((v) << 12) & 0x1000) +#define BP_SSP_STATUS_RECV_TIMEOUT_STAT 11 +#define BM_SSP_STATUS_RECV_TIMEOUT_STAT 0x800 +#define BF_SSP_STATUS_RECV_TIMEOUT_STAT(v) (((v) << 11) & 0x800) +#define BP_SSP_STATUS_RECV_DATA_STAT 10 +#define BM_SSP_STATUS_RECV_DATA_STAT 0x400 +#define BF_SSP_STATUS_RECV_DATA_STAT(v) (((v) << 10) & 0x400) +#define BP_SSP_STATUS_RECV_OVRFLW 9 +#define BM_SSP_STATUS_RECV_OVRFLW 0x200 +#define BF_SSP_STATUS_RECV_OVRFLW(v) (((v) << 9) & 0x200) +#define BP_SSP_STATUS_RECV_FULL 8 +#define BM_SSP_STATUS_RECV_FULL 0x100 +#define BF_SSP_STATUS_RECV_FULL(v) (((v) << 8) & 0x100) +#define BP_SSP_STATUS_RECV_NOT_EMPTY 7 +#define BM_SSP_STATUS_RECV_NOT_EMPTY 0x80 +#define BF_SSP_STATUS_RECV_NOT_EMPTY(v) (((v) << 7) & 0x80) +#define BP_SSP_STATUS_XMIT_NOT_FULL 6 +#define BM_SSP_STATUS_XMIT_NOT_FULL 0x40 +#define BF_SSP_STATUS_XMIT_NOT_FULL(v) (((v) << 6) & 0x40) +#define BP_SSP_STATUS_XMIT_EMPTY 5 +#define BM_SSP_STATUS_XMIT_EMPTY 0x20 +#define BF_SSP_STATUS_XMIT_EMPTY(v) (((v) << 5) & 0x20) +#define BP_SSP_STATUS_XMIT_UNDRFLW 4 +#define BM_SSP_STATUS_XMIT_UNDRFLW 0x10 +#define BF_SSP_STATUS_XMIT_UNDRFLW(v) (((v) << 4) & 0x10) +#define BP_SSP_STATUS_CMD_BUSY 3 +#define BM_SSP_STATUS_CMD_BUSY 0x8 +#define BF_SSP_STATUS_CMD_BUSY(v) (((v) << 3) & 0x8) +#define BP_SSP_STATUS_DATA_BUSY 2 +#define BM_SSP_STATUS_DATA_BUSY 0x4 +#define BF_SSP_STATUS_DATA_BUSY(v) (((v) << 2) & 0x4) +#define BP_SSP_STATUS_DATA_XFER 1 +#define BM_SSP_STATUS_DATA_XFER 0x2 +#define BF_SSP_STATUS_DATA_XFER(v) (((v) << 1) & 0x2) +#define BP_SSP_STATUS_BUSY 0 +#define BM_SSP_STATUS_BUSY 0x1 +#define BF_SSP_STATUS_BUSY(v) (((v) << 0) & 0x1) + +/** + * Register: HW_SSP_DEBUG + * Address: 0x100 + * SCT: no +*/ +#define HW_SSP_DEBUG (*(volatile unsigned long *)(REGS_SSP_BASE + 0x100)) +#define BP_SSP_DEBUG_DATACRC_ERR 28 +#define BM_SSP_DEBUG_DATACRC_ERR 0xf0000000 +#define BF_SSP_DEBUG_DATACRC_ERR(v) (((v) << 28) & 0xf0000000) +#define BP_SSP_DEBUG_DATA_STALL 27 +#define BM_SSP_DEBUG_DATA_STALL 0x8000000 +#define BF_SSP_DEBUG_DATA_STALL(v) (((v) << 27) & 0x8000000) +#define BP_SSP_DEBUG_DAT_SM 24 +#define BM_SSP_DEBUG_DAT_SM 0x7000000 +#define BV_SSP_DEBUG_DAT_SM__DSM_IDLE 0x0 +#define BV_SSP_DEBUG_DAT_SM__DSM_START 0x1 +#define BV_SSP_DEBUG_DAT_SM__DSM_WORD 0x2 +#define BV_SSP_DEBUG_DAT_SM__DSM_CRC1 0x3 +#define BV_SSP_DEBUG_DAT_SM__DSM_CRC2 0x4 +#define BV_SSP_DEBUG_DAT_SM__DSM_END 0x5 +#define BV_SSP_DEBUG_DAT_SM__DSM_RXDLY 0x6 +#define BF_SSP_DEBUG_DAT_SM(v) (((v) << 24) & 0x7000000) +#define BF_SSP_DEBUG_DAT_SM_V(v) ((BV_SSP_DEBUG_DAT_SM__##v << 24) & 0x7000000) +#define BP_SSP_DEBUG_MSTK_SM 20 +#define BM_SSP_DEBUG_MSTK_SM 0xf00000 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_IDLE 0x0 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_CKON 0x1 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_BS1 0x2 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_TPC 0x3 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_BS2 0x4 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_HDSHK 0x5 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_BS3 0x6 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_RW 0x7 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_CRC1 0x8 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_CRC2 0x9 +#define BV_SSP_DEBUG_MSTK_SM__MSTK_BS0 0xa +#define BV_SSP_DEBUG_MSTK_SM__MSTK_DONE 0xb +#define BF_SSP_DEBUG_MSTK_SM(v) (((v) << 20) & 0xf00000) +#define BF_SSP_DEBUG_MSTK_SM_V(v) ((BV_SSP_DEBUG_MSTK_SM__##v << 20) & 0xf00000) +#define BP_SSP_DEBUG_CMD_OE 19 +#define BM_SSP_DEBUG_CMD_OE 0x80000 +#define BF_SSP_DEBUG_CMD_OE(v) (((v) << 19) & 0x80000) +#define BP_SSP_DEBUG_CMD_SM 16 +#define BM_SSP_DEBUG_CMD_SM 0x70000 +#define BV_SSP_DEBUG_CMD_SM__CSM_IDLE 0x0 +#define BV_SSP_DEBUG_CMD_SM__CSM_INDEX 0x1 +#define BV_SSP_DEBUG_CMD_SM__CSM_ARG 0x2 +#define BV_SSP_DEBUG_CMD_SM__CSM_CRC 0x3 +#define BF_SSP_DEBUG_CMD_SM(v) (((v) << 16) & 0x70000) +#define BF_SSP_DEBUG_CMD_SM_V(v) ((BV_SSP_DEBUG_CMD_SM__##v << 16) & 0x70000) +#define BP_SSP_DEBUG_CLK_OE 15 +#define BM_SSP_DEBUG_CLK_OE 0x8000 +#define BF_SSP_DEBUG_CLK_OE(v) (((v) << 15) & 0x8000) +#define BP_SSP_DEBUG_MMC_SM 12 +#define BM_SSP_DEBUG_MMC_SM 0x7000 +#define BV_SSP_DEBUG_MMC_SM__MMC_IDLE 0x0 +#define BV_SSP_DEBUG_MMC_SM__MMC_CMD 0x1 +#define BV_SSP_DEBUG_MMC_SM__MMC_TRC 0x2 +#define BV_SSP_DEBUG_MMC_SM__MMC_RESP 0x3 +#define BV_SSP_DEBUG_MMC_SM__MMC_RPRX 0x4 +#define BV_SSP_DEBUG_MMC_SM__MMC_TX 0x5 +#define BV_SSP_DEBUG_MMC_SM__MMC_CTOK 0x6 +#define BV_SSP_DEBUG_MMC_SM__MMC_RX 0x7 +#define BF_SSP_DEBUG_MMC_SM(v) (((v) << 12) & 0x7000) +#define BF_SSP_DEBUG_MMC_SM_V(v) ((BV_SSP_DEBUG_MMC_SM__##v << 12) & 0x7000) +#define BP_SSP_DEBUG_DAT0_OE 11 +#define BM_SSP_DEBUG_DAT0_OE 0x800 +#define BF_SSP_DEBUG_DAT0_OE(v) (((v) << 11) & 0x800) +#define BP_SSP_DEBUG_DAT321_OE 10 +#define BM_SSP_DEBUG_DAT321_OE 0x400 +#define BF_SSP_DEBUG_DAT321_OE(v) (((v) << 10) & 0x400) +#define BP_SSP_DEBUG_SSP_CMD 9 +#define BM_SSP_DEBUG_SSP_CMD 0x200 +#define BF_SSP_DEBUG_SSP_CMD(v) (((v) << 9) & 0x200) +#define BP_SSP_DEBUG_SSP_RESP 8 +#define BM_SSP_DEBUG_SSP_RESP 0x100 +#define BF_SSP_DEBUG_SSP_RESP(v) (((v) << 8) & 0x100) +#define BP_SSP_DEBUG_SSP_TXD 4 +#define BM_SSP_DEBUG_SSP_TXD 0xf0 +#define BF_SSP_DEBUG_SSP_TXD(v) (((v) << 4) & 0xf0) +#define BP_SSP_DEBUG_SSP_RXD 0 +#define BM_SSP_DEBUG_SSP_RXD 0xf +#define BF_SSP_DEBUG_SSP_RXD(v) (((v) << 0) & 0xf) + +#endif /* __HEADERGEN__STMP3600__SSP__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-timrot.h b/firmware/target/arm/imx233/regs/stmp3600/regs-timrot.h new file mode 100644 index 0000000000..a726662ac8 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-timrot.h @@ -0,0 +1,267 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__TIMROT__H__ +#define __HEADERGEN__STMP3600__TIMROT__H__ + +#define REGS_TIMROT_BASE (0x80068000) + +#define REGS_TIMROT_VERSION "2.3.0" + +/** + * Register: HW_TIMROT_ROTCTRL + * Address: 0 + * SCT: yes +*/ +#define HW_TIMROT_ROTCTRL (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x0 + 0x0)) +#define HW_TIMROT_ROTCTRL_SET (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x0 + 0x4)) +#define HW_TIMROT_ROTCTRL_CLR (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x0 + 0x8)) +#define HW_TIMROT_ROTCTRL_TOG (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x0 + 0xc)) +#define BP_TIMROT_ROTCTRL_SFTRST 31 +#define BM_TIMROT_ROTCTRL_SFTRST 0x80000000 +#define BF_TIMROT_ROTCTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_TIMROT_ROTCTRL_CLKGATE 30 +#define BM_TIMROT_ROTCTRL_CLKGATE 0x40000000 +#define BF_TIMROT_ROTCTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_TIMROT_ROTCTRL_ROTARY_PRESENT 29 +#define BM_TIMROT_ROTCTRL_ROTARY_PRESENT 0x20000000 +#define BF_TIMROT_ROTCTRL_ROTARY_PRESENT(v) (((v) << 29) & 0x20000000) +#define BP_TIMROT_ROTCTRL_TIM3_PRESENT 28 +#define BM_TIMROT_ROTCTRL_TIM3_PRESENT 0x10000000 +#define BF_TIMROT_ROTCTRL_TIM3_PRESENT(v) (((v) << 28) & 0x10000000) +#define BP_TIMROT_ROTCTRL_TIM2_PRESENT 27 +#define BM_TIMROT_ROTCTRL_TIM2_PRESENT 0x8000000 +#define BF_TIMROT_ROTCTRL_TIM2_PRESENT(v) (((v) << 27) & 0x8000000) +#define BP_TIMROT_ROTCTRL_TIM1_PRESENT 26 +#define BM_TIMROT_ROTCTRL_TIM1_PRESENT 0x4000000 +#define BF_TIMROT_ROTCTRL_TIM1_PRESENT(v) (((v) << 26) & 0x4000000) +#define BP_TIMROT_ROTCTRL_TIM0_PRESENT 25 +#define BM_TIMROT_ROTCTRL_TIM0_PRESENT 0x2000000 +#define BF_TIMROT_ROTCTRL_TIM0_PRESENT(v) (((v) << 25) & 0x2000000) +#define BP_TIMROT_ROTCTRL_STATE 22 +#define BM_TIMROT_ROTCTRL_STATE 0x1c00000 +#define BF_TIMROT_ROTCTRL_STATE(v) (((v) << 22) & 0x1c00000) +#define BP_TIMROT_ROTCTRL_DIVIDER 16 +#define BM_TIMROT_ROTCTRL_DIVIDER 0x3f0000 +#define BF_TIMROT_ROTCTRL_DIVIDER(v) (((v) << 16) & 0x3f0000) +#define BP_TIMROT_ROTCTRL_RELATIVE 12 +#define BM_TIMROT_ROTCTRL_RELATIVE 0x1000 +#define BF_TIMROT_ROTCTRL_RELATIVE(v) (((v) << 12) & 0x1000) +#define BP_TIMROT_ROTCTRL_OVERSAMPLE 10 +#define BM_TIMROT_ROTCTRL_OVERSAMPLE 0xc00 +#define BV_TIMROT_ROTCTRL_OVERSAMPLE__8X 0x0 +#define BV_TIMROT_ROTCTRL_OVERSAMPLE__4X 0x1 +#define BV_TIMROT_ROTCTRL_OVERSAMPLE__2X 0x2 +#define BV_TIMROT_ROTCTRL_OVERSAMPLE__1X 0x3 +#define BF_TIMROT_ROTCTRL_OVERSAMPLE(v) (((v) << 10) & 0xc00) +#define BF_TIMROT_ROTCTRL_OVERSAMPLE_V(v) ((BV_TIMROT_ROTCTRL_OVERSAMPLE__##v << 10) & 0xc00) +#define BP_TIMROT_ROTCTRL_POLARITY_B 9 +#define BM_TIMROT_ROTCTRL_POLARITY_B 0x200 +#define BF_TIMROT_ROTCTRL_POLARITY_B(v) (((v) << 9) & 0x200) +#define BP_TIMROT_ROTCTRL_POLARITY_A 8 +#define BM_TIMROT_ROTCTRL_POLARITY_A 0x100 +#define BF_TIMROT_ROTCTRL_POLARITY_A(v) (((v) << 8) & 0x100) +#define BP_TIMROT_ROTCTRL_SELECT_B 4 +#define BM_TIMROT_ROTCTRL_SELECT_B 0x70 +#define BV_TIMROT_ROTCTRL_SELECT_B__NEVER_TICK 0x0 +#define BV_TIMROT_ROTCTRL_SELECT_B__PWM0 0x1 +#define BV_TIMROT_ROTCTRL_SELECT_B__PWM1 0x2 +#define BV_TIMROT_ROTCTRL_SELECT_B__PWM2 0x3 +#define BV_TIMROT_ROTCTRL_SELECT_B__PWM3 0x4 +#define BV_TIMROT_ROTCTRL_SELECT_B__PWM4 0x5 +#define BV_TIMROT_ROTCTRL_SELECT_B__ROTARYA 0x6 +#define BV_TIMROT_ROTCTRL_SELECT_B__ROTARYB 0x7 +#define BF_TIMROT_ROTCTRL_SELECT_B(v) (((v) << 4) & 0x70) +#define BF_TIMROT_ROTCTRL_SELECT_B_V(v) ((BV_TIMROT_ROTCTRL_SELECT_B__##v << 4) & 0x70) +#define BP_TIMROT_ROTCTRL_SELECT_A 0 +#define BM_TIMROT_ROTCTRL_SELECT_A 0x7 +#define BV_TIMROT_ROTCTRL_SELECT_A__NEVER_TICK 0x0 +#define BV_TIMROT_ROTCTRL_SELECT_A__PWM0 0x1 +#define BV_TIMROT_ROTCTRL_SELECT_A__PWM1 0x2 +#define BV_TIMROT_ROTCTRL_SELECT_A__PWM2 0x3 +#define BV_TIMROT_ROTCTRL_SELECT_A__PWM3 0x4 +#define BV_TIMROT_ROTCTRL_SELECT_A__PWM4 0x5 +#define BV_TIMROT_ROTCTRL_SELECT_A__ROTARYA 0x6 +#define BV_TIMROT_ROTCTRL_SELECT_A__ROTARYB 0x7 +#define BF_TIMROT_ROTCTRL_SELECT_A(v) (((v) << 0) & 0x7) +#define BF_TIMROT_ROTCTRL_SELECT_A_V(v) ((BV_TIMROT_ROTCTRL_SELECT_A__##v << 0) & 0x7) + +/** + * Register: HW_TIMROT_ROTCOUNT + * Address: 0x10 + * SCT: no +*/ +#define HW_TIMROT_ROTCOUNT (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x10)) +#define BP_TIMROT_ROTCOUNT_UPDOWN 0 +#define BM_TIMROT_ROTCOUNT_UPDOWN 0xffff +#define BF_TIMROT_ROTCOUNT_UPDOWN(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_TIMROT_TIMCTRL3 + * Address: 0x80 + * SCT: yes +*/ +#define HW_TIMROT_TIMCTRL3 (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x80 + 0x0)) +#define HW_TIMROT_TIMCTRL3_SET (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x80 + 0x4)) +#define HW_TIMROT_TIMCTRL3_CLR (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x80 + 0x8)) +#define HW_TIMROT_TIMCTRL3_TOG (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x80 + 0xc)) +#define BP_TIMROT_TIMCTRL3_TEST_SIGNAL 16 +#define BM_TIMROT_TIMCTRL3_TEST_SIGNAL 0xf0000 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__NEVER_TICK 0x0 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__PWM0 0x1 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__PWM1 0x2 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__PWM2 0x3 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__PWM3 0x4 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__PWM4 0x5 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__ROTARYA 0x6 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__ROTARYB 0x7 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__32KHZ_XTAL 0x8 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__8KHZ_XTAL 0x9 +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__4KHZ_XTAL 0xa +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__1KHZ_XTAL 0xb +#define BV_TIMROT_TIMCTRL3_TEST_SIGNAL__TICK_ALWAYS 0xc +#define BF_TIMROT_TIMCTRL3_TEST_SIGNAL(v) (((v) << 16) & 0xf0000) +#define BF_TIMROT_TIMCTRL3_TEST_SIGNAL_V(v) ((BV_TIMROT_TIMCTRL3_TEST_SIGNAL__##v << 16) & 0xf0000) +#define BP_TIMROT_TIMCTRL3_IRQ 15 +#define BM_TIMROT_TIMCTRL3_IRQ 0x8000 +#define BF_TIMROT_TIMCTRL3_IRQ(v) (((v) << 15) & 0x8000) +#define BP_TIMROT_TIMCTRL3_IRQ_EN 14 +#define BM_TIMROT_TIMCTRL3_IRQ_EN 0x4000 +#define BF_TIMROT_TIMCTRL3_IRQ_EN(v) (((v) << 14) & 0x4000) +#define BP_TIMROT_TIMCTRL3_DUTY_VALID 10 +#define BM_TIMROT_TIMCTRL3_DUTY_VALID 0x400 +#define BF_TIMROT_TIMCTRL3_DUTY_VALID(v) (((v) << 10) & 0x400) +#define BP_TIMROT_TIMCTRL3_DUTY_CYCLE 9 +#define BM_TIMROT_TIMCTRL3_DUTY_CYCLE 0x200 +#define BF_TIMROT_TIMCTRL3_DUTY_CYCLE(v) (((v) << 9) & 0x200) +#define BP_TIMROT_TIMCTRL3_POLARITY 8 +#define BM_TIMROT_TIMCTRL3_POLARITY 0x100 +#define BF_TIMROT_TIMCTRL3_POLARITY(v) (((v) << 8) & 0x100) +#define BP_TIMROT_TIMCTRL3_UPDATE 7 +#define BM_TIMROT_TIMCTRL3_UPDATE 0x80 +#define BF_TIMROT_TIMCTRL3_UPDATE(v) (((v) << 7) & 0x80) +#define BP_TIMROT_TIMCTRL3_RELOAD 6 +#define BM_TIMROT_TIMCTRL3_RELOAD 0x40 +#define BF_TIMROT_TIMCTRL3_RELOAD(v) (((v) << 6) & 0x40) +#define BP_TIMROT_TIMCTRL3_PRESCALE 4 +#define BM_TIMROT_TIMCTRL3_PRESCALE 0x30 +#define BV_TIMROT_TIMCTRL3_PRESCALE__DIV_BY_1 0x0 +#define BV_TIMROT_TIMCTRL3_PRESCALE__DIV_BY_2 0x1 +#define BV_TIMROT_TIMCTRL3_PRESCALE__DIV_BY_4 0x2 +#define BV_TIMROT_TIMCTRL3_PRESCALE__DIV_BY_8 0x3 +#define BF_TIMROT_TIMCTRL3_PRESCALE(v) (((v) << 4) & 0x30) +#define BF_TIMROT_TIMCTRL3_PRESCALE_V(v) ((BV_TIMROT_TIMCTRL3_PRESCALE__##v << 4) & 0x30) +#define BP_TIMROT_TIMCTRL3_SELECT 0 +#define BM_TIMROT_TIMCTRL3_SELECT 0xf +#define BV_TIMROT_TIMCTRL3_SELECT__NEVER_TICK 0x0 +#define BV_TIMROT_TIMCTRL3_SELECT__PWM0 0x1 +#define BV_TIMROT_TIMCTRL3_SELECT__PWM1 0x2 +#define BV_TIMROT_TIMCTRL3_SELECT__PWM2 0x3 +#define BV_TIMROT_TIMCTRL3_SELECT__PWM3 0x4 +#define BV_TIMROT_TIMCTRL3_SELECT__PWM4 0x5 +#define BV_TIMROT_TIMCTRL3_SELECT__ROTARYA 0x6 +#define BV_TIMROT_TIMCTRL3_SELECT__ROTARYB 0x7 +#define BV_TIMROT_TIMCTRL3_SELECT__32KHZ_XTAL 0x8 +#define BV_TIMROT_TIMCTRL3_SELECT__8KHZ_XTAL 0x9 +#define BV_TIMROT_TIMCTRL3_SELECT__4KHZ_XTAL 0xa +#define BV_TIMROT_TIMCTRL3_SELECT__1KHZ_XTAL 0xb +#define BV_TIMROT_TIMCTRL3_SELECT__TICK_ALWAYS 0xc +#define BF_TIMROT_TIMCTRL3_SELECT(v) (((v) << 0) & 0xf) +#define BF_TIMROT_TIMCTRL3_SELECT_V(v) ((BV_TIMROT_TIMCTRL3_SELECT__##v << 0) & 0xf) + +/** + * Register: HW_TIMROT_TIMCOUNT3 + * Address: 0x90 + * SCT: no +*/ +#define HW_TIMROT_TIMCOUNT3 (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x90)) +#define BP_TIMROT_TIMCOUNT3_LOW_RUNNING_COUNT 16 +#define BM_TIMROT_TIMCOUNT3_LOW_RUNNING_COUNT 0xffff0000 +#define BF_TIMROT_TIMCOUNT3_LOW_RUNNING_COUNT(v) (((v) << 16) & 0xffff0000) +#define BP_TIMROT_TIMCOUNT3_HIGH_FIXED_COUNT 0 +#define BM_TIMROT_TIMCOUNT3_HIGH_FIXED_COUNT 0xffff +#define BF_TIMROT_TIMCOUNT3_HIGH_FIXED_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_TIMROT_TIMCOUNTn + * Address: 0x30+n*0x20 + * SCT: no +*/ +#define HW_TIMROT_TIMCOUNTn(n) (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x30+(n)*0x20)) +#define BP_TIMROT_TIMCOUNTn_RUNNING_COUNT 16 +#define BM_TIMROT_TIMCOUNTn_RUNNING_COUNT 0xffff0000 +#define BF_TIMROT_TIMCOUNTn_RUNNING_COUNT(v) (((v) << 16) & 0xffff0000) +#define BP_TIMROT_TIMCOUNTn_FIXED_COUNT 0 +#define BM_TIMROT_TIMCOUNTn_FIXED_COUNT 0xffff +#define BF_TIMROT_TIMCOUNTn_FIXED_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_TIMROT_TIMCTRLn + * Address: 0x20+n*0x20 + * SCT: yes +*/ +#define HW_TIMROT_TIMCTRLn(n) (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x20+(n)*0x20 + 0x0)) +#define HW_TIMROT_TIMCTRLn_SET(n) (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x20+(n)*0x20 + 0x4)) +#define HW_TIMROT_TIMCTRLn_CLR(n) (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x20+(n)*0x20 + 0x8)) +#define HW_TIMROT_TIMCTRLn_TOG(n) (*(volatile unsigned long *)(REGS_TIMROT_BASE + 0x20+(n)*0x20 + 0xc)) +#define BP_TIMROT_TIMCTRLn_IRQ 15 +#define BM_TIMROT_TIMCTRLn_IRQ 0x8000 +#define BF_TIMROT_TIMCTRLn_IRQ(v) (((v) << 15) & 0x8000) +#define BP_TIMROT_TIMCTRLn_IRQ_EN 14 +#define BM_TIMROT_TIMCTRLn_IRQ_EN 0x4000 +#define BF_TIMROT_TIMCTRLn_IRQ_EN(v) (((v) << 14) & 0x4000) +#define BP_TIMROT_TIMCTRLn_POLARITY 8 +#define BM_TIMROT_TIMCTRLn_POLARITY 0x100 +#define BF_TIMROT_TIMCTRLn_POLARITY(v) (((v) << 8) & 0x100) +#define BP_TIMROT_TIMCTRLn_UPDATE 7 +#define BM_TIMROT_TIMCTRLn_UPDATE 0x80 +#define BF_TIMROT_TIMCTRLn_UPDATE(v) (((v) << 7) & 0x80) +#define BP_TIMROT_TIMCTRLn_RELOAD 6 +#define BM_TIMROT_TIMCTRLn_RELOAD 0x40 +#define BF_TIMROT_TIMCTRLn_RELOAD(v) (((v) << 6) & 0x40) +#define BP_TIMROT_TIMCTRLn_PRESCALE 4 +#define BM_TIMROT_TIMCTRLn_PRESCALE 0x30 +#define BV_TIMROT_TIMCTRLn_PRESCALE__DIV_BY_1 0x0 +#define BV_TIMROT_TIMCTRLn_PRESCALE__DIV_BY_2 0x1 +#define BV_TIMROT_TIMCTRLn_PRESCALE__DIV_BY_4 0x2 +#define BV_TIMROT_TIMCTRLn_PRESCALE__DIV_BY_8 0x3 +#define BF_TIMROT_TIMCTRLn_PRESCALE(v) (((v) << 4) & 0x30) +#define BF_TIMROT_TIMCTRLn_PRESCALE_V(v) ((BV_TIMROT_TIMCTRLn_PRESCALE__##v << 4) & 0x30) +#define BP_TIMROT_TIMCTRLn_SELECT 0 +#define BM_TIMROT_TIMCTRLn_SELECT 0xf +#define BV_TIMROT_TIMCTRLn_SELECT__NEVER_TICK 0x0 +#define BV_TIMROT_TIMCTRLn_SELECT__PWM0 0x1 +#define BV_TIMROT_TIMCTRLn_SELECT__PWM1 0x2 +#define BV_TIMROT_TIMCTRLn_SELECT__PWM2 0x3 +#define BV_TIMROT_TIMCTRLn_SELECT__PWM3 0x4 +#define BV_TIMROT_TIMCTRLn_SELECT__PWM4 0x5 +#define BV_TIMROT_TIMCTRLn_SELECT__ROTARYA 0x6 +#define BV_TIMROT_TIMCTRLn_SELECT__ROTARYB 0x7 +#define BV_TIMROT_TIMCTRLn_SELECT__32KHZ_XTAL 0x8 +#define BV_TIMROT_TIMCTRLn_SELECT__8KHZ_XTAL 0x9 +#define BV_TIMROT_TIMCTRLn_SELECT__4KHZ_XTAL 0xa +#define BV_TIMROT_TIMCTRLn_SELECT__1KHZ_XTAL 0xb +#define BV_TIMROT_TIMCTRLn_SELECT__TICK_ALWAYS 0xc +#define BF_TIMROT_TIMCTRLn_SELECT(v) (((v) << 0) & 0xf) +#define BF_TIMROT_TIMCTRLn_SELECT_V(v) ((BV_TIMROT_TIMCTRLn_SELECT__##v << 0) & 0xf) + +#endif /* __HEADERGEN__STMP3600__TIMROT__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-uartapp.h b/firmware/target/arm/imx233/regs/stmp3600/regs-uartapp.h new file mode 100644 index 0000000000..62442f3ef3 --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-uartapp.h @@ -0,0 +1,371 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__UARTAPP__H__ +#define __HEADERGEN__STMP3600__UARTAPP__H__ + +#define REGS_UARTAPP_BASE (0x8006c000) + +#define REGS_UARTAPP_VERSION "2.3.0" + +/** + * Register: HW_UARTAPP_CTRL0 + * Address: 0 + * SCT: yes +*/ +#define HW_UARTAPP_CTRL0 (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x0 + 0x0)) +#define HW_UARTAPP_CTRL0_SET (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x0 + 0x4)) +#define HW_UARTAPP_CTRL0_CLR (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x0 + 0x8)) +#define HW_UARTAPP_CTRL0_TOG (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x0 + 0xc)) +#define BP_UARTAPP_CTRL0_SFTRST 31 +#define BM_UARTAPP_CTRL0_SFTRST 0x80000000 +#define BF_UARTAPP_CTRL0_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_UARTAPP_CTRL0_CLKGATE 30 +#define BM_UARTAPP_CTRL0_CLKGATE 0x40000000 +#define BF_UARTAPP_CTRL0_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_UARTAPP_CTRL0_RUN 28 +#define BM_UARTAPP_CTRL0_RUN 0x10000000 +#define BF_UARTAPP_CTRL0_RUN(v) (((v) << 28) & 0x10000000) +#define BP_UARTAPP_CTRL0_RX_SOURCE 25 +#define BM_UARTAPP_CTRL0_RX_SOURCE 0x2000000 +#define BF_UARTAPP_CTRL0_RX_SOURCE(v) (((v) << 25) & 0x2000000) +#define BP_UARTAPP_CTRL0_RXTO_ENABLE 24 +#define BM_UARTAPP_CTRL0_RXTO_ENABLE 0x1000000 +#define BF_UARTAPP_CTRL0_RXTO_ENABLE(v) (((v) << 24) & 0x1000000) +#define BP_UARTAPP_CTRL0_RXTIMEOUT 16 +#define BM_UARTAPP_CTRL0_RXTIMEOUT 0xff0000 +#define BF_UARTAPP_CTRL0_RXTIMEOUT(v) (((v) << 16) & 0xff0000) +#define BP_UARTAPP_CTRL0_XFER_COUNT 0 +#define BM_UARTAPP_CTRL0_XFER_COUNT 0xffff +#define BF_UARTAPP_CTRL0_XFER_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_UARTAPP_CTRL1 + * Address: 0x10 + * SCT: yes +*/ +#define HW_UARTAPP_CTRL1 (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x10 + 0x0)) +#define HW_UARTAPP_CTRL1_SET (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x10 + 0x4)) +#define HW_UARTAPP_CTRL1_CLR (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x10 + 0x8)) +#define HW_UARTAPP_CTRL1_TOG (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x10 + 0xc)) +#define BP_UARTAPP_CTRL1_RUN 28 +#define BM_UARTAPP_CTRL1_RUN 0x10000000 +#define BF_UARTAPP_CTRL1_RUN(v) (((v) << 28) & 0x10000000) +#define BP_UARTAPP_CTRL1_XFER_COUNT 0 +#define BM_UARTAPP_CTRL1_XFER_COUNT 0xffff +#define BF_UARTAPP_CTRL1_XFER_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_UARTAPP_CTRL2 + * Address: 0x20 + * SCT: yes +*/ +#define HW_UARTAPP_CTRL2 (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x20 + 0x0)) +#define HW_UARTAPP_CTRL2_SET (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x20 + 0x4)) +#define HW_UARTAPP_CTRL2_CLR (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x20 + 0x8)) +#define HW_UARTAPP_CTRL2_TOG (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x20 + 0xc)) +#define BP_UARTAPP_CTRL2_INVERT_RTS 31 +#define BM_UARTAPP_CTRL2_INVERT_RTS 0x80000000 +#define BF_UARTAPP_CTRL2_INVERT_RTS(v) (((v) << 31) & 0x80000000) +#define BP_UARTAPP_CTRL2_INVERT_CTS 30 +#define BM_UARTAPP_CTRL2_INVERT_CTS 0x40000000 +#define BF_UARTAPP_CTRL2_INVERT_CTS(v) (((v) << 30) & 0x40000000) +#define BP_UARTAPP_CTRL2_INVERT_TX 29 +#define BM_UARTAPP_CTRL2_INVERT_TX 0x20000000 +#define BF_UARTAPP_CTRL2_INVERT_TX(v) (((v) << 29) & 0x20000000) +#define BP_UARTAPP_CTRL2_INVERT_RX 28 +#define BM_UARTAPP_CTRL2_INVERT_RX 0x10000000 +#define BF_UARTAPP_CTRL2_INVERT_RX(v) (((v) << 28) & 0x10000000) +#define BP_UARTAPP_CTRL2_DMAONERR 26 +#define BM_UARTAPP_CTRL2_DMAONERR 0x4000000 +#define BF_UARTAPP_CTRL2_DMAONERR(v) (((v) << 26) & 0x4000000) +#define BP_UARTAPP_CTRL2_TXDMAE 25 +#define BM_UARTAPP_CTRL2_TXDMAE 0x2000000 +#define BF_UARTAPP_CTRL2_TXDMAE(v) (((v) << 25) & 0x2000000) +#define BP_UARTAPP_CTRL2_RXDMAE 24 +#define BM_UARTAPP_CTRL2_RXDMAE 0x1000000 +#define BF_UARTAPP_CTRL2_RXDMAE(v) (((v) << 24) & 0x1000000) +#define BP_UARTAPP_CTRL2_RXIFLSEL 20 +#define BM_UARTAPP_CTRL2_RXIFLSEL 0x700000 +#define BV_UARTAPP_CTRL2_RXIFLSEL__NOT_EMPTY 0x0 +#define BV_UARTAPP_CTRL2_RXIFLSEL__ONE_QUARTER 0x1 +#define BV_UARTAPP_CTRL2_RXIFLSEL__ONE_HALF 0x2 +#define BV_UARTAPP_CTRL2_RXIFLSEL__THREE_QUARTERS 0x3 +#define BV_UARTAPP_CTRL2_RXIFLSEL__SEVEN_EIGHTHS 0x4 +#define BV_UARTAPP_CTRL2_RXIFLSEL__INVALID5 0x5 +#define BV_UARTAPP_CTRL2_RXIFLSEL__INVALID6 0x6 +#define BV_UARTAPP_CTRL2_RXIFLSEL__INVALID7 0x7 +#define BF_UARTAPP_CTRL2_RXIFLSEL(v) (((v) << 20) & 0x700000) +#define BF_UARTAPP_CTRL2_RXIFLSEL_V(v) ((BV_UARTAPP_CTRL2_RXIFLSEL__##v << 20) & 0x700000) +#define BP_UARTAPP_CTRL2_TXIFLSEL 16 +#define BM_UARTAPP_CTRL2_TXIFLSEL 0x70000 +#define BV_UARTAPP_CTRL2_TXIFLSEL__EMPTY 0x0 +#define BV_UARTAPP_CTRL2_TXIFLSEL__ONE_QUARTER 0x1 +#define BV_UARTAPP_CTRL2_TXIFLSEL__ONE_HALF 0x2 +#define BV_UARTAPP_CTRL2_TXIFLSEL__THREE_QUARTERS 0x3 +#define BV_UARTAPP_CTRL2_TXIFLSEL__SEVEN_EIGHTHS 0x4 +#define BV_UARTAPP_CTRL2_TXIFLSEL__INVALID5 0x5 +#define BV_UARTAPP_CTRL2_TXIFLSEL__INVALID6 0x6 +#define BV_UARTAPP_CTRL2_TXIFLSEL__INVALID7 0x7 +#define BF_UARTAPP_CTRL2_TXIFLSEL(v) (((v) << 16) & 0x70000) +#define BF_UARTAPP_CTRL2_TXIFLSEL_V(v) ((BV_UARTAPP_CTRL2_TXIFLSEL__##v << 16) & 0x70000) +#define BP_UARTAPP_CTRL2_CTSEN 15 +#define BM_UARTAPP_CTRL2_CTSEN 0x8000 +#define BF_UARTAPP_CTRL2_CTSEN(v) (((v) << 15) & 0x8000) +#define BP_UARTAPP_CTRL2_RTSEN 14 +#define BM_UARTAPP_CTRL2_RTSEN 0x4000 +#define BF_UARTAPP_CTRL2_RTSEN(v) (((v) << 14) & 0x4000) +#define BP_UARTAPP_CTRL2_OUT2 13 +#define BM_UARTAPP_CTRL2_OUT2 0x2000 +#define BF_UARTAPP_CTRL2_OUT2(v) (((v) << 13) & 0x2000) +#define BP_UARTAPP_CTRL2_OUT1 12 +#define BM_UARTAPP_CTRL2_OUT1 0x1000 +#define BF_UARTAPP_CTRL2_OUT1(v) (((v) << 12) & 0x1000) +#define BP_UARTAPP_CTRL2_RTS 11 +#define BM_UARTAPP_CTRL2_RTS 0x800 +#define BF_UARTAPP_CTRL2_RTS(v) (((v) << 11) & 0x800) +#define BP_UARTAPP_CTRL2_DTR 10 +#define BM_UARTAPP_CTRL2_DTR 0x400 +#define BF_UARTAPP_CTRL2_DTR(v) (((v) << 10) & 0x400) +#define BP_UARTAPP_CTRL2_RXE 9 +#define BM_UARTAPP_CTRL2_RXE 0x200 +#define BF_UARTAPP_CTRL2_RXE(v) (((v) << 9) & 0x200) +#define BP_UARTAPP_CTRL2_TXE 8 +#define BM_UARTAPP_CTRL2_TXE 0x100 +#define BF_UARTAPP_CTRL2_TXE(v) (((v) << 8) & 0x100) +#define BP_UARTAPP_CTRL2_LBE 7 +#define BM_UARTAPP_CTRL2_LBE 0x80 +#define BF_UARTAPP_CTRL2_LBE(v) (((v) << 7) & 0x80) +#define BP_UARTAPP_CTRL2_SIRLP 2 +#define BM_UARTAPP_CTRL2_SIRLP 0x4 +#define BF_UARTAPP_CTRL2_SIRLP(v) (((v) << 2) & 0x4) +#define BP_UARTAPP_CTRL2_SIREN 1 +#define BM_UARTAPP_CTRL2_SIREN 0x2 +#define BF_UARTAPP_CTRL2_SIREN(v) (((v) << 1) & 0x2) +#define BP_UARTAPP_CTRL2_UARTEN 0 +#define BM_UARTAPP_CTRL2_UARTEN 0x1 +#define BF_UARTAPP_CTRL2_UARTEN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTAPP_LINECTRL + * Address: 0x30 + * SCT: yes +*/ +#define HW_UARTAPP_LINECTRL (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x30 + 0x0)) +#define HW_UARTAPP_LINECTRL_SET (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x30 + 0x4)) +#define HW_UARTAPP_LINECTRL_CLR (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x30 + 0x8)) +#define HW_UARTAPP_LINECTRL_TOG (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x30 + 0xc)) +#define BP_UARTAPP_LINECTRL_BAUD_DIVINT 16 +#define BM_UARTAPP_LINECTRL_BAUD_DIVINT 0xffff0000 +#define BF_UARTAPP_LINECTRL_BAUD_DIVINT(v) (((v) << 16) & 0xffff0000) +#define BP_UARTAPP_LINECTRL_BAUD_DIVFRAC 8 +#define BM_UARTAPP_LINECTRL_BAUD_DIVFRAC 0x3f00 +#define BF_UARTAPP_LINECTRL_BAUD_DIVFRAC(v) (((v) << 8) & 0x3f00) +#define BP_UARTAPP_LINECTRL_SPS 7 +#define BM_UARTAPP_LINECTRL_SPS 0x80 +#define BF_UARTAPP_LINECTRL_SPS(v) (((v) << 7) & 0x80) +#define BP_UARTAPP_LINECTRL_WLEN 5 +#define BM_UARTAPP_LINECTRL_WLEN 0x60 +#define BF_UARTAPP_LINECTRL_WLEN(v) (((v) << 5) & 0x60) +#define BP_UARTAPP_LINECTRL_FEN 4 +#define BM_UARTAPP_LINECTRL_FEN 0x10 +#define BF_UARTAPP_LINECTRL_FEN(v) (((v) << 4) & 0x10) +#define BP_UARTAPP_LINECTRL_STP2 3 +#define BM_UARTAPP_LINECTRL_STP2 0x8 +#define BF_UARTAPP_LINECTRL_STP2(v) (((v) << 3) & 0x8) +#define BP_UARTAPP_LINECTRL_EPS 2 +#define BM_UARTAPP_LINECTRL_EPS 0x4 +#define BF_UARTAPP_LINECTRL_EPS(v) (((v) << 2) & 0x4) +#define BP_UARTAPP_LINECTRL_PEN 1 +#define BM_UARTAPP_LINECTRL_PEN 0x2 +#define BF_UARTAPP_LINECTRL_PEN(v) (((v) << 1) & 0x2) +#define BP_UARTAPP_LINECTRL_BRK 0 +#define BM_UARTAPP_LINECTRL_BRK 0x1 +#define BF_UARTAPP_LINECTRL_BRK(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTAPP_INTR + * Address: 0x40 + * SCT: yes +*/ +#define HW_UARTAPP_INTR (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x40 + 0x0)) +#define HW_UARTAPP_INTR_SET (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x40 + 0x4)) +#define HW_UARTAPP_INTR_CLR (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x40 + 0x8)) +#define HW_UARTAPP_INTR_TOG (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x40 + 0xc)) +#define BP_UARTAPP_INTR_OEIEN 26 +#define BM_UARTAPP_INTR_OEIEN 0x4000000 +#define BF_UARTAPP_INTR_OEIEN(v) (((v) << 26) & 0x4000000) +#define BP_UARTAPP_INTR_BEIEN 25 +#define BM_UARTAPP_INTR_BEIEN 0x2000000 +#define BF_UARTAPP_INTR_BEIEN(v) (((v) << 25) & 0x2000000) +#define BP_UARTAPP_INTR_PEIEN 24 +#define BM_UARTAPP_INTR_PEIEN 0x1000000 +#define BF_UARTAPP_INTR_PEIEN(v) (((v) << 24) & 0x1000000) +#define BP_UARTAPP_INTR_FEIEN 23 +#define BM_UARTAPP_INTR_FEIEN 0x800000 +#define BF_UARTAPP_INTR_FEIEN(v) (((v) << 23) & 0x800000) +#define BP_UARTAPP_INTR_RTIEN 22 +#define BM_UARTAPP_INTR_RTIEN 0x400000 +#define BF_UARTAPP_INTR_RTIEN(v) (((v) << 22) & 0x400000) +#define BP_UARTAPP_INTR_TXIEN 21 +#define BM_UARTAPP_INTR_TXIEN 0x200000 +#define BF_UARTAPP_INTR_TXIEN(v) (((v) << 21) & 0x200000) +#define BP_UARTAPP_INTR_RXIEN 20 +#define BM_UARTAPP_INTR_RXIEN 0x100000 +#define BF_UARTAPP_INTR_RXIEN(v) (((v) << 20) & 0x100000) +#define BP_UARTAPP_INTR_DSRMIEN 19 +#define BM_UARTAPP_INTR_DSRMIEN 0x80000 +#define BF_UARTAPP_INTR_DSRMIEN(v) (((v) << 19) & 0x80000) +#define BP_UARTAPP_INTR_DCDMIEN 18 +#define BM_UARTAPP_INTR_DCDMIEN 0x40000 +#define BF_UARTAPP_INTR_DCDMIEN(v) (((v) << 18) & 0x40000) +#define BP_UARTAPP_INTR_CTSMIEN 17 +#define BM_UARTAPP_INTR_CTSMIEN 0x20000 +#define BF_UARTAPP_INTR_CTSMIEN(v) (((v) << 17) & 0x20000) +#define BP_UARTAPP_INTR_RIMIEN 16 +#define BM_UARTAPP_INTR_RIMIEN 0x10000 +#define BF_UARTAPP_INTR_RIMIEN(v) (((v) << 16) & 0x10000) +#define BP_UARTAPP_INTR_OEIS 10 +#define BM_UARTAPP_INTR_OEIS 0x400 +#define BF_UARTAPP_INTR_OEIS(v) (((v) << 10) & 0x400) +#define BP_UARTAPP_INTR_BEIS 9 +#define BM_UARTAPP_INTR_BEIS 0x200 +#define BF_UARTAPP_INTR_BEIS(v) (((v) << 9) & 0x200) +#define BP_UARTAPP_INTR_PEIS 8 +#define BM_UARTAPP_INTR_PEIS 0x100 +#define BF_UARTAPP_INTR_PEIS(v) (((v) << 8) & 0x100) +#define BP_UARTAPP_INTR_FEIS 7 +#define BM_UARTAPP_INTR_FEIS 0x80 +#define BF_UARTAPP_INTR_FEIS(v) (((v) << 7) & 0x80) +#define BP_UARTAPP_INTR_RTIS 6 +#define BM_UARTAPP_INTR_RTIS 0x40 +#define BF_UARTAPP_INTR_RTIS(v) (((v) << 6) & 0x40) +#define BP_UARTAPP_INTR_TXIS 5 +#define BM_UARTAPP_INTR_TXIS 0x20 +#define BF_UARTAPP_INTR_TXIS(v) (((v) << 5) & 0x20) +#define BP_UARTAPP_INTR_RXIS 4 +#define BM_UARTAPP_INTR_RXIS 0x10 +#define BF_UARTAPP_INTR_RXIS(v) (((v) << 4) & 0x10) +#define BP_UARTAPP_INTR_DSRMIS 3 +#define BM_UARTAPP_INTR_DSRMIS 0x8 +#define BF_UARTAPP_INTR_DSRMIS(v) (((v) << 3) & 0x8) +#define BP_UARTAPP_INTR_DCDMIS 2 +#define BM_UARTAPP_INTR_DCDMIS 0x4 +#define BF_UARTAPP_INTR_DCDMIS(v) (((v) << 2) & 0x4) +#define BP_UARTAPP_INTR_CTSMIS 1 +#define BM_UARTAPP_INTR_CTSMIS 0x2 +#define BF_UARTAPP_INTR_CTSMIS(v) (((v) << 1) & 0x2) +#define BP_UARTAPP_INTR_RIMIS 0 +#define BM_UARTAPP_INTR_RIMIS 0x1 +#define BF_UARTAPP_INTR_RIMIS(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTAPP_DATA + * Address: 0x50 + * SCT: no +*/ +#define HW_UARTAPP_DATA (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x50)) +#define BP_UARTAPP_DATA_DATA 0 +#define BM_UARTAPP_DATA_DATA 0xffffffff +#define BF_UARTAPP_DATA_DATA(v) (((v) << 0) & 0xffffffff) + +/** + * Register: HW_UARTAPP_STAT + * Address: 0x60 + * SCT: no +*/ +#define HW_UARTAPP_STAT (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x60)) +#define BP_UARTAPP_STAT_PRESENT 31 +#define BM_UARTAPP_STAT_PRESENT 0x80000000 +#define BV_UARTAPP_STAT_PRESENT__UNAVAILABLE 0x0 +#define BV_UARTAPP_STAT_PRESENT__AVAILABLE 0x1 +#define BF_UARTAPP_STAT_PRESENT(v) (((v) << 31) & 0x80000000) +#define BF_UARTAPP_STAT_PRESENT_V(v) ((BV_UARTAPP_STAT_PRESENT__##v << 31) & 0x80000000) +#define BP_UARTAPP_STAT_HISPEED 30 +#define BM_UARTAPP_STAT_HISPEED 0x40000000 +#define BV_UARTAPP_STAT_HISPEED__UNAVAILABLE 0x0 +#define BV_UARTAPP_STAT_HISPEED__AVAILABLE 0x1 +#define BF_UARTAPP_STAT_HISPEED(v) (((v) << 30) & 0x40000000) +#define BF_UARTAPP_STAT_HISPEED_V(v) ((BV_UARTAPP_STAT_HISPEED__##v << 30) & 0x40000000) +#define BP_UARTAPP_STAT_BUSY 29 +#define BM_UARTAPP_STAT_BUSY 0x20000000 +#define BF_UARTAPP_STAT_BUSY(v) (((v) << 29) & 0x20000000) +#define BP_UARTAPP_STAT_CTS 28 +#define BM_UARTAPP_STAT_CTS 0x10000000 +#define BF_UARTAPP_STAT_CTS(v) (((v) << 28) & 0x10000000) +#define BP_UARTAPP_STAT_TXFE 27 +#define BM_UARTAPP_STAT_TXFE 0x8000000 +#define BF_UARTAPP_STAT_TXFE(v) (((v) << 27) & 0x8000000) +#define BP_UARTAPP_STAT_RXFF 26 +#define BM_UARTAPP_STAT_RXFF 0x4000000 +#define BF_UARTAPP_STAT_RXFF(v) (((v) << 26) & 0x4000000) +#define BP_UARTAPP_STAT_TXFF 25 +#define BM_UARTAPP_STAT_TXFF 0x2000000 +#define BF_UARTAPP_STAT_TXFF(v) (((v) << 25) & 0x2000000) +#define BP_UARTAPP_STAT_RXFE 24 +#define BM_UARTAPP_STAT_RXFE 0x1000000 +#define BF_UARTAPP_STAT_RXFE(v) (((v) << 24) & 0x1000000) +#define BP_UARTAPP_STAT_RXBYTE_INVALID 20 +#define BM_UARTAPP_STAT_RXBYTE_INVALID 0xf00000 +#define BF_UARTAPP_STAT_RXBYTE_INVALID(v) (((v) << 20) & 0xf00000) +#define BP_UARTAPP_STAT_OERR 19 +#define BM_UARTAPP_STAT_OERR 0x80000 +#define BF_UARTAPP_STAT_OERR(v) (((v) << 19) & 0x80000) +#define BP_UARTAPP_STAT_BERR 18 +#define BM_UARTAPP_STAT_BERR 0x40000 +#define BF_UARTAPP_STAT_BERR(v) (((v) << 18) & 0x40000) +#define BP_UARTAPP_STAT_PERR 17 +#define BM_UARTAPP_STAT_PERR 0x20000 +#define BF_UARTAPP_STAT_PERR(v) (((v) << 17) & 0x20000) +#define BP_UARTAPP_STAT_FERR 16 +#define BM_UARTAPP_STAT_FERR 0x10000 +#define BF_UARTAPP_STAT_FERR(v) (((v) << 16) & 0x10000) +#define BP_UARTAPP_STAT_RXCOUNT 0 +#define BM_UARTAPP_STAT_RXCOUNT 0xffff +#define BF_UARTAPP_STAT_RXCOUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_UARTAPP_DEBUG + * Address: 0x70 + * SCT: no +*/ +#define HW_UARTAPP_DEBUG (*(volatile unsigned long *)(REGS_UARTAPP_BASE + 0x70)) +#define BP_UARTAPP_DEBUG_TXDMARUN 5 +#define BM_UARTAPP_DEBUG_TXDMARUN 0x20 +#define BF_UARTAPP_DEBUG_TXDMARUN(v) (((v) << 5) & 0x20) +#define BP_UARTAPP_DEBUG_RXDMARUN 4 +#define BM_UARTAPP_DEBUG_RXDMARUN 0x10 +#define BF_UARTAPP_DEBUG_RXDMARUN(v) (((v) << 4) & 0x10) +#define BP_UARTAPP_DEBUG_TXCMDEND 3 +#define BM_UARTAPP_DEBUG_TXCMDEND 0x8 +#define BF_UARTAPP_DEBUG_TXCMDEND(v) (((v) << 3) & 0x8) +#define BP_UARTAPP_DEBUG_RXCMDEND 2 +#define BM_UARTAPP_DEBUG_RXCMDEND 0x4 +#define BF_UARTAPP_DEBUG_RXCMDEND(v) (((v) << 2) & 0x4) +#define BP_UARTAPP_DEBUG_TXDMARQ 1 +#define BM_UARTAPP_DEBUG_TXDMARQ 0x2 +#define BF_UARTAPP_DEBUG_TXDMARQ(v) (((v) << 1) & 0x2) +#define BP_UARTAPP_DEBUG_RXDMARQ 0 +#define BM_UARTAPP_DEBUG_RXDMARQ 0x1 +#define BF_UARTAPP_DEBUG_RXDMARQ(v) (((v) << 0) & 0x1) + +#endif /* __HEADERGEN__STMP3600__UARTAPP__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-uartdbg.h b/firmware/target/arm/imx233/regs/stmp3600/regs-uartdbg.h new file mode 100644 index 0000000000..9750330d9d --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-uartdbg.h @@ -0,0 +1,491 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__UARTDBG__H__ +#define __HEADERGEN__STMP3600__UARTDBG__H__ + +#define REGS_UARTDBG_BASE (0x80070000) + +#define REGS_UARTDBG_VERSION "2.3.0" + +/** + * Register: HW_UARTDBG_DR + * Address: 0 + * SCT: no +*/ +#define HW_UARTDBG_DR (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x0)) +#define BP_UARTDBG_DR_UNAVAILABLE 16 +#define BM_UARTDBG_DR_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_DR_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_DR_RESERVED 12 +#define BM_UARTDBG_DR_RESERVED 0xf000 +#define BF_UARTDBG_DR_RESERVED(v) (((v) << 12) & 0xf000) +#define BP_UARTDBG_DR_OE 11 +#define BM_UARTDBG_DR_OE 0x800 +#define BF_UARTDBG_DR_OE(v) (((v) << 11) & 0x800) +#define BP_UARTDBG_DR_BE 10 +#define BM_UARTDBG_DR_BE 0x400 +#define BF_UARTDBG_DR_BE(v) (((v) << 10) & 0x400) +#define BP_UARTDBG_DR_PE 9 +#define BM_UARTDBG_DR_PE 0x200 +#define BF_UARTDBG_DR_PE(v) (((v) << 9) & 0x200) +#define BP_UARTDBG_DR_FE 8 +#define BM_UARTDBG_DR_FE 0x100 +#define BF_UARTDBG_DR_FE(v) (((v) << 8) & 0x100) +#define BP_UARTDBG_DR_DATA 0 +#define BM_UARTDBG_DR_DATA 0xff +#define BF_UARTDBG_DR_DATA(v) (((v) << 0) & 0xff) + +/** + * Register: HW_UARTDBG_RSR_ECR + * Address: 0x4 + * SCT: no +*/ +#define HW_UARTDBG_RSR_ECR (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x4)) +#define BP_UARTDBG_RSR_ECR_UNAVAILABLE 8 +#define BM_UARTDBG_RSR_ECR_UNAVAILABLE 0xffffff00 +#define BF_UARTDBG_RSR_ECR_UNAVAILABLE(v) (((v) << 8) & 0xffffff00) +#define BP_UARTDBG_RSR_ECR_EC 4 +#define BM_UARTDBG_RSR_ECR_EC 0xf0 +#define BF_UARTDBG_RSR_ECR_EC(v) (((v) << 4) & 0xf0) +#define BP_UARTDBG_RSR_ECR_OE 3 +#define BM_UARTDBG_RSR_ECR_OE 0x8 +#define BF_UARTDBG_RSR_ECR_OE(v) (((v) << 3) & 0x8) +#define BP_UARTDBG_RSR_ECR_BE 2 +#define BM_UARTDBG_RSR_ECR_BE 0x4 +#define BF_UARTDBG_RSR_ECR_BE(v) (((v) << 2) & 0x4) +#define BP_UARTDBG_RSR_ECR_PE 1 +#define BM_UARTDBG_RSR_ECR_PE 0x2 +#define BF_UARTDBG_RSR_ECR_PE(v) (((v) << 1) & 0x2) +#define BP_UARTDBG_RSR_ECR_FE 0 +#define BM_UARTDBG_RSR_ECR_FE 0x1 +#define BF_UARTDBG_RSR_ECR_FE(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTDBG_FR + * Address: 0x18 + * SCT: no +*/ +#define HW_UARTDBG_FR (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x18)) +#define BP_UARTDBG_FR_UNAVAILABLE 16 +#define BM_UARTDBG_FR_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_FR_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_FR_RESERVED 9 +#define BM_UARTDBG_FR_RESERVED 0xfe00 +#define BF_UARTDBG_FR_RESERVED(v) (((v) << 9) & 0xfe00) +#define BP_UARTDBG_FR_RI 8 +#define BM_UARTDBG_FR_RI 0x100 +#define BF_UARTDBG_FR_RI(v) (((v) << 8) & 0x100) +#define BP_UARTDBG_FR_TXFE 7 +#define BM_UARTDBG_FR_TXFE 0x80 +#define BF_UARTDBG_FR_TXFE(v) (((v) << 7) & 0x80) +#define BP_UARTDBG_FR_RXFF 6 +#define BM_UARTDBG_FR_RXFF 0x40 +#define BF_UARTDBG_FR_RXFF(v) (((v) << 6) & 0x40) +#define BP_UARTDBG_FR_TXFF 5 +#define BM_UARTDBG_FR_TXFF 0x20 +#define BF_UARTDBG_FR_TXFF(v) (((v) << 5) & 0x20) +#define BP_UARTDBG_FR_RXFE 4 +#define BM_UARTDBG_FR_RXFE 0x10 +#define BF_UARTDBG_FR_RXFE(v) (((v) << 4) & 0x10) +#define BP_UARTDBG_FR_BUSY 3 +#define BM_UARTDBG_FR_BUSY 0x8 +#define BF_UARTDBG_FR_BUSY(v) (((v) << 3) & 0x8) +#define BP_UARTDBG_FR_DCD 2 +#define BM_UARTDBG_FR_DCD 0x4 +#define BF_UARTDBG_FR_DCD(v) (((v) << 2) & 0x4) +#define BP_UARTDBG_FR_DSR 1 +#define BM_UARTDBG_FR_DSR 0x2 +#define BF_UARTDBG_FR_DSR(v) (((v) << 1) & 0x2) +#define BP_UARTDBG_FR_CTS 0 +#define BM_UARTDBG_FR_CTS 0x1 +#define BF_UARTDBG_FR_CTS(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTDBG_ILPR + * Address: 0x20 + * SCT: no +*/ +#define HW_UARTDBG_ILPR (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x20)) +#define BP_UARTDBG_ILPR_UNAVAILABLE 8 +#define BM_UARTDBG_ILPR_UNAVAILABLE 0xffffff00 +#define BF_UARTDBG_ILPR_UNAVAILABLE(v) (((v) << 8) & 0xffffff00) +#define BP_UARTDBG_ILPR_ILPDVSR 0 +#define BM_UARTDBG_ILPR_ILPDVSR 0xff +#define BF_UARTDBG_ILPR_ILPDVSR(v) (((v) << 0) & 0xff) + +/** + * Register: HW_UARTDBG_IBRD + * Address: 0x24 + * SCT: no +*/ +#define HW_UARTDBG_IBRD (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x24)) +#define BP_UARTDBG_IBRD_UNAVAILABLE 16 +#define BM_UARTDBG_IBRD_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_IBRD_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_IBRD_BAUD_DIVINT 0 +#define BM_UARTDBG_IBRD_BAUD_DIVINT 0xffff +#define BF_UARTDBG_IBRD_BAUD_DIVINT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_UARTDBG_FBRD + * Address: 0x28 + * SCT: no +*/ +#define HW_UARTDBG_FBRD (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x28)) +#define BP_UARTDBG_FBRD_UNAVAILABLE 8 +#define BM_UARTDBG_FBRD_UNAVAILABLE 0xffffff00 +#define BF_UARTDBG_FBRD_UNAVAILABLE(v) (((v) << 8) & 0xffffff00) +#define BP_UARTDBG_FBRD_RESERVED 6 +#define BM_UARTDBG_FBRD_RESERVED 0xc0 +#define BF_UARTDBG_FBRD_RESERVED(v) (((v) << 6) & 0xc0) +#define BP_UARTDBG_FBRD_BAUD_DIVFRAC 0 +#define BM_UARTDBG_FBRD_BAUD_DIVFRAC 0x3f +#define BF_UARTDBG_FBRD_BAUD_DIVFRAC(v) (((v) << 0) & 0x3f) + +/** + * Register: HW_UARTDBG_LCR_H + * Address: 0x2c + * SCT: no +*/ +#define HW_UARTDBG_LCR_H (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x2c)) +#define BP_UARTDBG_LCR_H_UNAVAILABLE 16 +#define BM_UARTDBG_LCR_H_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_LCR_H_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_LCR_H_RESERVED 8 +#define BM_UARTDBG_LCR_H_RESERVED 0xff00 +#define BF_UARTDBG_LCR_H_RESERVED(v) (((v) << 8) & 0xff00) +#define BP_UARTDBG_LCR_H_SPS 7 +#define BM_UARTDBG_LCR_H_SPS 0x80 +#define BF_UARTDBG_LCR_H_SPS(v) (((v) << 7) & 0x80) +#define BP_UARTDBG_LCR_H_WLEN 5 +#define BM_UARTDBG_LCR_H_WLEN 0x60 +#define BF_UARTDBG_LCR_H_WLEN(v) (((v) << 5) & 0x60) +#define BP_UARTDBG_LCR_H_FEN 4 +#define BM_UARTDBG_LCR_H_FEN 0x10 +#define BF_UARTDBG_LCR_H_FEN(v) (((v) << 4) & 0x10) +#define BP_UARTDBG_LCR_H_STP2 3 +#define BM_UARTDBG_LCR_H_STP2 0x8 +#define BF_UARTDBG_LCR_H_STP2(v) (((v) << 3) & 0x8) +#define BP_UARTDBG_LCR_H_EPS 2 +#define BM_UARTDBG_LCR_H_EPS 0x4 +#define BF_UARTDBG_LCR_H_EPS(v) (((v) << 2) & 0x4) +#define BP_UARTDBG_LCR_H_PEN 1 +#define BM_UARTDBG_LCR_H_PEN 0x2 +#define BF_UARTDBG_LCR_H_PEN(v) (((v) << 1) & 0x2) +#define BP_UARTDBG_LCR_H_BRK 0 +#define BM_UARTDBG_LCR_H_BRK 0x1 +#define BF_UARTDBG_LCR_H_BRK(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTDBG_CR + * Address: 0x30 + * SCT: no +*/ +#define HW_UARTDBG_CR (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x30)) +#define BP_UARTDBG_CR_UNAVAILABLE 16 +#define BM_UARTDBG_CR_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_CR_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_CR_CTSEN 15 +#define BM_UARTDBG_CR_CTSEN 0x8000 +#define BF_UARTDBG_CR_CTSEN(v) (((v) << 15) & 0x8000) +#define BP_UARTDBG_CR_RTSEN 14 +#define BM_UARTDBG_CR_RTSEN 0x4000 +#define BF_UARTDBG_CR_RTSEN(v) (((v) << 14) & 0x4000) +#define BP_UARTDBG_CR_OUT2 13 +#define BM_UARTDBG_CR_OUT2 0x2000 +#define BF_UARTDBG_CR_OUT2(v) (((v) << 13) & 0x2000) +#define BP_UARTDBG_CR_OUT1 12 +#define BM_UARTDBG_CR_OUT1 0x1000 +#define BF_UARTDBG_CR_OUT1(v) (((v) << 12) & 0x1000) +#define BP_UARTDBG_CR_RTS 11 +#define BM_UARTDBG_CR_RTS 0x800 +#define BF_UARTDBG_CR_RTS(v) (((v) << 11) & 0x800) +#define BP_UARTDBG_CR_DTR 10 +#define BM_UARTDBG_CR_DTR 0x400 +#define BF_UARTDBG_CR_DTR(v) (((v) << 10) & 0x400) +#define BP_UARTDBG_CR_RXE 9 +#define BM_UARTDBG_CR_RXE 0x200 +#define BF_UARTDBG_CR_RXE(v) (((v) << 9) & 0x200) +#define BP_UARTDBG_CR_TXE 8 +#define BM_UARTDBG_CR_TXE 0x100 +#define BF_UARTDBG_CR_TXE(v) (((v) << 8) & 0x100) +#define BP_UARTDBG_CR_LBE 7 +#define BM_UARTDBG_CR_LBE 0x80 +#define BF_UARTDBG_CR_LBE(v) (((v) << 7) & 0x80) +#define BP_UARTDBG_CR_RESERVED 3 +#define BM_UARTDBG_CR_RESERVED 0x78 +#define BF_UARTDBG_CR_RESERVED(v) (((v) << 3) & 0x78) +#define BP_UARTDBG_CR_SIRLP 2 +#define BM_UARTDBG_CR_SIRLP 0x4 +#define BF_UARTDBG_CR_SIRLP(v) (((v) << 2) & 0x4) +#define BP_UARTDBG_CR_SIREN 1 +#define BM_UARTDBG_CR_SIREN 0x2 +#define BF_UARTDBG_CR_SIREN(v) (((v) << 1) & 0x2) +#define BP_UARTDBG_CR_UARTEN 0 +#define BM_UARTDBG_CR_UARTEN 0x1 +#define BF_UARTDBG_CR_UARTEN(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTDBG_IFLS + * Address: 0x34 + * SCT: no +*/ +#define HW_UARTDBG_IFLS (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x34)) +#define BP_UARTDBG_IFLS_UNAVAILABLE 16 +#define BM_UARTDBG_IFLS_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_IFLS_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_IFLS_RESERVED 6 +#define BM_UARTDBG_IFLS_RESERVED 0xffc0 +#define BF_UARTDBG_IFLS_RESERVED(v) (((v) << 6) & 0xffc0) +#define BP_UARTDBG_IFLS_RXIFLSEL 3 +#define BM_UARTDBG_IFLS_RXIFLSEL 0x38 +#define BV_UARTDBG_IFLS_RXIFLSEL__NOT_EMPTY 0x0 +#define BV_UARTDBG_IFLS_RXIFLSEL__ONE_QUARTER 0x1 +#define BV_UARTDBG_IFLS_RXIFLSEL__ONE_HALF 0x2 +#define BV_UARTDBG_IFLS_RXIFLSEL__THREE_QUARTERS 0x3 +#define BV_UARTDBG_IFLS_RXIFLSEL__SEVEN_EIGHTHS 0x4 +#define BV_UARTDBG_IFLS_RXIFLSEL__INVALID5 0x5 +#define BV_UARTDBG_IFLS_RXIFLSEL__INVALID6 0x6 +#define BV_UARTDBG_IFLS_RXIFLSEL__INVALID7 0x7 +#define BF_UARTDBG_IFLS_RXIFLSEL(v) (((v) << 3) & 0x38) +#define BF_UARTDBG_IFLS_RXIFLSEL_V(v) ((BV_UARTDBG_IFLS_RXIFLSEL__##v << 3) & 0x38) +#define BP_UARTDBG_IFLS_TXIFLSEL 0 +#define BM_UARTDBG_IFLS_TXIFLSEL 0x7 +#define BV_UARTDBG_IFLS_TXIFLSEL__EMPTY 0x0 +#define BV_UARTDBG_IFLS_TXIFLSEL__ONE_QUARTER 0x1 +#define BV_UARTDBG_IFLS_TXIFLSEL__ONE_HALF 0x2 +#define BV_UARTDBG_IFLS_TXIFLSEL__THREE_QUARTERS 0x3 +#define BV_UARTDBG_IFLS_TXIFLSEL__SEVEN_EIGHTHS 0x4 +#define BV_UARTDBG_IFLS_TXIFLSEL__INVALID5 0x5 +#define BV_UARTDBG_IFLS_TXIFLSEL__INVALID6 0x6 +#define BV_UARTDBG_IFLS_TXIFLSEL__INVALID7 0x7 +#define BF_UARTDBG_IFLS_TXIFLSEL(v) (((v) << 0) & 0x7) +#define BF_UARTDBG_IFLS_TXIFLSEL_V(v) ((BV_UARTDBG_IFLS_TXIFLSEL__##v << 0) & 0x7) + +/** + * Register: HW_UARTDBG_IMSC + * Address: 0x38 + * SCT: no +*/ +#define HW_UARTDBG_IMSC (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x38)) +#define BP_UARTDBG_IMSC_UNAVAILABLE 16 +#define BM_UARTDBG_IMSC_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_IMSC_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_IMSC_RESERVED 11 +#define BM_UARTDBG_IMSC_RESERVED 0xf800 +#define BF_UARTDBG_IMSC_RESERVED(v) (((v) << 11) & 0xf800) +#define BP_UARTDBG_IMSC_OEIM 10 +#define BM_UARTDBG_IMSC_OEIM 0x400 +#define BF_UARTDBG_IMSC_OEIM(v) (((v) << 10) & 0x400) +#define BP_UARTDBG_IMSC_BEIM 9 +#define BM_UARTDBG_IMSC_BEIM 0x200 +#define BF_UARTDBG_IMSC_BEIM(v) (((v) << 9) & 0x200) +#define BP_UARTDBG_IMSC_PEIM 8 +#define BM_UARTDBG_IMSC_PEIM 0x100 +#define BF_UARTDBG_IMSC_PEIM(v) (((v) << 8) & 0x100) +#define BP_UARTDBG_IMSC_FEIM 7 +#define BM_UARTDBG_IMSC_FEIM 0x80 +#define BF_UARTDBG_IMSC_FEIM(v) (((v) << 7) & 0x80) +#define BP_UARTDBG_IMSC_RTIM 6 +#define BM_UARTDBG_IMSC_RTIM 0x40 +#define BF_UARTDBG_IMSC_RTIM(v) (((v) << 6) & 0x40) +#define BP_UARTDBG_IMSC_TXIM 5 +#define BM_UARTDBG_IMSC_TXIM 0x20 +#define BF_UARTDBG_IMSC_TXIM(v) (((v) << 5) & 0x20) +#define BP_UARTDBG_IMSC_RXIM 4 +#define BM_UARTDBG_IMSC_RXIM 0x10 +#define BF_UARTDBG_IMSC_RXIM(v) (((v) << 4) & 0x10) +#define BP_UARTDBG_IMSC_DSRMIM 3 +#define BM_UARTDBG_IMSC_DSRMIM 0x8 +#define BF_UARTDBG_IMSC_DSRMIM(v) (((v) << 3) & 0x8) +#define BP_UARTDBG_IMSC_DCDMIM 2 +#define BM_UARTDBG_IMSC_DCDMIM 0x4 +#define BF_UARTDBG_IMSC_DCDMIM(v) (((v) << 2) & 0x4) +#define BP_UARTDBG_IMSC_CTSMIM 1 +#define BM_UARTDBG_IMSC_CTSMIM 0x2 +#define BF_UARTDBG_IMSC_CTSMIM(v) (((v) << 1) & 0x2) +#define BP_UARTDBG_IMSC_RIMIM 0 +#define BM_UARTDBG_IMSC_RIMIM 0x1 +#define BF_UARTDBG_IMSC_RIMIM(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTDBG_RIS + * Address: 0x3c + * SCT: no +*/ +#define HW_UARTDBG_RIS (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x3c)) +#define BP_UARTDBG_RIS_UNAVAILABLE 16 +#define BM_UARTDBG_RIS_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_RIS_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_RIS_RESERVED 11 +#define BM_UARTDBG_RIS_RESERVED 0xf800 +#define BF_UARTDBG_RIS_RESERVED(v) (((v) << 11) & 0xf800) +#define BP_UARTDBG_RIS_OERIS 10 +#define BM_UARTDBG_RIS_OERIS 0x400 +#define BF_UARTDBG_RIS_OERIS(v) (((v) << 10) & 0x400) +#define BP_UARTDBG_RIS_BERIS 9 +#define BM_UARTDBG_RIS_BERIS 0x200 +#define BF_UARTDBG_RIS_BERIS(v) (((v) << 9) & 0x200) +#define BP_UARTDBG_RIS_PERIS 8 +#define BM_UARTDBG_RIS_PERIS 0x100 +#define BF_UARTDBG_RIS_PERIS(v) (((v) << 8) & 0x100) +#define BP_UARTDBG_RIS_FERIS 7 +#define BM_UARTDBG_RIS_FERIS 0x80 +#define BF_UARTDBG_RIS_FERIS(v) (((v) << 7) & 0x80) +#define BP_UARTDBG_RIS_RTRIS 6 +#define BM_UARTDBG_RIS_RTRIS 0x40 +#define BF_UARTDBG_RIS_RTRIS(v) (((v) << 6) & 0x40) +#define BP_UARTDBG_RIS_TXRIS 5 +#define BM_UARTDBG_RIS_TXRIS 0x20 +#define BF_UARTDBG_RIS_TXRIS(v) (((v) << 5) & 0x20) +#define BP_UARTDBG_RIS_RXRIS 4 +#define BM_UARTDBG_RIS_RXRIS 0x10 +#define BF_UARTDBG_RIS_RXRIS(v) (((v) << 4) & 0x10) +#define BP_UARTDBG_RIS_DSRRMIS 3 +#define BM_UARTDBG_RIS_DSRRMIS 0x8 +#define BF_UARTDBG_RIS_DSRRMIS(v) (((v) << 3) & 0x8) +#define BP_UARTDBG_RIS_DCDRMIS 2 +#define BM_UARTDBG_RIS_DCDRMIS 0x4 +#define BF_UARTDBG_RIS_DCDRMIS(v) (((v) << 2) & 0x4) +#define BP_UARTDBG_RIS_CTSRMIS 1 +#define BM_UARTDBG_RIS_CTSRMIS 0x2 +#define BF_UARTDBG_RIS_CTSRMIS(v) (((v) << 1) & 0x2) +#define BP_UARTDBG_RIS_RIRMIS 0 +#define BM_UARTDBG_RIS_RIRMIS 0x1 +#define BF_UARTDBG_RIS_RIRMIS(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTDBG_MIS + * Address: 0x40 + * SCT: no +*/ +#define HW_UARTDBG_MIS (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x40)) +#define BP_UARTDBG_MIS_UNAVAILABLE 16 +#define BM_UARTDBG_MIS_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_MIS_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_MIS_RESERVED 11 +#define BM_UARTDBG_MIS_RESERVED 0xf800 +#define BF_UARTDBG_MIS_RESERVED(v) (((v) << 11) & 0xf800) +#define BP_UARTDBG_MIS_OEMIS 10 +#define BM_UARTDBG_MIS_OEMIS 0x400 +#define BF_UARTDBG_MIS_OEMIS(v) (((v) << 10) & 0x400) +#define BP_UARTDBG_MIS_BEMIS 9 +#define BM_UARTDBG_MIS_BEMIS 0x200 +#define BF_UARTDBG_MIS_BEMIS(v) (((v) << 9) & 0x200) +#define BP_UARTDBG_MIS_PEMIS 8 +#define BM_UARTDBG_MIS_PEMIS 0x100 +#define BF_UARTDBG_MIS_PEMIS(v) (((v) << 8) & 0x100) +#define BP_UARTDBG_MIS_FEMIS 7 +#define BM_UARTDBG_MIS_FEMIS 0x80 +#define BF_UARTDBG_MIS_FEMIS(v) (((v) << 7) & 0x80) +#define BP_UARTDBG_MIS_RTMIS 6 +#define BM_UARTDBG_MIS_RTMIS 0x40 +#define BF_UARTDBG_MIS_RTMIS(v) (((v) << 6) & 0x40) +#define BP_UARTDBG_MIS_TXMIS 5 +#define BM_UARTDBG_MIS_TXMIS 0x20 +#define BF_UARTDBG_MIS_TXMIS(v) (((v) << 5) & 0x20) +#define BP_UARTDBG_MIS_RXMIS 4 +#define BM_UARTDBG_MIS_RXMIS 0x10 +#define BF_UARTDBG_MIS_RXMIS(v) (((v) << 4) & 0x10) +#define BP_UARTDBG_MIS_DSRMMIS 3 +#define BM_UARTDBG_MIS_DSRMMIS 0x8 +#define BF_UARTDBG_MIS_DSRMMIS(v) (((v) << 3) & 0x8) +#define BP_UARTDBG_MIS_DCDMMIS 2 +#define BM_UARTDBG_MIS_DCDMMIS 0x4 +#define BF_UARTDBG_MIS_DCDMMIS(v) (((v) << 2) & 0x4) +#define BP_UARTDBG_MIS_CTSMMIS 1 +#define BM_UARTDBG_MIS_CTSMMIS 0x2 +#define BF_UARTDBG_MIS_CTSMMIS(v) (((v) << 1) & 0x2) +#define BP_UARTDBG_MIS_RIMMIS 0 +#define BM_UARTDBG_MIS_RIMMIS 0x1 +#define BF_UARTDBG_MIS_RIMMIS(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTDBG_ICR + * Address: 0x44 + * SCT: no +*/ +#define HW_UARTDBG_ICR (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x44)) +#define BP_UARTDBG_ICR_UNAVAILABLE 16 +#define BM_UARTDBG_ICR_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_ICR_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_ICR_RESERVED 11 +#define BM_UARTDBG_ICR_RESERVED 0xf800 +#define BF_UARTDBG_ICR_RESERVED(v) (((v) << 11) & 0xf800) +#define BP_UARTDBG_ICR_OEIC 10 +#define BM_UARTDBG_ICR_OEIC 0x400 +#define BF_UARTDBG_ICR_OEIC(v) (((v) << 10) & 0x400) +#define BP_UARTDBG_ICR_BEIC 9 +#define BM_UARTDBG_ICR_BEIC 0x200 +#define BF_UARTDBG_ICR_BEIC(v) (((v) << 9) & 0x200) +#define BP_UARTDBG_ICR_PEIC 8 +#define BM_UARTDBG_ICR_PEIC 0x100 +#define BF_UARTDBG_ICR_PEIC(v) (((v) << 8) & 0x100) +#define BP_UARTDBG_ICR_FEIC 7 +#define BM_UARTDBG_ICR_FEIC 0x80 +#define BF_UARTDBG_ICR_FEIC(v) (((v) << 7) & 0x80) +#define BP_UARTDBG_ICR_RTIC 6 +#define BM_UARTDBG_ICR_RTIC 0x40 +#define BF_UARTDBG_ICR_RTIC(v) (((v) << 6) & 0x40) +#define BP_UARTDBG_ICR_TXIC 5 +#define BM_UARTDBG_ICR_TXIC 0x20 +#define BF_UARTDBG_ICR_TXIC(v) (((v) << 5) & 0x20) +#define BP_UARTDBG_ICR_RXIC 4 +#define BM_UARTDBG_ICR_RXIC 0x10 +#define BF_UARTDBG_ICR_RXIC(v) (((v) << 4) & 0x10) +#define BP_UARTDBG_ICR_DSRMIC 3 +#define BM_UARTDBG_ICR_DSRMIC 0x8 +#define BF_UARTDBG_ICR_DSRMIC(v) (((v) << 3) & 0x8) +#define BP_UARTDBG_ICR_DCDMIC 2 +#define BM_UARTDBG_ICR_DCDMIC 0x4 +#define BF_UARTDBG_ICR_DCDMIC(v) (((v) << 2) & 0x4) +#define BP_UARTDBG_ICR_CTSMIC 1 +#define BM_UARTDBG_ICR_CTSMIC 0x2 +#define BF_UARTDBG_ICR_CTSMIC(v) (((v) << 1) & 0x2) +#define BP_UARTDBG_ICR_RIMIC 0 +#define BM_UARTDBG_ICR_RIMIC 0x1 +#define BF_UARTDBG_ICR_RIMIC(v) (((v) << 0) & 0x1) + +/** + * Register: HW_UARTDBG_DMACR + * Address: 0x48 + * SCT: no +*/ +#define HW_UARTDBG_DMACR (*(volatile unsigned long *)(REGS_UARTDBG_BASE + 0x48)) +#define BP_UARTDBG_DMACR_UNAVAILABLE 16 +#define BM_UARTDBG_DMACR_UNAVAILABLE 0xffff0000 +#define BF_UARTDBG_DMACR_UNAVAILABLE(v) (((v) << 16) & 0xffff0000) +#define BP_UARTDBG_DMACR_RESERVED 3 +#define BM_UARTDBG_DMACR_RESERVED 0xfff8 +#define BF_UARTDBG_DMACR_RESERVED(v) (((v) << 3) & 0xfff8) +#define BP_UARTDBG_DMACR_DMAONERR 2 +#define BM_UARTDBG_DMACR_DMAONERR 0x4 +#define BF_UARTDBG_DMACR_DMAONERR(v) (((v) << 2) & 0x4) +#define BP_UARTDBG_DMACR_TXDMAE 1 +#define BM_UARTDBG_DMACR_TXDMAE 0x2 +#define BF_UARTDBG_DMACR_TXDMAE(v) (((v) << 1) & 0x2) +#define BP_UARTDBG_DMACR_RXDMAE 0 +#define BM_UARTDBG_DMACR_RXDMAE 0x1 +#define BF_UARTDBG_DMACR_RXDMAE(v) (((v) << 0) & 0x1) + +#endif /* __HEADERGEN__STMP3600__UARTDBG__H__ */ diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-usbphy.h b/firmware/target/arm/imx233/regs/stmp3600/regs-usbphy.h new file mode 100644 index 0000000000..f255a3bc6c --- /dev/null +++ b/firmware/target/arm/imx233/regs/stmp3600/regs-usbphy.h @@ -0,0 +1,405 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * This file was automatically generated by headergen, DO NOT EDIT it. + * headergen version: 2.1.7 + * XML versions: stmp3600:2.3.0 + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __HEADERGEN__STMP3600__USBPHY__H__ +#define __HEADERGEN__STMP3600__USBPHY__H__ + +#define REGS_USBPHY_BASE (0x8007c000) + +#define REGS_USBPHY_VERSION "2.3.0" + +/** + * Register: HW_USBPHY_PWD + * Address: 0 + * SCT: yes +*/ +#define HW_USBPHY_PWD (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x0 + 0x0)) +#define HW_USBPHY_PWD_SET (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x0 + 0x4)) +#define HW_USBPHY_PWD_CLR (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x0 + 0x8)) +#define HW_USBPHY_PWD_TOG (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x0 + 0xc)) +#define BP_USBPHY_PWD_RXPWDRX 20 +#define BM_USBPHY_PWD_RXPWDRX 0x100000 +#define BF_USBPHY_PWD_RXPWDRX(v) (((v) << 20) & 0x100000) +#define BP_USBPHY_PWD_RXPWDDIFF 19 +#define BM_USBPHY_PWD_RXPWDDIFF 0x80000 +#define BF_USBPHY_PWD_RXPWDDIFF(v) (((v) << 19) & 0x80000) +#define BP_USBPHY_PWD_RXPWD1PT1 18 +#define BM_USBPHY_PWD_RXPWD1PT1 0x40000 +#define BF_USBPHY_PWD_RXPWD1PT1(v) (((v) << 18) & 0x40000) +#define BP_USBPHY_PWD_RXPWDENV 17 +#define BM_USBPHY_PWD_RXPWDENV 0x20000 +#define BF_USBPHY_PWD_RXPWDENV(v) (((v) << 17) & 0x20000) +#define BP_USBPHY_PWD_TXPWDCOMP 14 +#define BM_USBPHY_PWD_TXPWDCOMP 0x4000 +#define BF_USBPHY_PWD_TXPWDCOMP(v) (((v) << 14) & 0x4000) +#define BP_USBPHY_PWD_TXPWDVBG 13 +#define BM_USBPHY_PWD_TXPWDVBG 0x2000 +#define BF_USBPHY_PWD_TXPWDVBG(v) (((v) << 13) & 0x2000) +#define BP_USBPHY_PWD_TXPWDV2I 12 +#define BM_USBPHY_PWD_TXPWDV2I 0x1000 +#define BF_USBPHY_PWD_TXPWDV2I(v) (((v) << 12) & 0x1000) +#define BP_USBPHY_PWD_TXPWDIBIAS 11 +#define BM_USBPHY_PWD_TXPWDIBIAS 0x800 +#define BF_USBPHY_PWD_TXPWDIBIAS(v) (((v) << 11) & 0x800) +#define BP_USBPHY_PWD_TXPWDFS 10 +#define BM_USBPHY_PWD_TXPWDFS 0x400 +#define BF_USBPHY_PWD_TXPWDFS(v) (((v) << 10) & 0x400) + +/** + * Register: HW_USBPHY_TX + * Address: 0x10 + * SCT: yes +*/ +#define HW_USBPHY_TX (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x10 + 0x0)) +#define HW_USBPHY_TX_SET (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x10 + 0x4)) +#define HW_USBPHY_TX_CLR (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x10 + 0x8)) +#define HW_USBPHY_TX_TOG (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x10 + 0xc)) +#define BP_USBPHY_TX_TXCMPOUT_STATUS 23 +#define BM_USBPHY_TX_TXCMPOUT_STATUS 0x800000 +#define BF_USBPHY_TX_TXCMPOUT_STATUS(v) (((v) << 23) & 0x800000) +#define BP_USBPHY_TX_TXENCAL45DP 21 +#define BM_USBPHY_TX_TXENCAL45DP 0x200000 +#define BF_USBPHY_TX_TXENCAL45DP(v) (((v) << 21) & 0x200000) +#define BP_USBPHY_TX_TXCAL45DP 16 +#define BM_USBPHY_TX_TXCAL45DP 0x1f0000 +#define BF_USBPHY_TX_TXCAL45DP(v) (((v) << 16) & 0x1f0000) +#define BP_USBPHY_TX_TXENCAL45DN 13 +#define BM_USBPHY_TX_TXENCAL45DN 0x2000 +#define BF_USBPHY_TX_TXENCAL45DN(v) (((v) << 13) & 0x2000) +#define BP_USBPHY_TX_TXCAL45DN 8 +#define BM_USBPHY_TX_TXCAL45DN 0x1f00 +#define BF_USBPHY_TX_TXCAL45DN(v) (((v) << 8) & 0x1f00) +#define BP_USBPHY_TX_TXCALIBRATE 7 +#define BM_USBPHY_TX_TXCALIBRATE 0x80 +#define BF_USBPHY_TX_TXCALIBRATE(v) (((v) << 7) & 0x80) + +/** + * Register: HW_USBPHY_RX + * Address: 0x20 + * SCT: yes +*/ +#define HW_USBPHY_RX (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x20 + 0x0)) +#define HW_USBPHY_RX_SET (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x20 + 0x4)) +#define HW_USBPHY_RX_CLR (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x20 + 0x8)) +#define HW_USBPHY_RX_TOG (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x20 + 0xc)) +#define BP_USBPHY_RX_RXDBYPASS 22 +#define BM_USBPHY_RX_RXDBYPASS 0x400000 +#define BF_USBPHY_RX_RXDBYPASS(v) (((v) << 22) & 0x400000) +#define BP_USBPHY_RX_DISCONADJ 4 +#define BM_USBPHY_RX_DISCONADJ 0x30 +#define BF_USBPHY_RX_DISCONADJ(v) (((v) << 4) & 0x30) +#define BP_USBPHY_RX_ENVADJ 0 +#define BM_USBPHY_RX_ENVADJ 0x3 +#define BF_USBPHY_RX_ENVADJ(v) (((v) << 0) & 0x3) + +/** + * Register: HW_USBPHY_CTRL + * Address: 0x30 + * SCT: yes +*/ +#define HW_USBPHY_CTRL (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x30 + 0x0)) +#define HW_USBPHY_CTRL_SET (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x30 + 0x4)) +#define HW_USBPHY_CTRL_CLR (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x30 + 0x8)) +#define HW_USBPHY_CTRL_TOG (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x30 + 0xc)) +#define BP_USBPHY_CTRL_SFTRST 31 +#define BM_USBPHY_CTRL_SFTRST 0x80000000 +#define BF_USBPHY_CTRL_SFTRST(v) (((v) << 31) & 0x80000000) +#define BP_USBPHY_CTRL_CLKGATE 30 +#define BM_USBPHY_CTRL_CLKGATE 0x40000000 +#define BF_USBPHY_CTRL_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_USBPHY_CTRL_UTMI_SUSPENDM 29 +#define BM_USBPHY_CTRL_UTMI_SUSPENDM 0x20000000 +#define BF_USBPHY_CTRL_UTMI_SUSPENDM(v) (((v) << 29) & 0x20000000) +#define BP_USBPHY_CTRL_RESUME_IRQ 10 +#define BM_USBPHY_CTRL_RESUME_IRQ 0x400 +#define BF_USBPHY_CTRL_RESUME_IRQ(v) (((v) << 10) & 0x400) +#define BP_USBPHY_CTRL_ENIRQRESUMEDETECT 9 +#define BM_USBPHY_CTRL_ENIRQRESUMEDETECT 0x200 +#define BF_USBPHY_CTRL_ENIRQRESUMEDETECT(v) (((v) << 9) & 0x200) +#define BP_USBPHY_CTRL_ENOTGIDDETECT 7 +#define BM_USBPHY_CTRL_ENOTGIDDETECT 0x80 +#define BF_USBPHY_CTRL_ENOTGIDDETECT(v) (((v) << 7) & 0x80) +#define BP_USBPHY_CTRL_ENDEVPLUGINDETECT 4 +#define BM_USBPHY_CTRL_ENDEVPLUGINDETECT 0x10 +#define BF_USBPHY_CTRL_ENDEVPLUGINDETECT(v) (((v) << 4) & 0x10) +#define BP_USBPHY_CTRL_HOSTDISCONDETECT_IRQ 3 +#define BM_USBPHY_CTRL_HOSTDISCONDETECT_IRQ 0x8 +#define BF_USBPHY_CTRL_HOSTDISCONDETECT_IRQ(v) (((v) << 3) & 0x8) +#define BP_USBPHY_CTRL_ENIRQHOSTDISCON 2 +#define BM_USBPHY_CTRL_ENIRQHOSTDISCON 0x4 +#define BF_USBPHY_CTRL_ENIRQHOSTDISCON(v) (((v) << 2) & 0x4) +#define BP_USBPHY_CTRL_ENHOSTDISCONDETECT 1 +#define BM_USBPHY_CTRL_ENHOSTDISCONDETECT 0x2 +#define BF_USBPHY_CTRL_ENHOSTDISCONDETECT(v) (((v) << 1) & 0x2) +#define BP_USBPHY_CTRL_ENHSPRECHARGEXMIT 0 +#define BM_USBPHY_CTRL_ENHSPRECHARGEXMIT 0x1 +#define BF_USBPHY_CTRL_ENHSPRECHARGEXMIT(v) (((v) << 0) & 0x1) + +/** + * Register: HW_USBPHY_STATUS + * Address: 0x40 + * SCT: no +*/ +#define HW_USBPHY_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x40)) +#define BP_USBPHY_STATUS_RESUME_STATUS 10 +#define BM_USBPHY_STATUS_RESUME_STATUS 0x400 +#define BF_USBPHY_STATUS_RESUME_STATUS(v) (((v) << 10) & 0x400) +#define BP_USBPHY_STATUS_OTGID_STATUS 8 +#define BM_USBPHY_STATUS_OTGID_STATUS 0x100 +#define BF_USBPHY_STATUS_OTGID_STATUS(v) (((v) << 8) & 0x100) +#define BP_USBPHY_STATUS_DEVPLUGIN_STATUS 6 +#define BM_USBPHY_STATUS_DEVPLUGIN_STATUS 0x40 +#define BF_USBPHY_STATUS_DEVPLUGIN_STATUS(v) (((v) << 6) & 0x40) +#define BP_USBPHY_STATUS_HOSTDISCONDETECT_STATUS 3 +#define BM_USBPHY_STATUS_HOSTDISCONDETECT_STATUS 0x8 +#define BF_USBPHY_STATUS_HOSTDISCONDETECT_STATUS(v) (((v) << 3) & 0x8) + +/** + * Register: HW_USBPHY_DEBUG + * Address: 0x50 + * SCT: yes +*/ +#define HW_USBPHY_DEBUG (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x50 + 0x0)) +#define HW_USBPHY_DEBUG_SET (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x50 + 0x4)) +#define HW_USBPHY_DEBUG_CLR (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x50 + 0x8)) +#define HW_USBPHY_DEBUG_TOG (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x50 + 0xc)) +#define BP_USBPHY_DEBUG_CLKGATE 30 +#define BM_USBPHY_DEBUG_CLKGATE 0x40000000 +#define BF_USBPHY_DEBUG_CLKGATE(v) (((v) << 30) & 0x40000000) +#define BP_USBPHY_DEBUG_SQUELCHRESETLENGTH 25 +#define BM_USBPHY_DEBUG_SQUELCHRESETLENGTH 0x1e000000 +#define BF_USBPHY_DEBUG_SQUELCHRESETLENGTH(v) (((v) << 25) & 0x1e000000) +#define BP_USBPHY_DEBUG_ENSQUELCHRESET 24 +#define BM_USBPHY_DEBUG_ENSQUELCHRESET 0x1000000 +#define BF_USBPHY_DEBUG_ENSQUELCHRESET(v) (((v) << 24) & 0x1000000) +#define BP_USBPHY_DEBUG_SQUELCHRESETCOUNT 16 +#define BM_USBPHY_DEBUG_SQUELCHRESETCOUNT 0x1f0000 +#define BF_USBPHY_DEBUG_SQUELCHRESETCOUNT(v) (((v) << 16) & 0x1f0000) +#define BP_USBPHY_DEBUG_ENTX2RXCOUNT 12 +#define BM_USBPHY_DEBUG_ENTX2RXCOUNT 0x1000 +#define BF_USBPHY_DEBUG_ENTX2RXCOUNT(v) (((v) << 12) & 0x1000) +#define BP_USBPHY_DEBUG_TX2RXCOUNT 8 +#define BM_USBPHY_DEBUG_TX2RXCOUNT 0xf00 +#define BF_USBPHY_DEBUG_TX2RXCOUNT(v) (((v) << 8) & 0xf00) +#define BP_USBPHY_DEBUG_ENHSTPULLDOWN 4 +#define BM_USBPHY_DEBUG_ENHSTPULLDOWN 0x30 +#define BF_USBPHY_DEBUG_ENHSTPULLDOWN(v) (((v) << 4) & 0x30) +#define BP_USBPHY_DEBUG_HSTPULLDOWN 2 +#define BM_USBPHY_DEBUG_HSTPULLDOWN 0xc +#define BF_USBPHY_DEBUG_HSTPULLDOWN(v) (((v) << 2) & 0xc) +#define BP_USBPHY_DEBUG_DEBUG_INTERFACE_HOLD 1 +#define BM_USBPHY_DEBUG_DEBUG_INTERFACE_HOLD 0x2 +#define BF_USBPHY_DEBUG_DEBUG_INTERFACE_HOLD(v) (((v) << 1) & 0x2) +#define BP_USBPHY_DEBUG_OTGIDPIOLOCK 0 +#define BM_USBPHY_DEBUG_OTGIDPIOLOCK 0x1 +#define BF_USBPHY_DEBUG_OTGIDPIOLOCK(v) (((v) << 0) & 0x1) + +/** + * Register: HW_USBPHY_DEBUG0_STATUS + * Address: 0x60 + * SCT: no +*/ +#define HW_USBPHY_DEBUG0_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x60)) +#define BP_USBPHY_DEBUG0_STATUS_SQUELCH_COUNT 26 +#define BM_USBPHY_DEBUG0_STATUS_SQUELCH_COUNT 0xfc000000 +#define BF_USBPHY_DEBUG0_STATUS_SQUELCH_COUNT(v) (((v) << 26) & 0xfc000000) +#define BP_USBPHY_DEBUG0_STATUS_UTMI_RXERROR_FAIL_COUNT 16 +#define BM_USBPHY_DEBUG0_STATUS_UTMI_RXERROR_FAIL_COUNT 0x3ff0000 +#define BF_USBPHY_DEBUG0_STATUS_UTMI_RXERROR_FAIL_COUNT(v) (((v) << 16) & 0x3ff0000) +#define BP_USBPHY_DEBUG0_STATUS_LOOP_BACK_FAIL_COUNT 0 +#define BM_USBPHY_DEBUG0_STATUS_LOOP_BACK_FAIL_COUNT 0xffff +#define BF_USBPHY_DEBUG0_STATUS_LOOP_BACK_FAIL_COUNT(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_USBPHY_DEBUG1_STATUS + * Address: 0x70 + * SCT: no +*/ +#define HW_USBPHY_DEBUG1_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x70)) +#define BP_USBPHY_DEBUG1_STATUS_UTMI_TX_DATA 16 +#define BM_USBPHY_DEBUG1_STATUS_UTMI_TX_DATA 0xffff0000 +#define BF_USBPHY_DEBUG1_STATUS_UTMI_TX_DATA(v) (((v) << 16) & 0xffff0000) +#define BP_USBPHY_DEBUG1_STATUS_UTMI_RX_DATA 0 +#define BM_USBPHY_DEBUG1_STATUS_UTMI_RX_DATA 0xffff +#define BF_USBPHY_DEBUG1_STATUS_UTMI_RX_DATA(v) (((v) << 0) & 0xffff) + +/** + * Register: HW_USBPHY_DEBUG2_STATUS + * Address: 0x80 + * SCT: no +*/ +#define HW_USBPHY_DEBUG2_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x80)) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_TXVALIDH 22 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_TXVALIDH 0x400000 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_TXVALIDH(v) (((v) << 22) & 0x400000) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_TXVALID 21 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_TXVALID 0x200000 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_TXVALID(v) (((v) << 21) & 0x200000) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_TERMSELECT 20 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_TERMSELECT 0x100000 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_TERMSELECT(v) (((v) << 20) & 0x100000) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_XCVRSELECT 18 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_XCVRSELECT 0xc0000 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_XCVRSELECT(v) (((v) << 18) & 0xc0000) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_OPMODE 16 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_OPMODE 0x30000 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_OPMODE(v) (((v) << 16) & 0x30000) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_LINESTATE 6 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_LINESTATE 0xc0 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_LINESTATE(v) (((v) << 6) & 0xc0) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_SUSPENDM 5 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_SUSPENDM 0x20 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_SUSPENDM(v) (((v) << 5) & 0x20) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_RXVALIDH 4 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_RXVALIDH 0x10 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_RXVALIDH(v) (((v) << 4) & 0x10) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_RXVALID 3 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_RXVALID 0x8 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_RXVALID(v) (((v) << 3) & 0x8) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_RXACTIVE 2 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_RXACTIVE 0x4 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_RXACTIVE(v) (((v) << 2) & 0x4) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_RXERROR 1 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_RXERROR 0x2 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_RXERROR(v) (((v) << 1) & 0x2) +#define BP_USBPHY_DEBUG2_STATUS_UTMI_TXREADY 0 +#define BM_USBPHY_DEBUG2_STATUS_UTMI_TXREADY 0x1 +#define BF_USBPHY_DEBUG2_STATUS_UTMI_TXREADY(v) (((v) << 0) & 0x1) + +/** + * Register: HW_USBPHY_DEBUG3_STATUS + * Address: 0x90 + * SCT: no +*/ +#define HW_USBPHY_DEBUG3_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0x90)) +#define BP_USBPHY_DEBUG3_STATUS_B_CNT_FSM 28 +#define BM_USBPHY_DEBUG3_STATUS_B_CNT_FSM 0x70000000 +#define BF_USBPHY_DEBUG3_STATUS_B_CNT_FSM(v) (((v) << 28) & 0x70000000) +#define BP_USBPHY_DEBUG3_STATUS_SQ_UNLOCK_FSM 23 +#define BM_USBPHY_DEBUG3_STATUS_SQ_UNLOCK_FSM 0x3800000 +#define BF_USBPHY_DEBUG3_STATUS_SQ_UNLOCK_FSM(v) (((v) << 23) & 0x3800000) +#define BP_USBPHY_DEBUG3_STATUS_BIT_CNT 12 +#define BM_USBPHY_DEBUG3_STATUS_BIT_CNT 0x3ff000 +#define BF_USBPHY_DEBUG3_STATUS_BIT_CNT(v) (((v) << 12) & 0x3ff000) +#define BP_USBPHY_DEBUG3_STATUS_MAIN_HS_RX_FSM 8 +#define BM_USBPHY_DEBUG3_STATUS_MAIN_HS_RX_FSM 0xf00 +#define BF_USBPHY_DEBUG3_STATUS_MAIN_HS_RX_FSM(v) (((v) << 8) & 0xf00) +#define BP_USBPHY_DEBUG3_STATUS_UNSTUFF_BIT_CNT 0 +#define BM_USBPHY_DEBUG3_STATUS_UNSTUFF_BIT_CNT 0xff +#define BF_USBPHY_DEBUG3_STATUS_UNSTUFF_BIT_CNT(v) (((v) << 0) & 0xff) + +/** + * Register: HW_USBPHY_DEBUG4_STATUS + * Address: 0xa0 + * SCT: no +*/ +#define HW_USBPHY_DEBUG4_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0xa0)) +#define BP_USBPHY_DEBUG4_STATUS_BYTE_FSM 16 +#define BM_USBPHY_DEBUG4_STATUS_BYTE_FSM 0x1fff0000 +#define BF_USBPHY_DEBUG4_STATUS_BYTE_FSM(v) (((v) << 16) & 0x1fff0000) +#define BP_USBPHY_DEBUG4_STATUS_SND_FSM 0 +#define BM_USBPHY_DEBUG4_STATUS_SND_FSM 0x3fff +#define BF_USBPHY_DEBUG4_STATUS_SND_FSM(v) (((v) << 0) & 0x3fff) + +/** + * Register: HW_USBPHY_DEBUG5_STATUS + * Address: 0xb0 + * SCT: no +*/ +#define HW_USBPHY_DEBUG5_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0xb0)) +#define BP_USBPHY_DEBUG5_STATUS_MAIN_FSM 24 +#define BM_USBPHY_DEBUG5_STATUS_MAIN_FSM 0xf000000 +#define BF_USBPHY_DEBUG5_STATUS_MAIN_FSM(v) (((v) << 24) & 0xf000000) +#define BP_USBPHY_DEBUG5_STATUS_SYNC_FSM 16 +#define BM_USBPHY_DEBUG5_STATUS_SYNC_FSM 0x3f0000 +#define BF_USBPHY_DEBUG5_STATUS_SYNC_FSM(v) (((v) << 16) & 0x3f0000) +#define BP_USBPHY_DEBUG5_STATUS_PRECHARGE_FSM 12 +#define BM_USBPHY_DEBUG5_STATUS_PRECHARGE_FSM 0x7000 +#define BF_USBPHY_DEBUG5_STATUS_PRECHARGE_FSM(v) (((v) << 12) & 0x7000) +#define BP_USBPHY_DEBUG5_STATUS_SHIFT_FSM 8 +#define BM_USBPHY_DEBUG5_STATUS_SHIFT_FSM 0x700 +#define BF_USBPHY_DEBUG5_STATUS_SHIFT_FSM(v) (((v) << 8) & 0x700) +#define BP_USBPHY_DEBUG5_STATUS_SOF_FSM 0 +#define BM_USBPHY_DEBUG5_STATUS_SOF_FSM 0x1f +#define BF_USBPHY_DEBUG5_STATUS_SOF_FSM(v) (((v) << 0) & 0x1f) + +/** + * Register: HW_USBPHY_DEBUG6_STATUS + * Address: 0xc0 + * SCT: no +*/ +#define HW_USBPHY_DEBUG6_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0xc0)) +#define BP_USBPHY_DEBUG6_STATUS_FIRST_EOP_FSM 8 +#define BM_USBPHY_DEBUG6_STATUS_FIRST_EOP_FSM 0x700 +#define BF_USBPHY_DEBUG6_STATUS_FIRST_EOP_FSM(v) (((v) << 8) & 0x700) +#define BP_USBPHY_DEBUG6_STATUS_EOP_FSM 0 +#define BM_USBPHY_DEBUG6_STATUS_EOP_FSM 0xff +#define BF_USBPHY_DEBUG6_STATUS_EOP_FSM(v) (((v) << 0) & 0xff) + +/** + * Register: HW_USBPHY_DEBUG7_STATUS + * Address: 0xd0 + * SCT: no +*/ +#define HW_USBPHY_DEBUG7_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0xd0)) +#define BP_USBPHY_DEBUG7_STATUS_FIRST_DATA_FSM 28 +#define BM_USBPHY_DEBUG7_STATUS_FIRST_DATA_FSM 0x30000000 +#define BF_USBPHY_DEBUG7_STATUS_FIRST_DATA_FSM(v) (((v) << 28) & 0x30000000) +#define BP_USBPHY_DEBUG7_STATUS_BIT_CNT 24 +#define BM_USBPHY_DEBUG7_STATUS_BIT_CNT 0xf000000 +#define BF_USBPHY_DEBUG7_STATUS_BIT_CNT(v) (((v) << 24) & 0xf000000) +#define BP_USBPHY_DEBUG7_STATUS_UNSTUFF_CNT 20 +#define BM_USBPHY_DEBUG7_STATUS_UNSTUFF_CNT 0x700000 +#define BF_USBPHY_DEBUG7_STATUS_UNSTUFF_CNT(v) (((v) << 20) & 0x700000) +#define BP_USBPHY_DEBUG7_STATUS_LD_FSM 16 +#define BM_USBPHY_DEBUG7_STATUS_LD_FSM 0x30000 +#define BF_USBPHY_DEBUG7_STATUS_LD_FSM(v) (((v) << 16) & 0x30000) +#define BP_USBPHY_DEBUG7_STATUS_FIFO_FSM 8 +#define BM_USBPHY_DEBUG7_STATUS_FIFO_FSM 0x3f00 +#define BF_USBPHY_DEBUG7_STATUS_FIFO_FSM(v) (((v) << 8) & 0x3f00) +#define BP_USBPHY_DEBUG7_STATUS_MAIN_FSM 4 +#define BM_USBPHY_DEBUG7_STATUS_MAIN_FSM 0xf0 +#define BF_USBPHY_DEBUG7_STATUS_MAIN_FSM(v) (((v) << 4) & 0xf0) +#define BP_USBPHY_DEBUG7_STATUS_EOP_FSM 0 +#define BM_USBPHY_DEBUG7_STATUS_EOP_FSM 0xf +#define BF_USBPHY_DEBUG7_STATUS_EOP_FSM(v) (((v) << 0) & 0xf) + +/** + * Register: HW_USBPHY_DEBUG8_STATUS + * Address: 0xe0 + * SCT: no +*/ +#define HW_USBPHY_DEBUG8_STATUS (*(volatile unsigned long *)(REGS_USBPHY_BASE + 0xe0)) +#define BP_USBPHY_DEBUG8_STATUS_RX_SIE_FSM 28 +#define BM_USBPHY_DEBUG8_STATUS_RX_SIE_FSM 0xf0000000 +#define BF_USBPHY_DEBUG8_STATUS_RX_SIE_FSM(v) (((v) << 28) & 0xf0000000) +#define BP_USBPHY_DEBUG8_STATUS_TX_SIE_FSM 24 +#define BM_USBPHY_DEBUG8_STATUS_TX_SIE_FSM 0xf000000 +#define BF_USBPHY_DEBUG8_STATUS_TX_SIE_FSM(v) (((v) << 24) & 0xf000000) +#define BP_USBPHY_DEBUG8_STATUS_SHIFT_FSM 8 +#define BM_USBPHY_DEBUG8_STATUS_SHIFT_FSM 0x300 +#define BF_USBPHY_DEBUG8_STATUS_SHIFT_FSM(v) (((v) << 8) & 0x300) +#define BP_USBPHY_DEBUG8_STATUS_FS_TX_MAIN_FSM 0 +#define BM_USBPHY_DEBUG8_STATUS_FS_TX_MAIN_FSM 0x7f +#define BF_USBPHY_DEBUG8_STATUS_FS_TX_MAIN_FSM(v) (((v) << 0) & 0x7f) + +#endif /* __HEADERGEN__STMP3600__USBPHY__H__ */ -- cgit v1.2.3