I'm very much interested in the P-channel idea. Currently I'm trying to shut off the power from my raspi with a N-channel MOSFET and have really severe trouble. I managed everything internal, so I have the pins that go high, holding the MOSFET Gate (which was initially activated by a pushbutton and a capacitor to assure it is active until the GPIO pin comes).
My problem is, after halt the GPIO goes low as expected, my MOSFET goes inactive but now with the positive voltage still connected to the raspi (MOSFET is disconnecting the raspi gnd from real ground), this potential is also available at the GPIO pins! So if you can meassure 5V from the power input pin to your (not connected) ground, you can meassure the same also on the GPIO pins. believe it or not, it's also 5V there. Of course this voltage is gone when the raspi has power, but as it is present there, it activates my MOSFET again and everything starts all over. I need the raspberry with the positive power cable connected, as it has to have higher voltage than the MOSFET source, to be able to hold the gate. I I'd put the raspberry between source and ground, it will not be able to provide voltage to the gate.
Then I was experimenting with normal bipolar transistors, but the ones I have have either really poor DC gain or they don't allow enough current for the raspi. When it pulls some peaks, the voltage drops so low in the transistor, that the pi does a panic shutdown. If I take larger transistors, I have to waste a shitload of power on the basis - emiter line to be sure to have enough current for the raspi and what is hanging on.
Is there nobody that ever managed to have a proper battery powered raspberry that is cutting the battery off, after halt state? I read about someone who did it with an additional arduino. But common, Arduino is much more expensive and what sense is that, adding another computer to disconnect the computer from the power ??
I also saw some solutions with a MOSFET pair within an IC, but that project was not quite well documented and I was not willing to order another piece without confidence that it will solve the issues.
MOSFET stuff is bit offtopic here, but if somebody can help, here is a thread of mine
where it would be ontopic