static void s3c2410_spigpio_chipselect(struct spi_device *dev, int value) { struct s3c2410_spigpio *sg = spidev_to_sg(dev); if (sg->info && sg->info->chip_select) (sg->info->chip_select)(sg->info, value); }
static inline void do_spidelay(struct spi_device *dev, unsigned nsecs) { struct spi_gpio *sp = spidev_to_sg(dev); if (!sp->info->no_spi_delay) ndelay(nsecs); }
static inline u32 getmiso(struct spi_device *dev) { struct spi_gpio *sp = spidev_to_sg(dev); int val; gpio_line_get(sp->info->pin_miso,&val); return val ? 1 : 0; }
static void spi_gpio_chipselect(struct spi_device *dev, int on) { struct spi_gpio *sp = spidev_to_sg(dev); if (sp->info->cs_activelow) on = !on; gpio_set_value(sp->info->pin_cs, on ? 1 : 0); }
static void spi_gpio_chipselect(struct spi_device *dev, int value) { struct spi_gpio *sg = spidev_to_sg(dev); switch (value) { case BITBANG_CS_ACTIVE: gpio_set_out(sg->ce, 0); break; case BITBANG_CS_INACTIVE: gpio_set_out(sg->ce, 1); break; } }
static inline u32 getmiso(struct spi_device *dev) { struct s3c2410_spigpio *sg = spidev_to_sg(dev); return s3c2410_gpio_getpin(sg->info->pin_miso) ? 1 : 0; }
static inline void setmosi(struct spi_device *dev, int on) { struct s3c2410_spigpio *sg = spidev_to_sg(dev); s3c2410_gpio_setpin(sg->info->pin_mosi, on ? 1 : 0); }
static inline u32 getmiso(struct spi_device *dev) { struct spi_gpio *sg = spidev_to_sg(dev); u32 val = gpio_get_in(sg->dr) ? 1 : 0; return val; }
static inline void setmosi(struct spi_device *dev, int on) { struct spi_gpio *sg = spidev_to_sg(dev); gpio_set_out(sg->dt, on ? 1 : 0); }
static inline u32 getmiso(struct spi_device *dev) { struct spi_gpio *sp = spidev_to_sg(dev); return gpio_get_value(sp->info->pin_miso) ? 1 : 0; }
static inline void setmosi(struct spi_device *dev, int val) { struct spi_gpio *sp = spidev_to_sg(dev); gpio_set_value(sp->info->pin_mosi, val ? 1 : 0); }
static inline u32 getmiso(struct spi_device *dev) { struct s3c64xx_spigpio *sg = spidev_to_sg(dev); gpio_direction_input(sg->info->pin_miso); return gpio_get_value( sg->info->pin_miso ); }
static inline void setmosi(struct spi_device *dev, int on) { struct s3c64xx_spigpio *sg = spidev_to_sg(dev); gpio_direction_output(sg->info->pin_mosi, on ? 1 : 0); }
static inline void setsck(struct spi_device *dev, int val) { struct spi_gpio *sp = spidev_to_sg(dev); gpio_line_set(sp->info->pin_clk, val ? 1 : 0); }