I want to develop an application which runs on iPhone / Android / Windows Phone 7 smartphones and is able to recognize a marker and place augmented reality content on it.
<As Derek and Stefan point out, it appears that there are ports of the ARToolKit augmented reality framework for all three platforms.
On iPhone, you can see this in the VRToolkit sample application by Benjamin Loulier, which leverages the enhanced ARToolKitPlus library.
For Android, it looks like NyARToolkit is available, with this sample application (as pointed out by Stefan).
Finally, it looks like SLARToolKit is used in the Windows Phone 7 sample application here (as pointed out by Derek).
Be aware that this toolkit and its derivatives are licensed under the GPL:
IMPORTANT NOTICE REGARDING YOUR RIGHT TO USE ARTOOLKIT:
ARToolKit is made available freely for non-commercial use under the GNU General Public License. Commercial licenses to a professional implementation of ARToolKit are available for users for whom the GPL is not suitable, or who require a higher level of support, or who require customization or other specialist modifictions. Commercial licenses are administered by ARToolworks, Inc., Seattle, WA, USA.
I've seen people violating this license in their applications and derivative frameworks, so it's something to be aware of.
This is probably the closest you'll get: http://nyatla.jp/nyartoolkit/wiki/index.php?FrontPage.en
Did you check Layar?
AFAIK they do not support WP7 but I guess it's a matter of time.
Not sure about Android or iPhone, but Kevin Marshall has done some proof-of-concept work on Windows Phone 7. You should keep in mind though, that augmented reality on WP7 requires access to camera APIs that are not publicly available and as such any AR application on WP7 would not be available officially through the Marketplace. Device manfacturers (such as LG) have access to these APIs, which is how some AR applications already exist for WP7.