Re: [U-Boot] [PATCH] add new board pm9g45
Hello Tom, In respond of the message 4ba51dad.5020...@windriver.com you wrote: there is a second version of the this patch in e-mail with message-id 1268928021-31632-1-git-send-email-di...@ronetix.at and subject [U-Boot][PATCH v2] add new board pm9g45 from 18.03.2010. Regards, Asen ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] add new board pm9g45
Dear Tom, In message 4ba51dad.5020...@windriver.com you wrote: Asen Dimov wrote: Hello everyone, here is the new board PM9G45 from Ronetix GmbH, based on at91sam9g45 MCU. It has 128MB DDR2 SDRAM, 256MB NAND, could be with or without DataFlash. The board is made as SODIMM200 module. For more info www.ronatix.at or i...@ronetix.at. Regards, Asen There are some errors on building with MAKEALL arm These must be fixed Could you please make sure to include threading information (i. e. appropriate References: and In-reply-to: mail headers)? It would be nice if we could see which message your postings refer to. Thanks. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de Philosophy: A route of many roads leading from nowhere to nothing. - Ambrose Bierce ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] add new board pm9g45
Asen Dimov wrote: Hello everyone, here is the new board PM9G45 from Ronetix GmbH, based on at91sam9g45 MCU. It has 128MB DDR2 SDRAM, 256MB NAND, could be with or without DataFlash. The board is made as SODIMM200 module. For more info www.ronatix.at or i...@ronetix.at. Regards, Asen There are some errors on building with MAKEALL arm These must be fixed regressions from pm9g45.ERR cpu.c:26:2: warning: #warning Your board is using legacy SoC access. Please update! pm9g45.c: In function 'pm9g45_macb_hw_init': pm9g45.c:112: warning: unused variable 'rstc' pm9g45.c: In function 'lcd_show_board_info': pm9g45.c:225: warning: unused variable 'dataflash_size' Because this is a new board, it should follow the new at91 Soc access. See doc/README.at91-soc I also recommend running the linux kernel's checkpatch.pl program to find formatting problems. Signed-off-by: Asen Dimov di...@ronetix.at --- MAKEALL|1 + Makefile |4 + board/ronetix/pm9g45/Makefile | 54 +++ .../at91sam9m10g45ek = ronetix/pm9g45}/config.mk |0 board/ronetix/pm9g45/pm9g45.c | 365 include/configs/pm9g45.h | 246 + 6 files changed, 670 insertions(+), 0 deletions(-) create mode 100644 board/ronetix/pm9g45/Makefile copy board/{atmel/at91sam9m10g45ek = ronetix/pm9g45}/config.mk (100%) create mode 100644 board/ronetix/pm9g45/pm9g45.c create mode 100644 include/configs/pm9g45.h diff --git a/MAKEALL b/MAKEALL index beacb5f..ad591d5 100755 --- a/MAKEALL +++ b/MAKEALL @@ -673,6 +673,7 @@ LIST_at91= \ otc570 \ pm9261 \ pm9263 \ + pm9g45 \ SBC35_A9G20 \ TNY_A9260 \ TNY_A9G20 \ diff --git a/Makefile b/Makefile index d801e25..438580a 100644 --- a/Makefile +++ b/Makefile @@ -2882,6 +2882,10 @@ otc570_config : unconfig pm9263_config: unconfig @$(MKCONFIG) $(@:_config=) arm arm926ejs pm9263 ronetix at91 +pm9g45_config: unconfig + @mkdir -p $(obj)include + @$(MKCONFIG) -a pm9g45 arm arm926ejs pm9g45 ronetix at91 + SBC35_A9G20_NANDFLASH_config \ SBC35_A9G20_EEPROM_config \ SBC35_A9G20_config : unconfig diff --git a/board/ronetix/pm9g45/Makefile b/board/ronetix/pm9g45/Makefile new file mode 100644 index 000..dd5b02e --- /dev/null +++ b/board/ronetix/pm9g45/Makefile @@ -0,0 +1,54 @@ +# +# (C) Copyright 2003-2008 +# Wolfgang Denk, DENX Software Engineering, w...@denx.de. +# +# (C) Copyright 2008 +# Stelian Pop stelian@leadtechdesign.com +# Lead Tech Design www.leadtechdesign.com +# +# See file CREDITS for list of people who contributed to this +# project. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# + +include $(TOPDIR)/config.mk + +LIB = $(obj)lib$(BOARD).a + +COBJS-y += pm9g45.o + +SRCS := $(SOBJS:.o=.S) $(COBJS-y:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS-y)) +SOBJS:= $(addprefix $(obj),$(SOBJS)) + +$(LIB): $(obj).depend $(OBJS) $(SOBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS) + +clean: + rm -f $(SOBJS) $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak $(obj).depend + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/atmel/at91sam9m10g45ek/config.mk b/board/ronetix/pm9g45/config.mk similarity index 100% copy from board/atmel/at91sam9m10g45ek/config.mk copy to board/ronetix/pm9g45/config.mk diff --git a/board/ronetix/pm9g45/pm9g45.c b/board/ronetix/pm9g45/pm9g45.c new file mode 100644 index 000..d11f40f --- /dev/null +++ b/board/ronetix/pm9g45/pm9g45.c @@ -0,0 +1,365 @@ +/* + * (C) Copyright 2005-2010 + * Ilko Iliev il...@ronetix.at + * Asen Dimov di...@ronetix.at + * Ronetix GmbH www.ronetix.at + * + * (C) Copyright 2007-2008 + * Stelian Pop stelian@leadtechdesign.com + *
Re: [U-Boot] [PATCH] add new board pm9g45
Russian company MENTOREL released at91sam9G45 based SODIMM module a couple of months ago. Module is named GEM45 and I guess it is more integrated as it has the following features: - 128M DDR2 main memory - 64M DDR2 second memory for frame buffer or smt else - 128/256M NAND - 64/128M NOR (option) - 4/8M Dataflash (option) - Ethernet 10/100 Mbps - Globally unique MAC-address compliant with EUI-48™ and EUI-64™ - many usual I/F: USB, LCD, SPI, I2C, AC97 etc 2010/3/16 Asen Dimov di...@ronetix.at Hello everyone, here is the new board PM9G45 from Ronetix GmbH, based on at91sam9g45 MCU. It has 128MB DDR2 SDRAM, 256MB NAND, could be with or without DataFlash. The board is made as SODIMM200 module. For more info www.ronatix.at or i...@ronetix.at. Regards, Asen Signed-off-by: Asen Dimov di...@ronetix.at --- MAKEALL|1 + Makefile |4 + board/ronetix/pm9g45/Makefile | 54 +++ .../at91sam9m10g45ek = ronetix/pm9g45}/config.mk |0 board/ronetix/pm9g45/pm9g45.c | 365 include/configs/pm9g45.h | 246 + 6 files changed, 670 insertions(+), 0 deletions(-) create mode 100644 board/ronetix/pm9g45/Makefile copy board/{atmel/at91sam9m10g45ek = ronetix/pm9g45}/config.mk (100%) create mode 100644 board/ronetix/pm9g45/pm9g45.c create mode 100644 include/configs/pm9g45.h diff --git a/MAKEALL b/MAKEALL index beacb5f..ad591d5 100755 --- a/MAKEALL +++ b/MAKEALL @@ -673,6 +673,7 @@ LIST_at91= \ otc570 \ pm9261 \ pm9263 \ + pm9g45 \ SBC35_A9G20 \ TNY_A9260 \ TNY_A9G20 \ diff --git a/Makefile b/Makefile index d801e25..438580a 100644 --- a/Makefile +++ b/Makefile @@ -2882,6 +2882,10 @@ otc570_config: unconfig pm9263_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm926ejs pm9263 ronetix at91 +pm9g45_config : unconfig + @mkdir -p $(obj)include + @$(MKCONFIG) -a pm9g45 arm arm926ejs pm9g45 ronetix at91 + SBC35_A9G20_NANDFLASH_config \ SBC35_A9G20_EEPROM_config \ SBC35_A9G20_config : unconfig diff --git a/board/ronetix/pm9g45/Makefile b/board/ronetix/pm9g45/Makefile new file mode 100644 index 000..dd5b02e --- /dev/null +++ b/board/ronetix/pm9g45/Makefile @@ -0,0 +1,54 @@ +# +# (C) Copyright 2003-2008 +# Wolfgang Denk, DENX Software Engineering, w...@denx.de. +# +# (C) Copyright 2008 +# Stelian Pop stelian@leadtechdesign.com +# Lead Tech Design www.leadtechdesign.com +# +# See file CREDITS for list of people who contributed to this +# project. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# + +include $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).a + +COBJS-y += pm9g45.o + +SRCS := $(SOBJS:.o=.S) $(COBJS-y:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS-y)) +SOBJS := $(addprefix $(obj),$(SOBJS)) + +$(LIB):$(obj).depend $(OBJS) $(SOBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS) + +clean: + rm -f $(SOBJS) $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak $(obj).depend + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/atmel/at91sam9m10g45ek/config.mkb/board/ronetix/pm9g45/ config.mk similarity index 100% copy from board/atmel/at91sam9m10g45ek/config.mk copy to board/ronetix/pm9g45/config.mk diff --git a/board/ronetix/pm9g45/pm9g45.c b/board/ronetix/pm9g45/pm9g45.c new file mode 100644 index 000..d11f40f --- /dev/null +++ b/board/ronetix/pm9g45/pm9g45.c @@ -0,0 +1,365 @@ +/* + * (C) Copyright 2005-2010 + * Ilko Iliev il...@ronetix.at + * Asen Dimov di...@ronetix.at + * Ronetix GmbH www.ronetix.at + * + * (C) Copyright 2007-2008 + * Stelian Pop stelian@leadtechdesign.com + * Lead Tech Design www.leadtechdesign.com + * + * See file CREDITS
Re: [U-Boot] [PATCH] add new board pm9g45
Hello Wolfgang, in the message 20100316190012.84ca750...@gemini.denx.de form 16.03.2010 at 09:00 PM +#ifdef CONFIG_LCD +/* + * LCD name TX09D50VM1CCA + */ +vidinfo_t panel_info = { + vl_col: 240, + vl_row: 320, + vl_clk: 4965000, + vl_sync:ATMEL_LCDC_INVLINE_NORMAL | + ATMEL_LCDC_INVFRAME_NORMAL, + vl_bpix:3, + vl_tft: 1, + vl_hsync_len: 5, + vl_left_margin: 1, + vl_right_margin:33, + vl_vsync_len: 1, + vl_upper_margin:1, + vl_lower_margin:0, + mmio: AT91SAM9G45_LCDC_BASE, +}; This information should not be board-specific. The panel information is generic and should moved to a separate header file that is not part of the board code. In the boards (at91sam9263ek and at91sam9m10g45ek, and some more at91sam9 based boards) I am looking at, the panel_info is in the board specific code. There are some lcd.c files with panel_info structures: drivers/video/mx3fb.c, cpu/pxa/pxafb.c and cpu/mpc8xx/lcd.c . Where should be the proper place for panel_info which is somehow architecture dependent? Regards, Asen ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] add new board pm9g45
Dear RONETIX - Asen Dimov, In message 4ba1363b.7010...@ronetix.at you wrote: This information should not be board-specific. The panel information is generic and should moved to a separate header file that is not part of the board code. In the boards (at91sam9263ek and at91sam9m10g45ek, and some more at91sam9 based boards) I am looking at, the panel_info is in the board specific code. Indeed. Patches to clean this up are welcome. There are some lcd.c files with panel_info structures: drivers/video/mx3fb.c, cpu/pxa/pxafb.c and cpu/mpc8xx/lcd.c . Where should be the proper place for panel_info which is somehow architecture dependent? I'm not an expert in this area. In Linux there has been discussion to put this type of information into the device tree. Either in the form of (new, to be defined) specific bindings, or as EDID data. I wonder if we could / should do something similar here? Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] add new board pm9g45
Hello everyone, here is the new board PM9G45 from Ronetix GmbH, based on at91sam9g45 MCU. It has 128MB DDR2 SDRAM, 256MB NAND, could be with or without DataFlash. The board is made as SODIMM200 module. For more info www.ronatix.at or i...@ronetix.at. Regards, Asen Signed-off-by: Asen Dimov di...@ronetix.at --- MAKEALL|1 + Makefile |4 + board/ronetix/pm9g45/Makefile | 54 +++ .../at91sam9m10g45ek = ronetix/pm9g45}/config.mk |0 board/ronetix/pm9g45/pm9g45.c | 365 include/configs/pm9g45.h | 246 + 6 files changed, 670 insertions(+), 0 deletions(-) create mode 100644 board/ronetix/pm9g45/Makefile copy board/{atmel/at91sam9m10g45ek = ronetix/pm9g45}/config.mk (100%) create mode 100644 board/ronetix/pm9g45/pm9g45.c create mode 100644 include/configs/pm9g45.h diff --git a/MAKEALL b/MAKEALL index beacb5f..ad591d5 100755 --- a/MAKEALL +++ b/MAKEALL @@ -673,6 +673,7 @@ LIST_at91= \ otc570 \ pm9261 \ pm9263 \ + pm9g45 \ SBC35_A9G20 \ TNY_A9260 \ TNY_A9G20 \ diff --git a/Makefile b/Makefile index d801e25..438580a 100644 --- a/Makefile +++ b/Makefile @@ -2882,6 +2882,10 @@ otc570_config: unconfig pm9263_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm926ejs pm9263 ronetix at91 +pm9g45_config : unconfig + @mkdir -p $(obj)include + @$(MKCONFIG) -a pm9g45 arm arm926ejs pm9g45 ronetix at91 + SBC35_A9G20_NANDFLASH_config \ SBC35_A9G20_EEPROM_config \ SBC35_A9G20_config : unconfig diff --git a/board/ronetix/pm9g45/Makefile b/board/ronetix/pm9g45/Makefile new file mode 100644 index 000..dd5b02e --- /dev/null +++ b/board/ronetix/pm9g45/Makefile @@ -0,0 +1,54 @@ +# +# (C) Copyright 2003-2008 +# Wolfgang Denk, DENX Software Engineering, w...@denx.de. +# +# (C) Copyright 2008 +# Stelian Pop stelian@leadtechdesign.com +# Lead Tech Design www.leadtechdesign.com +# +# See file CREDITS for list of people who contributed to this +# project. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# + +include $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).a + +COBJS-y += pm9g45.o + +SRCS := $(SOBJS:.o=.S) $(COBJS-y:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS-y)) +SOBJS := $(addprefix $(obj),$(SOBJS)) + +$(LIB):$(obj).depend $(OBJS) $(SOBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS) + +clean: + rm -f $(SOBJS) $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak $(obj).depend + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/atmel/at91sam9m10g45ek/config.mk b/board/ronetix/pm9g45/config.mk similarity index 100% copy from board/atmel/at91sam9m10g45ek/config.mk copy to board/ronetix/pm9g45/config.mk diff --git a/board/ronetix/pm9g45/pm9g45.c b/board/ronetix/pm9g45/pm9g45.c new file mode 100644 index 000..d11f40f --- /dev/null +++ b/board/ronetix/pm9g45/pm9g45.c @@ -0,0 +1,365 @@ +/* + * (C) Copyright 2005-2010 + * Ilko Iliev il...@ronetix.at + * Asen Dimov di...@ronetix.at + * Ronetix GmbH www.ronetix.at + * + * (C) Copyright 2007-2008 + * Stelian Pop stelian@leadtechdesign.com + * Lead Tech Design www.leadtechdesign.com + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + *
Re: [U-Boot] [PATCH] add new board pm9g45
Dear Asen Dimov, In message 1268744233-2497-1-git-send-email-di...@ronetix.at you wrote: Hello everyone, here is the new board PM9G45 from Ronetix GmbH, based on at91sam9g45 MCU. It has 128MB DDR2 SDRAM, 256MB NAND, could be with or without DataFlash. The board is made as SODIMM200 module. For more info www.ronatix.at or i...@ronetix.at. Regards, Asen You sent a similar patch les than one hour before this one. None of your patches includes any indication what they are - if you are resubmitting a patch, you are suppoosed to mark it as [PATCH v2] or [PATCH v3] or similar in the Subject: line. Signed-off-by: Asen Dimov di...@ronetix.at --- MAKEALL|1 + ... Also, you are supposed to include a descripotion of what has been changed compared to the previous version(s) of the patch here, below the --- line. At fist glance, the two patches look identical to me. Do you expect me to scan through some 1500+ lines of patches to check which lines or characters might have changed? Also, a commit message including Hello everyone, and Regards, Asen is not exactly useful. Please omit this in patches. --- MAKEALL|1 + Makefile |4 + board/ronetix/pm9g45/Makefile | 54 +++ .../at91sam9m10g45ek = ronetix/pm9g45}/config.mk |0 board/ronetix/pm9g45/pm9g45.c | 365 include/configs/pm9g45.h | 246 + 6 files changed, 670 insertions(+), 0 deletions(-) create mode 100644 board/ronetix/pm9g45/Makefile copy board/{atmel/at91sam9m10g45ek = ronetix/pm9g45}/config.mk (100%) create mode 100644 board/ronetix/pm9g45/pm9g45.c create mode 100644 include/configs/pm9g45.h MAINTAINERS entry is missing. diff --git a/board/atmel/at91sam9m10g45ek/config.mk b/board/ronetix/pm9g45/config.mk similarity index 100% copy from board/atmel/at91sam9m10g45ek/config.mk copy to board/ronetix/pm9g45/config.mk diff --git a/board/ronetix/pm9g45/pm9g45.c b/board/ronetix/pm9g45/pm9g45.c new file mode 100644 index 000..d11f40f --- /dev/null +++ b/board/ronetix/pm9g45/pm9g45.c @@ -0,0 +1,365 @@ +/* + * (C) Copyright 2005-2010 + * Ilko Iliev il...@ronetix.at + * Asen Dimov di...@ronetix.at + * Ronetix GmbH www.ronetix.at 2005- ? Is this really correct? + writel(pin_to_mask(AT91_PIN_PA15), + pin_to_controller(AT91_PIN_PA0) + PIO_PUDR); + writel(pin_to_mask(AT91_PIN_PA12) | + pin_to_mask(AT91_PIN_PA13), + pin_to_controller(AT91_PIN_PA0) + PIO_PUDR); + + /* Re-enable pull-up */ + writel(pin_to_mask(AT91_PIN_PA15), + pin_to_controller(AT91_PIN_PA0) + PIO_PUER); + writel(pin_to_mask(AT91_PIN_PA12) | + pin_to_mask(AT91_PIN_PA13), + pin_to_controller(AT91_PIN_PA0) + PIO_PUER); The use of base address plus offset is deprecated. Please use C strucxts to desribe the register layout. +#ifdef CONFIG_LCD +/* + * LCD name TX09D50VM1CCA + */ +vidinfo_t panel_info = { + vl_col: 240, + vl_row: 320, + vl_clk: 4965000, + vl_sync:ATMEL_LCDC_INVLINE_NORMAL | + ATMEL_LCDC_INVFRAME_NORMAL, + vl_bpix:3, + vl_tft: 1, + vl_hsync_len: 5, + vl_left_margin: 1, + vl_right_margin:33, + vl_vsync_len: 1, + vl_upper_margin:1, + vl_lower_margin:0, + mmio: AT91SAM9G45_LCDC_BASE, +}; This information should not be board-specific. The panel information is generic and should moved to a separate header file that is not part of the board code. ... +} + +#ifdef CONFIG_LCD_INFO +#include nand.h +#include version.h Please move #includes to the top of the file. +#ifdef CONFIG_HAS_DATAFLASH + dataflash_size = 0; + for (i = 0; i CONFIG_SYS_MAX_DATAFLASH_BANKS; i++) + dataflash_size += (unsigned int) dataflash_info[i].Device.pages_number * + dataflash_info[i].Device.pages_size; +#endif Line too long. Please check and fix globally. Also, multiline statements require curly braces. +void spi_cs_activate(struct spi_slave *slave) +{ + switch(slave-cs) { + case 1: + at91_set_gpio_output(AT91_PIN_PB18, 0); + break; + case 0: + default: + at91_set_gpio_output(AT91_PIN_PB3, 0); + break; + } +} + +void spi_cs_deactivate(struct spi_slave *slave) +{ + switch(slave-cs) { + case 1: + at91_set_gpio_output(AT91_PIN_PB18, 1); + break; + case 0: + default: + at91_set_gpio_output(AT91_PIN_PB3, 1); + break; + } +} Incorrect