[cbootimage-configs PATCH v2] Add Colibri T30 BCT files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The file defines memory timing for 1GB Nanya module for 400MHz used
during boot.

Signed-off-by: Stefan Agner <stefan.agner@xxxxxxxxxxx>
---
 ...12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.bct.cfg | 240 +++++++++++++++++++++
 ...12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.img.cfg |  22 ++
 tegra30/toradex/colibri-t30/Makefile               |  30 +++
 tegra30/toradex/colibri-t30/build.sh               |  21 ++
 4 files changed, 313 insertions(+)
 create mode 100755 tegra30/toradex/colibri-t30/Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.bct.cfg
 create mode 100644 tegra30/toradex/colibri-t30/Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.img.cfg
 create mode 100644 tegra30/toradex/colibri-t30/Makefile
 create mode 100755 tegra30/toradex/colibri-t30/build.sh

diff --git a/tegra30/toradex/colibri-t30/Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.bct.cfg b/tegra30/toradex/colibri-t30/Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.bct.cfg
new file mode 100755
index 0000000..b77bf35
--- /dev/null
+++ b/tegra30/toradex/colibri-t30/Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.bct.cfg
@@ -0,0 +1,240 @@
+# Copyright (c) 2013, Toradex AG.  All rights reserved.
+#
+# This software is provided 'as-is', without any express or implied
+# warranty. In no event will the authors be held liable for any damages
+# arising from the use of this software.
+#
+# Permission is granted to anyone to use this software for any purpose,
+# including commercial applications, and to alter it and redistribute it
+# freely, subject to the following restrictions:
+#
+# 1. The origin of this software must not be misrepresented; you must not
+#    claim that you wrote the original software. If you use this software
+#    in a product, an acknowledgment in the product documentation would be
+#    appreciated but is not required.
+# 2. Altered source versions must be plainly marked as such, and must not be
+#    misrepresented as being the original software.
+# 3. This notice may not be removed or altered from any source distribution.
+
+Version        = 0x00030001;
+PartitionSize  = 33554432;
+BlockSize      = 16384;
+PageSize       = 512;
+OdmData        = 0x400c0000;
+
+DevType[0]  =  Sdmmc;
+DeviceParam[0].SdmmcParams.ClockDivider            = 9; # 216/9 = 24MHz
+DeviceParam[0].SdmmcParams.DataWidth               = NvBootSdmmcDataWidth_8Bit;
+DeviceParam[0].SdmmcParams.MaxPowerClassSupported  = 0;
+DeviceParam[0].SdmmcParams.SdController            = NvBootSdmmcCntrl_4;
+
+DevType[1]  =  Sdmmc;
+DeviceParam[1].SdmmcParams.ClockDivider            = 9; # 216/9 = 24MHz
+DeviceParam[1].SdmmcParams.DataWidth               = NvBootSdmmcDataWidth_8Bit;
+DeviceParam[1].SdmmcParams.MaxPowerClassSupported  = 0;
+DeviceParam[1].SdmmcParams.SdController            = NvBootSdmmcCntrl_4;
+
+DevType[2]  =  Sdmmc;
+DeviceParam[2].SdmmcParams.ClockDivider            = 9; # 216/9 = 24MHz
+DeviceParam[2].SdmmcParams.DataWidth               = NvBootSdmmcDataWidth_8Bit;
+DeviceParam[2].SdmmcParams.MaxPowerClassSupported  = 0;
+DeviceParam[2].SdmmcParams.SdController            = NvBootSdmmcCntrl_4;
+
+DevType[3]  =  Sdmmc;
+DeviceParam[3].SdmmcParams.ClockDivider            = 9; # 216/9 = 24MHz
+DeviceParam[3].SdmmcParams.DataWidth               = NvBootSdmmcDataWidth_8Bit;
+DeviceParam[3].SdmmcParams.MaxPowerClassSupported  = 0;
+DeviceParam[3].SdmmcParams.SdController            = NvBootSdmmcCntrl_4;
+
+SDRAM[0].MemoryType                               = NvBootMemoryType_Ddr3;
+SDRAM[0].PllMChargePumpSetupControl               = 0x00000008;
+SDRAM[0].PllMLoopFilterSetupControl               = 0x00000000;
+SDRAM[0].PllMInputDivider                         = 0x0000000c;
+SDRAM[0].PllMFeedbackDivider                      = 0x00000320;
+SDRAM[0].PllMPostDivider                          = 0x00000000;
+SDRAM[0].PllMStableTime                           = 0x0000012c;
+SDRAM[0].EmcClockDivider                          = 0x00000002;
+SDRAM[0].EmcClockSource                           = 0x00000000;
+SDRAM[0].EmcClockUsePllMUD                        = 0x00000000;
+SDRAM[0].EmcAutoCalInterval                       = 0x001fffff;
+SDRAM[0].EmcAutoCalConfig                         = 0xa0f10000;
+SDRAM[0].EmcAutoCalWait                           = 0x00000064;
+SDRAM[0].EmcAdrCfg                                = 0x00000000;
+SDRAM[0].EmcPinProgramWait                        = 0x00000001;
+SDRAM[0].EmcPinExtraWait                          = 0x00000000;
+SDRAM[0].EmcTimingControlWait                     = 0x00000000;
+SDRAM[0].EmcRc                                    = 0x00000012;
+SDRAM[0].EmcRfc                                   = 0x0000008a;
+SDRAM[0].EmcRas                                   = 0x0000000c;
+SDRAM[0].EmcRp                                    = 0x00000004;
+SDRAM[0].EmcR2w                                   = 0x00000003;
+SDRAM[0].EmcW2r                                   = 0x00000008;
+SDRAM[0].EmcR2p                                   = 0x00000002;
+SDRAM[0].EmcW2p                                   = 0x0000000a;
+SDRAM[0].EmcRdRcd                                 = 0x00000004;
+SDRAM[0].EmcWrRcd                                 = 0x00000004;
+SDRAM[0].EmcRrd                                   = 0x00000002;
+SDRAM[0].EmcRext                                  = 0x00000001;
+SDRAM[0].EmcWext                                  = 0x00000000;
+SDRAM[0].EmcWdv                                   = 0x00000004;
+SDRAM[0].EmcQUse                                  = 0x00000006;
+SDRAM[0].EmcQRst                                  = 0x00000004;
+SDRAM[0].EmcQSafe                                 = 0x00000009;
+SDRAM[0].EmcRdv                                   = 0x0000000c;
+SDRAM[0].EmcCtt                                   = 0x00000000;
+SDRAM[0].EmcCttDuration                           = 0x00000000;
+SDRAM[0].EmcRefresh                               = 0x00000bf5;
+SDRAM[0].EmcBurstRefreshNum                       = 0x00000000;
+SDRAM[0].EmcPreRefreshReqCnt                      = 0x000002fd;
+SDRAM[0].EmcPdEx2Wr                               = 0x00000001;
+SDRAM[0].EmcPdEx2Rd                               = 0x00000008;
+SDRAM[0].EmcPChg2Pden                             = 0x00000001;
+SDRAM[0].EmcAct2Pden                              = 0x00000000;
+SDRAM[0].EmcAr2Pden                               = 0x00000008;
+SDRAM[0].EmcRw2Pden                               = 0x0000000f;
+SDRAM[0].EmcTxsr                                  = 0x00000090;
+SDRAM[0].EmcTxsrDll                               = 0x00000200;
+SDRAM[0].EmcTcke                                  = 0x00000004;
+SDRAM[0].EmcTfaw                                  = 0x00000010;
+SDRAM[0].EmcTrpab                                 = 0x00000000;
+SDRAM[0].EmcTClkStable                            = 0x00000004;
+SDRAM[0].EmcTClkStop                              = 0x00000005;
+SDRAM[0].EmcTRefBw                                = 0x00000c35;
+SDRAM[0].EmcQUseExtra                             = 0x00000000;
+SDRAM[0].EmcFbioCfg5                              = 0x00007088;
+SDRAM[0].EmcFbioCfg6                              = 0x00000004;
+SDRAM[0].EmcFbioSpare                             = 0xe8000000;
+SDRAM[0].EmcCfgRsv                                = 0xff00ff88;
+SDRAM[0].EmcMrs                                   = 0x80000521;
+SDRAM[0].EmcEmrs                                  = 0x80100002;
+SDRAM[0].EmcMrw1                                  = 0x00000000;
+SDRAM[0].EmcMrw2                                  = 0x00000000;
+SDRAM[0].EmcMrw3                                  = 0x00000000;
+SDRAM[0].EmcMrwExtra                              = 0x00000000;
+SDRAM[0].EmcWarmBootMrw1                          = 0x00000000;
+SDRAM[0].EmcWarmBootMrw2                          = 0x00000000;
+SDRAM[0].EmcWarmBootMrw3                          = 0x00000000;
+SDRAM[0].EmcWarmBootMrwExtra                      = 0x00000000;
+SDRAM[0].EmcWarmBootExtraModeRegWriteEnable       = 0x00000000;
+SDRAM[0].EmcExtraModeRegWriteEnable               = 0x00000000;
+SDRAM[0].EmcMrwResetCommand                       = 0x00000000;
+SDRAM[0].EmcMrwResetNInitWait                     = 0x00000000;
+SDRAM[0].EmcMrsWaitCnt                            = 0x0134000c;
+SDRAM[0].EmcCfg                                   = 0x23c00000;
+SDRAM[0].EmcCfg2                                  = 0x000c0099;
+SDRAM[0].EmcDbg                                   = 0x01000400;
+SDRAM[0].EmcCmdQ                                  = 0x10004408;
+SDRAM[0].EmcMc2EmcQ                               = 0x06000404;
+SDRAM[0].EmcDynSelfRefControl                     = 0x800018d1;
+SDRAM[0].AhbArbitrationXbarCtrlMemInitDone        = 0x00000001;
+SDRAM[0].EmcCfgDigDll                             = 0x00360084;
+SDRAM[0].EmcCfgDigDllPeriod                       = 0x00008000;
+SDRAM[0].EmcDevSelect                             = 0x00000002;
+SDRAM[0].EmcSelDpdCtrl                            = 0x0004032c;
+SDRAM[0].EmcDllXformDqs0                          = 0x0000c002;
+SDRAM[0].EmcDllXformDqs1                          = 0x00014002;
+SDRAM[0].EmcDllXformDqs2                          = 0x0000c002;
+SDRAM[0].EmcDllXformDqs3                          = 0x00014002;
+SDRAM[0].EmcDllXformDqs4                          = 0x00014000;
+SDRAM[0].EmcDllXformDqs5                          = 0x00014000;
+SDRAM[0].EmcDllXformDqs6                          = 0x00014000;
+SDRAM[0].EmcDllXformDqs7                          = 0x00014000;
+SDRAM[0].EmcDllXformQUse0                         = 0x00000000;
+SDRAM[0].EmcDllXformQUse1                         = 0x00000000;
+SDRAM[0].EmcDllXformQUse2                         = 0x00000000;
+SDRAM[0].EmcDllXformQUse3                         = 0x00000000;
+SDRAM[0].EmcDllXformQUse4                         = 0x00000000;
+SDRAM[0].EmcDllXformQUse5                         = 0x00000000;
+SDRAM[0].EmcDllXformQUse6                         = 0x00000000;
+SDRAM[0].EmcDllXformQUse7                         = 0x00000000;
+SDRAM[0].EmcDliTrimTxDqs0                         = 0x00000000;
+SDRAM[0].EmcDliTrimTxDqs1                         = 0x00000000;
+SDRAM[0].EmcDliTrimTxDqs2                         = 0x00000000;
+SDRAM[0].EmcDliTrimTxDqs3                         = 0x00000000;
+SDRAM[0].EmcDliTrimTxDqs4                         = 0x00000000;
+SDRAM[0].EmcDliTrimTxDqs5                         = 0x00000000;
+SDRAM[0].EmcDliTrimTxDqs6                         = 0x00000000;
+SDRAM[0].EmcDliTrimTxDqs7                         = 0x00000000;
+SDRAM[0].EmcDllXformDq0                           = 0x00018000;
+SDRAM[0].EmcDllXformDq1                           = 0x00018000;
+SDRAM[0].EmcDllXformDq2                           = 0x00018000;
+SDRAM[0].EmcDllXformDq3                           = 0x00018000;
+SDRAM[0].WarmBootWait                             = 0x00000002;
+SDRAM[0].EmcCttTermCtrl                           = 0x00000802;
+SDRAM[0].EmcOdtWrite                              = 0x00000000;
+SDRAM[0].EmcOdtRead                               = 0x00000000;
+SDRAM[0].EmcZcalInterval                          = 0x00020000;
+SDRAM[0].EmcZcalWaitCnt                           = 0x00000040;
+SDRAM[0].EmcZcalMrwCmd                            = 0x80000000;
+SDRAM[0].EmcMrsResetDll                           = 0x00000000;
+SDRAM[0].EmcZcalInitDev0                          = 0x80000011;
+SDRAM[0].EmcZcalInitDev1                          = 0x00000000;
+SDRAM[0].EmcZcalInitWait                          = 0x00000002;
+SDRAM[0].EmcZcalColdBootEnable                    = 0x00000001;
+SDRAM[0].EmcZcalWarmBootEnable                    = 0x00000001;
+SDRAM[0].EmcMrwLpddr2ZcalWarmBoot                 = 0x000a00ab;
+SDRAM[0].EmcZqCalDdr3WarmBoot                     = 0x00000011;
+SDRAM[0].EmcZcalWarmBootWait                      = 0x00000001;
+SDRAM[0].EmcMrsWarmBootEnable                     = 0x00000001;
+SDRAM[0].EmcMrsResetDllWait                       = 0x00000000;
+SDRAM[0].EmcEmrsEmr2                              = 0x80200000;
+SDRAM[0].EmcEmrsEmr3                              = 0x80300000;
+SDRAM[0].EmcMrsExtra                              = 0x80000521;
+SDRAM[0].EmcWarmBootMrs                           = 0x80100002;
+SDRAM[0].EmcWarmBootEmrs                          = 0x80000521;
+SDRAM[0].EmcWarmBootEmr2                          = 0x80200000;
+SDRAM[0].EmcWarmBootEmr3                          = 0x80300000;
+SDRAM[0].EmcWarmBootMrsExtra                      = 0x80100002;
+SDRAM[0].EmcEmrsDdr2DllEnable                     = 0x00000000;
+SDRAM[0].EmcMrsDdr2DllReset                       = 0x00000000;
+SDRAM[0].EmcEmrsDdr2OcdCalib                      = 0x00000000;
+SDRAM[0].EmcDdr2Wait                              = 0x00000000;
+SDRAM[0].EmcClkenOverride                         = 0x00000000;
+SDRAM[0].EmcExtraRefreshNum                       = 0x00000002;
+SDRAM[0].EmcClkenOverrideAllWarmBoot              = 0x00000000;
+SDRAM[0].McClkenOverrideAllWarmBoot               = 0x00000000;
+SDRAM[0].EmcCfgDigDllPeriodWarmBoot               = 0x00000003;
+SDRAM[0].PmcVddpSel                               = 0x00000002;
+SDRAM[0].PmcDdrPwr                                = 0x00000003;
+SDRAM[0].PmcDdrCfg                                = 0x00000002;
+SDRAM[0].PmcIoDpdReq                              = 0x80800000;
+SDRAM[0].PmcENoVttGen                             = 0x00000000;
+SDRAM[0].PmcNoIoPower                             = 0x00000000;
+SDRAM[0].EmcXm2CmdPadCtrl                         = 0x000002a0;
+SDRAM[0].EmcXm2CmdPadCtrl2                        = 0x770c0000;
+SDRAM[0].EmcXm2DqsPadCtrl                         = 0x770c1414;
+SDRAM[0].EmcXm2DqsPadCtrl2                        = 0x0a00013d;
+SDRAM[0].EmcXm2DqsPadCtrl3                        = 0x08000021;
+SDRAM[0].EmcXm2DqPadCtrl                          = 0x770c2990;
+SDRAM[0].EmcXm2DqPadCtrl2                         = 0x00000000;
+SDRAM[0].EmcXm2ClkPadCtrl                         = 0x77fff884;
+SDRAM[0].EmcXm2CompPadCtrl                        = 0x01f1f508;
+SDRAM[0].EmcXm2VttGenPadCtrl                      = 0x05057404;
+SDRAM[0].EmcXm2VttGenPadCtrl2                     = 0x54000007;
+SDRAM[0].EmcXm2QUsePadCtrl                        = 0x080001e8;
+SDRAM[0].McEmemAdrCfg                             = 0x00000000;
+SDRAM[0].McEmemAdrCfgDev0                         = 0x00080303;
+SDRAM[0].McEmemAdrCfgDev1                         = 0x00080303;
+SDRAM[0].McEmemCfg                                = 0x00000400;
+SDRAM[0].McEmemArbCfg                             = 0x00000006;
+SDRAM[0].McEmemArbOutstandingReq                  = 0x80000048;
+SDRAM[0].McEmemArbTimingRcd                       = 0x00000001;
+SDRAM[0].McEmemArbTimingRp                        = 0x00000002;
+SDRAM[0].McEmemArbTimingRc                        = 0x00000009;
+SDRAM[0].McEmemArbTimingRas                       = 0x00000005;
+SDRAM[0].McEmemArbTimingFaw                       = 0x00000007;
+SDRAM[0].McEmemArbTimingRrd                       = 0x00000001;
+SDRAM[0].McEmemArbTimingRap2Pre                   = 0x00000002;
+SDRAM[0].McEmemArbTimingWap2Pre                   = 0x00000008;
+SDRAM[0].McEmemArbTimingR2R                       = 0x00000002;
+SDRAM[0].McEmemArbTimingW2W                       = 0x00000002;
+SDRAM[0].McEmemArbTimingR2W                       = 0x00000003;
+SDRAM[0].McEmemArbTimingW2R                       = 0x00000006;
+SDRAM[0].McEmemArbDaTurns                         = 0x06030202;
+SDRAM[0].McEmemArbDaCovers                        = 0x000d0709;
+SDRAM[0].McEmemArbMisc0                           = 0x7086120a;
+SDRAM[0].McEmemArbMisc1                           = 0x78000000;
+SDRAM[0].McEmemArbRing1Throttle                   = 0x001f0000;
+SDRAM[0].McEmemArbOverride                        = 0x00000080;
+SDRAM[0].McEmemArbRsv                             = 0xff00ff00;
+SDRAM[0].McClkenOverride                          = 0x00000000;
diff --git a/tegra30/toradex/colibri-t30/Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.img.cfg b/tegra30/toradex/colibri-t30/Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.img.cfg
new file mode 100644
index 0000000..1371e8d
--- /dev/null
+++ b/tegra30/toradex/colibri-t30/Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.img.cfg
@@ -0,0 +1,22 @@
+# Copyright (C) 2013 Toradex AG
+#
+# This software is provided 'as-is', without any express or implied
+# warranty. In no event will the authors be held liable for any damages
+# arising from the use of this software.
+#
+# Permission is granted to anyone to use this software for any purpose,
+# including commercial applications, and to alter it and redistribute it
+# freely, subject to the following restrictions:
+#
+# 1. The origin of this software must not be misrepresented; you must not
+#    claim that you wrote the original software. If you use this software
+#    in a product, an acknowledgment in the product documentation would be
+#    appreciated but is not required.
+# 2. Altered source versions must be plainly marked as such, and must not be
+#    misrepresented as being the original software.
+# 3. This notice may not be removed or altered from any source distribution.
+
+Version       = 0x00020001;
+Bctcopy       = 1;
+Bctfile       = Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.bct;
+BootLoader    = u-boot.bin,0x80108000,0x80108000,Complete;
diff --git a/tegra30/toradex/colibri-t30/Makefile b/tegra30/toradex/colibri-t30/Makefile
new file mode 100644
index 0000000..11816b3
--- /dev/null
+++ b/tegra30/toradex/colibri-t30/Makefile
@@ -0,0 +1,30 @@
+# Copyright (c) 2013, Toradex AG. All rights reserved.
+# Copyright (c) 2013, NVIDIA CORPORATION.  All rights reserved.
+#
+# This software is provided 'as-is', without any express or implied
+# warranty. In no event will the authors be held liable for any damages
+# arising from the use of this software.
+#
+# Permission is granted to anyone to use this software for any purpose,
+# including commercial applications, and to alter it and redistribute it
+# freely, subject to the following restrictions:
+#
+# 1. The origin of this software must not be misrepresented; you must not
+#    claim that you wrote the original software. If you use this software
+#    in a product, an acknowledgment in the product documentation would be
+#    appreciated but is not required.
+# 2. Altered source versions must be plainly marked as such, and must not be
+#    misrepresented as being the original software.
+# 3. This notice may not be removed or altered from any source distribution.
+
+include ../../../build/pre.mk
+
+soc := t30
+
+bcts := \
+	Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.bct
+
+images := \
+	Colibri_t30_12MHz_1GB_NT5CC256M16CP-DI_400MHz-shmoo.img
+
+include ../../../build/post.mk
diff --git a/tegra30/toradex/colibri-t30/build.sh b/tegra30/toradex/colibri-t30/build.sh
new file mode 100755
index 0000000..7dc6a05
--- /dev/null
+++ b/tegra30/toradex/colibri-t30/build.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+# Copyright (c) 2013, NVIDIA CORPORATION.  All rights reserved.
+#
+# This software is provided 'as-is', without any express or implied
+# warranty. In no event will the authors be held liable for any damages
+# arising from the use of this software.
+#
+# Permission is granted to anyone to use this software for any purpose,
+# including commercial applications, and to alter it and redistribute it
+# freely, subject to the following restrictions:
+#
+# 1. The origin of this software must not be misrepresented; you must not
+#    claim that you wrote the original software. If you use this software
+#    in a product, an acknowledgment in the product documentation would be
+#    appreciated but is not required.
+# 2. Altered source versions must be plainly marked as such, and must not be
+#    misrepresented as being the original software.
+# 3. This notice may not be removed or altered from any source distribution.
+
+make
-- 
1.8.5.1

--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux