oe-alliance / ofgwrite

ofgwrite from Betacentauri: Based upon: mtd-utils-native-1.5.1
GNU General Public License v2.0
7 stars 16 forks source link

Ofgwrite fails to create bootpartion on SD card #18

Open mihaip1948 opened 1 year ago

mihaip1948 commented 1 year ago

Tested on OpenATV 7.3 under Dreambox ONE. I've create a SD card OpenATV 7.3 using Ofgwrite ... rootfs partition was created OK ! but Boot partition event reported OK ! is bad and tge SD card does not boot !

betacentauri commented 1 year ago

What did you exactly do? Which command did you execute? Please attach ofgwrite log. How is the SD card formatted?

As I have no Dreambox I cannot test.

mihaip1948 commented 1 year ago

Welcome to openATV for dreamone openatv 7.3 dreamone

dreamone login: root Password: Last login: Tue May 16 05:11:59 CEST 2023 on pts/0 root@dreamone:~# ofgwrite -kmmcblk1p1 -rmmcblk1p2 /media/hdd/dreamone mkdir: can't create directory '/newroot': File exists

ofgwrite Utility v4.6.5 Author: Betacentauri Based upon: mtd-utils-native-1.5.1 and busybox 1.24.1 Use at your own risk! Make always a backup before use! Don't use it if you use multiple ubi volumes in ubi layer!

Flashing kernel with arg mmcblk1p1 Flashing rootfs with arg mmcblk1p2 Searching image files in /media/hdd/dreamone resolved to /media/hdd/dreamone Found kernel file: /media/hdd/dreamone/kernel.bin Found rootfs file: /media/hdd/dreamone/rootfs.tar.bz2 Found EXT4 rootfs Found mounted /newroot Found mounted /newroot Found mountpoint for rootfs file: /media/hdd

Found /proc/mtd entries: Device: Size: Erasesize: Name: Image: Using kernel mtd device: Using rootfs mtd device: Read /proc/cmdline Kexec mode is: Current rootfs is: /dev/mmcblk0p7 Current kernel is: Current root sub dir is:

Execute: fdisk -l Found valid GPT with protective MBR; using GPT

No matching partition names are found. Use current kernel and rootfs devices Using /dev/mmcblk1p2 as rootfs device Using /dev/mmcblk1p1 as kernel device Flashing currently not running image

FBIO_SET_MANUAL_BLIT: Operation not permitted Syncing filesystem Mount rootfs Mount to /oldrootremount/ successful Creating directory recursively Flash rootfs unpack Delete rootfs: rm -r -f /oldroot remount/ rm: can't remove '/oldroot_remount': Device or resource busy can't remove '/oldroot_remount': Device or resource busy Untar: tar xf /media/hdd/dreamone/rootfs.tar.bz2 Flashing kernel ... Successfully flashed kernel! Successfully flashed rootfs! Rebooting in 3 seconds... FBIO_SET_MANUAL_BLIT: Operation not permitted root@dreamone:~ #

mihaip1948 commented 1 year ago

The SD card was an old one used by Gemnini SD card image for Dream ONE !

The boot partition isn't understood by OpenATV

https://i.ibb.co/jRkGb6Y/1-0-19-283-D-3-FB-1-C00000-0-0-0-20230516062059.jpg

mihaip1948 commented 1 year ago

I "solved" the problem ... leaving Boot partition "as is" from Gemini and creating only the rootfs partition. But the issue remains !!!

You can read it on my Forum translating from romanian !

https://www.sat-support.tv/forum/viewtopic.php?p=208748#p208748

mihaip1948 commented 1 year ago

You can test this on any other STB ! Dreambox ONE is not relevant ! You must download Dream ONE OpenATV 7.3 from here 👍

http://images.mynonpublic.com/openatv/7.3/index.php?open=dreamone

it contains the Kernel and the rootfs you need ! then let Enigma2 to mount your SD card and try to examine the partitions !

betacentauri commented 1 year ago

Maybe dream works different than other boxes. Is the boot partition from Gemini really FAT32 formatted? Can you mount it? If yes, which files are present?

Non Dreamboxes use a "raw" boot partition without filesystem. So the kernel will be written just into the device. Maybe this is the difference. (By the way: ofgwrite was never developed for dreamboxes! Doesn't say it should not work there, but only to tell you, that it was never tested by me)

mihaip1948 commented 1 year ago

No ! I don't think is different ! The boot partition should mountin Enigma2 because is an ordinary FAT16 GPT  one !  You-reright ... does not mount in Windows ! I can show how it looksin the case of Gemini-42-SD-card-image !

Pe duminică, 21 mai 2023 la 12:42:25 EEST, Betacentauri ***@***.***> a scris:  

Maybe dream works different than other boxes. Is the boot partition from Gemini really FAT32 formatted? Can you mount it? If yes, which files are present?

Non Dreamboxes use a "raw" boot partition without filesystem. So the kernel will be written just into the device. Maybe this is the difference. (By the way: ofgwrite was never developed for dreamboxes! Doesn't say it should not work there, but only to tell you, that it was never tested by me)

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

betacentauri commented 1 year ago

And if you use gemini kernel file and flash that with ofgwrite. Does that work?

Sorry, I need to know how gemini creates the kernel partition and how it fill it. Then I can maybe help.

mihaip1948 commented 1 year ago

When I try to use the complete flshhing with "ofgwrite" as : ofgwrite -kmmcblk1p1 -rmmcblk1p2 /media/hdd/dreamone

I have on a inseted USB stick the content of Open ATV installation files  as :

The execution ends with "succes" but the boot partition type is "undefined"instead of FAT16 GPT ... and the SD card does not boot ! Can't boot becausethe bootloader assumes at FAT and mounted !!! Pe duminică, 21 mai 2023 la 13:26:57 EEST, Betacentauri @.***> a scris:

And if you use gemini kernel file and flash that with ofgwrite. Does that work?

Sorry, I need to know how gemini creates the kernel partition and how it fill it. Then I can maybe help.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

betacentauri commented 1 year ago

Please try to mount the fat16 boot partition (the one that works) in the dream box: mkdir /tmp/b mount /dev/mmcblk1p1 /tmp/b ls -la /tmp/b What is the output?

mihaip1948 commented 1 year ago

Welcome to openATV for dreamoneopenatv 7.3 dreamone dreamone login: @.:~# cd @.:/# mkdir @.:/# mount /dev/mmcblk1p1 @.:/# ls -la /tmp/bdrwxrwxrwx    3 root     root         16384 Jan  1  1970 .drwxrwxrwt    3 root     root           120 May 21 13:50 ..drwxrwxrwx    2 root     root           512 May 14 10:21 System Volume Informati                               on-rwxrwxrwx    1 root     root           795 Mar  5 23:31 autoexec.img-rwxrwxrwx    1 root     root       4147338 Mar  5 23:44 gemini.bmp-rwxrwxrwx    1 root     root      10774528 Mar  5 23:44 @.***:/#

Pe duminică, 21 mai 2023 la 14:35:28 EEST, Betacentauri ***@***.***> a scris:  

Please try to mount the fat16 boot partition (the one that works) in the dream box: mkdir /tmp/b mount /dev/mmcblk1p1 /tmp/b ls -la /tmp/b What is the output?

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

betacentauri commented 1 year ago

Ok, so a partition with filesystem which non dreamboxes don't have. It includes a autoexec.img and a gemini.bmp. And something something with 10MB size. The text formatting is very bad and some parts are missing. See here: https://github.com/oe-alliance/ofgwrite/issues/18 Can you post it via browser and not via email?

mihaip1948 commented 1 year ago

OK ! first ... the content of autoexec.img setenv outputmode 1080p50hzsetenv logo_width 1920setenv logo_height 1080setenv logo_bpp 16setenv logo_color_format 16fatload mmc 0:1 ${loadaddr} gemini.bmpsetenv fb_width ${logo_width}setenv fb_height ${logo_height}setenv display_bpp ${logo_bpp}setenv display_color_index ${logo_color_format}setenv display_color_fg 0xffffffffsetenv display_color_bg 0setenv display_layer osd0osd openosd clearbmp scalebmp display ${loadaddr}vout output ${outputmode}setenv bootargs ${initargs} logo=${display_layer},loaded,0x${initrd_high} vout=${outputmode},enable hdmimode=${hdmimode} fb_width=${fb_width} fb_height=${fb_height}setenv bootcmd "fatload mmc 0:1 ${loadaddr} kernel.img; bootm;" this is executed after booloader mounts the boot partition !

You have the same as text in attachement  !!!

Pe duminică, 21 mai 2023 la 15:05:22 EEST, Betacentauri ***@***.***> a scris:  

Ok, so a partition with filesystem which non dreamboxes don't have. It includes a autoexec.img and a gemini.bmp. And something something with 10MB size. The text formatting is very bad and some parts are missing. See here:

18

Can you post it via browser and not via email?

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

Welcome to openATV for dreamone openatv 7.3 dreamone

dreamone login: root Password: @.:~# cd / @.:/# mkdir /tmp/b @.:/# mount /dev/mmcblk1p1 /tmp/b @.:/# ls -la /tmp/b drwxrwxrwx 3 root root 16384 Jan 1 1970 . drwxrwxrwt 3 root root 120 May 21 14:20 .. drwxrwxrwx 2 root root 512 May 14 10:21 System Volume Information -rwxrwxrwx 1 root root 795 Mar 5 23:31 autoexec.img -rwxrwxrwx 1 root root 4147338 Mar 5 23:44 gemini.bmp -rwxrwxrwx 1 root root 10774528 Mar 5 23:44 kernel.img @.***:/#

mihaip1948 commented 1 year ago

OK ! I'm on the browser now !!!

mihaip1948 commented 1 year ago

Autoexec.img has in front some binary code ! then set the environments variables , displays some image , witch can be changed ! and loads the kernel and boot it ! Kernel is just the binary code ... we have it ! I think is enough to expect SD card to be formatted as :

You must only copy into the boot partition the sample autoexec.img , a bootlogo , and the Kernel as provided ! then unpack the rootfs into dedicated partition ! Eventually the user can supply his own bootlogo !! Possible autoexec.img can be edited and eliminate the display of a bootlogo !

mihaip1948 commented 1 year ago

Hi Betacentauri ! Can you add at the archive known types : .tar.xz ? this is the extension for all DreamOS like images !

betacentauri commented 1 year ago

Can you add at the archive known types : .tar.xz ?

Please create new issue for it. It's possible, but not so easy as you might think and I have at the moment only very limited time for this. That's also why this issue isn't fixed yet.

Can you attach autoexeg.img here? Does dreambox two use the same one? I don't really want to deliver bootlogo and several files with ofgwrite. Can you test whether it also works without bootlogo?

mihaip1948 commented 1 year ago

This is the only public autoexec.img ! it comes with the SD card images released by Gemini Team.

Pe miercuri, 24 mai 2023 la 19:02:33 EEST, Betacentauri ***@***.***> a scris:  

Please create new issue for it. It's possible, but not so easy as you might think and I have at the moment only very limited time for this. That's also why this issue isn't fixed yet.

Can you attach autoexeg.img here? Does dreambox two use the same one? I don't really want to deliver bootlogo and several files with ofgwrite. Can you test whether it also works without bootlogo?

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

mihaip1948 commented 1 year ago

Gemini is a development of DreamOS made by Dreambox !All Dream ONE and TWO are based on the same Kernel , theone released by Dreambox and kept secret at sources level !Some images are DreamOS OE 2.6 alike (Gemini ) othersOpenATV and PurE2 are trying to break the secrets !OpenATV is publishing the Kernel along with his rootfs !a good idea ! People are expecting a new Kernel from Dreambox !one to fit the new developments ... combo tuners an Dream Seven ! Pe miercuri, 24 mai 2023 la 19:02:33 EEST, Betacentauri @.***> a scris:

Please create new issue for it. It's possible, but not so easy as you might think and I have at the moment only very limited time for this. That's also why this issue isn't fixed yet.

Can you attach autoexeg.img here? Does dreambox two use the same one? I don't really want to deliver bootlogo and several files with ofgwrite. Can you test whether it also works without bootlogo?

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>