Re: [beagleboard] Kernel 3.12.x / GPMC

2014-03-19 Thread quikcjack
So we don't even have a cape manager in newer kernels for the BBB? Is that 
really true? Is there anybody out there who knows more about this topic? 
How exactly does it work to load device tree settings during runtime 
without a cape manager?


Am Dienstag, 11. März 2014 14:43:17 UTC+1 schrieb David:

  I don't think capemgr/device tree overlays are supported anymore. Robert 
 Nelson has proposed another solution with 3.13.x kernels that seems to work 
 for me:


 https://github.com/RobertCNelson/linux-dev/commit/685b182ca956dcd8396ca69af5c678c43a102d03

 HTH,

 Dave.


 On 03/11/2014 05:05 AM, quik...@gmail.com javascript: wrote:
  

 I have done some tests initializing the device tree. The file I have used 
 does work in kernel 3.8.13 without any issues. However, kernel 3.12.13 
 causes lots of trouble.

 My .dts file is as follows:

 /*
  * optargs=capemgr.disable_partno=BB-BONE-EMMC-2G
  * arch/arm/boot/dts/am335x-boneblack.dts, find the section starting
  * with mmc2 { and in section change  status = okay into disabled.
  * do once : mmc dev 1
  *   mmc rstn 1
  * in uBoot or in uEnv and then delete
  */



 /dts-v1/;
 /plugin/;

 / {
 compatible = ti,beaglebone, ti,beaglebone-black;

 /* identification */
 part-number = BB-BONE-MARK1;
 version = 00A1;

 /* state the resources this cape uses */
 exclusive-use =
 /* the pin header uses */
 P8.25,/* gpmc: gpmc_ad0 */
 P8.24,/* gpmc: gpmc_ad1 */
 P8.5,/* gpmc: gpmc_ad2 */
 P8.6,/* gpmc: gpmc_ad3 */
 P8.23,/* gpmc: gpmc_ad4 */
 P8.22,/* gpmc: gpmc_ad5 */
 P8.3,/* gpmc: gpmc_ad6 */
 P8.4,/* gpmc: gpmc_ad7 */
 P8.19,/* gpmc: gpmc_ad8 */
 P8.13,/* gpmc: gpmc_ad9 */
 P8.14,/* gpmc: gpmc_ad10 */
 P8.17,/* gpmc: gpmc_ad11 */
 P8.12,/* gpmc: gpmc_ad12 */
 P8.11,/* gpmc: gpmc_ad13 */
 P8.16,/* gpmc: gpmc_ad14 */
 P8.15,/* gpmc: gpmc_ad15 */
 P9.13,/* gpmc: gpmc_wpn */
 P8.21,/* gpmc: gpmc_csn1 */
 P8.18,/* gpmc: gpmc_clk */
 P8.7,/* gpmc: gpmc_advn_ale */
 P8.8,/* gpmc: gpmc_oen_ren */
 P8.10,/* gpmc: gpmc_wen */
 P8.9,/* gpmc: gpmc_ben0_cle */
 
 P9.18,
 P9.22,

 gpmc,
 /* the reset pin */
 eMMC_RSTn;

 #address-cells = 1;
 #size-cells = 1;

 fragment@0 {
 target = am33xx_pinmux;
 __overlay__ {

 gpmc_pins: pinmux_gpmc_pins {
 pinctrl-single,pins = 
 0x000 0x30/* gpmc_ad0.gpmc_ad0 MODE0 | INPUT | 
 PULLUP */
 0x004 0x30/* gpmc_ad1.gpmc_ad1 MODE0 | INPUT | 
 PULLUP */
 0x008 0x30/* gpmc_ad2.gpmc_ad2 MODE0 | INPUT | 
 PULLUP */
 0x00C 0x30/* gpmc_ad3.gpmc_ad3 MODE0 | INPUT | 
 PULLUP */
 0x010 0x30/* gpmc_ad4.gpmc_ad4 MODE0 | INPUT | 
 PULLUP */
 0x014 0x30/* gpmc_ad5.gpmc_ad5 MODE0 | INPUT | 
 PULLUP */
 0x018 0x30/* gpmc_ad6.gpmc_ad6 MODE0 | INPUT | 
 PULLUP */
 0x01C 0x30/* gpmc_ad7.gpmc_ad7 MODE0 | INPUT | 
 PULLUP */
 0x020 0x30/* gpmc_ad8.gpmc_ad8 MODE0 | INPUT | 
 PULLUP */
 0x024 0x30/* gpmc_ad9.gpmc_ad9 MODE0 | INPUT | 
 PULLUP */
 0x028 0x30/* gpmc_ad10.gpmc_ad10 MODE0 | INPUT | 
 PULLUP */
 0x02C 0x30/* gpmc_ad11.gpmc_ad11 MODE0 | INPUT | 
 PULLUP */
 0x030 0x30/* gpmc_ad12.gpmc_ad12 MODE0 | INPUT | 
 PULLUP */
 0x034 0x30/* gpmc_ad13.gpmc_ad13 MODE0 | INPUT | 
 PULLUP */
 0x038 0x30/* gpmc_ad14.gpmc_ad14 MODE0 | INPUT | 
 PULLUP */
 0x03C 0x30/* gpmc_ad15.gpmc_ad15 MODE0 | INPUT | 
 PULLUP */
 0x080 0x08/* gpmc_cscn1.gpmc_cscn1 MODE0 | OUTPUT 
 */
 0x08C 0x28/* gpmc_clk.gpmc_clk MODE0 | OUTPUT */
 0x090 0x08/* gpmc_advn_ale.gpmc_advn_ale MODE0 | 
 OUTPUT */
 0x094 0x08/* gpmc_oen_ren.gpmc_oen_ren MODE0 | 
 OUTPUT */
 0x098 0x08/* gpmc_wen.gpmc_wen MODE0 | OUTPUT */
 0x09C 0x08/* gpmc_ben0_cle.gpmc_ben0_cle MODE0 | 
 OUTPUT */
 0x078 0x08/* gpmc_ben1_cle.gpmc_ben1_cle MODE0 | 
 OUTPUT */
 ;
 };
 
 fpga_config_pins: pinmux_fpga_config_pins {
 pinctrl-single,pins = 
 /* config clk and data */
 0x158 0x17  /*  spi1_d1 MODE3 | INPUT | PULLUP , 
 serial data config */
 0x150 0x17/* spi1_sclk MODE3 | INPUT | PULLUP, 
 serial clock config  */
  

Re: [beagleboard] Kernel 3.12.x / GPMC

2014-03-19 Thread Charles Steinkuehler
On 03/19/14 03:27, quikcj...@gmail.com wrote:
 So we don't even have a cape manager in newer kernels for the BBB? Is that 
 really true? Is there anybody out there who knows more about this topic? 
 How exactly does it work to load device tree settings during runtime 
 without a cape manager?

Without a cape manager you don't load device tree anything at runtime,
you compile any device tree changes into the dtb loaded at boot time.

If this bothers you enough, you can port the cape manager kernel feature
to the newer kernels.  Otherwise, there is some talk that this work may
be part of the Google Summer of Code projects.

--
Charles Steinkuehler

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
BeagleBoard group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [beagleboard] Kernel 3.12.x / GPMC

2014-03-12 Thread quikcjack
The page links to github and shows lots of changes. Do you have more 
information on this proposed solution? Is there a documentation available 
somewhere?


Am Dienstag, 11. März 2014 14:43:17 UTC+1 schrieb David:

  I don't think capemgr/device tree overlays are supported anymore. Robert 
 Nelson has proposed another solution with 3.13.x kernels that seems to work 
 for me:


 https://github.com/RobertCNelson/linux-dev/commit/685b182ca956dcd8396ca69af5c678c43a102d03

 HTH,

 Dave.


 On 03/11/2014 05:05 AM, quik...@gmail.com javascript: wrote:
  

 I have done some tests initializing the device tree. The file I have used 
 does work in kernel 3.8.13 without any issues. However, kernel 3.12.13 
 causes lots of trouble.

 My .dts file is as follows:

 /*
  * optargs=capemgr.disable_partno=BB-BONE-EMMC-2G
  * arch/arm/boot/dts/am335x-boneblack.dts, find the section starting
  * with mmc2 { and in section change  status = okay into disabled.
  * do once : mmc dev 1
  *   mmc rstn 1
  * in uBoot or in uEnv and then delete
  */



 /dts-v1/;
 /plugin/;

 / {
 compatible = ti,beaglebone, ti,beaglebone-black;

 /* identification */
 part-number = BB-BONE-MARK1;
 version = 00A1;

 /* state the resources this cape uses */
 exclusive-use =
 /* the pin header uses */
 P8.25,/* gpmc: gpmc_ad0 */
 P8.24,/* gpmc: gpmc_ad1 */
 P8.5,/* gpmc: gpmc_ad2 */
 P8.6,/* gpmc: gpmc_ad3 */
 P8.23,/* gpmc: gpmc_ad4 */
 P8.22,/* gpmc: gpmc_ad5 */
 P8.3,/* gpmc: gpmc_ad6 */
 P8.4,/* gpmc: gpmc_ad7 */
 P8.19,/* gpmc: gpmc_ad8 */
 P8.13,/* gpmc: gpmc_ad9 */
 P8.14,/* gpmc: gpmc_ad10 */
 P8.17,/* gpmc: gpmc_ad11 */
 P8.12,/* gpmc: gpmc_ad12 */
 P8.11,/* gpmc: gpmc_ad13 */
 P8.16,/* gpmc: gpmc_ad14 */
 P8.15,/* gpmc: gpmc_ad15 */
 P9.13,/* gpmc: gpmc_wpn */
 P8.21,/* gpmc: gpmc_csn1 */
 P8.18,/* gpmc: gpmc_clk */
 P8.7,/* gpmc: gpmc_advn_ale */
 P8.8,/* gpmc: gpmc_oen_ren */
 P8.10,/* gpmc: gpmc_wen */
 P8.9,/* gpmc: gpmc_ben0_cle */
 
 P9.18,
 P9.22,

 gpmc,
 /* the reset pin */
 eMMC_RSTn;

 #address-cells = 1;
 #size-cells = 1;

 fragment@0 {
 target = am33xx_pinmux;
 __overlay__ {

 gpmc_pins: pinmux_gpmc_pins {
 pinctrl-single,pins = 
 0x000 0x30/* gpmc_ad0.gpmc_ad0 MODE0 | INPUT | 
 PULLUP */
 0x004 0x30/* gpmc_ad1.gpmc_ad1 MODE0 | INPUT | 
 PULLUP */
 0x008 0x30/* gpmc_ad2.gpmc_ad2 MODE0 | INPUT | 
 PULLUP */
 0x00C 0x30/* gpmc_ad3.gpmc_ad3 MODE0 | INPUT | 
 PULLUP */
 0x010 0x30/* gpmc_ad4.gpmc_ad4 MODE0 | INPUT | 
 PULLUP */
 0x014 0x30/* gpmc_ad5.gpmc_ad5 MODE0 | INPUT | 
 PULLUP */
 0x018 0x30/* gpmc_ad6.gpmc_ad6 MODE0 | INPUT | 
 PULLUP */
 0x01C 0x30/* gpmc_ad7.gpmc_ad7 MODE0 | INPUT | 
 PULLUP */
 0x020 0x30/* gpmc_ad8.gpmc_ad8 MODE0 | INPUT | 
 PULLUP */
 0x024 0x30/* gpmc_ad9.gpmc_ad9 MODE0 | INPUT | 
 PULLUP */
 0x028 0x30/* gpmc_ad10.gpmc_ad10 MODE0 | INPUT | 
 PULLUP */
 0x02C 0x30/* gpmc_ad11.gpmc_ad11 MODE0 | INPUT | 
 PULLUP */
 0x030 0x30/* gpmc_ad12.gpmc_ad12 MODE0 | INPUT | 
 PULLUP */
 0x034 0x30/* gpmc_ad13.gpmc_ad13 MODE0 | INPUT | 
 PULLUP */
 0x038 0x30/* gpmc_ad14.gpmc_ad14 MODE0 | INPUT | 
 PULLUP */
 0x03C 0x30/* gpmc_ad15.gpmc_ad15 MODE0 | INPUT | 
 PULLUP */
 0x080 0x08/* gpmc_cscn1.gpmc_cscn1 MODE0 | OUTPUT 
 */
 0x08C 0x28/* gpmc_clk.gpmc_clk MODE0 | OUTPUT */
 0x090 0x08/* gpmc_advn_ale.gpmc_advn_ale MODE0 | 
 OUTPUT */
 0x094 0x08/* gpmc_oen_ren.gpmc_oen_ren MODE0 | 
 OUTPUT */
 0x098 0x08/* gpmc_wen.gpmc_wen MODE0 | OUTPUT */
 0x09C 0x08/* gpmc_ben0_cle.gpmc_ben0_cle MODE0 | 
 OUTPUT */
 0x078 0x08/* gpmc_ben1_cle.gpmc_ben1_cle MODE0 | 
 OUTPUT */
 ;
 };
 
 fpga_config_pins: pinmux_fpga_config_pins {
 pinctrl-single,pins = 
 /* config clk and data */
 0x158 0x17  /*  spi1_d1 MODE3 | INPUT | PULLUP , 
 serial data config */
 0x150 0x17/* spi1_sclk MODE3 | INPUT | PULLUP, 
 serial clock config  */
 ;
 };
 };
 };

 fragment@1 {
 target = 

Re: [beagleboard] Kernel 3.12.x / GPMC

2014-03-12 Thread quikcjack
The page links to github and shows lots of changes. Do you have more 
information on this proposed solution? Is there a documentation available 
somewhere?


Am Dienstag, 11. März 2014 14:43:17 UTC+1 schrieb David:

  I don't think capemgr/device tree overlays are supported anymore. Robert 
 Nelson has proposed another solution with 3.13.x kernels that seems to work 
 for me:


 https://github.com/RobertCNelson/linux-dev/commit/685b182ca956dcd8396ca69af5c678c43a102d03

 HTH,

 Dave 


-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
BeagleBoard group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[beagleboard] Kernel 3.12.x / GPMC

2014-03-11 Thread quikcjack

I have done some tests initializing the device tree. The file I have used 
does work in kernel 3.8.13 without any issues. However, kernel 3.12.13 
causes lots of trouble.

My .dts file is as follows:

/*
 * optargs=capemgr.disable_partno=BB-BONE-EMMC-2G
 * arch/arm/boot/dts/am335x-boneblack.dts, find the section starting
 * with mmc2 { and in section change  status = okay into disabled.
 * do once : mmc dev 1
 *   mmc rstn 1
 * in uBoot or in uEnv and then delete
 */



/dts-v1/;
/plugin/;

/ {
compatible = ti,beaglebone, ti,beaglebone-black;

/* identification */
part-number = BB-BONE-MARK1;
version = 00A1;

/* state the resources this cape uses */
exclusive-use =
/* the pin header uses */
P8.25,/* gpmc: gpmc_ad0 */
P8.24,/* gpmc: gpmc_ad1 */
P8.5,/* gpmc: gpmc_ad2 */
P8.6,/* gpmc: gpmc_ad3 */
P8.23,/* gpmc: gpmc_ad4 */
P8.22,/* gpmc: gpmc_ad5 */
P8.3,/* gpmc: gpmc_ad6 */
P8.4,/* gpmc: gpmc_ad7 */
P8.19,/* gpmc: gpmc_ad8 */
P8.13,/* gpmc: gpmc_ad9 */
P8.14,/* gpmc: gpmc_ad10 */
P8.17,/* gpmc: gpmc_ad11 */
P8.12,/* gpmc: gpmc_ad12 */
P8.11,/* gpmc: gpmc_ad13 */
P8.16,/* gpmc: gpmc_ad14 */
P8.15,/* gpmc: gpmc_ad15 */
P9.13,/* gpmc: gpmc_wpn */
P8.21,/* gpmc: gpmc_csn1 */
P8.18,/* gpmc: gpmc_clk */
P8.7,/* gpmc: gpmc_advn_ale */
P8.8,/* gpmc: gpmc_oen_ren */
P8.10,/* gpmc: gpmc_wen */
P8.9,/* gpmc: gpmc_ben0_cle */

P9.18,
P9.22,

gpmc,
/* the reset pin */
eMMC_RSTn;

#address-cells = 1;
#size-cells = 1;

fragment@0 {
target = am33xx_pinmux;
__overlay__ {

gpmc_pins: pinmux_gpmc_pins {
pinctrl-single,pins = 
0x000 0x30/* gpmc_ad0.gpmc_ad0 MODE0 | INPUT | 
PULLUP */
0x004 0x30/* gpmc_ad1.gpmc_ad1 MODE0 | INPUT | 
PULLUP */
0x008 0x30/* gpmc_ad2.gpmc_ad2 MODE0 | INPUT | 
PULLUP */
0x00C 0x30/* gpmc_ad3.gpmc_ad3 MODE0 | INPUT | 
PULLUP */
0x010 0x30/* gpmc_ad4.gpmc_ad4 MODE0 | INPUT | 
PULLUP */
0x014 0x30/* gpmc_ad5.gpmc_ad5 MODE0 | INPUT | 
PULLUP */
0x018 0x30/* gpmc_ad6.gpmc_ad6 MODE0 | INPUT | 
PULLUP */
0x01C 0x30/* gpmc_ad7.gpmc_ad7 MODE0 | INPUT | 
PULLUP */
0x020 0x30/* gpmc_ad8.gpmc_ad8 MODE0 | INPUT | 
PULLUP */
0x024 0x30/* gpmc_ad9.gpmc_ad9 MODE0 | INPUT | 
PULLUP */
0x028 0x30/* gpmc_ad10.gpmc_ad10 MODE0 | INPUT | 
PULLUP */
0x02C 0x30/* gpmc_ad11.gpmc_ad11 MODE0 | INPUT | 
PULLUP */
0x030 0x30/* gpmc_ad12.gpmc_ad12 MODE0 | INPUT | 
PULLUP */
0x034 0x30/* gpmc_ad13.gpmc_ad13 MODE0 | INPUT | 
PULLUP */
0x038 0x30/* gpmc_ad14.gpmc_ad14 MODE0 | INPUT | 
PULLUP */
0x03C 0x30/* gpmc_ad15.gpmc_ad15 MODE0 | INPUT | 
PULLUP */
0x080 0x08/* gpmc_cscn1.gpmc_cscn1 MODE0 | OUTPUT */
0x08C 0x28/* gpmc_clk.gpmc_clk MODE0 | OUTPUT */
0x090 0x08/* gpmc_advn_ale.gpmc_advn_ale MODE0 | 
OUTPUT */
0x094 0x08/* gpmc_oen_ren.gpmc_oen_ren MODE0 | 
OUTPUT */
0x098 0x08/* gpmc_wen.gpmc_wen MODE0 | OUTPUT */
0x09C 0x08/* gpmc_ben0_cle.gpmc_ben0_cle MODE0 | 
OUTPUT */
0x078 0x08/* gpmc_ben1_cle.gpmc_ben1_cle MODE0 | 
OUTPUT */
;
};

fpga_config_pins: pinmux_fpga_config_pins {
pinctrl-single,pins = 
/* config clk and data */
0x158 0x17  /*  spi1_d1 MODE3 | INPUT | PULLUP , 
serial data config */
0x150 0x17/* spi1_sclk MODE3 | INPUT | PULLUP, 
serial clock config  */
;
};
};
};

fragment@1 {
target = gpmc;
depth = 1;/* only create devices on depth 1 */

/* stupid warnings */
#address-cells = 1;
#size-cells = 1;

__overlay__ {

status = okay;

#address-cells = 2;
#size-cells = 1;

pinctrl-names = default;
pinctrl-0 = gpmc_pins;




/* chip select ranges */
ranges = 1 0 0x0100 0x100;

camera{
compatible = mark1;
status = okay;
pinctrl-names = default;
pinctrl-0 = fpga_config_pins;

reset = rstctl 0 0;
reset-names = 

Re: [beagleboard] Kernel 3.12.x / GPMC

2014-03-11 Thread David Lambert
I don't think capemgr/device tree overlays are supported anymore. Robert 
Nelson has proposed another solution with 3.13.x kernels that seems to 
work for me:


https://github.com/RobertCNelson/linux-dev/commit/685b182ca956dcd8396ca69af5c678c43a102d03

HTH,

Dave.


On 03/11/2014 05:05 AM, quikcj...@gmail.com wrote:


I have done some tests initializing the device tree. The file I have 
used does work in kernel 3.8.13 without any issues. However, kernel 
3.12.13 causes lots of trouble.


My .dts file is as follows:

/*
 * optargs=capemgr.disable_partno=BB-BONE-EMMC-2G
 * arch/arm/boot/dts/am335x-boneblack.dts, find the section starting
 * with mmc2 { and in section change  status = okay into disabled.
 * do once : mmc dev 1
 *   mmc rstn 1
 * in uBoot or in uEnv and then delete
 */



/dts-v1/;
/plugin/;

/ {
compatible = ti,beaglebone, ti,beaglebone-black;

/* identification */
part-number = BB-BONE-MARK1;
version = 00A1;

/* state the resources this cape uses */
exclusive-use =
/* the pin header uses */
P8.25,/* gpmc: gpmc_ad0 */
P8.24,/* gpmc: gpmc_ad1 */
P8.5,/* gpmc: gpmc_ad2 */
P8.6,/* gpmc: gpmc_ad3 */
P8.23,/* gpmc: gpmc_ad4 */
P8.22,/* gpmc: gpmc_ad5 */
P8.3,/* gpmc: gpmc_ad6 */
P8.4,/* gpmc: gpmc_ad7 */
P8.19,/* gpmc: gpmc_ad8 */
P8.13,/* gpmc: gpmc_ad9 */
P8.14,/* gpmc: gpmc_ad10 */
P8.17,/* gpmc: gpmc_ad11 */
P8.12,/* gpmc: gpmc_ad12 */
P8.11,/* gpmc: gpmc_ad13 */
P8.16,/* gpmc: gpmc_ad14 */
P8.15,/* gpmc: gpmc_ad15 */
P9.13,/* gpmc: gpmc_wpn */
P8.21,/* gpmc: gpmc_csn1 */
P8.18,/* gpmc: gpmc_clk */
P8.7,/* gpmc: gpmc_advn_ale */
P8.8,/* gpmc: gpmc_oen_ren */
P8.10,/* gpmc: gpmc_wen */
P8.9,/* gpmc: gpmc_ben0_cle */

P9.18,
P9.22,

gpmc,
/* the reset pin */
eMMC_RSTn;

#address-cells = 1;
#size-cells = 1;

fragment@0 {
target = am33xx_pinmux;
__overlay__ {

gpmc_pins: pinmux_gpmc_pins {
pinctrl-single,pins = 
0x000 0x30/* gpmc_ad0.gpmc_ad0 MODE0 | INPUT | 
PULLUP */
0x004 0x30/* gpmc_ad1.gpmc_ad1 MODE0 | INPUT | 
PULLUP */
0x008 0x30/* gpmc_ad2.gpmc_ad2 MODE0 | INPUT | 
PULLUP */
0x00C 0x30/* gpmc_ad3.gpmc_ad3 MODE0 | INPUT | 
PULLUP */
0x010 0x30/* gpmc_ad4.gpmc_ad4 MODE0 | INPUT | 
PULLUP */
0x014 0x30/* gpmc_ad5.gpmc_ad5 MODE0 | INPUT | 
PULLUP */
0x018 0x30/* gpmc_ad6.gpmc_ad6 MODE0 | INPUT | 
PULLUP */
0x01C 0x30/* gpmc_ad7.gpmc_ad7 MODE0 | INPUT | 
PULLUP */
0x020 0x30/* gpmc_ad8.gpmc_ad8 MODE0 | INPUT | 
PULLUP */
0x024 0x30/* gpmc_ad9.gpmc_ad9 MODE0 | INPUT | 
PULLUP */
0x028 0x30/* gpmc_ad10.gpmc_ad10 MODE0 | INPUT 
| PULLUP */
0x02C 0x30/* gpmc_ad11.gpmc_ad11 MODE0 | INPUT 
| PULLUP */
0x030 0x30/* gpmc_ad12.gpmc_ad12 MODE0 | INPUT 
| PULLUP */
0x034 0x30/* gpmc_ad13.gpmc_ad13 MODE0 | INPUT 
| PULLUP */
0x038 0x30/* gpmc_ad14.gpmc_ad14 MODE0 | INPUT 
| PULLUP */
0x03C 0x30/* gpmc_ad15.gpmc_ad15 MODE0 | INPUT 
| PULLUP */
0x080 0x08/* gpmc_cscn1.gpmc_cscn1 MODE0 | 
OUTPUT */

0x08C 0x28/* gpmc_clk.gpmc_clk MODE0 | OUTPUT */
0x090 0x08/* gpmc_advn_ale.gpmc_advn_ale MODE0 
| OUTPUT */
0x094 0x08/* gpmc_oen_ren.gpmc_oen_ren MODE0 | 
OUTPUT */

0x098 0x08/* gpmc_wen.gpmc_wen MODE0 | OUTPUT */
0x09C 0x08/* gpmc_ben0_cle.gpmc_ben0_cle MODE0 
| OUTPUT */
0x078 0x08/* gpmc_ben1_cle.gpmc_ben1_cle MODE0 
| OUTPUT */

;
};

fpga_config_pins: pinmux_fpga_config_pins {
pinctrl-single,pins = 
/* config clk and data */
0x158 0x17  /*  spi1_d1 MODE3 | INPUT | PULLUP 
, serial data config */
0x150 0x17/* spi1_sclk MODE3 | INPUT | PULLUP, 
serial clock config  */

;
};
};
};

fragment@1 {
target = gpmc;
depth = 1;/* only create devices on depth 1 */

/* stupid warnings */
#address-cells = 1;
#size-cells = 1;

__overlay__ {

status = okay;

#address-cells = 2;
#size-cells = 1;

pinctrl-names = default;
pinctrl-0 = gpmc_pins;




/* chip select