From Old Persian 'Parsa' — the same word that Arabic, lacking /p/, turned into 'Farsi.'
The Western Iranian language spoken in Iran (where it is called Farsi), Afghanistan (Dari), and Tajikistan (Tajik); also used for the people, culture, and historical civilization of Persia.
From Latin 'Persianus,' from Latin 'Persia,' from Greek 'Persis' (Περσίς), from Old Persian 'Pārsa' — the name of the southwestern Iranian province (modern Fars) that was the homeland of the Achaemenid dynasty. The name 'Pārsa' is of uncertain ultimate origin but may relate to an Indo-Iranian word meaning 'edge' or 'border.' The native modern name for the language is 'Fārsi' (فارسی), reflecting the Arabic substitution of /f/ for /p/, a sound that does not exist in Arabic — thus 'Pārsa' became 'Fārs' in Arabic and 'Fārsi' in modern Persian. Key roots: Pārsa (Old Persian: "Persia, the Persian homeland").
The reason the language is called 'Persian' in English but 'Farsi' by its own speakers is a consonant that doesn't exist in Arabic. Old Persian 'Pārsa' became 'Fārs' after the Arab conquest because Arabic has no /p/ sound, substituting /f/. So 'Farsi' and 'Persian' are the same word, separated by a single sound change imposed by Arabic phonology over a thousand years