Is there anyway to create ImageKHR from sub region of AHardwareBuffer?

Here is my code. It could create a framebuffer from Ahardwarebuffer.


    graphicbufferChannels = channels;
    usage.height = height;
    usage.width = width;
    usage.layers = 1;
    usage.rfu0 = 0;
    usage.rfu1 = 0;
    usage.stride = width;
    usage.usage = AHARDWAREBUFFER_USAGE_CPU_READ_OFTEN | AHARDWAREBUFFER_USAGE_CPU_WRITE_NEVER
                  | AHARDWAREBUFFER_USAGE_GPU_COLOR_OUTPUT;

    AHardwareBuffer* graphicBuf;
    int ret = AHardwareBuffer_allocate(&usage, &graphicBuf); // it's worth to check the return code
    graphicBuffer = graphicBuf;
    EGLClientBuffer clientBuf = eglGetNativeClientBufferANDROID(graphicBuf);

    EGLint eglImageAttributes[] = {EGL_IMAGE_PRESERVED_KHR, EGL_TRUE, EGL_NONE};
    imageEGL = eglCreateImageKHR(disp, EGL_NO_CONTEXT, EGL_NATIVE_BUFFER_ANDROID, clientBuf, eglImageAttributes);
    //then create

I wonder if there any way to create ImageKHR from sub region of AHardwareBuffer? Like above graphic buffer is width* height. Can I create use its region like (0, 0, width/4, height/4) as render canvas?