Fixup for differences of the previous FROMLIST patches for
rockchip isp1 driver as following,
- regression of UPSTREAM commits
+ d6dd645eae: ("[media] media: videobuf2: Move timestamp to vb2_buffer")
+ 36c0f8b32c: ("[media] vb2: replace void *alloc_ctxs by struct device *alloc_devs")
+ df9ecb0cad: ("[media] vb2: drop v4l2_format argument from queue_setup")
- API changes of (4.4 v.s. UPSTREAM)
+ media_entity_pipeline_start/stop() v.s. media_pipeline_start/stop()
+ media_entity_init() v.s. media_entity_pads_init()
+ media_entity_create_link() v.s. media_create_pad_link()
+ media_device_init()
+ entity function flags: MEDIA_ENT_F_IO_V4L and MEDIA_ENT_F_V4L2_SUBDEV_UNKNOWN
BUG=b:36227021
TEST=Camera works on Scarlet with the whole series
Change-Id: I4d9c9f784210fda2165ac5372baea09a9c01a30d
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
Add the Rockchip ISP1 specific processing parameter format
V4L2_META_FMT_RK_ISP1_PARAMS and metadata format
V4L2_META_FMT_RK_ISP1_STAT_3A for 3A.
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
BUG=b:36227021
TEST=Camera works on Scarlet with the whole series
(am from https://patchwork.linuxtv.org/patch/46247/)
Conflicts:
drivers/media/v4l2-core/v4l2-ioctl.c
Change-Id: I9ede55b68c075e54cefb11edecf5ef68b5452ec4
Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
This patch adds driver for Omnivision's ov2685 sensor.
Though the ov2685 can output yuv data, this driver only
supports the raw bayer format, including the following features:
- output 1600x1200 at 30fps
- test patterns
- manual exposure/gain control
- vblank and hblank
- media controller
- runtime pm
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
BUG=b:36227021
TEST=Camera works on Scarlet with the whole series
(am from https://patchwork.linuxtv.org/patch/46251/)
Conflicts:
drivers/media/i2c/Kconfig
drivers/media/i2c/Makefile
Change-Id: Ia73ea2ff1d01226824f98bf4a45b98303223eed8
Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
This patch adds driver for Omnivision's ov5695 sensor,
the driver supports following features:
- supported resolutions
+ 2592x1944 at 30fps
+ 1920x1080 at 30fps
+ 1296x972 at 60fps
+ 1280x720 at 30fps
+ 640x480 at 120fps
- test patterns
- manual exposure/gain(analog and digital) control
- vblank and hblank
- media controller
- runtime pm
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
BUG=b:36227021
TEST=Camera works on Scarlet with the whole series
(am from https://patchwork.linuxtv.org/patch/46248/)
Conflicts:
drivers/media/i2c/Makefile
Change-Id: Iaeb971c609d4a6d62fb23ae3b5c7881d4d3481f7
Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
This adds support for the BOE Corporation MV270QUM-N10 27"
eDP(HBR2, 5.4Gbps) UHD TFT LCD panel, which can be supported
by the simple panel driver.
Change-Id: Ib7df60a7c9a5cd4755a67bedef35a95bcc16a498
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
if the combo is avsd and vdpu,clk_core is not necessary;
others case,the DTS will set the clk_core and here will
get the clk as well.
Change-Id: I5e33375e4655763791b9c4418bce7cbe0f5ac530
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
add power model for dmc and add dmc as a cooling device in thermal
control
Change-Id: I175e503b671be27e777693745a127a7830c6e829
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
add power model for rkvdec and add rkvdec as a cooling device in thermal
control
Change-Id: I4560f9b2a6b395d565652549a8f0dbcc1903da6f
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
add vpu module as a cooling device in thermal control
Change-Id: Ib71d925b32dbf861f62abf38b84b92c9f5bf9e3e
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
The ap6212a/ap6212 firmware can not support MFP protocol
Change-Id: I9835e7da0e7dbac6554f75ff28c3c3e9e785f39d
Signed-off-by: Xu Xuehui <xxh@rock-chips.com>
According to the actual schematic designed by kylin board, update and
rename the regulators for rk808 node information.
Especially gpu regulator voltage, the schematic didn't have this
regulator, this regulaor should be applied by cpu regulator since the
cpu/gpu/ddr are belong to the same logic power supply.
Change-Id: I39e4cf18969391da396cc775f8660701e42977bd
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
due to optee os bugfix patch for FIQ:
cf6a4d8 arm: sm: [bugfix] save/restore fiq core registers
we have to update sm_nsec_ctx to keep same with optee os, otherwise
FIQ debugger "bt" command is abnormal.
Change-Id: I950cfacd1c34abd88fbee2862c593b5fa59387bd
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Register rockchip fiq debugger as platform device, also do some
codingstyle for the driver.
Change-Id: I78e6c3365275e3d45e37eee86378c350a18f259d
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
When iommu fall into interrupt, status register indicate more information
than read or write flag, so use status register as parameter when callback
report_iommu_fault
Change-Id: I07c6b9996f305eb970bd1d1d2b0f2a7db53cc6ba
Signed-off-by: Simon Xue <xxm@rock-chips.com>
When the devfreq cooling device was designed, it was an oversight not to
pass a pointer to the struct devfreq as the first parameters of the
callbacks. The design patterns of the kernel suggest it for a good
reason.
By passing a pointer to struct devfreq, the driver can register one
function that works with multiple devices. With the current
implementation, a driver that can work with multiple devices has to
create multiple copies of the same function with different parameters so
that each devfreq_cooling_device can use the appropriate one. By
passing a pointer to struct devfreq, the driver can identify which
device it's referring to.
Change-Id: I384bf9aafd2391eccab2ca6a76e4e57f2740aa6b
Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Eduardo Valentin <edubezval@gmail.com>
Reviewed-by: Punit Agrawal <punit.agrawal@arm.com>
Reviewed-by: Ørjan Eide <orjan.eide@arm.com>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Signed-off-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
(cherry picked from commit 3aa5374376)
Having IPI_CPU_BACKTRACE as SGI15 may not work if the kernel is
running in non-secure mode and that the secure firmware has
decided to follow ARM's recommendations that SGI8-15 should
be reserved for secure purpose.
Now that we are "only" using SGI0-6, change IPI_CPU_BACKTRACE
to use SGI7, which makes it more likely to work.
Change-Id: I11e99a59024f1d256b45ede9cc2a89bb4d3dc1ae
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
(cherry picked from commit e7273ff49a)
Since 9a46ad6d6d ("smp: make smp_call_function_many() use logic
similar to smp_call_function_single()"), the core IPI handling
has been simplified, and generic_smp_call_function_interrupt is
now the same as generic_smp_call_function_single_interrupt.
This means that one of IPI_CALL_FUNC and IPI_CALL_FUNC_SINGLE has
become redundant. We can then safely drop IPI_CALL_FUNC_SINGLE,
and use only IPI_CALL_FUNC.
This has the advantage of reducing the number of SGI IDs we're using
(a fairly scarse resource).
Tested on a dual A7 board.
Change-Id: I279a90b950c713e822bc4db9844788d7c05e7d77
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
(cherry picked from commit 89d798b73d)
It turns out that 5us of caldone isn't enough for all cases, so
let's retry some more times to wait for caldone. And use the API
instead of open-coding for polling dllrdy, but no functional change
intended.
Change-Id: I91e776871a223fc76f76c71ffa0d32c689fcca4e
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
cpu0-supply is for older DTs, we had better use new name from now on.
Change-Id: Icb80f5ad4718aeb1e112f317883a0cc756a5eaef
Signed-off-by: Liang Chen <cl@rock-chips.com>