Consolidating functionalities with different safety requirements into a common platform gives rise to mixed-criticality systems. The state-of-the-art research has focused on providing heterogeneous timing guarantees for tasks of varying criticality levels. This is achieved by dropping less critical tasks when critical tasks overrun. However, with drastically increased computing requirements and the often battery-operated nature of mixed-criticality systems, energy minimization for such systems is also becoming crucial. In fact, this has already been possible since many modern processors are equipped with the capacity of dynamic voltage and frequency scaling (DVFS), where processor frequency can be reduced at runtime to save energy. We present in this paper the first results known to date on applying DVFS to mixed-criticality systems. We show that DVFS can be used to help critical tasks to meet deadlines by speeding up the processor when they overrun. This will further allow the system to reserve less time budgets for task overrun. Thus, more slack can be explored to reduce the processor frequency to save energy for scenarios when tasks do not overrun. Since overrun is rare, such a strategy can greatly reduce the expected energy consumption for mixed-criticality systems. For solving the energy minimization problem, we formulate a convex program by integrating DVFS with a well-known mixed-criticality scheduling technique EDF-VD. Furthermore, we present analytical results on this problem and propose an optimal algorithm to solve it. With both theoretical and experimental results, we demonstrate energy savings and various tradeoffs.