Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/include/soc/at91/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 4 kB image not shown  

Quelle  sama7-ddr.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Microchip SAMA7 UDDR Controller and DDR3 PHY Controller registers offsets
 * and bit definitions.
 *
 * Copyright (C) [2020] Microchip Technology Inc. and its subsidiaries
 *
 * Author: Claudu Beznea <claudiu.beznea@microchip.com>
 */


#ifndef __SAMA7_DDR_H__
#define __SAMA7_DDR_H__

/* DDR3PHY */
#define DDR3PHY_PIR    (0x04)  /* DDR3PHY PHY Initialization Register */
#define DDR3PHY_PIR_DLLBYP   (1 << 17) /* DLL Bypass */
#define  DDR3PHY_PIR_ITMSRST  (1 << 4) /* Interface Timing Module Soft Reset */
#define DDR3PHY_PIR_DLLLOCK   (1 << 2) /* DLL Lock */
#define  DDR3PHY_PIR_DLLSRST  (1 << 1) /* DLL Soft Rest */
#define DDR3PHY_PIR_INIT   (1 << 0) /* Initialization Trigger */

#define DDR3PHY_PGCR    (0x08)  /* DDR3PHY PHY General Configuration Register */
#define  DDR3PHY_PGCR_CKDV1  (1 << 13) /* CK# Disable Value */
#define  DDR3PHY_PGCR_CKDV0  (1 << 12) /* CK Disable Value */

#define DDR3PHY_PGSR    (0x0C)  /* DDR3PHY PHY General Status Register */
#define  DDR3PHY_PGSR_IDONE  (1 << 0) /* Initialization Done */

#define DDR3PHY_ACDLLCR    (0x14)  /* DDR3PHY AC DLL Control Register */
#define  DDR3PHY_ACDLLCR_DLLSRST  (1 << 30) /* DLL Soft Reset */

#define DDR3PHY_ACIOCR    (0x24)  /* DDR3PHY AC I/O Configuration Register */
#define  DDR3PHY_ACIOCR_CSPDD_CS0 (1 << 18) /* CS#[0] Power Down Driver */
#define  DDR3PHY_ACIOCR_CKPDD_CK0 (1 << 8) /* CK[0] Power Down Driver */
#define  DDR3PHY_ACIORC_ACPDD  (1 << 3) /* AC Power Down Driver */

#define DDR3PHY_DXCCR    (0x28)  /* DDR3PHY DATX8 Common Configuration Register */
#define  DDR3PHY_DXCCR_DXPDR  (1 << 3) /* Data Power Down Receiver */

#define DDR3PHY_DSGCR    (0x2C)  /* DDR3PHY DDR System General Configuration Register */
#define  DDR3PHY_DSGCR_ODTPDD_ODT0 (1 << 20) /* ODT[0] Power Down Driver */

#define DDR3PHY_ZQ0SR0    (0x188)  /* ZQ status register 0 */
#define DDR3PHY_ZQ0SR0_PDO_OFF   (0)  /* Pull-down output impedance select offset */
#define DDR3PHY_ZQ0SR0_PUO_OFF   (5)  /* Pull-up output impedance select offset */
#define DDR3PHY_ZQ0SR0_PDODT_OFF  (10)  /* Pull-down on-die termination impedance select offset */
#define DDR3PHY_ZQ0SRO_PUODT_OFF  (15)  /* Pull-up on-die termination impedance select offset */

#define DDR3PHY_DX0DLLCR   (0x1CC)  /* DDR3PHY DATX8 DLL Control Register */
#define DDR3PHY_DX1DLLCR   (0x20C)  /* DDR3PHY DATX8 DLL Control Register */
#define  DDR3PHY_DXDLLCR_DLLDIS  (1 << 31) /* DLL Disable */

/* UDDRC */
#define UDDRC_STAT    (0x04)  /* UDDRC Operating Mode Status Register */
#define  UDDRC_STAT_SELFREF_TYPE_DIS (0x0 << 4) /* SDRAM is not in Self-refresh */
#define  UDDRC_STAT_SELFREF_TYPE_PHY (0x1 << 4) /* SDRAM is in Self-refresh, which was caused by PHY Master Request */
#define  UDDRC_STAT_SELFREF_TYPE_SW (0x2 << 4) /* SDRAM is in Self-refresh, which was not caused solely under Automatic Self-refresh control */
#define  UDDRC_STAT_SELFREF_TYPE_AUTO (0x3 << 4) /* SDRAM is in Self-refresh, which was caused by Automatic Self-refresh only */
#define  UDDRC_STAT_SELFREF_TYPE_MSK (0x3 << 4) /* Self-refresh type mask */
#define  UDDRC_STAT_OPMODE_INIT  (0x0 << 0) /* Init */
#define  UDDRC_STAT_OPMODE_NORMAL (0x1 << 0) /* Normal */
#define  UDDRC_STAT_OPMODE_PWRDOWN (0x2 << 0) /* Power-down */
#define  UDDRC_STAT_OPMODE_SELF_REFRESH (0x3 << 0) /* Self-refresh */
#define  UDDRC_STAT_OPMODE_MSK  (0x7 << 0) /* Operating mode mask */

#define UDDRC_PWRCTL    (0x30)  /* UDDRC Low Power Control Register */
#define  UDDRC_PWRCTL_SELFREF_EN  (1 << 0) /* Automatic self-refresh */
#define  UDDRC_PWRCTL_SELFREF_SW  (1 << 5) /* Software self-refresh */

#define UDDRC_DFIMISC    (0x1B0)  /* UDDRC DFI Miscellaneous Control Register */
#define  UDDRC_DFIMISC_DFI_INIT_COMPLETE_EN (1 << 0) /* PHY initialization complete enable signal */

#define UDDRC_SWCTRL    (0x320)  /* UDDRC Software Register Programming Control Enable */
#define  UDDRC_SWCTRL_SW_DONE  (1 << 0) /* Enable quasi-dynamic register programming outside reset */

#define UDDRC_SWSTAT    (0x324)  /* UDDRC Software Register Programming Control Status */
#define  UDDRC_SWSTAT_SW_DONE_ACK (1 << 0) /* Register programming done */

#define UDDRC_PSTAT    (0x3FC)  /* UDDRC Port Status Register */
#define UDDRC_PSTAT_ALL_PORTS   (0x1F001F) /* Read + writes outstanding transactions on all ports */

#define UDDRC_PCTRL_0    (0x490)  /* UDDRC Port 0 Control Register */
#define UDDRC_PCTRL_1    (0x540)  /* UDDRC Port 1 Control Register */
#define UDDRC_PCTRL_2    (0x5F0)  /* UDDRC Port 2 Control Register */
#define UDDRC_PCTRL_3    (0x6A0)  /* UDDRC Port 3 Control Register */
#define UDDRC_PCTRL_4    (0x750)  /* UDDRC Port 4 Control Register */

#endif /* __SAMA7_DDR_H__ */

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.