My understanding is this would be Code G only.
The Form 1099-R instructions say to use Code G for a direct rollover to a designated Roth account, including in-plan Roth rollovers (IRRs). I’m not seeing anything in the instructions that allows Code 2 to be used with G, and it’s not listed as a valid combination in Table 1.
Also, the attached IRS In-Plan Roth Rollover Phone Forum transcript (page 13, paragraph 2), while a bit older and from when these rules were first introduced, indicates reporting the amount in Box 1 and 2a with Code G, without mentioning any additional distribution codes.
It seems like Code G already communicates that this is a direct rollover and not subject to the 10% early distribution penalty, so adding Code 2 doesn’t appear necessary or supported by the instructions.
Happy to be corrected if there’s specific IRS guidance that allows 2G here, but I haven’t come across anything that does.
inplan_roth_phoneforum_transcript.pdf