Page 5 of 15 FirstFirst ... 34567 ... LastLast
Results 61 to 75 of 211

Thread: The Series4 (TiVo Premiere) Development Thread

  1. #61
    Join Date
    Jul 2005
    Posts
    347

    PROM Socketed!

    Alright, it's been quite the long day, but it's now come to an awesome and eventful close.

    As I already had mentioned previously, I already managed to remove the original PROM from the board via Chip Quick (grrrr) and cleaned the pads.



    The short of it is while my TiVo lay in pieces on the counter, the frustration of not being able to solder the TSOP socket on grew. As a I mentioned previously, the official means for attaching this socket are a blend of costly and exotic, with varying degrees of each depending on the solution you select.

    Being the stubborn hacker that I am, I determined to find a way to mount the socket but the Meritec documentation has many warnings about attempting to hand-solder the socket with normal tools. These warnings were not unfounded, as I found through initial attempts that soldering the socket through "normal" means was quite difficult indeed.

    After much ruminating on the idea, and pacing around the kitchen, I decided to try an old standby...hot glue! I figured if I carefully aligned the socket and tacked down the edges, I could try flooding the pins with flux and running solder along the edges.

    So I went ahead and grabbed a fresh TSOP socket, very carefully aligned and centered the pins, and tacked four blobs of glue on the corners.



    At this point I realized that I didn't have very good lighting and I couldn't easily get access to the pins, so I clipped on some trusty Photon Freedom lights to the edges of the motherboard.



    As you can see, the light looked funny, but the light was there where I needed it, which was the left and right sides.





    From here I flooded the pins and the board with a no-clean flux pen and made sure to get good coverage. I then tried to carefully apply solder along the pins. Unfortunately, I managed to bridge together most of the pins in the socket together, so my next task consisted of carefully taking an ultra-thin desoldering wick and removing excess solder from between the pins. It was long and tedious work, but eventually I had both sides soldered and free of bridges.



    Unfortunately I nicked the edge of the socket with my soldering iron and melted some of the plastic. ::sadface::



    Burn marks aside, the socket was now soldered! I carefully removed the blobs of cooled glue with some tweezers cleaned up the area visually inspected the connections to look for any bridges that I had missed or other debris. All clear!

    Wings Closed:



    Wings Opened:



    Bob's Your Uncle:



    Woot!
    Last edited by Omikron; 04-05-2010 at 02:40 AM.
    .-=Omikron=-.

    TiVo Series4 Premiere Development HERE

    Do you have a PROM related question? Check HERE and HERE before sending me a PM. Any questions that have already been answered will be deleted if sent via PM.

  2. #62
    Join Date
    Jul 2005
    Posts
    347
    Preliminary tests confirm my previous suspicion that the PROM now contains keys specific to the model of TiVo it came from.

    Swapping the PROM with the PROM from a different TiVo Premiere resulted in a TiVo that begins the boot process, but then panics and reboots, citing HDCP key initialization failure as the reason. The TSN appears to be burned into the PROM, and the PROM swap resulted in console logs with a different TSN.

    It appears that the PROM flash is split into several areas, with the executable code being the same on all units, but having a different "config" that contains the TSN and crypto keys.

    If a hack is possible, it looks like each PROM is going to have to be burned separately, and will of course require the original PROM to pull keys from.
    .-=Omikron=-.

    TiVo Series4 Premiere Development HERE

    Do you have a PROM related question? Check HERE and HERE before sending me a PM. Any questions that have already been answered will be deleted if sent via PM.

  3. #63
    Join Date
    Jun 2006
    Location
    Dougal County
    Posts
    1,007
    Quote Originally Posted by Omikron View Post
    Swapping the PROM with the PROM from a different TiVo Premiere resulted in a TiVo that begins the boot process, but then panics and reboots, citing HDCP key initialization failure as the reason. The TSN appears to be burned into the PROM, and the PROM swap resulted in console logs with a different TSN.
    From poking through the startup scripts it looks like you can skip the HDCP key initialization if you have DISABLE_HDCP=1 set in your environment.

    The startup sequence is similar in this regard on the TiVoHD, and I was able to boot my TiVoHD successfully after appending this variable to my bootpage.

    Perhaps you can boot an alien PROM if DISABLE_HDCP=1 is defined during boot. It would be interesting to see if this would allow you to boot up all the way with a different box's PROM.

    edit : w00t! 1,000 posts :P

  4. #64
    Join Date
    Jul 2005
    Posts
    347
    Quote Originally Posted by jt1134 View Post
    From poking through the startup scripts it looks like you can skip the HDCP key initialization if you have DISABLE_HDCP=1 set in your environment.

    The startup sequence is similar in this regard on the TiVoHD, and I was able to boot my TiVoHD successfully after appending this variable to my bootpage.

    Perhaps you can boot an alien PROM if DISABLE_HDCP=1 is defined during boot. It would be interesting to see if this would allow you to boot up all the way with a different box's PROM.

    edit : w00t! 1,000 posts :P
    Here's what we get before passing the DISABLE_HDCP variable:
    Code:
    Running boot Stage D_PreMfs scripts
    
    Remote control is  TIVO
    
    MFS partition on  /dev/sda10
    
    CRC error in key (B112B4BA,2C10F585) - it's unusable
    
    LoadHdcpKeySet: Unable to initialize crypto engine
    
    Illegal read at 3b33d270
    
    Cpu0, do_page_fault: sending signal 11 to LoadHdcpKeySet(243)
    
    Cpu 0
    
    $ 0   : 00000000 fefefeff 105ff470 3b33d270
    
    $ 4   : 1001b070 00000024 7ff3c038 7ff3c03c
    
    $ 8   : 69744c6f 00000010 00000010 636b0000
    
    $12   : 556e6162 00000033 00000100 6c652074
    
    $16   : 1001b070 0000001c 7ff3c0f0 2acf7a18
    
    $20   : 7ff3c1f8 7ff3c0f0 00000100 7ff3c278
    
    $24   : 00000003 2ac81778                  
    
    $28   : 2ad43720 7ff3c018 7ff3c1d8 2ac8b0e0
    
    Hi    : 00000093
    
    Lo    : 74bbc000
    
    epc   : 2ac817bc 0x2ac817bc     Tainted: PF    
    
    ra    : 2ac8b0e0 0x2ac8b0e0
    
    Status: 00008413    USER EXL IE 
    
    Cause : 00800008
    
    BadVA : 3b33d270
    
    PrId  : 0002a044
    
           80011f0c 80011f28 80014a00 80014d28 80016460 
    
           2ac817bc 2ac8b0e0 2ac8bef0 2ac8bdc8 2ac8bb88 2ac9e9f4 2aca0cdc 2aca26d8
    
           0040409c 0040249c 0401455c
    
    Tmk Fatal Error: Thread LoadHdcpKeySet <243> strayed!
    
    pc 0x2ac817bc status 0x7317b91b cause 0x7ff3c1ef bva 0x7ff3c0f0 hi 0x000093 lo 0x74bbc000
    
    R00 0x00000000  R01 0xfefefeff  R02 0x105ff470  R03 0x3b33d270  
    
    R04 0x1001b070  R05 0x00000024  R06 0x7ff3c038  R07 0x7ff3c03c  
    
    R08 0x69744c6f  R09 0x00000010  R10 0x00000010  R11 0x636b0000  
    
    R12 0x556e6162  R13 0x00000033  R14 0x00000100  R15 0x6c652074  
    
    R16 0x1001b070  R17 0x0000001c  R18 0x7ff3c0f0  R19 0x2acf7a18  
    
    R20 0x7ff3c1f8  R21 0x7ff3c0f0  R22 0x00000100  R23 0x7ff3c278  
    
    R24 0x00000003  R25 0x2ac81778  R26 0x656e6769  R27 0x00000000  
    
    R28 0x2ad43720  R29 0x7ff3c018  R30 0x7ff3c1d8  R31 0x2ac8b0e0  
    
    Paste the following into a shell to get a backtrace...
    
    
    bt -t /platform/tvbin/LoadHdcpKeySet <<END_OF_BT
    
      tcd 1
    
      hpk Gen07
    
      build b-14-1-mr @385725 2010.03.29-1708 release-mips_k26 []
    
      pack 14.1a-01-3
    
      read 0x00400000 /platform/tvbin/LoadHdcpKeySet
    
      read 0x04000000 /lib/libc.so.6
    
      read 0x04400000 /lib/libm.so.6
    
      read 0x04800000 /lib/libpthread.so.0
    
      read 0x04c00000 /lib/libutil.so.1
    
      read 0x05000000 /lib/libtvutil.so
    
      read 0x2aaa8000 /lib/ld.so.1
    
      read 0x2ab04000 /platform/lib/libhpkhl.so
    
      read 0x2ac0c000 /lib/libhpkoss.so
    
      read 0x2ac58000 /lib/libtmk.so
    
      read 0x2ad40000 /lib/libdl.so.2
    
      read 0x2ad84000 /platform/lib/libhpkll.so
    
      read 0x2adc8000 /platform/lib/libnexus.so
    
      0x2ac817bc 0x2ac8b0e0 0x2ac8bef0 0x2ac8bdc8 0x2ac8bb88 0x2ac9e9f4 0x2aca0cdc 
    
      0x2aca26d8 0x0040409c 0x0040249c 0x0401455c 
    
    END_OF_BT
    
    
    Tmk Fatal Error: Thread LoadHdcpKeySet <243>: unexpected signal 11
    
    Look for debug board
    
    Starting podapp...
    
    Loading ubuddy.ko
    
    ubuddy: no version magic, tainting kernel.
    
    Loading router.ko
    
    router: no version magic, tainting kernel.
    
    Updating system clock
    
    Pretending to LOCKMEM 7fc1dac0
    
    ubuddy: RTC is 01/01/03 09:37:39 (last=0 broken=n boot=y)
    
    Time set to: Wed Jan  1 09:37:39 2003
    
    Synchronizing SCSI cache for disk sda: 
    
    Restarting system.
    Passing the HDCP_DISABLE variable at boot freaks out the initrd:
    Code:
    Running as /linuxrc - autoscan!
    
    Loading signatures file
    
    3118 valid entries loaded
    
    Scan /mnt
    
    Scan /mnt/lost+found
    
    Scan /mnt/bin
    
    Scan /mnt/etc
    
    Scan /mnt/etc/hotplug
    
    Scan /mnt/etc/mempools
    
    Scan /mnt/etc/ppp
    
    Scan /mnt/etc/rc.d
    
    Scan /mnt/etc/rc.d/StageA_PreKickstart
    
    Scan /mnt/etc/rc.d/StageB_PostKickstart
    
    Scan /mnt/etc/rc.d/StageC_MediaInitialization
    
    Scan /mnt/etc/rc.d/StageD_PreMfs
    
    Scan /mnt/etc/rc.d/StageE_PreApplication
    
    Scan /mnt/etc/rc.d/StageF_ApplicationLaunch
    
    Scan /mnt/etc/rc.d/StageG_PostApplication
    
    Scan /mnt/etc/terminfo
    
    Scan /mnt/etc/terminfo/d
    
    Scan /mnt/etc/terminfo/l
    
    Scan /mnt/etc/terminfo/v
    
    Scan /mnt/etc/terminfo/x
    
    Scan /mnt/etc/tivoconfig
    
    Scan /mnt/lib
    
    Scan /mnt/lib/xtables
    
    Scan /mnt/opt
    
    Scan /mnt/opt/tivo
    
    Scan /mnt/platform
    
    Scan /mnt/platform/Gen07
    
    Scan /mnt/platform/Gen07/etc
    
    Scan /mnt/platform/etc
    
    Scan /mnt/platform/etc/hotplug
    
    Scan /mnt/platform/etc/mempools
    
    Scan /mnt/platform/etc/ppp
    
    Scan /mnt/platform/lib
    
    Scan /mnt/platform/lib/modules
    
    Scan /mnt/platform/tvbin
    
    Scan /mnt/platform/utils
    
    Scan /mnt/platform/utils/DeviceList
    
    Scan /mnt/sbin
    
    Scan /mnt/tvbin
    
    Scan /mnt/tvbin/flash
    
    Scan /mnt/tvbin/flashapps
    
    Scan /mnt/tvbin/flashapps/tivo_hddemo
    
    Scan /mnt/tvbin/flashapps/tivo_hddemo/data
    
    Scan /mnt/tvbin/flashapps/tivo_hddemo/icons
    
    Scan /mnt/tvbin/flashapps/tivo_hddemo/images
    
    Scan /mnt/tvbin/flashapps/tivo_hdui
    
    Scan /mnt/tvbin/flashapps/tivo_hdui/data
    
    Scan /mnt/tvbin/flashapps/tivo_hdui/icons
    
    Scan /mnt/tvbin/flashapps/tivo_hdui/images
    
    Scan /mnt/tvbin/flashtests
    
    Scan /mnt/tvbin/splashscreens
    
    Scan /mnt/tvbin/splashscreens/enUS
    
    Scan /mnt/tvlib
    
    Scan /mnt/tvlib/firmware
    
    Scan /mnt/tvlib/firmware/cdc
    
    Scan /mnt/tvlib/firmware/prism2
    
    Scan /mnt/tvlib/font
    
    Scan /mnt/tvlib/font/dtvcc
    
    Scan /mnt/tvlib/idl
    
    Scan /mnt/tvlib/itcl3.2
    
    Scan /mnt/tvlib/misc
    
    Scan /mnt/tvlib/tcl
    
    Scan /mnt/tvlib/tcl/encoding
    
    Scan /mnt/tvlib/tcl/http
    
    Scan /mnt/tvlib/tcl/http1.0
    
    Scan /mnt/tvlib/tcl/msgcat
    
    Scan /mnt/tvlib/tcl/opt
    
    Scan /mnt/tvlib/tcl/reg
    
    Scan /mnt/tvlib/tcl/tcldom
    
    Scan /mnt/tvlib/tcl/tcllib
    
    Scan /mnt/tvlib/tcl/tcllib/base64
    
    Scan /mnt/tvlib/tcl/tcllib/cmdline
    
    Scan /mnt/tvlib/tcl/tcllib/comm
    
    Scan /mnt/tvlib/tcl/tcllib/counter
    
    Scan /mnt/tvlib/tcl/tcllib/crc
    
    Scan /mnt/tvlib/tcl/tcllib/csv
    
    Scan /mnt/tvlib/tcl/tcllib/des
    
    Scan /mnt/tvlib/tcl/tcllib/exif
    
    Scan /mnt/tvlib/tcl/tcllib/fileutil
    
    Scan /mnt/tvlib/tcl/tcllib/ftp
    
    Scan /mnt/tvlib/tcl/tcllib/inifile
    
    Scan /mnt/tvlib/tcl/tcllib/log
    
    Scan /mnt/tvlib/tcl/tcllib/math
    
    Scan /mnt/tvlib/tcl/tcllib/md4
    
    Scan /mnt/tvlib/tcl/tcllib/md5
    
    Scan /mnt/tvlib/tcl/tcllib/md5crypt
    
    Scan /mnt/tvlib/tcl/tcllib/mime
    
    Scan /mnt/tvlib/tcl/tcllib/multiplexer
    
    Scan /mnt/tvlib/tcl/tcllib/report
    
    Scan /mnt/tvlib/tcl/tcllib/sha1
    
    Scan /mnt/tvlib/tcl/tcllib/struct
    
    Scan /mnt/tvlib/tcl/tcllib/uri
    
    Scan /mnt/tvlib/tcl/tcltest
    
    Scan /mnt/tvlib/tcl/tclxml
    
    Scan /mnt/tvlib/tcl/tv
    
    Scan /mnt/var
    
    Scan /mnt/proc
    
    Scan /mnt/install
    
    Scan /mnt/dist
    
    Scan /mnt/mnt
    
    Scan /mnt/mnt/cdrom
    
    Scan /mnt/mnt/flash
    
    Scan /mnt/initrd
    
    Scan /mnt/sys
    
    Scan /mnt/db
    
    Scan /mnt/dev
    
    Scan /mnt/dev/pts
    
    No match for DISABLE_HDCP=1
    
    The filesystem needs to be repaired
    
    At this point we will repair the filesystem
    
    Scan /mnt
    
    Scan /mnt/lost+found
    
    Scan /mnt/bin
    
    Scan /mnt/etc
    
    Scan /mnt/etc/hotplug
    
    Scan /mnt/etc/mempools
    
    Scan /mnt/etc/ppp
    
    Scan /mnt/etc/rc.d
    
    Scan /mnt/etc/rc.d/StageA_PreKickstart
    
    Scan /mnt/etc/rc.d/StageB_PostKickstart
    
    Scan /mnt/etc/rc.d/StageC_MediaInitialization
    
    Scan /mnt/etc/rc.d/StageD_PreMfs
    
    Scan /mnt/etc/rc.d/StageE_PreApplication
    
    Scan /mnt/etc/rc.d/StageF_ApplicationLaunch
    
    Scan /mnt/etc/rc.d/StageG_PostApplication
    
    Scan /mnt/etc/terminfo
    
    Scan /mnt/etc/terminfo/d
    
    Scan /mnt/etc/terminfo/l
    
    Scan /mnt/etc/terminfo/v
    
    Scan /mnt/etc/terminfo/x
    
    Scan /mnt/etc/tivoconfig
    
    Scan /mnt/lib
    
    Scan /mnt/lib/xtables
    
    Scan /mnt/opt
    
    Scan /mnt/opt/tivo
    
    Scan /mnt/platform
    
    Scan /mnt/platform/Gen07
    
    Scan /mnt/platform/Gen07/etc
    
    Scan /mnt/platform/etc
    
    Scan /mnt/platform/etc/hotplug
    
    Scan /mnt/platform/etc/mempools
    
    Scan /mnt/platform/etc/ppp
    
    Scan /mnt/platform/lib
    
    Scan /mnt/platform/lib/modules
    
    Scan /mnt/platform/tvbin
    
    Scan /mnt/platform/utils
    
    Scan /mnt/platform/utils/DeviceList
    
    Scan /mnt/sbin
    
    Scan /mnt/tvbin
    
    Scan /mnt/tvbin/flash
    
    Scan /mnt/tvbin/flashapps
    
    Scan /mnt/tvbin/flashapps/tivo_hddemo
    
    Scan /mnt/tvbin/flashapps/tivo_hddemo/data
    
    Scan /mnt/tvbin/flashapps/tivo_hddemo/icons
    
    Scan /mnt/tvbin/flashapps/tivo_hddemo/images
    
    Scan /mnt/tvbin/flashapps/tivo_hdui
    
    Scan /mnt/tvbin/flashapps/tivo_hdui/data
    
    Scan /mnt/tvbin/flashapps/tivo_hdui/icons
    
    Scan /mnt/tvbin/flashapps/tivo_hdui/images
    
    Scan /mnt/tvbin/flashtests
    
    Scan /mnt/tvbin/splashscreens
    
    Scan /mnt/tvbin/splashscreens/enUS
    
    Scan /mnt/tvlib
    
    Scan /mnt/tvlib/firmware
    
    Scan /mnt/tvlib/firmware/cdc
    
    Scan /mnt/tvlib/firmware/prism2
    
    Scan /mnt/tvlib/font
    
    Scan /mnt/tvlib/font/dtvcc
    
    Scan /mnt/tvlib/idl
    
    Scan /mnt/tvlib/itcl3.2
    
    Scan /mnt/tvlib/misc
    
    Scan /mnt/tvlib/tcl
    
    Scan /mnt/tvlib/tcl/encoding
    
    Scan /mnt/tvlib/tcl/http
    
    Scan /mnt/tvlib/tcl/http1.0
    
    Scan /mnt/tvlib/tcl/msgcat
    
    Scan /mnt/tvlib/tcl/opt
    
    Scan /mnt/tvlib/tcl/reg
    
    Scan /mnt/tvlib/tcl/tcldom
    
    Scan /mnt/tvlib/tcl/tcllib
    
    Scan /mnt/tvlib/tcl/tcllib/base64
    
    Scan /mnt/tvlib/tcl/tcllib/cmdline
    
    Scan /mnt/tvlib/tcl/tcllib/comm
    
    Scan /mnt/tvlib/tcl/tcllib/counter
    
    Scan /mnt/tvlib/tcl/tcllib/crc
    
    Scan /mnt/tvlib/tcl/tcllib/csv
    
    Scan /mnt/tvlib/tcl/tcllib/des
    
    Scan /mnt/tvlib/tcl/tcllib/exif
    
    Scan /mnt/tvlib/tcl/tcllib/fileutil
    
    Scan /mnt/tvlib/tcl/tcllib/ftp
    
    Scan /mnt/tvlib/tcl/tcllib/inifile
    
    Scan /mnt/tvlib/tcl/tcllib/log
    
    Scan /mnt/tvlib/tcl/tcllib/math
    
    Scan /mnt/tvlib/tcl/tcllib/md4
    
    Scan /mnt/tvlib/tcl/tcllib/md5
    
    Scan /mnt/tvlib/tcl/tcllib/md5crypt
    
    Scan /mnt/tvlib/tcl/tcllib/mime
    
    Scan /mnt/tvlib/tcl/tcllib/multiplexer
    
    Scan /mnt/tvlib/tcl/tcllib/report
    
    Scan /mnt/tvlib/tcl/tcllib/sha1
    
    Scan /mnt/tvlib/tcl/tcllib/struct
    
    Scan /mnt/tvlib/tcl/tcllib/uri
    
    Scan /mnt/tvlib/tcl/tcltest
    
    Scan /mnt/tvlib/tcl/tclxml
    
    Scan /mnt/tvlib/tcl/tv
    
    Scan /mnt/var
    
    Scan /mnt/proc
    
    Scan /mnt/install
    
    Scan /mnt/dist
    
    Scan /mnt/mnt
    
    Scan /mnt/mnt/cdrom
    
    Scan /mnt/mnt/flash
    
    Scan /mnt/initrd
    
    Scan /mnt/sys
    
    Scan /mnt/db
    
    Scan /mnt/dev
    
    Scan /mnt/dev/pts
    
    Removing DISABLE_HDCP=1
    
    Iteration complete
    
    Synchronizing SCSI cache for disk sda: 
    
    Restarting system.
    .-=Omikron=-.

    TiVo Series4 Premiere Development HERE

    Do you have a PROM related question? Check HERE and HERE before sending me a PM. Any questions that have already been answered will be deleted if sent via PM.

  5. #65
    Join Date
    Jul 2005
    Posts
    347
    TSOP56 adapter has arrived!

    Last edited by Omikron; 04-05-2010 at 05:41 PM. Reason: Typo.
    .-=Omikron=-.

    TiVo Series4 Premiere Development HERE

    Do you have a PROM related question? Check HERE and HERE before sending me a PM. Any questions that have already been answered will be deleted if sent via PM.

  6. #66
    Join Date
    Sep 2001
    Location
    West of Bermuda
    Posts
    1,017
    well, here's hoping that, if they put in that many new chain-of-trust links, something didn't get tested enough and omikron will be having lots of happy prom days soon.

    ronny

  7. #67
    Join Date
    Jul 2005
    Posts
    347

    Tales from the Flash

    Found while browsing the flash:

    Code:
    Kernel release keypc-‹8u:*#“–ak*A†This prime number is brought to you by Dave Platt of TiVo Inc.‚Z1"žZ|"Q%>p;~q^N^‰0!6YweR՝y9zx`zz׍ZP@7T†La"?h6>i.|–fV,-~K`Ox$4‹D‘+TV... the Porridge bird ...r%^‰$^ƻj”N‰@0—B‰.›Y˜Wenn ist das Nunstck git und Slotermeyer? Ja! ... Beiherhund das Oder die Flipperwaldt gersput
    Yes folks, your TiVo is covertly killing Nazi's using Monty Python's "Killer Joke"! :-D

    http://en.wikipedia.org/wiki/The_Fun...e_in_the_World
    Last edited by Omikron; 04-05-2010 at 05:58 PM. Reason: Added Wikipedia Link
    .-=Omikron=-.

    TiVo Series4 Premiere Development HERE

    Do you have a PROM related question? Check HERE and HERE before sending me a PM. Any questions that have already been answered will be deleted if sent via PM.

  8. #68
    Join Date
    Mar 2005
    Posts
    54
    Omikron- Awesome work so far! A damn shame you'll need to read each prom, change the data and then write it back to it to hack it. Obviously a 'piggyback' method won't work here since you'll probably need that serial on the bottom of the chip.

    Glad to hear the serial header is the same as a TivoHD... now I've got one more use for it!!

    Good luck with the rest of it!

  9. #69
    Join Date
    Jul 2005
    Posts
    347
    Quote Originally Posted by phdeez View Post
    Omikron- Awesome work so far! A damn shame you'll need to read each prom, change the data and then write it back to it to hack it. Obviously a 'piggyback' method won't work here since you'll probably need that serial on the bottom of the chip.

    Glad to hear the serial header is the same as a TivoHD... now I've got one more use for it!!

    Good luck with the rest of it!
    Concerns about the piggyback method are the least of our worries at the moment. Right now we still fear that any change made to the StrataFlash whatsoever will result in a non-boot situation, as the CPU may likely be checking the flash in some way prior to allowing it to execute.

    IF a hardware hack is possible, the original chip will have to be read as it contains unique crypto keys and the TSN specific for that unit.

    The serial number on the bottom of the chip is not needed, as it appears to be engraved at Intel. All of the blank StrataFlash chips I got from DigiKey have the same serial numbering scheme. The StrataFlash chip also has a unique identifier permanently burned into at at the Intel factory, differentiating it from other chips.
    .-=Omikron=-.

    TiVo Series4 Premiere Development HERE

    Do you have a PROM related question? Check HERE and HERE before sending me a PM. Any questions that have already been answered will be deleted if sent via PM.

  10. #70
    Join Date
    Jul 2005
    Posts
    347
    The boot code on the StrataFlash chip seems to be locked up pretty tight.

    In-depth investigation and tests have revealed that the CPU checks for validity of the flash before executing code from it. We still have much more to take a look at, but it would seem we'll be fighting an uphill battle. I'm not willing to say that it's going to be impossible yet, but it's certainly going to be difficult.
    .-=Omikron=-.

    TiVo Series4 Premiere Development HERE

    Do you have a PROM related question? Check HERE and HERE before sending me a PM. Any questions that have already been answered will be deleted if sent via PM.

  11. #71
    Join Date
    Jul 2005
    Posts
    347

    Hiatus

    Alright folks, I'm going to have to go on another hiatus for a few weeks. The Gen07 platform has sucked up a good deal of my time, and I feel we've got some really good work done so far.

    HUGE thanks to the following people for their donations towards development hardware:

    • B.N. - I don't know your DDB handle and didn't want to post your name.
    • djl
    • Jamie
    • dcbarry
    • ray08


    Without your donations we would not have been able to afford the programming hardware.

    I won't be able to start working on the platform again until next month, but in the mean time other highly awesome DDB members are continuing work in the background. A lack of updates here does not equate to a lack of progress on the platform.

    BTUxNine, Jamie, tivo4mevo, tivotechie, jt1134, thank you all for your hard work and support. See you all in a few weeks. :-)
    Last edited by Omikron; 04-07-2010 at 04:47 PM.
    .-=Omikron=-.

    TiVo Series4 Premiere Development HERE

    Do you have a PROM related question? Check HERE and HERE before sending me a PM. Any questions that have already been answered will be deleted if sent via PM.

  12. #72
    Join Date
    Aug 2007
    Posts
    7
    Quote Originally Posted by Omikron View Post
    Either way, here's the initial PROM boot log from the messages log:

    Code:
    Mar 31 20:52:52 (none) syslogd 1.5.0: restart.
    Mar 31 20:53:25 (none) Stats: == System startup resource statistics ==
    Mar 31 20:53:25 (none) Stats: ++ System build version numbers ++
    Mar 31 20:53:25 (none) Stats: b-14-1-mr @384589 2010.03.19-1443 release-mips_k26 [] ARM_IDL_FREEZE CDDB_QUERY DCT_SERIAL DSS_SERIAL HPK IDL_FREEZE IRBLAST LOCAL_CALYPSO_SERVER LOCAL_MP3_PLAYER LOCAL_MUSIC_PLAYER LOCAL_PHOTO_VIEWER LOCAL_WMA_PLAYER MACROVISION MULTI_ROOM_VIEWING PERF_LOGGER PERF_LOGGER_USER_STATS PTHREADS_TMK REQUIRE_PRODUCTION_SPIGOT_LINEAGE SANITIZE_LOGS STRONG_CRYPTO T2KSOURCE US_CABLE_AUTO_DETECT WMDRMPD 
    Mar 31 20:53:25 (none) Stats: 2010.03.19-1443 14.1-01-3 
    Mar 31 20:53:25 (none) Stats: PROM version: Gen07 release 1.00 (2009-10-20 14:09:37)
    Mar 31 20:53:25 (none) Stats: Version : Gen07 release 1.00 (2009-10-20 14:09:37) SHA : 356515097AED79CCEC5097DA723F8FE654826A83 
    Mar 31 20:53:25 (none) Stats: System Serial Number: 746XXXXXXXXXX
    Mar 31 20:53:25 (none) Stats: Linux version 2.6.18-5.1 (build@buildmaster74) (gcc version 3.3.4) #1 Mon Mar 15 10:01:56 PDT 2010 
    Mar 31 20:53:25 (none) Stats: ++ Memory usage ++
    Mar 31 20:53:25 (none) Stats: MemTotal:       329200 kB 
    Mar 31 20:53:25 (none) Stats: MemFree:        256240 kB 
    Mar 31 20:53:25 (none) Stats: Buffers:          1456 kB 
    Mar 31 20:53:25 (none) Stats: Cached:          49300 kB 
    Mar 31 20:53:25 (none) Stats: SwapCached:          0 kB 
    Mar 31 20:53:25 (none) Stats: Active:          18500 kB 
    Mar 31 20:53:25 (none) Stats: Inactive:        36876 kB 
    Mar 31 20:53:25 (none) Stats: HighTotal:           0 kB 
    Mar 31 20:53:25 (none) Stats: HighFree:            0 kB 
    Mar 31 20:53:25 (none) Stats: LowTotal:       329200 kB 
    Mar 31 20:53:25 (none) Stats: LowFree:        256240 kB 
    Mar 31 20:53:25 (none) Stats: SwapTotal:      131064 kB 
    Mar 31 20:53:25 (none) Stats: SwapFree:       131064 kB 
    Mar 31 20:53:25 (none) Stats: Dirty:              88 kB 
    Mar 31 20:53:25 (none) Stats: Writeback:           0 kB 
    Mar 31 20:53:25 (none) Stats: AnonPages:        4656 kB 
    Mar 31 20:53:25 (none) Stats: Mapped:           9384 kB 
    Mar 31 20:53:25 (none) Stats: Slab:            11936 kB 
    Mar 31 20:53:25 (none) Stats: PageTables:        864 kB 
    Mar 31 20:53:25 (none) Stats: NFS_Unstable:        0 kB 
    Mar 31 20:53:25 (none) Stats: Bounce:              0 kB 
    Mar 31 20:53:25 (none) Stats: CommitLimit:    295664 kB 
    Mar 31 20:53:25 (none) Stats: Committed_AS:    33216 kB 
    Mar 31 20:53:25 (none) Stats: VmallocTotal:  1048524 kB 
    Mar 31 20:53:25 (none) Stats: VmallocUsed:      3536 kB 
    Mar 31 20:53:25 (none) Stats: VmallocChunk:  1041352 kB 
    Mar 31 20:53:25 (none) Stats: ++ CPU info ++
    Mar 31 20:53:25 (none) Stats: system type^I^I: BCM97xxx Settop Platform 
    Mar 31 20:53:25 (none) Stats: build target^I^I: unknown 
    Mar 31 20:53:25 (none) Stats: processor^I^I: 0 
    Mar 31 20:53:25 (none) Stats: cpu model^I^I: BMIPS4380 V4.4  FPU V0.1 
    Mar 31 20:53:25 (none) Stats: cpu MHz^I^I^I: 402.43 
    Mar 31 20:53:25 (none) Stats: BogoMIPS^I^I: 402.43    ( udelay_val : 201216  HZ = 1000 ) 
    Mar 31 20:53:25 (none) Stats: wait instruction^I: yes 
    Mar 31 20:53:25 (none) Stats: microsecond timers^I: yes 
    Mar 31 20:53:25 (none) Stats: tlb_entries^I^I: 32 
    Mar 31 20:53:25 (none) Stats: extra interrupt vector^I: yes 
    Mar 31 20:53:25 (none) Stats: hardware watchpoint^I: no 
    Mar 31 20:53:25 (none) Stats: ASEs implemented^I: mips16 
    Mar 31 20:53:25 (none) Stats: VCED exceptions^I^I: not available 
    Mar 31 20:53:25 (none) Stats: VCEI exceptions^I^I: not available 
    Mar 31 20:53:25 (none) Stats: RAC setting^I^I: Unknown 
    Mar 31 20:53:25 (none) Stats: unaligned access^I: 0 
    Mar 31 20:53:25 (none) Stats: rdhwr/brdhwr traps^I: 0 / 0 
    Mar 31 20:53:25 (none) Stats: cycle counter frequency^I: 27046875 
    Mar 31 20:53:25 (none) Stats: ++ Module info ++
    Mar 31 20:53:26 (none) Stats: router 68608 0 - Live 0xc005d000 
    Mar 31 20:53:26 (none) Stats: ubuddy 7808 0 - Live 0xc0017000 
    Mar 31 20:53:26 (none) Stats: pod 15680 2 - Live 0xc003a000 
    Mar 31 20:53:26 (none) Stats: tv_bcm7405 37056 0 - Live 0xc0052000 
    Mar 31 20:53:26 (none) Stats: bcm7405 2986848 65 tv_bcm7405, Live 0xc0426000 
    Mar 31 20:53:26 (none) Stats: tr 4736 2 - Live 0xc002a000 
    Mar 31 20:53:26 (none) Stats: nxp7164 47840 12 - Live 0xc0045000 
    Mar 31 20:53:26 (none) Stats: drx 234640 22 - Live 0xc0080000 
    Mar 31 20:53:26 (none) Stats: ircatch 9344 0 - Live 0xc002f000 
    Mar 31 20:53:26 (none) Stats: frontpanel 2752 1 ircatch, Live 0xc001a000 
    Mar 31 20:53:26 (none) Stats: i2c 9024 2 ubuddy,drx, Live 0xc0026000 
    Mar 31 20:53:26 (none) Stats: softi2c 9088 1 bcm7405, Live 0xc0022000 
    Mar 31 20:53:26 (none) Stats: gpio 10688 5 pod,drx,softi2c, Live 0xc001e000 
    Mar 31 20:53:26 (none) Stats: ++ Device info ++
    Mar 31 20:53:26 (none) Stats: Character devices: 
    Mar 31 20:53:26 (none) Stats:   1 mem 
    Mar 31 20:53:26 (none) Stats:   2 pty 
    Mar 31 20:53:26 (none) Stats:   3 ttyp 
    Mar 31 20:53:26 (none) Stats:   4 ttyS 
    Mar 31 20:53:26 (none) Stats:   5 /dev/tty 
    Mar 31 20:53:26 (none) Stats:   5 /dev/console 
    Mar 31 20:53:26 (none) Stats:   5 /dev/ptmx 
    Mar 31 20:53:26 (none) Stats:  10 misc 
    Mar 31 20:53:26 (none) Stats:  21 sg 
    Mar 31 20:53:26 (none) Stats:  30 tvbcmdriver 
    Mar 31 20:53:26 (none) Stats:  33 nexus 
    Mar 31 20:53:26 (none) Stats:  97 ubuddy 
    Mar 31 20:53:26 (none) Stats:  99 i2c 
    Mar 31 20:53:26 (none) Stats: 104 router 
    Mar 31 20:53:26 (none) Stats: 108 ppp 
    Mar 31 20:53:26 (none) Stats: 111 pod 
    Mar 31 20:53:26 (none) Stats: 112 drx 
    Mar 31 20:53:26 (none) Stats: 114 tr 
    Mar 31 20:53:26 (none) Stats: 121 saa7164 
    Mar 31 20:53:26 (none) Stats: 127 ircatch 
    Mar 31 20:53:26 (none) Stats: 128 ptm 
    Mar 31 20:53:26 (none) Stats: 136 pts 
    Mar 31 20:53:26 (none) Stats: 180 usb 
    Mar 31 20:53:26 (none) Stats: 189 usb_device 
    Mar 31 20:53:26 (none) Stats: 243 gioctl 
    Mar 31 20:53:26 (none) Stats: 246 gpio 
    Mar 31 20:53:26 (none) Stats: 247 frontpanel 
    Mar 31 20:53:26 (none) Stats:  
    Mar 31 20:53:26 (none) Stats: Block devices: 
    Mar 31 20:53:26 (none) Stats:   1 ramdisk 
    Mar 31 20:53:26 (none) Stats:   8 sd 
    Mar 31 20:53:26 (none) Stats:  65 sd 
    Mar 31 20:53:26 (none) Stats:  66 sd 
    Mar 31 20:53:26 (none) Stats:  67 sd 
    Mar 31 20:53:26 (none) Stats:  68 sd 
    Mar 31 20:53:26 (none) Stats:  69 sd 
    Mar 31 20:53:26 (none) Stats:  70 sd 
    Mar 31 20:53:26 (none) Stats:  71 sd 
    Mar 31 20:53:26 (none) Stats: 128 sd 
    Mar 31 20:53:26 (none) Stats: 129 sd 
    Mar 31 20:53:26 (none) Stats: 130 sd 
    Mar 31 20:53:26 (none) Stats: 131 sd 
    Mar 31 20:53:26 (none) Stats: 132 sd 
    Mar 31 20:53:26 (none) Stats: 133 sd 
    Mar 31 20:53:26 (none) Stats: 134 sd 
    Mar 31 20:53:26 (none) Stats: 135 sd 
    Mar 31 20:53:26 (none) Stats: ++ Network device info ++
    Mar 31 20:53:26 (none) Stats: Inter-|   Receive                                                |  Transmit 
    Mar 31 20:53:26 (none) Stats:  face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed 
    Mar 31 20:53:26 (none) Stats:   eth0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0 
    Mar 31 20:53:26 (none) Stats:     lo:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
    Thank you for posting this. That log confirms the second processor core is completely disabled (i.e. disabled in Linux).

    When the second core is enabled, the log should look something like this:

    Code:
    ++ CPU info ++
    system type^I^I: BCM97xxx Settop Platform 
    build target^I^I: 7413-smp
    
    processor^I^I: 0 
    cpu model^I^I: BMIPS4380 V4.4  FPU V0.1 
    cpu MHz^I^I^I: 402.43 
    BogoMIPS^I^I: 402.43
    wait instruction^I: yes 
    microsecond timers^I: yes 
    tlb_entries^I^I: 32 
    extra interrupt vector^I: yes 
    hardware watchpoint^I: no 
    ASEs implemented^I: mips16 
    VCED exceptions^I^I: not available 
    VCEI exceptions^I^I: not available 
    RAC setting^I^I: Unknown 
    unaligned access^I: 0 
    rdhwr/brdhwr traps^I: 0 / 0 
    cycle counter frequency^I: 27046875
    
    processor^I^I: 1 
    cpu model^I^I: BMIPS4380 V4.4  FPU V0.1 
    cpu MHz^I^I^I: 402.43 
    BogoMIPS^I^I: 402.43
    wait instruction^I: yes 
    microsecond timers^I: yes 
    tlb_entries^I^I: 32 
    extra interrupt vector^I: yes 
    hardware watchpoint^I: no 
    ASEs implemented^I: mips16 
    VCED exceptions^I^I: not available 
    VCEI exceptions^I^I: not available 
    RAC setting^I^I: Unknown 
    unaligned access^I: 0 
    rdhwr/brdhwr traps^I: 0 / 0 
    cycle counter frequency^I: 27046875
    That's what the log looks like for other Broadcom-based DVRs when the second core is enabled.

  13. #73
    Join Date
    Jul 2005
    Posts
    504
    Is the box with the "disabled core" logs running the latest OS?

  14. #74
    Join Date
    Aug 2007
    Posts
    7
    The core was disabled in the 14.0b software.

    TiVo improved stability and performance in the new 14.0c software. Could someone post or check a serial log from that version, so we can see whether the second core was enabled?

  15. #75
    Join Date
    Aug 2004
    Posts
    4,075
    Quote Originally Posted by bkdtv View Post
    TiVo improved stability and performance in the new 14.0c software. Could someone post or check a serial log from that version, so we can see whether the second core was enabled?
    No change. Still single core.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •