Editing Mer/Status/SmartQ5

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
-
{{Mer}}
 
-
 
-
For general SmartQ tips, see [[../SmartQ | tips for SmartQ]].
 
-
 
Notes on SmartQ 5 MID:
Notes on SmartQ 5 MID:
Line 212: Line 208:
This is where qi is placed, maximum 16 blocks size, zero out the remaining 2/1027 blocks
This is where qi is placed, maximum 16 blocks size, zero out the remaining 2/1027 blocks
-
Qi will then (see /qi/src/cpu/s3c6410/start_qi.c) try to locate a SmartQ firmware image (see genimage for format, or same file, struct FirmHead on 32768 blocks before the end, or 16384 blocks before the end, and load u-boot from the firmware image.
+
Qi will then (see /qi/src/cpu/s3c6410/start_qi.c) try to locate a SmartQ firmware image (see genimage for format, or same file, struct FirmHead on 16384 blocks before the end, or 32768 blocks before the end, and load u-boot from the firmware image.
If this fails it will load u-boot from 512+18 blocks before the end, maximum size 512 blocks.
If this fails it will load u-boot from 512+18 blocks before the end, maximum size 512 blocks.
Line 236: Line 232:
<pre>
<pre>
typedef struct _firmware_fileheader {
typedef struct _firmware_fileheader {
-
     uint32_t magic;        // '2\0\09'= 0x32 0x00 0x00 0x39
+
     uint32_t magic;        // '2009'
     uint32_t check_sum; // for 8 ~ .fh_size  
     uint32_t check_sum; // for 8 ~ .fh_size  
     uint32_t fh_size;
     uint32_t fh_size;
Line 243: Line 239:
     char vendor[32];      // XXX: uint32_t vendor_string_len; char vendor_string[]  
     char vendor[32];      // XXX: uint32_t vendor_string_len; char vendor_string[]  
     //uint32_t nand_off_end1=16M/512, nand_off_end2=8M/512;  // offset from INAND END(BLOCKS)
     //uint32_t nand_off_end1=16M/512, nand_off_end2=8M/512;  // offset from INAND END(BLOCKS)
-
     uint32_t component_count /* = 5*/;
+
     uint32_t component_count /* = 4*/;
     struct {
     struct {
         struct {
         struct {
-
             uint32_t offset, size; /* nand offset in blocks, sizes and file offset in bytes */
+
             uint32_t offset, size;
         } file, nand;
         } file, nand;
         uint32_t check_sum;
         uint32_t check_sum;
Line 253: Line 249:
</pre>
</pre>
-
Offset in NAND is meant as offset from 16/8mb end offset in blocks (512 byte blocks). If offset is 0, it is not meant to be in the NAND image (qi doesn't make any sense there, nor rootfs, etc)
+
Offset in NAND is meant as offset from 16/8mb end offset in blocks (512 byte blocks)
-
 
+
-
 
+
-
== Hardware support ==
+
-
 
+
-
* Power management
+
-
** Bluetooth
+
-
** USB otg / Host
+
-
** WiFi (on/off, PSM)
+
-
** Backlight control + dimming/turn off
+
-
* SD slot automounting
+
-
* Open source upgrade tool and initramfs
+
-
* Updated u-boot
+
-
* Audio: Headphone / loudspeaker switch
+
-
* TV out
+
-
* Microphone?
+
-
* Hardware buttons support
+
-
* [[/XAA|XAA]]
+

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)

Templates used on this page: