Commit Graph

649404 Commits

Author SHA1 Message Date
Oliver Neukum
ea43f0020f Input: ff-memless - kill timer in destroy() (CVE-2019-19524)
PD#SWPL-26439

commit fa3a5a1880 upstream.

No timer must be left running when the device goes away.

Change-Id: I1631047c0b6a67d98b6d422347bc21513ec5b008
Signed-off-by: Oliver Neukum <oneukum@suse.com>
Reported-and-tested-by: syzbot+b6c55daa701fc389e286@syzkaller.appspotmail.com
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/1573726121.17351.3.camel@suse.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-12-17 17:23:20 +09:00
Hillf Danton
587b49c0e1 HID: hiddev: avoid opening a disconnected device (CVE-2019-19527)
PD#SWPL-26439

commit 9c09b214f3 upstream.

syzbot found the following crash on:

HEAD commit:    e96407b4 usb-fuzzer: main usb gadget fuzzer driver
git tree:       https://github.com/google/kasan.git usb-fuzzer
console output: https://syzkaller.appspot.com/x/log.txt?x=147ac20c600000
kernel config:  https://syzkaller.appspot.com/x/.config?x=792eb47789f57810
dashboard link: https://syzkaller.appspot.com/bug?extid=62a1e04fd3ec2abf099e
compiler:       gcc (GCC) 9.0.0 20181231 (experimental)

==================================================================
BUG: KASAN: use-after-free in __lock_acquire+0x302a/0x3b50
kernel/locking/lockdep.c:3753
Read of size 8 at addr ffff8881cf591a08 by task syz-executor.1/26260

CPU: 1 PID: 26260 Comm: syz-executor.1 Not tainted 5.3.0-rc2+ #24
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
Call Trace:
  __dump_stack lib/dump_stack.c:77 [inline]
  dump_stack+0xca/0x13e lib/dump_stack.c:113
  print_address_description+0x6a/0x32c mm/kasan/report.c:351
  __kasan_report.cold+0x1a/0x33 mm/kasan/report.c:482
  kasan_report+0xe/0x12 mm/kasan/common.c:612
  __lock_acquire+0x302a/0x3b50 kernel/locking/lockdep.c:3753
  lock_acquire+0x127/0x320 kernel/locking/lockdep.c:4412
  __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
  _raw_spin_lock_irqsave+0x32/0x50 kernel/locking/spinlock.c:159
  hiddev_release+0x82/0x520 drivers/hid/usbhid/hiddev.c:221
  __fput+0x2d7/0x840 fs/file_table.c:280
  task_work_run+0x13f/0x1c0 kernel/task_work.c:113
  exit_task_work include/linux/task_work.h:22 [inline]
  do_exit+0x8ef/0x2c50 kernel/exit.c:878
  do_group_exit+0x125/0x340 kernel/exit.c:982
  get_signal+0x466/0x23d0 kernel/signal.c:2728
  do_signal+0x88/0x14e0 arch/x86/kernel/signal.c:815
  exit_to_usermode_loop+0x1a2/0x200 arch/x86/entry/common.c:159
  prepare_exit_to_usermode arch/x86/entry/common.c:194 [inline]
  syscall_return_slowpath arch/x86/entry/common.c:274 [inline]
  do_syscall_64+0x45f/0x580 arch/x86/entry/common.c:299
  entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x459829
Code: fd b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7
48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff
ff 0f 83 cb b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007f75b2a6ccf8 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: fffffffffffffe00 RBX: 000000000075c078 RCX: 0000000000459829
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 000000000075c078
RBP: 000000000075c070 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 000000000075c07c
R13: 00007ffcdfe1023f R14: 00007f75b2a6d9c0 R15: 000000000075c07c

Allocated by task 104:
  save_stack+0x1b/0x80 mm/kasan/common.c:69
  set_track mm/kasan/common.c:77 [inline]
  __kasan_kmalloc mm/kasan/common.c:487 [inline]
  __kasan_kmalloc.constprop.0+0xbf/0xd0 mm/kasan/common.c:460
  kmalloc include/linux/slab.h:552 [inline]
  kzalloc include/linux/slab.h:748 [inline]
  hiddev_connect+0x242/0x5b0 drivers/hid/usbhid/hiddev.c:900
  hid_connect+0x239/0xbb0 drivers/hid/hid-core.c:1882
  hid_hw_start drivers/hid/hid-core.c:1981 [inline]
  hid_hw_start+0xa2/0x130 drivers/hid/hid-core.c:1972
  appleir_probe+0x13e/0x1a0 drivers/hid/hid-appleir.c:308
  hid_device_probe+0x2be/0x3f0 drivers/hid/hid-core.c:2209
  really_probe+0x281/0x650 drivers/base/dd.c:548
  driver_probe_device+0x101/0x1b0 drivers/base/dd.c:709
  __device_attach_driver+0x1c2/0x220 drivers/base/dd.c:816
  bus_for_each_drv+0x15c/0x1e0 drivers/base/bus.c:454
  __device_attach+0x217/0x360 drivers/base/dd.c:882
  bus_probe_device+0x1e4/0x290 drivers/base/bus.c:514
  device_add+0xae6/0x16f0 drivers/base/core.c:2114
  hid_add_device+0x33c/0x990 drivers/hid/hid-core.c:2365
  usbhid_probe+0xa81/0xfa0 drivers/hid/usbhid/hid-core.c:1386
  usb_probe_interface+0x305/0x7a0 drivers/usb/core/driver.c:361
  really_probe+0x281/0x650 drivers/base/dd.c:548
  driver_probe_device+0x101/0x1b0 drivers/base/dd.c:709
  __device_attach_driver+0x1c2/0x220 drivers/base/dd.c:816
  bus_for_each_drv+0x15c/0x1e0 drivers/base/bus.c:454
  __device_attach+0x217/0x360 drivers/base/dd.c:882
  bus_probe_device+0x1e4/0x290 drivers/base/bus.c:514
  device_add+0xae6/0x16f0 drivers/base/core.c:2114
  usb_set_configuration+0xdf6/0x1670 drivers/usb/core/message.c:2023
  generic_probe+0x9d/0xd5 drivers/usb/core/generic.c:210
  usb_probe_device+0x99/0x100 drivers/usb/core/driver.c:266
  really_probe+0x281/0x650 drivers/base/dd.c:548
  driver_probe_device+0x101/0x1b0 drivers/base/dd.c:709
  __device_attach_driver+0x1c2/0x220 drivers/base/dd.c:816
  bus_for_each_drv+0x15c/0x1e0 drivers/base/bus.c:454
  __device_attach+0x217/0x360 drivers/base/dd.c:882
  bus_probe_device+0x1e4/0x290 drivers/base/bus.c:514
  device_add+0xae6/0x16f0 drivers/base/core.c:2114
  usb_new_device.cold+0x6a4/0xe79 drivers/usb/core/hub.c:2536
  hub_port_connect drivers/usb/core/hub.c:5098 [inline]
  hub_port_connect_change drivers/usb/core/hub.c:5213 [inline]
  port_event drivers/usb/core/hub.c:5359 [inline]
  hub_event+0x1b5c/0x3640 drivers/usb/core/hub.c:5441
  process_one_work+0x92b/0x1530 kernel/workqueue.c:2269
  worker_thread+0x96/0xe20 kernel/workqueue.c:2415
  kthread+0x318/0x420 kernel/kthread.c:255
  ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:352

Freed by task 104:
  save_stack+0x1b/0x80 mm/kasan/common.c:69
  set_track mm/kasan/common.c:77 [inline]
  __kasan_slab_free+0x130/0x180 mm/kasan/common.c:449
  slab_free_hook mm/slub.c:1423 [inline]
  slab_free_freelist_hook mm/slub.c:1470 [inline]
  slab_free mm/slub.c:3012 [inline]
  kfree+0xe4/0x2f0 mm/slub.c:3953
  hiddev_connect.cold+0x45/0x5c drivers/hid/usbhid/hiddev.c:914
  hid_connect+0x239/0xbb0 drivers/hid/hid-core.c:1882
  hid_hw_start drivers/hid/hid-core.c:1981 [inline]
  hid_hw_start+0xa2/0x130 drivers/hid/hid-core.c:1972
  appleir_probe+0x13e/0x1a0 drivers/hid/hid-appleir.c:308
  hid_device_probe+0x2be/0x3f0 drivers/hid/hid-core.c:2209
  really_probe+0x281/0x650 drivers/base/dd.c:548
  driver_probe_device+0x101/0x1b0 drivers/base/dd.c:709
  __device_attach_driver+0x1c2/0x220 drivers/base/dd.c:816
  bus_for_each_drv+0x15c/0x1e0 drivers/base/bus.c:454
  __device_attach+0x217/0x360 drivers/base/dd.c:882
  bus_probe_device+0x1e4/0x290 drivers/base/bus.c:514
  device_add+0xae6/0x16f0 drivers/base/core.c:2114
  hid_add_device+0x33c/0x990 drivers/hid/hid-core.c:2365
  usbhid_probe+0xa81/0xfa0 drivers/hid/usbhid/hid-core.c:1386
  usb_probe_interface+0x305/0x7a0 drivers/usb/core/driver.c:361
  really_probe+0x281/0x650 drivers/base/dd.c:548
  driver_probe_device+0x101/0x1b0 drivers/base/dd.c:709
  __device_attach_driver+0x1c2/0x220 drivers/base/dd.c:816
  bus_for_each_drv+0x15c/0x1e0 drivers/base/bus.c:454
  __device_attach+0x217/0x360 drivers/base/dd.c:882
  bus_probe_device+0x1e4/0x290 drivers/base/bus.c:514
  device_add+0xae6/0x16f0 drivers/base/core.c:2114
  usb_set_configuration+0xdf6/0x1670 drivers/usb/core/message.c:2023
  generic_probe+0x9d/0xd5 drivers/usb/core/generic.c:210
  usb_probe_device+0x99/0x100 drivers/usb/core/driver.c:266
  really_probe+0x281/0x650 drivers/base/dd.c:548
  driver_probe_device+0x101/0x1b0 drivers/base/dd.c:709
  __device_attach_driver+0x1c2/0x220 drivers/base/dd.c:816
  bus_for_each_drv+0x15c/0x1e0 drivers/base/bus.c:454
  __device_attach+0x217/0x360 drivers/base/dd.c:882
  bus_probe_device+0x1e4/0x290 drivers/base/bus.c:514
  device_add+0xae6/0x16f0 drivers/base/core.c:2114
  usb_new_device.cold+0x6a4/0xe79 drivers/usb/core/hub.c:2536
  hub_port_connect drivers/usb/core/hub.c:5098 [inline]
  hub_port_connect_change drivers/usb/core/hub.c:5213 [inline]
  port_event drivers/usb/core/hub.c:5359 [inline]
  hub_event+0x1b5c/0x3640 drivers/usb/core/hub.c:5441
  process_one_work+0x92b/0x1530 kernel/workqueue.c:2269
  worker_thread+0x96/0xe20 kernel/workqueue.c:2415
  kthread+0x318/0x420 kernel/kthread.c:255
  ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:352

The buggy address belongs to the object at ffff8881cf591900
  which belongs to the cache kmalloc-512 of size 512
The buggy address is located 264 bytes inside of
  512-byte region [ffff8881cf591900, ffff8881cf591b00)
The buggy address belongs to the page:
page:ffffea00073d6400 refcount:1 mapcount:0 mapping:ffff8881da002500
index:0x0 compound_mapcount: 0
flags: 0x200000000010200(slab|head)
raw: 0200000000010200 0000000000000000 0000000100000001 ffff8881da002500
raw: 0000000000000000 00000000000c000c 00000001ffffffff 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
  ffff8881cf591900: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
  ffff8881cf591980: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
> ffff8881cf591a00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                       ^
  ffff8881cf591a80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
  ffff8881cf591b00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
==================================================================

In order to avoid opening a disconnected device, we need to check exist
again after acquiring the existance lock, and bail out if necessary.

Change-Id: Id7fe26cfda36a8a4f2879bbde5a1b82fbaf01b62
Reported-by: syzbot <syzbot+62a1e04fd3ec2abf099e@syzkaller.appspotmail.com>
Cc: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: Hillf Danton <hdanton@sina.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-12-17 17:23:20 +09:00
Pengguang Zhu
e688df6bfa tee: add api tee_unprotect_mem [1/1]
PD#TV-17133

Problem:
need API to unprotect mem for codec and so on

Solution:
add api tee_unprotect_mem

Verify:
Android Q + TM2

Test: manual
Change-Id: I9dc205e209988297724c9461254c028e779ae1eb
Signed-off-by: Pengguang Zhu <pengguang.zhu@amlogic.com>
2020-12-17 17:23:20 +09:00
Pengguang Zhu
603cf6dccd tee: add api tee_protect_mem_by_type [1/1]
PD#SWPL-16829

Problem:
need API to protect mem for gpu and so on

Solution:
add api tee_protect_mem_by_type

Verify:
Android Q + TL1

Test: manual
wq
Signed-off-by: Pengguang Zhu <pengguang.zhu@amlogic.com>

Change-Id: Ibf420e1d4845c1020ae2ff91629f6e31a32a7bc3
Signed-off-by: changqing.gao <changqing.gao@amlogic.com>
2020-12-17 17:23:20 +09:00
Pengguang Zhu
1c1328208a tee: add api tee_protect_tvp_mem [1/1]
PD#SWPL-18795

Problem:
need API to protect mem for tvp

Solution:
add api tee_protect_tvp_mem

Verify:
Android Q + franklin

Test: manual

Change-Id: I46daec70a843524789aa63b32ef5e43111b65c66
Signed-off-by: Pengguang Zhu <pengguang.zhu@amlogic.com>
2020-12-17 17:23:20 +09:00
zhiqiang liang
11d6296451 power: add the probe done flag for DOS power control compatibilty [1/1]
PD#SWPL-17563

Problem:
DOS should be compatible forward previous version in the same chip

Solution:
add the probe done flag

Verify:
AC200

Change-Id: Id8696147646d6ecb1077acd0907650987823dea4
Signed-off-by: zhiqiang liang <zhiqiang.liang@amlogic.com>
2020-12-17 17:23:20 +09:00
zhiqiang liang
8ea51067ea power: add empty function for compile error [1/1]
PD#SWPL-17563

Problem:
add empty function for compile error

Solution:
add empty function for compile error

Verify:
T962E2

Change-Id: Iff8310ded23e2b3657df8434b1dbde7398e66142
Signed-off-by: zhiqiang liang <zhiqiang.liang@amlogic.com>
2020-12-17 17:23:20 +09:00
zhiqiang liang
0d3082b26c power: modify smarthome deconfig for power domain control API [1/1]
PD#SWPL-17563

Problem:
modify smarthome deconfig for power domain control API

Solution:
modify smarthome deconfig for power domain control API

Verify:
T962E2

Change-Id: I335eeba045ef26253f33b5d13178b0625b361deb
Signed-off-by: zhiqiang liang <zhiqiang.liang@amlogic.com>
2020-12-17 17:23:20 +09:00
zhiqiang liang
7b1af7284f power: add the power domain control API [1/1]
PD#SWPL-17563

Problem:
add power domain control API for TM2 and SM1

Solution:
add power domain control API for TM2 and SM1

Verify:
T962E2

Change-Id: I2587b2b554281ee7c81d77e8978a2640e5f73be5
Signed-off-by: zhiqiang liang <zhiqiang.liang@amlogic.com>
Signed-off-by: chunlong.cao <chunlong.cao@amlogic.com>
2020-12-17 17:23:20 +09:00
Jun Zhang
bee0d8b36b gdc/ge2d: no distinguish ion while address config [1/1]
PD#SWPL-28012

Problem:
 ion buf not correctly attached

Solution:
 ion buf treat the same as dmabuf

Verify:
 local

Change-Id: I5b4b4aad26b5c9aff224d100ad94342570c397b0
Signed-off-by: Jun Zhang <jun.zhang@amlogic.com>
Signed-off-by: Cao Jian <jian.cao@amlogic.com>
2020-12-17 17:23:19 +09:00
Cao Jian
d437098476 ppmgr: add sys node for secure memory [3/3]
PD#SWPL-26044

Problem:
secure memory is not enabled

Solution:
add sys node for debug

Verify:
ac214

Change-Id: Ibff317faf467d9f5d0167ec58a066edeb5157f8c
Signed-off-by: Cao Jian <jian.cao@amlogic.com>
2020-12-17 17:23:19 +09:00
Cao Jian
9da7abdfbf ppmgr: add support for secure memory [2/3]
PD#SWPL-26044

Problem:
secure memory is not enabled

Solution:
add support for secure memory

Verify:
ac214

Change-Id: If93577beba551b4495cd4eaa72c46e8dee8f866f
Signed-off-by: Cao Jian <jian.cao@amlogic.com>
Signed-off-by: chunlong.cao <chunlong.cao@amlogic.com>
2020-12-17 17:23:19 +09:00
Cao Jian
d65c39a278 ge2d: add secure mode switch [1/3]
PD#SWPL-26044

Problem:
GE2D needs to access secure buffer

Solution:
add secure mode switch

Verify:
ac214

Change-Id: I724c5b8c9af049ac9e8432bb9bae850c484fe8f4
Signed-off-by: Cao Jian <jian.cao@amlogic.com>
Signed-off-by: chunlong.cao <chunlong.cao@amlogic.com>
2020-12-17 17:23:19 +09:00
Cao Jian
db2dba6960 ge2d: add custom matrix support [1/1]
PD#SWPL-25894

Problem:
GE2D Support color space convert

Solution:
add this support

Verify:
w400

Change-Id: I0d47c3bb7734fcc6246d7e01cf8b6902ff2a5c15
Signed-off-by: Cao Jian <jian.cao@amlogic.com>
2020-12-17 17:23:19 +09:00
Cao Jian
8576733d66 ge2d: add the power domain control [1/1]
PD#SWPL-17634

Problem:
add power domain control

Solution:
add power domain control

Verify:
T962E2 AB319

Change-Id: I1c0f8eef091a57b924c0cb431eb82c290ff56d35
Signed-off-by: Cao Jian <jian.cao@amlogic.com>
2020-12-17 17:23:19 +09:00
Evoke Zhang
6d24fb3757 lcd: support more init_level [2/2]
PD#SWPL-27213

Problem:
need different lcd init_level policy

Solution:
support more init_level

Verify:
x301

Change-Id: I28d39d50066494fc0aed640fe3c93986f6fd394e
Signed-off-by: Evoke Zhang <evoke.zhang@amlogic.com>
2020-12-17 17:23:19 +09:00
shaochan.liu
b0a1a4c8d1 lcd: backlight: Kasan scan at power on, appear NULL pointer [1/1]
PD#SWPL-24751

Problem:
1, Kasan scan at power on, appear NULL pointer

Solution:
1, add NULL pointer check

Verify:
T972

Change-Id: I1201c349ef3f5e38d481dfc6004b167fe9f59fbb
Signed-off-by: shaochan.liu <shaochan.liu@amlogic.com>
2020-12-17 17:23:19 +09:00
keke.li
146a47d573 camera: support dma handle for ov5640 [1/1]
PD#SWPL-25943

Problem:
need to use video buffer in ge2d driver

Solution:
add export buffer interface

Verify:
u202

Change-Id: I3d104e188b4fe0b493b26aa52f53eb476ce74103
Signed-off-by: Keke Li <keke.li@amlogic.com>
2020-12-17 17:23:19 +09:00
Weiguang Ruan
f7f2f8b5aa WiFi: fix sdio wifi not detected error [1/1]
PD#SWPL-26390

Problem:
1. WiFi Module might not be ready for card scan.

Solution:
1. Optimize the position of delay in the code.

Verify:
W400

Change-Id: Ia6c102bda13c20c8480c43c4635e191e45b9eb33
Signed-off-by: Weiguang Ruan <Weiguang.ruan@amlogic.com>
2020-12-17 17:23:11 +09:00
Qiang Li
69260ff6d1 mmc: add ddr parameter partition char device. [1/1]
PD#SWPL-21265

Problem:
kernel can erase ddr parameter partiion
data

Solution:
add ddr parameter partition char device

Verify:
sm1

Change-Id: I9c906f2e9bebee1f8489bed93ddbda94dccdb270
Signed-off-by: Qiang Li <qiang.li@amlogic.com>
Signed-off-by: chunlong.cao <chunlong.cao@amlogic.com>
2020-12-17 17:21:07 +09:00
shaochan.liu
cce4fdc858 lcd: need add vbyone&lvds prbs both test [2/2]
PD#SWPL-25954

Problem:
1, need add vbyone&lvds prbs both test

Solution:
1, add vbyone&lvds prbs both test
2, support only test vx1 or lvds

Verify:
tl1_x301

Change-Id: Iabfa7ba58e323fd8172af6f281dd4c88c01143f5
Signed-off-by: shaochan.liu <shaochan.liu@amlogic.com>
2020-12-17 17:21:06 +09:00
Evoke Zhang
7d8b199666 lcd: add clk frac shift support [2/2]
PD#SWPL-17480

Problem:
sometime there need shift a little for frac

Solution:
add clk frac shift support

Verify:
x301

Change-Id: I937cca1b07f20d95144d1b85addc2cac775d1aac
Signed-off-by: Evoke Zhang <evoke.zhang@amlogic.com>
2020-12-17 17:21:06 +09:00
Tao Zeng
6bba961370 mm: fix NULL pointer exception when dump vmalloc info [1/1]
PD#SWPL-28320

Problem:
Kernel may crash when dump vmalloc info

Solution:
skip invalid vm_struct

Verify:
tm2

Signed-off-by: Tao Zeng <tao.zeng@amlogic.com>
Change-Id: Iaa58d54c60441c3b2b3a9559ad3340cf339e961c
Signed-off-by: Tao Zeng <tao.zeng@amlogic.com>
2020-12-17 17:21:06 +09:00
Jihong Sui
979d24e3ed DI: KASAN: add protect for de_post_process [1/1]
PD#SWPL-27905

Problem:
use-after-free in config_canvas_idx

Solution:
add protect for de_post_process

Verify:
TM2

Change-Id: If0dcdf8ff94c8cc31790b6abd7414320a1d07160
Signed-off-by: sandy luo <sandy.luo@amlogic.com>
2020-12-17 17:21:06 +09:00
Zhuo Wang
b829e96364 ethernet: fix exphy resume delay not work [1/1]
PD#SWPL-27008

Problem:
exphy setting will del

Solution:
set delay once more

Verify:
verify on sm1 202 customer's board

Change-Id: I47bb705bd13f17320f095589d1a08f89635b76b1
Signed-off-by: Zhuo Wang <zhuo.wang@amlogic.com>
2020-12-17 17:21:06 +09:00
Cheng Wang
c58520736c amvecm: fix osd+video saturation ioctrl set error [1/1]
PD#SWPL-26405

Problem:
UI saturation can't adjusted

Solution:
sat_hue_post used wrong parameter

Verify:
on AC200

Signed-off-by: Cheng Wang <cheng.wang@amlogic.com>
Change-Id: I7a1391483e2241e84826a19ca339eac293f1025c
2020-12-17 17:21:06 +09:00
Cao Jian
fc96e0f08f ge2d: fix ge2d crash when running burn-in test [1/1]
PD#SWPL-28030

Problem:
there is risk when trying to destroy
the context being processed.

Solution:
add mutex to avoid the risk

Verify:
SM1

Change-Id: I6b85b4eb54f3b185613f37e5f83ef54663ddb01f
Signed-off-by: Cao Jian <jian.cao@amlogic.com>
2020-12-17 17:21:06 +09:00
Pengcheng Chen
f00ffd42a9 osd: fix osd bootanimation shift [2/2]
PD#SWPL-19862

Problem:
osd regs init are different with meson-hwc setting

Solution:
osd regs init are different with meson-hwc setting

Verify:
franklin

Change-Id: Ic9f19a82859e1e18e57084935873b10057436e3b
Signed-off-by: Pengcheng Chen <pengcheng.chen@amlogic.com>
2020-12-17 17:21:06 +09:00
Tao Zeng
41363d31d9 mm: fix wrong cpu usage information after vmap changed [1/1]
PD#SWPL-18250

Problem:
After fix vmap stack error, cpu usage from top is incorrect.

Solution:
fix sp not right issue.

Verify:
ampere

Change-Id: I935f98758ba6d13c608ff2cfe2428df6f552d05a
Signed-off-by: Tao Zeng <tao.zeng@amlogic.com>
2020-12-17 17:21:05 +09:00
chunlong.cao
8058839d8a [Touch][A311D]support focaltech touch panel:focaltech FTS_5726
PD#SWPL-27361
Problem:
	firmware ignoreed;support focaltech touch panel:focaltech FTS_5726

Solution:
	add focaltech FTS_5726 driver

Verify:
	on google newman platform

Signed-off-by: chunlong.cao <chunlong.cao@amlogic.com>
2020-12-17 17:21:05 +09:00
chunlong.cao
cfc696f078 [Touch][A311D]support focaltech touch panel:focaltech FTS_5726
PD#SWPL-27361
Problem:
	support focaltech touch panel:focaltech FTS_5726

Solution:
	add focaltech FTS_5726 driver

Verify:
	on google newman platform

Signed-off-by: chunlong.cao <chunlong.cao@amlogic.com>
Change-Id: I79ff49e062233c3c7202796be03f79f7fc32e52f
2020-12-17 17:20:10 +09:00
shaochan.liu
c0e6f5cd63 bl: bl_extern: add i2c_lp8556 support 12bit data [2/2]
PD#SWPL-27180

Problem:
1, need add bl_extern i2c_lp8556 12bit data support

Solution:
1, add bl_extern i2c_lp8556 12bit data support
2, optimized code, fix copy err and add null pointer check

Verify:
a311d_w400

Change-Id: Ifeb25e5b434233ae9dd088899e9e1e849303d3d9
Signed-off-by: shaochan.liu <shaochan.liu@amlogic.com>
Signed-off-by: chunlong.cao <chunlong.cao@amlogic.com>
2020-12-17 17:19:07 +09:00
chunlong.cao
f5c5164ebf PD#SWPL-27594
Problem:
	There is no t931 platform config for google newman

Solution:
	add t931 platform config for google newman

Verify:
	on google newman platform

Signed-off-by: chunlong.cao <chunlong.cao@amlogic.com>
Change-Id: Ia7cfff4c6b6ce0415991416943a8b0e510ef4548
2020-12-17 17:19:07 +09:00
Yong Qin
e5617679de cec: cec a bus busy cause system hold [1/1]
PD#SWPL-23547

Problem:
when spin lock, recursive call will cause system hold.

Solution:
void recussive calling.

Verify:
P21AS-S905X

Signed-off-by: Yong Qin <yong.qin@amlogic.com>
Change-Id: I3616aa198f73a27396ac672b57b729ea30215476
2020-12-17 17:19:06 +09:00
hang cheng
bec6d729c9 hdmitx: avoid ddc filter reset affect edid reading [1/1]
PD#SWPL-24627

Problem:
i2c may hangup when reading edid during system power up.
it's caused by ddc filter reset

Solution:
move ddc filter reset to place which no ddc operation

Verify:
S805Y(P244)

Change-Id: I624dee1ae0ff338b7d6a357fad4b98337378a304
Signed-off-by: hang cheng <hang.cheng@amlogic.com>
2020-12-17 17:19:06 +09:00
Zhengrong.Zhu
f4e33f3a31 hdmitx: Connect with Hisense HZ55A65 TV, It will lost resolution [1/1]
PD#SWPL-19410

Problem:
Connect with Hisense HZ55A65 TV, It will lost resolution

Solution:
Modify the code using read edid

Verify:
verify on the board of U212

Change-Id: Iaa2692508db6bcde07578e027e23bbf52399b25c
Signed-off-by: Zhengrong Zhu <zhengrong.zhu@amlogic.com>
2020-12-17 17:19:06 +09:00
MingLiang Dong
0b6675dbc7 hdr: sdr2hdr convert with 300nit for reference [1/1]
PD#SWPL-23538

Problem:
osd sdr2hdr is brighter

Solution:
osd sdr2hdr reference luminance too high

Verify:
verify on G12A

Change-Id: I3205c6b6d2fdaf02c498643c07b136ad33d2cea8
Signed-off-by: MingLiang Dong <mingliang.dong@amlogic.com>
2020-12-17 17:19:06 +09:00
MingLiang Dong
ea7a2e66eb hdr: config cgain bypass when osd sdr2hdr process [1/1]
PD#SWPL-23499

Problem:
osd sdr2hdr process cause osd color contour

Solution:
1. root cause is cgain curve is not smooth
2. bypass cgain

Verify:
verify on G12A

Change-Id: I81480244c8b13f942ae99b45238d947f874120fe
Signed-off-by: MingLiang Dong <mingliang.dong@amlogic.com>
2020-12-17 17:19:06 +09:00
robin.zhu
1ac334bb76 dv: garbage display for 4K DV in certain video preview axis [1/1]
PD#SWPL-24882

Problem:
When 4K output, DoVi core3 htotal does not leave enough timing,
in addition to scaler pipeline delay, cause output does not get
data in time.

Solution:
reduce htotal(porting setting from g12b) for 4K output timing.

Verify:
HDMI DoVi 4K input, connect to DV 4K TV, set same axis as preview:
echo 1740 0 3839 1299 > /sys/class/video/axi
and check display: no more garbage display.

Signed-off-by: robin.zhu <robin.zhu@amlogic.com>
Change-Id: Ic075d00ea784b2bd080e6069baf9ea2c96c1c782
2020-12-17 17:19:06 +09:00
renjiang.han
56cc992be4 ppmgr: Where semaphores are used in ppmgr may cause deadlock. [1/1]
PD#SWPL-24904

Problem:
When the semaphore is used, it is suddenly re-initialized.

Solution:
The semaphore is only initialized during the probe.

Verify:
on X301

Change-Id: I1c45a56c1c204f5a3e2ee2fc7e31ac3da88348e1
Signed-off-by: renjiang.han <renjiang.han@amlogic.com>
2020-12-17 17:19:06 +09:00
Xindong Xu
2b5a425f8d md: High security vulnerability in dm-anroid-verity [1/1]
PD#SWPL-24864

Problem:
High security vulnerability in dm-anroid-verity

Solution:
we add this code for test.
It was improperly released, revert it.
Android avb code is ok after revert it.
Revert "md: use dm-anroid-verity [3/4]"

This reverts commit 84edbc7284.

Verify:
franklin

Change-Id: I8daa068475ee6d29b3ee8a5e8475b7594d71ce7d
Signed-off-by: Xindong Xu <xindong.xu@amlogic.com>
2020-12-17 17:19:05 +09:00
Gongwei Chen
504688d4a7 dv: flash green screen when dv on->off [1/1]
PD#SWPL-24764

Problem:
dv mem power down is earlier then dv core off

Solution:
delay one vsync to power down dv mem

Verify:
tm2

Change-Id: I895b2444358d365bf9481d964c6da0f207ff8733
Signed-off-by: yao liu <yao.liu@amlogic.com>
2020-12-17 17:19:05 +09:00
Xingyu Chen
1f117ec287 ethernet: reset tx queue when resume [1/1]
PD#SWPL-23503

Problem:
The network connection occasionally fails after resume

Solution:
reset tx queue when resume

Verify:
test pass on TL1

Change-Id: I9d9c61c9077e44f2e970ba19b7f8b85f7898bc41
Signed-off-by: Xingyu Chen <xingyu.chen@amlogic.com>
2020-12-17 17:19:05 +09:00
hang cheng
92f177651f hdmitx: optimize for signal change [1/1]
PD#SWPL-22877
PD#SWPL-22442
PD#SWPL-23113

Problem:
1.flash screen when suspend on Sony KD-55X9500G TV & SVA LE2481G TV
2.flash screen when plugin SONY KLV-26BX205 under 576p50hz

Solution:
1.add delay after set avmute so that TV can completely respond
2.add delay before start hdcp so that to auth after TV detect stable.

Verify:
AC214

Change-Id: I5dd8c37f71298c4eb630e5407ae4122b78b48133
Signed-off-by: hang cheng <hang.cheng@amlogic.com>
2020-12-17 17:19:05 +09:00
Pengcheng Chen
173d99600f vpp: fix yuv444 mif hskip abnormal [1/1]
PD#SWPL-22932

Problem:
hdmi rx 4k dv, tx 1080i display err

Solution:
fix yuv444 mif hskip setting

Verify:
verify on tm2

Change-Id: I881a638dc3016b046af726127bbac3fc86f46af8
Signed-off-by: Pengcheng Chen <pengcheng.chen@amlogic.com>
(cherry picked from commit 6ca4255443d383c2030b9e771465c4675b40d936)
2020-12-17 17:19:05 +09:00
qianqian.cai
b6d5a03739 deintlace: wakeup have sound without picture [1/1]
PD#SWPL-18082

Problem:
xiaomi t972
ATV source have sound without picture
after TV wake up and enter source

Solution:
modify the suspend flow for unreg

Verify:
franklin

Change-Id: Icbecd561471e12a33e30ac4601e8278f29df8aec
Signed-off-by: qianqian.cai <qianqian.cai@amlogic.com>
2020-12-17 17:19:05 +09:00
Chengshun Wang
11d8d5f768 tsync: fix audio only no sound [1/2]
PD#SWPL-23935

Problem:
audio no sound, ref pcr set error

Solution:
1) get ture ref pcr
2) judge video pid whether valid, decide whether wait
   3 seconds to set pcr

Verify:
verify by AC214

Change-Id: Ia782799e43fda17f7f1affbfcd7184f4b1ffb16d
Signed-off-by: Chengshun Wang <chengshun.wang@amlogic.com>
2020-12-17 17:19:05 +09:00
Gongwei Chen
8c0fdd51cb Revert "cec: cec a bus busy cause system hold [1/1]"
This reverts commit 1c60041aebfa3d1460cb7143f5621152a05fd0e3.
2020-12-17 17:19:05 +09:00
Tao Zeng
8dfe2013e3 mm: revert lmk change [1/1]
PD#SWPL-23516

Problem:
lmk is too agressive for kill process

Solution:
revert lmk change in
74a35431d2

Verify:
x301

Signed-off-by: Tao Zeng <tao.zeng@amlogic.com>
Change-Id: I52ff4f32262a33c9b54802d4ab012d404c942384
2020-12-17 17:19:05 +09:00
Jian Hu
60a62ce0d9 dvfs: sm1: critical region of cpu and dsu clock settings [1/1]
PD#SWPL-22008

Problem:
it will hang up sometimes when playing 8k video.

Solution:
critical region of cpu and dsu clock settings

Verify:
ac214

Change-Id: Icbdf3c26b129d4901e42c2e6c58700bd684c871c
Signed-off-by: Jian Hu <jian.hu@amlogic.com>
Signed-off-by: Hong Guo <hong.guo@amlogic.com>
2020-12-17 17:18:56 +09:00