/* init all i2c gpio buses */
for (i = 0; i < len; i++) {
- bank = (struct s5p_gpio_bank *)i2c_gpio[i].bus->gpio_base;
+ if (!i2c_gpio[i].bus)
+ continue;
+ bank = (struct s5p_gpio_bank *)i2c_gpio[i].bus->gpio_base;
if (!bank)
continue;
bus_index = i2c_get_bus_num();
+ if (!i2c_gpio[bus_index].bus)
+ return;
+
bank = (struct s5p_gpio_bank *)i2c_gpio[bus_index].bus->gpio_base;
if (!bank)
return;
unsigned int bus_index;
bus_index = i2c_get_bus_num();
+ if (!i2c_gpio[bus_index].bus)
+ return 0;
bank = (struct s5p_gpio_bank *)i2c_gpio[bus_index].bus->gpio_base;
if (!bank)
unsigned int bus_index;
bus_index = i2c_get_bus_num();
+ if (!i2c_gpio[bus_index].bus)
+ return;
bank = (struct s5p_gpio_bank *)i2c_gpio[bus_index].bus->gpio_base;
if (!bank)