diff --git a/py/builtintables.c b/py/builtintables.c
index 1041c2598c5d4e662e121be5b95b351d982643fa..857a581de411eb961accfcfc70f9d1e10313c603 100644
--- a/py/builtintables.c
+++ b/py/builtintables.c
@@ -162,7 +162,7 @@ STATIC const mp_map_elem_t mp_builtin_module_table[] = {
 
     { MP_OBJ_NEW_QSTR(MP_QSTR_array), (mp_obj_t)&mp_module_array },
 #if MICROPY_PY_IO
-    { MP_OBJ_NEW_QSTR(MP_QSTR_io), (mp_obj_t)&mp_module_io },
+    { MP_OBJ_NEW_QSTR(MP_QSTR__io), (mp_obj_t)&mp_module_io },
 #endif
 #if MICROPY_PY_COLLECTIONS
     { MP_OBJ_NEW_QSTR(MP_QSTR__collections), (mp_obj_t)&mp_module_collections },
diff --git a/py/modio.c b/py/modio.c
index e1761f7ea6ba97660524059bd11bc48e1595b4de..08c6c59dd99fbd57c4acbd4d9898c6c8e74514e0 100644
--- a/py/modio.c
+++ b/py/modio.c
@@ -36,7 +36,7 @@ extern const mp_obj_type_t mp_type_fileio;
 extern const mp_obj_type_t mp_type_textio;
 
 STATIC const mp_map_elem_t mp_module_io_globals_table[] = {
-    { MP_OBJ_NEW_QSTR(MP_QSTR___name__), MP_OBJ_NEW_QSTR(MP_QSTR_io) },
+    { MP_OBJ_NEW_QSTR(MP_QSTR___name__), MP_OBJ_NEW_QSTR(MP_QSTR__io) },
     // Note: mp_builtin_open_obj should be defined by port, it's not
     // part of the core.
     { MP_OBJ_NEW_QSTR(MP_QSTR_open), (mp_obj_t)&mp_builtin_open_obj },
@@ -65,7 +65,7 @@ STATIC const mp_obj_dict_t mp_module_io_globals = {
 
 const mp_obj_module_t mp_module_io = {
     .base = { &mp_type_module },
-    .name = MP_QSTR_io,
+    .name = MP_QSTR__io,
     .globals = (mp_obj_dict_t*)&mp_module_io_globals,
 };
 
diff --git a/py/qstrdefs.h b/py/qstrdefs.h
index 521d4399a507ee8af9fdf0451733718d9a6a100f..856853fa55a16290ca391711b036136b70acbfb0 100644
--- a/py/qstrdefs.h
+++ b/py/qstrdefs.h
@@ -361,7 +361,7 @@ Q(unpack)
 #endif
 
 #if MICROPY_PY_IO
-Q(io)
+Q(_io)
 Q(readall)
 Q(readline)
 Q(readlines)
diff --git a/tests/io/stringio1.py b/tests/io/stringio1.py
index f69f62f75f93d1dc3cdbf518e1ccb163318d0c21..6979fe7c9d84982083e480ce4b21f1df88de7219 100644
--- a/tests/io/stringio1.py
+++ b/tests/io/stringio1.py
@@ -1,4 +1,4 @@
-import io
+import _io as io
 
 a = io.StringIO()
 print(a.getvalue())