Is it possible to run Linux without chroot? I got Archlinux up and running
Code:
[[email protected] ~]# hostname
galaxys
[[email protected] ~]# cat /proc/cpuinfo
Processor : ARMv7 Processor rev 2 (v7l)
BogoMIPS : 663.76
Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc08
CPU revision : 2
Hardware : aries
Revision : 0030
Serial : 313423849c8b00ec
[[email protected] ~]# uname -a
Linux galaxys 3.1.10_IcyGlitch_V14-B6_I9K-T959D #1 PREEMPT Sat Mar 24 18:00:37 CET 2012 armv7l ARMv7 Processor rev 2 (v7l) aries GNU/Linux
[[email protected] ~]# pacman -Qs pacman
local/pacman 4.0.2-1.1 (base)
A library-based package manager with dependency support
local/pacman-mirrorlist 20120204-1 (base)
Arch Linux ARM mirror list for use by pacman
[[email protected] ~]# cat /proc/cmdline
console=ttySAC2,115200 loglevel=4 androidboot.serialno=313423849C8B00EC bootmode=0
[[email protected] ~]#
... but it would be nice to boot into Archlinux instead of ICS. I haven't compiled kernels for the phone before - is the root filesystem path hardcoded in the compile? The only thing I can find is this:
Code:
[[email protected] ~]# zcat /proc/config.gz |grep -i cmdline
CONFIG_CMDLINE="console=ttyFIQ0,115200 init=/init"
Of course, I would probably have to repartition whatever is the root partition. Perhaps I could repartition the internal SD card, give the partition a label and use that for root.
Any pointers? Thanks,
Edit: http://forum.xda-developers.com/showthread.php?t=999097#12206727
Aha. This might be difficult.
This club is for posting your stable undervolts
Please post MPU/IVA/CORE voltages
REQUIREMENTS:
- 1 MONTH stable
- 1 voltage value is allowed. You don't need to have all MPU voltages undervolted for this table for example.
SPREADSHEET: https://docs.google.com/spreadsheet/ccc?key=0AuqacKmGLKJ6dEdJZG5QTmNtQnoyYk0zbm5IanluMHc
Please post in format:
Stable since: DDMMMYYYY (eg: 23FEB2012)
MPU:
350 - xxx mv
700 - xxx mv
920 - xxx mv
1200 - xxx mv
IVA:
- ...
CORE:
- ...
Click to expand...
Click to collapse
The results will be taken into account and merged. I will use the results to undervolt the official CM10 kernel and I will commit these changes to become official.
added spreadsheet with results I found from Google
Hi everyone,
I recently purchased a chinese tablet. I've been trying to update the ROM or at least get a more stable version on it since I constantly get the android.process.acore has stopped error.
I installed Quadrante advanced and this is the system information I got:
System
SDK version: 4.0.4
ID: IMM76D
OS name: Linux
OS version: 3.0.8
Dalvik VM version: 1.6.0
Device
Model: A10_T907_CPU:1.5GHz
Product: crane_dds_t907
Board: crane
Brand: softwinners
Fingerprint: softwinners/crane_dds_t907/crane-dds-t907:4.0.4/IMM76D/20120626:eng/test-keys
CPU
Name: ARMv7 Processor rev 2 (v7l)
Current Freq.: 1008 MHz
Max Freq.: 1008 MHz
Min freq.: 60 MHz
Cores: 1
Cores available to Java: 1
Architecture: 7
BogoMIPS: 1001.88
hardware: sun4i
Revision: 2
Serial #: 0a40a496514848488071825316236791
Memory
Total: 833800 kB
Free: 414648 kB
Inactive: 176388 kB
I found a URL for my tablet. Unfortunately I'm unable to post External URLs since I am a newbie.
I would really appreciate any help towards flashing and adding a new ROM to this tablet. I know that it is rooted because I ran RootChecker and everything seems to be ok.
Could anybody please, please help me figure out what ROM could I use to fix some of the issues I have with it?
Thanks!!
Dear owners,
After buying the J510FN I was frustrated with the way Samsung setup the CPU control for this phone. All 4 cores were on and the minimal freq was 800 Mhz.
This meant worse battery life than possible.
I dig into the kernel to look what was possible. The post boot script /etc/init.qcom.post_boot.sh revealed it all. Our msm8914 soc (Snapdragon 410) could do much better.
I changed the init.qcom.post_boot.sh script to maximize battery life and still get the full performance the Snapdragon 410 offers.
Content of cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies:
Code:
200000 400000 533333 800000 998400 1094400 1190400
Our soc id is 206. In the script I changed these lines to let the cpu use all frequencies and let it switch off CPU cores with Qualcomm core_ctl (like hotplug).
For enable lower cpu freq:
Code:
echo 0 > /sys/module/msm_thermal/core_control/enabled
echo 200000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo 1 > /sys/module/msm_thermal/core_control/enabled
echo "1 200000:25 400000:50 800000:85 998400:90 1094400:95 1190400:98" > /sys/devices/system/cpu/cpufreq/interactive/target_loads
List of /sys/devices/system/cpu/cpufreq/interactive/:
Code:
above_hispeed_delay:25000 1094400:50000
align_windows:0
boost:0
grep: boostpulse: Permission denied
boostpulse_duration:80000
go_hispeed_load:90
hispeed_freq:998400
io_is_busy:1
max_freq_hysteresis:0
min_sample_time:50000
target_loads:1 200000:25 400000:50 800000:85 998400:90 1094400:95 1190400:98
timer_rate:50000
timer_slack:80000
use_migration_notif:0
use_sched_load:0
List of /sys/devices/system/cpu/cpu0/cpufreq/:
Code:
affected_cpus:0
cpuinfo_cur_freq:998400
cpuinfo_max_freq:1190400
cpuinfo_min_freq:200000
cpuinfo_transition_latency:0
related_cpus:0 1 2 3
scaling_available_frequencies:200000 400000 533333 800000 998400 1094400 1190400
scaling_available_governors:interactive userspace powersave performance
scaling_cur_freq:998400
scaling_driver:msm
scaling_governor:interactive
scaling_max_freq:1190400
scaling_min_freq:200000
scaling_setspeed:<unsupported>
Content of /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state:
Code:
200000 749380
400000 98359
533333 15319
800000 303392
998400 140371
1094400 29387
1190400 207512
For enabling cpu core switching on/off:
Code:
insmod /system/lib/modules/core_ctl.ko
echo 60 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres
echo 80 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres
Listing of /sys/devices/system/cpu/cpu0/core_ctl:
Code:
additional_cpus:1
busy_down_thres:60 60 60 60
busy_up_thres:80 80 80 80
cpus:CPU0 (Online)
cpus:CPU3 (Offline)
cpus:CPU1 (Offline)
cpus:CPU2 (Offline)
global_state:CPU0
global_state: CPU: 0
global_state: Online: 1
global_state: Rejected: 0
global_state: First CPU: 0
global_state: Busy%: 16
global_state: Is busy: 0
global_state: Avail CPUs: 4
global_state: Need CPUs: 1
global_state:CPU1
global_state: CPU: 1
global_state: Online: 0
global_state: Rejected: 0
global_state: First CPU: 0
global_state: Busy%: 0
global_state: Is busy: 0
global_state:CPU2
global_state: CPU: 2
global_state: Online: 0
global_state: Rejected: 0
global_state: First CPU: 0
global_state: Busy%: 0
global_state: Is busy: 0
global_state:CPU3
global_state: CPU: 3
global_state: Online: 0
global_state: Rejected: 0
global_state: First CPU: 0
global_state: Busy%: 0
global_state: Is busy: 0
max_cpus:4
min_cpus:1
need_cpus:1
offline_delay_ms:100
online_cpus:1
For this to work you need to change these lines in /system/build.prop too:
Code:
#min/max cpu in core control
#ro.core_ctl_min_cpu=2
ro.core_ctl_min_cpu=1
ro.core_ctl_max_cpu=4
#HR add lower freq (else 800000)
#ro.min_freq_4=200000
ro.min_freq_0=200000
ro.qualcomm.perf.cores_online=1
I am running this two weeks now without any problem. I wonder why Samsung didn't do this out of the box.
Enjoy your very good battery life now. (2 hour/day usage it lasts 5-7 days!!!!)
Cheers
EDIT: I added the modified init.qcom.post_boot.sh attachement. To install use these commands on rooted phone:
Code:
adb push init.qcom.post_boot.sh /sdcard
adb shell
su
mount -o remount,rw /system
cd /etc
cp -p init.qcom.post_boot.sh init.qcom.post_boot.sh.ORG
cp /sdcard/init.qcom.post_boot.sh .
chmod 644 init.qcom.post_boot.sh
exit
exit
adb reboot
EDIT2: I forgot the 533330 freq. Right target_loads should be:
Code:
"1 200000:40 400000:50 533333:70 800000:82 998400:90 1094400:95 1190400:99"
This is not a big deal. You will have to change it in the init script yourself if you want it.
Other little changes to script:
Code:
echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres
echo "80 85 90 95" > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres
echo 500 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms #100
echo 3 > /proc/sys/kernel/sched_mostly_idle_nr_run #3
echo 30 > /proc/sys/kernel/sched_mostly_idle_load # 20
echo 5 > /proc/sys/kernel/sched_spill_nr_run #3/10
echo 0 > /proc/sys/kernel/sched_prefer_idle #0
echo 20 > /proc/sys/kernel/sched_small_task #10
echo 60 > /proc/sys/kernel/sched_heavy_task #0
echo 20 > /proc/sys/kernel/sched_init_task_load #15
echo 5 > /proc/sys/kernel/sched_ravg_hist_size #5 nr sample
echo 500 > /proc/sys/kernel/sched_time_avg_ms #1000
echo 2 > /proc/sys/kernel/sched_window_stats_policy #3
echo 1 > /proc/sys/kernel/sched_tunable_scaling #0 1=log 2=lin
echo 80 > /proc/sys/kernel/sched_upmigrate #80
echo 70 > /proc/sys/kernel/sched_downmigrate #70
echo 500000 > /proc/sys/kernel/sched_freq_inc_notify #10485760 (10Ghz) 500 Mhz
echo 500000 > /proc/sys/kernel/sched_freq_dec_notify #10485760
echo 1 > /sys/devices/system/cpu/cpufreq/interactive/use_migration_notif #0
echo 1 > /sys/devices/system/cpu/cpufreq/interactive/use_sched_load #0
echo 95 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load #90
#echo 50000 > /sys/devices/system/cpu/cpufreq/interactive/max_freq_hysteresis #0
optional:
echo 1 > /sys/module/lowmemorykiller/parameters/enable_adaptive_lmk
echo 53059 > /sys/module/lowmemorykiller/parameters/vmpressure_file_min
#GPU settings, default pwr level 2 ( max 0 1 2 min)
echo 2 > /sys/class/kgsl/kgsl-3d0/default_pwrlevel #1
Check you CPU with floating Perf monitor from Chainfire
EDIT 25-feb-2017: Added final /etc/init.qcom.post_boot.sh which runs smooth on stock 6.0.1 ROM
Is this better than CM13's kernel?
Can't we optain the same things running CM and Kernel Auditor? If so, can we configure KA to the same paramiters as your kernel?
Have not tried CM or any other kernel. This is stock Samsung kernel with some script tweaks to optimize multi core cpu usage.
Hello
how to get this mod
thank you
I will add my /etc/init.qcom.post_boot.sh script to the OP.
Just copy your init.qcom.post_boot.sh to init.qcom.post_boot.sh.ORG and use my one.
Don't forget to set 644 permissions to it!
Cheers
tweakradje said:
I will add my /etc/init.qcom.post_boot.sh script to the OP.
Just copy your init.qcom.post_boot.sh to init.qcom.post_boot.sh.ORG and use my one.
Don't forget to set 644 permissions to it!
Cheers
Click to expand...
Click to collapse
Thanks!
some time ago i suposed about this file are bloking the cpu to use the lower freq.
but i eliminate it not edit it.
i will test the file and i will post the feedback
thanks again!
CM12.1 doesn't seem to have core_ctl.ko module included, but the frequency scaling should work.
#Down: It won't work. Kernel modules are built with specific kernel version & config in mind and they ain't gonna work between kernels.
Maybe you can try using Samsungs core_ctl.ko?
@tweakradje
Nice. By the way, I see in your screenshot that you've turned off 3 cores. Wouldn't that lead to higher battery drain when there is a high CPU load? Also there might be some lag. The CPU will be stressed more when has only 1 core enabled instead 4 and there is higher load.
I wonder if we can turn on/off cores based on CPU usage. E.g.: if CPU usage is over 50%, then enable 1 core more, just an example.
By the way, I think this should be under apps/mods section.
Cores are hot plugged using core_ctl.ko module.
If mods want to move, be my guest. No problem. I remember next time.
So!
i'm on j500F with custom rom(miui v8 5.1.1) and custom kernel
and i get this with your init.qcom.post_boot.sh:
se the first 6 screenshots
-only 2 core are active
-cant read cpu stats
-cpu performance are on half of it's power
without any init.qcom.post_boot.sh:
see the last 6 screenshots
Ps. the result are not very obiective becouse your init.qcom.post_boot.sh is for j510FN with stok rom and stok kernel
cant say nothing about battery draining, just it was the same on testing
Thanks!
Thank for the feedback. Looks ok. If you look at my sh file you can easily see what parameters I changed. Use that in your own script to check results. Use your phone for a day and check battery usage.
Cheers
Any results?
I am curious if there are users have tried this solution and what the results are. Please let me know.
tweakradje said:
what the results are.
Click to expand...
Click to collapse
what the results are I'll tell you tomorrow.today i say :good:
I make your init.qcom.post_boot.sh J510FN_CPU_control .zip for installation through TWRP
Min_800back.zip-Back stock init.qcom.post_boot.sh
Maybe someone will be needed
To install this, what do I need to do? Just flash in TWRP?
If you have stock Samsung J510 rom you can flash it from post above.
Else follow adb instructions from OP. Make a copy of your original sh file first.
I have the note 7 hybrid rom, will it work??
Think so. Check /etc/init.qcom.post_boot.sh with "adb shell cat /etc/init.qcom.post_boot.sh" from your PC.
Code:
adb push init.qcom.post_boot.sh /sdcard
adb shell
su
mount -o remount,rw /system
cd /etc
cp -p init.qcom.post_boot.sh init.qcom.post_boot.sh.ORG
cp /sdcard/init.qcom.post_boot.sh .
chmod 644 init.qcom.post_boot.sh
exit
exit
adb reboot
I flashed the file above..the phone actually seems slower
Rather than so much editing, it is not possible to do the same using some sort of app that adjusts CPU Governor?
Hey so I'm fairly new to the development game and so far I've had success with most of the things I've found interest in. But I am having trouble with what I would like to accomplish most. I would really like to root my Galaxy note 8. It's my daily driver and I'd kill for root access. The issue that I'm running into is the only root method for my Verizon Galaxy note 8 is SamFails root method but it's only good for bootloader versions 1-3. My bootloader version is currently sitting at v5 from what I understand. Here's my phone's specs.
System
OS
Version: Oreo 8.0.0
Security patch: 01 February 2019
Build number: R16NW
Tags: release-keys
Bootloader: N950USQS5CSA1
SDK: 26
Font scale: Normal
Time zone: Central Standard Time
Uptime: 01:37:49
Uptime (w/o Deep Sleep): 01:36:59
Radio: N950USQS5CSA1
Miscellaneous
Virtual machine: ART 2.1.0
Version Java Runtime: Android Runtime 0.9
Heap size: 256 MB
SELinux: Permissive
Root: Unavailable
BusyBox: Unavailable
Version ICU: 9.0
Library ICU: 58.2
ICU CLDR: 30.0.3
Version ZLib: null
Version OpenSSL: OpenSSL 1.0.2 (compatible; BoringSSL)
Google Play Services: 15.0.90 (040400-231259764)
Kernel: 4.4.78-14375742
Fingerprint: samsung/greatqltesq/greatqlte:8.0.0/R16NW/N950USQS5CSA1:user/release-keys
Device
Model: SM-N950U
Codename: greatqlte
Manufacturer: samsung
Fingerprint scanner: Present
Display
Type: N/A
Resolution: 2220 x 1080
Frame rate: 60.000004 Hz
Density: 420 dp
Format: N/A
sRGB: Not supported
HDR: Not supported
HDR
Type: HDR10
Average luminance: 200.0
Maximum luminance: 540.0
Minimum luminance: 0.2
Identifiers
Processor
CPU
Model: Qualcomm MSM8998
Name: Snapdragon 835
Architecture: Kyro 280
DSP: Hexagon 682
Process: 10 nm
Cores: 8
Supported ABI: armeabi-v7a armeabi arm64-v8a
Governor: interactive
Frequency range: 300 MHz - 1900 MHz
Usage: 100 %
Based off that info is there anything that I can do to possibly change the bootloader version to 1-3? Please I've done what research I could do with the knowledge that I've obtained thus far and I'm stuck.
So by research did you look through the various threads here regarding rooting?
Kidd kuddi said:
Hey so I'm fairly new to the development game and so far I've had success with most of the things I've found interest in. But I am having trouble with what I would like to accomplish most. I would really like to root my Galaxy note 8. It's my daily driver and I'd kill for root access. The issue that I'm running into is the only root method for my Verizon Galaxy note 8 is SamFails root method but it's only good for bootloader versions 1-3. My bootloader version is currently sitting at v5 from what I understand. Here's my phone's specs.
System
OS
Version: Oreo 8.0.0
Security patch: 01 February 2019
Build number: R16NW
Tags: release-keys
Bootloader: N950USQS5CSA1
SDK: 26
Font scale: Normal
Time zone: Central Standard Time
Uptime: 01:37:49
Uptime (w/o Deep Sleep): 01:36:59
Radio: N950USQS5CSA1
Miscellaneous
Virtual machine: ART 2.1.0
Version Java Runtime: Android Runtime 0.9
Heap size: 256 MB
SELinux: Permissive
Root: Unavailable
BusyBox: Unavailable
Version ICU: 9.0
Library ICU: 58.2
ICU CLDR: 30.0.3
Version ZLib: null
Version OpenSSL: OpenSSL 1.0.2 (compatible; BoringSSL)
Google Play Services: 15.0.90 (040400-231259764)
Kernel: 4.4.78-14375742
Fingerprint: samsung/greatqltesq/greatqlte:8.0.0/R16NW/N950USQS5CSA1:user/release-keys
Device
Model: SM-N950U
Codename: greatqlte
Manufacturer: samsung
Fingerprint scanner: Present
Display
Type: N/A
Resolution: 2220 x 1080
Frame rate: 60.000004 Hz
Density: 420 dp
Format: N/A
sRGB: Not supported
HDR: Not supported
HDR
Type: HDR10
Average luminance: 200.0
Maximum luminance: 540.0
Minimum luminance: 0.2
Identifiers
Processor
CPU
Model: Qualcomm MSM8998
Name: Snapdragon 835
Architecture: Kyro 280
DSP: Hexagon 682
Process: 10 nm
Cores: 8
Supported ABI: armeabi-v7a armeabi arm64-v8a
Governor: interactive
Frequency range: 300 MHz - 1900 MHz
Usage: 100 %
Based off that info is there anything that I can do to possibly change the bootloader version to 1-3? Please I've done what research I could do with the knowledge that I've obtained thus far and I'm stuck.
Click to expand...
Click to collapse
You're on bootloader version 5 and there's nothing you can do because there's no possibility of downgrading your bootloader version back to 1 - 3 and there's no root available at this point in time.