This paper introduces an autonomous parking trajectory planning method in an unstructured environment with narrow passages. The proposed planner consists of two layers, namely a graph search layer and a numerical optimization layer. The contribution mainly lies in the graph search layer, wherein a multi-stage hybrid A* algorithm is proposed to handle narrow passages formed by obstacles in a tiny or cluttered environment. In the multi-stage hybrid A* algorithm, 2-dim A* algorithm is conducted to find a global route that connects the starting point and the goal point. Along the derived global route, subtle segments that traverse narrow passages will be extracted. Thereafter, the hybrid A* algorithm is used to plan kinematically feasible sub-paths that connect the boundary points of each subtle segment. The hybrid A* algorithm is also used to find the linking paths that connect adjacent sub-paths. Combing all of the subpaths and linking paths in a sequence yields a coarse path, which is converted into a coarse trajectory if attaching a time-optimal velocity profile to it. The coarse trajectory is fed into the numerical optimization layer as the initial guess. Simulation results indicate that our two-layer planner is much faster than the prevalent ones in dealing with unstructured environments with narrow passages.