-
Notifications
You must be signed in to change notification settings - Fork 24
Add support for Samsung Galaxy A71 #44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: v6.14
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is just a quick review. Please fix all of this first of all
@@ -0,0 +1,788 @@ | |||
// SPDX-License-Identifier: BSD-3-Clause | |||
/* | |||
* Copyright (c) 2023, Danila Tikhonov <[email protected]> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add your copyright too if you want
}; | ||
|
||
/* Limit CPU clock to 2.2 GHz */ | ||
&cpu6_opp14 { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Drop it
chassis-type = "handset"; | ||
|
||
qcom,msm-id = <QCOM_ID_SM7150 0>; | ||
qcom,board-id = <34 0>, /* Rev0.0 */ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
msm-id and board-id are not required when using header v2. If there is no reason to use another header version, then drop it
wifi0 = &wifi; | ||
}; | ||
|
||
battery: battery { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are you sure Samsung uses qcom pmic for fg?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
qcom,qgauge@4800
is enabled in the downstream device tree if that's what you mean.
qcom,pmic-id = "a"; | ||
|
||
vreg_s4a_1p1: smps4 { | ||
regulator-min-microvolt = <824000>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add the regulator-name property to each regulator
sde_esd_active: sde-esd-state { | ||
pins = "gpio63"; | ||
function = "gpio"; | ||
drive-strength = <0x08>; | ||
bias-disable = <0x00>; | ||
}; | ||
|
||
sde_esd_suspend: sde-esd-state { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same pin configuration as sde_dsi suspend. Extend the pin list of sde_dsi_suspend instead of a separate node
}; | ||
|
||
&dispcc { | ||
status = "okay"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't see dispcc being disabled:
https://github.com/sm7150-mainline/linux/blob/v6.14/arch/arm64/boot/dts/qcom/sm7150.dtsi#L3973
|
||
&i2c0 { | ||
clock-frequency = <100000>; | ||
status = "okay"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe you could at least leave a comment on what devices are connected? How can we be sure that this bus is used at all? Otherwise just don't enable i2cX until needed. I'm almost certainly sure that one of these buses is not used on your board, and the pins from the bus were reused. This is why you have a crashes when you enable gpi1
@@ -44,7 +44,7 @@ | |||
}; | |||
|
|||
/ { | |||
model = "Samsung A71"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Merge with DTS commit
drivers/gpu/drm/panel/Kconfig
Outdated
@@ -1062,4 +1062,14 @@ config DRM_PANEL_XINPENG_XPP055C272 | |||
Say Y here if you want to enable support for the Xinpeng |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Write dt-bindings for the panel driver
* If it's not set at all the display won't show anything because reset-gpios is required by the driver. | ||
*/ | ||
reset-gpios = <&tlmm 9 GPIO_ACTIVE_HIGH>; // TODO: Check this again or fix in driver | ||
reset-gpios = <&tlmm 11 GPIO_ACTIVE_HIGH>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
your reset gpio is almost certainly active low and that should fix all your problems
This now only includes the device tree adition |
Add device tree for the Samsung Galaxy A71 (a715f) smartphone. This device is based on Snapdragon 730G (sm7150) SoC. Co-developed-by: Danila Tikhonov <[email protected]>
…() after confirm When send a broadcast packet to a tap device, which was added to a bridge, br_nf_local_in() is called to confirm the conntrack. If another conntrack with the same hash value is added to the hash table, which can be triggered by a normal packet to a non-bridge device, the below warning may happen. ------------[ cut here ]------------ WARNING: CPU: 1 PID: 96 at net/bridge/br_netfilter_hooks.c:632 br_nf_local_in+0x168/0x200 CPU: 1 UID: 0 PID: 96 Comm: tap_send Not tainted 6.17.0-rc2-dirty #44 PREEMPT(voluntary) RIP: 0010:br_nf_local_in+0x168/0x200 Call Trace: <TASK> nf_hook_slow+0x3e/0xf0 br_pass_frame_up+0x103/0x180 br_handle_frame_finish+0x2de/0x5b0 br_nf_hook_thresh+0xc0/0x120 br_nf_pre_routing_finish+0x168/0x3a0 br_nf_pre_routing+0x237/0x5e0 br_handle_frame+0x1ec/0x3c0 __netif_receive_skb_core+0x225/0x1210 __netif_receive_skb_one_core+0x37/0xa0 netif_receive_skb+0x36/0x160 tun_get_user+0xa54/0x10c0 tun_chr_write_iter+0x65/0xb0 vfs_write+0x305/0x410 ksys_write+0x60/0xd0 do_syscall_64+0xa4/0x260 entry_SYSCALL_64_after_hwframe+0x77/0x7f </TASK> ---[ end trace 0000000000000000 ]--- To solve the hash conflict, nf_ct_resolve_clash() try to merge the conntracks, and update skb->_nfct. However, br_nf_local_in() still use the old ct from local variable 'nfct' after confirm(), which leads to this warning. If confirm() does not insert the conntrack entry and return NF_DROP, the warning may also occur. There is no need to reserve the WARN_ON_ONCE, just remove it. Link: https://lore.kernel.org/netdev/[email protected]/ Fixes: 62e7151 ("netfilter: bridge: confirm multicast packets before passing them up the stack") Suggested-by: Florian Westphal <[email protected]> Signed-off-by: Wang Liang <[email protected]> Signed-off-by: Florian Westphal <[email protected]>
This includes device-tree and generated panel driver.