Anleitung: Custom Kernel für das Intenso Tablet 814 kompilieren

  • 15 Antworten
  • Letztes Antwortdatum
G

Gelöschtes Mitglied 410096

Gast
Hallo,

in diesem Beitrag zeige ich euch, wie ihr ein Kernel selber für das Intenso Tab 814 kompiliert. Der Kernel ist für das Stock Android System, was AOKP oder CyanogenMod ausschließt, außer man passt die ramdisk auch initramfs vorher an.

Als erstes braucht ihr ein Computer oder Laptop, auf dem ihr ein Linux installiert. Ich benutze Debian64 8

Der original Kernel Quellcode ist hier zu finden: http://www.intenso.de/multimedia/treiber/1374477316.zip

Bitte beachtet das der nachfolgend von mir kompilierte Kernel noch nicht quell offene Software in der Ramdisk enthaltet, dies sind:

Code:
/boot/mali.ko
/boot/ump.ko
/sbin/adbd
/sbin/ueventd
/init
/initlogo.rle.bak

Am Ende der Anleitung findet ihr den von mir angepassten Kernel Quellcode und dem dort enthaltenen Kernel zum testen. [1]

Um zu beginnen den Kernel zu kompilieren, ladet euch das Archiv von [1] herunter und packt dieses in euer Benutzerverzeichnis aus, oder um den Kernel nur zu testen ladet das Archiv von [1] herunter.

Zunächst braucht ihr ein Kompiler, welchen ihr hier findet: https://releases.linaro.org/archive...11.10-1-2011-10-21_15-21-26-linux-x86.tar.bz2 packt diesen in euer Benutzerverzeichnis aus.

Ich habe den Kernel hier entpackt: /home/IntensoTab/kernel
Ich habe den Kompiler hier entpackt: /home/IntensoTab/android-toolchain-eabi

Nun öffnet ihr ein Terminal Fenster

Bindet zunächst den Kompiler in der Terminalumgebung ein:

export PATH=$PATH:/home/IntensoTab/android-toolchain-eabi/bin

Nun legt fest nach welcher Datei der Kernel eingestellt werden soll:

make GPL_BOARD_defconfig

Nun kommt das "Mini-System" welches von Intenso stammt und auf dem Tablet vorinstalliert ist. Das "Mini-System" genannt rootfs oder initramfs oder ramdisk muss in folgendem Ordner Pfad:

/home/IntensoTab/android/device/amlogic/M805NDW/images/root

Die ramdisk ist in unserem Falle das Stock Betriebssystem von Intenso, es kann aber auch das Recovery sein.

Ein Dateimanager ist hierzu hilfreich.

Nun kompiliert das Kernel Image welcher nachher von dem Tablets Bootloader (U-Boot) gebootet wird:

make uImage

Dieser Vorgang beansprucht ca. 20 Minuten.

Sobald in dem Terminal folgendes angezeigt wird:

Code:
Image arch/arm/boot/uImage is ready

ist das Kernel Image fertig kompiliert.

Nun kann man das Kernel Image aus dem Ordner /home/IntensoTab/kernel/arch/arm/boot nehmen, welches den Namen uImage hat.

Um den selbst kompilierten Kernel zu testen, kopiert das Image auf eure SD Karte und benennt es uImage_recovery oder recovery.img damit der Bootloader das Kernel Image laden kann, müsst ihr beim Einschalten des Tablets die Leisertaste gedrückt halten.

Viel Spaß und danke für das Testen!

Mit freundlichem Gruß,

IntensoTab

[1]Dropbox - SOURCE.tar.gz

Im Anhang sind ein Bild von vorher und ein Bild von nachher.
 

Anhänge

  • Screenshot_2018-04-24-16-14-52.png
    Screenshot_2018-04-24-16-14-52.png
    22,2 KB · Aufrufe: 381
Zuletzt bearbeitet von einem Moderator:
Ich sehe gerade, dass der Prozessor auf 800 MHz begrenzt ist, aufgrund der Tatsache das zum testen die leiser Taste gedrückt wird, um das Kernel Image von der Micro SD Karte zu laden,

In der Kernel Befehlszeile steht:

Code:
init=/init console=ttyS0,115200n8 hlt no_console_suspend vmalloc=256m mem=1024m logo=osd1,loaded,panel,debug hdmitx=vdacoff,powermode1,unplug_powerdown a9_clk_max=800000000

Man könnte dort sicherlich den Wert ändern und übertackten, aber ich suche mal in dem Bootloader die andere Taktfrequenz Zahl und mache den Kernel so, dass der CPU immer auf mögliche bis zu 1,5 GHz tacktet.

Es kommt ebenfalls eine Version von Kernel, um ohne Nand Speicher auch das Tablet von MicroSDKarte zu verwenden, dazu ist Android komplett auf der MicroSDKarte installiert. Ich habe lustigerweise ein 2. Intenso Tab 814 ohne Nand, da ich diesen ausgelötet habe. :D Habe gerade die ramdisk etwas angepasst und schwupp Android stock geht auch dort drauf. Bis zu einem neuem Android ist es noch ein längerer Weg. Mache erst die Stock in ein Mod/custom ROM.
 
Kann man dann quasi per Multi-Boot von der MicroSD-Karte ein Testsystem starten, ohne das installierte System im NAND anzufassen?


MfG
Ektus.
 
Ja klar. ;)

Ich habe folgendes alles auf der MicroSDKarte (bei dem Tablet ohne 8 GB Nand Chip):

1. U-Boot Bootloader
2. FAT32 Dateisystem mit uImage_recovery bestehend aus selbst kompilieren Kernel und extra angepasster Ramdisk für das No-Nand
3. System Partition hier ist das Stock Android System mit keinerlei Mods ext2
4. Cache Partition ext2
5. Data Partition ext2

Weil ich kein Nand habe, habe ich auch nicht die weißen Bildchen beim booten. Nur das grüne aus der Ramdisk, spätestens jetzt ist etwas erklärt was die Ramdisk macht und ist.

Mit freundlichem Gruß,

IntensoTab
 
Zuletzt bearbeitet von einem Moderator:
Hallo,

normalerweise hätten wir jetzt alles quelloffene (auch nach dem Build funktionierende) bis auf init. Aber leider will die selbst kompilierte mali.KO nicht.

Sorry, ich werde mich deshalb schon um Android kümmern und den Kernel höchstens mehr Funktionen wie Swap und sowas wie CIFS und noch mehr Modulen zukommen lassen.

Es ist seinerseits ein AOSP in Arbeit welche Android 4.1 ist und dann solangsam auf KitKat noch gehen. Muss dann immer für jede Version schauen z.B. Selinux im Kernel zu aktivieren etc.
 
Kamera will mit dem Custom Kernel nicht. Gibt ein grünes "vorschau" -Bild. Nach dem fotographieren ist es ein schwarzes Bild.

Ich habe beim kompilieren Sachen wie Camera in dem Terminal Fenster gesehen. Evtl. anderer Treiber...
 
So erstmal den Kernel für !Debian9! bauen lassen.

Also man muss um den 32-Bit Compiler zu benutzen von der Paketverwaltung lib32z1 installieren und man braucht noch uudecode welches man aus dem Paket sharutils bekommt.

So der Kernel wird bei einer *.pl also bei einer Pelr Datei hängen bleiben dann einfach das defined aus der timeconst.pl von Zeile 373 entfernen hier habe ich den Tipp gefunden: [FL-2666] openvz-rhel6-stable does not build after perl-5.22 update - Funtoo JIRA
 
Ich habe gerade beim mali.ko Module Fehler aufploppen gesehen:

Code:
make modules SUBDIRS=drivers/amlogic/mali/

Code:
WARNING: "ump_dd_phys_block_count_get" [drivers/amlogic/mali//mali.ko] undefined!
WARNING: "ump_dd_reference_release" [drivers/amlogic/mali//mali.ko] undefined!
WARNING: "ump_dd_phys_blocks_get" [drivers/amlogic/mali//mali.ko] undefined!
WARNING: "ump_dd_handle_create_from_secure_id" [drivers/amlogic/mali//mali.ko] undefined!

Ich hoffe das es irgendwann mal geht, mir fehlen die Werte die es in den Variablen braucht... mal etna ROM installieren ist ja alles 1:1 nur die System Partition ist bissl anders. Ohne den Befehl modinfo ist das schlecht. evtl. sagt mein PC ja was über das Module.

Nichts verwertbares:

Code:
root@debian9server:/home/IntensoTab# modinfo '/home/IntensoTab/Tablet/stock_initramfs/boot/mali.ko'
filename:       /home/IntensoTab/Tablet/stock_initramfs/boot/mali.ko
version:      
author:         ARM Ltd.
license:        GPL
author:         Tim Yao <timyao@amlogic.com>
license:        GPL
description:    AMLOGIC mali fix driver
srcversion:     63885260C9592596A4BFAFF
depends:      
vermagic:       3.0.8-ge9ca3e2 SMP preempt mod_unload ARMv7
parm:           mali_pp1_int_count:Mali PP1 interrupt count
 (uint)
parm:           mali_pp2_int_count:Mali PP1 interrupt count
 (uint)
parm:           mali_pp1_mmu_int_count:Mali PP1 mmu interrupt count
 (uint)
parm:           mali_pp2_mmu_int_count:Mali PP2 mmu interrupt count
 (uint)
parm:           mali_debug_level:Higher number, more dmesg output (int)
parm:           mali_major:Device major number (int)
parm:           mali_max_job_runtime:Maximum allowed job runtime in msecs.
Jobs will be killed after this no matter what (int)
parm:           mali_l2_max_reads:Maximum reads for Mali L2 cache (int)
root@debian9server:/home/IntensoTab#
Beste Grüße,

IntensoTab
 
Zuletzt bearbeitet von einem Moderator:
So wir haben jetzt das Mali Modul gebaut bekommen, der Quellcode musste dazu nur aus einen anderen Kernel genommen werden.

Evtl. ist die ARM Mali 400 MP 2 nurnoch eine 1 Core GPU. Ich kann das nicht herausfinden...

Gerade wo es interessant wird ist mir meine 32 GB microSD in einer 2 TB microSD Karte umgewandelty also schrott gegangen.

Beste Grüße,

IntensoTab
 
Zuletzt bearbeitet von einem Moderator:
Die Hardwareliste im Zusammenspiel mit dem stock Kernel + stock Ramdisk (gebootet von der µSD und ja man sieht nur an den limitierten 800 MHz das ich den Weg gebootet habe): viel CPU-Z App... :D

Code:
Akku (AXP202): Ja mit % und mV Anzeige
Rote LED: Ja
Orangene LED: Ja
8 GB Nand (meiner: TOSHIBA TC58TEG6DCJTA00: Ja
Sound Chip Realtek: Ja
2x ARM Cortex A9, skaling: Ja
Amlogic 8726-MX: -- SoC zu viele Komponenten: 2x CPU; 2x GPU
Mainboard M805NC-MB: -- Muss in der build.prop auf ro.product.board=M805NC-MB
Lautsprecher: Ja
+/- Lautstärke-Tasten: Ja
Display (Digitalizer) 1024x768 8" 160DPI: Ja
Beleuchtung: Ja
Touchscreen-Controller (8"): Ja
µSD-Kartenleser: Ja
Reset Knopf: Ja
4x 256 MB RAM DDR3: Ja 863MB
WLAN Broadcom (MAC bleibt immer gleich?): Ja
HDMI-Ausgang: Man beachte: 480p, 720p, 1080p Wird bald gekauft, aber erst wenn gewisse Dinge auch supportet sind mit dem custom Kernel
Audio-Ausgang: Ja, abstecken wird erkannt (Musik angehalten)
5V 2Ah 2.5mm Hohlstecker: Ja, ob der misst kp Einstellungen: AC
Mikrofon: Ja
µUSB Anschluss: Tastatur Tastatur Layout einstellbar: Ja (QWERTZ); Maus Zeigergeschwindigkeit einstellbar: Ja; Anschluss am PC: Alle µSD Partitionen und 1 interne SD Partition; USB-Debugging bei Entwickler-Optionen anschaltbar (logcat): Ja; Laden per USB -> in Einstellungen steht Wird geladen (USB) bei mir zu wenig Strom: Ja
Kamera 0,3MP (640x480): Ja
Anschalt-Knopf: Ja
Bewegungssensor 3 Axis (Bildschirmrotation): Ja
Temperatursensor: Nein
UART: --
Uhrzeit: Ja
JTAG: --
GPU Mali 400 MP 2: Evtl dual oder single betrieben

Was mir noch wichtig war: YouTube Videos per YouTube App (800 MHz): Ja anstandslos
YouTube Videos per Google Chrome: Ja, ruckelig (800 MHz Limit?)
Der olle Android-Browser YouTube Videos (ein von System aufgesetzter Video Player): Ja
Firefox Browser: Nein No video with supported format and MIME type found.
App2SD (tmpfs .android_secure; sdcard0; mnt/secure/asec): Ja
 
Zuletzt bearbeitet von einem Moderator:
So jetzt den custom Kernel und die stock Ramdisk. (Ich liste hier was nicht zur Funktion gebracht werden kann, oder unbekannt ist):

Code:
Rote LED: Nein // Muss beobachtet werden Recovery bedingt?
Orangene LED: Nein // Muss beobachtet werden Recovery bedingt?
Amlogic 8726-MX: -- SoC zu viele Komponenten: 2x CPU; 2x GPU
4x 256 MB RAM DDR3: Ja 870MB
HDMI-Ausgang: Man beachte: 480p, 720p, 1080p Wird bald gekauft, aber erst wenn gewisse Dinge auch supportet sind mit dem custom Kernel
5V 2Ah 2.5mm Hohlstecker: Ja, ob der misst kp Einstellungen: AC
µUSB Anschluss: Anschluss am PC: *KEINE* µSD Partitionen und *KEINE* interne SD Partition; USB-Debugging bei Entwickler-Optionen anschaltbar (logcat): Nein -> adb funktioniert nicht!; Laden per USB -> in Einstellungen steht *nicht* "Wird geladen (USB)" bei mir zu wenig Strom: nein
Kamera 0,3MP (640x480): nein grüne Vorschau und schwarzes Foto dann
Temperatursensor: Nein
UART: --
JTAG: --
GPU Mali 400 MP 2: Evtl dual oder single betrieben

In dem custom Kernel steht nie 100 %, obwohl vom Bootloader auß die orangene LED an war, dort steht nur 99%. Mir ist bei µUSB noch ein USB-Stick eingefallen. Dieser funktioniert. In den Einstellungen steht durch gängig Akkubetrieb, obwohl ich den 2.5mm Hohlstecker angeschlossen habe. Aber der addiert keine Sekunden zu den Akkubetrieb. D.h. der weiß das ein µUSB xor ein Hohlstecker angeschlossen sind.

Die M805ND_defconfig Konfigurationsdatei wird angefragt, welche nicht von Yifangdigital bzw. Intenso beigefügt wurde. Nur die GPL_BOARD_defconfig. Ist eine viel zu allgemeine Konfig. Das wird ein Spaß die Richtigen Software Komponenten in den Kernel zu kompilieren. (Kamera, LED's, USB)

Das Tablet ist sogar gerade im Betrieb hängen geblieben, evtl. den nur 800 MHz CPU Takt geschuldet. Hoffentlich.

???? Aufeinmal geht die rote LED!!! Und ja ich bin im custom Kernel gebootet. In den Einstellungen steht "Wird geladen (AC)" Das versteh mal jemand, gerade hängen geblieben und dann sowas... okay das Tablet war jetzt bissl was bei 99% und jetzt 100% und die orangene LED ist auch am leuchten! Beim erneuten anschließen des Hohlsteckers wieder keine LED..

Was mir noch wichtig war: YouTube Videos per YouTube App (800 MHz): Ja, aber ohne Ton! Bei manchen Werbungen vor dem Video kommt Ton, aber im Video selbst nicht
YouTube Videos per Google Chrome: Ja, ruckelig (800 MHz Limit?)
Der olle Android-Browser YouTube Videos (ein von System aufgesetzter Video Player): Ja, ohne Ton
Firefox Browser: Nein No video with supported format and MIME type found.
App2SD (tmpfs .android_secure; sdcard0; mnt/secure/asec): Ja
[doublepost=1532704658,1532698989][/doublepost]Also mit dem custom Kernel geht zurzeit nicht:

Rote LED
Orangene LED
µUSB bzw. ADB
Kamera
Akku Prozentanzeige ist statisch bzw. der AXP202 mit 2.5mm Hohlstecker macht Probleme.

In der Kernel Konfig steht etwas ähnlicheres als M805ND und zwar M805NC, wenn wir Glück haben ist es das:

Code:
#
# YiFang development boards
#
CONFIG_MACH_MESON6_M805ND=y
# CONFIG_MACH_MESON6_M805NC is not set
# CONFIG_MACH_MESON6_M712ND is not set
# CONFIG_MACH_MESON6_M712NC is not set
# CONFIG_MACH_MESON6_M767ND is not set
# CONFIG_MACH_MESON6_M755ND is not set
# CONFIG_MACH_MESON6_M757ND is not set
# CONFIG_MACH_MESON6_M1005ND is not set

Solangsam wird es höchste Eisenbahn auf KitKat zu kommen, aber bitte nicht mit auch Kernel Bugs. Die sollen wenn nur in Android sein, da haben wir dann noch einfacher und bisschen Zeit diese zu fixen.
 
So habe nun also das Development Board MESON6_M805NC genommen wie direkt hier drüber zu sehen ist im Code. Dort oben war's ja noch das M805ND.

Nun kommts:

Es funktioniert die LED rot, aber die orangene kann ich nicht testen, da das Tablet gerade 47% Akku hat, muss ich also erstmal aufladen.

Was ganz schlimmes mehr als ¼ des unteren Bildschirmes ist nach dem Ausschalten des Screens so komisch pixelig geworden. Ist also eine art Layer die sich darüber gelegt hat. Das pixelige ist exakt ein Abbild meines Launchers, :p Auf dem Screenshot ist dieses eingebrannte etwas nicht zu sehen.

Ich musste die aml_m805nd.h Headerdatei in aml_m805nc.h umbenennen. Man beachte das hier: ./kernel/include/config/mach/meson6 in der Tat M805ND-MB und M805NC-MB, also zwei verschiedene Headerdateien sind. Diese sind aber erstellt worden.

Code:
Akku (AXP202): Ja mit % und mV Anzeige
Rote LED: Ja
Orangene LED: -- ist anzunehmen
8 GB Nand (meiner: TOSHIBA TC58TEG6DCJTA00: Ja
Sound Chip Realtek: Ja
2x ARM Cortex A9, skaling: Ja
Amlogic 8726-MX: -- SoC zu viele Komponenten: 2x CPU; 2x GPU
Mainboard M805NC-MB: -- Muss in der build.prop auf ro.product.board=M805NC-MB
Lautsprecher: -- ist anzunehmen
+/- Lautstärke-Tasten: Ja
Display (Digitalizer) 1024x768 8" 160DPI: Ja
Beleuchtung: Ja
Touchscreen-Controller (8"): Ja
µSD-Kartenleser: Ja
Reset Knopf: -- ist anzunehmen
4x 256 MB RAM DDR3: Ja 870MB
WLAN Broadcom (MAC bleibt immer gleich?): Ja
HDMI-Ausgang: Man beachte: 480p, 720p, 1080p Wird bald gekauft, aber erst wenn gewisse Dinge auch supportet sind mit dem custom Kernel
Audio-Ausgang: -- ist anzunehmen, abstecken wird erkannt (Musik angehalten)
5V 2Ah 2.5mm Hohlstecker: Ja, ob der misst kp Einstellungen: AC
Mikrofon: Ja
µUSB Anschluss: Tastatur Tastatur Layout einstellbar: Ja (QWERTZ); Maus Zeigergeschwindigkeit einstellbar: Ja; Anschluss am PC: !alle! µSD Partitionen und interne SD Partition nicht testbar; USB-Debugging bei Entwickler-Optionen anschaltbar (logcat): Ja; Laden per USB -> in Einstellungen steht Wird geladen (USB) bei mir zu wenig Strom: Ja
Kamera 0,3MP (640x480): Nein
Anschalt-Knopf: Ja
Bewegungssensor 3 Axis (Bildschirmrotation): Ja
Temperatursensor: Nein
UART: --
Uhrzeit: Ja
JTAG: --
GPU Mali 400 MP 2: Evtl dual oder single betrieben ganz schlecht Einbrennungen ah da sind unbekannte IRQ interrupts!

Ich habe sogar Android durch abschießen des system_server's Prozesses neugestartet und während der Bootanimation sind diese "Einbrennungen" zu sehen.

Mal bisschen was zur Kamera, wäre schon cool wenn die auch mal ginge:
stop 656_601_camera_in decode.
[ 168.893797@1] amlogic camera driver: gc0308_v4l2_uninit

Insgesamt kann ich sagen, dass der Kernel von der Grafik her sehr leistungsschwach ist. Ich werde mal rund um den Prestigio PMP5580C, also das baugleiche Tablet mal schauen.

Code:
elif [[ "$MAKE_KERNEL" = ASBSM805NDW ]]; then
   echo "compile kernel for $MAKE_KERNEL"
   k_config=M805NDW_defconfig
   MASS_STORAGE_NAME="PMP5580C"
   MASS_STORAGE_PRODUCT=""
   do_make $k_config $MASS_STORAGE_NAME $MASS_STORAGE_PRODUCT

M805NDW...
[doublepost=1532766191,1532765155][/doublepost]Mit dem Prestigio Kernel funktioniert (so wie sonst auch) die Kamera nicht. Das Aufladen, also die LED's auch nicht. µUSB ist vergebens(außer Maus, Tastatur und USB-Stick). Das Autospiel Extreme Car driving Simulator geht nicht, die Grafik muss dermaßen mies sein.

Was soll ich sagen? Wir müssen wohl oder übel eine komplett eigene Kernel Konfiguration aufstellen. Tja... es gibt kein /proc/config.gz wo wir drauf zurück greifen können.

So eine Frechheit! Eine Idee wäre es noch die readme.txt aus dem Root Verzeichnis des Kernels zu probieren. Mal sehen wie ich es mit den Mail Modulen anstelle. Und dann noch dies testen
ASBSM805ND
Man kann da einfach fiktive Namen nehmen, kurze Demonstration?:

Code:
IntensoTab@debian9server:~/kernel$ ./build_kernel.sh doofmann
DOOFMANN
DOOFMANN
****************************************************************
*                    Make Kernel For doofmann           *
****************************************************************
../android/device/amlogic/DOOFMANN/images/ doesn't exist
IntensoTab@debian9server:~/kernel$
[doublepost=1532769038][/doublepost]Das Skript .run.sh sah doch sehr überraschend aus. Also was geht mit?:

Mein anderes Tab will den Kernel nichtmal booten, das andere zeigt sogar den großen grünen Android Roboter an, also das Image ist definitiv heile. Aber ich muss mal eben das Tablet irgendwie überreden. Ich stelle dann gleich die Hardware-Liste hier rein. Es ist voraussichtlich nur die Kamera noch nicht unterstützt!! I hope.
 
Zuletzt bearbeitet von einem Moderator:
Im Kernel ist laut den stock Kernel der richtige Kamera Treiber kompiliert:

Code:
[   96.152864@0] gc0308_init OK!!!!
[   96.152904@0] +++found a init function, and run it..
[   96.549844@0] GC0308_write_regs success in initial GC0308.
[   96.550017@0] GC0308_write_custom_regs success in initial GC0308.
[   96.853915@0] amlogic camera driver: gc0308_v4l2_uninit.
[   96.882682@0] +++found a uninit function, and run it..

CONFIG_VIDEO_AMLOGIC_CAPTURE_GC0308=y

Ist alles anscheinend richtig kompiliert, aber dennoch ist das Bild grün, kann auch woanders dran liegen... mal schauen was ohne Kamera Treiber passiert. ;) Ansonsten versuchen wir aus einem ähnlichen Amlogic Kernel Archiv den Treiber zu finden, evtl. ist unser *.c C-Code verunstaltet.
[doublepost=1532782948,1532780790][/doublepost]Hier ist ebenfalls der Treiber: herod2k/buildroot-linux-kernel-m6
 
Okay die Kamera lassen wir erstmal weg.
 
Da ich vorgestern gesehen habe, dass ich noch Informationen aus der Kamera via ADB logcat raus quetschen kann, kann es lohnend sein, das ich mich noch etwas mit der Kamera auseinandersetze. Wenn wir Glück haben, dann liegt das Problem der Kamera innerhalb von Android. Wenn wir Pech haben, dann ist der Fehler irgendwo im Kernel.

Deswegen hier einmal den Logcat Auszug beim stock Kernel, wenn ich die Kamera App einschalte und die Kamera Vorschau aktiviert werden soll:

Code:
V/CameraService( 5527): setParameters(0)
V/CameraHAL( 5527): camera_set_parameters
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:358 setParameters - PreviewFormat yuv420sp
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:385 setParameters - VSTAB false
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:405 setParameters - IPP mode set ldc-nsf
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:479 setParameters - PreviewResolution by App 640 x 480
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:512 setParameters - Recording Hint is set to false
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:537 setParameters - Focus mode set fixed
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:572 setParameters - Picture Size by App 640 x 480
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:586 setParameters - FRAMERATE 15
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:589 setParameters - Passed FRR: 5000,26623, Supported FRR (5000,26623)
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:591 setParameters - Passed FR: 15, Supported FR 10,15
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:654 setParameters - FPS Range = 10000,15000
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:655 setParameters - DEFAULT FPS Range = 5000,26623
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:675 setParameters - SET FRAMERATE 15
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:681 setParameters - FPS Range [10, 15]
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:687 setParameters - GBCE Value = disable
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:712 setParameters - Exposure set = auto
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:722 setParameters - White balance set auto
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:732 setParameters - Contrast set 100
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:742 setParameters - Sharpness set 100
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:752 setParameters - Saturation set 100
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:762 setParameters - Brightness set 50
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:772 setParameters - Antibanding set 50hz
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:782 setParameters - ISO set auto
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:818 setParameters - Exposure compensation set 0
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:824 setParameters - Scene mode set auto
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:854 setParameters - Effect set none
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:872 setParameters - Jpeg quality set 90
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:879 setParameters - Thumbnail width set 180
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:886 setParameters - Thumbnail width set 160
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:893 setParameters - Thumbnail quality set 90
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:963 setParameters - EXIF Model set INM805ND
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:969 setParameters - EXIF Make set YIFANG
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:986 setParameters - Zoom set 0
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:999 setParameters - Auto Exposure Lock set false
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:1008 setParameters - Auto WhiteBalance Lock set false
D/CameraHAL( 5527): setParameters, 1 mParameters KEY_PICTURE_SIZE=640x480
D/CameraHAL( 5527): setParameters mCameraAdapter=0x43ee5d60 mPreviewEnabled=0 updateRequired=0
D/CameraHAL( 5527): setParameters, 2 mParameters KEY_PICTURE_SIZE=640x480
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:1041 setParameters - Positive bracketing range 1
D/CameraHAL( 5527): hardware/amlogic/camera/CameraHal.cpp:1052 setParameters - Negative bracketing range 1
D/CameraHAL( 5527): setParameters, 3 mParameters KEY_PICTURE_SIZE=640x480
V/camera  (31492): startPreview

Und jetzt gleich die Ausgabe für die Kamera beim stock Kernel.

Hier ist diese:

Code:
V/CameraService( 2355): setParameters(0)
V/CameraHAL( 2355): camera_set_parameters
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:358 setParameters - PreviewFormat yuv420sp
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:385 setParameters - VSTAB false
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:405 setParameters - IPP mode set ldc-nsf
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:479 setParameters - PreviewResolution by App 640 x 480
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:512 setParameters - Recording Hint is set to false
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:537 setParameters - Focus mode set fixed
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:572 setParameters - Picture Size by App 640 x 480
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:586 setParameters - FRAMERATE 15
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:589 setParameters - Passed FRR: 5000,26623, Supported FRR (5000,26623)
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:591 setParameters - Passed FR: 15, Supported FR 10,15
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:654 setParameters - FPS Range = 10000,15000
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:655 setParameters - DEFAULT FPS Range = 5000,26623
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:675 setParameters - SET FRAMERATE 15
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:681 setParameters - FPS Range [10, 15]
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:687 setParameters - GBCE Value = disable
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:712 setParameters - Exposure set = auto
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:722 setParameters - White balance set auto
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:732 setParameters - Contrast set 100
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:742 setParameters - Sharpness set 100
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:752 setParameters - Saturation set 100
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:762 setParameters - Brightness set 50
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:772 setParameters - Antibanding set 50hz
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:782 setParameters - ISO set auto
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:818 setParameters - Exposure compensation set 0
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:824 setParameters - Scene mode set auto
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:854 setParameters - Effect set none
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:872 setParameters - Jpeg quality set 90
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:879 setParameters - Thumbnail width set 180
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:886 setParameters - Thumbnail width set 160
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:893 setParameters - Thumbnail quality set 90
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:963 setParameters - EXIF Model set INM805ND
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:969 setParameters - EXIF Make set YIFANG
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:986 setParameters - Zoom set 0
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:999 setParameters - Auto Exposure Lock set false
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:1008 setParameters - Auto WhiteBalance Lock set false
D/CameraHAL( 2355): setParameters, 1 mParameters KEY_PICTURE_SIZE=640x480
D/CameraHAL( 2355): setParameters mCameraAdapter=0x43ebe228 mPreviewEnabled=0 updateRequired=0
D/CameraHAL( 2355): setParameters, 2 mParameters KEY_PICTURE_SIZE=640x480
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:1041 setParameters - Positive bracketing range 1
D/CameraHAL( 2355): hardware/amlogic/camera/CameraHal.cpp:1052 setParameters - Negative bracketing range 1
D/CameraHAL( 2355): setParameters, 3 mParameters KEY_PICTURE_SIZE=640x480
V/camera  ( 6405): startPreview

Jetzt erstmal beide vergleichen, ob die Parameter stimmen. Also ich sehe dort keine Differenzen.
 
Zuletzt bearbeitet von einem Moderator:
Ich hatte den Kernel mit CONFIG_DEBUG_SECTION_MISMATCH=y gebaut, um zu sehen warum 4 Unstimmigkeiten auftreten. Es scheint als wenn nur wegen dem Kamera Treiber folgendes aufploppt (Fehlermeldung stark reduziert):

Code:
WARNING: drivers/amlogic/built-in.o(.data+0xa3c): Section mismatch in reference from the variable vout2_driver to the function .init.text:meson_vout_probe()
The variable vout2_driver references
the function __init meson_vout_probe()
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console

Wenn die Referenzen richtig sind soll ich die Variable mit ___init* oder __refdata kommentieren (siehe linux/init.h) oder nenne die Variable: ...

Versuch ich mal das erste, weil in allen 8 Warnmeldungen kommt immer das gleiche mit init.h und dann mit den *_template, etc.

Hoffentlich bringt das die Kamera ans laufen. Okay, also diese Warnmeldungen sind definitiv nicht von dem Kamera"treiber".
 
Zuletzt bearbeitet von einem Moderator:

Ähnliche Themen

A
Antworten
4
Aufrufe
3.428
JohannesPaulHoffmann
J
G
  • Gelöschtes Mitglied 410096
Antworten
0
Aufrufe
2.160
Gelöschtes Mitglied 410096
G
G
  • Gelöschtes Mitglied 410096
Antworten
18
Aufrufe
2.646
Gelöschtes Mitglied 410096
G
Zurück
Oben Unten