Messages in this thread | | | Date | Wed, 30 Jan 2008 08:19:06 -0500 | From | "Mike Frysinger" <> | Subject | Re: [PATCH 1/1] [Blackfin] char driver for Blackfin on-chip OTP memory |
| |
On Jan 30, 2008 6:00 AM, Jiri Slaby <jirislaby@gmail.com> wrote: > On 01/30/2008 11:36 AM, Bryan Wu wrote: > > +DEFINE_MUTEX(bfin_otp_lock); > > static?
the macro threw me ... fixed now, thanks
> > +static int __init bfin_otp_init(void) > > +{ > > + int ret; > > + > > + stampit(); > > + > > + ret = alloc_chrdev_region(&bfin_otp_dev_node, 0, 1, "otp"); > > + if (ret) { > > + printk(KERN_ERR PFX "unable to get a char device\n"); > > + return ret; > > + } > > + > > + cdev_init(&bfin_otp_cdev, &bfin_otp_fops); > > + bfin_otp_cdev.owner = THIS_MODULE; > > + bfin_otp_cdev.ops = &bfin_otp_fops; > > You don't need to set the fops again.
i did research this a bit but the information on the topic seemed spotty and usage was inconsistent ... i guess recent things have smartened up, so i'll drop the assignment
> > + ret = cdev_add(&bfin_otp_cdev, bfin_otp_dev_node, 1); > > + if (ret) { > > + unregister_chrdev_region(bfin_otp_dev_node, 1); > > + printk(KERN_ERR PFX "unable to register char device\n"); > > + return ret; > > + } > > + > > + bfin_otp_class = class_create(THIS_MODULE, "otp"); > > + device_create(bfin_otp_class, NULL, bfin_otp_dev_node, "otp"); > > Anyway, wouldn't be easier/better to use misc.c functionality here > (misc_register() et al.)?
probably ... i just didnt want to statically allocate a number in the range that would be Blackfin specific ... -mike
| |