module System.PIO.Linux.SPI (
mode0,
mode1,
mode2,
mode3,
transferMessage1,
setRdMode,
setWrMode,
setRdLbsFirst,
setWrLbsFirst,
setRdBitsPerWord,
setWrBitsPerWord,
setRdMaxSpeedHz,
setWrMaxSpeedHz,
) where
import Foreign.Ptr(Ptr)
import Data.Word(Word8,Word32)
foreign import ccall "spi_mode_0" mode0 :: Word8
foreign import ccall "spi_mode_1" mode1 :: Word8
foreign import ccall "spi_mode_2" mode2 :: Word8
foreign import ccall "spi_mode_3" mode3 :: Word8
foreign import ccall "spi_transfer_message_1" transferMessage1 :: Int -> Ptr a -> Int -> Word32 -> Word8 -> IO Int
foreign import ccall "spi_set_rd_mode" setRdMode :: Int -> Word8 -> IO Int
foreign import ccall "spi_set_wr_mode" setWrMode :: Int -> Word8 -> IO Int
foreign import ccall "spi_set_rd_lbs_first" setRdLbsFirst :: Int -> Word8 -> IO Int
foreign import ccall "spi_set_wr_lbs_first" setWrLbsFirst :: Int -> Word8 -> IO Int
foreign import ccall "spi_set_rd_bits_per_word" setRdBitsPerWord :: Int -> Word8 -> IO Int
foreign import ccall "spi_set_wr_bits_per_word" setWrBitsPerWord :: Int -> Word8 -> IO Int
foreign import ccall "spi_set_rd_max_speed_hz" setRdMaxSpeedHz :: Int -> Word32 -> IO Int
foreign import ccall "spi_set_wr_max_speed_hz" setWrMaxSpeedHz :: Int -> Word32 -> IO Int