clocksource / ACPI: Add probing infrastructure for ACPI-based clocksources
DT enjoys a rather nice probing infrastructure for clocksources, while ACPI is so far stuck into a very distant past. This patch introduces a declarative API, allowing clocksources to be self-contained and be called when parsing the GTDT table. Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Acked-by: Thomas Gleixner <tglx@linutronix.de> Tested-by: Hanjun Guo <hanjun.guo@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Родитель
f26527b142
Коммит
c625f76a99
|
@ -14,6 +14,7 @@
|
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <linux/acpi.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/clocksource.h>
|
||||
|
@ -38,6 +39,9 @@ void __init clocksource_of_init(void)
|
|||
init_func(np);
|
||||
clocksources++;
|
||||
}
|
||||
|
||||
clocksources += acpi_probe_device_table(clksrc);
|
||||
|
||||
if (!clocksources)
|
||||
pr_crit("%s: no matching clocksources found\n", __func__);
|
||||
}
|
||||
|
|
|
@ -525,6 +525,7 @@
|
|||
KERNEL_DTB() \
|
||||
IRQCHIP_OF_MATCH_TABLE() \
|
||||
ACPI_PROBE_TABLE(irqchip) \
|
||||
ACPI_PROBE_TABLE(clksrc) \
|
||||
EARLYCON_TABLE() \
|
||||
EARLYCON_OF_TABLES()
|
||||
|
||||
|
|
|
@ -258,4 +258,7 @@ void acpi_generic_timer_init(void);
|
|||
static inline void acpi_generic_timer_init(void) { }
|
||||
#endif
|
||||
|
||||
#define CLOCKSOURCE_ACPI_DECLARE(name, table_id, fn) \
|
||||
ACPI_DECLARE_PROBE_ENTRY(clksrc, name, table_id, 0, NULL, 0, fn)
|
||||
|
||||
#endif /* _LINUX_CLOCKSOURCE_H */
|
||||
|
|
Загрузка…
Ссылка в новой задаче