diff --git a/src/OpenGL/libGLESv2/libGLESv2.cpp b/src/OpenGL/libGLESv2/libGLESv2.cpp
index 5f14e9c..3d7aa42 100644
--- a/src/OpenGL/libGLESv2/libGLESv2.cpp
+++ b/src/OpenGL/libGLESv2/libGLESv2.cpp
@@ -2306,8 +2306,7 @@
 			return error(GL_INVALID_OPERATION);
 		}
 
-		if(!IsColorRenderable(texture->getFormat(target, 0), clientVersion, true) ||
-		   sw::Surface::isNonNormalizedInteger(texture->getInternalFormat(target, 0)))
+		if(!IsMipmappable(texture->getFormat(target, 0), texture->getInternalFormat(target, 0), clientVersion))
 		{
 			return error(GL_INVALID_OPERATION);
 		}
diff --git a/src/OpenGL/libGLESv2/utilities.cpp b/src/OpenGL/libGLESv2/utilities.cpp
index 24f415a..0d86291 100644
--- a/src/OpenGL/libGLESv2/utilities.cpp
+++ b/src/OpenGL/libGLESv2/utilities.cpp
@@ -1126,6 +1126,13 @@
 		case GL_RGBA32UI:
 		case GL_R11F_G11F_B10F:
 			return clientVersion >= 3;
+		case GL_R8_SNORM:
+		case GL_RG8_SNORM:
+		case GL_RGB8_SNORM:
+		case GL_RGBA8_SNORM:
+		case GL_ALPHA8_EXT:
+		case GL_LUMINANCE8_EXT:
+		case GL_LUMINANCE8_ALPHA8_EXT:
 		case GL_DEPTH_COMPONENT24:
 		case GL_DEPTH_COMPONENT32_OES:
 		case GL_DEPTH_COMPONENT32F:
@@ -1141,6 +1148,24 @@
 		return false;
 	}
 
+	bool IsMipmappable(GLenum internalformat, sw::Format internalFormat, GLint clientVersion)
+	{
+		if(sw::Surface::isNonNormalizedInteger(internalFormat))
+		{
+			return false;
+		}
+
+		switch(internalformat)
+		{
+			case GL_ALPHA8_EXT:
+			case GL_LUMINANCE8_EXT:
+			case GL_LUMINANCE8_ALPHA8_EXT:
+				return true;
+			default:
+				return IsColorRenderable(internalformat, clientVersion, true);
+		}
+	}
+
 	bool IsDepthRenderable(GLenum internalformat, GLint clientVersion)
 	{
 		switch(internalformat)
diff --git a/src/OpenGL/libGLESv2/utilities.h b/src/OpenGL/libGLESv2/utilities.h
index 815a191..6e18252 100644
--- a/src/OpenGL/libGLESv2/utilities.h
+++ b/src/OpenGL/libGLESv2/utilities.h
@@ -57,6 +57,7 @@
 	GLsizei GetTypeSize(GLenum type);
 
 	bool IsColorRenderable(GLenum internalformat, GLint clientVersion, bool isTexture);
+	bool IsMipmappable(GLenum format, sw::Format internalFormat, GLint clientVersion);
 	bool IsDepthRenderable(GLenum internalformat, GLint clientVersion);
 	bool IsStencilRenderable(GLenum internalformat, GLint clientVersion);
 
