Jump to content


Photo

Pandora Bios


  • Please log in to reply
64 replies to this topic

#31 Laurent

Laurent

    Mega GP Mania

  • GP32 Hardcore
  • PipPipPipPipPipPip
  • 1036 posts
  • Location:France

Posted 19 May 2008 - 06:20 AM

QUOTE(Exophase @ May 19 2008, 12:29 AM) View Post
I think you're missing my point. If the L2 cache is write-through like the L1 cache then the framebuffer contents will end up in main RAM shortly after it's written to, or at least in theory no "longer" than it would if it were written out to the write buffer (since that's what should be happening). If you don't need to drain the write buffer then you shouldn't need to flush the cache.

As usual I was not clear enough smile.gif

You are right, but:

1. if the L2 cache is configured as write-through what does it bring you to have FB cached? I consider that FB operations are like GPU's, you mostly do writes (and if you do reads then writes, you have to flush) so if the caches are WT there's no gain (unless having the accesses cached brings some other benefit such as better write merging, but I could not find that in C-A8 TRM)
2. if an area of memory where you mostly do writes is configured as cacheable and write allocate is enabled, you lose performance because the first write to each new cache line has to wait for line fill to complete (+ the cache flush once you're done)
3. you don't know how the L2 cache is configured, WT or WB.

Anyway that's a moot point, Squidge told the obvious thing: this only concerns the boot process, Linux will map the FB its own way tongue.gif

#32 jake37

jake37

    Member

  • Member
  • PipPip
  • 18 posts
  • Location:Bielefeld, Germany
  • Interests:GP2X F200 user since about a year. Strong open source advocate and exclusive open source user. Kernel programming knowledge. Web application programming, database programming, hardware interfacing. Some degree of knowledge in electronic circuit design for microcontroller applications. Fell in love with pandora at first sight.

Posted 19 May 2008 - 06:45 AM

QUOTE(Firefox @ May 18 2008, 04:14 PM) View Post

QUOTE(Pleng @ May 18 2008, 01:08 PM) View Post

QUOTE(Squidge @ May 18 2008, 10:47 AM) View Post

Boot order: NAND, SD

Wouldn't it make more sense to set the SD card as the default boot device. I doubt anybody is going to 'accidently' make themselves an SD boot disk, but if somebody DOES download a bootable distro/os then it would be a bit (just a tiny bit) more user friendly for the instructions to say 'just copy to sd, insert and go', than 'copy to sd, eneter your early boot menu, change boot order, insert card, reset and go'

Could be a double-edged sword, that one.

The Atari ST did things that way, and you had to "infect" all of your disks with a friendly antivirus in order to tell when they became infected by a real virus. Plus the Pandora has flash which could be infected, whereas the ST only had ROM...


I agree, the boot order should default to NAND.

But there's still a strong point for simplicity in booting from an SD card, so I would like to see a "hot key" or shortcut in the Pandora's BIOS to quickly boot from either of the SD card slots. Many PC BIOSes have added this in the past few years for a good reason.

#33 _VWV_

_VWV_

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 324 posts
  • Location:Russia
  • Interests:Molecular biology, computers.

Posted 19 May 2008 - 07:56 AM

QUOTE(Squidge @ May 18 2008, 08:04 PM) View Post

USB is a possibility, but that would need a lot of time, code and and space. I doubt it'll happen for the first public batch. You could always boot from a small sd card which could transfer control to USB.
Wifi would be in the same league as USB. It would take time, code, and space. The BIOS can't really affect Linux (apart from passing parameters on the command line), so stuff like Wifi on/off button combination would either be designed in hardware (so it works anywhere) or designed in software (Kernel level).

An option to boot from USB or wi-fi is not that important, but may be helpful in some cases. I might have missed something, but have you mentioned the bios upgrade procedure? If some day another bios image with those features (like usb booting) is released, I would like to be able to install it in a secure way. It was announced that the pandora2ut4.png is going to be unbricable. How this feature is implemented in your bios?
Thanx.

#34 Laurent

Laurent

    Mega GP Mania

  • GP32 Hardcore
  • PipPipPipPipPipPip
  • 1036 posts
  • Location:France

Posted 19 May 2008 - 08:21 AM

QUOTE(_VWV_ @ May 19 2008, 09:56 AM) View Post
It was announced that the pandora2ut4.png is going to be unbricable. How this feature is implemented in your bios?

OMAP3530 comes with a factory ROM that loads the BIOS. It looks like it is what makes it unbrickable.

#35 Squidge

Squidge

    Mega GP Mania

  • X-treme Team
  • 8498 posts
  • Gender:Male
  • Location:UK

Posted 19 May 2008 - 09:53 AM

QUOTE
I would like to see a "hot key" or shortcut in the Pandora's BIOS to quickly boot from either of the SD card slots


At the moment you would press Menu whilst switching on, and then immediately press 'B' to select the first option 'Boot kernel/executable from SD Card'. Is that quick enough? If you need to do it several times, you could temporarily (or permanently) change the boot search order.

QUOTE(_VWV_ @ May 19 2008, 08:56 AM) View Post

I might have missed something, but have you mentioned the bios upgrade procedure? If some day another bios image with those features (like usb booting) is released, I would like to be able to install it in a secure way. It was announced that the pandora2ut4.png is going to be unbricable. How this feature is implemented in your bios?


The same way as the System restore feature works - You would place the update onto an SD card, and power on the pandora2ut4.png whilst holding down a certain key combination. This causes the the OMAP to run non-modifiable code contained within itself to load a binary from the SD card and execute it, which will update the BIOS, Kernel and/or File system. If the SD socket doesn't work, then you can also update via serial or USB.

To prevent corruption of NAND, both the binary loaded by the non-modifiable code in the OMAP, and the updated bios code are signed and checksumed.



#36 jake37

jake37

    Member

  • Member
  • PipPip
  • 18 posts
  • Location:Bielefeld, Germany
  • Interests:GP2X F200 user since about a year. Strong open source advocate and exclusive open source user. Kernel programming knowledge. Web application programming, database programming, hardware interfacing. Some degree of knowledge in electronic circuit design for microcontroller applications. Fell in love with pandora at first sight.

Posted 19 May 2008 - 10:14 AM

QUOTE(Squidge @ May 19 2008, 11:53 AM) View Post

At the moment you would press Menu whilst switching on, and then immediately press 'B' to select the first option 'Boot kernel/executable from SD Card'. Is that quick enough? If you need to do it several times, you could temporarily (or permanently) change the boot search order.


Definitely quick enough!

This should make instructions for booting an alternate distro from SD simple enough to be understandable by complete newbies. (BTW: I'm afraid I'm not a newbie myself at all, but I haven't found out what to do to change my profile to reflect that...)

As for the graphics on booting: I would prefer all IO/CPU bandwidth available to go into booting, not into showing off... A cool enough static image or simple loop animation would do.

#37 ledow

ledow

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 392 posts
  • Gender:Male
  • Location:UK

Posted 19 May 2008 - 10:14 AM

Bios Options I'd like to see, in order of importance.

Complete control over boot order - devices, order.
Boot splashscreen on/off
Control of any boot time sounds (e.g. "Mute on Boot")
Self-test (e.g. buttons, screen etc.) like the GP2X test mode
Boot passwords (how would you remove it if you set it accidentally?)
Serial console for boot options

#38 netbsd

netbsd

    Member

  • Member
  • PipPip
  • 28 posts

Posted 19 May 2008 - 11:34 AM

QUOTE(Laurent @ May 19 2008, 08:21 AM) View Post

QUOTE(_VWV_ @ May 19 2008, 09:56 AM) View Post
It was announced that the pandora2ut4.png is going to be unbricable. How this feature is implemented in your bios?

OMAP3530 comes with a factory ROM that loads the BIOS. It looks like it is what makes it unbrickable.

The boot sequence is
1. ROM loads X-loader
2. X-loader loads U-Boot
3. U-Boot loads Linux kernel

One might want/need to override what gets loaded during each stage, even the first one, to make it truly unbrickable.

The ROM can load the X-loader from UART, USB (using a second computer to download code from), SD or NAND. It can try a certain sequence (for instance SD first, then NAND).

In theory. In practice the device list and the sequence depends on the PCB, i.e. on how a number of pins on the OMAP3530 are configured. UART and USB might be disabled because they cause a 300 ms and 3 (or 3.3) second delay when not used. To enable them might require cutting traces, wiring pins, closing or opening jumpers, pressing certain keys before power-on to allow peripheral boot, etc.

I asked before, but details have not been forthcoming yet.

Edited by netbsd, 19 May 2008 - 11:56 AM.


#39 _VWV_

_VWV_

    GP Mania

  • GP32 Hardcore
  • PipPipPipPipPip
  • 324 posts
  • Location:Russia
  • Interests:Molecular biology, computers.

Posted 19 May 2008 - 11:42 AM

Thanks guys, I've got the point.. I was a bit wrong.

#40 prak

prak

    Member

  • Member
  • PipPip
  • 7 posts

Posted 19 May 2008 - 12:12 PM

As i understand, things like PXE are U-Boot job, is that correct?


#41 Squidge

Squidge

    Mega GP Mania

  • X-treme Team
  • 8498 posts
  • Gender:Male
  • Location:UK

Posted 19 May 2008 - 12:20 PM

QUOTE(netbsd @ May 19 2008, 12:34 PM) View Post

The boot sequence is
1. ROM loads X-loader
2. X-loader loads U-Boot
3. U-Boot loads Linux kernel


Correct, apart from the fact that Pandora doesn't have U-Boot smile.gif

QUOTE(netbsd @ May 19 2008, 12:34 PM) View Post

One might want/need to override what gets loaded during each stage, even the first one, to make it truly unbrickable.


There is a button combination to enable 'peripheral boot', else it's disabled, and so it defaults to NAND.

#42 fusion_power

fusion_power

    Mega GP Mania

  • GP32 Hardcore
  • PipPipPipPipPipPip
  • 2998 posts
  • Location:germany
  • Interests:GP2X ;)

Posted 19 May 2008 - 02:48 PM

QUOTE(PlopperZ @ May 19 2008, 04:07 AM) View Post

A neat boot animation would be the Pandora logo in 8bit and slowly changing to modern 3D

Good Idea. This could also work as an Loading Status Indicator. smile.gif Starting with a monochrome Graphic like in the early days of Videogames, going over 4 colour Graphic to 8-Bit, 16 Bit maybe and at the End cool (and moving) 3D when the loading is finished. It always shows the same Logo and/or text to indicate the "Timetravel" over the years in Videogame History. I'm sure this can be done with a minimum of filesize and System ressources, I know cool Demos under 100kb from the Demo Scene with much more complicated Effects.


#43 skab

skab

    GP32 User

  • Member
  • PipPipPip
  • 54 posts

Posted 19 May 2008 - 04:40 PM

QUOTE(fusion_power @ May 19 2008, 02:48 PM) View Post

QUOTE(PlopperZ @ May 19 2008, 04:07 AM) View Post

A neat boot animation would be the Pandora logo in 8bit and slowly changing to modern 3D

Good Idea. This could also work as an Loading Status Indicator. smile.gif Starting with a monochrome Graphic like in the early days of Videogames, going over 4 colour Graphic to 8-Bit, 16 Bit maybe and at the End cool (and moving) 3D when the loading is finished. It always shows the same Logo and/or text to indicate the "Timetravel" over the years in Videogame History. I'm sure this can be done with a minimum of filesize and System ressources, I know cool Demos under 100kb from the Demo Scene with much more complicated Effects.

Uh well... blink.gif

I'd say save that for later or as an optional addition. Keep the booting procedure clean and simple. A nice, classy 2D logo and a progress bar would be fine.

But then I'm a Mac guy. We like things fast, easy and classy. rolleyes.gif laugh.gif

In case you guys don't know how Macs are doing that boot options thing:

You can press C to boot from CD/DVD, Alt for a boot menu etc. Could be easily adapted, like "1" for "boot from SD1", "U" for boot from USB etc. Much more intuitive than a non-descriptive button, or those totally random keys like classic PC BIOS keys like F1, F8 or DEL.

Once the OS starts booting on a Mac you can hold Apple-S for single user mode or Apple-V for verbose mode (switch off graphical booting and see the boot console instead). Again easy to remember and also easy to implement.

Shortcuts like that, 1 for SD-Boot, U for USB boot, M for BIOS menu, V for switch to verbose-boot would be quite fast to implement and also very fast and easy to use.

Edited by skab, 19 May 2008 - 04:41 PM.


#44 Squidge

Squidge

    Mega GP Mania

  • X-treme Team
  • 8498 posts
  • Gender:Male
  • Location:UK

Posted 19 May 2008 - 04:58 PM

QUOTE(skab @ May 19 2008, 05:40 PM) View Post

1 for SD-Boot, U for USB boot, M for BIOS menu, V for switch to verbose-boot would be quite fast to implement and also very fast and easy to use.


Actually, keys like 1, U, M and V are much more complicated to implement than keys such as Start, Select, Menu and the Action and shoulder buttons. The later are connected directly to an I/O, whereas the keyboard keys are connected as a matrix (row+column), so you have to fiddle with each row and scan every column to detect pressed keys, and the processor isn't connected to the key matrix, so you have to talk I2C to another chip to mess with the lines...


#45 Series-8

Series-8

    GP32 Hardcore

  • GP32 Hardcore
  • PipPipPipPip
  • 294 posts

Posted 19 May 2008 - 07:09 PM

Hardware Test.

Internal CPU,
FPU + 3D Accelerator HW
Onboard RAM
(Boot) Flash NAND CRC Test
Peripheral Test
(USB, Serial, Audio, Video, Keypads + Joysticks) -- LCD Dead Pixel finder...
Media Reader (SD cards)
Battery Age, State evaluation
Touch Screen calibration/ testing


For the Boot,

Someone should start a 16KB type competition for a flashy yet efficiently stored/loading 3D spinning&mutating logo type demo.

(Err the Pandora has an official Logo right?)