From: Kevin Hilman <khilman@ti.com>
To: Govindraj <govindraj.ti@gmail.com>
Cc: "Govindraj.R" <govindraj.raja@ti.com>,
linux-omap@vger.kernel.org, linux-serial@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
Tony Lindgren <tony@atomide.com>, Partha Basak <p-basak2@ti.com>,
Vishwanath Sripathy <vishwanath.bs@ti.com>,
Rajendra Nayak <rnayak@ti.com>,
Santosh Shilimkar <santosh.shilimkar@ti.com>
Subject: Re: [PATCH v6 15/16] OMAP2+: UART: Enable back uart clocks with runtime API for early console
Date: Fri, 14 Oct 2011 10:12:18 -0700 [thread overview]
Message-ID: <8739evebv1.fsf@ti.com> (raw)
In-Reply-To: <CAAL8m4wgLbmm-3eqku1+0oa77_fxVoFzR1ujF9nwAQRavfqLfg@mail.gmail.com> (Govindraj's message of "Fri, 14 Oct 2011 19:48:51 +0530")
Govindraj <govindraj.ti@gmail.com> writes:
[...]
>
> I did some study into the approaches you suggested,
> Below are my observation, Please correct me if I missed out
> any thing in my below observation,
>
>
>> 1) Use the a custom activate_func in the omap_device pm_lats struct
>> to idle the first time.
>>
>
> same activate func gets called for all uarts, how to determine the
> activate func. was called for first time for the given uart.
>
> (use od->pdev->dev.name strcmp with uart name for first name
> and maintain a state machine ? confused)
>
> Then should we have different activate funcs?
You would only need to install a custom activate_func for the console
UART device. After the first call, you could set the activate_func back
to the default.
>> 2) Use a bus notifier so the device init can be notified when the
>> real driver is available. I think you're probably wanting
>> the BUS_NOTIFY_BIND_DRIVER event, which would happen right
>> before probe. There's also BUS_NOTIFY_BOUND_DRIVER which
>> happens right after probe. You might actually want to use
>> both. e.g. console_lock(); omap_hwmod_idle() in BIND
>> and console_unlock() in 'BOUND'.
>
> bus_register_notifier is for all drivers within the bus,
> omap-uart is registered as platform bus and there a lot more
> devices that register under platform bus,
>
> So registering the notifier for platform bus will call notifier
> for all probes withing platform bus,
>
> Is there a way to have notifier per device or given device?
The notifier callback passes the device pointer. You just have to take
action for the devices you care about, and return for the others.
Kevin
--
To unsubscribe from this list: send the line "unsubscribe linux-serial" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: khilman@ti.com (Kevin Hilman)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v6 15/16] OMAP2+: UART: Enable back uart clocks with runtime API for early console
Date: Fri, 14 Oct 2011 10:12:18 -0700 [thread overview]
Message-ID: <8739evebv1.fsf@ti.com> (raw)
In-Reply-To: <CAAL8m4wgLbmm-3eqku1+0oa77_fxVoFzR1ujF9nwAQRavfqLfg@mail.gmail.com> (Govindraj's message of "Fri, 14 Oct 2011 19:48:51 +0530")
Govindraj <govindraj.ti@gmail.com> writes:
[...]
>
> I did some study into the approaches you suggested,
> Below are my observation, Please correct me if I missed out
> any thing in my below observation,
>
>
>> 1) Use the a custom activate_func in the omap_device pm_lats struct
>> ? to idle the first time.
>>
>
> same activate func gets called for all uarts, how to determine the
> activate func. was called for first time for the given uart.
>
> (use od->pdev->dev.name strcmp with uart name for first name
> and maintain a state machine ? confused)
>
> Then should we have different activate funcs?
You would only need to install a custom activate_func for the console
UART device. After the first call, you could set the activate_func back
to the default.
>> 2) Use a bus notifier so the device init can be notified when the
>> ? real driver is available. ?I think you're probably wanting
>> ? the BUS_NOTIFY_BIND_DRIVER event, which would happen right
>> ? before probe. ?There's also BUS_NOTIFY_BOUND_DRIVER which
>> ? happens right after probe. ? You might actually want to use
>> ? both. ?e.g. ? console_lock(); omap_hwmod_idle() in BIND
>> ? and console_unlock() in 'BOUND'.
>
> bus_register_notifier is for all drivers within the bus,
> omap-uart is registered as platform bus and there a lot more
> devices that register under platform bus,
>
> So registering the notifier for platform bus will call notifier
> for all probes withing platform bus,
>
> Is there a way to have notifier per device or given device?
The notifier callback passes the device pointer. You just have to take
action for the devices you care about, and return for the others.
Kevin
next prev parent reply other threads:[~2011-10-14 17:12 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-30 11:02 [PATCH v6 10/16] OMAP2+: UART: Modify omap_uart_can_sleep function Govindraj.R
2011-09-30 11:02 ` Govindraj.R
2011-09-30 11:02 ` [PATCH v6 11/16] OMAP2+: UART: Move errata handling from serial.c to omap-serial Govindraj.R
2011-09-30 11:02 ` Govindraj.R
2011-10-11 21:01 ` Kevin Hilman
2011-10-11 21:01 ` Kevin Hilman
2011-10-12 10:43 ` Govindraj
2011-10-12 10:43 ` Govindraj
2011-09-30 11:02 ` [PATCH v6 12/16] OMAP2+: UART: Allow UART parameters to be configured from board file Govindraj.R
2011-09-30 11:02 ` Govindraj.R
2011-10-11 18:53 ` Kevin Hilman
2011-10-11 18:53 ` Kevin Hilman
2011-10-12 10:44 ` Govindraj
2011-10-12 10:44 ` Govindraj
2011-09-30 11:02 ` [PATCH v6 13/16] OMAP2+: UART: Make the RX_TIMEOUT for DMA configurable for each UART Govindraj.R
2011-09-30 11:02 ` Govindraj.R
2011-09-30 11:02 ` [PATCH v6 14/16] OMAP2+: UART: Take console_lock in suspend path if not taken Govindraj.R
2011-09-30 11:02 ` Govindraj.R
2011-10-11 19:01 ` Kevin Hilman
2011-10-11 19:01 ` Kevin Hilman
2011-10-12 11:23 ` Govindraj
2011-10-12 11:23 ` Govindraj
2011-10-12 23:47 ` Kevin Hilman
2011-10-12 23:47 ` Kevin Hilman
2011-10-13 1:11 ` Govindraj
2011-10-13 1:11 ` Govindraj
2011-09-30 11:02 ` [PATCH v6 15/16] OMAP2+: UART: Enable back uart clocks with runtime API for early console Govindraj.R
2011-09-30 11:02 ` Govindraj.R
2011-10-11 21:06 ` Kevin Hilman
2011-10-11 21:06 ` Kevin Hilman
2011-10-12 14:04 ` Govindraj
2011-10-12 14:04 ` Govindraj
2011-10-13 0:00 ` Kevin Hilman
2011-10-13 0:00 ` Kevin Hilman
2011-10-13 1:22 ` Govindraj
2011-10-13 1:22 ` Govindraj
2011-10-13 21:01 ` Kevin Hilman
2011-10-13 21:01 ` Kevin Hilman
2011-10-14 14:18 ` Govindraj
2011-10-14 14:18 ` Govindraj
2011-10-14 17:12 ` Kevin Hilman [this message]
2011-10-14 17:12 ` Kevin Hilman
2011-09-30 11:02 ` [PATCH v6 16/16] OMAP2+: UART: Do not gate uart clocks if used for debug_prints Govindraj.R
2011-09-30 11:02 ` Govindraj.R
2011-10-11 18:24 ` [PATCH v6 10/16] OMAP2+: UART: Modify omap_uart_can_sleep function Kevin Hilman
2011-10-11 18:24 ` Kevin Hilman
2011-10-12 13:38 ` Govindraj
2011-10-12 13:38 ` Govindraj
2011-10-12 19:41 ` Kevin Hilman
2011-10-12 19:41 ` Kevin Hilman
2011-10-13 1:09 ` Govindraj
2011-10-13 1:09 ` Govindraj
2011-10-13 6:59 ` Jean Pihet
2011-10-13 6:59 ` Jean Pihet
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8739evebv1.fsf@ti.com \
--to=khilman@ti.com \
--cc=govindraj.raja@ti.com \
--cc=govindraj.ti@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=p-basak2@ti.com \
--cc=rnayak@ti.com \
--cc=santosh.shilimkar@ti.com \
--cc=tony@atomide.com \
--cc=vishwanath.bs@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.