Mon, Jul 27, 2020 at 02:35:53PM CEST, vadym.koc...@plvision.eu wrote: >Hi Jiri, > >On Mon, Jul 27, 2020 at 02:32:05PM +0200, Jiri Pirko wrote: >> Mon, Jul 27, 2020 at 02:22:38PM CEST, vadym.koc...@plvision.eu wrote: >> >Add PCI interface driver for Prestera Switch ASICs family devices, which >> >provides: >> > >> > - Firmware loading mechanism >> > - Requests & events handling to/from the firmware >> > - Access to the firmware on the bus level >> > >> >The firmware has to be loaded each time the device is reset. The driver >> >is loading it from: >> > >> > /lib/firmware/marvell/prestera_fw-v{MAJOR}.{MINOR}.img >> > >> >The full firmware image version is located within the internal header >> >and consists of 3 numbers - MAJOR.MINOR.PATCH. Additionally, driver has >> >hard-coded minimum supported firmware version which it can work with: >> > >> > MAJOR - reflects the support on ABI level between driver and loaded >> > firmware, this number should be the same for driver and loaded >> > firmware. >> > >> > MINOR - this is the minimum supported version between driver and the >> > firmware. >> > >> > PATCH - indicates only fixes, firmware ABI is not changed. >> > >> >Firmware image file name contains only MAJOR and MINOR numbers to make >> >driver be compatible with any PATCH version. >> > >> >Signed-off-by: Oleksandr Mazur <oleksandr.ma...@plvision.eu> >> >Signed-off-by: Vadym Kochan <vadym.koc...@plvision.eu> >> >Acked-by: Jiri Pirko <j...@mellanox.com> >> >> You have to remove the tag if you change the patch from last tagged >> version... >> >OK, sorry, makes sense, should I re-spin with v5 or wait when the status >is changed to 'Changes Requested' in the patchwork ?
Np. I will review this patch again. > >> >> >--- >> >PATCH v4: >> > 1) Get rid of "packed" attribute for the fw image header, it is >> > already aligned. >> > >> > 2) Cleanup not needed initialization of variables which are used in >> > readl_poll_timeout() helpers. >> > >> > 3) Replace #define's of prestera_{fw,ldr}_{read,write} to static funcs. >> > >> > 4) Use pcim_ helpers for resource allocation >> > >> > 5) Use devm_zalloc() for struct prestera_fw instance allocation. >> > >> > 6) Use module_pci_driver(prestera_pci_driver) instead of >> > module_{init,exit}. >> > >> > 7) Use _MS prefix for timeout #define's. >> > >> > 8) Use snprintf for firmware image path generation instead of using >> > macrosses. >> > >> > 9) Use memcpy_xxxio helpers for IO memory copying. >> > >> > 10) By default use same build type ('m' or 'y') for >> > CONFIG_PRESTERA_PCI which is used by CONFIG_PRESTERA. >> > >> >> [...]