Lines Matching +full:r9a07g044 +full:- +full:sysc

1 // SPDX-License-Identifier: GPL-2.0
5 * Copyright (C) 2014-2016 Glider bvba
22 .name = "R-Car Gen1",
27 .name = "R-Car Gen2",
32 .name = "R-Car Gen3",
37 .name = "R-Car Gen4",
41 .name = "R-Mobile",
80 .name = "SH-Mobile",
378 { .compatible = "renesas,r9a07g044", .data = &soc_rz_g2l },
415 { .compatible = "renesas,r9a07g043-sysc", .data = &id_rzg2l },
416 { .compatible = "renesas,r9a07g044-sysc", .data = &id_rzg2l },
417 { .compatible = "renesas,r9a07g054-sysc", .data = &id_rzg2l },
439 return -ENODEV; in renesas_soc_init()
441 soc_id = strchr(match->compatible, ',') + 1; in renesas_soc_init()
442 soc = match->data; in renesas_soc_init()
443 family = soc->family; in renesas_soc_init()
447 id = match->data; in renesas_soc_init()
450 } else if (soc->id && family->reg) { in renesas_soc_init()
453 chipid = ioremap(family->reg, 4); in renesas_soc_init()
458 return -ENOMEM; in renesas_soc_init()
461 of_property_read_string(np, "model", &soc_dev_attr->machine); in renesas_soc_init()
464 soc_dev_attr->family = kstrdup_const(family->name, GFP_KERNEL); in renesas_soc_init()
465 soc_dev_attr->soc_id = kstrdup_const(soc_id, GFP_KERNEL); in renesas_soc_init()
468 product = readl(chipid + id->offset); in renesas_soc_init()
472 /* R-Car M3-W ES1.1 incorrectly identifies as ES2.0 */ in renesas_soc_init()
475 /* R-Car M3-W ES1.3 incorrectly identifies as ES2.1 */ in renesas_soc_init()
481 soc_dev_attr->revision = kasprintf(GFP_KERNEL, "ES%u.%u", in renesas_soc_init()
485 soc_dev_attr->revision = kasprintf(GFP_KERNEL, "%u", in renesas_soc_init()
490 if (soc->id && in renesas_soc_init()
491 ((product & id->mask) >> __ffs(id->mask)) != soc->id) { in renesas_soc_init()
493 ret = -ENODEV; in renesas_soc_init()
498 pr_info("Detected Renesas %s %s %s%s\n", soc_dev_attr->family, in renesas_soc_init()
499 soc_dev_attr->soc_id, rev_prefix, soc_dev_attr->revision ?: ""); in renesas_soc_init()
510 kfree(soc_dev_attr->revision); in renesas_soc_init()
511 kfree_const(soc_dev_attr->soc_id); in renesas_soc_init()
512 kfree_const(soc_dev_attr->family); in renesas_soc_init()