module Bindings.LibBladeRF.Types where
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
import Foreign.Storable
c'BLADERF_ERR_UNEXPECTED = 1
c'BLADERF_ERR_UNEXPECTED :: (Num a) => a
c'BLADERF_ERR_RANGE = 2
c'BLADERF_ERR_RANGE :: (Num a) => a
c'BLADERF_ERR_INVAL = 3
c'BLADERF_ERR_INVAL :: (Num a) => a
c'BLADERF_ERR_MEM = 4
c'BLADERF_ERR_MEM :: (Num a) => a
c'BLADERF_ERR_IO = 5
c'BLADERF_ERR_IO :: (Num a) => a
c'BLADERF_ERR_TIMEOUT = 6
c'BLADERF_ERR_TIMEOUT :: (Num a) => a
c'BLADERF_ERR_NODEV = 7
c'BLADERF_ERR_NODEV :: (Num a) => a
c'BLADERF_ERR_UNSUPPORTED = 8
c'BLADERF_ERR_UNSUPPORTED :: (Num a) => a
c'BLADERF_ERR_MISALIGNED = 9
c'BLADERF_ERR_MISALIGNED :: (Num a) => a
c'BLADERF_ERR_CHECKSUM = 10
c'BLADERF_ERR_CHECKSUM :: (Num a) => a
c'BLADERF_ERR_NO_FILE = 11
c'BLADERF_ERR_NO_FILE :: (Num a) => a
c'BLADERF_ERR_UPDATE_FPGA = 12
c'BLADERF_ERR_UPDATE_FPGA :: (Num a) => a
c'BLADERF_ERR_UPDATE_FW = 13
c'BLADERF_ERR_UPDATE_FW :: (Num a) => a
c'BLADERF_ERR_TIME_PAST = 14
c'BLADERF_ERR_TIME_PAST :: (Num a) => a
data C'bladerf = C'bladerf
type C'bladerf_backend = CUInt
c'BLADERF_BACKEND_ANY = 0
c'BLADERF_BACKEND_ANY :: (Num a) => a
c'BLADERF_BACKEND_LINUX = 1
c'BLADERF_BACKEND_LINUX :: (Num a) => a
c'BLADERF_BACKEND_LIBUSB = 2
c'BLADERF_BACKEND_LIBUSB :: (Num a) => a
c'BLADERF_BACKEND_CYPRESS = 3
c'BLADERF_BACKEND_CYPRESS :: (Num a) => a
c'BLADERF_BACKEND_DUMMY = 100
c'BLADERF_BACKEND_DUMMY :: (Num a) => a
type C'bladerf_dev_speed = CUInt
c'BLADERF_DEVICE_SPEED_UNKNOWN = 0
c'BLADERF_DEVICE_SPEED_UNKNOWN :: (Num a) => a
c'BLADERF_DEVICE_SPEED_HIGH = 1
c'BLADERF_DEVICE_SPEED_HIGH :: (Num a) => a
c'BLADERF_DEVICE_SPEED_SUPER = 2
c'BLADERF_DEVICE_SPEED_SUPER :: (Num a) => a
c'BLADERF_SERIAL_LENGTH = 33
c'BLADERF_SERIAL_LENGTH :: (Num a) => a
data C'bladerf_devinfo = C'bladerf_devinfo{
c'bladerf_devinfo'backend :: C'bladerf_backend,
c'bladerf_devinfo'serial :: [CChar],
c'bladerf_devinfo'usb_bus :: Word8,
c'bladerf_devinfo'usb_addr :: Word8,
c'bladerf_devinfo'instance :: CUInt
} deriving (Eq,Show)
p'bladerf_devinfo'backend p = plusPtr p 0
p'bladerf_devinfo'backend :: Ptr (C'bladerf_devinfo) -> Ptr (C'bladerf_backend)
p'bladerf_devinfo'serial p = plusPtr p 4
p'bladerf_devinfo'serial :: Ptr (C'bladerf_devinfo) -> Ptr (CChar)
p'bladerf_devinfo'usb_bus p = plusPtr p 37
p'bladerf_devinfo'usb_bus :: Ptr (C'bladerf_devinfo) -> Ptr (Word8)
p'bladerf_devinfo'usb_addr p = plusPtr p 38
p'bladerf_devinfo'usb_addr :: Ptr (C'bladerf_devinfo) -> Ptr (Word8)
p'bladerf_devinfo'instance p = plusPtr p 40
p'bladerf_devinfo'instance :: Ptr (C'bladerf_devinfo) -> Ptr (CUInt)
instance Storable C'bladerf_devinfo where
sizeOf _ = 44
alignment _ = 4
peek p = do
v0 <- peekByteOff p 0
v1 <- let s = div 33 $ sizeOf $ (undefined :: CChar) in peekArray s (plusPtr p 4)
v2 <- peekByteOff p 37
v3 <- peekByteOff p 38
v4 <- peekByteOff p 40
return $ C'bladerf_devinfo v0 v1 v2 v3 v4
poke p (C'bladerf_devinfo v0 v1 v2 v3 v4) = do
pokeByteOff p 0 v0
let s = div 33 $ sizeOf $ (undefined :: CChar)
pokeArray (plusPtr p 4) (take s v1)
pokeByteOff p 37 v2
pokeByteOff p 38 v3
pokeByteOff p 40 v4
return ()
c'BLADERF_RXVGA1_GAIN_MIN = 5
c'BLADERF_RXVGA1_GAIN_MIN :: (Num a) => a
c'BLADERF_RXVGA1_GAIN_MAX = 30
c'BLADERF_RXVGA1_GAIN_MAX :: (Num a) => a
c'BLADERF_RXVGA2_GAIN_MIN = 0
c'BLADERF_RXVGA2_GAIN_MIN :: (Num a) => a
c'BLADERF_RXVGA2_GAIN_MAX = 30
c'BLADERF_RXVGA2_GAIN_MAX :: (Num a) => a
c'BLADERF_TXVGA1_GAIN_MIN = 35
c'BLADERF_TXVGA1_GAIN_MIN :: (Num a) => a
c'BLADERF_TXVGA1_GAIN_MAX = 4
c'BLADERF_TXVGA1_GAIN_MAX :: (Num a) => a
c'BLADERF_TXVGA2_GAIN_MIN = 0
c'BLADERF_TXVGA2_GAIN_MIN :: (Num a) => a
c'BLADERF_TXVGA2_GAIN_MAX = 25
c'BLADERF_TXVGA2_GAIN_MAX :: (Num a) => a
c'BLADERF_SAMPLERATE_MIN = 80000
c'BLADERF_SAMPLERATE_MIN :: (Num a) => a
c'BLADERF_SAMPLERATE_REC_MAX = 40000000
c'BLADERF_SAMPLERATE_REC_MAX :: (Num a) => a
c'BLADERF_BANDWIDTH_MIN = 1500000
c'BLADERF_BANDWIDTH_MIN :: (Num a) => a
c'BLADERF_BANDWIDTH_MAX = 28000000
c'BLADERF_BANDWIDTH_MAX :: (Num a) => a
c'BLADERF_FREQUENCY_MIN = 232500000
c'BLADERF_FREQUENCY_MIN :: (Num a) => a
c'BLADERF_FREQUENCY_MIN_XB200 = 0
c'BLADERF_FREQUENCY_MIN_XB200 :: (Num a) => a
c'BLADERF_FREQUENCY_MAX = 3800000000
c'BLADERF_FREQUENCY_MAX :: (Num a) => a
type C'bladerf_loopback = CUInt
c'BLADERF_LB_FIRMWARE = 1
c'BLADERF_LB_FIRMWARE :: (Num a) => a
c'BLADERF_LB_BB_TXLPF_RXVGA2 = 2
c'BLADERF_LB_BB_TXLPF_RXVGA2 :: (Num a) => a
c'BLADERF_LB_BB_TXVGA1_RXVGA2 = 3
c'BLADERF_LB_BB_TXVGA1_RXVGA2 :: (Num a) => a
c'BLADERF_LB_BB_TXLPF_RXLPF = 4
c'BLADERF_LB_BB_TXLPF_RXLPF :: (Num a) => a
c'BLADERF_LB_BB_TXVGA1_RXLPF = 5
c'BLADERF_LB_BB_TXVGA1_RXLPF :: (Num a) => a
c'BLADERF_LB_RF_LNA1 = 6
c'BLADERF_LB_RF_LNA1 :: (Num a) => a
c'BLADERF_LB_RF_LNA2 = 7
c'BLADERF_LB_RF_LNA2 :: (Num a) => a
c'BLADERF_LB_RF_LNA3 = 8
c'BLADERF_LB_RF_LNA3 :: (Num a) => a
c'BLADERF_LB_NONE = 9
c'BLADERF_LB_NONE :: (Num a) => a
data C'bladerf_rational_rate = C'bladerf_rational_rate{
c'bladerf_rational_rate'integer :: Word64,
c'bladerf_rational_rate'num :: Word64,
c'bladerf_rational_rate'den :: Word64
} deriving (Eq,Show)
p'bladerf_rational_rate'integer p = plusPtr p 0
p'bladerf_rational_rate'integer :: Ptr (C'bladerf_rational_rate) -> Ptr (Word64)
p'bladerf_rational_rate'num p = plusPtr p 8
p'bladerf_rational_rate'num :: Ptr (C'bladerf_rational_rate) -> Ptr (Word64)
p'bladerf_rational_rate'den p = plusPtr p 16
p'bladerf_rational_rate'den :: Ptr (C'bladerf_rational_rate) -> Ptr (Word64)
instance Storable C'bladerf_rational_rate where
sizeOf _ = 24
alignment _ = 8
peek p = do
v0 <- peekByteOff p 0
v1 <- peekByteOff p 8
v2 <- peekByteOff p 16
return $ C'bladerf_rational_rate v0 v1 v2
poke p (C'bladerf_rational_rate v0 v1 v2) = do
pokeByteOff p 0 v0
pokeByteOff p 8 v1
pokeByteOff p 16 v2
return ()
type C'bladerf_sampling = CUInt
c'BLADERF_SAMPLING_UNKNOWN = 0
c'BLADERF_SAMPLING_UNKNOWN :: (Num a) => a
c'BLADERF_SAMPLING_INTERNAL = 1
c'BLADERF_SAMPLING_INTERNAL :: (Num a) => a
c'BLADERF_SAMPLING_EXTERNAL = 2
c'BLADERF_SAMPLING_EXTERNAL :: (Num a) => a
type C'bladerf_lna_gain = CUInt
c'BLADERF_LNA_GAIN_UNKNOWN = 0
c'BLADERF_LNA_GAIN_UNKNOWN :: (Num a) => a
c'BLADERF_LNA_GAIN_BYPASS = 1
c'BLADERF_LNA_GAIN_BYPASS :: (Num a) => a
c'BLADERF_LNA_GAIN_MID = 2
c'BLADERF_LNA_GAIN_MID :: (Num a) => a
c'BLADERF_LNA_GAIN_MAX = 3
c'BLADERF_LNA_GAIN_MAX :: (Num a) => a
c'BLADERF_LNA_GAIN_MID_DB = 3
c'BLADERF_LNA_GAIN_MID_DB :: (Num a) => a
c'BLADERF_LNA_GAIN_MAX_DB = 6
c'BLADERF_LNA_GAIN_MAX_DB :: (Num a) => a
type C'bladerf_lpf_mode = CUInt
c'BLADERF_LPF_NORMAL = 0
c'BLADERF_LPF_NORMAL :: (Num a) => a
c'BLADERF_LPF_BYPASSED = 1
c'BLADERF_LPF_BYPASSED :: (Num a) => a
c'BLADERF_LPF_DISABLED = 2
c'BLADERF_LPF_DISABLED :: (Num a) => a
type C'bladerf_module = CUInt
c'BLADERF_MODULE_RX = 0
c'BLADERF_MODULE_RX :: (Num a) => a
c'BLADERF_MODULE_TX = 1
c'BLADERF_MODULE_TX :: (Num a) => a
type C'bladerf_xb = CUInt
c'BLADERF_XB_NONE = 0
c'BLADERF_XB_NONE :: (Num a) => a
c'BLADERF_XB_100 = 1
c'BLADERF_XB_100 :: (Num a) => a
c'BLADERF_XB_200 = 2
c'BLADERF_XB_200 :: (Num a) => a
type C'bladerf_xb200_filter = CUInt
c'BLADERF_XB200_50M = 0
c'BLADERF_XB200_50M :: (Num a) => a
c'BLADERF_XB200_144M = 1
c'BLADERF_XB200_144M :: (Num a) => a
c'BLADERF_XB200_222M = 2
c'BLADERF_XB200_222M :: (Num a) => a
c'BLADERF_XB200_CUSTOM = 3
c'BLADERF_XB200_CUSTOM :: (Num a) => a
c'BLADERF_XB200_AUTO_1DB = 4
c'BLADERF_XB200_AUTO_1DB :: (Num a) => a
c'BLADERF_XB200_AUTO_3DB = 5
c'BLADERF_XB200_AUTO_3DB :: (Num a) => a
type C'bladerf_xb200_path = CUInt
c'BLADERF_XB200_BYPASS = 0
c'BLADERF_XB200_BYPASS :: (Num a) => a
c'BLADERF_XB200_MIX = 1
c'BLADERF_XB200_MIX :: (Num a) => a
type C'bladerf_cal_module = CUInt
c'BLADERF_DC_CAL_LPF_TUNING = 0
c'BLADERF_DC_CAL_LPF_TUNING :: (Num a) => a
c'BLADERF_DC_CAL_TX_LPF = 1
c'BLADERF_DC_CAL_TX_LPF :: (Num a) => a
c'BLADERF_DC_CAL_RX_LPF = 2
c'BLADERF_DC_CAL_RX_LPF :: (Num a) => a
c'BLADERF_DC_CAL_RXVGA2 = 3
c'BLADERF_DC_CAL_RXVGA2 :: (Num a) => a
type C'bladerf_correction = CUInt
c'BLADERF_CORR_LMS_DCOFF_I = 0
c'BLADERF_CORR_LMS_DCOFF_I :: (Num a) => a
c'BLADERF_CORR_LMS_DCOFF_Q = 1
c'BLADERF_CORR_LMS_DCOFF_Q :: (Num a) => a
c'BLADERF_CORR_FPGA_PHASE = 2
c'BLADERF_CORR_FPGA_PHASE :: (Num a) => a
c'BLADERF_CORR_FPGA_GAIN = 3
c'BLADERF_CORR_FPGA_GAIN :: (Num a) => a
type C'bladerf_format = CUInt
c'BLADERF_FORMAT_SC16_Q11 = 0
c'BLADERF_FORMAT_SC16_Q11 :: (Num a) => a
c'BLADERF_FORMAT_SC16_Q11_META = 1
c'BLADERF_FORMAT_SC16_Q11_META :: (Num a) => a
c'BLADERF_META_STATUS_OVERRUN = 1
c'BLADERF_META_STATUS_OVERRUN :: (Num a) => a
c'BLADERF_META_STATUS_UNDERRUN = 2
c'BLADERF_META_STATUS_UNDERRUN :: (Num a) => a
c'BLADERF_META_FLAG_TX_BURST_START = 1
c'BLADERF_META_FLAG_TX_BURST_START :: (Num a) => a
c'BLADERF_META_FLAG_TX_BURST_END = 2
c'BLADERF_META_FLAG_TX_BURST_END :: (Num a) => a
c'BLADERF_META_FLAG_TX_NOW = 4
c'BLADERF_META_FLAG_TX_NOW :: (Num a) => a
c'BLADERF_META_FLAG_RX_NOW = 2147483648
c'BLADERF_META_FLAG_RX_NOW :: (Num a) => a
data C'bladerf_metadata = C'bladerf_metadata{
c'bladerf_metadata'timestamp :: Word64,
c'bladerf_metadata'flags :: Word32,
c'bladerf_metadata'status :: Word32,
c'bladerf_metadata'actual_count :: CInt,
c'bladerf_metadata'reserved :: [Word8]
} deriving (Eq,Show)
p'bladerf_metadata'timestamp p = plusPtr p 0
p'bladerf_metadata'timestamp :: Ptr (C'bladerf_metadata) -> Ptr (Word64)
p'bladerf_metadata'flags p = plusPtr p 8
p'bladerf_metadata'flags :: Ptr (C'bladerf_metadata) -> Ptr (Word32)
p'bladerf_metadata'status p = plusPtr p 12
p'bladerf_metadata'status :: Ptr (C'bladerf_metadata) -> Ptr (Word32)
p'bladerf_metadata'actual_count p = plusPtr p 16
p'bladerf_metadata'actual_count :: Ptr (C'bladerf_metadata) -> Ptr (CInt)
p'bladerf_metadata'reserved p = plusPtr p 20
p'bladerf_metadata'reserved :: Ptr (C'bladerf_metadata) -> Ptr (Word8)
instance Storable C'bladerf_metadata where
sizeOf _ = 56
alignment _ = 8
peek p = do
v0 <- peekByteOff p 0
v1 <- peekByteOff p 8
v2 <- peekByteOff p 12
v3 <- peekByteOff p 16
v4 <- let s = div 32 $ sizeOf $ (undefined :: Word8) in peekArray s (plusPtr p 20)
return $ C'bladerf_metadata v0 v1 v2 v3 v4
poke p (C'bladerf_metadata v0 v1 v2 v3 v4) = do
pokeByteOff p 0 v0
pokeByteOff p 8 v1
pokeByteOff p 12 v2
pokeByteOff p 16 v3
let s = div 32 $ sizeOf $ (undefined :: Word8)
pokeArray (plusPtr p 20) (take s v4)
return ()
type C'bladerf_stream_cb = FunPtr (Ptr() -> Ptr() -> Ptr() -> Ptr() -> CSize -> Ptr() -> IO())
foreign import ccall "wrapper" mk'bladerf_stream_cb
:: (Ptr() -> Ptr() -> Ptr() -> Ptr() -> CSize -> Ptr() -> IO()) -> IO C'bladerf_stream_cb
foreign import ccall "dynamic" mK'bladerf_stream_cb
:: C'bladerf_stream_cb -> (Ptr() -> Ptr() -> Ptr() -> Ptr() -> CSize -> Ptr() -> IO())
data C'bladerf_version = C'bladerf_version{
c'bladerf_version'major :: Word16,
c'bladerf_version'minor :: Word16,
c'bladerf_version'patch :: Word16,
c'bladerf_version'describe :: CString
} deriving (Eq,Show)
p'bladerf_version'major p = plusPtr p 0
p'bladerf_version'major :: Ptr (C'bladerf_version) -> Ptr (Word16)
p'bladerf_version'minor p = plusPtr p 2
p'bladerf_version'minor :: Ptr (C'bladerf_version) -> Ptr (Word16)
p'bladerf_version'patch p = plusPtr p 4
p'bladerf_version'patch :: Ptr (C'bladerf_version) -> Ptr (Word16)
p'bladerf_version'describe p = plusPtr p 8
p'bladerf_version'describe :: Ptr (C'bladerf_version) -> Ptr (CString)
instance Storable C'bladerf_version where
sizeOf _ = 16
alignment _ = 8
peek p = do
v0 <- peekByteOff p 0
v1 <- peekByteOff p 2
v2 <- peekByteOff p 4
v3 <- peekByteOff p 8
return $ C'bladerf_version v0 v1 v2 v3
poke p (C'bladerf_version v0 v1 v2 v3) = do
pokeByteOff p 0 v0
pokeByteOff p 2 v1
pokeByteOff p 4 v2
pokeByteOff p 8 v3
return ()
type C'bladerf_fpga_size = CUInt
c'BLADERF_FPGA_UNKNOWN = 0
c'BLADERF_FPGA_UNKNOWN :: (Num a) => a
c'BLADERF_FPGA_40KLE = 40
c'BLADERF_FPGA_40KLE :: (Num a) => a
c'BLADERF_FPGA_115KLE = 115
c'BLADERF_FPGA_115KLE :: (Num a) => a
type C'bladerf_log_level = CUInt
c'BLADERF_LOG_LEVEL_VERBOSE = 0
c'BLADERF_LOG_LEVEL_VERBOSE :: (Num a) => a
c'BLADERF_LOG_LEVEL_DEBUG = 1
c'BLADERF_LOG_LEVEL_DEBUG :: (Num a) => a
c'BLADERF_LOG_LEVEL_INFO = 2
c'BLADERF_LOG_LEVEL_INFO :: (Num a) => a
c'BLADERF_LOG_LEVEL_WARNING = 3
c'BLADERF_LOG_LEVEL_WARNING :: (Num a) => a
c'BLADERF_LOG_LEVEL_ERROR = 4
c'BLADERF_LOG_LEVEL_ERROR :: (Num a) => a
c'BLADERF_LOG_LEVEL_CRITICAL = 5
c'BLADERF_LOG_LEVEL_CRITICAL :: (Num a) => a
c'BLADERF_LOG_LEVEL_SILENT = 6
c'BLADERF_LOG_LEVEL_SILENT :: (Num a) => a
type C'bladerf_image_type = CInt
c'BLADERF_IMAGE_TYPE_INVALID = 1
c'BLADERF_IMAGE_TYPE_INVALID :: (Num a) => a
c'BLADERF_IMAGE_TYPE_RAW = 0
c'BLADERF_IMAGE_TYPE_RAW :: (Num a) => a
c'BLADERF_IMAGE_TYPE_FIRMWARE = 1
c'BLADERF_IMAGE_TYPE_FIRMWARE :: (Num a) => a
c'BLADERF_IMAGE_TYPE_FPGA_40KLE = 2
c'BLADERF_IMAGE_TYPE_FPGA_40KLE :: (Num a) => a
c'BLADERF_IMAGE_TYPE_FPGA_115KLE = 3
c'BLADERF_IMAGE_TYPE_FPGA_115KLE :: (Num a) => a
c'BLADERF_IMAGE_TYPE_CALIBRATION = 4
c'BLADERF_IMAGE_TYPE_CALIBRATION :: (Num a) => a
c'BLADERF_IMAGE_TYPE_RX_DC_CAL = 5
c'BLADERF_IMAGE_TYPE_RX_DC_CAL :: (Num a) => a
c'BLADERF_IMAGE_TYPE_TX_DC_CAL = 6
c'BLADERF_IMAGE_TYPE_TX_DC_CAL :: (Num a) => a
c'BLADERF_IMAGE_TYPE_RX_IQ_CAL = 7
c'BLADERF_IMAGE_TYPE_RX_IQ_CAL :: (Num a) => a
c'BLADERF_IMAGE_TYPE_TX_IQ_CAL = 8
c'BLADERF_IMAGE_TYPE_TX_IQ_CAL :: (Num a) => a
c'BLADERF_IMAGE_MAGIC_LEN = 7
c'BLADERF_IMAGE_MAGIC_LEN :: (Num a) => a
c'BLADERF_IMAGE_CHECKSUM_LEN = 32
c'BLADERF_IMAGE_CHECKSUM_LEN :: (Num a) => a
c'BLADERF_IMAGE_RESERVED_LEN = 128
c'BLADERF_IMAGE_RESERVED_LEN :: (Num a) => a
data C'bladerf_image = C'bladerf_image{
c'bladerf_image'magic :: [CChar],
c'bladerf_image'checksum :: [Word8],
c'bladerf_image'version :: C'bladerf_version,
c'bladerf_image'timestamp :: Word64,
c'bladerf_image'serial :: [CChar],
c'bladerf_image'reserved :: [CChar],
c'bladerf_image'type :: C'bladerf_image_type,
c'bladerf_image'address :: Word32,
c'bladerf_image'length :: Word32,
c'bladerf_image'data :: Ptr (Word8)
} deriving (Eq,Show)
p'bladerf_image'magic p = plusPtr p 0
p'bladerf_image'magic :: Ptr (C'bladerf_image) -> Ptr (CChar)
p'bladerf_image'checksum p = plusPtr p 8
p'bladerf_image'checksum :: Ptr (C'bladerf_image) -> Ptr (Word8)
p'bladerf_image'version p = plusPtr p 40
p'bladerf_image'version :: Ptr (C'bladerf_image) -> Ptr (C'bladerf_version)
p'bladerf_image'timestamp p = plusPtr p 56
p'bladerf_image'timestamp :: Ptr (C'bladerf_image) -> Ptr (Word64)
p'bladerf_image'serial p = plusPtr p 64
p'bladerf_image'serial :: Ptr (C'bladerf_image) -> Ptr (CChar)
p'bladerf_image'reserved p = plusPtr p 98
p'bladerf_image'reserved :: Ptr (C'bladerf_image) -> Ptr (CChar)
p'bladerf_image'type p = plusPtr p 228
p'bladerf_image'type :: Ptr (C'bladerf_image) -> Ptr (C'bladerf_image_type)
p'bladerf_image'address p = plusPtr p 232
p'bladerf_image'address :: Ptr (C'bladerf_image) -> Ptr (Word32)
p'bladerf_image'length p = plusPtr p 236
p'bladerf_image'length :: Ptr (C'bladerf_image) -> Ptr (Word32)
p'bladerf_image'data p = plusPtr p 240
p'bladerf_image'data :: Ptr (C'bladerf_image) -> Ptr (Ptr (Word8))
instance Storable C'bladerf_image where
sizeOf _ = 248
alignment _ = 8
peek p = do
v0 <- let s = div 8 $ sizeOf $ (undefined :: CChar) in peekArray s (plusPtr p 0)
v1 <- let s = div 32 $ sizeOf $ (undefined :: Word8) in peekArray s (plusPtr p 8)
v2 <- peekByteOff p 40
v3 <- peekByteOff p 56
v4 <- let s = div 34 $ sizeOf $ (undefined :: CChar) in peekArray s (plusPtr p 64)
v5 <- let s = div 128 $ sizeOf $ (undefined :: CChar) in peekArray s (plusPtr p 98)
v6 <- peekByteOff p 228
v7 <- peekByteOff p 232
v8 <- peekByteOff p 236
v9 <- peekByteOff p 240
return $ C'bladerf_image v0 v1 v2 v3 v4 v5 v6 v7 v8 v9
poke p (C'bladerf_image v0 v1 v2 v3 v4 v5 v6 v7 v8 v9) = do
let s = div 8 $ sizeOf $ (undefined :: CChar)
pokeArray (plusPtr p 0) (take s v0)
let s = div 32 $ sizeOf $ (undefined :: Word8)
pokeArray (plusPtr p 8) (take s v1)
pokeByteOff p 40 v2
pokeByteOff p 56 v3
let s = div 34 $ sizeOf $ (undefined :: CChar)
pokeArray (plusPtr p 64) (take s v4)
let s = div 128 $ sizeOf $ (undefined :: CChar)
pokeArray (plusPtr p 98) (take s v5)
pokeByteOff p 228 v6
pokeByteOff p 232 v7
pokeByteOff p 236 v8
pokeByteOff p 240 v9
return ()
data C'bladerf_lms_dc_cals = C'bladerf_lms_dc_cals{
c'bladerf_lms_dc_cals'lpf_tuning :: Word16,
c'bladerf_lms_dc_cals'tx_lpf_i :: Word16,
c'bladerf_lms_dc_cals'tx_lpf_q :: Word16,
c'bladerf_lms_dc_cals'rx_lpf_i :: Word16,
c'bladerf_lms_dc_cals'rx_lpf_q :: Word16,
c'bladerf_lms_dc_cals'dc_ref :: Word16,
c'bladerf_lms_dc_cals'rxvga2a_i :: Word16,
c'bladerf_lms_dc_cals'rxvga2a_q :: Word16,
c'bladerf_lms_dc_cals'rxvga2b_i :: Word16,
c'bladerf_lms_dc_cals'rxvga2b_q :: Word16
} deriving (Eq,Show)
p'bladerf_lms_dc_cals'lpf_tuning p = plusPtr p 0
p'bladerf_lms_dc_cals'lpf_tuning :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
p'bladerf_lms_dc_cals'tx_lpf_i p = plusPtr p 2
p'bladerf_lms_dc_cals'tx_lpf_i :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
p'bladerf_lms_dc_cals'tx_lpf_q p = plusPtr p 4
p'bladerf_lms_dc_cals'tx_lpf_q :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
p'bladerf_lms_dc_cals'rx_lpf_i p = plusPtr p 6
p'bladerf_lms_dc_cals'rx_lpf_i :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
p'bladerf_lms_dc_cals'rx_lpf_q p = plusPtr p 8
p'bladerf_lms_dc_cals'rx_lpf_q :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
p'bladerf_lms_dc_cals'dc_ref p = plusPtr p 10
p'bladerf_lms_dc_cals'dc_ref :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
p'bladerf_lms_dc_cals'rxvga2a_i p = plusPtr p 12
p'bladerf_lms_dc_cals'rxvga2a_i :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
p'bladerf_lms_dc_cals'rxvga2a_q p = plusPtr p 14
p'bladerf_lms_dc_cals'rxvga2a_q :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
p'bladerf_lms_dc_cals'rxvga2b_i p = plusPtr p 16
p'bladerf_lms_dc_cals'rxvga2b_i :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
p'bladerf_lms_dc_cals'rxvga2b_q p = plusPtr p 18
p'bladerf_lms_dc_cals'rxvga2b_q :: Ptr (C'bladerf_lms_dc_cals) -> Ptr (Word16)
instance Storable C'bladerf_lms_dc_cals where
sizeOf _ = 20
alignment _ = 2
peek p = do
v0 <- peekByteOff p 0
v1 <- peekByteOff p 2
v2 <- peekByteOff p 4
v3 <- peekByteOff p 6
v4 <- peekByteOff p 8
v5 <- peekByteOff p 10
v6 <- peekByteOff p 12
v7 <- peekByteOff p 14
v8 <- peekByteOff p 16
v9 <- peekByteOff p 18
return $ C'bladerf_lms_dc_cals v0 v1 v2 v3 v4 v5 v6 v7 v8 v9
poke p (C'bladerf_lms_dc_cals v0 v1 v2 v3 v4 v5 v6 v7 v8 v9) = do
pokeByteOff p 0 v0
pokeByteOff p 2 v1
pokeByteOff p 4 v2
pokeByteOff p 6 v3
pokeByteOff p 8 v4
pokeByteOff p 10 v5
pokeByteOff p 12 v6
pokeByteOff p 14 v7
pokeByteOff p 16 v8
pokeByteOff p 18 v9
return ()
c'BLADERF_GPIO_LMS_RX_ENABLE = 2
c'BLADERF_GPIO_LMS_RX_ENABLE :: (Num a) => a
c'BLADERF_GPIO_LMS_TX_ENABLE = 4
c'BLADERF_GPIO_LMS_TX_ENABLE :: (Num a) => a
c'BLADERF_GPIO_TX_LB_ENABLE = 16
c'BLADERF_GPIO_TX_LB_ENABLE :: (Num a) => a
c'BLADERF_GPIO_TX_HB_ENABLE = 8
c'BLADERF_GPIO_TX_HB_ENABLE :: (Num a) => a
c'BLADERF_GPIO_COUNTER_ENABLE = 512
c'BLADERF_GPIO_COUNTER_ENABLE :: (Num a) => a
c'BLADERF_GPIO_RX_LB_ENABLE = 64
c'BLADERF_GPIO_RX_LB_ENABLE :: (Num a) => a
c'BLADERF_GPIO_RX_HB_ENABLE = 32
c'BLADERF_GPIO_RX_HB_ENABLE :: (Num a) => a
c'BLADERF_GPIO_FEATURE_SMALL_DMA_XFER = 128
c'BLADERF_GPIO_FEATURE_SMALL_DMA_XFER :: (Num a) => a
c'BLADERF_GPIO_TIMESTAMP = 65536
c'BLADERF_GPIO_TIMESTAMP :: (Num a) => a
c'BLADERF_GPIO_TIMESTAMP_DIV2 = 131072
c'BLADERF_GPIO_TIMESTAMP_DIV2 :: (Num a) => a
c'BLADERF_FLASH_TOTAL_SIZE = 4194304
c'BLADERF_FLASH_TOTAL_SIZE :: (Num a) => a
c'BLADERF_FLASH_PAGE_SIZE = 256
c'BLADERF_FLASH_PAGE_SIZE :: (Num a) => a
c'BLADERF_FLASH_EB_SIZE = 65536
c'BLADERF_FLASH_EB_SIZE :: (Num a) => a
c'BLADERF_FLASH_NUM_PAGES = 16384
c'BLADERF_FLASH_NUM_PAGES :: (Num a) => a
c'BLADERF_FLASH_NUM_EBS = 64
c'BLADERF_FLASH_NUM_EBS :: (Num a) => a
c'BLADERF_FLASH_ADDR_FIRMWARE = 0
c'BLADERF_FLASH_ADDR_FIRMWARE :: (Num a) => a
c'BLADERF_FLASH_BYTE_LEN_FIRMWARE = 196608
c'BLADERF_FLASH_BYTE_LEN_FIRMWARE :: (Num a) => a
c'BLADERF_FLASH_ADDR_CAL = 196608
c'BLADERF_FLASH_ADDR_CAL :: (Num a) => a
c'BLADERF_FLASH_BYTE_LEN_CAL = 256
c'BLADERF_FLASH_BYTE_LEN_CAL :: (Num a) => a
c'BLADERF_FLASH_EB_LEN_CAL = 1
c'BLADERF_FLASH_EB_LEN_CAL :: (Num a) => a
c'BLADERF_FLASH_ADDR_FPGA = 262144
c'BLADERF_FLASH_ADDR_FPGA :: (Num a) => a
c'BLADERF_FLASH_BYTE_LEN_FPGA = 3604480
c'BLADERF_FLASH_BYTE_LEN_FPGA :: (Num a) => a