Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4f592e6d authored by Russell King's avatar Russell King
Browse files

ARM: sa11x0: assabet: avoid glitching GPIOs when setting outputs



Avoid glitching the GPIO signals during initialization, which can
have undesirable effects.  Ensure that the desired pin state is set
before we change the GPIO pin direction to be an output.

Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 7186fb9f
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -202,8 +202,8 @@ static void __init assabet_init(void)
	/*
	/*
	 * Ensure that the power supply is in "high power" mode.
	 * Ensure that the power supply is in "high power" mode.
	 */
	 */
	GPDR |= GPIO_GPIO16;
	GPSR = GPIO_GPIO16;
	GPSR = GPIO_GPIO16;
	GPDR |= GPIO_GPIO16;


	/*
	/*
	 * Ensure that these pins are set as outputs and are driving
	 * Ensure that these pins are set as outputs and are driving
@@ -211,8 +211,8 @@ static void __init assabet_init(void)
	 * the WS latch in the CPLD, and we don't float causing
	 * the WS latch in the CPLD, and we don't float causing
	 * excessive power drain.  --rmk
	 * excessive power drain.  --rmk
	 */
	 */
	GPDR |= GPIO_SSP_TXD | GPIO_SSP_SCLK | GPIO_SSP_SFRM;
	GPCR = GPIO_SSP_TXD | GPIO_SSP_SCLK | GPIO_SSP_SFRM;
	GPCR = GPIO_SSP_TXD | GPIO_SSP_SCLK | GPIO_SSP_SFRM;
	GPDR |= GPIO_SSP_TXD | GPIO_SSP_SCLK | GPIO_SSP_SFRM;


	/*
	/*
	 * Set up registers for sleep mode.
	 * Set up registers for sleep mode.