> How long will it take to get EAD/Work Permit?
4 weeks to 104 days. If you didn't get your EAD after 90 days, you can go to the local USCIS office and get an interim EAD. Some offices require you to wait for 104 days to account for mailing delays.
> Can we get EAD while still waiting for I-140?
Only if you are eligible to file a I485 at the same time (concurrent filing). The EAD is tied to the I485, not the I140.
In self-petitioned cases, at times USCIS will put a 'hold' on the issuance of the EAD until the I140 is approved. In employer petitioned cases they don't seem to do that.
> When do we apply for EAD?
Either together with form I485 or after it.
You want to apply about 4 Months before you need it. That way, you have enough time to get an interim EAD if they fall asleep at work. And although the rules would allow USCIS to issue EADs with 3 year validity, they have chosen not to do that. So, the EAD is valid for a year only, if you apply to early for it, you will be stuck applying again after a short while.