The first overcurrent detection circuit 150_1 compares a current IMH1 that flows through the first high-side transistor MH1 with a first overcurrent threshold value IOCP1. The second overcurrent detection circuit 150_2 compares a current IMH2 that flows through the second high-side transistor MH2 with a second overcurrent threshold value IOCP2. In the first mode, both the first overcurrent detection circuit 150_1 and the second overcurrent detection circuit 150_2 are enabled. In this state, each circuit block BLK # (“#”=1, 2) executes overcurrent protection according to the output of the corresponding overcurrent detection circuit 150_#. In the second mode, only the first overcurrent detection circuit 150_1 is enabled, and the second overcurrent detection circuit 150_2 is disabled. The two circuit blocks BLK1 and BLK2 each execute overcurrent protection according to the output of the first overcurrent detection circuit 150_1.
In the second mode, only the first overcurrent detection circuit 150_1 is enabled, thereby allowing power consumption to be reduced. Furthermore, if the two overcurrent detection circuits 150_1 and 150_2 are both used in the second mode, in a case in which there is variation in the detection condition or response speed between them, this leads to the occurrence of inconsistency in the operation. In order to solve such a problem, only one from among the overcurrent detection circuits, i.e., only the overcurrent detection circuit 150_1, is enabled. This solves such an inconsistency.