svn commit: r307557 - head/sys/arm/nvidia/tegra124

Michal Meloun mmel at FreeBSD.org
Tue Oct 18 12:26:23 UTC 2016


Author: mmel
Date: Tue Oct 18 12:26:22 2016
New Revision: 307557
URL: https://svnweb.freebsd.org/changeset/base/307557

Log:
  TEGRA: Attach cpufreq and coretemp drivers only on tegra124 SoC.
  It's needed by GENERIC kernel.
  
  MFC after: 2 weeks

Modified:
  head/sys/arm/nvidia/tegra124/tegra124_coretemp.c
  head/sys/arm/nvidia/tegra124/tegra124_cpufreq.c

Modified: head/sys/arm/nvidia/tegra124/tegra124_coretemp.c
==============================================================================
--- head/sys/arm/nvidia/tegra124/tegra124_coretemp.c	Tue Oct 18 12:21:45 2016	(r307556)
+++ head/sys/arm/nvidia/tegra124/tegra124_coretemp.c	Tue Oct 18 12:26:22 2016	(r307557)
@@ -178,10 +178,14 @@ tegra124_coretemp_ofw_parse(struct tegra
 static void
 tegra124_coretemp_identify(driver_t *driver, device_t parent)
 {
+	phandle_t root;
 
-	if (device_find_child(parent, "coretemp", -1) != NULL)
+	root = OF_finddevice("/");
+	if (!ofw_bus_node_is_compatible(root, "nvidia,tegra124"))
 		return;
-	if (BUS_ADD_CHILD(parent, 0, "coretemp", -1) == NULL)
+	if (device_find_child(parent, "tegra124_coretemp", -1) != NULL)
+		return;
+	if (BUS_ADD_CHILD(parent, 0, "tegra124_coretemp", -1) == NULL)
 		device_printf(parent, "add child failed\n");
 }
 
@@ -262,7 +266,7 @@ static device_method_t tegra124_coretemp
 };
 
 static devclass_t tegra124_coretemp_devclass;
-static DEFINE_CLASS_0(coretemp, tegra124_coretemp_driver,
+static DEFINE_CLASS_0(tegra124_coretemp, tegra124_coretemp_driver,
     tegra124_coretemp_methods, sizeof(struct tegra124_coretemp_softc));
 DRIVER_MODULE(tegra124_coretemp, cpu, tegra124_coretemp_driver,
     tegra124_coretemp_devclass, NULL, NULL);

Modified: head/sys/arm/nvidia/tegra124/tegra124_cpufreq.c
==============================================================================
--- head/sys/arm/nvidia/tegra124/tegra124_cpufreq.c	Tue Oct 18 12:21:45 2016	(r307556)
+++ head/sys/arm/nvidia/tegra124/tegra124_cpufreq.c	Tue Oct 18 12:26:22 2016	(r307557)
@@ -475,6 +475,11 @@ get_fdt_resources(struct tegra124_cpufre
 static void
 tegra124_cpufreq_identify(driver_t *driver, device_t parent)
 {
+	phandle_t root;
+
+	root = OF_finddevice("/");
+	if (!ofw_bus_node_is_compatible(root, "nvidia,tegra124"))
+		return;
 
 	if (device_get_unit(parent) != 0)
 		return;


More information about the svn-src-head mailing list