I had this same problem on Ubuntu 11.10 64-bit with a Brother MFC-7220 and the brscan2 driver. Printing worked fine, but attempting to scan gave the "Invalid argument" error. In my case it turned out that the issue was that it didn't work with USB 3.0 ports. Whenever it was plugged into a USB 3.0 port, I got the "Invalid argument" error; whenever it was plugged into a USB 2.0 port, it worked. I also noticed in "dmesg" that it printed this message precisely whenever I plugged it into a USB 3.0 port:
[ 2534.356937] usb 3-2: ep 0x85 - rounding interval to 512 microframes, ep desc says 800 microframes
So that may be the cause of the problem.
(It also printed a message saying "[ 2535.503268] usb 3-2: usbfs: USBDEVFS_CONTROL failed cmd mtp-probe rqt 128 rq 6 len 1024 ret -110", but that was printed even with USB 2.0 ports when everything was working.)
I had this same problem on Ubuntu 11.10 64-bit with a Brother MFC-7220 and the brscan2 driver. Printing worked fine, but attempting to scan gave the "Invalid argument" error. In my case it turned out that the issue was that it didn't work with USB 3.0 ports. Whenever it was plugged into a USB 3.0 port, I got the "Invalid argument" error; whenever it was plugged into a USB 2.0 port, it worked. I also noticed in "dmesg" that it printed this message precisely whenever I plugged it into a USB 3.0 port:
[ 2534.356937] usb 3-2: ep 0x85 - rounding interval to 512 microframes, ep desc says 800 microframes
So that may be the cause of the problem.
(It also printed a message saying "[ 2535.503268] usb 3-2: usbfs: USBDEVFS_CONTROL failed cmd mtp-probe rqt 128 rq 6 len 1024 ret -110", but that was printed even with USB 2.0 ports when everything was working.)