Commit Graph

1065852 Commits

Author SHA1 Message Date
Zhichao Guo
e82c835c43 ARM: configs: rv1106-evb.config support SPI NOR and JFFS2
Signed-off-by: Zhichao Guo <zhichao.guo@rock-chips.com>
Change-Id: Ib3c4ce2486f22dd0553f6bd00bad52e821791a4c
2022-04-15 17:06:17 +08:00
Yu Qiaowei
e98db0e5b0 video: rockchip: rga3: Modify the minimum input and output of rga3 to 68*2
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I27282033ee15bed15dcbbf4e8ac96524a72a86ff
2022-04-15 11:42:36 +08:00
Yu Qiaowei
da876cd68e video: rockchip: rga3: Support third-address YUV using buffer_handle
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Ie6d54b96773d708355cac988217189eb56396d27
2022-04-15 11:42:27 +08:00
Yu Qiaowei
4ca6886a26 video: rockchip: rga3: Fix memory leak caused by temporary ctx
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I89e50b9210919a4da19f5f45bb9135c78f174dec
2022-04-15 10:31:43 +08:00
Cai YiWei
3bfcd0e9a6 media: rockchip: isp: fix bay3d ds size for isp32
Change-Id: Id815ac98466e4b76feb01925c66451bed8c1fc6f
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-04-15 10:23:25 +08:00
Huang zhibao
ff0bc31061 ARM: dts: rockchip: add dts for rv1106 uvc demo board
Signed-off-by: Huang zhibao <hzb@rock-chips.com>
Change-Id: Ida1820188cb5b293f5a9a6dda7b1da88193bd895
2022-04-14 19:56:31 +08:00
Tao Huang
e8c0569ca5 ARM: rv1106_defconfig: update by savedefconfig
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I075cff13eb3b747e46a84b71c1fcd6d79c320d7e
2022-04-14 15:50:52 +08:00
Sugar Zhang
ffb8ca97ff ARM: Kconfig: Disable HAS_MODULE_STRICT_RWX for ROCKCHIP_MINI_KERNEL
- ARCH_HAS_STRICT_MODULE_RWX

Tested on RV1103G IPC: save ~200KB

Before:

VmallocUsed:        1752 kB

After:

VmallocUsed:        1552 kB

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ibebd5157709e8557800495c43d58e55194f034d3
2022-04-14 15:50:37 +08:00
Sugar Zhang
ed3e2d3626 ARM: configs: rv1106: Enable CONFIG_ROCKCHIP_CPUINFO
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I333bbc0c691527d1d9a2ea3a99759447f16570d2
2022-04-14 15:47:21 +08:00
Yu Qiaowei
ea668873c6 video: rockchip: rga3: Fixed the calculation error of v_address when map vir_addr
Update driver version to 1.2.8

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I1426e1a3ac0b59b3eb6497c4b92921e918638653
2022-04-14 15:17:25 +08:00
Yu Qiaowei
20b9b5e9ed video: rockchip: rga3: fix crash in insmod/rmmod ko
1. Platforms without MMU do not alloc buffer for mmu_base.
2. Fix deregister using wrong miscdevice structure.

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I46613530dd32e6a21abbedc5df31342ab335c607
2022-04-14 15:17:25 +08:00
Sandy Huang
71270c6e64 drm/rockchip: vop2: correct linear format support for cluster
rk356x cluster:
	rgb/yuv format: support non-linear mode only

rk3588 cluster:
	rgb format: support linear and non-linear mode
	yuv format: support non-linear mode only

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Ic5cc4690280ba3974301dfd831b445a8a0f9d6b0
2022-04-14 15:17:04 +08:00
Sandy Huang
183bc1a692 drm/rockchip: vop2: reset transform offset when exit from afbc format
If cluster transform offset isn't equeal to 0 at linear format mode, VOP will appear
iommu pagefault error.

errr log:

[ 8283.190920][    C0] rk_iommu fdd97e00.iommu: Page fault at 0x00000000f20b1000 of type read
[ 8283.191012][    C0] [drm:rockchip_drm_fault_handler] *ERROR* iommu fault handler flags: 0x18b
...
[ 8283.191131][    C0] Video Port0: DISABLED
[ 8283.191153][    C0] Video Port1: DISABLED
[ 8283.191198][    C0] SYS:
[ 8283.191252][    C0] 00000000: 00008008 40176786 7fffffff 00000000
[ 8283.191281][    C0] 00000010: 00000000 00000000 00000000 00000000
...
[ 8283.191715][    C0] OVL:
[ 8283.191765][    C0] 00000000: c0000000 75643120 e4e47531 00000000
[ 8283.191792][    C0] 00000010: 00000000 00000000 00000000 00000000
...
[ 8283.195257][    C0] Cluster3:
[ 8283.195306][    C0] 00000000: 00004001 00000000 000000e6 00000000
[ 8283.195333][    C0] 00000010: f2057000 00000000 00000030 00000000
[ 8283.195361][    C0] 00000020: 077f002f 077f002f 00000408 00000000
[ 8283.195389][    C0] 00000030: 00000000 00000000 00000000 00020009
[ 8283.195417][    C0] 00000040: 00000000 00000000 00000000 00000000
[ 8283.195445][    C0] 00000050: 00000010 00000000 f396a000 00290500
[ 8283.195473][    C0] 00000060: 048b028d 003a0139 00000000 00000094
...

[ 8283.199008][    C0] rockchip-vop2 fdd90000.vop: [drm:vop2_isr] *ERROR* POST_BUF_EMPTY irq err at vp3
[ 8283.199303][    C0] rockchip-vop2 fdd90000.vop: [drm:vop2_isr] *ERROR* POST_BUF_EMPTY irq err at vp3
[ 8283.199377][    C0] rockchip-vop2 fdd90000.vop: [drm:vop2_isr] *ERROR* POST_BUF_EMPTY irq err at vp3

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Ib490796e1da568069f78ed35b2287a5fe32033d9
2022-04-14 10:15:46 +08:00
Jianqun Xu
a0dfa37898 dma-buf: rk_heaps: drop early fixup for rk_dma_cma
The early fixup for cma reserved memory will do dma contiguous memory
remap, which makes the pages from cma enable to be activated into buddy
system. But the buddy system requires a page must in one pageblock for
possible migrate or compact operation, the pageblock size is usually to
be more than 1 MiB, then the cma size must to be 1 MiB aligned.

On mini kernel, the CMA_INACTIVE makes the cma area not to be activated
into the buddy system, no migrate or compact will happen to pages from
the cma area, in this case, it possible to drop the early fixup to make
the cma base and size align to PAGE_SIZE only. Also it will save several
pages which used to be pte memory for these pages when remap.

Reviewed-by: Simon Xue <xxm@rock-chips.com>
Tested-by: Zhichao Yu <zhichao.yu@rock-chips.com>
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I307e27aaa6e9bcb9cd86414ae7de0f7cfef7b706
2022-04-14 09:17:15 +08:00
William Wu
aa0f99d430 usb: dwc3: core: increase the DWC3_ISOC_MAX_RETRIES to 50
If usb gadget isochronous run in a high load and high bus latency
system, it may fail to start a transfer for isochronous endpoint,
and retry 5 times is not enough. This patch increases the retry
times to 50.

Change-Id: Id95a2b4fb09c3103a1da456b6ccb54ed24d03197
Signed-off-by: William Wu <william.wu@rock-chips.com>
2022-04-13 18:36:09 +08:00
William Wu
3d16bb640f ARM: dts: rockchip: rv1106: disable usb2 gadget lpm
The Rockchip DWC3 controllers are LPM capable, but we find
that the UVC function compatibility issue on some Windows PCs
if enable LPM capable. And refer to the Logitech USB Cameras,
they're usually disable LPM capable. Considering that the
benefit form LPM capable is insignificant on RV1106 platforms
with USB Gadget funcitons (UVC & UAC...), so we disable the
LPM capable by default.

Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: I61dadbf7685a0952f5ac82d617e9e95bf7f38123
2022-04-13 18:36:09 +08:00
William Wu
d99c51e83a usb: dwc3: gadget: print info for reset and disconnect event
This patch add the reset/disconnect event info for USB developer
to find that whether the USB is reset or disconnted from USB PHY.

Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: I889867edc6fd4b4d2fb2927c80d55a850556a8ad
2022-04-13 18:36:09 +08:00
William Wu
ec222455e4 usb: dwc3: gadget: fix time out waiting for setup phase when stop gadget
If dwc3 failed to init ep0 in __dwc3_gadget_start(), the ep0state will
be uninitialized, aka, ep0state is EP0_UNCONNECTED, in this case, we
don't need to wait for control transfer completion when stop gadget
because no usb control transfer in process. This patch can help to avoid
the following warning in RK356x Boards during shutdown process.

[   30.735323] usb ffs open    D    0   309      1 0x0400002d
[   30.735330] Call trace:
[   30.735336]  __switch_to+0xe4/0x138
[   30.735348]  __schedule+0x2f4/0x930
[   30.735358]  schedule+0x38/0xa0
[   30.735368]  schedule_timeout+0x194/0x478
[   30.735378]  wait_for_common+0x130/0x1e8
[   30.735388]  wait_for_completion_timeout+0x10/0x18
[   30.735399]  dwc3_gadget_pullup+0x68/0xc8
[   30.735411]  usb_gadget_disconnect+0xf0/0x110
[   30.735422]  usb_gadget_remove_driver+0x24/0x70
[   30.735431]  usb_gadget_unregister_driver+0xd0/0x120
[   30.735441]  unregister_gadget+0x20/0x50
[   30.735450]  unregister_gadget_item+0x24/0x38
[   30.735461]  ffs_data_clear+0x120/0x130
[   30.735471]  ffs_data_reset+0x14/0x58
[   30.735480]  ffs_data_closed+0x88/0xd8
[   30.735490]  ffs_ep0_release+0x10/0x20
[   30.735501]  __fput+0x88/0x1b8
[   30.735510]  ____fput+0xc/0x18
[   30.735521]  task_work_run+0x94/0xb0
[   30.735531]  do_exit+0x334/0xa28
[   30.735540]  do_group_exit+0x34/0x98
[   30.735550]  get_signal+0xe4/0x828
[   30.735557]  do_signal+0x1c0/0x298
[   30.735563]  do_notify_resume+0xd0/0x118
[   30.735568]  work_pending+0x8/0x10
[   30.735602] sysrq: Kill All Tasks

Change-Id: I3534b710804e099d857149b0b0b58a7a7236b8fc
Signed-off-by: William Wu <william.wu@rock-chips.com>
2022-04-13 18:36:09 +08:00
William Wu
277709af3f usb: dwc3: gadget: avoid multiple calls to free_irq
When we use /sys/class/udc/<udc>/soft_connect to do
a logical disconnection from the USB Host on RK3399
Excavator Board, it dumps the warning log:

Trying to free already-free IRQ 231
WARNING: CPU: 2 PID: 1308 at kernel/irq/manage.c:1628 __free_irq+0xa0/0x2e0
Modules linked in:
CPU: 2 PID: 1308 Comm: adbd Not tainted 4.19.80 #49
Hardware name: Rockchip RK3399 Excavator Board edp avb (Android) (DT)
pstate: 40400085 (nZcv daIf +PAN -UAO)
pc : __free_irq+0xa0/0x2e0
lr : __free_irq+0xa0/0x2e0
...
Call trace:
__free_irq+0xa0/0x2e0
free_irq+0x38/0x90
dwc3_gadget_stop+0x58/0x80
usb_gadget_remove_driver+0x50/0x70
usb_gadget_unregister_driver+0xc0/0x110
unregister_gadget+0x20/0x50
unregister_gadget_item+0x24/0x38
ffs_data_clear+0x120/0x130
ffs_data_reset+0x14/0x50
ffs_data_closed+0x88/0xd8
ffs_epfile_release+0x20/0x30

To solve the problem, don't call free_irq() in
dwc3_gadget_stop() if dwc->gadget_driver is NULL.

Change-Id: I9d5b5b354612c3ce3677b3d15cf6af1fcbf3f399
Signed-off-by: William Wu <william.wu@rock-chips.com>
2022-04-13 18:36:09 +08:00
Li Huang
bd2641355e video: rockchip: rga3: Specifies cores needs to check parameters
Signed-off-by: Li Huang <putin.li@rock-chips.com>
Change-Id: I935fafac68a10d28ddcb7ee81e61965f7a489283
2022-04-13 17:54:41 +08:00
Li Huang
a5becbbc70 video: rockchip: rga3: add align check for policy
Signed-off-by: Li Huang <putin.li@rock-chips.com>
Change-Id: I7792c28ec3bce0bb8822db47d5f4d8f6c3d48bf4
2022-04-13 17:54:41 +08:00
Jianqun Xu
c97fea6ed1 slab: allows kmalloc min size independent on arch dma min alignment when CONFIG_ROCKCHIP_MINI_KERNEL=y
Copy a description from the ARCH_DMA_MINALIGN definition:
--
  Some archs want to perform DMA into kmalloc caches and need a guaranteed
  alignment larger than the alignment of a 64-bit integer.
  Setting ARCH_KMALLOC_MINALIGN in arch headers allows that.

For a specific product, which can make sure that the kmalloc won't used
by DMA, then it can set the kmalloc min size lower than arch dma min
alignment.

For ROCKCHIP_MINI_KERNEL, we can try to do it.

Before this patch:
       Name	Objects	Objsize	Loss	Slabs/Part/Cpu
kmalloc-8	2419	8	155.6	37/1/1
kmalloc-16	2669	16	180.2	43/3/1
kmalloc-32	1726	32	110.5	26/1/1
kmalloc-64	1013	64	69.6	16/4/1
kmalloc-96	658	96	86	20/2/1
kmalloc-128	352	128	45	10/0/1
kmalloc-192	567	192	110.5	26/0/1
kmalloc-256	140	256	36.8	8/1/1
kmalloc-512	311	512	172	41/5/1
kmalloc-1k	104	1024	139.2	16/5/1
kmalloc-2k	40	2048	81.9	4/0/1
kmalloc-4k	590	4096	2458	73/1/1
kmalloc-8k	8	8192	65.5	1/0/1

With this patch:
kmalloc-8	2560	8	20.4	4/0/1
kmalloc-16	2811	16	57.3	13/5/1
kmalloc-32	1791	32	57.3	13/1/1
kmalloc-64	1017	64	65.5	15/2/1
kmalloc-96	660	96	65.5	15/3/1
kmalloc-128	352	128	45	10/0/1
kmalloc-192	567	192	110.5	26/0/1
kmalloc-256	140	256	36.8	8/1/1
kmalloc-512	311	512	172	41/5/1
kmalloc-1k	105	1024	139.2	16/5/1
kmalloc-2k	40	2048	81.9	4/0/1
kmalloc-4k	590	4096	2458	73/1/1
kmalloc-8k	8	8192	65.5	1/0/1

Save about 300K.

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: Ifa2a7ab13481180cc45c7b59e3a744f68f46aab5
2022-04-13 17:42:59 +08:00
Yandong Lin
81d89711e3 video: rockchip: dvbm: align line_cnt to 32
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I5d98f37948e4ef396f8dad6248e98d24f8cd8ddd
2022-04-13 17:17:16 +08:00
Yongzhen
53d2ff7bd2 ARM: dts: rockchip: rv1106-ipc: enable saradc
Signed-off-by: Yongzhen <yuyz@rock-chips.com>
Change-Id: I2dfccd44112cc239e8aa5b8f55121b5d568c4305
2022-04-13 17:16:20 +08:00
Zefa Chen
b3a6efd40f media: i2c: sensor adapter fixed get_selection bug
Fixed: 0ea608c ("media: i2c: sensor adapter fixed get_selection error")

Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ie84a776f6b02d56014ae706e3e72af8e1ffa74ed
2022-04-13 16:58:04 +08:00
Herman Chen
21225a4a1e video: rockchip: mpp: rkvenc2: Fix dchs conflict
When both cores are used on encoding and the first task on core 0 is
finished the next task on core 0 may use the same txid as the finished
task. It will delay the running task on core 1.

So we have to find a unused txid to remap the txid in logic. And the
both logical id and remap id should be record for each dchs status.

Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I35e6a05bb879d9f389f308ad87bf62b0f20f3c6c
2022-04-13 14:30:47 +08:00
Cai YiWei
3f9fb57349 media: rockchip: isp: to version v1.9.0
Change-Id: Ibc4618f49879e8f5635ff7b0787c3b2ef41805bf
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-04-13 14:29:28 +08:00
Cai YiWei
548280a5d8 media: rockchip: isp: awb or gain debug info to ddr for isp32
Change-Id: Id4de69cc2f33e52133fecec0ac5960db5733910f
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-04-13 14:29:28 +08:00
Cai YiWei
c3c0f230b0 media: rockchip: isp: fix isp debug time for fe/fs irq together
Change-Id: I527953193399c1a4de4da02dfb508f81e92b4daa
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-04-13 14:29:28 +08:00
Sugar Zhang
b9d8b9f8d2 ARM: configs: rv1106: Set MMC_QUEUE_DEPTH to 1
This patch Set MMC_QUEUE_DEPTH to 1 for products with sdcard on
single core.

Save slab memory: ~2.3MB

+CONFIG_MMC_QUEUE_DEPTH=1

Analyze by kmem-probe:

trace_analyze.py -k kernel/ -f kmem.log -b drivers/mmc/ -c kmem_account.txt

Before: 64 depth default

   total    waste      net alloc/free  caller
 --------------------------------------------
 2371584        0  2371584   579/0     mmc_mq_init_request+0x44L
    4096     1576     4096     2/0     mmc_alloc_host+0x28L
    2048      536     2048     1/0     mmc_alloc_card+0x30L
    2048      944     2048     2/0     dw_mci_pltfm_register+0x30L
    1536      144     1536     3/0     mmc_blk_alloc_req+0x88L
    1024      312     1024     1/0     mmc_blk_probe+0x4ccL
     256       80      256     2/0     mmc_gpio_alloc+0x28L
     256       72      256     2/0     dw_mci_rk3288_parse_dt+0x30L
     256       56      256     2/0     dw_mci_probe+0x40L
    1024        0        0     2/2     mmc_get_ext_csd+0x54L

After this patch: 1 depth on single core

   total    waste      net alloc/free  caller
 ---------------------------------------------
   49152        0    49152    12/0     mmc_mq_init_request+0x44L
    4096     1576     4096     2/0     mmc_alloc_host+0x28L
    2048      536     2048     1/0     mmc_alloc_card+0x30L
    2048      944     2048     2/0     dw_mci_pltfm_register+0x30L
    1536      144     1536     3/0     mmc_blk_alloc_req+0x88L
    1024      312     1024     1/0     mmc_blk_probe+0x4ccL
     256       80      256     2/0     mmc_gpio_alloc+0x28L
     256       72      256     2/0     dw_mci_rk3288_parse_dt+0x30L
     256       56      256     2/0     dw_mci_probe+0x40L
    1024        0        0     2/2     mmc_get_ext_csd+0x54L

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I2b429d1b7188c8fdf2a6e229b2cd5941af85cd7c
2022-04-13 14:26:28 +08:00
Algea Cao
74a6df9f7a drm/rockchip: dw_hdmi: Don't enable split mode if another HDMI cannot be obtained
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I19137932989be82d3de3f4afc7d41c57a0067f79
2022-04-13 11:02:24 +08:00
Sandy Huang
2bde53fc60 drm/bridge: synopsys: dw-hdmi-qp: add support rgb bt2020 color space output
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I4e14122b802384be3c1d96eaea3fccfebbb172ec
2022-04-13 11:01:38 +08:00
Zefa Chen
efee59b80f media: rockchip: vicap fixed segfault when call shutdown function
[  177.363952][    C0] SError Interrupt on CPU0, code 0xbe000011 -- SError
[  177.363954][    C0] CPU: 0 PID: 1 Comm: init Not tainted 5.10.66 #68
[  177.363956][    C0] Hardware name: Rockchip RK3588 EVB1 LP4 V10 Board (DT)
[  177.363958][    C0] pstate: 60400009 (nZCv daif +PAN -UAO -TCO BTYPE=--)
[  177.363959][    C0] pc : disable_irq+0x10/0xa0
[  177.363960][    C0] lr : csi2_shutdown+0x50/0x6c
[  177.363961][    C0] sp : ffffffc01211bc20
[  177.363963][    C0] x29: ffffffc01211bc50 x28: ffffff8100b98040
[  177.363967][    C0] x27: 0000000000000000 x26: ffffffc011f7e000
[  177.363970][    C0] x25: ffffffc012099000 x24: ffffff8103325890
[  177.363973][    C0] x23: ffffff8103325818 x22: ffffffc011e48988
[  177.363976][    C0] x21: ffffff8103325810 x20: ffffffc01183bdf0
[  177.363979][    C0] x19: ffffff8107785088 x18: ffffffc012115050
[  177.363982][    C0] x17: 0000000000000009 x16: 0000000000000009
[  177.363985][    C0] x15: 0000000000000000 x14: fffffffeffe00000
[  177.363988][    C0] x13: 0000000000019ba0 x12: 0000000029aaaaf1
[  177.363991][    C0] x11: 001e33635ac745bd x10: ffffffc013790028
[  177.363994][    C0] x9 : ffffffc01379002c x8 : 00000000ffffffff
[  177.363997][    C0] x7 : bbbbbbbbbbbbbbbb x6 : 0000000000000040
[  177.364000][    C0] x5 : 0000000000190018 x4 : ffffff8103d19980
[  177.364003][    C0] x3 : ffffff8100003c90 x2 : 0000000000000001
[  177.364006][    C0] x1 : 0000000000000002 x0 : 000000000000003f
[  177.364010][    C0] Kernel panic - not syncing: Asynchronous SError Interrupt
[  177.364011][    C0] CPU: 0 PID: 1 Comm: init Not tainted 5.10.66 #68
[  177.364013][    C0] Hardware name: Rockchip RK3588 EVB1 LP4 V10 Board (DT)
[  177.364014][    C0] Call trace:
[  177.364015][    C0]  dump_backtrace+0x0/0x1c8
[  177.364016][    C0]  show_stack+0x1c/0x2c
[  177.364017][    C0]  dump_stack_lvl+0xdc/0x12c
[  177.364018][    C0]  dump_stack+0x1c/0x64
[  177.364019][    C0]  panic+0x150/0x3a4
[  177.364020][    C0]  test_taint+0x0/0x30
[  177.364022][    C0]  arm64_serror_panic+0x78/0x84
[  177.364023][    C0]  do_serror+0xe0/0x100
[  177.364024][    C0]  el1_error+0x94/0x118
[  177.364025][    C0]  disable_irq+0x10/0xa0
[  177.364026][    C0]  platform_drv_shutdown+0x24/0x34
[  177.364028][    C0]  device_shutdown+0x174/0x214
[  177.364029][    C0]  kernel_restart+0x44/0x110
[  177.364030][    C0]  __arm64_sys_reboot+0x148/0x21c
[  177.364031][    C0]  el0_svc_common+0xc0/0x23c
[  177.364032][    C0]  do_el0_svc+0x28/0x88
[  177.364033][    C0]  el0_svc+0x14/0x24
[  177.364035][    C0]  el0_sync_handler+0x88/0xec
[  177.364036][    C0]  el0_sync+0x1a8/0x1c0
[  177.365312][    C0] rockchip-thermal fec00000.tsadc: channal 0: temperature(35 C)

Fixes: 3435f139fd ("media: rockchip: vicap add shutdown function")
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I58a76ac614c1a0ad13cf67a8001f6e9ee3d06fe8
2022-04-13 10:31:19 +08:00
Tao Huang
445bc9a587 PM / devfreq: rockchip_dmc: use IS_REACHABLE instead of IS_ENABLED
Fixes: 990b7b2229 ("PM / devfreq: rk3399_dmc: rename driver to 'rockchip_dmc'")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I75bdfa8cbb0e1625f696b694d64c49cee3f4dee0
2022-04-12 20:06:37 +08:00
Tao Huang
c229bcb898 soc: rockchip: vendor storage: use IS_REACHABLE instead of IS_ENABLED
Fixes: 78a35286b8 ("soc: rockchip: vendor storage: make modules support")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I4ac08b8d0da88587b3b77a731e3db5e313fdd41c
2022-04-12 20:04:57 +08:00
Tao Huang
8bfe782d85 soc: rockchip: cpuinfo: use IS_REACHABLE instead of IS_ENABLED
Fixes: 7bb3c2ecbd ("soc: rockchip: cpuinfo: Support building as module")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I7841dffd35b49571578dbfd8787741a2cd504bc5
2022-04-12 20:03:17 +08:00
Tao Huang
b1e19569a7 drm/rockchip: drv: use IS_REACHABLE instead of IS_ENABLED
Fixes: 4f8318d63e ("drm/rockchip: drv: add rockchip_drm_get_sub_dev_type")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I490168e9641a2cf6ddd78cdd9a83ac0a22bb0c58
2022-04-12 20:01:22 +08:00
Tao Huang
0dfcc9620e drm/panel: simple: use IS_REACHABLE instead of IS_ENABLED
Fixes: 697bbdf85b ("drm/panel: simple: Add support loader protect and power invert")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I60cec15818adc26f8c7dbb8867426fafddcd365a
2022-04-12 19:58:02 +08:00
Damon Ding
6f897d3703 ARM: dts: rockchip: rv1106-evb: add cma node when using rgb/bt1120 to hdmi
DRM needs to allocate framebuffer through cma.

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I45d4bc55339afccf116e371210c9d0e7f615d57a
2022-04-12 19:52:57 +08:00
Jon Lin
b55ede58de mtd: spi-nor: puya: Add code
Change-Id: Iff34f292ddc72234b0f1e4b92d38a1cd547387c5
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2022-04-12 19:50:15 +08:00
Tao Huang
f5958bcb54 phy: rockchip: csi2-dphy: select V4L2_FWNODE
Fixes: d9b335b5d8 ("phy: rockchip: csi2-dphy: fix compile error")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I0263e26a410bc0186cc771d8fda8cfe90527511b
2022-04-12 19:19:58 +08:00
Tao Huang
344e3a162c clk: rockchip: Remove __init from rockchip_clk_register_armclk()
Fix build as module.

Fixes: 3151edc8a4 ("clk: rockchip: Avoid __clk_lookup() calls")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Id4f153fbbb9459768acde2bab38ef0ba674748e1
2022-04-12 19:19:58 +08:00
Jon Lin
a7b3870670 mtd: spi-nor: core: Change to use msleep for erase ops
NOR flash erase takes more than tens of milliseconds, so msleep can
better avoid frequent IO waiting actions.

Change-Id: I0c10ddd33dd3d3d34b0fb5d662be67a4549d0da2
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2022-04-12 19:04:13 +08:00
Cai YiWei
0f77ce49ad media: rockchip: isp: procfs build with different isp version
Change-Id: I50437fdf8dd18811f5487a87831c5d9827f9ceb4
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-04-12 19:01:17 +08:00
Damon Ding
fb7a4b25bf ARM: dts: rockchip: rv1106-evb: disable sdio when using rgb/bt1120 to hdmi
The pins of sdmmc1 and lcd are multiplexed.

SDMMC1_D0_M0 - LCD_D9  - GPIO2_A1
SDMMC1_D1_M0 - LCD_D8  - GPIO2_A0
SDMMC1_D2_M0 - LCD_D13 - GPIO2_A5
SDMMC1_D3_M0 - LCD_D12 - GPIO2_A4
SDMMC1_CLK   - LCD_D10 - GPIO2_A2
SDMMC1_CMD   - LCD_D11 - GPIO2_A3

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: Ie90e8e41198f07d9c1eebe48655cf848304f3f45
2022-04-12 19:00:08 +08:00
Tony Xie
23b11b63e9 firmware: rockchip_sip: support hdcp.
Signed-off-by: Tony Xie <tony.xie@rock-chips.com>
Change-Id: I2a27208577202f4a40f2208723ee23d6dd192aaf
2022-04-12 17:44:31 +08:00
Damon Ding
bc50dcd4a2 ARM: dts: rockchip: rv1106: modify the default drive strength of lcd pins
According to the SI report, modify the drive strength
of lcd pins can improve the signal quality and alleviate
overshoot.

interface          clk          others
bt1120             8mA          6mA
bt656              6mA          4mA
rgb                10mA         8mA

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: Ia0e64fbb61d2159da2b12ef95ebf8c7d39e83abf
2022-04-12 16:43:07 +08:00
Zefa Chen
6ec052094e media: i2c: sc500ai fixed vflip err
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I184fd7e06514cae76d02a1990086e98fcf3e9a33
2022-04-12 16:31:19 +08:00
Tao Huang
fb89392690 ARM: rv1106_defconfig: Disable IOSCHED_BFQ and MQ_IOSCHED_KYBER
before:
   text	   data	    bss	    dec	    hex	filename
2507629	1044400	  83100	3635129	 3777b9	vmlinux

after:
   text	   data	    bss	    dec	    hex	filename
2487549	1039912	  83596	3611057	 3719b1	vmlinux

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Iace1ecd3f7c26be3b0d7051a1f9929d1d032d3af
2022-04-12 16:08:47 +08:00
Algea Cao
a3c954fda3 phy: rockchip-samsung-hdptx-hdmi: Don't get rate when dclk enable
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I2aaf01140c681b07823a90ff046fa55621dce181
2022-04-12 15:24:21 +08:00