You can't give a filename as an argument to a suite setup, but you can certainly create a file that has a single keyword that does everything you want.
You could also use a variable file, which will get executed before any tests will run.
Using a library file with a setup keyword
To use a library file, put all the code you want to execute in a single function. For example:
# my_setup_file.py
def my_setup():
do_something()
do_something_else()
You could then use it like this:
# my_suite.robot
*** Settings ***
| Library | my_setup_file.py
| Suite setup | my_setup
Using a variable file
You can use a variable file, which in effect works like loading up a file in setup since the file is evaluated before the start of the first step (and before any other setup steps)
In this case your python file would not need a function, it could have any code. All variables defined in this file will be available to your test case.
# my_variables.py
foo = "this is foo"
bar = "this is bar"
You would then use it like this:
*** Settings ***
| Variables | my_variables.py