On Thu, 2020-05-07 at 20:21 -0700, Bart Van Assche wrote: > On 2020-05-04 07:20, huobean@xxxxxxxxx wrote: > > +config SCSI_UFSHPB > > + bool "UFS Host Performance Booster (EXPERIMENTAL)" > > + depends on SCSI_UFSHCD > > + [ ... ] > > + > > +config UFSHPB_MAX_MEM_SIZE > > + int "UFS HPB maximum memory size per controller (in MiB)" > > + depends on SCSI_UFSHPB > > + default 128 > > + range 0 65536 > > + [ ... ] > > Kernel module parameters are an inflexible mechanism because the > value > of these parameters cannot be changed without rebuilding the kernel > followed by a reboot. Has it been considered to make these two > parameters configurable through sysfs? Has it been considered to make > these parameters UFS device parameters instead of global parameters > that > apply to all UFS devices? > > Hi Bart I ever tried these two approaches. let me explain why I finally choose kernel module "make menuconfig" way. 1: driver module parameter, while system booting, specify maximum HPB cache size in kernel boot Parameters: static int max_hpb_mem = 128; module_param(max_hpb_mem,int,0444); but this paramter is added in the ufshcd.c since the ufshpb.c is not a independent module. looks not very natural. 2: sysfs parameters This is a feasible option. we can enable HPB after system boot up, also, change the HPB cache maximum size. this is the same with the current way, moreover, we don't want user to change HPB cache size while HPB is running. If you prefer to convert current HPB driver to be a kernel module driver, I prefer first apporach. thanks, Bean