Ben Dooks | b2a6cf3 | 2008-10-21 14:06:20 +0100 | [diff] [blame] | 1 | /* linux/arch/arm/plat-s3c24xx/spi-bus0-gpg5_6_7.c |
| 2 | * |
| 3 | * Copyright (c) 2008 Simtec Electronics |
| 4 | * http://armlinux.simtec.co.uk/ |
| 5 | * Ben Dooks <ben@simtec.co.uk> |
| 6 | * |
| 7 | * S3C24XX SPI - gpio configuration for bus 1 on gpg5,6,7 |
| 8 | * |
| 9 | * This program is free software; you can redistribute it and/or modify |
| 10 | * it under the terms of the GNU General Public License as published by |
| 11 | * the Free Software Foundation; either version 2 of the License. |
| 12 | */ |
| 13 | |
| 14 | #include <linux/kernel.h> |
Ben Dooks | 927dbcd | 2009-06-23 16:15:38 +0100 | [diff] [blame] | 15 | #include <linux/gpio.h> |
Ben Dooks | b2a6cf3 | 2008-10-21 14:06:20 +0100 | [diff] [blame] | 16 | |
| 17 | #include <mach/spi.h> |
| 18 | #include <mach/regs-gpio.h> |
| 19 | |
| 20 | void s3c24xx_spi_gpiocfg_bus1_gpg5_6_7(struct s3c2410_spi_info *spi, |
| 21 | int enable) |
| 22 | { |
| 23 | if (enable) { |
Ben Dooks | 070276d | 2009-05-17 22:32:23 +0100 | [diff] [blame] | 24 | s3c2410_gpio_cfgpin(S3C2410_GPG(7), S3C2410_GPG7_SPICLK1); |
| 25 | s3c2410_gpio_cfgpin(S3C2410_GPG(6), S3C2410_GPG6_SPIMOSI1); |
| 26 | s3c2410_gpio_cfgpin(S3C2410_GPG(5), S3C2410_GPG5_SPIMISO1); |
| 27 | s3c2410_gpio_pullup(S3C2410_GPG(5), 0); |
| 28 | s3c2410_gpio_pullup(S3C2410_GPG(6), 0); |
Ben Dooks | b2a6cf3 | 2008-10-21 14:06:20 +0100 | [diff] [blame] | 29 | } else { |
Ben Dooks | 070276d | 2009-05-17 22:32:23 +0100 | [diff] [blame] | 30 | s3c2410_gpio_cfgpin(S3C2410_GPG(7), S3C2410_GPIO_INPUT); |
| 31 | s3c2410_gpio_cfgpin(S3C2410_GPG(5), S3C2410_GPIO_INPUT); |
| 32 | s3c2410_gpio_pullup(S3C2410_GPG(5), 1); |
| 33 | s3c2410_gpio_pullup(S3C2410_GPG(6), 1); |
| 34 | s3c2410_gpio_pullup(S3C2410_GPG(7), 1); |
Ben Dooks | b2a6cf3 | 2008-10-21 14:06:20 +0100 | [diff] [blame] | 35 | } |
| 36 | } |