Date: Tue, 18 Oct 2016 12:26:22 +0000 (UTC) From: Michal Meloun <mmel@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r307557 - head/sys/arm/nvidia/tegra124 Message-ID: <201610181226.u9ICQMug074623@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
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;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201610181226.u9ICQMug074623>