[PATCH] [spi_mpc83xx] Always enable legacy support.
Anton Vorontsov
avorontsov at ru.mvista.com
Thu Jul 2 07:12:12 EST 2009
On Wed, Jul 01, 2009 at 09:16:12PM +0200, Joakim Tjernlund wrote:
> There are out of tree boards that need this legacy support too.
Heh.
> Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund at transmode.se>
> ---
> I hope this is OK. I just discovered that spi didn't work for
> me in 2.6.30 and I have no time to work on coverting my boards.
I'd convert them for you if they were in-tree. :-) But I don't
think that moving the kernel backwards because of out-of-tree
boards is a good thing.
> I don't have a clue either on how to do that, any pointers
> how to add a few spidev devices via OF?
Something like this will work:
spi at 4c0 {
#address-cells = <1>;
#size-cells = <0>;
cell-index = <0>;
compatible = "fsl,spi";
reg = <0x4c0 0x40>;
interrupts = <2>;
interrupt-parent = <&qeic>;
/* provide chip-selects here */
gpios = <&qe_pio_d 13 0 /* CS0 */
&qe_pio_d 14 0>; /* CS1 */
mode = "cpu-qe";
device at 0 {
compatible = "spidev";
reg = <0>; /* CS0*/
spi-max-frequency = <50000000>;
};
device at 0 {
compatible = "spidev";
reg = <1>; /* CS1 */
spi-max-frequency = <50000000>;
};
};
You can look at arch/powerpc/boot/dts/mpc832x_rdb.dts as an
example.
Note that "spidev" isn't correct compatible entry to use,
but it's quick and dirty solution. A proper solution is to
add a proper compatible entry into the device-tree, and
add "spidev" alias into drivers/of/base.c:of_modalias_table.
> drivers/spi/spi_mpc83xx.c | 5 -----
> 1 files changed, 0 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/spi/spi_mpc83xx.c b/drivers/spi/spi_mpc83xx.c
> index f4573a9..d167577 100644
> --- a/drivers/spi/spi_mpc83xx.c
> +++ b/drivers/spi/spi_mpc83xx.c
> @@ -882,7 +882,6 @@ static struct of_platform_driver of_mpc83xx_spi_driver = {
> .remove = __devexit_p(of_mpc83xx_spi_remove),
> };
>
> -#ifdef CONFIG_MPC832x_RDB
> /*
> * XXX XXX XXX
> * This is "legacy" platform driver, was used by the MPC8323E-RDB boards
> @@ -941,10 +940,6 @@ static void __exit legacy_driver_unregister(void)
> return;
> platform_driver_unregister(&mpc83xx_spi_driver);
> }
> -#else
> -static void __init legacy_driver_register(void) {}
> -static void __exit legacy_driver_unregister(void) {}
> -#endif /* CONFIG_MPC832x_RDB */
>
> static int __init mpc83xx_spi_init(void)
> {
> --
> 1.6.2.3
>
--
Anton Vorontsov
email: cbouatmailru at gmail.com
irc://irc.freenode.net/bd2
More information about the Linuxppc-dev
mailing list