Picasso-kernel: различия между версиями

Материал из Toshiba AC100 wiki
Перейти к навигации Перейти к поиску
м (→‎Notes: add commit names)
м (try condition on quirks)
Строка 3: Строка 3:
===Problems left===
===Problems left===


#Slow data/system EXT4 format from recovery with SanDisk eMMC
#Slow data/system EXT4 format from recovery with SanDisk eMMC (try to put conditions on picasso quirks)
#<strike>UDC usb works only if inserted before poweron</strike>) ([https://github.com/digetx/picasso-kernel/commit/a785109dbaf665c1ad123c6ff50b16dea890a8b3 fixed by digetx])
#<strike>UDC usb works only if inserted before poweron</strike>) ([https://github.com/digetx/picasso-kernel/commit/a785109dbaf665c1ad123c6ff50b16dea890a8b3 fixed by digetx])
#Hardware video overlays freezes (Probably memory clock problem)
#Hardware video overlays freezes (Probably memory clock problem)
Строка 69: Строка 69:
</pre>
</pre>
====Kernel logs====
====Kernel logs====
udc before power on connected http://pastebin.com/3d1RLizK
udc before power on connected http://pastebin.com/3d1RLizK <br/>
udc power on not connected http://pastebin.com/vH0tYwbv
udc power on not connected http://pastebin.com/vH0tYwbv <br/>
----
----
===EMC===
===EMC===

Версия от 14:01, 25 января 2017

Use picasso-kernel on PAZ00

Problems left

  1. Slow data/system EXT4 format from recovery with SanDisk eMMC (try to put conditions on picasso quirks)
  2. UDC usb works only if inserted before poweron) (fixed by digetx)
  3. Hardware video overlays freezes (Probably memory clock problem)
  4. No power button and lid events from nvec (Works with Stuw's patches)
  5. Battare uevents (Patch from 3.1 fits 3.18)

Memreserve calculations

Memory hole like kernel 3.1.10

/*
 * Carveouts for multimedia and ram console
 * 128MB - multimedia
 * 8MB - fb1
 * 16MB - fb2
 * 1MB - ram-console
 */

memory {
        reg = <0x00000000 0x20000000>;
};

/memreserve/ 0x11000000+0x9900000=0x1A900000

nvmap:0x11000000+0x8000000=0x19000000
dc1:0x19000000+0x800000=0x19800000
dc2:0x19800000+0x01000000=0x1A800000
ramconsole:0x1A800000+0x00100000=0x1A900000


memory size note

512 megabyte=536 870 912 bytes /* Total RAM */
128 megabyte=134 217 728 bytes
64 megabyte=67 108 864 bytes
32 megabyte=33 554 432 bytes

UDC

Clocks diff

--- picasso-kernel-udc-not-connected-clocks-1   2016-04-27 01:09:48.527156892 +0300
+++ picasso-kernel-udc-power-on-clocks-1        2016-04-27 01:10:08.994148847 +0300
@@ -1,5 +1,5 @@
-Not inserted:
-shell@android:/ # grep -Hsi "" /sys/kernel/debug/clk/*/clk_rate                
+inserted
+shell@android:/ # grep -Hsi "" /sys/kernel/debug/clk/*/clk_rate
 /sys/kernel/debug/clk/2d/clk_rate:300000000
 /sys/kernel/debug/clk/2d_emc/clk_rate:0
 /sys/kernel/debug/clk/3d/clk_rate:300000000
@@ -86,7 +86,7 @@
 /sys/kernel/debug/clk/pll_p_out4_div/clk_rate:24000000
 /sys/kernel/debug/clk/pll_ref/clk_rate:12000000
 /sys/kernel/debug/clk/pll_u/clk_rate:480000000
-/sys/kernel/debug/clk/pll_x/clk_rate:1000000000
+/sys/kernel/debug/clk/pll_x/clk_rate:312000000
 /sys/kernel/debug/clk/pwm/clk_rate:32768
 /sys/kernel/debug/clk/rtc/clk_rate:32768
 /sys/kernel/debug/clk/sbc1/clk_rate:86400000

Kernel logs

udc before power on connected http://pastebin.com/3d1RLizK
udc power on not connected http://pastebin.com/vH0tYwbv


EMC

Current clocks after power on http://pastebin.com/sZzsyLka
EMC clock use patch https://github.com/ac100-ru/picasso-kernel/commit/964333b5b4844bea59f05ce4095ba8742bc55f41
EMC driver code https://github.com/ac100-ru/picasso-kernel/commit/e068d72acd417d3134ba1d183d7288a8c9be2a70


Video overlays

Current logcat while freezing

I/Choreographer(  525): Skipped 34 frames!  The application may be doing too much work on its main thread.

https://developer.android.com/training/testing/performance.html


cpufreq

root@android:/sys/devices/system/cpu/cpufreq/interactive # ls -la
-rw-rw-r-- system   system       4096 2016-04-20 01:08 above_hispeed_delay
-rw-rw---- system   system       4096 2016-04-20 01:08 boost
-rw-rw---- system   system       4096 2016-04-20 01:08 boostpulse
-rw-rw---- system   system       4096 2016-04-20 01:08 boostpulse_duration
-rw-rw-r-- system   system       4096 2016-04-20 01:08 go_hispeed_load
-rw-rw-r-- system   system       4096 2016-04-20 01:08 hispeed_freq
-rw-r--r-- root     root         4096 2016-04-20 01:09 io_is_busy
-rw-rw---- system   system       4096 2016-04-20 01:08 min_sample_time
-rw-r--r-- root     root         4096 2016-04-20 01:08 target_loads
-rw-rw-r-- system   system       4096 2016-04-20 01:08 timer_rate
-rw-r--r-- root     root         4096 2016-04-20 01:09 timer_slack
root@android:/sys/module/tegra2_emc/parameters # cat emc_enable      
Y
1|root@android:/data # grep -Hsi "" /sys/devices/system/cpu/cpufreq/interactiv>
/sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay:80000
/sys/devices/system/cpu/cpufreq/interactive/boost:0
/sys/devices/system/cpu/cpufreq/interactive/boostpulse_duration:80000
/sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load:99
/sys/devices/system/cpu/cpufreq/interactive/hispeed_freq:1000000
/sys/devices/system/cpu/cpufreq/interactive/io_is_busy:0
/sys/devices/system/cpu/cpufreq/interactive/min_sample_time:30000
/sys/devices/system/cpu/cpufreq/interactive/target_loads:29 312000:30 456000:45 608000:50 760000:60 816000:70 912000:90 2000000:99
/sys/devices/system/cpu/cpufreq/interactive/timer_rate:20000
/sys/devices/system/cpu/cpufreq/interactive/timer_slack:80000
root@android:/data # grep -Hsi "" /sys/devices/system/cpu/cpu0/cpufreq/*       
/sys/devices/system/cpu/cpu0/cpufreq/affected_cpus:0 1
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq:216000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq:1000000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq:216000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_transition_latency:300000
/sys/devices/system/cpu/cpu0/cpufreq/related_cpus:0 1
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies:216000 312000 456000 608000 760000 816000 912000 1000000 
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors:conservative ondemand userspace powersave interactive performance 
/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq:216000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_driver:tegra
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor:interactive
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq:1000000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq:216000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed:<unsupported>

Notes

Checkout maybe this patches need to be added somehow to 3.18
ARM: tegra: paz00: add clocks required for usb operation
ARM: tegra2: clock: Put Tegra2 clocks to known states