3K/UHD 5D2 Raw development and Other Digic IV Cams

Started by reddeercity, April 06, 2017, 12:22:27 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

reddeercity

Quote from: names_are_hard on February 15, 2024, 04:57:11 PM
Thanks, I understand what's going on now.  ... I assume the intent was to learn what control was possible over CF cards, then make nicer (and importantly, smaller) code to do the parts we care about.
Yes that's right , i hope to learn where the timing control regs are to manually enable UDMA 7 plus maybe bypass some canon routines to limit the overhead.
Quote from: names_are_hard on February 15, 2024, 04:57:11 PM
.... I've removed the linux specific stuff, here: https://github.com/reticulatedpines/magiclantern_simplified/tree/hdparm_hack
Thanks , i'll give it a try
Quote from: names_are_hard on February 15, 2024, 04:57:11 PM
That should build more easily.  Because it's based on my repo, you can use a more modern linux. 
I recommend Debian Testing.  It might not work on whatever old linux you're using, mainly because we converted everything to python3. 
Try it and see if you want.
Ok , I'm on Ubuntu 18.4x something , it use gcc arms 5.3 i think.
Quote from: names_are_hard on February 15, 2024, 04:57:11 PM
I haven't tested the code in any way.  Will it destroy your cam?  Maybe!
"With Great Risk Comes Great Reward"
at least that's what they say :D
I'll more then likey try it on my 50D first ! , just in case something goes south  :P
only paid $150 5 years ago , that may sacrificial lamb

names_are_hard

That's an old linux distro, I don't advise it.  My repo will build cleanly up to gcc 13.  You can just use the distro gcc, no need to build a special one.

It's worth noting also that my repo has had very little testing on Digic 4 and 5 cams.  It's been used lightly on a range of cams with no significant problems reported.  But please do use some caution, and let me know if there are any new problems.

reddeercity

Ok trying to compile , getting a error , but i don't know how to solve , Just compile the module by it self not a full build
did some warning but that's to be expected , being code from the old core.


reddeercity

Just for kicks i try to build the 50D & 5D2 with @names_are_hard  magiclantern_simplified but failed tried comment the error but make it worse  :(
here a few screen shots . Do i need to update my Linux ? to the what is being used by you ? will i have problem compile my crop_rec builds ?
Anyways here the screen shots :

5D2
 
50D

kitor

What is your distro? Old Ubuntu required for old repo?

permission denied is weird, try to run that script directly, maybe you are missing python3 or git. Or somehow it is missing executable bit.
This is literally a python3 script that runs two git commands.

kitor@kitor-p73:5D2.212$ ../../build_tools/git_summary.py
268224668 raw_draft_v2%
Too many Canon cameras.
If you have a dead R or RP mainboard (e.g. after camera repair) and want to donate for experiments, I'll cover shipping costs.

names_are_hard

Quote from: reddeercity on February 19, 2024, 08:07:49 AM
Do i need to update my Linux ? to the what is being used by you ? will i have problem compile my crop_rec builds ?

You need to work out why your system can't execute the python script listed in the error.

My repo has crop_rec code included.

For future reference, please don't post pictures of text - you can just paste the text!  I can't copy stuff out of an image to explain it or quote it.

reddeercity

I figured out the problem , its the python version , i'm on python 2 , and its seem the new d678x cams are on python 3 , so ever thing i have is in python 2 so i guess i'll stay there as its what i know.
It not a big deal , i can figure out the Linux thing it need to complies as its just for investagations to over clocking CF card & possibe SD Card(why not? just need to get the MHz frequency correct & of course you need to boost the voltage also , it goes hand in hand.) 

reddeercity

Thanks to @liteo for a great find , https://www.magiclantern.fm/forum/index.php?msg=238721
i have access to all my old LOG file i capture 5+ years ago , i do have most of them but there are
across several different hard drives & computers.
specially the compressed raw routine in the TTL.LOG file very helpful
8C541>    LVC_DEV:00096678:00:00:     28)        4 (write channel 0x4)
8C569>    LVC_DEV:00096678:00:00:     29)    10005 (read channel 0xd)
8C595>    LVC_DEV:00096678:00:00:     30)    20005 (write connection 0x5)
8C5BD>    LVC_DEV:00096678:00:00:     31)    30003 (read connection 0x3)
I believe i have these addresses correctly hard coded , but i have suspicion
its changing , so its not static maybe a floating address it pick a free channel or something
Just guess at best right now , but the log with help isolate the issues/problem. :D     

names_are_hard

Quoteever thing i have is in python 2 so i guess i'll stay there as its what i know

Python 2 is dead.  It's been dead since 2020.  You'll have to update at some point.
https://www.python.org/doc/sunset-python-2/

The good news is I already updated everything in my repo to work with modern linux and modern python.

reddeercity

found some interesting CF Card info form 1 of my logs (dm-0000[raw-startup-log.2018Jan29])
84023>  CSMgrTask:ffb8bcb0:22:01: RequestConfiguration: pLStorage=0x884e40
8404F>  CSMgrTask:ffb8bcc8:22:01:                       ConfigBase=0x200, StatusReg=0x0
8407A>  CSMgrTask:ffb8bce0:22:01:                       PinRepReg=0x0, CopyReg=0x0
840A4>  CSMgrTask:ffb8bcf8:22:01:                       ConfigIndex=0x1, Present=0xf
840D3>  CSMgrTask:ffb8bd80:22:01: RequestConfiguration: Base = 200, Data = 41
840FF>  CSMgrTask:ffb8bde0:22:01: RequestConfiguration: SUCCESS
This the configuration that the 5D2 calls , I've tried to manually change the reg with the base 200(201->207)
but it either locks up or runs slower (20Mb/s) or has super fast read but lockup on write. So there's more then this regs i believe.
852E3>  CSMgrTask:ffbdbb3c:22:03: CF_GetAccessTiming : DatTim = 3, DatMod = 6
DatMod = 6 is the UDMA mode D52 is 6 on 5D3 its 7
But i haven't figured out what the DatTim=3 is yet , i must be missing that reg configurationh
I'm trying to overclock the CF card timing with the Regs alone without adding a lot of extra code.

Edited: Does any one has a 5D3 with a startup Log ?
 I'm looking for the Timing information like what i have post above in the code box , to see if and how it differs , thanks.
Oh yea a 7D mark1 (D4 cam) would maybe help too .


Walter Schulz

Unable to help. Archive.org hasn't archived the zip and I don't have backups.

reddeercity


reddeercity

Found some interesting CF card related info in the Rom's(5D2,5D3,6D,7D)
They have the same or similar Function Calls for storage device e.g.CF/SD cards

RequestConfiguration
5D2
*"RequestConfiguration: pLStorage=%#x"
*"RequestConfiguration: Base = %x, Data = %x"
*"RequestConfiguration: SUCCESS"
*"CF_RequestConfiguration ERROR(%#x)"
*"CF_RequestConfiguration: err=%#x"

5D3
*"RequestConfiguration: pLStorage=%#x"
*"RequestConfiguration: Base = %x, Data = %x"
*"RequestConfiguration: SUCCESS"
*"CF_RequestConfiguration ERROR(%#x)"
*"CF_RequestConfiguration: err=%#x"
6D
*"RequestConfiguration: pLStorage=%#x"
*"RequestConfiguration: Base = %x, Data = %x"
*"RequestConfiguration: SUCCESS"
*"CF_RequestConfiguration ERROR(%#x)"
*"CF_RequestConfiguration: err=%#x"

7D
*"RequestConfiguration: pLStorage=%#x"
*"RequestConfiguration: Base = %x, Data = %x"
*"RequestConfiguration: SUCCESS"
*"CF_RequestConfiguration ERROR(%#x)"
*"CF_RequestConfiguration: err=%#x"

CF_GetAccessTiming
5D2
"CF_GetAccessTiming : DatTim = %d, DatMod = %d":
"CF_GetAccessTiming : DatTim = %d, DatMod = %d"
5D3
"CF_GetAccessTiming : DatTim = %d, DatMod = %d":
"[CF] CF_GetAccessTiming : DatTim = 3, DatMod = 7"
6D
"CF_GetAccessTiming : DatTim = %d, DatMod = %d":
7D
"CF_GetAccessTiming : DatTim = %d, DatMod = %d":

5D3 is the only one that has the Data timing & Data Mode preset in the ROM,
interesting , so this maybe able to be set by Regs only in 5D2 , 7D & 50D cams
 
cfIdentifyDrive
5D2
*"cfIdentifyDrive: TakeSem(%#x)"
*"cfIdentifyDrive: Cache Support"
*"cfIdentifyDrive: Idle Command(500mSec)"
*"cfIdentifyDrive: Emergency Stop"
*"cfIdentifyDrive: Set UDMA( Mode=%d )"
*"cfIdentifyDrive: Emergency Stop"
5D3
*"cfIdentifyDrive: TakeSem(%#x)"
*"cfIdentifyDrive: Cache Support"
*"cfIdentifyDrive: Idle Command(500mSec)"
*"cfIdentifyDrive: Emergency Stop"
*"cfIdentifyDrive: Set UDMA( Mode=%d )"
"[CF] cfIdentifyDrive: Set UDMA( Mode=7 )"
*"cfIdentifyDrive: Emergency Stop"
6D
*"cfIdentifyDrive: TakeSem(%#x)"
*"cfIdentifyDrive: Cache Support"
*"cfIdentifyDrive: Idle Command(500mSec)"
*"cfIdentifyDrive: Emergency Stop"
*"cfIdentifyDrive: Set UDMA( Mode=%d )"
*"cfIdentifyDrive: Emergency Stop"
7D
*"cfIdentifyDrive: TakeSem(%#x)"
*"cfIdentifyDrive: Cache Support"
*"cfIdentifyDrive: Idle Command(500mSec)"
*"cfIdentifyDrive: Emergency Stop"
*"cfIdentifyDrive: Set UDMA( Mode=%d )"
*"cfIdentifyDrive: Emergency Stop"

Here again we see the mode preset in the 5D3 rom under the cf Identify Drive function
cfIdentifyDrive: Set UDMA( Mode=7)

So i need to find a 5D3 setup log or any logs with CF card on the 5D3 to know the reg set
but in the mean time i'll search some more on the forum , i'm sure i saw some , just cant remember where.   :)

reddeercity

I also found my address for lossless compressed raw in one of my Logs
this is good! I had the compression routine code wrong or should i say miss some parts
its different then the 5d3/D5 cams but not by much , it very similar in structure with more parts that all.
Now i'm not saying I've got it working,  i see the problem in the code so hopefully i can correct it. ;D

Walter Schulz

Quote from: reddeercity on April 17, 2024, 05:48:40 AMFound some interesting CF card related info in the Rom's(5D2,5D3,6D,7D)

You are aware 6D doesn't actually host CF but SD? ;-)

reddeercity

Yup , of course i'm was comparing 4 different rom at the same time with the same search keyword.
I use visual studio in Windows7 , I do 80% of my work in there , its great at reading the decompiled Rom files. :)

reddeercity

found some interesting stuff in the MPU-ROM.BIN from my 5D2 ,seems to be a lot of stuff going on in the MPU
-. Switch State Information . LockSw : .UnLock(On).Lock(Off).
CardCover: .Open.Close. BatCover
CFDetectSw : .On.Off. ELButton
SubDialLockSw: .UnLock.Lock. Sw1: . Sw2
AELockButton
AFStartButton
SpdnButton
AFFrameSelectButton
AFModeButton
MeteringModeButton
ISOButton
InfoButton
EraseButton
EasyDirectButton
PictureStyleButton
MultiContoller
Center.Up.UpRight.UpLeft.Right.Left.DownRight.DownLeft.Down.None.... ModeDial
Program.Tv.Av.Manual.Bulb.A DEP.Green.CreativeGreen.NightPortrait.Sports.Portrait.Landscape.Closeup.FlashOff.Custom
1.Custom2.Custom3. MainDial
SubDial
MIF

[FG_BATT_SEND]...[FG]SioToVldet..[FG]VldetToSio..ÿÿ.[FG_ERR]RcvCmdSize > Buff..
[FG_ERR]CheckSumErr...[FG_IC_RCV]..[FG_BATT_RCV]...[FG]NinshoOK..
[FG]NinshoNG...COFFS:..RC:..SC:.[FG_ERR]ComErr..[FG_ERR]OverRetryCnt..[FG_ERR]BattReWakeUp..
[FG]FgInit..BGM-E6.[FG]VLDET..[FG_ERR]Timeout..[FG]FirstWakeUp..[FG]IcInitComp...
[FG_BATT]FirstWakeup..[FG]:WftBattOpen..ÿÿ.[FG_IC_SEND]...[FG_ICU]Slot:..
[FG_ICU]Type:..[FG_ICU]Level:...[FG]:WftConnect..
[FG]:WftDisConnect...BattRomRead:...PowerChange:.BC.%x.%2x..RCP:...H.êƒ,.[ƒh..ÿÿ..ÿÿ.E0Off..
[MAIN]:<TIMEOUT>strobo func get..[MAIN]:<TIMEOUT>strobo func set..
[MAIN]:<TIMEOUT>strobo func reset..[MAIN]:<TIMEOUT>strobo cfn get..
[MAIN]:<TIMEOUT>strobo cfn set..[MAIN]:<TIMEOUT>strobo cfn reset..
[MAIN]:<TIMEOUT>strobo wireless get..[MAIN]:<TIMEOUT>strobo wireless set..ÿÿÿ
[MAIN]:<TIMEOUT>lv ae..ÿ[Mecha]E
K218 is the 5D2
K218 Debug Monitor (Ver 0.00)
MakeFile K218_eep.mot.S00F00006B3231385F6565702E6D6F74D3..ÿ....k218_ÿÿÿ%lx..
[Error] ƒpƒ‰ƒ..[ƒ^•s'«,Å,·...[Error] ƒpƒ‰ƒ..[ƒ^ƒ~ƒX...
[Error] –³Œø,ȃRƒ}ƒ"ƒh,Å S315.S70500000000FA.address   0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
DUMPB.DUMPW.DUMPL.%lx.?....  . .MMOT.
MakeFile (MPU)..
DEF_MPU_S0LINE.S315.S70500000000FA..ÿÿÿÿ.äreturn code error
Please Reset and Retry
MPU Ver...0x.  MPU code   area check sum...0x....ÿÿÿ.error code : %03d.,%03d...usage: release [<Tv> <Av> <Xout>]..ex. release..ex. release 68 38 1
TestRelease..%x.usage: shutterready [<Tv> <Av> <Xout>]..ex. shutterready..ex. shutterready 68 38 1 ...TestShutterReady
TestMirrorUp...TestChargeShutter...TestChargeMirror...Test1stShutterRun...Test2ndShutterRun...TestMirrorDown...TestShutterOpen...usage: fgcomm <target> <command>
<data>...TestFgComm...OK...NG...usase : SetCoffs <coffs>...SetCoffs...usase : SetOffs <offs>...SetOffs...GetRcp...GetRc...GetSc...EficTemp:

H.MPU Send RAM Program.....EEP write start....format error1..format error2
format error3..format error4..format error5..format error6...
Please Send *.bny..Update Bin ERR1..Update End..Update Bin ERR3...Update Bin ERR4..
File input error!!...File format error!!..*....mload Complete....Complete...ÿ.MON>>
E1ON.MON>>..E1OFF..ÿÿÿð.............ÿþýüûúÿÿ...D. ...ÿMCell

cyc_main.alm_uitimer1.alm_uitimer3.alm_uitimer6.alm_uitimer7.alm_uitimer8.alm_uitimer9.
alm_uitimer10.alm_uiackwait.alm_uiirwait.alm_main_afclosewait.alm_mecha_mirror_motor.
timeout.alm_mecha_shutter_motor_timeout.alm_mecha_bccomm.alm_main_dl_timer.alm_main_
studio_sp_mode_interval_timer.alm_main_caprdy_enable_timer
alm_mecha_check_x_timer.alm_main_rel_conti_timer.
alm_main_fg_timer.alm_main_fg_ic_timer
alm_main_shutter_over_run.alm_main_mirror_over_run.alm_main_ae_accum_timeout_timer

that all i could read in text , need to decompile the EPU ROM.BIN file , there a lot of function
in there , if we could offload some of ML tasks in the MPU chip and hack in to them i would think would free up a lot of overhead . Thou this all highly speculative but it seems logical i think  :D 




reddeercity

I thought i had some 5D3 log file but it seems i don't anymore ,
is there anyone with a 5D3 startup log? or any 5D3 logs that has any CF card info?
:)

names_are_hard

Where's the code to generate the logs?  Lots of people have 5d3 and can run tests.

reddeercity

Quote from: names_are_hard on April 19, 2024, 03:16:20 PMWhere's the code to generate the logs?  Lots of people have 5d3 and can run tests.
Just assumed that after 10 years there would a lot Log file around.
After looking at Logs generated by Real Cam hardware its not giving the detailed information i needed 
I'll need detailed Logs out of qemu with camera rom

reddeercity

It looks like i my have found the CF card controller routines. I was searching all my ML Logs files  from my old Win7 PC AMD-FX SSD HD
(FX board blow all the Caps around CPU) I found 5D2 FA_Capture(Test-Image) Log from Qemu. It use this to run ./run_canon_fw.sh 5D2,firmware=boot=1
This what I'm looking for [   CSMgrTask:ffbdb7d8 ] (22:06) GetFirstTuple: CISTPL_CONFIG
[   CSMgrTask:ffb8c454 ] (22:06) GetConfigurationTuple
[   CSMgrTask:ffb8bcb0 ] (22:01) RequestConfiguration: pLStorage=0x685504
[   CSMgrTask:ffb8bcc8 ] (22:01)                       ConfigBase=0x200, StatusReg=0
[   CSMgrTask:ffb8bce0 ] (22:01)                       PinRepReg=0, CopyReg=0
[   CSMgrTask:ffb8bcf8 ] (22:01)                       ConfigIndex=0x1, Present=0xf
[CFATA] at CSMgrTas:FFB8BD04:FFB8BD04 [0xC0628100] -> 0x0       : ???
[CFATA] at CSMgrTas:FFB8BD0C:FFB8BD04 [0xC0628100] <- 0x0       : ???
[CFATA] at CSMgrTas:FFB8BD18:FFB8BD18 [0xC0628100] <- 0x0       : ???
[CFATA] at CSMgrTas:FFB8BD24:FFB8BD24 [0xC0628100] -> 0x0       : ???
[CFATA] at CSMgrTas:FFB8BD2C:FFB8BD24 [0xC0628100] <- 0x2       : ???
[CFATA] at CSMgrTas:FFB8BD38:FFB8BD38 [0xC0628100] <- 0x2       : ???
[CFATA] at CSMgrTas:FFB8BD48:FFB8BD44 [0xC0628044] <- 0x0       : Interrupt related?
[CFATA] at CSMgrTas:FFB8BD5C:FFB8BD54 [0xC0620200] <- 0x41      : ???
[CFATA] at CSMgrTas:FFB8BD68:FFB8BD68 [0xC0620200] -> 0x0       : ???
[   CSMgrTask:ffb8bd80 ] (22:01) RequestConfiguration: Base = 200, Data = 0
[CFATA] at CSMgrTas:FFB8BD98:FFB8BD94 [0xC0620202] <- 0x0       : ???
[CFATA] at CSMgrTas:FFB8BDB0:FFB8BDAC [0xC0620204] <- 0x0       : ???
[CFATA] at CSMgrTas:FFB8BDC8:FFB8BDC4 [0xC0620206] <- 0x0       : ???
[   CSMgrTask:ffb8bde0 ] (22:01) RequestConfiguration: SUCCESS


"0xC0620200"by changing 0xC0620200 -> 0xCxxx201 etc. ...is not enough by it self
need more , I still don't know what "ConfigIndex=0x1, Present=0xf" are .
Here some more CF contoller HD commands
[HPTimer] at DbgMgr:FF9B36D8:FF86BFD4 [0xC0243300] -> 0x1000    : Which timer(s) triggered
[HPTimer] at DbgMgr:FF9B3650:FF86C074 [0xC02431A0] <- 0x0       : HPTimer #10: disabled?
[HPTimer] at DbgMgr:FF9B36A0:FF86C07C [0xC02432A4] <- 0x0       : HPTimer #10: reset trigger?
[HPTimer] at DbgMgr:FF9B36A4:FF86C07C [0xC02432A4] -> 0x0       : HPTimer #10: ???
[HPTimer] at DbgMgr:FF9B36D8:FF86C188 [0xC0243300] -> 0x0       : Which timer(s) triggered
[CFATA] at CSMgrTas:FFB89A40:FFB89A40 [0xC0622007] -> 0x50      : ATA command/status
[CFATA] at CSMgrTas:FFB89B98:FFB89B94 [0xC062200E] <- 0x0       : ATA device control: int enable
[CFATA] at CSMgrTas:FFB8C0C4:FFB8C0C4 [0xC0622007] -> 0x50      : ATA command/status
[   CSMgrTask:ffb89be8 ] (22:01) cfSoftReset SUCCESS
[   CSMgrTask:ffbdb86c ] (22:01) &CurCardInfo=0x4c9f0
[CFATA] at CSMgrTas:FFB8ABE8:FFB8ABE4 [0xC0628040] <- 0x0       : Interrupt enable?
[CFATA] at CSMgrTas:FFB89A40:FFB89A40 [0xC0622007] -> 0x50      : ATA command/status
[CFATA] at CSMgrTas:FFB8AC64:FFB8AC64 [0xC0622006] <- 0x0       : ATA drive/head port
[CFATA] at CSMgrTas:FFB8AC74:FFB8AC70 [0xC0622007] <- 0xEC      : ATA command/status
[CFATA] at CSMgrTas:FFB8AC84:FFB8AC80 [0xC0628040] <- 0x1       : Interrupt enable?
   186:   442.624 [CF] ERROR GetFirstTuple: CISTPL_CONFIG
   187:   442.624 [CF] ERROR GetConfigurationTuple
[CFATA] at PowerMgr:FFB8B8DC:FFB8B8DC [0xC0628044] -> 0x1       : Interrupt related?
[CFATA] at PowerMgr:FFB8B8EC:FFB8B8E8 [0xC0628044] <- 0xFFFFFFFE: Interrupt related?
[CFATA] at PowerMgr:FFB8B918:FFB8B918 [0xC0622007] -> 0x58      : ATA command/status
[CFATA] at CSMgrTas:FFB8ACC0:FFB8ACC0 [0xC0628040] <- 0x0       : Interrupt enable?
[CFATA] at CSMgrTas:FFB89C48:FFB89C48 [0xC0622007] -> 0x58      : ATA command/status

As you can see its using the 0xC062200x & 0xC06280x , before when i tested a few years ago i changed
0xC062200 to 0xC062203 and lockup/crashed but not before i did a R/W test , i writing @ 80Mb/s & reading @ 2200Mb/s then it crashed
( did get a screen shot throu) sound like the read was internal ram read I/O , after see this i see i need more regs like 0xCo6280xx maybe?
More research is needed for sure , i my need to start working in Qemu
Last I found I think the Timers Regs for CF/HD contoller
[HPTimer] at CSMgrT:FF9B3680:FF86D404 [0xC0243280] <- 0x0       : HPTimer #8: inactive
[HPTimer] at CSMgrT:FF9B3650:FF86D40C [0xC0243180] <- 0x0       : HPTimer #8: disabled?
[HPTimer] at CSMgrT:FF9B35D4:FF86D418 [0xC0243184] -> 0xCBF00   : HPTimer #8: output compare
[HPTimer] at CSMgrT:FF9B35E8:FF86D418 [0xC0243184] <- 0xEC50A   : HPTimer #8: output compare (delay 10 microseconds)
[HPTimer] at CSMgrT:FF9B36A0:FF86D420 [0xC0243284] <- 0x0       : HPTimer #8: reset trigger?
[HPTimer] at CSMgrT:FF9B36A4:FF86D420 [0xC0243284] -> 0x0       : HPTimer #8: ???
[HPTimer] at CSMgrT:FF9B3640:FF86D428 [0xC0243180] <- 0x1       : HPTimer #8: enabled?
[HPTimer] at CSMgrT:FF9B3650:FF86D454 [0xC0243180] <- 0x0       : HPTimer #8: disabled?
[HPTimer] at CSMgrT:FF9B36A0:FF86D45C [0xC0243284] <- 0x0       : HPTimer #8: reset trigger?
[HPTimer] at CSMgrT:FF9B36A4:FF86D45C [0xC0243284] -> 0x0       : HPTimer #8: ???
[HPTimer] at CSMgrT:FF9B3660:FF86D468 [0xC0243280] <- 0x1       : HPTimer #8: active
[CFATA] at CSMgrTas:FFB89B68:FFB89B64 [0xC062200E] <- 0x2       : ATA device control: int disable
[HPTimer] at CSMgrT:FF9B3680:FF86D404 [0xC0243290] <- 0x0       : HPTimer #9: inactive
[HPTimer] at CSMgrT:FF9B3650:FF86D40C [0xC0243190] <- 0x0       : HPTimer #9: disabled?
[HPTimer] at CSMgrT:FF9B35D4:FF86D418 [0xC0243194] -> 0xCC300   : HPTimer #9: output compare
[HPTimer] at CSMgrT:FF9B35E8:FF86D418 [0xC0243194] <- 0xECBE8   : HPTimer #9: output compare (delay 1000 microseconds)
[HPTimer] at CSMgrT:FF9B36A0:FF86D420 [0xC0243294] <- 0x0       : HPTimer #9: reset trigger?
[HPTimer] at CSMgrT:FF9B36A4:FF86D420 [0xC0243294] -> 0x0       : HPTimer #9: ???
[HPTimer] at CSMgrT:FF9B3640:FF86D428 [0xC0243190] <- 0x1       : HPTimer #9: enabled?
[HPTimer] at CSMgrT:FF9B3660:FF86D444 [0xC0243290] <- 0x1       : HPTimer #9: active
[GPIO]   at HotPlug:FF81DF88:FF816CB8 [0xC0220044] -> 0x1       : GPIO_17
[HPTimer] Firing HPTimer #9
[HPTimer] at DbgMgr:FF9B36D8:FF86BFD4 [0xC0243300] -> 0x400     : Which timer(s) triggered
[HPTimer] at DbgMgr:FF9B3650:FF86C074 [0xC0243190] <- 0x0       : HPTimer #9: disabled?
[HPTimer] at DbgMgr:FF9B36A0:FF86C07C [0xC0243294] <- 0x0       : HPTimer #9: reset trigger?
[HPTimer] at DbgMgr:FF9B36A4:FF86C07C [0xC0243294] -> 0x0       : HPTimer #9: ???
[HPTimer] at DbgMgr:FF9B36D8:FF86C188 [0xC0243300] -> 0x0       : Which timer(s) triggered
[HPTimer] at CSMgrT:FF9B3680:FF86D404 [0xC02432A0] <- 0x0       : HPTimer #10: inactive
[HPTimer] at CSMgrT:FF9B3650:FF86D40C [0xC02431A0] <- 0x0       : HPTimer #10: disabled?
[HPTimer] at CSMgrT:FF9B35D4:FF86D418 [0xC02431A4] -> 0xCC700   : HPTimer #10: output compare
[HPTimer] at CSMgrT:FF9B35E8:FF86D418 [0xC02431A4] <- 0xED0E8   : HPTimer #10: output compare (delay 1000 microseconds)
[HPTimer] at CSMgrT:FF9B36A0:FF86D420 [0xC02432A4] <- 0x0       : HPTimer #10: reset trigger?
[HPTimer] at CSMgrT:FF9B36A4:FF86D420 [0xC02432A4] -> 0x0       : HPTimer #10: ???
[HPTimer] at CSMgrT:FF9B3640:FF86D428 [0xC02431A0] <- 0x1       : HPTimer #10: enabled?
[HPTimer] at CSMgrT:FF9B3660:FF86D444 [0xC02432A0] <- 0x1       : HPTimer #10: active
 [HPTimer] Firing HPTimer #10
  184:   360.192 [CF] ERROR GetRotatingDeviceInfo
   185:   400.896 [CF] ERROR GetMakerAndVersionTuple : SearchTuple (CISTPL_VERS_1)

This is very promising , very good info this well definitely help 100%  :D
 

names_are_hard

Quote from: reddeercityJust assumed that after 10 years there would a lot Log file around.

I think after 10 years most of those log files will be lost, or the people that had them no longer read the forum :)  And people that joined less than 10 years ago definitely don't have what you want.  If you give builds, people can make new logs.

theBilalFakhouri

Quote from: names_are_hard on April 19, 2024, 03:16:20 PMWhere's the code to generate the logs?  Lots of people have 5d3 and can run tests.

dm-spy-experiments, io_trace and io_trace_full branches from official repo, compile with:
CONFIG_DEBUG_INTERCEPT_STARTUP = yin Makefile.user.default file.

There are some differences among these branches, startup log might be broken in io_trace_full (last time I tested the camera froze), but dm-spy-experiments worked.

For logging MMIO, compile with:
CONFIG_MMIO_TRACE = y
Not sure if MMIO with startup logging works (probably not in io_trace_full branch), it might require hardcoded buffer for io_trace_full, io_trace might work, check:
https://www.magiclantern.fm/forum/index.php?topic=2388.msg197313#msg197313

reddeercity

Thank for the reminder on tracing , i do have dm_spy i/o trace already setup in one of my branches
for D4 it should be setup for D5 cam also . Just hadn't had the time to fire up my Linux VM where i compile my builds , I work outside of Linux when researching or coding, i do most of that in old win7 pc
 :)