In:

    LogLinearPlot[Log[10, x], {x, 10^-10, 10},Ticks -> {myTicks, Automatic}];

myTicks is not evaluated to a list of anything; it's just a symbol. If you evaluate:

    myTicks[10^-10, 10]
you get:

    {{100, -2}, {1, 0}, {1/100, 2}, {1/10000, 4}, {1/1000000, 6}, {1/
     100000000, 8}, {1/10000000000, 10}}
which is a list. Don't know about Version 9, but The error message for p2 with Version 10 means exactly what it says.