I believe you can use any GPIO pin as CS/SS. Keep in mind you will need a different pin for each slave device. For example say device0 SPI CS is connected to PORTD pin 5, and device1 SPI CS is connected to PORTD pin 6:
//init ports
DDRD |= (1 << 5) | (1 << 6); //sets PORTD bits 5 and 6 to output
PORTD |= (1 << 5) | (1 << 6); //sets PORTD bits 5 and 6 to high (spi CS inactive)
//spi device0
PORTD &= ~(1 << 5); //resets device0 CS (makes it active)
//SPI send/receive stuff here
PORTD |= (1 << 5); //sets device0 CS (makes it inactive)
//spi device1
PORTD &= ~(1 << 6); //resets device0 CS (makes it active)
//SPI send/receive stuff here
PORTD |= (1 << 6); //sets device0 CS (makes it inactive)
If the slave devices are true slave-selected SPI modules, if their Clock Select is pulled high they should put all their outputs to tri-state and stop listening to their inputs.
So the schematic you linked does work. Just imagine the +5V says "VCC", because it should. The pull-up should always go to the VCC of your total device.
In that system only pull-ups will work, because the CS's of the slave devices need to go high in programming mode, when you program an Atmel it goes into reset and its outputs go tri-state (floating). So the resistors will automatically pull the CS high.
What resistor value will still work is dependent on two things: Your programming speed and the capacitance of the CS traces in your device. As I do not know either I cannot advise you fully, but on average I'd estimate 10kOhm should be fine for a small-ish device and a programming speed at or below 250kHz. That'll probably allow the CS of the slave to be charged up to the high before the first useful clock pulse with standard AVR programmers.
Anything much higher than 10k at 1.8V will not offer you savings that you'll notice. At 1.8V the 10k will only drain 180uA when the SS is asserted, and I'm willing to bet that the switching and communications actions in the AVR will use much more than that, let alone the slave device.
You can experiment with 22k and 50k if you want, but stay realistic about all the parameters: When CS is low, you're communicating. Communicating is a reasonable drain in itself.
Best Answer
From the CC2520 datasheet it looks like all you need to do is control the resetn of the CC2520 with any GPIO pin. As long as you can drive the pin high and low you should be fine. Any of those pins should work provided they are configured as outputs.
I might consider adding an external pullup resistor on that resetn line if you don't want the CC2520 to be reset when the MCU gets reset, otherwise it shouldn't really matter.