If you check the source you see conditions:
#if Z_HOME_DIR < 0
#if ZHOME_PRE_RAISE == 1
if (zaxis && Endstops::zProbe()) {
PrintLine::moveRelativeDistanceInSteps(0, 0, ZHOME_PRE_RAISE_DISTANCE * axisStepsPerMM[Z_AXIS], 0, homingFeedrate[Z_AXIS], true, true);
}
#elif ZHOME_PRE_RAISE == 2
if (zaxis) {
PrintLine::moveRelativeDistanceInSteps(0, 0, ZHOME_PRE_RAISE_DISTANCE * axisStepsPerMM[Z_AXIS], 0, homingFeedrate[Z_AXIS], true, true);
}
#endif
#endif
so you need z min homing and depending on ZHOME_PRE_RAISE being 1 or 2. 1 will only pre raise when z min is triggered. If it should always raise set it to 2. Raise distance is in ZHOME_PRE_RAISE_DISTANCE