summaryrefslogtreecommitdiff
path: root/docs/wiki/Mozilla-Flame/index.html
blob: fd0e65b19f278c23f917ab2ced82439455d03ee7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">

    <title>postmarketOS</title>

    <meta name="description" content="Aiming for a 10 year life-cycle for smartphones">
    <meta name="keywords" content="postmarketOS">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="robots" content="all">

    <link rel="canonical" href="https://postmarketos.org/wiki/Mozilla-Flame/">

    <link href="/pmosweb/static/css/tachyons.min.css" rel="stylesheet">
    <link href="/pmosweb/static/css/main.css" rel="stylesheet">
  </head>

  <body>
    <div class="mw7 center">
      <div class="cf ph2-ns">
        <a class="title" href="/pmosweb/">
          <h1 class="f2 lh-title">
            <img src="/pmosweb/static/img/recycle.png"></img>
            <span>postmarketOS</span>
          </h1>
        </a>
        <div class="menu">
        <ul>
          <li><a href="/pmosweb/">Home</a></li>
          <li><a href="/pmosweb/wiki/">Wiki</a></li>
          <li><a href="/pmosweb/blog/">Blog</a></li>
        </ul>
        </div>
        
<h1>Mozilla Flame</h1>
<h3>Contributors</h3>
<ul>
<li>kskarthik</li>
<li>MartijnBraam</li>
<li>ata2001</li>
<li>ollieparanoid</li>
<li>dzervas</li>
<li>lawl</li>
<li>yuvadm</li>
</ul>
<h3>What works</h3>
<ul>
<li>Compiling the kernel</li>
<li>Building a base image</li>
<li>Fastboot flash</li>
<li>SD card install</li>
</ul>
<h4>Current Build / Boot Process</h4>
<p>Build and install to SD card:</p>
<pre class="codehilite"><code>$ ./pmbootstrap.py build device-mozilla-flame
$ ./pmbootstrap.py build linux-mozilla-flame --arch=armhf
$ ./pmbootstrap.py install --sdcard /dev/mmcblkX
$ ./pmbootstrap.py flasher export $SOMEDIR</code></pre>


<p>Now we can one-time flash the boot image:</p>
<pre class="codehilite"><code>$ flashboot boot $SOMEDIR/boot.img</code></pre>


<h3>Known Issues</h3>
<h4>Unknown chunk type</h4>
<p><code>mozilla-flame.img</code> cannot be flashed to either the <code>system</code>/<code>userdata</code> partitions due to bootloader limitations (probably because the system image is larger than the max download size and it forces the download into sparse mode, which is handled badly.)</p>
<pre class="codehilite"><code>$ fastboot flash userdata flame/mozilla-flame.img 
target reported max download size of 301989888 bytes
erasing 'userdata'...
OKAY [  1.254s]
sending sparse 'userdata' 1/2 (288781 KB)...
OKAY [ 10.018s]
writing 'userdata' 1/2...
FAILED (remote: Unknown chunk type)
finished. total time: 11.275s</code></pre>


<p>Workaround is to install to SD card.</p>
<h3>Links</h3>
<ul>
<li><a href="https://github.com/mozilla-b2g/codeaurora_kernel_msm/tree/t2m-flame-3.4-kk">Kernel Source</a></li>
<li>Updated and rebased <a href="https://github.com/yuvadm/pmbootstrap/tree/device-mozilla-flame"><code>device-mozilla-flame</code></a> branch</li>
<li><a href="https://gist.github.com/yuvadm/238db856f1a81a572b0cd2a02a51ae8a">UART/serial debug logs</a></li>
<li><a href="https://github.com/postmarketOS/pmbootstrap/wiki/Serial-debugging#mozilla-flame">Serial debugging</a></li>
<li><a href="https://yuv.al/flame/">Mozilla Flame B2G build artifacts mirror</a></li>
</ul>
<h3>Internal Data</h3>
<p>Taken off a clean <code>v18D_nightly_v5.zip</code> B2G base image</p>
<h4>Partitions</h4>
<pre class="codehilite"><code class="language-bash">shell@flame:/ $ df
Filesystem               Size     Used     Free   Blksize
/dev                   451.7M   132.0K   451.6M   4096
/sys/fs/cgroup         451.7M     0.0K   451.7M   4096
/sys/fs/cgroup/memory: Permission denied
/mnt/asec              451.7M     0.0K   451.7M   4096
/mnt/obb               451.7M     0.0K   451.7M   4096
/system                412.5M   283.5M   129.0M   4096
/data                    2.0G    40.4M     2.0G   4096
/cache                  70.8M     4.1M    66.8M   4096
/persist                 4.9M     4.0M   852.0K   4096
/firmware               64.0M    31.7M    32.2M   16384
/storage/sdcard          3.8G     8.0K     3.8G   4096
/mnt/media_rw/sdcard: Permission denied

shell@flame:/ $ cat /proc/partitions                                       
major minor  #blocks  name

 253        0     196608 zram0
 179        0    7634944 mmcblk0
 179        1      65536 mmcblk0p1
 179        2        512 mmcblk0p2
 179        3        128 mmcblk0p3
 179        4         32 mmcblk0p4
 179        5        512 mmcblk0p5
 179        6        500 mmcblk0p6
 179        7      15360 mmcblk0p7
 179        8        500 mmcblk0p8
 179        9       1024 mmcblk0p9
 179       10       1536 mmcblk0p10
 179       11       1536 mmcblk0p11
 179       12     429580 mmcblk0p12
 179       13      32768 mmcblk0p13
 179       14      73728 mmcblk0p14
 179       15      15360 mmcblk0p15
 179       16       1024 mmcblk0p16
 179       17       1536 mmcblk0p17
 179       18          1 mmcblk0p18
 179       19          8 mmcblk0p19
 179       20      10240 mmcblk0p20
 179       21       1024 mmcblk0p21
 179       22       1024 mmcblk0p22
 179       23        256 mmcblk0p23
 179       24         10 mmcblk0p24
 179       25        512 mmcblk0p25
 179       26        500 mmcblk0p26
 179       27        500 mmcblk0p27
 179       28     204800 mmcblk0p28
 179       29    2162688 mmcblk0p29
 179       30    4095983 mmcblk0p30
 179       32        512 mmcblk0rpmb

shell@flame:/ $ ls -la /dev/block/platform/msm_sdcc.1/by-name/                 
lrwxrwxrwx root     root              1969-12-31 19:10 DDR -&gt; /dev/block/mmcblk0p4
lrwxrwxrwx root     root              1969-12-31 19:10 aboot -&gt; /dev/block/mmcblk0p5
lrwxrwxrwx root     root              1969-12-31 19:10 abootbk -&gt; /dev/block/mmcblk0p25
lrwxrwxrwx root     root              1969-12-31 19:10 boot -&gt; /dev/block/mmcblk0p7
lrwxrwxrwx root     root              1969-12-31 19:10 cache -&gt; /dev/block/mmcblk0p14
lrwxrwxrwx root     root              1969-12-31 19:10 custpack -&gt; /dev/block/mmcblk0p28
lrwxrwxrwx root     root              1969-12-31 19:10 fota -&gt; /dev/block/mmcblk0p24
lrwxrwxrwx root     root              1969-12-31 19:10 fsc -&gt; /dev/block/mmcblk0p18
lrwxrwxrwx root     root              1969-12-31 19:10 fsg -&gt; /dev/block/mmcblk0p17
lrwxrwxrwx root     root              1969-12-31 19:10 misc -&gt; /dev/block/mmcblk0p16
lrwxrwxrwx root     root              1969-12-31 19:10 modem -&gt; /dev/block/mmcblk0p1
lrwxrwxrwx root     root              1969-12-31 19:10 modemst1 -&gt; /dev/block/mmcblk0p10
lrwxrwxrwx root     root              1969-12-31 19:10 modemst2 -&gt; /dev/block/mmcblk0p11
lrwxrwxrwx root     root              1969-12-31 19:10 pad -&gt; /dev/block/mmcblk0p9
lrwxrwxrwx root     root              1969-12-31 19:10 persist -&gt; /dev/block/mmcblk0p13
lrwxrwxrwx root     root              1969-12-31 19:10 recovery -&gt; /dev/block/mmcblk0p15
lrwxrwxrwx root     root              1969-12-31 19:10 rpm -&gt; /dev/block/mmcblk0p6
lrwxrwxrwx root     root              1969-12-31 19:10 rpmbk -&gt; /dev/block/mmcblk0p26
lrwxrwxrwx root     root              1969-12-31 19:10 sbl1 -&gt; /dev/block/mmcblk0p2
lrwxrwxrwx root     root              1969-12-31 19:10 sdi -&gt; /dev/block/mmcblk0p3
lrwxrwxrwx root     root              1969-12-31 19:10 secro -&gt; /dev/block/mmcblk0p23
lrwxrwxrwx root     root              1969-12-31 19:10 splash -&gt; /dev/block/mmcblk0p20
lrwxrwxrwx root     root              1969-12-31 19:10 ssd -&gt; /dev/block/mmcblk0p19
lrwxrwxrwx root     root              1969-12-31 19:10 system -&gt; /dev/block/mmcblk0p12
lrwxrwxrwx root     root              1969-12-31 19:10 traceability -&gt; /dev/block/mmcblk0p21
lrwxrwxrwx root     root              1969-12-31 19:10 tuningpara -&gt; /dev/block/mmcblk0p22
lrwxrwxrwx root     root              1969-12-31 19:10 tz -&gt; /dev/block/mmcblk0p8
lrwxrwxrwx root     root              1969-12-31 19:10 tzbk -&gt; /dev/block/mmcblk0p27
lrwxrwxrwx root     root              1969-12-31 19:10 usbmsc -&gt; /dev/block/mmcblk0p30
lrwxrwxrwx root     root              1969-12-31 19:10 userdata -&gt; /dev/block/mmcblk0p29</code></pre>

      </div>
    </div>
  </body>
</html>