]> www.infradead.org Git - users/willy/xarray.git/commitdiff
ARM: at91: Add Support in SoC driver for SAMA7D65
authorRyan Wanner <Ryan.Wanner@microchip.com>
Fri, 14 Feb 2025 18:08:17 +0000 (11:08 -0700)
committerClaudiu Beznea <claudiu.beznea@tuxon.dev>
Mon, 24 Feb 2025 10:16:28 +0000 (12:16 +0200)
Add support for SAMA7D65 SoC in the SoC driver.

Signed-off-by: Ryan Wanner <Ryan.Wanner@microchip.com>
Link: https://lore.kernel.org/r/84b4a7ec0025741bc3ab647671fd4e880b2ed1d5.1739555984.git.Ryan.Wanner@microchip.com
[claudiu.beznea: add a space after compatibles to comply with the
 existing format]
Signed-off-by: Claudiu Beznea <claudiu.beznea@tuxon.dev>
drivers/soc/atmel/soc.c
drivers/soc/atmel/soc.h

index 298b542dd1c0644be28db50b672b19d2f3fcb2da..09347bccdb1ddb6e46da178b6f6c789a596bbae7 100644 (file)
@@ -246,6 +246,9 @@ static const struct at91_soc socs[] __initconst = {
                 "samv70q19", "samv7"),
 #endif
 #ifdef CONFIG_SOC_SAMA7
+       AT91_SOC(SAMA7D65_CIDR_MATCH, AT91_CIDR_MASK_SAMA7G5,
+                AT91_CIDR_VERSION_MASK_SAMA7G5, SAMA7D65_EXID_MATCH,
+                "sama7d65", "sama7d6"),
        AT91_SOC(SAMA7G5_CIDR_MATCH, AT91_CIDR_MATCH_MASK,
                 AT91_CIDR_VERSION_MASK_SAMA7G5, SAMA7G51_EXID_MATCH,
                 "sama7g51", "sama7g5"),
@@ -305,6 +308,7 @@ static int __init at91_get_cidr_exid_from_chipid(u32 *cidr, u32 *exid)
        void __iomem *regs;
        static const struct of_device_id chipids[] = {
                { .compatible = "atmel,sama5d2-chipid" },
+               { .compatible = "microchip,sama7d65-chipid" },
                { .compatible = "microchip,sama7g5-chipid" },
                { },
        };
@@ -393,6 +397,7 @@ static const struct of_device_id at91_soc_allowed_list[] __initconst = {
        { .compatible = "atmel,at91sam9", },
        { .compatible = "atmel,sama5", },
        { .compatible = "atmel,samv7", },
+       { .compatible = "microchip,sama7d65", },
        { .compatible = "microchip,sama7g5", },
        { }
 };
index 2c78e54255f7f818d737250616f0d49bc3f687d6..66a74017d9a3e180dfb95ff484ac0cc24d1b3323 100644 (file)
@@ -45,6 +45,7 @@ at91_soc_init(const struct at91_soc *socs);
 #define AT91SAM9N12_CIDR_MATCH         0x019a07a0
 #define SAM9X60_CIDR_MATCH             0x019b35a0
 #define SAM9X7_CIDR_MATCH              0x09750020
+#define SAMA7D65_CIDR_MATCH            0x00262100
 #define SAMA7G5_CIDR_MATCH             0x00162100
 
 #define AT91SAM9M11_EXID_MATCH         0x00000001
@@ -75,6 +76,8 @@ at91_soc_init(const struct at91_soc *socs);
 #define SAM9X75_D5M_EXID_MATCH         0x00000010
 #define SAM9X75_EXID_MATCH             0x00000000
 
+#define SAMA7D65_EXID_MATCH            0x00000080
+
 #define SAMA7G51_EXID_MATCH            0x3
 #define SAMA7G52_EXID_MATCH            0x2
 #define SAMA7G53_EXID_MATCH            0x1