Commit Graph

1072263 Commits

Author SHA1 Message Date
Zefa Chen
ee66b0c6b8 media: rockchip: vicap fixed error when sditf is NULL
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Iadecf86f27f35090c3daba4c5e28def4ab7ad62c
2022-07-01 18:43:20 +08:00
Yandong Lin
aa1f2eb72b video: rockchip: mpp: fix vepu access ccu crash issue
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I73d0703b2b58d8d23be1c38bf23ce470ffc13be3
2022-07-01 18:38:50 +08:00
Tao Huang
de0913f45a media: rockchip: isp: Add missing sentinel to rkisp_hw_of_match
Fixes: 40e63cc682 ("media: rockchip: isp: build depends on CPU config")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ic8340cc86bc5d58e5e33de34cebfd49df57d7f27
2022-07-01 18:20:24 +08:00
Cai YiWei
6f826853cb media: rockchip: isp: remove associated of cproc and ie for isp3x
Change-Id: If2165bdc9afcd2b5c946be3e013f569f292604a5
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-07-01 16:02:49 +08:00
Cai YiWei
a63cec68e5 media: rockchip: isp: fix isp30 cgc limit config
cgc limit bug in hw, cproc limit replace it.

Change-Id: Id95035e43c471ac11b7e865b55fb4882916ee639
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-07-01 16:02:41 +08:00
Yandong Lin
94a5dd9f32 arm64: dts: rockchip: add vepu support and separate jpege for rk3588
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I530c8213039d52329a05ddc3092ec18f63c4063a
2022-07-01 14:21:53 +08:00
Yandong Lin
c01a3a8ab3 video: rockchip: mpp: Separation vepu2 and vepu2-jpege dev
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: If8d06652729325d7b986f53b50f265d341bcb4e8
2022-07-01 14:21:38 +08:00
Yandong Lin
500137ac8c video: rockchip: mpp: fix jpege core distribution issue
The four jpeg enc core are not the same queue, and there is only one
core in a single queue.
So, can not use queue->cores to get different core.

Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: If9f56e351af23871e68b83de1917f26e88382dfc
2022-07-01 14:21:29 +08:00
Jon Lin
a6c71606de PCI: aspm_ext: Re-enable LRT for L1SS after power loss
Change-Id: Iedb72ee74660a8f11f38895e06766c3b77728ba3
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2022-07-01 14:14:11 +08:00
Su Yuefu
9c75f9ae0a media: i2c: sc230ai support 1080p@25fps config
Signed-off-by: Su Yuefu <yuefu.su@rock-chips.com>
Change-Id: I26989d0a74f2572e683e45c76c57b885bd724d37
2022-07-01 14:10:51 +08:00
Mark Huang
46130c99b6 usb: gadget: f_uvc: add device name for mult uvc
Change-Id: Ib19bb07a70019e474f5268475cadbb194fc4288d
Signed-off-by: Mark Huang <huangjc@rock-chips.com>
2022-07-01 11:10:48 +08:00
Damon Ding
e4660fb3bb drm/rockchip: vop2: set reg splice_en to 0 when disabling vp0 in splice mode
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I600ba962d00b7f87b1d8200852c71da8a30ec70d
2022-07-01 11:10:07 +08:00
Damon Ding
91d0c47595 drm/rockchip: vop2: set all display modes of vp1 invalid in splice mode
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I9ea4f1c218cefa1fef0d0625afa3795692a71497
2022-07-01 11:10:07 +08:00
Yu Qiaowei
7f53ead8ab video: rockchip: rga3: Avoid operating on invalid rga_dma_buffer
Update driver version to 1.2.15

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I0b2bdcdc9750ca8051fb000048f3e8df3113c6ca
2022-07-01 10:59:39 +08:00
shengfei Xu
9b12899635 power: supply: charger: add sc8551 charger pump driver
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
Change-Id: I9580e0af62cb652c0e90832455d025049edb374a
2022-07-01 09:54:02 +08:00
Bing Han
b389838308 ANDROID: GKI: Add symbols to abi_gki_aarch64_transsion
In order to make better use of the limited memory resources, we develop
a memory expansion solution to expand the memory size avaliable to the
system. Need add some symbols to abi_gki_aarch64_transsion.

Leaf changes summary: 7 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 7 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

7 Added functions:

 [A] 'function bool check_cache_active()'
 [A] 'function mem_cgroup* get_mem_cgroup_from_mm(mm_struct*)'
 [A] 'function bool is_swap_slot_cache_enabled()'
 [A] 'function int scan_swap_map_slots(swap_info_struct*, unsigned char, int, swp_entry_t*)'
 [A] 'function int swap_alloc_cluster(swap_info_struct*, swp_entry_t*)'
 [A] 'function swap_info_struct* swap_type_to_swap_info(int)'
 [A] 'function void swapcache_free_entries(swp_entry_t*, int)'

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I9cafdf1ee646becff7431014452866b0bfa14eb4
2022-06-30 16:13:16 +00:00
Duoming Zhou
5b696d45bf BACKPORT: nfc: nfcmrvl: main: reorder destructive operations in nfcmrvl_nci_unregister_dev to avoid bugs
commit d270453a0d upstream.

There are destructive operations such as nfcmrvl_fw_dnld_abort and
gpio_free in nfcmrvl_nci_unregister_dev. The resources such as firmware,
gpio and so on could be destructed while the upper layer functions such as
nfcmrvl_fw_dnld_start and nfcmrvl_nci_recv_frame is executing, which leads
to double-free, use-after-free and null-ptr-deref bugs.

There are three situations that could lead to double-free bugs.

The first situation is shown below:

   (Thread 1)                 |      (Thread 2)
nfcmrvl_fw_dnld_start         |
 ...                          |  nfcmrvl_nci_unregister_dev
 release_firmware()           |   nfcmrvl_fw_dnld_abort
  kfree(fw) //(1)             |    fw_dnld_over
                              |     release_firmware
  ...                         |      kfree(fw) //(2)
                              |     ...

The second situation is shown below:

   (Thread 1)                 |      (Thread 2)
nfcmrvl_fw_dnld_start         |
 ...                          |
 mod_timer                    |
 (wait a time)                |
 fw_dnld_timeout              |  nfcmrvl_nci_unregister_dev
   fw_dnld_over               |   nfcmrvl_fw_dnld_abort
    release_firmware          |    fw_dnld_over
     kfree(fw) //(1)          |     release_firmware
     ...                      |      kfree(fw) //(2)

The third situation is shown below:

       (Thread 1)               |       (Thread 2)
nfcmrvl_nci_recv_frame          |
 if(..->fw_download_in_progress)|
  nfcmrvl_fw_dnld_recv_frame    |
   queue_work                   |
                                |
fw_dnld_rx_work                 | nfcmrvl_nci_unregister_dev
 fw_dnld_over                   |  nfcmrvl_fw_dnld_abort
  release_firmware              |   fw_dnld_over
   kfree(fw) //(1)              |    release_firmware
                                |     kfree(fw) //(2)

The firmware struct is deallocated in position (1) and deallocated
in position (2) again.

The crash trace triggered by POC is like below:

BUG: KASAN: double-free or invalid-free in fw_dnld_over
Call Trace:
  kfree
  fw_dnld_over
  nfcmrvl_nci_unregister_dev
  nci_uart_tty_close
  tty_ldisc_kill
  tty_ldisc_hangup
  __tty_hangup.part.0
  tty_release
  ...

What's more, there are also use-after-free and null-ptr-deref bugs
in nfcmrvl_fw_dnld_start. If we deallocate firmware struct, gpio or
set null to the members of priv->fw_dnld in nfcmrvl_nci_unregister_dev,
then, we dereference firmware, gpio or the members of priv->fw_dnld in
nfcmrvl_fw_dnld_start, the UAF or NPD bugs will happen.

This patch reorders destructive operations after nci_unregister_device
in order to synchronize between cleanup routine and firmware download
routine.

The nci_unregister_device is well synchronized. If the device is
detaching, the firmware download routine will goto error. If firmware
download routine is executing, nci_unregister_device will wait until
firmware download routine is finished.

Bug: 234690530
Fixes: 3194c68701 ("NFC: nfcmrvl: add firmware download support")
Signed-off-by: Duoming Zhou <duoming@zju.edu.cn>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Change-Id: I8cc1f6450c7fecf5f5994033931da1d23a522282
2022-06-30 11:50:02 +01:00
Jianqun Xu
4fe55239b3 iommu/iova: add iova procfs for each dma iommu
Tested on RK3588 EVB1:

localhost# ls /proc/iova/
av1d-master    fdb90000.jpegd       fdbb0000.iep          fdcb0000.rkisp
fdab0000.npu   fdba0000.jpege-core  fdbd0000.rkvenc-core  fdce0000.rkcif
fdb50400.vdpu  fdba4000.jpege-core  fdbe0000.rkvenc-core  fdd90000.vop
fdb60000.rga   fdba8000.jpege-core  fdc38100.rkvdec-core  rkcif-mipi-lvds
fdb70000.rga   fdbac000.jpege-core  fdc48100.rkvdec-core

localhost# cat /proc/iova/fdc38100.rkvdec-core/used
   0: [0x00000000ffe00000..0x00000000ffeff000]   1024KiB (4094 - 4095)MiB
   1: [0x00000000fff00000..0x00000000fffff000]   1024KiB (4095 - 4096)MiB
used: 2 MiB

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I102e08243b5a0a4cd173e75e2e25f68f1f5b09b6
2022-06-30 14:20:34 +08:00
Algea Cao
02382afd4e drm/bridge: synopsys: dw-hdmi-qp: Use software flt instead of hardware auto flt
Hdmi controller hardware automatic flt has compatibility issues.
For example, the 980B protocol analyzer cannot recognize signal.
Therefore, software flt is needed.

Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ie32ac705622048ff71cb301e2e06d5673b5889cc
2022-06-30 11:07:56 +08:00
Bing Han
01680ae117 ANDROID: vendor_hook: Add hook in __free_pages()
Provide a vendor hook android_vh_free_pages to clear the
information in struct page_ext, when the page is freed.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Iac8e3a72f59f8d3ae16dbc93d94034fe4b627d61
2022-06-30 03:00:23 +00:00
Bing Han
e064059673 ANDROID: create and export is_swap_slot_cache_enabled
Create and export a function is_swap_slot_cache_enabled
to check whether the swap slot cache can be used.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Iaca9519b838e0c3c8c06acbec83003f8309aa363
2022-06-30 03:00:23 +00:00
Bing Han
f6f18f7ffa ANDROID: vendor_hook: Add hook in swap_slots
Provide a vendor hook android_vh_swap_slot_cache_active to
pass the active status of swap_slots_cache. This status
will be used in the process of reclaiming the pages that
is required to be reclaimed to a specified swap location.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I8211760e0f37fe4a514f6ceaae9993925da8cd6d
2022-06-30 03:00:23 +00:00
Bing Han
034877c195 ANDROID: mm: export swapcache_free_entries
Export swapcache_free_entries to be used in the alternative function
android_vh_drain_slots_cache_cpu to swap entries in swap slot cache,
it's usage is similar to the usage in drain_slots_cache_cpu.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Ia89b1728d540c5cc8995a939a918e12c23057266
2022-06-30 03:00:23 +00:00
Bing Han
06c2766cbc ANDROID: mm: export symbols used in vendor hook android_vh_get_swap_page()
3 symbols are exported to be used in vendor hook android_vh_get_swap_page:
1)check_cache_active, used to get swap page from the specified
swap location, it's usage is similar to the usage in get_swap_page
2)scan_swap_map_slots, used to get swap page from the specified swap,
it's usage is similar to get_swap_pages
3)swap_alloc_cluster, used to get swap page from the specified swap,
it's usage is similar to get_swap_pages

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Ie24c5d32a16c7cb87905d034095ec8fb070dbe0f
2022-06-30 03:00:23 +00:00
Bing Han
d4eef93a9d ANDROID: vendor_hooks: Add hooks to extend struct swap_slots_cache
Three vendor hooks are provided to extend struct swap_slots_cache.
The extended data are used to record the information of the
specified reclaimed swap location:
1) android_vh_alloc_swap_slot_cache, replace the function
alloc_swap_slot_cache adding allocation of the extension
of struct swap_slots_cache;
2) android_vh_drain_slots_cache_cpu, replace the function
drain_slots_cache_cpu adding the initialization of the
extension of struct swap_slots_cache;
3) android_vh_get_swap_page, replace the function get_swap_page,
according to the reclaimed location information of the page,
get the the swap page from the specified swap location;

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I3bce6e8cf255df1d879b7c4022d54981cce7c273
2022-06-30 03:00:23 +00:00
Bing Han
4506bcbba5 ANDROID: mm: export swap_type_to_swap_info
The function swap_type_to_swap_info is exported to access the
swap_info_struct of the specified swap, which is regarded as
reserved extended memory.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I0107e7d561150f1945a4c161e886e9e03383fff6
2022-06-30 03:00:23 +00:00
Bing Han
ed2b11d639 ANDROID: vendor_hook: Add hook in si_swapinfo()
Provide a vendor hook android_vh_si_swapinf to replace the
process of updating nr_to_be_unused. When the page is swapped
to a specified swap location, nr_to_be_unused should not be
updated. Because the specified swap is regarded as a reserved
extended memory.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Ie41caec345658589bf908fb0f96d038d1fba21f3
2022-06-30 03:00:23 +00:00
Bing Han
667f0d71dc ANDROID: vendor_hooks: Add hooks to extend the struct swap_info_struct
Two vendor hooks are added to extend the struct swap_info_struct:
android_vh_alloc_si, extend the allocation of struct swap_info_struct,
adding data to record the information of specified reclaimed location;
android_vh_init_swap_info_struct, adding initializing the extension of
struct swap_info_struct;

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I0e1d8e38ba7dfd52b609b1c14eb78f8b0ef0f9e6
2022-06-30 03:00:23 +00:00
Bing Han
bc4c73c182 ANDROID: vendor_hook: Add hooks in unuse_pte_range() and try_to_unuse()
When the page is unused, a vendor hook android_vh_unuse_swap_page
should be called to specify that the page should not be swapped
to the specified swap location any more.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I3fc3675020517f7cc69c76a06150dfb2380dae21
2022-06-30 03:00:23 +00:00
Bing Han
7222a0b29b ANDROID: vendor_hook: Add hooks in free_swap_slot()
Provide a vendor hook to replace the function free_swap_slot,
adding the free_swap_slot process of pages swapped to the
specified swap location(i.e., the reserved expended memory)

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Idd6d0007e64d56d556d1234a8b931fce06031809
2022-06-30 03:00:23 +00:00
Bing Han
d2fea0ba9a ANDROID: vendor_hook: Add hook to update nr_swap_pages and total_swap_pages
The specified swap is regarded as reserved extended memory.
So nr_swap_pages and total_swap_pages should not be affected
by the specified swap.

Provide a vendor hook android_vh_account_swap_pages to replace
the updating process of nr_swap_pages and total_swap_pages.
When the page is swapped to the specified swap location,
nr_swap_pages and total_swap_pages should not be updated.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Ib8dfb355d190399a037b9d9eda478a81c436e224
2022-06-30 03:00:23 +00:00
Bing Han
1aa26f0017 ANDROID: vendor_hook: Add hook in page_referenced_one()
Add android_vh_page_referenced_one_end at the end of function
page_referenced_one to update the status that whether the page
need to be reclaimed to a specified swap location.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Ia06a229956328ef776da5d163708dcb011a327fb
2022-06-30 03:00:23 +00:00
Bing Han
851672a4b2 ANDROID: vendor_hooks: Add hooks to record the I/O statistics of swap:
android_vh_count_pswpin, Update the write I/O statistics of the swap;
android_vh_count_pswpout, Update the read I/O statistics of the swap;
android_vh_count_swpout_vm_event, Replace count_swpout_vm_event with
adding updating the I/O statistics of the swap;

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I4eb69db59fe2d822555a508c2f0c6cd5ca9083d1
2022-06-30 03:00:23 +00:00
Bing Han
5bc9b10c45 ANDROID: vendor_hook: Add hook in migrate_page_states()
Provide a vendor hook to copy the status whether the page need to be
reclaimed to a specified swap location.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I1a451b40407718900b56de6ed17b7fd5ef56da01
2022-06-30 03:00:23 +00:00
Bing Han
89a247a638 ANDROID: vendor_hook: Add hook in __migration_entry_wait()
android_vh_waiting_for_page_migration: provide a vendor hook
to force not to reclaim the page under migration to a specified
swap location, until the migration is finished.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Iceeae91cbd912d9c44d7eac25f1299bbff547388
2022-06-30 03:00:23 +00:00
Bing Han
f7c932399e ANDROID: vendor_hook: Add hook in handle_pte_fault()
android_vh_handle_pte_fault_end: after handle_pte_fault, update
the information that whether this page need to be reclaimed to
a swap location.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I0ceb02422fc858ed96fbb47e220bf96bdc8fa68c
2022-06-30 03:00:23 +00:00
Bing Han
50148ce249 ANDROID: vendor_hook: Add hook in do_swap_page()
android_vh_swapin_add_anon_rmap: after add pte mapping to an anonymous
page durning do_swap_page, update the status that whether this page
need to be reclaimed to a swap location, according to the information
of vm_fault.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I8a2d603102c315323817e6c9366db9b0da878344
2022-06-30 03:00:23 +00:00
Bing Han
9d4b553252 ANDROID: vendor_hook: Add hook in wp_page_copy()
android_vh_cow_user_page: when copy a page to a new page, set the
status that whether the new page should be reclaimed to a specified
swap location, according to the information of vm_fault.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Ie445c7b034ca176ec1e8fd1cd67c88581bf9ddf4
2022-06-30 03:00:23 +00:00
Bing Han
e3f469befb ANDROID: vendor_hooks: Add hooks to madvise_cold_or_pageout_pte_range()
Provide a vendor hook android_vh_page_isolated_for_reclaim to
process whether the page should be reclaimed to a specified
swap(i.e., the expanded memory).
This strategy will take into account the state of the current
process/application, resource usage, and other information.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Id80a377c87bea13922e7b23963b050ab37ba0cb0
2022-06-30 03:00:23 +00:00
Bing Han
6b7243da5e ANDROID: vendor_hook: Add hook in snapshot_refaults()
Provide a vendor hook android_vh_snapshot_refaults to record the
refault statistics of WORKINGSET_RESTORE_ANON;

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I20eb5ea99bf21fa8ba34b45e87d2ab9e9cdca167
2022-06-30 03:00:23 +00:00
Bing Han
6b04959511 ANDROID: vendor_hook: Add hook in inactive_is_low()
Provide a vendor hook android_vh_inactive_is_low to replace the
calculation process of inactive_ratio.
The alternative calculation algorithm takes into account the
difference between file pages and anonymous pages.

Bug: 234214858
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: I6cf9c47fbc440852cc36e04f49d644146eb2c6af
2022-06-30 03:00:23 +00:00
shengfei Xu
bcbe97df5c power: supply: rockchip-charger-manager: support charger manager
support:
1. Use EXTCON Subsystem to detect charger cables for charging
2. Set current limit of battery for over current protection
3. Set power limit of charger for overload protection
4. control charge pump charging current/voltage

Signed-off-by: shengfei Xu <xsf@rock-chips.com>
Change-Id: I97a461996977d418a47e6075202d82c5b87bd17b
2022-06-30 10:14:50 +08:00
Jianqun Xu
0c51523b06 iommu/iova: dump iova when alloc failed
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I8e2d99ed2e22e1c22f11ba67b5a69783d39df87d
2022-06-30 09:58:55 +08:00
Wu Liangqing
7d1bea221a arm64: dts: rockchip: add rk3588s-evb8-lp4x-v10.dts
Change-Id: Idd2e2cbc82445bef0871a155893a089232b1583a
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2022-06-30 09:58:10 +08:00
Finley Xiao
f822ab60e5 rtc: hym8563: Add CLK_IS_CRITICAL for output clock
The 32k clock is used for hp timer on RK3588, and it should be always on.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Ie28a16308521fadc33ae91c25215f30bd2265f33
2022-06-30 09:56:31 +08:00
Sugar Zhang
112f4f431d ASoC: rockchip: i2s-tdm: Fix panic on rockchip_dai_tdm_slot
SError Interrupt on CPU0, code 0xbe000011 -- SError
CPU: 0 PID: 7 Comm: kworker/u16:0 Not tainted 5.10.66 #107
Workqueue: events_unbound deferred_probe_work_func
pstate: 60c00009 (nZCv daif +PAN +UAO -TCO BTYPE=--)
pc : _raw_spin_unlock_irqrestore+0x28/0x60
lr : regmap_unlock_spinlock+0x18/0x28
sp : ffffffc01251b850
x29: ffffffc01251b850 x28: ffffff81039afa80
x27: ffffff810349b1b0 x26: ffffffc011aa5d20
x25: 0000000000000000 x24: ffffff8100023000
x23: 0000000000000030 x22: 0000000000003fff
x21: 0000000000001e7f x20: 0000000000000000
x19: 0000000000000000 x18: ffffffc0123d10c0
x17: 0000000000000080 x16: 00000000000000d8
x15: ffffffc0105db5c8 x14: ffffffc011668c18
x13: 0000000062b0642e x12: 7fffffffffffffff
x11: 0000000000000000 x10: 0000000000000030
x9 : 0000000100000001 x8 : ffffff8100325880
x7 : 0000000000000000 x6 : 0000000000000000
x5 : 0000000000000000 x4 : 0000000000000000
x3 : 0000000000003eff x2 : 0000000000001e7f
x1 : 0000000000000000 x0 : ffffff8100023000
Kernel panic - not syncing: Asynchronous SError Interrupt
CPU: 0 PID: 7 Comm: kworker/u16:0 Not tainted 5.10.66 #107
Workqueue: events_unbound deferred_probe_work_func
Call trace:
 dump_backtrace+0x0/0x1c8
 show_stack+0x1c/0x2c
 dump_stack_lvl+0xdc/0x12c
 dump_stack+0x1c/0x64
 panic+0x150/0x3a4
 test_taint+0x0/0x30
 arm64_serror_panic+0x78/0x84
 do_serror+0xe0/0x100
 el1_error+0x94/0x118
 _raw_spin_unlock_irqrestore+0x28/0x60
 regmap_unlock_spinlock+0x18/0x28
 regmap_update_bits_base+0x78/0x9c
 rockchip_dai_tdm_slot+0x5c/0x94
 snd_soc_dai_set_tdm_slot+0xac/0x124
 asoc_simple_init_dai+0x64/0xc4
 asoc_simple_dai_init+0x74/0x178
 snd_soc_link_init+0x28/0x84
 snd_soc_bind_card+0x6b4/0xad0
 snd_soc_register_card+0xf8/0x114
 devm_snd_soc_register_card+0x48/0x90
 asoc_simple_probe+0x2a0/0x348
 ...

Fixes: 2b987b28a8 ("ASoC: rockchip: i2s_tdm: add support for tdm mode")
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ib5ceb2f21bad346285c814aaf4c367e71c44230a
2022-06-30 09:51:16 +08:00
Wangqiang Guo
1d20cb9b78 media: rockchip: hdmirx: fix 1280x720p25 get timing error
According to the CEA-861, 1280x720p25 Hblank timing up to 2680,
and all standard video format timings are less than 3000

Signed-off-by: Wangqiang Guo <kay.guo@rock-chips.com>
Change-Id: I936ac8d6a21754fee6038328fd45eaf028f2dd2f
2022-06-29 19:45:48 +08:00
Wang Panzhenzhuan
fe6fe3c72d media: i2c: ov02b10: fix power on & off sequence
Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
Change-Id: I6b751f0bc14b6c4e5f1bcb2b46bb6de5e2708330
2022-06-29 19:42:57 +08:00
Wang Panzhenzhuan
b96728f539 media: i2c: s5kjn1: adjust supply sequence to suit spec
Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
Change-Id: I1f38b2d2d59a068c4b400bdc95aa3582aff23ac0
2022-06-29 19:41:57 +08:00
Wang Panzhenzhuan
fbd4a4eb7e media: i2c: gc8034: adjust supply sequence to suit spec
Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
Change-Id: I8089970ea321472c3d66e6e65c33954010367da2
2022-06-29 19:41:22 +08:00