Do we really need to use pull-up resistor for software I2C? Isn’t it possible to active MCU internal resistors for this purpose?
You need to make sure that signal levels are in range and stable, even if there are many I2C slaves on the bus.
I tired (or lets say I failed) on hardware I2C on G120 without them, and nothing was working.
If you use the pins for I2C only, and if you have some custom hardware there anyway, I would go for hardware pull ups.
But as long as the signal levels are ok, why not using the CPU built-in pull ups. But I would check the signal levels with an oscilloscope and different number of slaves then.