# Can an SVR-2000 boot from a CD-Rom?



## RealSMoo (Jan 25, 2006)

I don't mean take the hard drive out and use a PC cdrom, I mean I want this box to boot from a cdrom by itself.

Can it be done?

In case you need it, here is some information from the serial bash shell:

cat /proc/cpuinfo
processor	: 0
cpu : IBM 403GCX
clock : 54MHz
revision	: 20.1
bogomips	: 53.86
machine : Teleworld Customer Device

bash-2.02# cat /etc/fstab
# Copyright (c) 2001 TiVo Inc.
/dev/hda4 / ext2 ro 1 1
/dev/hda9 /var ext2 rw 1 2
/dev/hda8 swap swap defaults 0 0

bash-2.02# cat /proc/meminfo 
total: used: free: shared: buffers: cached:
Mem: 14274560 14061568 212992 68124672 933888 4984832
Swap: 314564608 0 314564608
MemTotal: 13940 kB
MemFree: 208 kB
MemShared: 66528 kB
Buffers: 912 kB
Cached: 4868 kB
SwapTotal: 307192 kB
SwapFree: 307192 kB

bash-2.02# lspci
bash: lspci: command not found

bash-2.02# cat /proc/devices
Character devices:
1 mem
2 pty
3 ttyp
4 ttyp
5 cua
78 mpegdecoder
90 fpga
97 fan
99 i2c
127 mixaud

Block devices:
1 ramdisk
3 ide0

bash-2.02# cat version 
Linux version 2.1.24-TiVo-2.5 (gcc version 2.8.1) #6 Wed Oct 8 12:06:23 MDT 2003

bash-2.02# cat modules 
mixaud 5872 1
pxmpegdecode 65356 0 (unused)
therm 1228 0 (unused)
fan 1312 0
fpga7114 146668 5
i2c 10432 0 [pxmpegdecode therm fpga7114]
bash-2.02# ls
1 113 124 57 fpga net
100 114 125 67 interrupts self
102 115 126 68 ioports slabinfo
103 116 127 69 kcore stat
104 117 128 96 kmsg swaps
105 118 129 99 ksyms sys
106 119 180 cmdline loadavg therm
107 120 2 cpuinfo locks uptime
110 121 3 devices meminfo version
111 122 47 dma modules
112  123 55 filesystems mounts

bash-2.02# cat net
cat: net: Invalid argument

bash-2.02# cat ioports 
f4100000-f4100007 : serial(auto)
ffb40000-ffb40007 : serial(auto)
ffc00000-ffc00007 : serial(auto)

bash-2.02# dmesg
bash: dmesg: command not found

bash-2.02# cat filesystems 
ext2
nodev	proc
romfs

bash-2.02# cat stat
cpu 5918 0 4762 590405
disk 4930 0 0 0
disk_rio 2265 0 0 0
disk_wio 2665 0 0 0
disk_rblk 4536 0 0 0
disk_wblk 5330 0 0 0
page 12758 3136
swap 1 0
intr 784851 0 0 0 0 737 84 0 0 0 0 56 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 200044 359643 0 1657 197 40129 0 1 1 1598 0 0 0 0 0 0 0 0 0 0 0 478 0 64392 30061 0 0 0 0 99 0 64383 21290 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ctxt 1027026
btime 1138157483
processes 185

Normal touches 2257
Realtime touches 403
Normal ages 3028
Realtime ages 1717
Normal expires 7
Realtime expires 11
Realtime TLB saving throws 62

bash-2.02# ls
1 113 124 57 fpga net
100 114 125 67 interrupts self
102 115 126 68 ioports slabinfo
103 116 127 69 kcore stat
104 117 128 96 kmsg swaps
105 118 129 99 ksyms sys
106 119 186 cmdline loadavg therm
107 120 2 cpuinfo locks uptime
110 121 3 devices meminfo version
111 122 47 dma modules
112 123 55 filesystems mounts

bash-2.02# cat therm
30C

bash-2.02# cat uptime 
6030.37 5923.41

bash-2.02# cat dma

bash-2.02# pwd
/proc

bash-2.02# cd /bin
bash-2.02#

bash-2.02# ls
asicVersion date getprom mount sleep umount
bash dd grep mv smartctl uname
cat df gzip ntpdate sort vmstat
chat driveid hdparm ping stty
chmod du ln rm swapon
cp expect mkdir rz sync
cpio freeramdisk mkswap sh sz

bash-2.02# ./getprom

bash-2.02# driveid
WD-WMAM9C458891

bash-2.02# hdparm -i /dev/hda

/dev/hda:
Model=WDC WD800JB-00JJC0, FwRev=05.01C05, SerialNo=WD-WMAM9C458891
Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=66
BuffType=0(?), BuffSize=8192kB, MaxMultSect=16, MultSect=off
DblWordIO=no, maxPIO=0(slow), DMA=yes, maxDMA=0(slow)
CurCHS=16383/16/63, CurSects=-66060037, LBA=yes, LBAsects=156301488
tDMA={min:120,rec:120}, DMA modes: mword0 mword1 *mword2 
IORDY=on/off, tPIO={min:120,w/IORDY:120}, PIO modes: mode3 mode4

bash-2.02# cd /usr/sbin
bash: cd: /usr/sbin: No such file or directory
bash-2.02# cd /usr
bash: cd: /usr: No such file or directory
bash-2.02# cd /
bash-2.02# ls
BASH_ON devbin install proc tvbin
CACHECARD_ON	dist kernel prom tvlib
CACHECARD_TEST	etc lib ptvupgrade	var
bin etccombo	lost+found	sbin
dev initrd mnt tmp

bash-2.02# uname -r
2.1.24-TiVo-2.5

bash-2.02# uname -u
uname: invalid option -- u
Try `uname --help' for more information.

bash-2.02# uname -w
uname: invalid option -- w
Try `uname --help' for more information.

bash-2.02# uname --?
uname: unrecognized option `--?'
Try `uname --help' for more information.

bash-2.02# uname --help
Usage: uname [OPTION]...
Print certain system information. With no OPTION, same as -s.

-a, --all print all information
-m, --machine print the machine (hardware) type
-n, --nodename print the machine's network node hostname
-r, --release print the operating system release
-s, --sysname print the operating system name
-p, --processor print the host processor type
-v print the operating system version
--help display this help and exit
--version output version information and exit

bash-2.02# uname -p
unknown

bash-2.02# uname -p
Linux

bash-2.02# uname -s
ppc

bash-2.02# uname -a
Linux (none) 2.1.24-TiVo-2.5 #6 Wed Oct 8 12:06:23 MDT 2003 ppc unknown

bash-2.02# ping 127.0.0.1
PING 127.0.0.1 (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=1.248 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.759 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.751 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=255 time=0.753 ms
64 bytes from 127.0.0.1: icmp_seq=4 ttl=255 time=0.755 ms
64 bytes from 127.0.0.1: icmp_seq=5 ttl=255 time=0.756 ms
64 bytes from 127.0.0.1: icmp_seq=6 ttl=255 time=0.756 ms
64 bytes from 127.0.0.1: icmp_seq=7 ttl=255 time=0.754 ms
64 bytes from 127.0.0.1: icmp_seq=8 ttl=255 time=0.751 ms


----------



## cheer (Nov 13, 2005)

Nope -- far as I know, no way to do that.


----------



## classicsat (Feb 18, 2004)

The question is does the firmware know how to boot from CD-ROM drive?
(you do need something for the CD-ROM disc to go in, to interface with the IDE bus).

The answer would be no, as the system is designed to boot from an HDD only, as there is no reason for a TiVo to boot from a CDROM.

May I ask what is it you want to do?


----------



## RealSMoo (Jan 25, 2006)

I want to boot something like Knoppix to test system performance with changes I'm making to the motherboard...

Does anyone know if there's a way to clone a CD to a hard drive?


----------



## cheer (Nov 13, 2005)

Even if it would boot, you'd have to have a MIPS-version of Knoppix/whatever, with the appropriate stuff/drivers/etc. for Tivo's unique hardware. Not a trivial thing, I would guess.

What do you mean by "clone a CD to a hard drive?"

--chris


----------



## RealSMoo (Jan 25, 2006)

I have a PPC version of the software I'm wanting to use...

By clone a CD to a hard drive, I mean make an exact duplicate of the CD on a hard drive, including boot tables, file system, etc.

I'm thinking that if I can clone the CD to a hard drive, and boot from that hard drive, I can use that to run minimal tests...


----------



## StanSimmons (Jun 10, 2000)

Append "HANDCRAFT=TRUE RUNMYWORLD=FALSE" to the boot parameters. 

This will prevent the TiVo software from starting, allowing you to run your software from the HD.

(Assuming you have done all the other hacks needed to get a bash prompt, etc.)


----------



## RealSMoo (Jan 25, 2006)

Thanks, but that doesn't answer my question.

It would be much better for me to clone a CD to the hard drive and boot from that.


----------



## cheer (Nov 13, 2005)

I don't think so...and again, would your CD be a PPC version of Linux with all the hardware support that the Tivo needs?

But I am not aware of any way to "clone" a CD to an HD in the manner you describe. A CD's partition/filesystem setup is different than a hard drive's.


----------



## StanSimmons (Jun 10, 2000)

This question is really beyond the scope of this particular TiVo forum.

Do a Google search for "deals freebies tivo hacking" for a forum that is a bit more in-depth.

http://www.google.com/search?hl=en&q=deals+freebies+tivo+hacking&btnG=Google+Search

I think you will get the same response of "huh? why?" there too.


----------



## classicsat (Feb 18, 2004)

RealSMoo said:


> I have a PPC version of the software I'm wanting to use...
> 
> By clone a CD to a hard drive, I mean make an exact duplicate of the CD on a hard drive, including boot tables, file system, etc.
> 
> I'm thinking that if I can clone the CD to a hard drive, and boot from that hard drive, I can use that to run minimal tests...


The HDD has to be formatted in the certain wat TiVo drives are.

You have to throw out any concept of a PC, or even a Mac, as a TiVo is far from it.

The only ppc knoppix is built for Apple computers.


----------



## RealSMoo (Jan 25, 2006)

I'm pretty well versed in linux, so I know my way around partitions and filesystems.

As you can see in my original post, I've documented the file systems and partition types and how they correlate to the system itself.

I'm going to keep digging on this, not only for myself, but for others who may one day wonder about this.

I'll post my findings here.


Thanks for everyones posts. They're appreciated.


----------

