Ejemplo n.º 1
0
static void armv6_pmu_stop(void)
{
	arm11_stop_pmu();
	arm11_release_interrupts(pmu_irqs->irqs, pmu_irqs->num_irqs);
	release_pmu(pmu_irqs);
	pmu_irqs = NULL;
}
Ejemplo n.º 2
0
static void em_stop(void)
{
	em_call_function(arm11_stop_pmu);
	arm11_release_interrupts(pmu_irqs->irqs, pmu_irqs->num_irqs);
	scu_stop();
	release_pmu(pmu_irqs);
}
Ejemplo n.º 3
0
static int em_start(void)
{
	int ret;

	pmu_irqs = reserve_pmu();
	if (IS_ERR(pmu_irqs)) {
		ret = PTR_ERR(pmu_irqs);
		goto out;
	}

	ret = arm11_request_interrupts(pmu_irqs->irqs, pmu_irqs->num_irqs);
	if (ret == 0) {
		em_call_function(arm11_start_pmu);

		ret = scu_start();
		if (ret) {
			arm11_release_interrupts(pmu_irqs->irqs,
						 pmu_irqs->num_irqs);
		} else {
			release_pmu(pmu_irqs);
			pmu_irqs = NULL;
		}
	}

out:
	return ret;
}
Ejemplo n.º 4
0
static int em_start(void)
{
	int ret;

	ret = arm11_request_interrupts(arm11_irqs, ARRAY_SIZE(arm11_irqs));
	if (ret == 0) {
		em_call_function(arm11_start_pmu);

		ret = scu_start();
		if (ret)
			arm11_release_interrupts(arm11_irqs, ARRAY_SIZE(arm11_irqs));
	}
	return ret;
}
Ejemplo n.º 5
0
static void armv6_pmu_stop(void)
{
	arm11_stop_pmu();
	arm11_release_interrupts(irqs, ARRAY_SIZE(irqs));
}
Ejemplo n.º 6
0
static void em_stop(void)
{
	em_call_function(arm11_stop_pmu);
	arm11_release_interrupts(arm11_irqs, ARRAY_SIZE(arm11_irqs));
	scu_stop();
}