Date: Tue, 26 May 2015 15:51:30 -0300 From: Luiz Otavio O Souza <lists.br@gmail.com> To: Daniel Braniss <danny@cs.huji.ac.il> Cc: freebsd-arm <freeBSD-arm@freebsd.org> Subject: Re: pwm for raspberry pi? Message-ID: <CAB=2f8zuMhPkwuuh-yNeMK1_iv3%2Bg3%2BXtXLZ-FyOmudBifsh0w@mail.gmail.com> In-Reply-To: <DB799EA8-3401-46F6-A4F5-79E5BE9743E2@cs.huji.ac.il> References: <1FD1336E-D99F-4114-AD33-FBA1DF844E93@cs.huji.ac.il> <CAB=2f8wigyRaP9fXr6V=-%2BM9YZTE=2nzdj-AngD6m15zZFu1gQ@mail.gmail.com> <DB799EA8-3401-46F6-A4F5-79E5BE9743E2@cs.huji.ac.il>
next in thread | previous in thread | raw e-mail | index | archive | help
On 26 May 2015 at 03:13, Daniel Braniss wrote: > >> On May 26, 2015, at 1:14 AM, Luiz Otavio O Souza wrote: >> >> On 25 May 2015 at 07:52, Daniel Braniss wrote: >>> Hi, >>> Now that I=E2=80=99m rapping up my spi/rfid driver (available on demand= :-), >>> I would like to use the pwm interface to power on/off a lock, but >>> have no idea how to go around it, so any clues would be mostly welcomed= . >>> >>> cheers, >>> danny >> >> The PWM module is quite simple and has only two outputs, they can be >> used only with recent 40 GPIO pins header (RPi-B+ or RPi2), in the >> older models only one output was wired. >> > I do have a B+ > >> The bcm2835 peripherals datasheet describes the PWM module registers > > I=E2=80=99ve read it, hence I know it=E2=80=99s possible, what I=E2=80=99= missing is how to access it via > FreeBSD. There is a some mention for the BeagleBoneBlack, but it seems > broken, the FDT mentions the pins. Too many leads but not enough info > on how to tie them up :-) > > cheers, > danny There is no defined API to access PWM settings ATM, on beaglebone this is done with sysctls: dev.am335x_pwm.2.dutyB: 0 dev.am335x_pwm.2.dutyA: 0 dev.am335x_pwm.2.period: 1000 dev.am335x_pwm.2.freq: 100000 dev.am335x_pwm.2.clkdiv: 1 dev.am335x_pwm.2.%parent: simplebus0 dev.am335x_pwm.2.%pnpinfo: name=3Dpwm@48304000 compat=3Dti,am335x-pwm dev.am335x_pwm.2.%location: dev.am335x_pwm.2.%driver: am335x_pwm dev.am335x_pwm.2.%desc: AM335x PWM There are 3 PWM modules, each one with two outputs controlled by dutyA and dutyB. Here is the PWM code for beaglebone: https://svnweb.freebsd.org/base/head/sys/arm/ti/am335x/am335x_ehrpwm.c?view= =3Dmarkup At some point I think I will expose PWM settings via gpioctl (and possibly add a gpiopwm for a software based pwm). Regards, Luiz
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAB=2f8zuMhPkwuuh-yNeMK1_iv3%2Bg3%2BXtXLZ-FyOmudBifsh0w>