]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmPkg/Drivers/PL34xDmc/PL341Dmc.c
Remove tabs from all text files in the package.
[mirror_edk2.git] / ArmPkg / Drivers / PL34xDmc / PL341Dmc.c
index 9c62a1a92b6920d8276f4aad91a3788edb0f6439..6ba82e12706e45c07154902e2682e05c10639bb4 100644 (file)
@@ -64,7 +64,7 @@
 #define DMC_DIRECT_CMD_MEMCMD_NOP               (0x3 << 18)\r
 #define DMC_DIRECT_CMD_MEMCMD_DPD               (0x1 << 22)\r
 #define DMC_DIRECT_CMD_BANKADDR(n)              ((n & 0x3) << 16)\r
-#define DMC_DIRECT_CMD_CHIP_ADDR(n)            ((n & 0x3) << 20)\r
+#define DMC_DIRECT_CMD_CHIP_ADDR(n)\s\s\s\s((n & 0x3) << 20)\r
 \r
 \r
 //\r
@@ -163,25 +163,25 @@ VOID PL341DmcInit(struct pl341_dmc_config *config) {
     //\r
 \r
     if (config->has_qos) {\r
-       // CLCD AXIID = 000\r
-       DmcWriteReg(DMC_ID_0_CFG_REG, DMC_ID_CFG_QOS_ENABLE | DMC_ID_CFG_QOS_MIN);\r
-\r
-       // Default disable QoS\r
-       DmcWriteReg(DMC_ID_1_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_2_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_3_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_4_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_5_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_6_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_7_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_8_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_9_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_10_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_11_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_12_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_13_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_14_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
-       DmcWriteReg(DMC_ID_15_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\s// CLCD AXIID = 000\r
+\s\sDmcWriteReg(DMC_ID_0_CFG_REG, DMC_ID_CFG_QOS_ENABLE | DMC_ID_CFG_QOS_MIN);\r
+\r
+\s\s// Default disable QoS\r
+\s\sDmcWriteReg(DMC_ID_1_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_2_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_3_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_4_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_5_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_6_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_7_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_8_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_9_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_10_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_11_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_12_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_13_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_14_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
+\s\sDmcWriteReg(DMC_ID_15_CFG_REG, DMC_ID_CFG_QOS_DISABLE);\r
     }\r
 \r
     //\r
@@ -231,104 +231,104 @@ VOID PL341DmcInit(struct pl341_dmc_config *config) {
     // |======================================\r
     DmcWriteReg(DMC_MEMORY_CFG3_REG, config->memory_cfg3);\r
 \r
-       // |========================================================\r
-       // |Set Test Chip PHY Registers via PL341 User Config Reg\r
-       // |Note that user_cfgX registers are Write Only\r
-       // |\r
-       // |DLL Freq set = 250MHz - 266MHz\r
-       // |======================================================== \r
-       DmcWriteReg(DMC_USER_0_CFG_REG, 0x7C924924);\r
+\s\s// |========================================================\r
+\s\s// |Set Test Chip PHY Registers via PL341 User Config Reg\r
+\s\s// |Note that user_cfgX registers are Write Only\r
+\s\s// |\r
+\s\s// |DLL Freq set = 250MHz - 266MHz\r
+\s\s// |======================================================== \r
+\s\sDmcWriteReg(DMC_USER_0_CFG_REG, 0x7C924924);\r
  \r
-       // user_config2\r
-       // ------------\r
-       // Set defaults before calibrating the DDR2 buffer impendence\r
-       // -Disable ODT\r
-       // -Default drive strengths\r
-       DmcWriteReg(DMC_USER_2_CFG_REG, 0x40000198);\r
+\s\s// user_config2\r
+\s\s// ------------\r
+\s\s// Set defaults before calibrating the DDR2 buffer impendence\r
+\s\s// -Disable ODT\r
+\s\s// -Default drive strengths\r
+\s\sDmcWriteReg(DMC_USER_2_CFG_REG, 0x40000198);\r
  \r
-       // |=======================================================\r
-       // |Auto calibrate the DDR2 buffers impendence \r
-       // |=======================================================\r
-       val32 = DmcReadReg(DMC_USER_STATUS_REG);\r
-       while (!(val32 & 0x100)) {\r
-           val32 = DmcReadReg(DMC_USER_STATUS_REG);\r
-       }\r
-\r
-       // Set the output driven strength\r
-       DmcWriteReg(DMC_USER_2_CFG_REG, 0x40800000 | \r
-                   (TC_UIOLHXC_VALUE << TC_UIOLHNC_SHIFT) | \r
-                   (TC_UIOLHXC_VALUE << TC_UIOLHPC_SHIFT) |\r
-                   (0x1 << TC_UIOHOCT_SHIFT) | \r
-                   (0x1 << TC_UIOHSTOP_SHIFT));\r
-\r
-       // |======================================\r
-       // | Set PL341 Feature Control Register \r
-       // |======================================\r
-       // | Disable early BRESP - use to optimise CLCD performance\r
-       DmcWriteReg(DMC_FEATURE_CRTL_REG, 0x00000001);\r
+\s\s// |=======================================================\r
+\s\s// |Auto calibrate the DDR2 buffers impendence \r
+\s\s// |=======================================================\r
+\s\sval32 = DmcReadReg(DMC_USER_STATUS_REG);\r
+\s\swhile (!(val32 & 0x100)) {\r
+\s\s    val32 = DmcReadReg(DMC_USER_STATUS_REG);\r
+\s\s}\r
+\r
+\s\s// Set the output driven strength\r
+\s\sDmcWriteReg(DMC_USER_2_CFG_REG, 0x40800000 | \r
+\s\s\s\s    (TC_UIOLHXC_VALUE << TC_UIOLHNC_SHIFT) | \r
+\s\s\s\s    (TC_UIOLHXC_VALUE << TC_UIOLHPC_SHIFT) |\r
+\s\s\s\s    (0x1 << TC_UIOHOCT_SHIFT) | \r
+\s\s\s\s    (0x1 << TC_UIOHSTOP_SHIFT));\r
+\r
+\s\s// |======================================\r
+\s\s// | Set PL341 Feature Control Register \r
+\s\s// |======================================\r
+\s\s// | Disable early BRESP - use to optimise CLCD performance\r
+\s\sDmcWriteReg(DMC_FEATURE_CRTL_REG, 0x00000001);\r
  \r
     //=================\r
     // Config memories\r
     //=================\r
 \r
     for (chip = 0; chip <= config-> max_chip; chip++) {\r
-       // send nop\r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_NOP);\r
-       // pre-charge all\r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_PRECHARGEALL);\r
-\r
-       // delay\r
-       for (i = 0; i < 10; i++) {\r
-           val32 = DmcReadReg(DMC_STATUS_REG);\r
-       }\r
-\r
-       // set (EMR2) extended mode register 2\r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, \r
-                   DMC_DIRECT_CMD_CHIP_ADDR(chip) | \r
-                   DMC_DIRECT_CMD_BANKADDR(2) | \r
-                   DMC_DIRECT_CMD_MEMCMD_EXTMODEREG);\r
-       // set (EMR3) extended mode register 3\r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, \r
-                   DMC_DIRECT_CMD_CHIP_ADDR(chip) | \r
-                   DMC_DIRECT_CMD_BANKADDR(3) | \r
-                   DMC_DIRECT_CMD_MEMCMD_EXTMODEREG);\r
-\r
-       // =================================\r
-       //  set (EMR) Extended Mode Register\r
-       // ==================================\r
-       // Put into OCD default state\r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, \r
-                   DMC_DIRECT_CMD_CHIP_ADDR(chip) | \r
-                   DMC_DIRECT_CMD_BANKADDR(1) | \r
-                   DMC_DIRECT_CMD_MEMCMD_EXTMODEREG);\r
-\r
-       // ===========================================================        \r
-       // set (MR) mode register - With DLL reset\r
-       // ===========================================================\r
-       // Burst Length = 4 (010)\r
-       // Burst Type   = Seq (0)\r
-       // Latency      = 4 (100)\r
-       // Test mode    = Off (0)\r
-       // DLL reset    = Yes (1)\r
-       // Wr Recovery  = 4  (011)      \r
-       // PD           = Normal (0)\r
+\s\s// send nop\r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_NOP);\r
+\s\s// pre-charge all\r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_PRECHARGEALL);\r
+\r
+\s\s// delay\r
+\s\sfor (i = 0; i < 10; i++) {\r
+\s\s    val32 = DmcReadReg(DMC_STATUS_REG);\r
+\s\s}\r
+\r
+\s\s// set (EMR2) extended mode register 2\r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, \r
+\s\s\s\s    DMC_DIRECT_CMD_CHIP_ADDR(chip) | \r
+\s\s\s\s    DMC_DIRECT_CMD_BANKADDR(2) | \r
+\s\s\s\s    DMC_DIRECT_CMD_MEMCMD_EXTMODEREG);\r
+\s\s// set (EMR3) extended mode register 3\r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, \r
+\s\s\s\s    DMC_DIRECT_CMD_CHIP_ADDR(chip) | \r
+\s\s\s\s    DMC_DIRECT_CMD_BANKADDR(3) | \r
+\s\s\s\s    DMC_DIRECT_CMD_MEMCMD_EXTMODEREG);\r
+\r
+\s\s// =================================\r
+\s\s//  set (EMR) Extended Mode Register\r
+\s\s// ==================================\r
+\s\s// Put into OCD default state\r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, \r
+\s\s\s\s    DMC_DIRECT_CMD_CHIP_ADDR(chip) | \r
+\s\s\s\s    DMC_DIRECT_CMD_BANKADDR(1) | \r
+\s\s\s\s    DMC_DIRECT_CMD_MEMCMD_EXTMODEREG);\r
+\r
+\s\s// ===========================================================        \r
+\s\s// set (MR) mode register - With DLL reset\r
+\s\s// ===========================================================\r
+\s\s// Burst Length = 4 (010)\r
+\s\s// Burst Type   = Seq (0)\r
+\s\s// Latency      = 4 (100)\r
+\s\s// Test mode    = Off (0)\r
+\s\s// DLL reset    = Yes (1)\r
+\s\s// Wr Recovery  = 4  (011)      \r
+\s\s// PD           = Normal (0)\r
   DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | 0x00080742);\r
         \r
-       // pre-charge all \r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_PRECHARGEALL);\r
-       // auto-refresh \r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_AUTOREFRESH);\r
-       // auto-refresh \r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_AUTOREFRESH);\r
-\r
-       // delay\r
-       for (i = 0; i < 10; i++) {\r
-           val32 = DmcReadReg(DMC_STATUS_REG);\r
-       }\r
-\r
-       // ===========================================================        \r
-       // set (MR) mode register - Without DLL reset\r
-       // ===========================================================\r
+\s\s// pre-charge all \r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_PRECHARGEALL);\r
+\s\s// auto-refresh \r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_AUTOREFRESH);\r
+\s\s// auto-refresh \r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_AUTOREFRESH);\r
+\r
+\s\s// delay\r
+\s\sfor (i = 0; i < 10; i++) {\r
+\s\s    val32 = DmcReadReg(DMC_STATUS_REG);\r
+\s\s}\r
+\r
+\s\s// ===========================================================        \r
+\s\s// set (MR) mode register - Without DLL reset\r
+\s\s// ===========================================================\r
   // auto-refresh\r
   DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | DMC_DIRECT_CMD_MEMCMD_AUTOREFRESH);\r
   DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | 0x00080642);\r
@@ -338,26 +338,26 @@ VOID PL341DmcInit(struct pl341_dmc_config *config) {
     val32 = DmcReadReg(DMC_STATUS_REG);\r
   }\r
 \r
-       // ======================================================        \r
-       // set (EMR) extended mode register - Enable OCD defaults\r
-       // ====================================================== \r
-       val32 = 0; //NOP\r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | 0x00090000 |\r
-                   (DDR_EMR_OCD_DEFAULT << DDR_EMR_OCD_SHIFT) | \r
-                   DDR_EMR_RTT_75R | \r
-                   (DDR_EMR_ODS_VAL << DDR_EMR_ODS_MASK));\r
-\r
-       // delay\r
-       for (i = 0; i < 10; i++) {\r
-           val32 = DmcReadReg(DMC_STATUS_REG);\r
-       }\r
-\r
-       // Set (EMR) extended mode register - OCD Exit\r
-       val32 = 0; //NOP\r
-       DmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | 0x00090000 | \r
-                   (DDR_EMR_OCD_NS << DDR_EMR_OCD_SHIFT) | \r
-                   DDR_EMR_RTT_75R |\r
-                   (DDR_EMR_ODS_VAL << DDR_EMR_ODS_MASK));\r
+\s\s// ======================================================        \r
+\s\s// set (EMR) extended mode register - Enable OCD defaults\r
+\s\s// ====================================================== \r
+\s\sval32 = 0; //NOP\r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | 0x00090000 |\r
+\s\s\s\s    (DDR_EMR_OCD_DEFAULT << DDR_EMR_OCD_SHIFT) | \r
+\s\s\s\s    DDR_EMR_RTT_75R | \r
+\s\s\s\s    (DDR_EMR_ODS_VAL << DDR_EMR_ODS_MASK));\r
+\r
+\s\s// delay\r
+\s\sfor (i = 0; i < 10; i++) {\r
+\s\s    val32 = DmcReadReg(DMC_STATUS_REG);\r
+\s\s}\r
+\r
+\s\s// Set (EMR) extended mode register - OCD Exit\r
+\s\sval32 = 0; //NOP\r
+\s\sDmcWriteReg(DMC_DIRECT_CMD_REG, DMC_DIRECT_CMD_CHIP_ADDR(chip) | 0x00090000 | \r
+\s\s\s\s    (DDR_EMR_OCD_NS << DDR_EMR_OCD_SHIFT) | \r
+\s\s\s\s    DDR_EMR_RTT_75R |\r
+\s\s\s\s    (DDR_EMR_ODS_VAL << DDR_EMR_ODS_MASK));\r
 \r
     }\r
 \r