Age | Commit message (Collapse) | Author | Files | Lines |
|
Adjust indent to fix misleading-indentation warnings.
Change-Id: I8c9c21858365890663079f187c28fc41175730af
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Address of declared variable is always not null. Remove unnecessary
null check for the case in rtw_mfree_stainfo().
Change-Id: I561148225a42a802470ef3d39115c0120954c4ff
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Increase the default CMA area to 512M to avoid memory allocation failures
in the graphics stack when connected to 4K display.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I5beee928a43f112c21a0b6ca75bb430b91e77db6
|
|
Copying to char[0] causes stringop-overread warnings, so replace
with char[].
Change-Id: If562668eac9d6a8b45d00c983da41ac2b523fc8b
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Instead of direct write to netdev->dev_addr, it should use
dev_addr_set().
Change-Id: I94557ed087bd35a109f88a065dcd2c26d134aefd
Ref: 48eab831ae8b ("net: create netdev->dev_addr assignment helpers")
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Instead of wrong function pointer casting, cast argument from
the callback function.
Change-Id: Ie3e2db6803a40fb61b1e4f7978c0a996952a2996
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
The null check for an array element is not required because
it is always not null. Remove unnecessary null checks.
Change-Id: I1617511e7ae5b54ace2f62e8c8e2d486e5824449
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Fix implicit-fallthrough warnings with explicit fallthrough
statement.
Change-Id: Iebca5d6c71af8c3e1611e78539b12cf9a2911d57
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Fix wrong enum type for light_event_msg_hdr_fill().
Change-Id: I3a3021f2862e31b0721f22f4f497025f1cb0765b
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Fix the following build warning introduce after recent configuration
change:
drivers/gpu/drm/img-rogue/module_common.c:558:13: warning: 'wrap_pvr_sync_close' defined but not used [-Wunused-function]
558 | static void wrap_pvr_sync_close(void *connection_data)
| ^~~~~~~~~~~~~~~~~~~
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I505620cfd351bc5980d48d0916c342d015054430
|
|
To remove deprecated flush_scheduled_work() after the commit
20bdedafd2f6 ("workqueue: Warn attempt to flush system-wide workqueues."),
add img dedicated unordered wq and queue/flush the wq instead of
system work.
Change-Id: I316b2858abf15e11d9ed40550a41f9494d421c87
Ref: 848a4e5c096d ("drm/i915: add a dedicated workqueue inside drm_i915_private")
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
|
|
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I519c2289c9659deab1e348ef88ab05668eb9c8f7
|
|
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I58b3d3a68cfce9d19f864e3f9c8b943549285538
|
|
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I13abab4e51511974a00af3500fae90f5bc18f96d
|
|
This fixes following warning:
In function 'light_wdt_update_timeout':
drivers/watchdog/light_wdt.c:116:51: warning: implicit
conversion from
'enum light_aon_wdg_func' to 'enum light_aon_misc_func'
[-Wenum-conversion]
light_wdt_msg_hdr_fill(&wdt_dev->msg.hdr,
LIGHT_AON_WDG_FUNC_TIMEOUTSET);
Also, add a 'static' to a static function to suppress other warning.
Change-Id: Ia8f4daa37c58beffc8d0bdb8bcef20108cb282ab
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
SOC_THEAD constant is not used, instead ARCH_THEAD is a correct constant
used upstream. Fix it.
Change-Id: Iea3b4393ec6d63b079483c87f0aa1573df0c6014
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
rtl8723ds chip is used on LicheePi4A boards interchangeably
with aic8800. Enable it as well, so Wi-Fi and Bluetooth works on
more boards.
Change-Id: I025dd5451b533fd728baa622f04ce41cf32d7ac6
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Driver copied from the kernel 5.10 doesn't compile on the kernel 6.6.
Adapt it by changing function calls that changed across the kernel
versions.
Change-Id: I0ecd55a7c7bd5b869d51bbaf0fef9b3e93d4055e
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Copy the driver as is from [1]. This code won't compile, but it's better
to do the kernel 6.6 adjustments in the following commit.
[1] - https://github.com/revyos/thead-kernel.git
Change-Id: I91c17992a4d07b4ff42ea2e0ef1968a78806d738
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
The watchdog driver is necessary for the 'reboot' feature to work.
Enable it in the config.
Change-Id: I9c7e25baa6df0495fccc5e6e2e610273fda796df
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Light event device tree node is required for the 'reboot' feature to
work, as the driver function gets called by the watchdog. Enable it in
the device tree to get the driver initialized properly. Add aon_iram
dependent node as well. Ported from vendor kernel [1].
[1] https://gitee.com/thead-yocto/kernel.git
Change-Id: Id77c4901a2a77146d0f26e31769221a1cf5ca853
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
This driver is required for the 'reboot' feature to work. Watchdog
driver calls light_event_set_rebootmode() exported from this driver.
Port it from the vendor kernel [1].
[1] - https://gitee.com/thead-yocto/kernel.git
Change-Id: Ia25f95ed72669df348f72bcfcb0ca5eabb51dfc7
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
T-Head watchdog driver is required for 'reboot' feature to work.
Port it from the vendor kernel [1].
[1] - https://gitee.com/thead-yocto/kernel.git
Change-Id: If4d54fcdc65c77b6068b4cd989f3f869fec5428a
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
On LicheePi4A the HCI for Bluetooth is using UART. Enable uart4 so
the communication with the chip works.
Change-Id: If8c40574fe47dc20901b7142d664656ca5b418df
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
dm-bow kernel module has been moved to external linux-tizen-modules
repository, so drop it from tizen_lpi4a_defconfig.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I877de7f16d007703b4cc3da3c0be33184dd571b1
|
|
The dm-bow kernel module (developed externally by Google team) has been
moved to linux-tizen-modules-source repository, so keeping a copy of it
in each kernel repository is not needed anymore.
This reverts commit b5c5df065d73537ff80dcabae573e23a49ff02f9.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: Ia30b192e5e825bd013c6b0f39b2ee0c614f3c09c
|
|
Aic8800 drivers are written in a way that they can only work as modules,
and can't be compiled in the kernel. Enable them as modules so the Wi-Fi
works.
Change-Id: I15336469583726ba5a4bd898349809ab15421ca3
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
In order for Wi-Fi to work the SDIO bus needs to be enabled in the
device tree, as well as the node required to turn on the GPIO to power
on the device - wcn_wifi.
Port them from the vendor kernel [1].
[1] - https://gitee.com/thead-yocto/kernel.git
Change-Id: I4b673316100f5a75195105befb6895095a9cb690
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Regulator soc_cam2_dvdd12_ir_reg seems to be using the same gpio
controller as the rfkill gpio. It was observed that when this regulator
is enabled the rfkill setting up it's GPIO doesn't actually have any
effect i.e the Wi-Fi card never actually shows up on the SDIO bus.
Remove this regulator for now, as it doesn't seem to be critical for any
other functionality on the SoC.
Change-Id: I5e54831e4084ab04bc5d3618cbde318d9775aa62
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Enable the driver responsible for powering-on the Wi-Fi card on the
T-Head LicheePi4A SoC. One could argue that the net/rfkill might not be
the best place for it, however it was put there originally in the vendor
kernel. For now will keep it there.
It was observed that the driver doesn't really do much else, than set
the gpio specified in the device during the boot up of the system.
Ported from vendor kernel [1].
[1] https://gitee.com/thead-yocto/kernel.git
Change-Id: I268f531f9e7860ee22d261268bc06acd51088e99
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Ported from the vendor kernel [1].
[1] https://gitee.com/thead-yocto/kernel.git
Change-Id: Ibd067b5ebf33e6206e57b9e45a2e8b1a1c88011f
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
While working with the T-Head 1520 LicheePi4A SoC, certain conditions
arose that allowed me to reproduce a race issue in the sdhci code.
To reproduce the bug, you need to enable the sdio1 controller in the
device tree file
`arch/riscv/boot/dts/thead/th1520-lichee-module-4a.dtsi` as follows:
&sdio1 {
bus-width = <4>;
max-frequency = <100000000>;
no-sd;
no-mmc;
broken-cd;
cap-sd-highspeed;
post-power-on-delay-ms = <50>;
status = "okay";
wakeup-source;
keep-power-in-suspend;
};
When resetting the SoC using the reset button, the following messages
appear in the dmesg log:
[ 8.164898] mmc2: Got command interrupt 0x00000001 even though no
command operation was in progress.
[ 8.174054] mmc2: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 8.180503] mmc2: sdhci: Sys addr: 0x00000000 | Version: 0x00000005
[ 8.186950] mmc2: sdhci: Blk size: 0x00000000 | Blk cnt: 0x00000000
[ 8.193395] mmc2: sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
[ 8.199841] mmc2: sdhci: Present: 0x03da0000 | Host ctl: 0x00000000
[ 8.206287] mmc2: sdhci: Power: 0x0000000f | Blk gap: 0x00000000
[ 8.212733] mmc2: sdhci: Wake-up: 0x00000000 | Clock: 0x0000decf
[ 8.219178] mmc2: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
[ 8.225622] mmc2: sdhci: Int enab: 0x00ff1003 | Sig enab: 0x00ff1003
[ 8.232068] mmc2: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
[ 8.238513] mmc2: sdhci: Caps: 0x3f69c881 | Caps_1: 0x08008177
[ 8.244959] mmc2: sdhci: Cmd: 0x00000502 | Max curr: 0x00191919
[ 8.254115] mmc2: sdhci: Resp[0]: 0x00001009 | Resp[1]: 0x00000000
[ 8.260561] mmc2: sdhci: Resp[2]: 0x00000000 | Resp[3]: 0x00000000
[ 8.267005] mmc2: sdhci: Host ctl2: 0x00001000
[ 8.271453] mmc2: sdhci: ADMA Err: 0x00000000 | ADMA Ptr:
0x0000000000000000
[ 8.278594] mmc2: sdhci: ============================================
I also enabled some traces to better understand the problem:
kworker/3:1-62 [003] ..... 8.163538: mmc_request_start:
mmc2: start struct mmc_request[000000000d30cc0c]: cmd_opcode=5
cmd_arg=0x0 cmd_flags=0x2e1 cmd_retries=0 stop_opcode=0 stop_arg=0x0
stop_flags=0x0 stop_retries=0 sbc_opcode=0 sbc_arg=0x0 sbc_flags=0x0
sbc_retires=0 blocks=0 block_size=0 blk_addr=0 data_flags=0x0 tag=0
can_retune=0 doing_retune=0 retune_now=0 need_retune=0 hold_retune=1
retune_period=0
<idle>-0 [000] d.h2. 8.164816: sdhci_cmd_irq:
hw_name=ffe70a0000.mmc quirks=0x2008008 quirks2=0x8 intmask=0x10000
intmask_p=0x18000
irq/24-mmc2-96 [000] ..... 8.164840: sdhci_thread_irq:
msg=
irq/24-mmc2-96 [000] d.h2. 8.164896: sdhci_cmd_irq:
hw_name=ffe70a0000.mmc quirks=0x2008008 quirks2=0x8 intmask=0x1
intmask_p=0x1
irq/24-mmc2-96 [000] ..... 8.285142: mmc_request_done:
mmc2: end struct mmc_request[000000000d30cc0c]: cmd_opcode=5
cmd_err=-110 cmd_resp=0x0 0x0 0x0 0x0 cmd_retries=0 stop_opcode=0
stop_err=0 stop_resp=0x0 0x0 0x0 0x0 stop_retries=0 sbc_opcode=0
sbc_err=0 sbc_resp=0x0 0x0 0x0 0x0 sbc_retries=0 bytes_xfered=0
data_err=0 tag=0 can_retune=0 doing_retune=0 retune_now=0 need_retune=0
hold_retune=1 retune_period=0
Here's what happens: the __mmc_start_request function is called with
opcode 5. Since the power to the Wi-Fi card, which resides on this SDIO
bus, is initially off after the reset, an interrupt SDHCI_INT_TIMEOUT is
triggered. Immediately after that, a second interrupt SDHCI_INT_RESPONSE
is triggered. Depending on the exact timing, these conditions can
trigger the following race problem:
1) The sdhci_cmd_irq top half handles the command as an error. It sets
host->cmd to NULL and host->pending_reset to true.
2) The sdhci_thread_irq bottom half is scheduled next and executes faster
than the second interrupt handler for SDHCI_INT_RESPONSE. It clears
host->pending_reset before the SDHCI_INT_RESPONSE handler runs.
3) The pending interrupt SDHCI_INT_RESPONSE handler gets called, triggering
a code path that prints: "mmc2: Got command interrupt 0x00000001 even
though no command operation was in progress."
To solve this issue, we need to clear pending interrupts when resetting
host->pending_reset. This ensures that after sdhci_threaded_irq restores
interrupts, there are no pending stale interrupts.
Change-Id: Idd6b1623cd842e00a30466074a225e7d847d1f98
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I45392bbd63292da19e7a3bae0e86c5f7d48faaa3
|
|
Add DWC3 device controller and the needed glue nodes.
Ported from vendor kernel [1].
[1] https://gitee.com/thead-yocto/kernel.git
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I3e023ec8d778c44204fa2e67b107431fff36f035
|
|
Taken from vendor kernel [1].
[1] https://gitee.com/thead-yocto/kernel.git
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I213452d619632addb75a23373542a962c21e6c9b
|
|
The empty character shrinker name causes build warning, so fix it
to NULL as like other git trees including img-rogue.
Change-Id: I4aca9e4309ad27bd9922af54f9a10de11b929d20
Ref: https://git.tizen.org/cgit/platform/kernel/linux-starfive/tree/drivers/gpu/drm/img/img-rogue/services/server/env/linux/physmem_osmem_linux.c?h=7d2455338737#n615
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Remove unused function to resolve unused-function warning.
Change-Id: Idfb3f4c329616dd182078942a020a8c70d376eb1
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Fix format warning with proper printing format.
Change-Id: Ie25c9d68846c78ea5f3b8c13791f932971ac36e9
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Remove unused-variable warning.
Change-Id: I80939412e9086d1b00542cfb733ccb11b86e565c
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
In Tizen toolchain -Wint-conversion warning causes build error.
Remove the warning with proper casting.
Change-Id: Ibb7c0be7fc2d4176f91800986c4ba113b2ad1dad
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
GPU resides in it's own power island. Always-on drivers are required to
power on that island. Enable both GPU driver and dependent AON driver
config options.
Change-Id: I74e1563488f2ccf31ddce5f64d40378f2b26da82
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
GPU device tree node is dependent on always-on module working correctly.
Fix aon node by supplying it with correct reserved memory space. Add the
gpu node itself. Add an empty aon node in the beaglev-ahead dts, to
avoid breaking the compilation.
Change-Id: I9eafb0d576b1045089a640419ee7a0400ba90550
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
The drivers responsible for supporting thead fan are already in the
repo. Enable the fan in the device tree for better SoC usability.
Ported from [1].
[1] - https://github.com/revyos/thead-kernel.git
Change-Id: I8b7efb97ec4ceb0c0484dd49631aef9a4101ab3b
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
The always-on driver required for GPU to work is also dependent on the
mailbox. Enable the Thead mailbox driver. Ported from [1].
[1] - https://github.com/revyos/thead-kernel.git
Change-Id: Ic56a740e1f618f5ceaa51addc3ed9a66d6c10ab6
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Update the light-regulator-aon driver to the newest version from [1].
It is important that this regulator works correctly as the GPU driver
depends on the aon working correctly, since it's situated in it's own
power island.
Fix the formatting by using clang-format with kernel style config.
[1] - https://github.com/revyos/thead-kernel.git
Change-Id: I6be797fe8f2512bc3cd93baf62e3a9f92dd12287
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
GPU resides in it's own power island. The always-on module is resposible
for powering the GPU on. Update the drivers to the newest available
from [1].
In new version the extra debug FW info was added. Sadly this new debug
module called light-proc-debug needs custom thead cache flushing
functions to work correctly. Port them as well.
[1] - https://github.com/revyos/thead-kernel.git
Change-Id: I98a3e4549cb7e3ae5d0d282af35953a04db82882
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Across 5.10 and 6.6 many of the interfaces changed e.g the vma_flags
can't be changed directly as it only should be changed using a provided
API. Adjust the driver code so it compiles on a new kernel.
Change-Id: Id1129caa0ab516568489b856b6dcc4b8112bf1c6
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
This commit is cherry-picked from starfive repo [1] 1691514834f8
("gpu: drm: img: Fix to use iterator instead of list").
[1] - git://git.tizen.org/platform/kernel/linux-starfive
Change-Id: I4146b481a31c722785fce84d86b1c41788908afd
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
|
|
Previous commit dbfbda3bd6bf ("riscv: mm: update T-Head memory type
definitions") from patch [1] missed a `<` for bit shifting, result in
bit(61) does not set in _PAGE_NOCACHE_THEAD and leaves bit(0) set instead.
This patch get this fixed.
Link: https://lore.kernel.org/linux-riscv/20230912072510.2510-1-jszhang@kernel.org/ [1]
Fixes: dbfbda3bd6bf ("riscv: mm: update T-Head memory type definitions")
Signed-off-by: Yangyu Chen <cyy@cyyself.name>
Reviewed-by: Guo Ren <guoren@kernel.org>
Reviewed-by: Jisheng Zhang <jszhang@kernel.org>
Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Link: https://lore.kernel.org/r/tencent_E19FA1A095768063102E654C6FC858A32F06@qq.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
[ need this commit for GPU to work as the GPU driver is manually setting
page properties ]
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
Change-Id: I59b1d7d18be9e8f43606f494a0b8b5f834b30189
|
|
Update T-Head memory type definitions according to C910 doc [1]
For NC and IO, SH property isn't configurable, hardcoded as SH,
so set SH for NOCACHE and IO.
And also set bit[61](Bufferable) for NOCACHE according to the
table 6.1 in the doc [1].
Link: https://github.com/T-head-Semi/openc910 [1]
Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Reviewed-by: Guo Ren <guoren@kernel.org>
Tested-by: Drew Fustini <dfustini@baylibre.com>
Link: https://lore.kernel.org/r/20230912072510.2510-1-jszhang@kernel.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
[ need this commit for GPU to work as the GPU driver is manually setting
page properties ]
Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
Change-Id: I62a5af81620466024fdf5bf9c3f322aadddf6366
|