powerpc/83xx: add mmc-spi support via the device tree for MPC8323E-RDB
- Add gpio-controller node to manage QE GPIO Bank D; - Add mmc-spi node; - Modify board file so that it won't use legacy SPI support with the new device trees. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Cc: David Brownell <david-b@pacbell.net> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Kumar Gala <galak@gate.crashing.org> Cc: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
3f1c6ebf57
Коммит
7545828531
|
@ -152,10 +152,21 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
par_io@1400 {
|
par_io@1400 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
reg = <0x1400 0x100>;
|
reg = <0x1400 0x100>;
|
||||||
|
ranges = <3 0x1448 0x18>;
|
||||||
|
compatible = "fsl,mpc8323-qe-pario";
|
||||||
device_type = "par_io";
|
device_type = "par_io";
|
||||||
num-ports = <7>;
|
num-ports = <7>;
|
||||||
|
|
||||||
|
qe_pio_d: gpio-controller@1448 {
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
compatible = "fsl,mpc8323-qe-pario-bank";
|
||||||
|
reg = <3 0x18>;
|
||||||
|
gpio-controller;
|
||||||
|
};
|
||||||
|
|
||||||
ucc2pio:ucc_pin@02 {
|
ucc2pio:ucc_pin@02 {
|
||||||
pio-map = <
|
pio-map = <
|
||||||
/* port pin dir open_drain assignment has_irq */
|
/* port pin dir open_drain assignment has_irq */
|
||||||
|
@ -225,12 +236,25 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
spi@4c0 {
|
spi@4c0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
cell-index = <0>;
|
cell-index = <0>;
|
||||||
compatible = "fsl,spi";
|
compatible = "fsl,spi";
|
||||||
reg = <0x4c0 0x40>;
|
reg = <0x4c0 0x40>;
|
||||||
interrupts = <2>;
|
interrupts = <2>;
|
||||||
interrupt-parent = <&qeic>;
|
interrupt-parent = <&qeic>;
|
||||||
|
gpios = <&qe_pio_d 13 0>;
|
||||||
mode = "cpu-qe";
|
mode = "cpu-qe";
|
||||||
|
|
||||||
|
mmc-slot@0 {
|
||||||
|
compatible = "fsl,mpc8323rdb-mmc-slot",
|
||||||
|
"mmc-spi-slot";
|
||||||
|
reg = <0>;
|
||||||
|
gpios = <&qe_pio_d 14 1
|
||||||
|
&qe_pio_d 15 0>;
|
||||||
|
voltage-ranges = <3300 3300>;
|
||||||
|
spi-max-frequency = <50000000>;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
spi@500 {
|
spi@500 {
|
||||||
|
|
|
@ -68,6 +68,12 @@ static int __init mpc832x_spi_init(void)
|
||||||
par_io_config_pin(3, 14, 2, 0, 0, 0); /* SD_INSERT, I */
|
par_io_config_pin(3, 14, 2, 0, 0, 0); /* SD_INSERT, I */
|
||||||
par_io_config_pin(3, 15, 2, 0, 0, 0); /* SD_PROTECT,I */
|
par_io_config_pin(3, 15, 2, 0, 0, 0); /* SD_PROTECT,I */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Don't bother with legacy stuff when device tree contains
|
||||||
|
* mmc-spi-slot node.
|
||||||
|
*/
|
||||||
|
if (of_find_compatible_node(NULL, NULL, "mmc-spi-slot"))
|
||||||
|
return 0;
|
||||||
return fsl_spi_init(&mpc832x_spi_boardinfo, 1, mpc83xx_spi_cs_control);
|
return fsl_spi_init(&mpc832x_spi_boardinfo, 1, mpc83xx_spi_cs_control);
|
||||||
}
|
}
|
||||||
machine_device_initcall(mpc832x_rdb, mpc832x_spi_init);
|
machine_device_initcall(mpc832x_rdb, mpc832x_spi_init);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче