mbox series

[v3,0/5] serial: 8250_exar: Replace custom EEPROM code with eeprom_93cx6

Message ID cover.1727873292.git.pnewman@connecttech.com
Headers show
Series serial: 8250_exar: Replace custom EEPROM code with eeprom_93cx6 | expand

Message

Parker Newman Oct. 2, 2024, 2:14 p.m. UTC
From: Parker Newman <pnewman@connecttech.com>

This series of patches replaces the custom 93cx6 EEPROM read functions in
the 8250_exar driver with the eeprom_93cx6 driver. This removes duplicate code
and improves code readability.

In order to use the eeprom_93cx6 driver a quirk needed to be added to add an
extra clock cycle before reading from the EEPROM. This is similar to the
quirk in the eeprom_93xx46 driver.

More details in associated patch and mailing list discussion with
Andy Shevchenko about these changes:
Link: https://lore.kernel.org/linux-serial/Ztr5u2wEt8VF1IdI@black.fi.intel.com/

Changes in v2:
- Dropped patch 3 "misc: eeprom: eeprom_93cx6: Replace printk(KERN_ERR...) with pr_err()".
- Moved Kconfig change into main patch.
- Moved quirk define into struct eeprom_93cx6.
- Moved quirk check function into eeprom_93cx6.h.
- Refactored cti_read_osc_freq() based on feedback.
- Minor commit message formatting fixes.

Changes in v3:
- Rebased to v6.12-rc1.
- Minor commit message rewording.
- Replace CTI_EE_MASK_OSC_FREQ_UPPER/LOWER with a single define in patch 4.
- Add patch 5 from Andy Shevchenko: "serial: 8250_exar: Group CTI EEPROM offsets by device".
Link:https://lore.kernel.org/linux-serial/20240920154430.3323820-1-andriy.shevchenko@linux.intel.com/

Andy Shevchenko (1):
  serial: 8250_exar: Group CTI EEPROM offsets by device

Parker Newman (4):
  misc: eeprom: eeprom_93cx6: Add quirk for extra read clock cycle
  misc: eeprom: eeprom_93cx6: Switch to BIT() macro
  serial: 8250_exar: Replace custom EEPROM read with eeprom_93cx6
  serial: 8250_exar: Remove old exar_ee_read() and other unneeded code

 drivers/misc/eeprom/eeprom_93cx6.c  |  15 +++-
 drivers/tty/serial/8250/8250_exar.c | 130 ++++++++--------------------
 drivers/tty/serial/8250/Kconfig     |   1 +
 include/linux/eeprom_93cx6.h        |  12 +++
 4 files changed, 63 insertions(+), 95 deletions(-)


base-commit: 9852d85ec9d492ebef56dc5f229416c925758edc
--
2.46.0

Comments

Parker Newman Oct. 2, 2024, 2:37 p.m. UTC | #1
On Wed, 2 Oct 2024 17:31:22 +0300
Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:

> On Wed, Oct 02, 2024 at 10:14:06AM -0400, Parker Newman wrote:
> > From: Parker Newman <pnewman@connecttech.com>
> >
> > This series of patches replaces the custom 93cx6 EEPROM read functions in
> > the 8250_exar driver with the eeprom_93cx6 driver. This removes duplicate code
> > and improves code readability.
> >
> > In order to use the eeprom_93cx6 driver a quirk needed to be added to add an
> > extra clock cycle before reading from the EEPROM. This is similar to the
> > quirk in the eeprom_93xx46 driver.
>
> Everything is fine except one minor (in patch 1) and one more serious
> (see patches 3 & 4) issue. I just commented on them. Fix and send a final
> v4, my tags are already there and you may keep them.
>
> Thank you!
>
Thank you, I will fix and resend.