Commit Graph

1281044 Commits

Author SHA1 Message Date
Avichal Rakesh
5f00f1b5a7 UPSTREAM: usb: gadget: uvc: Fix use-after-free for inflight usb_requests
Currently, the uvc gadget driver allocates all uvc_requests as one array
and deallocates them all when the video stream stops. This includes
de-allocating all the usb_requests associated with those uvc_requests.
This can lead to use-after-free issues if any of those de-allocated
usb_requests were still owned by the usb controller.

This is patch 2 of 2 in fixing the use-after-free issue. It adds a new
flag to uvc_video to track when frames and requests should be flowing.
When disabling the video stream, the flag is tripped and, instead
of de-allocating all uvc_requests and usb_requests, the gadget
driver only de-allocates those usb_requests that are currently
owned by it (as present in req_free). Other usb_requests are left
untouched until their completion handler is called which takes care
of freeing the usb_request and its corresponding uvc_request.

Now that uvc_video does not depends on uvc->state, this patch removes
unnecessary upates to uvc->state that were made to accommodate uvc_video
logic. This should ensure that uvc gadget driver never accidentally
de-allocates a usb_request that it doesn't own.

Change-Id: Ie1cc134c191e087bcca114832ad99f5d3119e682
Link: https://lore.kernel.org/7cd81649-2795-45b6-8c10-b7df1055020d@google.com
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Reviewed-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Suggested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Tested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Link: https://lore.kernel.org/r/20231109004104.3467968-4-arakesh@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit da324ffce34c521b239f319d4051260444a3eb4a)
2025-03-31 14:31:00 +08:00
Avichal Rakesh
c5a3634277 UPSTREAM: usb: gadget: uvc: move video disable logic to its own function
This patch refactors the video disable logic in uvcg_video_enable
into its own separate function 'uvcg_video_disable'. This function
is now used anywhere uvcg_video_enable(video, 0) was used.

Change-Id: Ifba331485eee8b671126d92f5af7a2f71d79ecc2
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Suggested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Link: https://lore.kernel.org/r/20231109004104.3467968-3-arakesh@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 2079b60bda3257146a4e8ed7525513865f7e6b3e)
2025-03-31 14:31:00 +08:00
Avichal Rakesh
5762defe3b UPSTREAM: usb: gadget: uvc: Allocate uvc_requests one at a time
Currently, the uvc gadget driver allocates all uvc_requests as one array
and deallocates them all when the video stream stops. This includes
de-allocating all the usb_requests associated with those uvc_requests.
This can lead to use-after-free issues if any of those de-allocated
usb_requests were still owned by the usb controller.

This patch is 1 of 2 patches addressing the use-after-free issue.
Instead of bulk allocating all uvc_requests as an array, this patch
allocates uvc_requests one at a time, which should allows for similar
granularity when deallocating the uvc_requests. This patch has no
functional changes other than allocating each uvc_request separately,
and similarly freeing each of them separately.

Change-Id: Ifc4c21cb46d5c947b6be03c5423ddfcbd5d9f23f
Link: https://lore.kernel.org/7cd81649-2795-45b6-8c10-b7df1055020d@google.com
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Reviewed-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Suggested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Tested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Link: https://lore.kernel.org/r/20231109004104.3467968-2-arakesh@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit aeb686a98a9e9743c4c0338957e59643a2708146)
2025-03-31 14:31:00 +08:00
Avichal Rakesh
cdea73055c BACKPORT: usb: gadget: uvc: prevent use of disabled endpoint
Currently the set_alt callback immediately disables the endpoint and queues
the v4l2 streamoff event. However, as the streamoff event is processed
asynchronously, it is possible that the video_pump thread attempts to queue
requests to an already disabled endpoint.

This change moves disabling usb endpoint to the end of streamoff event
callback. As the endpoint's state can no longer be used, video_pump is
now guarded by uvc->state as well. To be consistent with the actual
streaming state, uvc->state is now toggled between CONNECTED and STREAMING
from the v4l2 event callback only.

Change-Id: I64c1a72c9797858b96f5f1bb828258935c0318be
Link: https://lore.kernel.org/20230615171558.GK741@pendragon.ideasonboard.com/
Link: https://lore.kernel.org/20230531085544.253363-1-dan.scally@ideasonboard.com/
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Reviewed-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Tested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Link: https://lore.kernel.org/r/20231109004104.3467968-1-arakesh@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 991544dc579b636e69defa3eec486fd6f6191e59)
2025-03-31 14:31:00 +08:00
Yue Haibing
92b18f7885 UPSTREAM: usb: gadget: function: Remove unused declarations
These declarations are not implemented anymore, remove them.

Change-Id: Ie4149af1aa41b5b7aac98e304334b44fb9449be6
Signed-off-by: Yue Haibing <yuehaibing@huawei.com>
Link: https://lore.kernel.org/r/20230818124025.51576-1-yuehaibing@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit ae25761157)
2025-03-31 14:31:00 +08:00
Avichal Rakesh
465b830c99 UPSTREAM: usb: gadget: uvc: clean up comments and styling in video_pump
This patch elaborates on some of the edge cases handled by
video_pump around setting no_interrupt flag, and brings the
code style in line with rest of the file.

Change-Id: I4824fb484e0901933e00218e7464d535acb609fc
Link: https://lore.kernel.org/20230602151916.GH26944@pendragon.ideasonboard.com/
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Message-ID: <20230602220455.313801-1-arakesh@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 5ae8a35459)
2025-03-31 14:31:00 +08:00
Shuzhen Wang
32347a1a4d UPSTREAM: usb: gadget: uvc: Add missing initialization of ssp config descriptor
In case the uvc gadget is super speed plus, the corresponding config
descriptor wasn't initialized. As a result, the host will not recognize
the devices when using super speed plus connection.

This patch initializes them to super speed descriptors.

Change-Id: I10aee17bc461f8d3d3b61f406d39113289ca951a
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Shuzhen Wang <shuzhenwang@google.com>
Link: https://lore.kernel.org/r/20231027183440.1994315-1-shuzhenwang@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit c70793fb7632a153862ee9060e6d48131469a29c)
2025-03-31 14:30:59 +08:00
Linyu Yuan
013e3bbfbb BACKPORT: usb: gadget: unconditionally allocate hs/ss descriptor in bind operation
Take f_midi_bind() for example,  when composite layer call it, it will
allocate hs descriptor by calling gadget_is_dualspeed() API to check
gadget max support speed capability, but most other gadget function didn't
do like this.

To follow other function drivers, it is safe to remove the check which
mean support all possible link speed by default in function driver.

Similar change apply to midi2 and uvc.

Also in midi and midi2, as there is no descriptor difference between
super speed and super speed plus, follow other gadget function drivers,
do not allocate descriptor for super speed plus, composite layer will
handle it properly.

Change-Id: Iabf23f6063767ad68e29dd13c05e2cceaf8d461e
Signed-off-by: Linyu Yuan <quic_linyyuan@quicinc.com>
Link: https://lore.kernel.org/r/20230803091053.9714-5-quic_linyyuan@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 46decc82ff)
2025-03-31 14:30:59 +08:00
Michael Grzeschik
3237d532d5 UPSTREAM: usb: gadget: uvc: default the ctrl request interface offsets
For the userspace it is needed to distinguish between requests for the
control or streaming interface. The userspace would have to parse the
configfs to know which interface index it has to compare the ctrl
requests against. Since the interface numbers are not fixed, e.g. for
composite gadgets, the interface offset depends on the setup.

The kernel has this information when handing over the ctrl request to
the userspace. This patch removes the offset from the interface numbers
and expose the default interface defines in the uapi g_uvc.h.

Change-Id: Idb6845c962d3da6d2a96c5d5e0083b39e5bba8af
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Link: https://lore.kernel.org/r/20221011075348.1786897-1-m.grzeschik@pengutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit d182bf156c)
2025-03-31 14:30:59 +08:00
Daniel Scally
fb9e41b3bf UPSTREAM: usb: gadget: uvc: Rename bmInterfaceFlags -> bmInterlaceFlags
In the specification documents for the Uncompressed and MJPEG USB
Video Payloads, the field name is bmInterlaceFlags - it has been
misnamed within the kernel.

Although renaming the field does break the kernel's interface to
userspace it should be low-risk in this instance. The field is read
only and hardcoded to 0, so there was never any value in anyone
reading it. A search of the uvc-gadget application and all the
forks that I could find for it did not reveal any users either.

Change-Id: I9d9903cebd796443387a40664a753498a10d6e6a
Fixes: cdda479f15 ("USB gadget: video class function driver")
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
Link: https://lore.kernel.org/r/20221206161203.1562827-1-dan.scally@ideasonboard.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 81c25247a2)
2025-03-31 14:30:59 +08:00
William Wu
52e4d9272b Revert "usb: gadget: uvc: wait for req complete before free req"
This reverts commit b37ab4ccd0.

Change-Id: I42a80e2d9c7c5691229c2d25c575ef246b6499dd
Signed-off-by: William Wu <william.wu@rock-chips.com>
2025-03-31 14:30:59 +08:00
Huibin Hong
dc2c85b45d arm64: dts: rockchip: rv1126b: add debug node
Change-Id: Ifb100e9c0e33417f3e71f2be509dc0b85c6fdfdf
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2025-03-31 06:11:16 +00:00
Tao Huang
c430648bd3 ARM: configs: rv1126b: Move debug config to evb
Change-Id: I05ce372a04a75f436cc281d922b5063274580d63
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-03-31 06:10:55 +00:00
Elaine Zhang
ae54075776 clk: rockchip: rv1126b: add sclk_ddr
Change-Id: I64db75cb45a5e2704c99dd9003a3ec7e49a3c5aa
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2025-03-31 06:08:23 +00:00
Lin Jinhan
7869f2591c crypto: rockchip: rkce: fix asym NULL point reference
do_one_request cannot call crypto_finalize_akcipher_request,
 otherwise it will result in a null pointer reference.
The asym algorithm needs to be changed to synchronous mode.

Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: I6615f113691a334b148da0364b7a1e3764d27739
2025-03-31 02:38:36 +00:00
Finley Xiao
2f09ca3e7b arm64: dts: rockchip: rv1126b: Add clocks pd vdo
The top cru source clock of aclk rkvdec should enable when power on/off pd.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Ib6eea60ca59ad8a5fb79713781476f710bb51d9c
2025-03-31 01:12:09 +00:00
LiuDiMing Lin
8bf7cca1e6 arm64: dts: rockchip: rv1126b-evb-cam-csi0: add gc8613
Signed-off-by: LiuDiMing Lin <fenrir.lin@rock-chips.com>
Change-Id: Ic55b1bd9095bdf6bbc09f1a864e07be7085ac715
2025-03-31 01:11:42 +00:00
LiuDiMing Lin
22e1b4366e ARM: configs: rv1126b-evb: Enable CONFIG_VIDEO_GC8613
Signed-off-by: LiuDiMing Lin <fenrir.lin@rock-chips.com>
Change-Id: Iaafc5f3a59d64202821318970ca7edecb4543f6c
2025-03-31 01:11:42 +00:00
Mingwei Yan
21e5b397be media: rockchip: vpss: 1126b online scale add new chn ckg_dis
Signed-off-by: Mingwei Yan <mingwei.yan@rock-chips.com>
Change-Id: Icd876648d5b4211261c0260c1f240dd587e5d31e
2025-03-31 01:10:53 +00:00
Mingwei Yan
e64774227f media: rockchip: vpss: fix online rockit no ch4_ch5
Signed-off-by: Mingwei Yan <mingwei.yan@rock-chips.com>
Change-Id: If057721051c58f7231c4f7aa43bb94d134becb54
2025-03-31 01:10:53 +00:00
Xuhui Lin
fcdfefe06c arm64: dts: rockchip: rv1126b: Set spi0 and spi1 num-cs 2
Change-Id: I35525359c460ac40371d3cfe8ab4cce04222f9d9
Signed-off-by: Xuhui Lin <xuhui.lin@rock-chips.com>
2025-03-30 14:31:16 +08:00
Weiwen Chen
a5d6237c4c arm64: dts: rockchip: rv1126b-evb: enable fspi0
Signed-off-by: Weiwen Chen <cww@rock-chips.com>
Change-Id: I4a5e00cefad1141756ab82947b12b3a8c41a83d8
2025-03-29 09:05:22 +00:00
Hu Kejun
3c30c4e709 arm64: dts: rockchip: rv1126b: fix aiisp power domain status is error
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
Change-Id: I2c4a923415309fadc46beab8b06aa973120beee2
2025-03-29 14:23:34 +08:00
Elaine Zhang
829933f380 clk: rockchip: rv1126b: add CLK_IS_CRITICAL for hclk_vi_root/pclk_vi_root/pclk_pmu_hp_timer
Change-Id: If33a49d91cd19af3696a1081f04e9412d2fdfb2c
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2025-03-28 11:08:03 +00:00
LongChang Ma
556873febd media: i2c: add gc8613 sensor driver
Signed-off-by: LongChang Ma <chad.ma@rock-chips.com>
Change-Id: I4c28742fc59b148389b381e81b5c1cc9f5612461
2025-03-28 10:52:41 +00:00
Xuhui Lin
f48bd3826c arm64: dts: rockchip: rv1126b: Change to OS_REG8 for reboot
ATF will use npor reset, so we need a os_reg that can't be reset.

Change-Id: Ie13953a915524b203808909c090eb4d5d88381fc
Signed-off-by: Xuhui Lin <xuhui.lin@rock-chips.com>
2025-03-28 10:52:05 +00:00
Yu Qiaowei
1c0e6c58e5 video: rockchip: rga3: fix match core error in rotate mode
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I8de477afdafcb127f3bf4dc53d2710c97e6d055f
2025-03-28 10:51:41 +00:00
David Wu
ec366993d0 net: phy: rockchip-fephy: Change 100M amplitude
According to the hardware test, the current 100M amplitude is too high,
and it is recommended to modify it to 0xc.

Change-Id: I6a50109d6ff171d4a3f1605b43bc6ca0ef21a750
Signed-off-by: David Wu <david.wu@rock-chips.com>
2025-03-28 10:51:06 +00:00
David Wu
91f17b34fa arm64: dts: rockchip: rv1126b-evb: Use 50M clkin for macphy
Change-Id: I61e335da6ce875292a4d7ec1044f512e1540c8de
Signed-off-by: David Wu <david.wu@rock-chips.com>
2025-03-28 10:50:41 +00:00
David Wu
4ecf78653a ethernet: stmmac: dwmac-rk: Use 50M clkin sel for macphy
It's better to use a 50M clock for fephy, and the disable enable switch
ensures better timing.

Change-Id: I965648ce08a6e2c7c6137b18e9390cc589f48afe
Signed-off-by: David Wu <david.wu@rock-chips.com>
2025-03-28 10:50:41 +00:00
Su Yuefu
e485322e16 media: i2c: sc450ai: Increase vblank of 2688x1520@30fps configuration
Signed-off-by: Su Yuefu <yuefu.su@rock-chips.com>
Change-Id: I88c0965ec9b1465dd147d559e29ee4f54d478fae
2025-03-28 17:22:25 +08:00
Zefa Chen
eac1461351 media: i2c: techpoint fixes error process of register fail
Change-Id: Ieb45667bdc846f387db55f161b1345ccb32a6701
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
2025-03-28 16:57:04 +08:00
Shengfei Xu
f9a490e64d regulator: rk806: Implement differentiated suspend modes based on the versions
Change-Id: I1cca19f0e2def02bb5e10855923d711d132afc43
Signed-off-by: Shengfei Xu <xsf@rock-chips.com>
2025-03-28 08:07:55 +00:00
Zitong Cai
83c34cbe28 arm64: configs: rk3576_vehicle: Disable CONFIG_MFD_MAX96745 and CONFIG_MFD_MAX96755F
Change-Id: I1e6b4c6a02c25d6b6ac722fd468c735047a6ec65
Signed-off-by: Zitong Cai <zitong.cai@rock-chips.com>
2025-03-28 08:04:31 +00:00
ZhengRong Ruan
bd6fc4aaeb arm64: dts: rockchip: rv1126bp-evb: include rv1126bp-evb-v14-cam.dtsi instead
Signed-off-by: ZhengRong Ruan <ryan.ruan@rock-chips.com>
Change-Id: I98682ad2d61bc1084f9b26ffffe7885e8ec4efb7
2025-03-28 08:01:49 +00:00
Chaoyi Chen
4607212c34 drm/rockchip: vop: Fix dsp_layer_sel mask for RV1126
Fixes: fa6c7f1111 ("drm/rockchip: vop: sync with linux-4.19 for rk3399 vop")

Change-Id: I72a6aa71b3eccf761a0fa1884ab20751a10c3912
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2025-03-28 08:00:48 +00:00
Chaoyi Chen
d4ce616382 drm/rockchip: vop: Add display layer sel support for RV1126B
The layer sel configuration is exclusive for RV1126B, only one of
them can be set to 0b01 for either layer2_sel or layer1_sel when two
layers are displayed on the same time.

1. For RV1126B:
dsp_layer2_sel, that is top layer:
- 2'b00 WIN0 is top layer
- 2'b01 WIN2 is top layer

dsp_layer1_sel, that is bottom layer:
- 2'b00 WIN0 is bottom layer
- 2'b01 WIN2 is bottom layer

For {dsp_layer2_sel, dsp_layer1_sel}:
- 4'b0001 : WIN0 on the top, WIN2 on the bottom
- 4'b0100 : WIN2 on the top, WIN0 on the bottom

2. For other version:

- 2'b00 select WIN0
- 2'b10 select WIN2

Change-Id: I4ab4928868a599e9b398e83aca88074c6e5eaabb
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2025-03-28 08:00:48 +00:00
Xuhui Lin
307307e83f arm64: dts: rockchip: rv1126b-evb1: set regulator-boot-on for vcc_sd
1. Rockchip U-Boot will use kernel dtb by default.
2. The legacy U-Boot GPIO driver need regulator-boot-on in dtb to set
   correct SDMMC0_PWREN value.
3. regulator-boot-on will not affect SDMMC0 function in kernel.

Change-Id: I7160a2c1f29e35e2fcf29389dca60f507dea8cb4
Signed-off-by: Xuhui Lin <xuhui.lin@rock-chips.com>
Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
2025-03-28 07:14:16 +00:00
Lin Jinhan
8242807f89 soc: rockchip: decompress_user fix scatter list check rules
sg_phys(sgl) == SZ_4G must be regarded as an illegal value
 because the address space exceeds 32 bits.

Change-Id: I50dca3970654ea8ce4d60ea20ced7d5dcc843724
Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
2025-03-28 06:11:47 +00:00
Hongjin Li
d0bc6a20e3 video: rockchip: mpp: rv1126b: Remove reduce_freq func for jpegdec.
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: Icdb37971e07fb931c234697aca7696322f4c206a
2025-03-28 06:06:20 +00:00
Zefa Chen
ed3daa8352 arm64: dts: rockchip: rv1126b-evb-cam-csi0: add imx327 lvds
Change-Id: I04de15defb64cd135c22ab28f9428a7b9e78ad35
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
2025-03-28 03:33:10 +00:00
Zefa Chen
0e1e415515 phy: rockchip: mipi csi2 dphy fixes error reg of rv1126b lvds path0
Change-Id: Idcb76e1baeedd53ac3cba0d9f9dd917d292b7954
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
2025-03-28 03:33:02 +00:00
Zefa Chen
17595d3848 media: rockchip: vicap fixes error of lvds for rv1126b
and compatitle with mipi and lvds links

Change-Id: I8bf79bdce46dc1979d7e17dabbcd87eae726e82d
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
2025-03-28 03:32:54 +00:00
Caesar Wang
908356ad01 arm64: configs: enable uvc camera for rv1126b_defconfig
Change-Id: I6ba3c6482d3f1b501f93ca76b79073e7144b8ca5
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2025-03-28 10:54:45 +08:00
Caesar Wang
3555e6e9ee arm64: configs: enable mpp configs for rv1126b
Change-Id: Ia0283c98297cfad00f1bc6f476cac44f0d16c2ea
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
2025-03-28 10:54:45 +08:00
Ziyuan Xu
c458c9f8a8 net: ethernet: stmmac: ensure balanced gpiod_put when reset_gpio is non-existent
[    2.911481] ------------[ cut here ]------------
[    2.911491] WARNING: CPU: 2 PID: 1 at drivers/gpio/gpiolib-devres.c:327 devm_gpiod_put+0x38/0x44
[    2.911523] Modules linked in:
[    2.911538] CPU: 2 PID: 1 Comm: swapper/0 Not tainted 6.1.118 #4
[    2.911555] Hardware name: Rockchip RV1126B EVB2 V10 Board (DT)
[    2.911566] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[    2.911583] pc : devm_gpiod_put+0x38/0x44
[    2.911601] lr : devm_gpiod_put+0x2c/0x44
[    2.911617] sp : ffffffc00a7cb8e0
[    2.911626] x29: ffffffc00a7cb8e0 x28: 0000000000000000 x27: ffffffc009b300c8
[    2.911653] x26: 0000000000000020 x25: ffffff80036ee4a0 x24: ffffff807fb95230
[    2.911679] x23: ffffff80036ee4a0 x22: 0000000000000000 x21: 0000000000000200
[    2.911704] x20: 0000000000000000 x19: ffffff8003700880 x18: 0000000000000030
[    2.911730] x17: 00000000adb2a87f x16: 000000004c06ebf7 x15: ffffffffffffffff
[    2.911757] x14: 0000000000000000 x13: 0a303d6f6970675f x12: 7465736572205d35
[    2.911782] x11: fffffffffffc3f18 x10: 00000000001104c0 x9 : ffffffc0089860b4
[    2.911808] x8 : 0101010101010101 x7 : 79616c65642d7465 x6 : 1d0f1d16acf2e5f3
[    2.911833] x5 : ffffff8003215eb8 x4 : 0000000000000000 x3 : ffffffc0089859a0
[    2.911858] x2 : ffffffc00a7cb8f8 x1 : ffffff8003215eb8 x0 : 00000000fffffffe
[    2.911884] Call trace:
[    2.911893]  devm_gpiod_put+0x38/0x44
[    2.911911]  stmmac_mdio_reset+0x11c/0x160
[    2.911930]  __mdiobus_register+0x14c/0x380
[    2.911948]  __of_mdiobus_register+0xbc/0x3c0
[    2.911969]  stmmac_mdio_register+0x140/0x334
[    2.911986]  stmmac_dvr_probe+0xf3c/0x1124
[    2.912000]  rk_gmac_probe+0x59c/0x930
[    2.912017]  platform_probe+0x6c/0xd4
[    2.912039]  really_probe+0xc4/0x3e0
[    2.912058]  __driver_probe_device+0x80/0x160
[    2.912077]  driver_probe_device+0x40/0x110
[    2.912096]  __driver_attach+0xec/0x1f0
[    2.912115]  bus_for_each_dev+0x74/0xd0
[    2.912132]  driver_attach+0x28/0x30
[    2.912150]  bus_add_driver+0x178/0x234
[    2.912168]  driver_register+0x7c/0x130
[    2.912188]  __platform_driver_register+0x2c/0x34
[    2.912210]  rk_gmac_dwmac_driver_init+0x20/0x28
[    2.912227]  do_one_initcall+0x48/0x250
[    2.912245]  kernel_init_freeable+0x298/0x300
[    2.912266]  kernel_init+0x28/0x12c
[    2.912288]  ret_from_fork+0x10/0x20

Fixes: 72834b57d9 ("ethernet: stmmac: Release reset gpio desc for mdio reset")
Change-Id: I5d0f171abf5f66d2fe5eaa6e8089e870d6d4f308
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Signed-off-by: David Wu <david.wu@rock-chips.com>
2025-03-28 02:44:37 +00:00
Su Yuefu
f13e482d26 arm64: dts: rockchip: rv1126b-evb3-v10: Add spi nor flash support
Signed-off-by: Su Yuefu <yuefu.su@rock-chips.com>
Change-Id: Iac977e53c11b689c4727e055a00e49d7bb3659ec
2025-03-28 02:35:37 +00:00
Su Yuefu
8d2f28d05e arm64: dts: rockchip: rv1126b-evb3-v10: fix pwm pinctrl error
Signed-off-by: Su Yuefu <yuefu.su@rock-chips.com>
Change-Id: I8a48ff00a42ae44d92dec0e534d0c3b36ad5e995
2025-03-28 02:35:17 +00:00
Yandong Lin
8296f8e177 arm64: dts: rockchip: rv1126b: Modify clk_core to 550M for rkvenc
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I08a1f2f753dadab7c17ea93b4420f919b7135eff
2025-03-28 09:59:46 +08:00
Sugar Zhang
4d7554b1f4 ARM: dts: rockchip: Add RV1126B EVB Board
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I40a076eb0a9325220348dfcb27fb8d3de6a7d3ab
2025-03-27 20:43:39 +08:00