Hi Hanjun,
I was on leave last week so not much progress happened. However I am still working on modifying the timer and updating the GTDT table to add new fields like frequency. Also I checked some of your work in converting to platform driver. I guess it is not possible to convert timer driver to platform driver as it is called much before ACPI namespaces are initialised. So I am thinking of converting GTDT(generic timer description) table to TDT(timer description) table. Arm internal timer(as generic timer) will be one of the entry in TDT table. My idea is similar to MADT table where different types of IOAPIC entry exists in the same table.
The new TDT table may look something like,
struct acpi_table_tdt { u64 address; u32 size; u32 flags;// MEMORY_MAPPED, TDT_GENERIC, TDT_OTHERS u8 id[10]; // like "ARMv8", "MCT"(for andale), etc.. u32 interrupt_count; // between 1-8 u32 interrupt_num[8] ;// each timer assumed to have max 8 interrupt lines u32 interrupt_flags[8]; // INTERRUPT MODE, POLARITY u32 freq;
};
Any comment about this?
On Thu, Sep 26, 2013 at 2:57 PM, Hanjun Guo hanjun.guo@linaro.org wrote:
Hi Amit,
Any updates to this patch set?
if not, I will modify your patch to convert arch_timer :)
Certainly if you have any ideas please go ahead and modify this patch. No issue :)
Thanks, Amit Daniel
Thanks Hanjun
On 2013-9-17 14:05, Amit Daniel Kachhap wrote:
hi,
The patches in the series are just in work in progress and intended to clear some doubts as pointed below. Any comment/direction is helpful from the linaro acpi group.
- Basic controllers like GIC and timer need to be initialised before platform drivers
are ready so question is how to invoke the __init of these devices. Is there any function to raw parse the ACPI tables similar to existing DT API's?
- Some important elements like clock frequency is missing from the GTDT table.
how to get them?
Thanks in advance.
Amit Daniel Kachhap (3): irqdomain: Add a new API irq_create_default_mapping ACPI: ARM: Update acpi_register_gsi to register with the core IRQ subsystem ACPI: clocksource: arch_timer: Use GTDT table to gather data
drivers/acpi/plat/arm/boot.c | 27 ++++++++++++++-- drivers/clocksource/arm_arch_timer.c | 58 ++++++++++++++++++++++++++++++++++ include/linux/irqdomain.h | 2 + kernel/irq/irqdomain.c | 35 ++++++++++++++++++++ 4 files changed, 119 insertions(+), 3 deletions(-)
Linaro-acpi mailing list Linaro-acpi@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-acpi
Linaro-acpi mailing list Linaro-acpi@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-acpi
On Thu, Sep 26, 2013 at 2:57 PM, Hanjun Guo hanjun.guo@linaro.org wrote:
Hi Amit,
Any updates to this patch set?
if not, I will modify your patch to convert arch_timer :)
Thanks Hanjun
On 2013-9-17 14:05, Amit Daniel Kachhap wrote:
hi,
The patches in the series are just in work in progress and intended to clear some doubts as pointed below. Any comment/direction is helpful from the linaro acpi group.
- Basic controllers like GIC and timer need to be initialised before platform drivers
are ready so question is how to invoke the __init of these devices. Is there any function to raw parse the ACPI tables similar to existing DT API's?
- Some important elements like clock frequency is missing from the GTDT table.
how to get them?
Thanks in advance.
Amit Daniel Kachhap (3): irqdomain: Add a new API irq_create_default_mapping ACPI: ARM: Update acpi_register_gsi to register with the core IRQ subsystem ACPI: clocksource: arch_timer: Use GTDT table to gather data
drivers/acpi/plat/arm/boot.c | 27 ++++++++++++++-- drivers/clocksource/arm_arch_timer.c | 58 ++++++++++++++++++++++++++++++++++ include/linux/irqdomain.h | 2 + kernel/irq/irqdomain.c | 35 ++++++++++++++++++++ 4 files changed, 119 insertions(+), 3 deletions(-)
Linaro-acpi mailing list Linaro-acpi@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-acpi
Linaro-acpi mailing list Linaro-acpi@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-acpi