Messages in this thread | | | Date | Mon, 29 Aug 2005 21:55:04 +0400 | From | Grigory Tolstolytkin <> | Subject | 8250 serial driver and PM |
| |
Hi,
I'm working on power management support for a particular ARM based board and I've got a question: I want to add a board specific power management for standard uart driver (serial8250). For this purpose there is a special hook defined in uart_8250_port structure (drivers/serial/8250.c): ... > /* > * We provide a per-port pm hook. > */ > void (*pm)(struct uart_port *port, > unsigned int state, unsigned int old); ...
When driver goes into suspend/resume, serial8250_pm() function is called and it checks for the hook and executes it if it exists. But I didn't find a proper way to assign my own function to this hook. How this hook is supposed to be changed? Is there a way to correctly initialize it and how it should be done? Whether it's a good way to initialize it, for example, in serial8250_isa_init_ports(): ... up->mcr_mask = ~ALPHA_KLUDGE_MCR; up->mcr_force = ALPHA_KLUDGE_MCR;
up->port.ops = &serial8250_pops;
#ifdef CONFIG_ARCH_XXX up->pm = pnx4008_uart_pm; #endif } ...
Or it's a bad manner?
Any help appreciated,
Thanks, Grigory.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |