<@center><b><#selectbg_g>jolla-kernel 체인지로그</#></b>

<b><#selectbg_g>jollaman999 jolla-kernel 개발자</#></b>
<b><#selectbg_g>https://github.com/jollaman999</#></b>

<b><#selectbg_g>[joan-v2.2]</#></b></@>
== 커널 ==
>> Oreo <<
- 리눅스 패치들 적용: 4.4.167, 4.4.168
- 최신 퀄컴 msm-4.4 패치들 적용
- 최신 퀄컴 무선랜 패치들 적용

== 리커버리 ==
- jolla_kernel_joan_v2.2 사용


<b><#selectbg_g>[joan-v2.1]</#></b>
== 커널 ==
>> Oreo <<
- 게임 성능에 최적화
  - msm: kgsl: IRQ 와 작업 스레드를 performance critical 로 마크
  - msm: kgsl: 사용자가 kgsl 전원 제어 제한 활성화를 선택 할 수 있도록 함
  (GPU 온도 제한을 활성화/비활성화 합니다. 비활성화 되어있을시 게임 성능이 매우 부드러워집니다.
  하지만 장치가 더 뜨거워 집니다.)
  - cpu_input_boost, kgsl: GPU 주파수가 342Mhz 에 다다르면 CPU 와 devfreq 부스트

== 리커버리 ==
- jolla_kernel_joan_v2.1 사용


<b><#selectbg_g>[joan-v2.0]</#></b>
== Kernel ==
>> 커널 <<
- 베터리와 성능에 맞게 조절
  - cpu_input_boost: 빅 클러스터 최소 주파수 옵션 제거
  - cpu_input_boost: 리틀 클러스터 최소 주파수 옵션 제거
  - LGE hswap 기능 비활성화 (lowmemory killer reclaim with zram)
  - lowmemory killer: adaptive LMK 비활성화
  - lowmemory killer: ANDROID_LMK_ADJ_RBTREE 기능 추가
  - 변경사항 취소 "msm: mdss: 새로운 프레임이 준비 될때 cpubw devfreq 부스트"
  - 변경사항 취소 "msm: mdss: 새로운 프레임이 준비 될때 CPU 부스트"
  - input boost 값들을 스톡에 따라 조정
- Linux 4.4.166 까지 리눅스 업데이트 적용
- joan 21o 버젼 사운드를 위해 msm8998 디바이스 트리 수정
- ASoC: msm: qdsp6v2: V40 커널 소스로 부터 LGE DTS 지원 추가

== 리커버리 ==
- jolla_kernel_joan_v2.0 사용


<b><#selectbg_g>[joan-v1.2]</#></b>
== 커널 ==
>> Oreo <<
- Linux 4.4.165 까지 리눅스 업데이트 적용.
- sovc, dynamic fsync 드라이버 suspend 체크 부분 수정
- 깨어있는 CPU에 작업을 할당하는 전원 절약 기술 기본 활성화
- arp: arp_project ARP Spoofing 방지 기술 구현
(졸업 프로젝트로 작업했던 게이트웨이의 변경을 막는 ARP Spoofing 방지 기술입니다.
공개 Wi-Fi 이용시 외부 사용자가 공유기로 위장하여 사용자의 인터넷 흐름을 보는 공격에 대해 방지할 수 있습니다.
이미 위장된 상태에서의 방어는 ARP 구조상 어렵습니다.
ARP Spoofing 공격에 대해 검색해 보세요.)

== 리커버리 ==
- jolla_kernel_joan_v1.2 사용


<b><#selectbg_g>[joan-v1.1]</#></b>
== 커널 ==
>> Oreo <<
- mdss KCAL 지원 (화면 RGB 값, 감마 값 등 조절. Kernel Adiutor 앱을 이용하세요.)
- 모든 입력 드라이버에 부스트가 연결 되어 있던 것을 터치 스크린에만 적용되도록 수정
- dynamic fsync 외에 sync 가 추가적으로 수행되는 부분 수정
- LGE의 백그라운드 sync 기능을 dynamic fsync에 구현 (sync 가 수행되는 동안 지연이 생기지 않게 함.)
- Simple LMK 를 기본 LMK 로 변경 (Simple LMK 멀티태스킹 테스트시 어플들이 쉽게 종료됨.)
- westwood를 기본 TCP 혼잡 제어 알고리즘으로 사용
- DSD 음원 재생시 이어폰 출력이 안되는 현상 수정

== 리커버리 ==
- jolla_kernel_joan_v1.1 사용

== AIO ==
- kcal_fix_yellow 지원 추가 (노란 액정 화면 개선)
- Android 버젼 표기 수정 (8.1.x -> 8.x.x)
- Adaptive LMK 활성화 및 더 많은 어플들이 동시에 실행 가능하도록 LMK 값 조정


<b><#selectbg_g>[joan-v1.0]</#></b>
== 커널 ==
>> Oreo <<
- 첫 릴리즈.
- Linaro gcc 6.4.1 2018.05 로 빌드
- Screen Off Volume Control 추가. (화면이 꺼진 동안 터치스크린 제스쳐들로 음악의 볼륨과 트랙을 제어합니다. 음악이 재생중 일때만 동작합니다.)
- 빠른 앱실행을 위해 bfq io 스케줄러 사용.
- 높은 미리 읽기(read-ahead) 값 사용 (2048kb).
- 안드로이드 기본 LMK 대신에 Simple LMK 사용 (더 나은 메모리 사용량 제공.)
- 기본 CPU 부스트를 sultanxda 님의 CPU input boost 로 교체 (더 부드러운 스크롤링과 게임 성능 향상. 빠른 앱 실행.)
- Linux 4.4.163 까지 리눅스 업데이트 적용.
- 퀄컴 최신 업데이트들 적용.
- 퀄컴 최신 무선랜 드라이버 사용.
- Dynamic fsync 지원. (화면이 켜진동안 쓰기 동기화를 하지 않고 화면이 꺼지면 동기화를 수행. 쓰기 부하 감소.)
- 등등...

== 리커버리 ==
- jolla_kernel_joan_v1.0 사용
- Lineage 15.0 과 TWRP 리커버리 기반.


<b><#selectbg_g>[Thanks to..]</#></b>
The Linux Kernel Archives : https://www.kernel.org/
LineageOS : https://github.com/LineageOS
And all of commited in their sources & all of xda developers

<#selectbg_g>->></#> 제 jolla-kernel 을 선택해 주셔서 감사합니다!! :)
