Patch "bus: ti-sysc: Fix missing AM35xx SoC matching" has been added to the 6.1-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    bus: ti-sysc: Fix missing AM35xx SoC matching

to the 6.1-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     bus-ti-sysc-fix-missing-am35xx-soc-matching.patch
and it can be found in the queue-6.1 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 3099c04ab04933fd3d2b589d791e836b9862a049
Author: Adam Ford <aford173@xxxxxxxxx>
Date:   Wed Sep 6 18:34:42 2023 -0500

    bus: ti-sysc: Fix missing AM35xx SoC matching
    
    [ Upstream commit 11729caa520950e17cd81bc43ffc477c46cf791e ]
    
    Commit feaa8baee82a ("bus: ti-sysc: Implement SoC revision handling")
    created a list of SoC types searching for strings based on names
    and wildcards which associates the SoC to different families.
    
    The OMAP34xx and OMAP35xx are treated as SOC_3430 while
    OMAP36xx and OMAP37xx are treated as SOC_3630, but the AM35xx
    isn't listed.
    
    The AM35xx is mostly an OMAP3430, and a later commit a12315d6d270
    ("bus: ti-sysc: Make omap3 gpt12 quirk handling SoC specific") looks
    for the SOC type and behaves in a certain way if it's SOC_3430.
    
    This caused a regression on the AM3517 causing it to return two
    errors:
    
     ti-sysc: probe of 48318000.target-module failed with error -16
     ti-sysc: probe of 49032000.target-module failed with error -16
    
    Fix this by treating the creating SOC_AM35 and inserting it between
    the SOC_3430 and SOC_3630.  If it is treaed the same way as the
    SOC_3430 when checking the status of sysc_check_active_timer,
    the error conditions will disappear.
    
    Fixes: a12315d6d270 ("bus: ti-sysc: Make omap3 gpt12 quirk handling SoC specific")
    Fixes: feaa8baee82a ("bus: ti-sysc: Implement SoC revision handling")
    Signed-off-by: Adam Ford <aford173@xxxxxxxxx>
    Message-ID: <20230906233442.270835-1-aford173@xxxxxxxxx>
    Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/bus/ti-sysc.c b/drivers/bus/ti-sysc.c
index 6ac79417b5120..d56e7b61bb5a9 100644
--- a/drivers/bus/ti-sysc.c
+++ b/drivers/bus/ti-sysc.c
@@ -38,6 +38,7 @@ enum sysc_soc {
 	SOC_2420,
 	SOC_2430,
 	SOC_3430,
+	SOC_AM35,
 	SOC_3630,
 	SOC_4430,
 	SOC_4460,
@@ -1878,7 +1879,7 @@ static void sysc_pre_reset_quirk_dss(struct sysc *ddata)
 		dev_warn(ddata->dev, "%s: timed out %08x !+ %08x\n",
 			 __func__, val, irq_mask);
 
-	if (sysc_soc->soc == SOC_3430) {
+	if (sysc_soc->soc == SOC_3430 || sysc_soc->soc == SOC_AM35) {
 		/* Clear DSS_SDI_CONTROL */
 		sysc_write(ddata, 0x44, 0);
 
@@ -3042,6 +3043,7 @@ static void ti_sysc_idle(struct work_struct *work)
 static const struct soc_device_attribute sysc_soc_match[] = {
 	SOC_FLAG("OMAP242*", SOC_2420),
 	SOC_FLAG("OMAP243*", SOC_2430),
+	SOC_FLAG("AM35*", SOC_AM35),
 	SOC_FLAG("OMAP3[45]*", SOC_3430),
 	SOC_FLAG("OMAP3[67]*", SOC_3630),
 	SOC_FLAG("OMAP443*", SOC_4430),
@@ -3248,7 +3250,7 @@ static int sysc_check_active_timer(struct sysc *ddata)
 	 * can be dropped if we stop supporting old beagleboard revisions
 	 * A to B4 at some point.
 	 */
-	if (sysc_soc->soc == SOC_3430)
+	if (sysc_soc->soc == SOC_3430 || sysc_soc->soc == SOC_AM35)
 		error = -ENXIO;
 	else
 		error = -EBUSY;



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux