My response:
Remember, it's not a matter of you doing this voluntarily to be a "good guy." There is a reason for issuing and serving a Subpoena, and that is to "compel" your appearance, subjecting you to "contempt of court" for your failure to appear. If it was just a matter of you being a "good guy," the attorney would have called you on the phone to ask you to voluntarily appear for a deposition or trial testimony.
So, whether or not you like it, or want to, or that you're being a "good guy," the fact is, you're going - - under pain and penalty of contempt (read the subpoena).
Now, as to your question: You're only entitled to statutory fees and mileage. Believe me, you're not going to get rich off those amounts. As a matter of fact, you're going to lose a lot of money; i.e., your regular day's pay. You may only discuss your statutory fee and mileage costs with the attorney, and when to expect payment; e.g., at or before the time of your appearance.
And no, the attorney WILL NOT reimburse you beyond the statutory guidelines. To do otherwise would be considered "witness tampering" and would run afoul of the Professional Rules of Conduct for attorneys.
IAAL