Reset pmic and output NPOR signal 5ms when system reboot.
Change-Id: I8da3ee636faf193a7afcedae66daf7d12a883aa8
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
- Don't require pwrctrl dvs if hw compatible version >= 3.
- Auto parse pwrctrl active pol from GPIO_ACTIVE_{HIGH,LOW} flag.
- Reset pmic and soc when system reboot if required.
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I29e60c2a717cee5c9d1e3c6e46ee687352d4a1be
This is use for battery-ipc application with 400w resolution camera
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Change-Id: I5ff04f3063468d4fe60202a1a98003dfb8c870a2
These hdr data is place in first two pages in the front of flash block,
most of the data is filled with 0 which may result in 0/1 data unbalance
and finally accelerate the data bit flip process. So using ff redundant
data pattern for data balancing is more stable for nand devices.
Change-Id: I77a9116a4575b94bc6e4da5334db4eaf3d8bcb83
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
Assume the capacity greater than 2GB, and skip the first CMD1
transmission to speed up eMMC initialization.
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Change-Id: Ic8553873c6d610390db3f031a0a30cdf5df306b6
If supports DMA, make sure clean DMA states for current transfer,
but if not, don't clean it.
Fixes: 37f373979d ("i2c: rk3x: Add dma feature")
Change-Id: Iad8f999c074cb8710f14c7c0ed782b5df690d6ab
Signed-off-by: David Wu <david.wu@rock-chips.com>
rockchip_clocks_loader_protect() always call in arch_initcall_sync().
However, rockchip_clocks_loader_unprotect() is not called when the
DRM driver is not loaded, which assumes that these clocks will always
be enabled.
This may cause the clock to be turned on accidentally. In the case of
ebc, for example, when the ebc driver is enabled and the DRM driver
is not loaded, rockchip_clocks_loader_protect() will enable ebc clk.
In addition, rockchip_clocks_loader_unprotect() will not be called,
meaning that the ebc clock will always be on. However, the ebc driver
will also control the ebc clk, but it will not be able to actually
turn off the clk. The dmc driver will check the status of the clk in
the CRU while working, and it will always find that the clk is on.
This will cause a wrong judgment on the working status of the ebc.
This patch adds constraints to rockchip_clocks_loader_protect() to
protect clocks only when route nodes are available, which means that
the logo is already enabled during the u-boot stage, so it makes
sense to perform clock loader protect.
Change-Id: Ib9efbade547181e86516d19637995569a751fade
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Enable Rockchip RKNPU procfs interface and DMA heap support.
This commit enables two key configurations for Rockchip RKNPU support
on RV1126B platform.
Change-Id: I792b4e9223984d0d2e28639281585f615a015d50
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
If all planes are in rgb format and are in yuv overlay, r2y
conversion is all carried out in bt601. In this scenario, the
input colorspace of post-csc needs to be selected as bt601.
Fixes: 2e4cd35f06 ("drm/rockchip: vop2: update color-encoding selection policy for post-csc")
Change-Id: I2311fe8b0edb3ad44fe98231e723e895df1a3d69
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
[ Upstream commit 50980d8da71a0c2e045e85bba93c0099ab73a209 ]
Using random mac address is not an error since the driver continues to
function, it should be informative that the system has not assigned
a MAC address. This is inline with other drivers such as ax88796c,
dm9051 etc. Drop the error level to info level.
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Roger Quadros <rogerq@kernel.org>
Link: https://patch.msgid.link/20250516122655.442808-1-nm@ti.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
[ Upstream commit a7e255ff9fe4d9b8b902023aaf5b7a673786bb50 ]
The S2110 has an additional set of media playback control keys enabled
by a hardware toggle button that switches the keys between "Application"
and "Player" modes. Toggling "Player" mode just shifts the scancode of
each hotkey up by 4.
Add defines for new scancodes, and a keymap and dmi id for the S2110.
Tested on a Fujitsu Lifebook S2110.
Signed-off-by: Valtteri Koskivuori <vkoskiv@gmail.com>
Acked-by: Jonathan Woithe <jwoithe@just42.net>
Link: https://lore.kernel.org/r/20250509184251.713003-1-vkoskiv@gmail.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
[ Upstream commit dcd21b609d4abc7303f8683bce4f35d78d7d6830 ]
The Linux client assumes that all filehandles are non-volatile for
renames within the same directory (otherwise sillyrename cannot work).
However, the existence of the Linux 'subtree_check' export option has
meant that nfs_rename() has always assumed it needs to flush writes
before attempting to rename.
Since NFSv4 does allow the client to query whether or not the server
exhibits this behaviour, and since knfsd does actually set the
appropriate flag when 'subtree_check' is enabled on an export, it
should be OK to optimise away the write flushing behaviour in the cases
where it is clearly not needed.
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
[ Upstream commit e765bf89f42b5c82132a556b630affeb82b2a21f ]
This commit adds the NVME_QUIRK_NO_DEEPEST_PS quirk for device
[126f:2262], which belongs to device SOLIDIGM P44 Pro SSDPFKKW020X7
The device frequently have trouble exiting the deepest power state (5),
resulting in the entire disk being unresponsive.
Verified by setting nvme_core.default_ps_max_latency_us=10000 and
observing the expected behavior.
Signed-off-by: Ilya Guterman <amfernusus@gmail.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
[ Upstream commit fb98bd0a13de2c9d96cb5c00c81b5ca118ac9d71 ]
The SPI interface is activated before the CPOL setting is applied. In
that moment, the clock idles high and CS goes low. After a short delay,
CPOL and other settings are applied, which may cause the clock to change
state and idle low. This transition is not part of a clock cycle, and it
can confuse the receiving device.
To prevent this unexpected transition, activate the interface while CPOL
and the other settings are being applied.
Signed-off-by: Alessandro Grassi <alessandro.grassi@mailbox.org>
Link: https://patch.msgid.link/20250502095520.13825-1-alessandro.grassi@mailbox.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
[ Upstream commit ab09da75700e9d25c7dfbc7f7934920beb5e39b9 ]
Building the kernel with O= is affected by stale in-tree build artifacts.
So, if the source tree is not clean, Kbuild displays the following:
$ make ARCH=um O=build defconfig
make[1]: Entering directory '/.../linux/build'
***
*** The source tree is not clean, please run 'make ARCH=um mrproper'
*** in /.../linux
***
make[2]: *** [/.../linux/Makefile:673: outputmakefile] Error 1
make[1]: *** [/.../linux/Makefile:248: __sub-make] Error 2
make[1]: Leaving directory '/.../linux/build'
make: *** [Makefile:248: __sub-make] Error 2
Usually, running 'make mrproper' is sufficient for cleaning the source
tree for out-of-tree builds.
However, building UML generates build artifacts not only in arch/um/,
but also in the SUBARCH directory (i.e., arch/x86/). If in-tree stale
files remain under arch/x86/, Kbuild will reuse them instead of creating
new ones under the specified build directory.
This commit makes 'make ARCH=um clean' recurse into the SUBARCH directory.
Reported-by: Shuah Khan <skhan@linuxfoundation.org>
Closes: https://lore.kernel.org/lkml/20250502172459.14175-1-skhan@linuxfoundation.org/
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Reviewed-by: David Gow <davidgow@google.com>
Reviewed-by: Shuah Khan <skhan@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>