;============================================================================ ;## ;## This file is part of the coreboot project. ;## ;## This program is free software; you can redistribute it and/or modify ;## it under the terms of the GNU General Public License version 2 and ;## only version 2 as published by the Free Software Foundation. ;## ;## This program is distributed in the hope that it will be useful, ;## but WITHOUT ANY WARRANTY; without even the implied warranty of ;## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;## GNU General Public License for more details. ;## ;============================================================================ ; Name: ; debug_cb_trogdor.cmm ; ; Description: ; Debug coreboot trogdor front-end ;============================================================================ ;============================================================================ ; CMM script variables ;============================================================================ LOCAL &TargetPkg GLOBAL &BBEntryAddr // Bootblock Entry GLOBAL &BBExitAddr // Bootblock Exit to Xbl-Sec GLOBAL &VEREntryAddr // Verstage Entry GLOBAL &ROMEntryAddr // Romstage Entry GLOBAL &QCLEntryAddr // QCLstage Entry GLOBAL &RAMEntryAddr // Ramstage Entry GLOBAL &BL31EntryAddr // BL31 Entry GLOBAL &DCEntryAddr // Depthcharge Entry GLOBAL &PreRamConsoleAddr GLOBAL &RamConsoleAddr GLOBAL &PreRamCbfsCache GLOBAL &VBoot2Work GLOBAL &Stack GLOBAL &Ttb GLOBAL &Timestamp GLOBAL &CbmemTop GLOBAL &PostRamCbfsCache GLOBAL &CBTablePtr ;============================================================================ ;--------------------------------------------------- ; Entry point ;--------------------------------------------------- ENTRY &ImageName &RegAddress // Later these can be parameterized &TargetPkg="trogdorPkg" // These settings come from .../src/soc/qualcomm/sc7180/include/soc/memlayout.ld &BBEntryAddr=0x14815000 &VEREntryAddr=0x14680000 &ROMEntryAddr=0x14680000 &QCLEntryAddr=0x1486c950 &RAMEntryAddr=0xA0800000 &BL31EntryAddr=0x80C00000 &DCEntryAddr=0xF1000000 &KernelEntryAddr=0xD0000000 &PreRamConsoleAddr=0x14830800 &VBoot2Work=0x1484B000 &Stack=0x14847000 &Ttb=0x14839000 &Timestamp=0x14838800 &PreRamCbfsCache=0x1481F000 &CbmemTop=0x280000000 &PostRamCbfsCache=0x9F800000 // End of memlayout.ld settings // Common commands irrespective of &Mode PATH &CwDir=os.pwd() PATH + &CwDir // position at top of coreboot tree // find depth count for source loading cd ..\..\..\.. &srcpath=os.pwd() ;--------------------------------------------------- ; Setup area and log ;--------------------------------------------------- area.clear area.reset area.create CB_Logs 1000. 8192. area.select CB_Logs area.view CB_Logs PRINT %String "Source Path: &srcpath" symbol.sourcepath.setbasedir &srcpath\src // Make parsing simple, upper-case parameters &ImageName=STRING.UPR("&ImageName") if (STR.CP("&ImageName","0X*")) ( &RegAddress=&ImageName &ImageName="" ) &RegAddress=STRING.UPR("&RegAddress") PRINT %String "ImageName: &ImageName" PRINT %String "RegAddress: &RegAddress" sys.d sys.up b.d y.reset if (STR.CP("&RegAddress","0X*")) D.S EZAXI:&RegAddress %LE %Long 0x80000000 go &BBEntryAddr wait !run() DO debug_cb_common.cmm &TargetPkg &srcpath &xblsrcpath &ImageName enddo