Sweat Eggplant: Cut eggplant lengthwise into ⅛ inch slices (this is easiest with a mandolin slicer). Sprinkle slices evenly with salt on both sides, then set on a few layers of paper towels and set aside for 15 minutes. When finished, firmly pat eggplant as dry as possible with paper towels.
Precook Eggplant: Preheat oven to broil. Brush eggplant slices on both sides with oil, then broil for 3 to 5 minutes, flipping halfway through cooking, until eggplant is tender and slightly browned. You may need to work in batches. When finished, remove eggplant from oven and set temperature to 350°F (175°C).
Sauce: Heat oil in a large saute pan over medium heat. Add garlic and mushrooms, cooking uncovered until mushrooms sweat out their moisture, about 5 to 7 minutes. Add marinara, basil, salt, and crushed pepper. Cover and let gently simmer for about 10 minutes, while you prepare the rest.
Ricotta: Stir together ricotta, 1 ½ cups mozzarella, ½ cup parmesan, thawed spinach, egg, oregano, and salt.
Assemble: Into a 9×9 inch (or similar size) casserole dish, layer – ⅓ of the sauce > ⅓ of the eggplant > ⅓ of the ricotta mixture > repeat until all ingredients are used. Sprinkle with remaining ½ cup mozzarella and ½ cup parmesan.
Bake: For about 30 minutes, or until top is golden brown. Let cool slightly before serving.