- 03 8月, 2010 3 次提交
-
-
由 Jarod Wilson 提交于
v2: copy of buffer data from userspace done inside this plugin/driver, keeping the actual drivers minimal, and more flexible in what we can deliver to them later on (they may be fed from within kernelspace later on, by an in-kernel IR encoder). Signed-off-by: NJarod Wilson <jarod@redhat.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 David Härdeman 提交于
This patch moves the state from each raw decoder into the ir_raw_event_ctrl struct. This allows the removal of code like this: spin_lock(&decoder_lock); list_for_each_entry(data, &decoder_list, list) { if (data->ir_dev == ir_dev) break; } spin_unlock(&decoder_lock); return data; which is currently run for each decoder on each event in order to get the client-specific decoding state data. In addition, ir decoding modules and ir driver module load order is now independent. Centralizing the data also allows for a nice code reduction of about 30% per raw decoder as client lists and client registration callbacks are no longer necessary (but still kept around for the benefit of the lirc decoder). Out-of-tree modules can still use a similar trick to what the raw decoders did before this patch until they are merged. Signed-off-by: NDavid Härdeman <david@hardeman.nu> Acked-by: NJarod Wilson <jarod@redhat.com> Tested-by: NJarod Wilson <jarod@redhat.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 David Härdeman 提交于
With the current logic, each raw decoder needs to add a copy of the exact same sysfs code. This is both unnecessary and also means that (re)loading an IR driver after raw decoder modules have been loaded won't work as expected. This patch moves that logic into ir-raw-event and adds a single sysfs file per device. Reading that file returns something like: "rc5 [rc6] nec jvc [sony]" (with enabled protocols in [] brackets) Writing either "+protocol" or "-protocol" to that file will enable or disable the according protocol decoder. An additional benefit is that the disabling of a decoder will be remembered across module removal/insertion so a previously disabled decoder won't suddenly be activated again. The default setting is to enable all decoders. This is also necessary for the next patch which moves even more decoder state into the central raw decoding structs. Signed-off-by: NDavid Härdeman <david@hardeman.nu> Acked-by: NJarod Wilson <jarod@redhat.com> Tested-by: NJarod Wilson <jarod@redhat.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 19 5月, 2010 8 次提交
-
-
由 David Härdeman 提交于
This patch adds a Sony12/15/20 decoder to ir-core. Signed-off-by: NDavid Härdeman <david@hardeman.nu> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 David Härdeman 提交于
This patch adds a JVC decoder to ir-core. Signed-off-by: NDavid Härdeman <david@hardeman.nu> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Mauro Carvalho Chehab 提交于
As reported by checkpatch.pl: ERROR: open brace '{' following function declarations go on the next line +static inline bool geq_margin(unsigned d1, unsigned d2, unsigned margin) { ERROR: open brace '{' following function declarations go on the next line +static inline bool eq_margin(unsigned d1, unsigned d2, unsigned margin) { ERROR: open brace '{' following function declarations go on the next line +static inline bool is_transition(struct ir_raw_event *x, struct ir_raw_event *y) { Cc: David Härdeman <david@hardeman.nu> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 David Härdeman 提交于
This patch implements the agreed upon 1:31 integer encoded pulse/duration struct for ir-core raw decoders. All decoders have been tested after the change. Comments are welcome. Signed-off-by: NDavid Härdeman <david@hardeman.nu> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Jarod Wilson 提交于
The imon driver I've previously submitted and have been porting to use ir-core needs to use ir_g_keycode_from_table, as ir_keydown is not sufficient, due to these things having really oddball hardware decoders in them. This just moves the function declaration from ir-core-priv.h over to ir-core.h. Signed-off-by: NJarod Wilson <jarod@redhat.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Mauro Carvalho Chehab 提交于
As Adreas pointed, RC6 should use CONFIG_IR_RC6_DECODER_MODULE, instead of the RC5 config option. Thanks-to: Andreas Oberitter <obi@linuxtv.org> Acked-by: NDavid Härdeman <david@hardeman.nu> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 David Härdeman 提交于
This patch adds an RC6 decoder (modes 0 and 6A) to ir-core. Signed-off-by: NDavid Härdeman <david@hardeman.nu> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Mauro Carvalho Chehab 提交于
ir-core.h has the kABI to be used by the bridge drivers, when needing to register IR protocols and pass IR events. However, the same file also contains IR subsystem internal calls, meant to be used inside ir-core and between ir-core and the raw decoders. Better to move those functions to an internal header, for some reasons: 1) Header will be a little more cleaner; 2) It avoids the need of recompile everything (bridge/hardware drivers, etc), just because a new decoder were added, or some other internal change were needed; 3) Better organize the ir-core API, splitting the functions that are internal to IR core and the ancillary drivers (decoders, lirc_dev) from the features that should be exported to IR subsystem clients. Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-