blob: 4b9615f4173a1b250754c4a59079007a5f5a8397 [file] [log] [blame]
Eric Park608ce5a2019-08-07 21:27:46 +08001
2
3
4
5<!doctype html>
6<html lang="en" class="no-js">
7 <head>
8
9 <meta charset="utf-8">
10 <meta name="viewport" content="width=device-width,initial-scale=1">
11 <meta http-equiv="x-ua-compatible" content="ie=edge">
12
13
14
15
16 <meta name="lang:clipboard.copy" content="Copy to clipboard">
17
18 <meta name="lang:clipboard.copied" content="Copied to clipboard">
19
20 <meta name="lang:search.language" content="en">
21
22 <meta name="lang:search.pipeline.stopwords" content="True">
23
24 <meta name="lang:search.pipeline.trimmer" content="True">
25
26 <meta name="lang:search.result.none" content="No matching documents">
27
28 <meta name="lang:search.result.one" content="1 matching document">
29
30 <meta name="lang:search.result.other" content="# matching documents">
31
32 <meta name="lang:search.tokenizer" content="[\s\-]+">
33
34 <link rel="shortcut icon" href="../../assets/images/favicon.png">
35 <meta name="generator" content="mkdocs-1.0.4, mkdocs-material-4.4.0">
36
37
38
39 <title>Troubleshooting - Team Bliss</title>
40
41
42
43 <link rel="stylesheet" href="../../assets/stylesheets/application.0284f74d.css">
44
45
46
47
48 <script src="../../assets/javascripts/modernizr.74668098.js"></script>
49
50
51
52 <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
53 <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono&display=fallback">
54 <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
55
56
57 <link rel="stylesheet" href="../../assets/fonts/material-icons.css">
58
59
60
61
62
63
64 </head>
65
66 <body dir="ltr">
67
68 <svg class="md-svg">
69 <defs>
70
71
72 </defs>
73 </svg>
74 <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
75 <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
76 <label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
77
78 <a href="#troubleshooting" tabindex="1" class="md-skip">
79 Skip to content
80 </a>
81
82
83 <header class="md-header" data-md-component="header">
84 <nav class="md-header-nav md-grid">
85 <div class="md-flex">
86 <div class="md-flex__cell md-flex__cell--shrink">
87 <a href="../.." title="Team Bliss" class="md-header-nav__button md-logo">
88
89 <i class="md-icon"></i>
90
91 </a>
92 </div>
93 <div class="md-flex__cell md-flex__cell--shrink">
94 <label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
95 </div>
96 <div class="md-flex__cell md-flex__cell--stretch">
97 <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
98
99 <span class="md-header-nav__topic">
100 Team Bliss
101 </span>
102 <span class="md-header-nav__topic">
103
104 Troubleshooting
105
106 </span>
107
108 </div>
109 </div>
110 <div class="md-flex__cell md-flex__cell--shrink">
111
112 <label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
113
114<div class="md-search" data-md-component="search" role="dialog">
115 <label class="md-search__overlay" for="__search"></label>
116 <div class="md-search__inner" role="search">
117 <form class="md-search__form" name="search">
118 <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
119 <label class="md-icon md-search__icon" for="__search"></label>
120 <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
121 &#xE5CD;
122 </button>
123 </form>
124 <div class="md-search__output">
125 <div class="md-search__scrollwrap" data-md-scrollfix>
126 <div class="md-search-result" data-md-component="result">
127 <div class="md-search-result__meta">
128 Type to start searching
129 </div>
130 <ol class="md-search-result__list"></ol>
131 </div>
132 </div>
133 </div>
134 </div>
135</div>
136
137 </div>
138
139 </div>
140 </nav>
141</header>
142
143 <div class="md-container">
144
145
146
147
148 <main class="md-main">
149 <div class="md-main__inner md-grid" data-md-component="container">
150
151
152 <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
153 <div class="md-sidebar__scrollwrap">
154 <div class="md-sidebar__inner">
155 <nav class="md-nav md-nav--primary" data-md-level="0">
156 <label class="md-nav__title md-nav__title--site" for="__drawer">
157 <a href="../.." title="Team Bliss" class="md-nav__button md-logo">
158
159 <i class="md-icon"></i>
160
161 </a>
162 Team Bliss
163 </label>
164
165 <ul class="md-nav__list" data-md-scrollfix>
166
167
168
169
170
171
172 <li class="md-nav__item">
Eric Park35d8ee32019-08-11 01:34:35 +0800173 <a href="../.." title="Index" class="md-nav__link">
174 Index
Eric Park608ce5a2019-08-07 21:27:46 +0800175 </a>
176 </li>
177
178
179
180
181
182
183
184
185
186 <li class="md-nav__item md-nav__item--active md-nav__item--nested">
187
188 <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2" checked>
189
190 <label class="md-nav__link" for="nav-2">
191 Bliss OS
192 </label>
193 <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
194 <label class="md-nav__title" for="nav-2">
195 Bliss OS
196 </label>
197 <ul class="md-nav__list" data-md-scrollfix>
198
199
200
201
202
203
204
205 <li class="md-nav__item">
206 <a href="../" title="Index" class="md-nav__link">
207 Index
208 </a>
209 </li>
210
211
212
213
214
215
216
217 <li class="md-nav__item">
218 <a href="../extras/" title="Extras" class="md-nav__link">
219 Extras
220 </a>
221 </li>
222
223
224
225
226
227
228
229 <li class="md-nav__item">
230 <a href="../installation-guide/" title="Installation Guide" class="md-nav__link">
231 Installation Guide
232 </a>
233 </li>
234
235
236
237
238
239
240
241
242
243 <li class="md-nav__item md-nav__item--active">
244
245 <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
246
247
248
249
250 <label class="md-nav__link md-nav__link--active" for="__toc">
251 Troubleshooting
252 </label>
253
254 <a href="./" title="Troubleshooting" class="md-nav__link md-nav__link--active">
255 Troubleshooting
256 </a>
257
258
259<nav class="md-nav md-nav--secondary">
260
261
262
263
264
265 <label class="md-nav__title" for="__toc">Table of contents</label>
266 <ul class="md-nav__list" data-md-scrollfix>
267
268 <li class="md-nav__item">
269 <a href="#grub2-kernel-parameters-and-options" title="grub2 kernel parameters and options" class="md-nav__link">
270 grub2 kernel parameters and options
271 </a>
272
273</li>
274
275
276
277
278
279 </ul>
280
281</nav>
282
283 </li>
284
285
286 </ul>
287 </nav>
288 </li>
289
290
291
292
293
294
295
296 <li class="md-nav__item md-nav__item--nested">
297
298 <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
299
300 <label class="md-nav__link" for="nav-3">
301 BlissRoms
302 </label>
303 <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
304 <label class="md-nav__title" for="nav-3">
305 BlissRoms
306 </label>
307 <ul class="md-nav__list" data-md-scrollfix>
308
309
310
311
312
313
314
315 <li class="md-nav__item">
316 <a href="../../BlissRoms/" title="Index" class="md-nav__link">
317 Index
318 </a>
319 </li>
320
321
322
323
324
325
326
327 <li class="md-nav__item">
328 <a href="../../BlissRoms/build-guide/" title="Build Guide" class="md-nav__link">
329 Build Guide
330 </a>
331 </li>
332
333
334
335
336
337
338
339 <li class="md-nav__item">
340 <a href="../../BlissRoms/build-tips/" title="Build Tips" class="md-nav__link">
341 Build Tips
342 </a>
343 </li>
344
345
346 </ul>
347 </nav>
348 </li>
349
350
351
352
353
354
355
356 <li class="md-nav__item md-nav__item--nested">
357
358 <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
359
360 <label class="md-nav__link" for="nav-4">
361 Common
362 </label>
363 <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
364 <label class="md-nav__title" for="nav-4">
365 Common
366 </label>
367 <ul class="md-nav__list" data-md-scrollfix>
368
369
370
371
372
373
374
375 <li class="md-nav__item">
376 <a href="../../common/" title="Index" class="md-nav__link">
377 Index
378 </a>
379 </li>
380
381
382
383
384
385
386
387 <li class="md-nav__item">
388 <a href="../../common/git-started/" title="Git Started" class="md-nav__link">
389 Git Started
390 </a>
391 </li>
392
393
394
395
396
397
398
399 <li class="md-nav__item">
400 <a href="../../common/using-dippy-bird/" title="Using `dippy-bird`" class="md-nav__link">
401 Using `dippy-bird`
402 </a>
403 </li>
404
405
406 </ul>
407 </nav>
408 </li>
409
410
411
412
413
414
415
416 <li class="md-nav__item md-nav__item--nested">
417
418 <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
419
420 <label class="md-nav__link" for="nav-5">
421 Infrastructure
422 </label>
423 <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
424 <label class="md-nav__title" for="nav-5">
425 Infrastructure
426 </label>
427 <ul class="md-nav__list" data-md-scrollfix>
428
429
430
431
432
433
434
435 <li class="md-nav__item">
436 <a href="../../infrastructure/" title="Index" class="md-nav__link">
437 Index
438 </a>
439 </li>
440
441
442 </ul>
443 </nav>
444 </li>
445
446
447 </ul>
448</nav>
449 </div>
450 </div>
451 </div>
452
453
454 <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
455 <div class="md-sidebar__scrollwrap">
456 <div class="md-sidebar__inner">
457
458<nav class="md-nav md-nav--secondary">
459
460
461
462
463
464 <label class="md-nav__title" for="__toc">Table of contents</label>
465 <ul class="md-nav__list" data-md-scrollfix>
466
467 <li class="md-nav__item">
468 <a href="#grub2-kernel-parameters-and-options" title="grub2 kernel parameters and options" class="md-nav__link">
469 grub2 kernel parameters and options
470 </a>
471
472</li>
473
474
475
476
477
478 </ul>
479
480</nav>
481 </div>
482 </div>
483 </div>
484
485
486 <div class="md-content">
487 <article class="md-content__inner md-typeset">
488
489
490
491 <h1 id="troubleshooting">Troubleshooting</h1>
492<h2 id="grub2-kernel-parameters-and-options"><code>grub2</code> kernel parameters and options</h2>
493<p><strong>You will want to pay attention here!</strong> With Bliss OS on the PC, we tend to use quite a few command line options to get things working right. We've gathered a few of them here to explain them a little bit.</p>
494<p><a href="https://www.kernel.org/doc/Documentation/admin-guide/kernel-parameters.txt">A full list of available kernel parameters can be found here.</a></p>
495<p>Brief options overview:</p>
496<ul>
497<li><code>parameter</code>: Description</li>
498<li><code>root=</code>: Root filesystem.</li>
499<li><code>rootflags=</code>: Root filesystem mount options.</li>
500<li><code>initrd=</code>: Specify the location of the initial ramdisk.</li>
501<li><code>init=</code>: Run specified binary instead of <code>/sbin/init</code> (symlinked to <code>systemd</code> in Arch) as <code>init</code> process.</li>
502<li><code>init=/bin/sh</code>: Boot to shell.</li>
503<li><code>systemd.unit=</code>: Boot to a specified target.</li>
504<li><code>nomodeset</code>: Disable kernel mode setting (useful for fixing video driver panics) This will load mostly everything in software rendering/support mode. No hardware acceleration. Good for debugging. </li>
505<li><code>panic=</code>: Time before automatic reboot on kernel panic.</li>
506<li><code>debug</code>: Enable kernel debugging (events log level).</li>
507<li><code>mem=</code>: Force usage of a specific amount of memory to be used.</li>
508<li><code>maxcpus=</code>: Maximum number of processors that an SMP kernel will bring up during bootup.</li>
509<li><code>selinux=</code>: Disable or enable SELinux at boot time.</li>
510<li><code>netdev=</code>: Network devices parameters.</li>
511<li><code>video=&lt;videosetting&gt;</code>: Override framebuffer video defaults.</li>
512<li><code>sleep=1</code>: This will enable the system.prop value for <code>sleep.earlysuspend=1</code>, and on some machines, it enables the proper sleep state.</li>
513<li><code>acpi_sleep=s3_bios,s3_mode</code>: Sometimes needed for older machines to enter sleep mode properly</li>
514<li><code>SETUPWIZARD=0</code>: This command will skip SetupWizard on boot. (Only needs to be run once!)</li>
515<li><code>AUTO_LOAD=old</code>: This will load android-x86 variants using the old <code>modprobe</code> method to init devices. We sometimes use this to debug devices not starting. </li>
516<li><code>DEBUG=1 &amp; DEBUG=2</code>: These enable verbose console debugging, giving another command shell after loading kernel modules, but before Android <code>init</code></li>
517<li><code>vga=xxx &amp; video=</code>: These are the common video modes that you can boot into if it doesn't pick the best choice automagically. You can also use <code>video=</code> as resolution parameters: <code>video=LVDS-1:d video=1366x800</code>. <a href="https://groups.google.com/forum/#!msg/android-x86/jSF3RnADnqA/1sfYdGV_AQAJ">Learn more from our own Henri Koivuneva!</a></li>
518<li><code>HWACCELL=1</code>: This will disable graphics hardware acceleration, enabling rendering through Swiftshader. (Must use this if running headless)</li>
519<li><code>buildvariant=eng, user, userdebug</code>: This is the commandline parameter to run the current build as <code>eng</code>, <code>userdebug</code>, or <code>user</code> </li>
520<li><code>DPI=xxx</code>: This will manually set the DPI on init. Use this if things are too big/small for you.</li>
521<li><code>fbcon=variablename</code>: This is to configure framebuffer to use various options. Usually used to help fix video settings, etc. Even default rotation on some Atom tablets. Example: <code>video=efifb fbcon=rotate:1</code></li>
522</ul>
523<p>As an example, here are a few of the boot options used in testing:</p>
524<pre><code>menuentry 'Bliss-x86 Test-Oreo' --class bliss {
525 search --file --no-floppy --set=root /AndroidOS/android.boot
526 linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 buildvariant=eng quiet sleep.earlysuspend=2 DATA=
527 initrd /AndroidOS/initrd.img
528}
529
530menuentry 'Bliss-x86 Test-Oreo AUTO_LOAD=old' --class bliss {
531 search --file --no-floppy --set=root /AndroidOS/android.boot
532 linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 buildvariant=eng quiet DATA= AUTO_LOAD=old
533 initrd /AndroidOS/initrd.img
534}
535
536menuentry 'Bliss-x86 Test-Oreo - SETUP_WIZARD=0' --class bliss {
537 search --file --no-floppy --set=root /AndroidOS/android.boot
538 linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive buildvariant=eng SETUPWIZARD=0 quiet DATA=
539 initrd /AndroidOS/initrd.img
540}
541
542menuentry 'Bliss-x86 Test-Oreo - debug=1' --class bliss {
543 search --file --no-floppy --set=root /AndroidOS/android.boot
544 linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 buildvariant=eng SETUPWIZARD=0 quiet DATA= DEBUG=1
545 initrd /AndroidOS/initrd.img
546}
547
548menuentry 'Bliss-x86 Test-Oreo - debug=2' --class bliss {
549 search --file --no-floppy --set=root /AndroidOS/android.boot
550 linux /AndroidOS/kernel root=/dev/ram0 SRC=/AndroidOS androidboot.selinux=permissive androidboot.hardware=android_x86_64 buildvariant=eng SETUPWIZARD=0 quiet DATA= DEBUG=2
551 initrd /AndroidOS/initrd.img
552}
553</code></pre>
554
555
556
557
558
559
560
561
562
563 </article>
564 </div>
565 </div>
566 </main>
567
568
569<footer class="md-footer">
570
571 <div class="md-footer-nav">
572 <nav class="md-footer-nav__inner md-grid">
573
574 <a href="../installation-guide/" title="Installation Guide" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
575 <div class="md-flex__cell md-flex__cell--shrink">
576 <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
577 </div>
578 <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
579 <span class="md-flex__ellipsis">
580 <span class="md-footer-nav__direction">
581 Previous
582 </span>
583 Installation Guide
584 </span>
585 </div>
586 </a>
587
588
589 <a href="../../BlissRoms/" title="Index" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
590 <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
591 <span class="md-flex__ellipsis">
592 <span class="md-footer-nav__direction">
593 Next
594 </span>
595 Index
596 </span>
597 </div>
598 <div class="md-flex__cell md-flex__cell--shrink">
599 <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
600 </div>
601 </a>
602
603 </nav>
604 </div>
605
606 <div class="md-footer-meta md-typeset">
607 <div class="md-footer-meta__inner md-grid">
608 <div class="md-footer-copyright">
609
610 powered by
611 <a href="https://www.mkdocs.org">MkDocs</a>
612 and
613 <a href="https://squidfunk.github.io/mkdocs-material/">
614 Material for MkDocs</a>
615 </div>
616
617 </div>
618 </div>
619</footer>
620
621 </div>
622
623 <script src="../../assets/javascripts/application.245445c6.js"></script>
624
625 <script>app.initialize({version:"1.0.4",url:{base:"../.."}})</script>
626
627
628 </body>
629</html>