On Tue, Jul 19, 2022 at 10:09:33AM +0200, Bartosz Golaszewski wrote: > On Mon, Jul 18, 2022 at 10:56 PM William Breathitt Gray > <william.gray@xxxxxxxxxx> wrote: > > > > Changes in v3: > > - Updated contact information in MAINTAINERS > > - Added help text for GPIO_I8255 Kconfig option > > - Move include/linux/gpio/i8255.h to drivers/gpio/gpio-i8255.h > > - Include "gpio-i8255.h" instead of <linux/gpio/i8255.h> > > - Include linux/types.h instead of linux/compiler_types.h > > - Add underscores for *PORTC_LOWER* and *PORTC_UPPER* defines > > - Move (offset % 8) expression to a port_offset const above the io_port > > const in i8255_direction_mask(); this should help optimize assembly > > instructions on some architectures > > - Implement an opaque i8255_state struct to organize and access i8255 > > device states; this replaces the control_state array passed to > > various i8255 library functions in previous patchsets > > - Implement and provide a i8255_state_init() function to initialize the > > i8255_state struct for a consumer > > - Use a spinlock within i8255 library functions to protect access to > > i8255 states and synchronize I/O operations; a spinlock is used so > > that these functions may be used within an interrupt context > > - Export the i8255 library symbols within a new I8255 namespace > > - Update the 104-dio-48e, 104-idi-48, gpio-mm drivers to use the new > > i8255_state struct and I8255 namespace > > > > The PC104/ISA drivers were updated to use I/O memory accessor calls such > > as ioread8()/iowrite8() in a previous patch series [0]. This > > patchset is a continuation of the effort to improve the code readability > > and reduce magic numbers by implementing and utilizing named register > > data structures. > > > > One of the benefits is that we can now observe more easily similarities > > in devices that share similar interfaces; such as the i8255 interfaces > > used by the 104-DIO-48E, 104-IDI-48, and GPIO-MM drivers -- as well as > > the similar interface used by the 104-IDIO-16 and PCI-IDIO-16 drivers. > > > > A new module supporting the Intel 8255 interface is introduced to > > consolidate the common code found among the 104-DIO-48E, 104-IDI-48, and > > GPIO-MM drivers. > > > > [0] https://lore.kernel.org/all/cover.1652201921.git.william.gray@xxxxxxxxxx/ > > > > William Breathitt Gray (6): > > gpio: ws16c48: Implement and utilize register structures > > gpio: 104-idio-16: Implement and utilize register structures > > gpio: i8255: Introduce the Intel 8255 interface library module > > gpio: 104-dio-48e: Implement and utilize register structures > > gpio: 104-idi-48: Implement and utilize register structures > > gpio: gpio-mm: Implement and utilize register structures > > > > Hey William! > > Are you planning to submit a fourth version anytime soon? I am willing > to take it for the next merge window if it arrives soon - like > tomorrow at the latest. > > Bart Hi Bart, I'm incorporating Andy's comments for v4, and I expect it should be ready later today for you to pick up. Thanks, William Breathitt Gray
Attachment:
signature.asc
Description: PGP signature