diff --git a/tools/firmware-utils/src/ptgen.c b/tools/firmware-utils/src/ptgen.c
index 2d78eae53514cdcfa6f1d9f54b45a8f351ff8d6a..277fbbc134021d97064249fbfc7c6418f1f327b8 100644
--- a/tools/firmware-utils/src/ptgen.c
+++ b/tools/firmware-utils/src/ptgen.c
@@ -114,7 +114,7 @@ static void to_chs(long sect, unsigned char chs[3]) {
 static inline unsigned long round_to_cyl(long sect) {
 	int cyl_size = heads * sectors;
 
-	return sect + cyl_size - ((sect % cyl_size) ?: cyl_size); 
+	return sect + cyl_size - (sect % cyl_size); 
 }
 
 /* check the partition sizes and write the partition table */