Hi Peter, > -----Original Message----- > From: Peter Korsgaard [mailto:jacmet@xxxxxxxxx] On Behalf Of Peter Korsgaard > Sent: 2016年1月15日 15:58 > To: Yang, Wenyou <Wenyou.Yang@xxxxxxxxx> > Cc: Lee Jones <lee.jones@xxxxxxxxxx>; Rob Herring <robh+dt@xxxxxxxxxx>; > Pawel Moll <pawel.moll@xxxxxxx>; Mark Rutland <mark.rutland@xxxxxxx>; Ian > Campbell <ijc+devicetree@xxxxxxxxxxxxxx>; Kumar Gala <galak@xxxxxxxxxxxxxx>; > devicetree@xxxxxxxxxxxxxxx; Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>; > Ferre, Nicolas <Nicolas.FERRE@xxxxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx; > Javier Martinez Canillas <javier@xxxxxxxxxxxx>; linux-arm- > kernel@xxxxxxxxxxxxxxxxxxx > Subject: Re: [PATCH v5 1/2] mfd: act8945a: add Active-semi ACT8945A PMIC > MFD driver > > >>>>> "Yang," == Yang, Wenyou <Wenyou.Yang@xxxxxxxxx> writes: > > Hi, > > >> Why not make it a tristate instead? Having regulators as modules is perhaps > not a >> very wise thing to do, but conceptually I don't see why this code couldn't > be a >> module. > > > Yes, you are right. it can be use a tristate. > > Ok, good. > > >> > + act8945a = devm_kzalloc(&i2c->dev, sizeof(*act8945a), > >> > +GFP_KERNEL); > >> > + if (!act8945a) > >> > + return -ENOMEM; > >> > + > >> > >> What is the point of this structure (and the header file)? Can't the subdevices > just >> do dev_get_regmap(dev->parent)? regulator_register() afaik already does > this by >> default. > > > Yes, I re-read regulator_register() code. It did do dev_get_regmap(dev- > >parent). > > > I think this structure should be pointed by dev->parent, this structure is > necessary. > > > Yes regulator driver should be simpler. > > > Moreover, it is used by another sub device, charger. Which don't such code. > > But the charger driver can just as well do: > > dev_get_regmap(dev->parent); > > instead of: > > dev_get_drvdata(pdev->dev.parent)->regmap. Understand. Thank you! Best Regards, Wenyou Yang ?韬{.n?????%??檩??w?{.n????z谵{???塄}?财??j:+v??????2??璀??摺?囤??z夸z罐?+?????w棹f