X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/blobdiff_plain/a79e37b2729f77faf00545062fc4a8ded1a6eb97..db9616f6d0c1e0889f6e67c611c898ad43f9bc35:/src/adafruit_blinka/microcontroller/generic_linux/i2c.py diff --git a/src/adafruit_blinka/microcontroller/generic_linux/i2c.py b/src/adafruit_blinka/microcontroller/generic_linux/i2c.py index b151798..b6f2fa3 100644 --- a/src/adafruit_blinka/microcontroller/generic_linux/i2c.py +++ b/src/adafruit_blinka/microcontroller/generic_linux/i2c.py @@ -1,9 +1,18 @@ +# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries +# +# SPDX-License-Identifier: MIT """Generic Linux I2C class using PureIO's smbus class""" -import Adafruit_PureIO.smbus as smbus + +import warnings +from Adafruit_PureIO import smbus class I2C: - """I2C class""" + """ + I2C class + + Baudrate has no effect on Linux systems. The argument is only there for compatibility. + """ MASTER = 0 SLAVE = 1 @@ -11,20 +20,25 @@ class I2C: _mode = None _i2c_bus = None + # pylint: disable=unused-argument def __init__(self, bus_num, mode=MASTER, baudrate=None): if mode != self.MASTER: raise NotImplementedError("Only I2C Master supported!") _mode = self.MASTER - # if baudrate != None: - # print("I2C frequency is not settable in python, ignoring!") + if baudrate is not None: + warnings.warn( + "I2C frequency is not settable in python, ignoring!", RuntimeWarning + ) try: self._i2c_bus = smbus.SMBus(bus_num) except FileNotFoundError: raise RuntimeError( "I2C Bus #%d not found, check if enabled in config!" % bus_num - ) + ) from RuntimeError + + # pylint: enable=unused-argument def scan(self): """Try to read a byte from each address, if you get an OSError @@ -66,7 +80,7 @@ class I2C: out_end=None, in_start=0, in_end=None, - stop=False + stop=False, ): """Write data from buffer_out to an address and then read data from an address and into buffer_in